@sparrowengg/integrations-templates-frontend 1.9.84-beta.1 → 1.9.84-beta.11

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.
Files changed (99) hide show
  1. package/dist/cjs/_virtual/index10.js +2 -2
  2. package/dist/cjs/_virtual/index9.js +2 -2
  3. package/dist/cjs/authentication/constants/index.js +115 -1
  4. package/dist/cjs/authentication/constants/index.js.map +1 -1
  5. package/dist/cjs/authentication/index.js +36 -32
  6. package/dist/cjs/authentication/index.js.map +1 -1
  7. package/dist/cjs/commons/components/NamingModal.js +82 -0
  8. package/dist/cjs/commons/components/NamingModal.js.map +1 -0
  9. package/dist/cjs/commons/constants/enhanced.js +12 -0
  10. package/dist/cjs/commons/constants/enhanced.js.map +1 -0
  11. package/dist/cjs/commons/constants/index.js +7 -1
  12. package/dist/cjs/commons/constants/index.js.map +1 -1
  13. package/dist/cjs/contact-import/components/contact-import-configure.js.map +1 -1
  14. package/dist/cjs/contact-import/components/contact-import-mapping.js +10 -7
  15. package/dist/cjs/contact-import/components/contact-import-mapping.js.map +1 -1
  16. package/dist/cjs/contact-import/index.js +6 -9
  17. package/dist/cjs/contact-import/index.js.map +1 -1
  18. package/dist/cjs/integration-template/components/dashboard.js +225 -179
  19. package/dist/cjs/integration-template/components/dashboard.js.map +1 -1
  20. package/dist/cjs/integration-template/index.js +33 -14
  21. package/dist/cjs/integration-template/index.js.map +1 -1
  22. package/dist/cjs/mapping/components/custom-date-menu.js +3 -2
  23. package/dist/cjs/mapping/components/custom-date-menu.js.map +1 -1
  24. package/dist/cjs/mapping/components/custom-menu.js.map +1 -1
  25. package/dist/cjs/mapping/components/field.js +14 -6
  26. package/dist/cjs/mapping/components/field.js.map +1 -1
  27. package/dist/cjs/mapping/components/mapping.js +29 -21
  28. package/dist/cjs/mapping/components/mapping.js.map +1 -1
  29. package/dist/cjs/mapping/constants/index.js +32 -0
  30. package/dist/cjs/mapping/constants/index.js.map +1 -0
  31. package/dist/cjs/mapping/index.js +453 -24
  32. package/dist/cjs/mapping/index.js.map +1 -1
  33. package/dist/cjs/mapping/services/index.js.map +1 -1
  34. package/dist/cjs/node_modules/@internationalized/date/dist/utils.js +2 -1
  35. package/dist/cjs/node_modules/@internationalized/date/dist/utils.js.map +1 -1
  36. package/dist/cjs/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
  37. package/dist/cjs/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
  38. package/dist/cjs/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
  39. package/dist/cjs/single-mapping/components/mapping.js +28 -14
  40. package/dist/cjs/single-mapping/components/mapping.js.map +1 -1
  41. package/dist/cjs/single-mapping/index.js +25 -28
  42. package/dist/cjs/single-mapping/index.js.map +1 -1
  43. package/dist/cjs/triggers/components/trigger.js +14 -18
  44. package/dist/cjs/triggers/components/trigger.js.map +1 -1
  45. package/dist/cjs/triggers/constants/index.js +5 -11
  46. package/dist/cjs/triggers/constants/index.js.map +1 -1
  47. package/dist/cjs/triggers/index.js +16 -21
  48. package/dist/cjs/triggers/index.js.map +1 -1
  49. package/dist/es/_virtual/index10.js +2 -2
  50. package/dist/es/_virtual/index9.js +2 -2
  51. package/dist/es/authentication/constants/index.js +114 -2
  52. package/dist/es/authentication/constants/index.js.map +1 -1
  53. package/dist/es/authentication/index.js +35 -31
  54. package/dist/es/authentication/index.js.map +1 -1
  55. package/dist/es/commons/components/NamingModal.js +78 -0
  56. package/dist/es/commons/components/NamingModal.js.map +1 -0
  57. package/dist/es/commons/constants/enhanced.js +10 -0
  58. package/dist/es/commons/constants/enhanced.js.map +1 -0
  59. package/dist/es/commons/constants/index.js +5 -2
  60. package/dist/es/commons/constants/index.js.map +1 -1
  61. package/dist/es/contact-import/components/contact-import-configure.js.map +1 -1
  62. package/dist/es/contact-import/components/contact-import-mapping.js +10 -7
  63. package/dist/es/contact-import/components/contact-import-mapping.js.map +1 -1
  64. package/dist/es/contact-import/index.js +4 -7
  65. package/dist/es/contact-import/index.js.map +1 -1
  66. package/dist/es/integration-template/components/dashboard.js +225 -179
  67. package/dist/es/integration-template/components/dashboard.js.map +1 -1
  68. package/dist/es/integration-template/index.js +33 -14
  69. package/dist/es/integration-template/index.js.map +1 -1
  70. package/dist/es/mapping/components/custom-date-menu.js +3 -2
  71. package/dist/es/mapping/components/custom-date-menu.js.map +1 -1
  72. package/dist/es/mapping/components/custom-menu.js.map +1 -1
  73. package/dist/es/mapping/components/field.js +14 -6
  74. package/dist/es/mapping/components/field.js.map +1 -1
  75. package/dist/es/mapping/components/mapping.js +30 -22
  76. package/dist/es/mapping/components/mapping.js.map +1 -1
  77. package/dist/es/mapping/constants/index.js +28 -0
  78. package/dist/es/mapping/constants/index.js.map +1 -0
  79. package/dist/es/mapping/index.js +453 -24
  80. package/dist/es/mapping/index.js.map +1 -1
  81. package/dist/es/mapping/services/index.js.map +1 -1
  82. package/dist/es/node_modules/@internationalized/date/dist/utils.js +2 -1
  83. package/dist/es/node_modules/@internationalized/date/dist/utils.js.map +1 -1
  84. package/dist/es/node_modules/@sparrowengg/twigs-react/dist/es/dialog/dialog.js +1 -1
  85. package/dist/es/node_modules/hoist-non-react-statics/node_modules/react-is/index.js +1 -1
  86. package/dist/es/node_modules/html-dom-parser/node_modules/domutils/lib/index.js +1 -1
  87. package/dist/es/node_modules/html-dom-parser/node_modules/htmlparser2/lib/index.js +1 -1
  88. package/dist/es/single-mapping/components/mapping.js +28 -14
  89. package/dist/es/single-mapping/components/mapping.js.map +1 -1
  90. package/dist/es/single-mapping/index.js +25 -28
  91. package/dist/es/single-mapping/index.js.map +1 -1
  92. package/dist/es/triggers/components/trigger.js +14 -18
  93. package/dist/es/triggers/components/trigger.js.map +1 -1
  94. package/dist/es/triggers/constants/index.js +5 -11
  95. package/dist/es/triggers/constants/index.js.map +1 -1
  96. package/dist/es/triggers/index.js +16 -21
  97. package/dist/es/triggers/index.js.map +1 -1
  98. package/dist/index.d.ts +269 -90
  99. package/package.json +2 -1
