udp-react-enterprise-component-library 26.2.0-beta.3 → 26.2.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,21 +1,21 @@
1
- import { FluentButton } from "../../UI/inputs/buttons/FluentButton.mjs";
2
1
  import { ConfigService } from "../../configService/index.mjs";
3
2
  import { useHandleAxiosSnackbar } from "../../utilities/apiHelpers.mjs";
4
3
  import { useUser } from "../../utilities/auth/useUser.mjs";
5
4
  import { apiMutate } from "../../utilities/useAxiosMutate.mjs";
6
- import { SideSheet } from "../../UI/surfaces/SideSheet.mjs";
7
5
  import { usePromotedMethodEntity } from "../../hooks/usePromotedMethodEntity.mjs";
8
6
  import { executeQueryAdHoc } from "../utilities/methodUtils.mjs";
9
- import { AmbientCard } from "../../UI/surfaces/cards/AmbientCard/AmbientCard.mjs";
10
- import { AmbientAutoComplete } from "../../UI/inputs/textField/AmbientAutoComplete.mjs";
11
- import { DragDropFileUpload } from "../../uploader/DragDropFileUpload.mjs";
7
+ import { UdpButton } from "../../UI/fluent-web-components/UdpButton.mjs";
8
+ import { UdpAutocomplete } from "../../UI/fluent-web-components/UdpAutocomplete.mjs";
9
+ import { UdpCard } from "../../UI/fluent-web-components/UdpCard.mjs";
10
+ import { UdpDrawer } from "../../UI/fluent-web-components/UdpDrawer.mjs";
11
+ import { UdpFileInput } from "../../UI/fluent-web-components/UdpFileInput.mjs";
12
12
  import { FileImportConfigCard } from "./FileImportConfigCard.mjs";
13
13
  import FileImportMappingWizard from "./FileImportMappingWizard.mjs";
14
14
  import { c } from "react-compiler-runtime";
15
15
  import React, { useEffect, useState } from "react";
16
16
  //#region src/udp/fileImportMapping/ImportDataFromFileMapping.jsx