@@ -3,6 +3,8 @@ import Arrow from '../commons/icons/arrow.js';
3
3
  import { Mapping as Mapping$1 } from './components/mapping.js';
4
4
  import { surveySparrowURL } from '../commons/constants/index.js';
5
5
  import DraftModal from '../commons/components/draftModal.js';
6
+ import '../node_modules/dayjs/dayjs.min.js';
7
+ import NamingModal from '../commons/components/NamingModal.js';
6
8
  import { ThemeProvider } from '../node_modules/@sparrowengg/twigs-react/dist/es/theme-provider/theme-provider.js';
7
9
  import { Box } from '../node_modules/@sparrowengg/twigs-react/dist/es/box/box.js';
8
10
  import { Flex } from '../node_modules/@sparrowengg/twigs-react/dist/es/flex/flex.js';
@@ -14,8 +16,36 @@ import { Button } from '../node_modules/@sparrowengg/twigs-react/dist/es/button/
14
16
  import { ChevronRightIcon } from '../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/chevron-right.js';
15
17
  import { IconButton } from '../node_modules/@sparrowengg/twigs-react/dist/es/button/icon-button.js';
16
18
  import { ArrowLeftIcon } from '../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/arrow-left.js';
19
+ import { Tooltip } from '../node_modules/@sparrowengg/twigs-react/dist/es/tooltip/tooltip.js';
20
+ import { FormInput } from '../node_modules/@sparrowengg/twigs-react/dist/es/input/form-input.js';
21
+ import { Checkbox } from '../node_modules/@sparrowengg/twigs-react/dist/es/checkbox/checkbox.js';
22
+ import { Switch } from '../node_modules/@sparrowengg/twigs-react/dist/es/switch/switch.js';
23
+ import { c as components } from '../node_modules/react-select/dist/index-a301f526.esm.js';
24
+ import { PlusIcon } from '../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/plus.js';
25
+ import { Chip } from '../node_modules/@sparrowengg/twigs-react/dist/es/chip/chip.js';
26
+ import { TickCircleFillIcon } from '../node_modules/@sparrowengg/twigs-react-icons/dist/es/icons/tick-circle-fill.js';
17
27
 
28
+ var __defProp = Object.defineProperty;
29
+ var __defProps = Object.defineProperties;
30
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
31
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
32
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
33
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
34
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
35
+ var __spreadValues = (a, b) => {
36
+ for (var prop in b || (b = {}))
37
+ if (__hasOwnProp.call(b, prop))
38
+ __defNormalProp(a, prop, b[prop]);
39
+ if (__getOwnPropSymbols)
40
+ for (var prop of __getOwnPropSymbols(b)) {
41
+ if (__propIsEnum.call(b, prop))
42
+ __defNormalProp(a, prop, b[prop]);
43
+ }
44
+ return a;
45
+ };
46
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
18
47
  const Mapping = ({
48
+ hasNamingModal,
19
49
  havingTypeDropdown,
20
50
  onSaveMappingLoader,
21
51
  surveyDetails,
@@ -38,9 +68,12 @@ const Mapping = ({
38
68
  onSaveHandler,
39
69
  editField,
40
70
  previousMappingHandler,
41
- draftHandler
71
+ draftHandler,
72
+ configuration
42
73
  }) => {
43
- const [previousMapping, setPreviousMapping] = useState(hasPreviousMapping != null ? hasPreviousMapping : false);
74
+ const [previousMapping, setPreviousMapping] = useState(
75
+ hasPreviousMapping != null ? hasPreviousMapping : false
76
+ );
44
77
  useEffect(() => {
45
78
  if (!!(editField == null ? void 0 : editField.id)) {
46
79
  setFields(editField.fieldValues);
@@ -73,7 +106,9 @@ const Mapping = ({
73
106
  onSaveHandler,
74
107
  navigateEventPage: () => navigateMappingPage(false),
75
108
  previousMappingHandler,
76
- draftHandler
109
+ draftHandler,
110
+ hasNamingModal,
111
+ configuration
77
112
  }
78
113
  ), !isMappingPage ? /* @__PURE__ */ React__default.createElement(
79
114
  EventSetup,
@@ -82,7 +117,9 @@ const Mapping = ({
82
117
  accounts,
83
118
  events,
84
119
  actions,
85
- navigateMappingPage
120
+ navigateMappingPage,
121
+ configuration,
122
+ editFieldId: editField == null ? void 0 : editField.id
86
123
  }
87
124
  ) : /* @__PURE__ */ React__default.createElement(
88
125
  Mapping$1,
@@ -109,7 +146,9 @@ const EventSetup = ({
109
146
  accounts,
110
147
  events,
111
148
  actions,
112
- navigateMappingPage
149
+ navigateMappingPage,
150
+ configuration,
151
+ editFieldId
113
152
  }) => {
114
153
  useEffect(() => {
115
154
  if (actions == null ? void 0 : actions.value) {
@@ -126,13 +165,22 @@ const EventSetup = ({
126
165
  alignItems: "center",
127
166
  justifyContent: "center"
128
167
  },
129
- /* @__PURE__ */ React__default.createElement(Box, { css: { width: 488 } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, "Account Details"), /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", css: { marginTop: "$4" } }, /* @__PURE__ */ React__default.createElement(Text, { size: "sm", css: { color: "$neutral500" } }, "Survey Name:"), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "medium", css: { color: "$neutral800" } }, surveyDetails.surveyName)), /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$8", css: { marginTop: "$16" } }, (accounts == null ? void 0 : accounts.hasAccounts) && /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Account"), /* @__PURE__ */ React__default.createElement(
168
+ /* @__PURE__ */ React__default.createElement(Box, { css: { width: 488 } }, configuration.hasConfiguration ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(
169
+ ConfigurationSetup,
170
+ {
171
+ configuration,
172
+ surveyName: surveyDetails.surveyName,
173
+ editField: editFieldId
174
+ }
175
+ )) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, configuration == null ? void 0 : configuration.title), /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", css: { marginTop: "$4" } }, /* @__PURE__ */ React__default.createElement(Text, { size: "sm", css: { color: "$neutral500" } }, "Survey Name:"), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "medium", css: { color: "$neutral800" } }, surveyDetails.surveyName)), /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", gap: "$8", css: { marginTop: "$16" } }, (accounts == null ? void 0 : accounts.hasAccounts) && /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Account"), /* @__PURE__ */ React__default.createElement(
130
176
  Select,
131
177
  {
132
178
  value: accounts.value,
133
179
  options: accounts.options,
134
180
  placeholder: "",
135
- onChange: (value) => accounts.onChangeHandler(value),
181
+ onChange: (value) => accounts.onChangeHandler(
182
+ value
183
+ ),
136
184
  size: "lg"
137
185
  }
138
186
  )), (events == null ? void 0 : events.hasEvents) && /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Object"), /* @__PURE__ */ React__default.createElement(
@@ -141,7 +189,9 @@ const EventSetup = ({
141
189
  options: events.options,
142
190
  value: events == null ? void 0 : events.value,
143
191
  placeholder: "",
144
- onChange: (value) => events.onChangeHandler(value),
192
+ onChange: (value) => events.onChangeHandler(
193
+ value
194
+ ),
145
195
  size: "lg"
146
196
  }
147
197
  )), (actions == null ? void 0 : actions.hasActions) && /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", flexDirection: "column" }, /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, "Choose Action"), /* @__PURE__ */ React__default.createElement(
@@ -151,13 +201,15 @@ const EventSetup = ({
151
201
  options: actions.options,
152
202
  value: actions == null ? void 0 : actions.value,
153
203
  placeholder: "",
154
- onChange: (value) => actions.onChangeHandler(value)
204
+ onChange: (value) => actions.onChangeHandler(
205
+ value
206
+ )
155
207
  }
156
- ))), /* @__PURE__ */ React__default.createElement(
208
+ )))), /* @__PURE__ */ React__default.createElement(
157
209
  Button,
158
210
  {
159
211
  size: "lg",
160
- disabled: !actions.value || !events.value,
212
+ disabled: configuration.hasConfiguration ? false : !(actions == null ? void 0 : actions.value) || !(events == null ? void 0 : events.value),
161
213
  rightIcon: /* @__PURE__ */ React__default.createElement(ChevronRightIcon, null),
162
214
  css: { marginTop: "$16" },
163
215
  onClick: () => navigateMappingPage()
@@ -167,6 +219,7 @@ const EventSetup = ({
167
219
  );
168
220
  };
169
221
  const MappingHeader = ({
222
+ hasNamingModal,
170
223
  navigateMappingPage,
171
224
  accounts,
172
225
  events,
@@ -180,10 +233,12 @@ const MappingHeader = ({
180
233
  onSaveHandler,
181
234
  previousMappingHandler,
182
235
  editFieldId,
183
- draftHandler
236
+ draftHandler,
237
+ configuration
184
238
  }) => {
185
- const isDisabled = !actions.value || !events.value;
239
+ const isDisabled = !(actions == null ? void 0 : actions.value) || !(events == null ? void 0 : events.value);
186
240
  const [isDraftModalOpen, setIsDraftModalOpen] = useState(false);
241
+ const [isNamingModalOpen, setIsNamingModalOpen] = useState(false);
187
242
  const isAllEssentialMapped = (fields2) => {
188
243
  let status = true;
189
244
  fields2 == null ? void 0 : fields2.map((field) => {
@@ -215,14 +270,21 @@ const MappingHeader = ({
215
270
  padding: "$8 $12"
216
271
  }
217
272
  },
218
- isDraftModalOpen && /* @__PURE__ */ React__default.createElement(DraftModal, { onSaveHandler: async () => {
219
- await draftHandler("MAPPING", editFieldId == null ? void 0 : editFieldId.toString());
220
- setIsDraftModalOpen(false);
221
- await previousMappingHandler();
222
- }, onCloseHandler: () => setIsDraftModalOpen(false), onCancel: async () => {
223
- await previousMappingHandler();
224
- setIsDraftModalOpen(false);
225
- } }),
273
+ isDraftModalOpen && /* @__PURE__ */ React__default.createElement(
274
+ DraftModal,
275
+ {
276
+ onSaveHandler: async () => {
277
+ await draftHandler("MAPPING", editFieldId == null ? void 0 : editFieldId.toString());
278
+ setIsDraftModalOpen(false);
279
+ await previousMappingHandler();
280
+ },
281
+ onCloseHandler: () => setIsDraftModalOpen(false),
282
+ onCancel: async () => {
283
+ await previousMappingHandler();
284
+ setIsDraftModalOpen(false);
285
+ }
286
+ }
287
+ ),
226
288
  /* @__PURE__ */ React__default.createElement(
227
289
  Flex,
228
290
  {
@@ -230,7 +292,15 @@ const MappingHeader = ({
230
292
  alignItems: "center",
231
293
  css: { visibility: hasPreviousMapping ? "visible" : "hidden" }
232
294
  },
233
- /* @__PURE__ */ React__default.createElement(IconButton, { onClick: () => setIsDraftModalOpen(true), color: "default", icon: /* @__PURE__ */ React__default.createElement(ArrowLeftIcon, null), size: "lg" }),
295
+ /* @__PURE__ */ React__default.createElement(
296
+ IconButton,
297
+ {
298
+ onClick: () => previousMappingHandler(),
299
+ color: "default",
300
+ icon: /* @__PURE__ */ React__default.createElement(ArrowLeftIcon, null),
301
+ size: "lg"
302
+ }
303
+ ),
234
304
  /* @__PURE__ */ React__default.createElement(Heading, { size: "h6" }, editFieldId ? "Edit Mapping" : "New Mapping")
235
305
  ),
236
306
  /* @__PURE__ */ React__default.createElement(
@@ -270,16 +340,375 @@ const MappingHeader = ({
270
340
  /* @__PURE__ */ React__default.createElement(
271
341
  Button,
272
342
  {
273
- loading: onSaveMappingLoader,
274
343
  size: "lg",
275
344
  disabled: !isAllEssentialMapped(fields),
276
- onClick: () => onSaveHandler(editFieldId),
345
+ onClick: () => {
346
+ if (hasNamingModal) {
347
+ setIsNamingModalOpen(true);
348
+ } else {
349
+ onSaveHandler(editFieldId);
350
+ }
351
+ },
277
352
  css: { visibility: isMappingPage ? "visible" : "hidden" }
278
353
  },
279
354
  editFieldId ? "Update Mapping" : "Save Mapping"
355
+ ),
356
+ hasNamingModal && /* @__PURE__ */ React__default.createElement(
357
+ NamingModal,
358
+ {
359
+ editFieldId,
360
+ mappingLoader: onSaveMappingLoader,
361
+ saveHandler: () => onSaveHandler(editFieldId),
362
+ closeHandler: () => setIsNamingModalOpen(false),
363
+ value: (configuration == null ? void 0 : configuration.currentMappingName) || "",
364
+ setValue: (value) => {
365
+ var _a;
366
+ return (_a = configuration == null ? void 0 : configuration.setMappingName) == null ? void 0 : _a.call(configuration, value);
367
+ },
368
+ isOpen: isNamingModalOpen
369
+ }
280
370
  )
281
371
  );
282
372
  };
373
+ const ConfigurationSetup = ({
374
+ configuration,
375
+ surveyName,
376
+ editField
377
+ }) => {
378
+ var _a;
379
+ return /* @__PURE__ */ React__default.createElement(Box, { css: { maxWidth: 488, width: "100%" } }, /* @__PURE__ */ React__default.createElement(Heading, { size: "h5" }, configuration == null ? void 0 : configuration.title), /* @__PURE__ */ React__default.createElement(Flex, { gap: "$2", css: { marginTop: "$4" } }, /* @__PURE__ */ React__default.createElement(Text, { size: "sm", css: { color: "$neutral500" } }, "Survey Name:"), /* @__PURE__ */ React__default.createElement(
380
+ Tooltip,
381
+ {
382
+ content: (surveyName == null ? void 0 : surveyName.length) > 25 ? surveyName : "",
383
+ css: {
384
+ zIndex: "9999999 !important",
385
+ fontFamily: "DM Sans !important"
386
+ }
387
+ },
388
+ /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(
389
+ Text,
390
+ {
391
+ size: "sm",
392
+ weight: "medium",
393
+ truncate: true,
394
+ css: { color: "$neutral800", maxWidth: "270px" }
395
+ },
396
+ surveyName
397
+ ))
398
+ )), /* @__PURE__ */ React__default.createElement(
399
+ Flex,
400
+ {
401
+ flexDirection: "column",
402
+ gap: "$8",
403
+ css: {
404
+ marginTop: "$12",
405
+ "& label": {
406
+ color: "$neutral800"
407
+ }
408
+ }
409
+ },
410
+ (_a = configuration.configurationFields) == null ? void 0 : _a.map((field) => {
411
+ return /* @__PURE__ */ React__default.createElement(
412
+ Configuration,
413
+ {
414
+ field,
415
+ configuredFields: configuration.configuredFields
416
+ }
417
+ );
418
+ })
419
+ ));
420
+ };
421
+ const Configuration = ({
422
+ field,
423
+ configuredFields,
424
+ responseImportType = null
425
+ }) => {
426
+ var _a, _b, _c, _d;
427
+ let fieldValue = null;
428
+ fieldValue = (_b = (_a = configuredFields == null ? void 0 : configuredFields[field.id]) == null ? void 0 : _a.value) != null ? _b : null;
429
+ const [error, setError] = useState({
430
+ errorMessage: "",
431
+ error: false,
432
+ id: null
433
+ });
434
+ switch (field.fieldType) {
435
+ case "switch":
436
+ return /* @__PURE__ */ React__default.createElement(
437
+ Flex,
438
+ {
439
+ gap: "$4",
440
+ alignItems: "center",
441
+ css: {
442
+ marginBlockStart: "$12",
443
+ borderTop: "$borderWidths$xs solid $neutral200",
444
+ paddingTop: "$16"
445
+ }
446
+ },
447
+ /* @__PURE__ */ React__default.createElement(
448
+ Switch,
449
+ {
450
+ disabled: field == null ? void 0 : field.disabled,
451
+ size: "sm",
452
+ checked: field == null ? void 0 : field.value,
453
+ onChange: (value) => field.onChangeHandler({
454
+ id: field.id,
455
+ value
456
+ })
457
+ }
458
+ ),
459
+ /* @__PURE__ */ React__default.createElement(Text, { size: "md", weight: "regular", css: { color: "$neutral900" } }, field.label)
460
+ );
461
+ case "checkbox":
462
+ return /* @__PURE__ */ React__default.createElement(Flex, { flexDirection: "column", alignItems: "start", gap: "$4" }, /* @__PURE__ */ React__default.createElement(Flex, { gap: "$4", alignItems: "center" }, /* @__PURE__ */ React__default.createElement(
463
+ Checkbox,
464
+ {
465
+ disabled: field == null ? void 0 : field.disabled,
466
+ checked: !!fieldValue,
467
+ onChange: (value) => field.onChangeHandler({
468
+ id: field.id,
469
+ value
470
+ })
471
+ }
472
+ ), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "regular", css: { color: "$neutral900" } }, field.label)), /* @__PURE__ */ React__default.createElement(Text, { size: "sm", weight: "regular", css: { color: "$neutral500" } }, field.value ? field.ifChecked() : field.ifUnchecked(responseImportType)));
473
+ case "input":
474
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, (field == null ? void 0 : field.id) === "spreadsheet" ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, ((_c = configuredFields == null ? void 0 : configuredFields.action) == null ? void 0 : _c.value) ? /* @__PURE__ */ React__default.createElement(
475
+ Box,
476
+ {
477
+ className: "dm-sans",
478
+ css: {
479
+ label: {
480
+ fontSize: "$xs !important"
481
+ }
482
+ }
483
+ },
484
+ /* @__PURE__ */ React__default.createElement(
485
+ FormInput,
486
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({
487
+ disabled: field == null ? void 0 : field.disabled
488
+ }, error.id === field.id && {
489
+ error: error.errorMessage,
490
+ errorBorder: error.error
491
+ }), {
492
+ label: field.label,
493
+ value: typeof fieldValue === "object" ? "" : fieldValue || "",
494
+ size: "lg"
495
+ }), field.pattern && {
496
+ pattern: field.pattern
497
+ }), {
498
+ onChange: (event) => {
499
+ if (field == null ? void 0 : field.pattern) {
500
+ const pattern = new RegExp(field.pattern);
501
+ if (!pattern.test(event.currentTarget.value) && event.currentTarget.value !== "") {
502
+ setError({
503
+ errorMessage: field.errorMessage,
504
+ error: true,
505
+ id: field.id
506
+ });
507
+ } else {
508
+ setError({
509
+ errorMessage: "",
510
+ error: false,
511
+ id: null
512
+ });
513
+ }
514
+ field.onChangeHandler({
515
+ id: field.id,
516
+ value: event.currentTarget.value
517
+ });
518
+ } else {
519
+ field.onChangeHandler({
520
+ id: field.id,
521
+ value: event.currentTarget.value
522
+ });
523
+ }
524
+ }
525
+ })
526
+ )
527
+ ) : null) : /* @__PURE__ */ React__default.createElement(
528
+ Box,
529
+ {
530
+ className: "dm-sans",
531
+ css: {
532
+ label: {
533
+ fontSize: "$xs !important"
534
+ }
535
+ }
536
+ },
537
+ /* @__PURE__ */ React__default.createElement(
538
+ FormInput,
539
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({
540
+ disabled: field == null ? void 0 : field.disabled
541
+ }, error.id === field.id && {
542
+ error: error.errorMessage,
543
+ errorBorder: error.error
544
+ }), {
545
+ label: field.label,
546
+ value: typeof fieldValue === "object" ? "" : fieldValue || "",
547
+ size: "lg"
548
+ }), field.pattern && {
549
+ pattern: field.pattern
550
+ }), {
551
+ onChange: (event) => {
552
+ if (field == null ? void 0 : field.pattern) {
553
+ const pattern = new RegExp(field.pattern);
554
+ if (!pattern.test(event.currentTarget.value) && event.currentTarget.value !== "") {
555
+ setError({
556
+ errorMessage: field.errorMessage,
557
+ error: true,
558
+ id: field.id
559
+ });
560
+ } else {
561
+ setError({
562
+ errorMessage: "",
563
+ error: false,
564
+ id: null
565
+ });
566
+ }
567
+ field.onChangeHandler({
568
+ id: field.id,
569
+ value: event.currentTarget.value
570
+ });
571
+ } else {
572
+ field.onChangeHandler({
573
+ id: field.id,
574
+ value: event.currentTarget.value
575
+ });
576
+ }
577
+ }
578
+ })
579
+ )
580
+ ));
581
+ default:
582
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, field.id === "spreadsheet" ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, ((_d = configuredFields == null ? void 0 : configuredFields.action) == null ? void 0 : _d.value) ? /* @__PURE__ */ React__default.createElement(
583
+ Flex,
584
+ {
585
+ gap: "$2",
586
+ flexDirection: "column",
587
+ css: {
588
+ cursor: "pointer !important",
589
+ ".twigs-select__indicator": {
590
+ width: "14px !important",
591
+ color: "#848484 !important"
592
+ }
593
+ }
594
+ },
595
+ /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, field.label),
596
+ /* @__PURE__ */ React__default.createElement(CustomAddNewSelect, { field })
597
+ ) : null) : /* @__PURE__ */ React__default.createElement(
598
+ Flex,
599
+ {
600
+ gap: "$2",
601
+ flexDirection: "column",
602
+ css: {
603
+ cursor: "pointer !important",
604
+ ".twigs-select__indicator": {
605
+ width: "14px !important",
606
+ color: "#848484 !important"
607
+ }
608
+ }
609
+ },
610
+ /* @__PURE__ */ React__default.createElement(FormLabel, { size: "xs", css: { fontWeight: "$5" } }, field.label),
611
+ /* @__PURE__ */ React__default.createElement(CustomAddNewSelect, { field })
612
+ ));
613
+ }
614
+ };
615
+ const CustomAddNewSelect = ({ field }) => {
616
+ return /* @__PURE__ */ React__default.createElement(
617
+ Select,
618
+ {
619
+ isDisabled: field == null ? void 0 : field.disabled,
620
+ placeholder: "",
621
+ size: "lg",
622
+ css: {
623
+ cursor: "pointer"
624
+ },
625
+ components: {
626
+ Option: CustomShareOption,
627
+ SingleValue: CustomSingleValue
628
+ },
629
+ styles: {
630
+ singleValue: (provided, state) => __spreadProps(__spreadValues({}, provided), {
631
+ display: "flex",
632
+ alignItems: "center",
633
+ cursor: "pointer"
634
+ })
635
+ },
636
+ value: field.value,
637
+ onChange: (value) => {
638
+ var _a;
639
+ field.onChangeHandler({
640
+ id: (_a = field == null ? void 0 : field.id) != null ? _a : field == null ? void 0 : field.label,
641
+ value
642
+ });
643
+ },
644
+ options: field.options
645
+ }
646
+ );
647
+ };
648
+ const CustomShareOption = (props) => {
649
+ if (props.data.value === "ADD_NEW") {
650
+ return /* @__PURE__ */ React__default.createElement(
651
+ Tooltip,
652
+ {
653
+ content: props.data.tooltip || "",
654
+ css: {
655
+ zIndex: 999999999,
656
+ fontFamily: "DM Sans !important"
657
+ }
658
+ },
659
+ /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(components.Option, __spreadValues({}, props), /* @__PURE__ */ React__default.createElement(
660
+ Flex,
661
+ {
662
+ justifyContent: "center",
663
+ alignItems: "center",
664
+ css: { cursor: "pointer", zIndex: 999999999 }
665
+ },
666
+ /* @__PURE__ */ React__default.createElement(
667
+ Flex,
668
+ {
669
+ gap: "$2",
670
+ alignItems: "center",
671
+ css: {
672
+ color: "$primary500",
673
+ fontSize: "$sm",
674
+ fontWeight: "$7"
675
+ }
676
+ },
677
+ /* @__PURE__ */ React__default.createElement(PlusIcon, { size: 16, color: "#4A9CA6" }),
678
+ "Add Account"
679
+ )
680
+ )))
681
+ );
682
+ } else {
683
+ return /* @__PURE__ */ React__default.createElement(components.Option, __spreadValues({}, props), /* @__PURE__ */ React__default.createElement(
684
+ Flex,
685
+ {
686
+ css: { cursor: "pointer", zIndex: 999999999 },
687
+ alignItems: "center",
688
+ justifyContent: "space-between",
689
+ gap: "$2"
690
+ },
691
+ /* @__PURE__ */ React__default.createElement(Text, { size: "sm" }, props.label),
692
+ " ",
693
+ props.data.isAddonAccount && /* @__PURE__ */ React__default.createElement(
694
+ Chip,
695
+ {
696
+ color: "primary",
697
+ size: "sm",
698
+ leftElement: /* @__PURE__ */ React__default.createElement(TickCircleFillIcon, null)
699
+ },
700
+ "In Use (Add-on)"
701
+ )
702
+ ));
703
+ }
704
+ };
705
+ const CustomSingleValue = (props) => {
706
+ if (props.data.value === "ADD_NEW") {
707
+ return /* @__PURE__ */ React__default.createElement(components.SingleValue, __spreadValues({}, props), /* @__PURE__ */ React__default.createElement(Flex, { css: { cursor: "pointer" }, alignItems: "center", gap: "$2" }, /* @__PURE__ */ React__default.createElement(PlusIcon, { size: 16 }), /* @__PURE__ */ React__default.createElement(Text, { size: "sm" }, props.data.label)));
708
+ } else {
709
+ return /* @__PURE__ */ React__default.createElement(components.SingleValue, __spreadValues({}, props), /* @__PURE__ */ React__default.createElement(Flex, { css: { cursor: "pointer" }, alignItems: "center", gap: "$2" }, /* @__PURE__ */ React__default.createElement(Text, { size: "sm" }, props.data.label)));
710
+ }
711
+ };
283
712
 
284
713
  export { Mapping };
285
714
  //# sourceMappingURL=index.js.map