17
17
  const ImportDataFromFileMapping = (props) => {
18
- const $ = c(56);
18
+ const $ = c(58);
19
19
  const { onImportSuccess, onImportFail, verifyRequiredFields: t0 } = props;
20
20
  const verifyRequiredFields = t0 === void 0 ? true : t0;
21
21
  const user = useUser();
@@ -23,19 +23,25 @@ const ImportDataFromFileMapping = (props) => {
23
23
  const [udpImportMappingData, setUdpImportMappingData] = useState();
24
24
  const [newFileMappingSidesheetOpen, setNewFileMappingSidesheetOpen] = useState(false);
25
25
  const [fileObject, setFileObject] = useState();
26
+ let t1;
27
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
28
+ t1 = [];
29
+ $[0] = t1;
30
+ } else t1 = $[0];
31
+ const [fileItems, setFileItems] = useState(t1);
26
32
  const [isLoading, setIsLoading] = useState(false);
27
33
  const { handleErrorSnackbar, handleSuccessSnackbar } = useHandleAxiosSnackbar();
28
34
  const { data: udpFileImportMappingEntity } = usePromotedMethodEntity("UdpFileImportMapping", true);
29
- let t1;
30
- if ($[0] !== selectedFileMapping.objectInfoSanitizedName) {
31
- t1 = async (data) => apiMutate(ConfigService.productV1ApiUrl, `${selectedFileMapping?.objectInfoSanitizedName}/fileImportMapping`, { method: "post" }, { data });
32
- $[0] = selectedFileMapping.objectInfoSanitizedName;
33
- $[1] = t1;
34
- } else t1 = $[1];
35
- const executeImportDataFromFile = t1;
36
35
  let t2;
37
- if ($[2] !== udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId) {
38
- t2 = async () => {
36
+ if ($[1] !== selectedFileMapping.objectInfoSanitizedName) {
37
+ t2 = async (data) => apiMutate(ConfigService.productV1ApiUrl, `${selectedFileMapping?.objectInfoSanitizedName}/fileImportMapping`, { method: "post" }, { data });
38
+ $[1] = selectedFileMapping.objectInfoSanitizedName;
39
+ $[2] = t2;
40
+ } else t2 = $[2];
41
+ const executeImportDataFromFile = t2;
42
+ let t3;
43
+ if ($[3] !== udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId) {
44
+ t3 = async () => {
39
45
  if (udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId) {
40
46
  const res = await executeQueryAdHoc({ data: {
41
47
  eagerLoad: true,
@@ -45,29 +51,29 @@ const ImportDataFromFileMapping = (props) => {
45
51
  if (res?.data?.pageList.length > 0) setUdpImportMappingData(res?.data?.pageList);
46
52
  }
47
53
  };
48
- $[2] = udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId;
49
- $[3] = t2;
50
- } else t2 = $[3];
54
+ $[3] = udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId;
55
+ $[4] = t3;
56
+ } else t3 = $[4];
51
57
  udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId;
52
- const searchFileImportMappingData = t2;
53
- let t3;
58
+ const searchFileImportMappingData = t3;
54
59
  let t4;
55
- if ($[4] !== searchFileImportMappingData) {
56
- t3 = () => {
60
+ let t5;
61
+ if ($[5] !== searchFileImportMappingData) {
62
+ t4 = () => {
57
63
  searchFileImportMappingData();
58
64
  };
59
- t4 = [searchFileImportMappingData];
60
- $[4] = searchFileImportMappingData;
61
- $[5] = t3;
65
+ t5 = [searchFileImportMappingData];
66
+ $[5] = searchFileImportMappingData;
62
67
  $[6] = t4;
68
+ $[7] = t5;
63
69
  } else {
64
- t3 = $[5];
65
70
  t4 = $[6];
71
+ t5 = $[7];
66
72
  }
67
- useEffect(t3, t4);
68
- let t5;
69
- if ($[7] !== executeImportDataFromFile || $[8] !== fileObject || $[9] !== handleErrorSnackbar || $[10] !== handleSuccessSnackbar || $[11] !== onImportFail || $[12] !== onImportSuccess || $[13] !== selectedFileMapping.fileImportType || $[14] !== selectedFileMapping.id || $[15] !== selectedFileMapping.mapping || $[16] !== selectedFileMapping.name || $[17] !== selectedFileMapping.objectInfoSanitizedName || $[18] !== selectedFileMapping.properties || $[19] !== user?.currentTenantId) {
70
- t5 = async () => {
73
+ useEffect(t4, t5);
74
+ let t6;
75
+ if ($[8] !== executeImportDataFromFile || $[9] !== fileObject || $[10] !== handleErrorSnackbar || $[11] !== handleSuccessSnackbar || $[12] !== onImportFail || $[13] !== onImportSuccess || $[14] !== selectedFileMapping.fileImportType || $[15] !== selectedFileMapping.id || $[16] !== selectedFileMapping.mapping || $[17] !== selectedFileMapping.name || $[18] !== selectedFileMapping.objectInfoSanitizedName || $[19] !== selectedFileMapping.properties || $[20] !== user?.currentTenantId) {
76
+ t6 = async () => {
71
77
  setIsLoading(true);
72
78
  const file = fileObject;
73
79
  const blob = new Blob([file], { type: file.type });
@@ -90,179 +96,179 @@ const ImportDataFromFileMapping = (props) => {
90
96
  onImportSuccess && onImportSuccess();
91
97
  }
92
98
  };
93
- $[7] = executeImportDataFromFile;
94
- $[8] = fileObject;
95
- $[9] = handleErrorSnackbar;
96
- $[10] = handleSuccessSnackbar;
97
- $[11] = onImportFail;
98
- $[12] = onImportSuccess;
99
- $[13] = selectedFileMapping.fileImportType;
100
- $[14] = selectedFileMapping.id;
101
- $[15] = selectedFileMapping.mapping;
102
- $[16] = selectedFileMapping.name;
103
- $[17] = selectedFileMapping.objectInfoSanitizedName;
104
- $[18] = selectedFileMapping.properties;
105
- $[19] = user?.currentTenantId;
106
- $[20] = t5;
107
- } else t5 = $[20];
108
- const handleImportDataFromFile = t5;
109
- const getFileMappingOptionlabel = _temp;
110
- let t6;
111
- if ($[21] === Symbol.for("react.memo_cache_sentinel")) {
112
- t6 = (fileObj) => {
113
- setFileObject(fileObj[0]);
114
- };
99
+ $[8] = executeImportDataFromFile;
100
+ $[9] = fileObject;
101
+ $[10] = handleErrorSnackbar;
102
+ $[11] = handleSuccessSnackbar;
103
+ $[12] = onImportFail;
104
+ $[13] = onImportSuccess;
105
+ $[14] = selectedFileMapping.fileImportType;
106
+ $[15] = selectedFileMapping.id;
107
+ $[16] = selectedFileMapping.mapping;
108
+ $[17] = selectedFileMapping.name;
109
+ $[18] = selectedFileMapping.objectInfoSanitizedName;
110
+ $[19] = selectedFileMapping.properties;
111
+ $[20] = user?.currentTenantId;
115
112
  $[21] = t6;
116
113
  } else t6 = $[21];
117
- const handleAddFileToUpload = t6;
114
+ const handleImportDataFromFile = t6;
115
+ const getFileMappingOptionlabel = _temp;
118
116
  let t7;
119
117
  if ($[22] === Symbol.for("react.memo_cache_sentinel")) {
120
- t7 = { display: "flex" };
118
+ t7 = (e) => {
119
+ const items = e.target.value;
120
+ setFileItems(items);
121
+ setFileObject(items.find(_temp2)?.file);
122
+ };
121
123
  $[22] = t7;
122
124
  } else t7 = $[22];
125
+ const handleAddFileToUpload = t7;
123
126
  let t8;
124
127
  if ($[23] === Symbol.for("react.memo_cache_sentinel")) {
125
- t8 = (val) => setSelectedFileMapping(val);
128
+ t8 = { display: "flex" };
126
129
  $[23] = t8;
127
130
  } else t8 = $[23];
128
131
  let t9;
129
- if ($[24] !== selectedFileMapping || $[25] !== udpImportMappingData) {
130
- t9 = /* @__PURE__ */ React.createElement("div", { style: t7 }, /* @__PURE__ */ React.createElement(AmbientAutoComplete, {
131
- isMultiple: false,
132
- id: "fileMapping",
132
+ if ($[24] === Symbol.for("react.memo_cache_sentinel")) {
133
+ t9 = (e_0) => setSelectedFileMapping(e_0.target.value);
134
+ $[24] = t9;
135
+ } else t9 = $[24];
136
+ let t10;
137
+ if ($[25] !== selectedFileMapping || $[26] !== udpImportMappingData) {
138
+ t10 = /* @__PURE__ */ React.createElement("div", { style: t8 }, /* @__PURE__ */ React.createElement(UdpAutocomplete, {
133
139
  name: "fileMapping",
134
140
  label: "File Mapping",
135
- onChange: t8,
141
+ onChange: t9,
136
142
  options: udpImportMappingData,
137
- size: "small",
138
- getOptionLabelFunction: getFileMappingOptionlabel,
143
+ optionLabel: getFileMappingOptionlabel,
144
+ optionValue: "id",
139
145
  value: selectedFileMapping,
140
146
  required: true,
141
- groupBy: _temp2
147
+ optionGroup: _temp3
142
148
  }));
143
- $[24] = selectedFileMapping;
144
- $[25] = udpImportMappingData;
145
- $[26] = t9;
146
- } else t9 = $[26];
147
- let t10;
148
- if ($[27] !== selectedFileMapping) {
149
- t10 = selectedFileMapping && /* @__PURE__ */ React.createElement(DragDropFileUpload, {
150
- handleUploadFile: handleAddFileToUpload,
151
- accept: {
152
- "text/csv": [".csv"],
153
- "text/plain": [".txt"],
154
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": [".xlsx"],
155
- "application/json": [".json"]
156
- }
157
- });
158
- $[27] = selectedFileMapping;
159
- $[28] = t10;
160
- } else t10 = $[28];
149
+ $[25] = selectedFileMapping;
150
+ $[26] = udpImportMappingData;
151
+ $[27] = t10;
152
+ } else t10 = $[27];
161
153
  let t11;
162
- if ($[29] === Symbol.for("react.memo_cache_sentinel")) {
163
- t11 = {
154
+ if ($[28] !== fileItems || $[29] !== selectedFileMapping) {
155
+ t11 = selectedFileMapping && /* @__PURE__ */ React.createElement(UdpFileInput, {
156
+ value: fileItems,
157
+ onChange: handleAddFileToUpload,
158
+ accept: ".csv,.txt,.xlsx,.json",
159
+ maxFiles: 1
160
+ });
161
+ $[28] = fileItems;
162
+ $[29] = selectedFileMapping;
163
+ $[30] = t11;
164
+ } else t11 = $[30];
165
+ let t12;
166
+ if ($[31] === Symbol.for("react.memo_cache_sentinel")) {
167
+ t12 = {
164
168
  display: "flex",
165
169
  flexDirection: "row",
166
170
  gap: 5,
167
171
  float: "right",
168
172
  marginTop: 10
169
173
  };
170
- $[29] = t11;
171
- } else t11 = $[29];
172
- let t12;
173
- if ($[30] === Symbol.for("react.memo_cache_sentinel")) {
174
- t12 = /* @__PURE__ */ React.createElement(FluentButton, {
174
+ $[31] = t12;
175
+ } else t12 = $[31];
176
+ let t13;
177
+ if ($[32] === Symbol.for("react.memo_cache_sentinel")) {
178
+ t13 = /* @__PURE__ */ React.createElement(UdpButton, {
175
179
  onClick: () => setNewFileMappingSidesheetOpen(true),
176
- variant: "outlined"
180
+ appearance: "outline"
177
181
  }, "Create New Mapping");
178
- $[30] = t12;
179
- } else t12 = $[30];
180
- const t13 = !fileObject;
181
- let t14;
182
- if ($[31] !== handleImportDataFromFile || $[32] !== isLoading || $[33] !== t13) {
183
- t14 = /* @__PURE__ */ React.createElement("div", { style: t11 }, t12, /* @__PURE__ */ React.createElement(FluentButton, {
184
- variant: "contained",
185
- color: "secondary",
182
+ $[32] = t13;
183
+ } else t13 = $[32];
184
+ const t14 = !fileObject;
185
+ let t15;
186
+ if ($[33] !== handleImportDataFromFile || $[34] !== isLoading || $[35] !== t14) {
187
+ t15 = /* @__PURE__ */ React.createElement("div", { style: t12 }, t13, /* @__PURE__ */ React.createElement(UdpButton, {
188
+ appearance: "primary",
186
189
  onClick: handleImportDataFromFile,
187
- progress: isLoading,
188
- disabled: t13
190
+ loading: isLoading,
191
+ disabled: t14
189
192
  }, "Import Data"));
190
- $[31] = handleImportDataFromFile;
191
- $[32] = isLoading;
192
- $[33] = t13;
193
- $[34] = t14;
194
- } else t14 = $[34];
195
- let t15;
196
- if ($[35] === Symbol.for("react.memo_cache_sentinel")) {
197
- t15 = () => setNewFileMappingSidesheetOpen(false);
198
- $[35] = t15;
199
- } else t15 = $[35];
193
+ $[33] = handleImportDataFromFile;
194
+ $[34] = isLoading;
195
+ $[35] = t14;
196
+ $[36] = t15;
197
+ } else t15 = $[36];
200
198
  let t16;
201
- if ($[36] !== searchFileImportMappingData || $[37] !== verifyRequiredFields) {
202
- t16 = /* @__PURE__ */ React.createElement(FileImportMappingWizard, {
199
+ if ($[37] === Symbol.for("react.memo_cache_sentinel")) {
200
+ t16 = () => setNewFileMappingSidesheetOpen(false);
201
+ $[37] = t16;
202
+ } else t16 = $[37];
203
+ let t17;
204
+ if ($[38] !== searchFileImportMappingData || $[39] !== verifyRequiredFields) {
205
+ t17 = /* @__PURE__ */ React.createElement(FileImportMappingWizard, {
203
206
  refetchMappings: searchFileImportMappingData,
204
207
  setNewFileMappingSidesheetOpen,
205
208
  verifyRequiredFields
206
209
  });
207
- $[36] = searchFileImportMappingData;
208
- $[37] = verifyRequiredFields;
209
- $[38] = t16;
210
- } else t16 = $[38];
211
- let t17;
212
- if ($[39] !== newFileMappingSidesheetOpen || $[40] !== t16) {
213
- t17 = /* @__PURE__ */ React.createElement(SideSheet, {
214
- title: "Create New File Mapping",
215
- open: newFileMappingSidesheetOpen,
216
- onClose: t15,
217
- width: "60%"
218
- }, t16);
219
- $[39] = newFileMappingSidesheetOpen;
220
- $[40] = t16;
221
- $[41] = t17;
222
- } else t17 = $[41];
210
+ $[38] = searchFileImportMappingData;
211
+ $[39] = verifyRequiredFields;
212
+ $[40] = t17;
213
+ } else t17 = $[40];
223
214
  let t18;
224
- if ($[42] !== t10 || $[43] !== t14 || $[44] !== t17 || $[45] !== t9) {
225
- t18 = /* @__PURE__ */ React.createElement(AmbientCard, { fullWidth: true }, t9, t10, t14, t17);
226
- $[42] = t10;
227
- $[43] = t14;
228
- $[44] = t17;
229
- $[45] = t9;
230
- $[46] = t18;
231
- } else t18 = $[46];
215
+ if ($[41] !== newFileMappingSidesheetOpen || $[42] !== t17) {
216
+ t18 = /* @__PURE__ */ React.createElement(UdpDrawer, {
217
+ drawerTitle: "Create New File Mapping",
218
+ open: newFileMappingSidesheetOpen,
219
+ onDrawerClose: t16,
220
+ drawerWidth: "60%"
221
+ }, t17);
222
+ $[41] = newFileMappingSidesheetOpen;
223
+ $[42] = t17;
224
+ $[43] = t18;
225
+ } else t18 = $[43];
232
226
  let t19;
233
- if ($[47] === Symbol.for("react.memo_cache_sentinel")) {
234
- t19 = { marginTop: 10 };
235
- $[47] = t19;
236
- } else t19 = $[47];
227
+ if ($[44] !== t10 || $[45] !== t11 || $[46] !== t15 || $[47] !== t18) {
228
+ t19 = /* @__PURE__ */ React.createElement(UdpCard, { width: "100%" }, t10, t11, t15, t18);
229
+ $[44] = t10;
230
+ $[45] = t11;
231
+ $[46] = t15;
232
+ $[47] = t18;
233
+ $[48] = t19;
234
+ } else t19 = $[48];
237
235
  let t20;
238
- if ($[48] !== selectedFileMapping.udpFileImportMappingUdpObjectInfo?.sanitizedName) {
239
- t20 = selectedFileMapping?.udpFileImportMappingUdpObjectInfo?.sanitizedName.replace(/([A-Z])/g, " $1").trim();
240
- $[48] = selectedFileMapping.udpFileImportMappingUdpObjectInfo?.sanitizedName;
236
+ if ($[49] === Symbol.for("react.memo_cache_sentinel")) {
237
+ t20 = { marginTop: 10 };
241
238
  $[49] = t20;
242
239
  } else t20 = $[49];
243
240
  let t21;
244
- if ($[50] !== selectedFileMapping || $[51] !== t20) {
245
- t21 = /* @__PURE__ */ React.createElement("div", { style: t19 }, /* @__PURE__ */ React.createElement(FileImportConfigCard, {
241
+ if ($[50] !== selectedFileMapping.udpFileImportMappingUdpObjectInfo?.sanitizedName) {
242
+ t21 = selectedFileMapping?.udpFileImportMappingUdpObjectInfo?.sanitizedName.replace(/([A-Z])/g, " $1").trim();
243
+ $[50] = selectedFileMapping.udpFileImportMappingUdpObjectInfo?.sanitizedName;
244
+ $[51] = t21;
245
+ } else t21 = $[51];
246
+ let t22;
247
+ if ($[52] !== selectedFileMapping || $[53] !== t21) {
248
+ t22 = /* @__PURE__ */ React.createElement("div", { style: t20 }, /* @__PURE__ */ React.createElement(FileImportConfigCard, {
246
249
  fileMappingRecord: selectedFileMapping,
247
- domain: t20
250
+ domain: t21
248
251
  }));
249
- $[50] = selectedFileMapping;
250
- $[51] = t20;
251
- $[52] = t21;
252
- } else t21 = $[52];
253
- let t22;
254
- if ($[53] !== t18 || $[54] !== t21) {
255
- t22 = /* @__PURE__ */ React.createElement(React.Fragment, null, t18, t21);
256
- $[53] = t18;
257
- $[54] = t21;
258
- $[55] = t22;
259
- } else t22 = $[55];
260
- return t22;
252
+ $[52] = selectedFileMapping;
253
+ $[53] = t21;
254
+ $[54] = t22;
255
+ } else t22 = $[54];
256
+ let t23;
257
+ if ($[55] !== t19 || $[56] !== t22) {
258
+ t23 = /* @__PURE__ */ React.createElement(React.Fragment, null, t19, t22);
259
+ $[55] = t19;
260
+ $[56] = t22;
261
+ $[57] = t23;
262
+ } else t23 = $[57];
263
+ return t23;
261
264
  };
262
265
  function _temp(option) {
263
266
  return `${option.name} (${option?.udpFileImportMappingUdpFileImportType?.extension})`;
264
267
  }
265
- function _temp2(option_0) {
268
+ function _temp2(item) {
269
+ return item.kind === "pending";
270
+ }
271
+ function _temp3(option_0) {
266
272
  return option_0?.udpFileImportMappingUdpObjectInfo?.sanitizedName;
267
273
  }
268
274
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ImportDataFromFileMapping.mjs","names":["React","useState","useCallback","useEffect","AmbientCard","AmbientAutoComplete","FluentButton","apiMutate","useHandleAxiosSnackbar","SideSheet","DragDropFileUpload","FileImportMappingWizard","usePromotedMethodEntity","executeQueryAdHoc","useUser","FileImportConfigCard","ConfigService","ImportDataFromFileMapping","props","$","_c","onImportSuccess","onImportFail","verifyRequiredFields","t0","undefined","user","selectedFileMapping","setSelectedFileMapping","udpImportMappingData","setUdpImportMappingData","newFileMappingSidesheetOpen","setNewFileMappingSidesheetOpen","fileObject","setFileObject","isLoading","setIsLoading","handleErrorSnackbar","handleSuccessSnackbar","data","udpFileImportMappingEntity","t1","objectInfoSanitizedName","productV1ApiUrl","method","executeImportDataFromFile","t2","unityBaseSearchMethod","apiMethodId","res","eagerLoad","pageSize","filterElements","pageList","length","searchFileImportMappingData","t3","t4","t5","fileImportType","id","mapping","name","properties","currentTenantId","file","blob","Blob","type","formData","FormData","append","response","catch","res_0","status","handleImportDataFromFile","getFileMappingOptionlabel","_temp","t6","Symbol","for","fileObj","handleAddFileToUpload","t7","display","t8","val","t9","_temp2","t10","t11","flexDirection","gap","float","marginTop","t12","t13","t14","t15","t16","t17","t18","t19","t20","udpFileImportMappingUdpObjectInfo","sanitizedName","replace","trim","t21","t22","option","udpFileImportMappingUdpFileImportType","extension","option_0"],"sources":["../../../src/udp/fileImportMapping/ImportDataFromFileMapping.jsx"],"sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport { AmbientCard } from '../../UI/surfaces/cards/AmbientCard';\nimport { AmbientAutoComplete } from '../../UI/inputs/textField/AmbientAutoComplete';\nimport { FluentButton } from '../../UI/inputs/buttons/FluentButton';\nimport { apiMutate } from '../../utilities/useAxiosMutate';\nimport { useHandleAxiosSnackbar } from '../../utilities/apiHelpers';\nimport { SideSheet } from '../../UI/surfaces/SideSheet';\nimport { DragDropFileUpload } from '../../uploader/DragDropFileUpload';\nimport FileImportMappingWizard from './FileImportMappingWizard';\nimport { usePromotedMethodEntity } from '../../hooks/usePromotedMethodEntity';\nimport { executeQueryAdHoc } from '../utilities/methodUtils';\nimport { useUser } from '../../utilities/auth/useUser';\nimport { FileImportConfigCard } from './FileImportConfigCard';\nimport { ConfigService } from '../../configService';\n\nexport const ImportDataFromFileMapping = (props) => {\n const {onImportSuccess, onImportFail, verifyRequiredFields = true} = props\n const user = useUser();\n const [selectedFileMapping, setSelectedFileMapping] = useState();\n const [udpImportMappingData, setUdpImportMappingData] = useState();\n const [newFileMappingSidesheetOpen, setNewFileMappingSidesheetOpen] =\n useState(false);\n const [fileObject, setFileObject] = useState();\n const [isLoading, setIsLoading] = useState(false)\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n\n const { data: udpFileImportMappingEntity } = usePromotedMethodEntity(\n 'UdpFileImportMapping',\n true\n );\n\n const executeImportDataFromFile = useCallback(\n async (data) =>\n apiMutate(\n ConfigService.productV1ApiUrl,\n `${selectedFileMapping?.objectInfoSanitizedName}/fileImportMapping`,\n {\n method: 'post'\n },\n { data }\n ),\n [selectedFileMapping]\n );\n\n const searchFileImportMappingData = useCallback(async () => {\n if (udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId) {\n const res = await executeQueryAdHoc(\n {\n data: {\n eagerLoad: true,\n pageSize: 200,\n filterElements: []\n }\n },\n udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId\n );\n if (res?.data?.pageList.length > 0) {\n setUdpImportMappingData(res?.data?.pageList);\n }\n }\n }, [udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId]);\n\n useEffect(() => {\n searchFileImportMappingData();\n }, [searchFileImportMappingData]);\n\n const handleImportDataFromFile = useCallback(async () => {\n setIsLoading(true)\n const file = fileObject;\n const blob = new Blob([file], { type: file.type });\n const formData = new FormData();\n formData.append('file', blob, file.name);\n formData.append('tenantId', user?.currentTenantId);\n formData.append('name', selectedFileMapping.name);\n formData.append('objectInfoSanitizedName', selectedFileMapping.objectInfoSanitizedName);\n formData.append('fileImportType', selectedFileMapping.fileImportType);\n formData.append('mapping', selectedFileMapping.mapping);\n formData.append('properties', selectedFileMapping.properties);\n formData.append('id', selectedFileMapping.id);\n const response = await executeImportDataFromFile(formData).catch((res) => {\n setIsLoading(false)\n handleErrorSnackbar(res);\n onImportFail()\n });\n if (response?.status === 201) {\n handleSuccessSnackbar('Imported Data');\n setIsLoading(false)\n onImportSuccess && onImportSuccess()\n }\n\n }, [\n fileObject,\n selectedFileMapping,\n executeImportDataFromFile,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n onImportSuccess,\n onImportFail\n ]);\n\n const getFileMappingOptionlabel = (option) => {\n return `${option.name} (${option?.udpFileImportMappingUdpFileImportType?.extension})`;\n };\n\n const handleAddFileToUpload = (fileObj) => {\n setFileObject(fileObj[0]);\n };\n\n return (\n <>\n <AmbientCard fullWidth>\n <div style={{ display: 'flex' }}>\n <AmbientAutoComplete\n isMultiple={false}\n id={'fileMapping'}\n name={'fileMapping'}\n label='File Mapping'\n onChange={(val) => setSelectedFileMapping(val)}\n options={udpImportMappingData}\n size='small'\n getOptionLabelFunction={getFileMappingOptionlabel}\n value={selectedFileMapping}\n required\n groupBy={(option) =>\n option?.udpFileImportMappingUdpObjectInfo?.sanitizedName\n }\n />\n </div>\n {selectedFileMapping && (\n <DragDropFileUpload\n handleUploadFile={handleAddFileToUpload}\n accept={{\n 'text/csv': ['.csv'],\n 'text/plain': ['.txt'],\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':\n ['.xlsx'],\n 'application/json': ['.json']\n }}\n />\n )}\n <div\n style={{\n display: 'flex',\n flexDirection: 'row',\n gap: 5,\n float: 'right',\n marginTop: 10\n }}\n >\n <FluentButton\n onClick={() => setNewFileMappingSidesheetOpen(true)}\n variant='outlined'\n >\n Create New Mapping\n </FluentButton>\n <FluentButton\n variant='contained'\n color='secondary'\n onClick={handleImportDataFromFile}\n progress={isLoading}\n disabled={!fileObject}\n >\n Import Data\n </FluentButton>\n </div>\n <SideSheet\n title='Create New File Mapping'\n open={newFileMappingSidesheetOpen}\n onClose={() => setNewFileMappingSidesheetOpen(false)}\n width={'60%'}\n >\n <FileImportMappingWizard\n refetchMappings={searchFileImportMappingData}\n setNewFileMappingSidesheetOpen={setNewFileMappingSidesheetOpen}\n verifyRequiredFields={verifyRequiredFields}\n />\n </SideSheet>\n </AmbientCard>\n <div style={{ marginTop: 10 }}>\n <FileImportConfigCard fileMappingRecord={selectedFileMapping} domain={selectedFileMapping?.udpFileImportMappingUdpObjectInfo?.sanitizedName.replace(/([A-Z])/g, ' $1').trim()}/>\n </div>\n </>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ImportDataFromFileMapping.mjs","names":["React","useState","useCallback","useEffect","UdpCard","UdpAutocomplete","UdpButton","apiMutate","useHandleAxiosSnackbar","UdpDrawer","UdpFileInput","FileImportMappingWizard","usePromotedMethodEntity","executeQueryAdHoc","useUser","FileImportConfigCard","ConfigService","ImportDataFromFileMapping","props","$","_c","onImportSuccess","onImportFail","verifyRequiredFields","t0","undefined","user","selectedFileMapping","setSelectedFileMapping","udpImportMappingData","setUdpImportMappingData","newFileMappingSidesheetOpen","setNewFileMappingSidesheetOpen","fileObject","setFileObject","t1","Symbol","for","fileItems","setFileItems","isLoading","setIsLoading","handleErrorSnackbar","handleSuccessSnackbar","data","udpFileImportMappingEntity","t2","objectInfoSanitizedName","productV1ApiUrl","method","executeImportDataFromFile","t3","unityBaseSearchMethod","apiMethodId","res","eagerLoad","pageSize","filterElements","pageList","length","searchFileImportMappingData","t4","t5","t6","fileImportType","id","mapping","name","properties","currentTenantId","file","blob","Blob","type","formData","FormData","append","response","catch","res_0","status","handleImportDataFromFile","getFileMappingOptionlabel","_temp","t7","e","items","target","value","find","_temp2","handleAddFileToUpload","t8","display","t9","e_0","t10","_temp3","t11","t12","flexDirection","gap","float","marginTop","t13","t14","t15","t16","t17","t18","t19","t20","t21","udpFileImportMappingUdpObjectInfo","sanitizedName","replace","trim","t22","t23","option","udpFileImportMappingUdpFileImportType","extension","item","kind","option_0"],"sources":["../../../src/udp/fileImportMapping/ImportDataFromFileMapping.jsx"],"sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport { UdpCard } from '../../UI/fluent-web-components/UdpCard';\nimport { UdpAutocomplete } from '../../UI/fluent-web-components/UdpAutocomplete';\nimport { UdpButton } from '../../UI/fluent-web-components/UdpButton';\nimport { apiMutate } from '../../utilities/useAxiosMutate';\nimport { useHandleAxiosSnackbar } from '../../utilities/apiHelpers';\nimport { UdpDrawer } from '../../UI/fluent-web-components/UdpDrawer';\nimport { UdpFileInput } from '../../UI/fluent-web-components/UdpFileInput';\nimport FileImportMappingWizard from './FileImportMappingWizard';\nimport { usePromotedMethodEntity } from '../../hooks/usePromotedMethodEntity';\nimport { executeQueryAdHoc } from '../utilities/methodUtils';\nimport { useUser } from '../../utilities/auth/useUser';\nimport { FileImportConfigCard } from './FileImportConfigCard';\nimport { ConfigService } from '../../configService';\n\nexport const ImportDataFromFileMapping = (props) => {\n const {onImportSuccess, onImportFail, verifyRequiredFields = true} = props\n const user = useUser();\n const [selectedFileMapping, setSelectedFileMapping] = useState();\n const [udpImportMappingData, setUdpImportMappingData] = useState();\n const [newFileMappingSidesheetOpen, setNewFileMappingSidesheetOpen] =\n useState(false);\n const [fileObject, setFileObject] = useState();\n const [fileItems, setFileItems] = useState([]);\n const [isLoading, setIsLoading] = useState(false)\n const { handleErrorSnackbar, handleSuccessSnackbar } =\n useHandleAxiosSnackbar();\n\n const { data: udpFileImportMappingEntity } = usePromotedMethodEntity(\n 'UdpFileImportMapping',\n true\n );\n\n const executeImportDataFromFile = useCallback(\n async (data) =>\n apiMutate(\n ConfigService.productV1ApiUrl,\n `${selectedFileMapping?.objectInfoSanitizedName}/fileImportMapping`,\n {\n method: 'post'\n },\n { data }\n ),\n [selectedFileMapping]\n );\n\n const searchFileImportMappingData = useCallback(async () => {\n if (udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId) {\n const res = await executeQueryAdHoc(\n {\n data: {\n eagerLoad: true,\n pageSize: 200,\n filterElements: []\n }\n },\n udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId\n );\n if (res?.data?.pageList.length > 0) {\n setUdpImportMappingData(res?.data?.pageList);\n }\n }\n }, [udpFileImportMappingEntity?.unityBaseSearchMethod?.apiMethodId]);\n\n useEffect(() => {\n searchFileImportMappingData();\n }, [searchFileImportMappingData]);\n\n const handleImportDataFromFile = useCallback(async () => {\n setIsLoading(true)\n const file = fileObject;\n const blob = new Blob([file], { type: file.type });\n const formData = new FormData();\n formData.append('file', blob, file.name);\n formData.append('tenantId', user?.currentTenantId);\n formData.append('name', selectedFileMapping.name);\n formData.append('objectInfoSanitizedName', selectedFileMapping.objectInfoSanitizedName);\n formData.append('fileImportType', selectedFileMapping.fileImportType);\n formData.append('mapping', selectedFileMapping.mapping);\n formData.append('properties', selectedFileMapping.properties);\n formData.append('id', selectedFileMapping.id);\n const response = await executeImportDataFromFile(formData).catch((res) => {\n setIsLoading(false)\n handleErrorSnackbar(res);\n onImportFail()\n });\n if (response?.status === 201) {\n handleSuccessSnackbar('Imported Data');\n setIsLoading(false)\n onImportSuccess && onImportSuccess()\n }\n\n }, [\n fileObject,\n selectedFileMapping,\n executeImportDataFromFile,\n handleErrorSnackbar,\n handleSuccessSnackbar,\n user,\n onImportSuccess,\n onImportFail\n ]);\n\n const getFileMappingOptionlabel = (option) => {\n return `${option.name} (${option?.udpFileImportMappingUdpFileImportType?.extension})`;\n };\n\n const handleAddFileToUpload = (e) => {\n const items = e.target.value;\n setFileItems(items);\n setFileObject(items.find(item => item.kind === 'pending')?.file);\n };\n\n return (\n <>\n <UdpCard width=\"100%\">\n <div style={{ display: 'flex' }}>\n <UdpAutocomplete\n name={'fileMapping'}\n label='File Mapping'\n onChange={(e) => setSelectedFileMapping(e.target.value)}\n options={udpImportMappingData}\n optionLabel={getFileMappingOptionlabel}\n optionValue=\"id\"\n value={selectedFileMapping}\n required\n optionGroup={(option) =>\n option?.udpFileImportMappingUdpObjectInfo?.sanitizedName\n }\n />\n </div>\n {selectedFileMapping && (\n <UdpFileInput\n value={fileItems}\n onChange={handleAddFileToUpload}\n accept=\".csv,.txt,.xlsx,.json\"\n maxFiles={1}\n />\n )}\n <div\n style={{\n display: 'flex',\n flexDirection: 'row',\n gap: 5,\n float: 'right',\n marginTop: 10\n }}\n >\n <UdpButton\n onClick={() => setNewFileMappingSidesheetOpen(true)}\n appearance='outline'\n >\n Create New Mapping\n </UdpButton>\n <UdpButton\n appearance='primary'\n onClick={handleImportDataFromFile}\n loading={isLoading}\n disabled={!fileObject}\n >\n Import Data\n </UdpButton>\n </div>\n <UdpDrawer\n drawerTitle='Create New File Mapping'\n open={newFileMappingSidesheetOpen}\n onDrawerClose={() => setNewFileMappingSidesheetOpen(false)}\n drawerWidth={'60%'}\n >\n <FileImportMappingWizard\n refetchMappings={searchFileImportMappingData}\n setNewFileMappingSidesheetOpen={setNewFileMappingSidesheetOpen}\n verifyRequiredFields={verifyRequiredFields}\n />\n </UdpDrawer>\n </UdpCard>\n <div style={{ marginTop: 10 }}>\n <FileImportConfigCard fileMappingRecord={selectedFileMapping} domain={selectedFileMapping?.udpFileImportMappingUdpObjectInfo?.sanitizedName.replace(/([A-Z])/g, ' $1').trim()}/>\n </div>\n </>\n );\n};\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { UdpButton } from "../../UI/fluent-web-components/UdpButton.mjs";
2
2
  import { UdpText } from "../../UI/fluent-web-components/UdpText.mjs";
3
- import { UdpDrawer } from "../../UI/fluent-web-components/UdpDrawer.mjs";
4
3
  import { UdpCard } from "../../UI/fluent-web-components/UdpCard.mjs";
5
- import { UdpFlexbox } from "../../UI/fluent-web-components/UdpFlexbox.mjs";
6
- import { UdpTextInput } from "../../UI/fluent-web-components/UdpTextInput.mjs";
4
+ import { UdpDrawer } from "../../UI/fluent-web-components/UdpDrawer.mjs";
5
+ import { UdpBadge } from "../../UI/fluent-web-components/UdpBadge.mjs";
7
6
  import { UdpDropdown } from "../../UI/fluent-web-components/UdpDropdown.mjs";
7
+ import { UdpFlexbox } from "../../UI/fluent-web-components/UdpFlexbox.mjs";
8
8
  import { UdpIconButton } from "../../UI/fluent-web-components/UdpIconButton.mjs";
9
- import { UdpBadge } from "../../UI/fluent-web-components/UdpBadge.mjs";
10
9
  import { UdpMessageBar } from "../../UI/fluent-web-components/UdpMessageBar.mjs";
10
+ import { UdpTextInput } from "../../UI/fluent-web-components/UdpTextInput.mjs";
11
11
  import React, { useCallback, useEffect, useMemo, useState } from "react";
12
12
  import { LookupColumnTypeId, LookupTypeId, isCatalogModelObject } from "udp-stencil-component-library";
13
13
  //#region src/udp/lookups/LookupCreationSheet.jsx
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "udp-react-enterprise-component-library",
3
- "version": "26.2.0-beta.3",
3
+ "version": "26.2.0-beta.5",
4
4
  "description": "React-based UI component library implementing Fluent UI design for Univerus internal projects",
5
5
  "author": "Univerus",
6
6
  "license": "MIT",
@@ -3692,7 +3692,7 @@
3692
3692
  "@tanstack/react-query": "^5",
3693
3693
  "@tanstack/react-query-devtools": "^5",
3694
3694
  "udp-react-stencil-component-library": "^26.0.1",
3695
- "udp-stencil-component-library": "^26.2.0-beta.3",
3695
+ "udp-stencil-component-library": "^26.2.0-beta.5",
3696
3696
  "axios": "^0.27.2",
3697
3697
  "axios-hooks": "^2.1.0",
3698
3698
  "broadcast-channel": "^4.17.0",