@commercetools-frontend-extensions/delete-resources-modal 1.1.11 → 1.3.0

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.
@@ -11,7 +11,7 @@ import { defineMessages, useIntl, FormattedMessage, IntlProvider } from 'react-i
11
11
  import { useApplicationContext } from '@commercetools-frontend/application-shell-connectors';
12
12
  import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
13
13
  import React, { useContext, useState, useEffect } from 'react';
14
- import { deleteImportContainer, EnabledDropArea, FileDroppedArea, ActiveDragDropArea, useImportContainerUpload, getRowCount, toBytes, MAX_FILE_SIZE_MB, hasSingleKeyColumn, MAX_ROW_COUNT, isAbortError, HttpError, FileDropArea as FileDropArea$1, UploadingModal, mapFileUploadErrorsToUploadFileErrorRows, processUploadedFile } from '@commercetools-frontend-extensions/operations';
14
+ import { deleteImportContainer, EnabledDropArea, FileDroppedArea, ActiveDragDropArea, useFileUpload, getRowCount, toBytes, hasSingleKeyColumn, countUniqueResourcesInCsv, isAbortError, HttpError, IMPORT_MAX_FILE_SIZE_MB, IMPORT_LEGACY_MAX_FILE_SIZE_MB, IMPORT_MAX_ITEM_COUNT, IMPORT_LEGACY_MAX_ROW_COUNT, FileDropArea as FileDropArea$1, UploadingModal, mapFileUploadErrorsToUploadFileErrorRows, processFileImportJob, processUploadedFile } from '@commercetools-frontend-extensions/operations';
15
15
  import { jsx, jsxs } from '@emotion/react/jsx-runtime';
16
16
  import { FormDialog, InfoDialog } from '@commercetools-frontend/application-components';
17
17
  import { Masking } from '@commercetools-frontend/fullstory';
@@ -25,60 +25,85 @@ import _possibleConstructorReturn from '@babel/runtime-corejs3/helpers/esm/possi
25
25
  import _getPrototypeOf from '@babel/runtime-corejs3/helpers/esm/getPrototypeOf';
26
26
  import _inherits from '@babel/runtime-corejs3/helpers/esm/inherits';
27
27
  import _wrapNativeSuper from '@babel/runtime-corejs3/helpers/esm/wrapNativeSuper';
28
+ import { useFeatureToggle } from '@commercetools-frontend/application-shell';
28
29
  import { reportErrorToSentry } from '@commercetools-frontend/sentry';
29
30
  import _sliceInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/slice';
30
31
  import '@emotion/react';
31
32
  import { parseChunkImport, mapLocaleToIntlLocale } from '@commercetools-frontend/i18n';
32
33
 
33
- function ownKeys$6(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
- function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$6(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$6(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
34
+ function ownKeys$7(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35
+ function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$7(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$7(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
35
36
  function reducer(state, action) {
36
- if (action.type === 'setCurrentStep') return _objectSpread$6(_objectSpread$6({}, state), {}, {
37
+ if (action.type === 'setCurrentStep') return _objectSpread$7(_objectSpread$7({}, state), {}, {
37
38
  currentStep: action.currentStep,
38
39
  progress: 0
39
40
  });
40
- if (action.type === 'setContainerKey') return _objectSpread$6(_objectSpread$6({}, state), {}, {
41
+ if (action.type === 'setContainerKey') return _objectSpread$7(_objectSpread$7({}, state), {}, {
41
42
  containerKey: action.containerKey
42
43
  });
43
- if (action.type === 'cancelImport') return _objectSpread$6(_objectSpread$6({}, state), {}, {
44
+ if (action.type === 'cancelImport') return _objectSpread$7(_objectSpread$7({}, state), {}, {
44
45
  currentStep: 'upload',
45
46
  containerKey: undefined,
46
47
  droppedFile: undefined,
47
48
  dropAreaState: 'ready-for-drop',
48
- progress: 0
49
+ progress: 0,
50
+ jobId: undefined,
51
+ totalResourceCount: undefined,
52
+ validationProcessed: undefined,
53
+ isValidating: false
49
54
  });
50
- if (action.type === 'uploadNewFile') return _objectSpread$6(_objectSpread$6({}, state), {}, {
55
+ if (action.type === 'uploadNewFile') return _objectSpread$7(_objectSpread$7({}, state), {}, {
51
56
  currentStep: 'upload',
52
57
  containerKey: undefined,
53
58
  droppedFile: undefined,
54
59
  dropAreaState: 'ready-for-drop',
55
- progress: 0
60
+ progress: 0,
61
+ jobId: undefined,
62
+ totalResourceCount: undefined,
63
+ validationProcessed: undefined,
64
+ isValidating: false
56
65
  });
57
66
  if (action.type === 'setDroppedFile') {
58
- return _objectSpread$6(_objectSpread$6({}, state), {}, {
67
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
59
68
  droppedFile: action.droppedFile
60
69
  });
61
70
  }
62
71
  if (action.type === 'setAbortController') {
63
- return _objectSpread$6(_objectSpread$6({}, state), {}, {
72
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
64
73
  abortController: action.abortController
65
74
  });
66
75
  }
67
76
  if (action.type === 'setProgress') {
68
- return _objectSpread$6(_objectSpread$6({}, state), {}, {
77
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
69
78
  progress: action.progress
70
79
  });
71
80
  }
72
81
  if (action.type === 'setUploadFileResponse') {
73
- return _objectSpread$6(_objectSpread$6({}, state), {}, {
82
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
74
83
  uploadFileResponse: action.uploadFileResponse
75
84
  });
76
85
  }
77
86
  if (action.type === 'setFileUploadErrors') {
78
- return _objectSpread$6(_objectSpread$6({}, state), {}, {
87
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
79
88
  fileUploadErrors: action.fileUploadErrors
80
89
  });
81
90
  }
91
+ if (action.type === 'setJobId') {
92
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
93
+ jobId: action.jobId
94
+ });
95
+ }
96
+ if (action.type === 'setTotalResourceCount') {
97
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
98
+ totalResourceCount: action.totalResourceCount
99
+ });
100
+ }
101
+ if (action.type === 'setValidationProgress') {
102
+ return _objectSpread$7(_objectSpread$7({}, state), {}, {
103
+ validationProcessed: action.processed,
104
+ isValidating: action.isValidating
105
+ });
106
+ }
82
107
  throw new Error(getUnknownActionError(action));
83
108
  }
84
109
  function getUnknownActionError(actionType) {
@@ -120,12 +145,22 @@ const initialActions = {
120
145
  },
121
146
  setProgress(_progress) {
122
147
  /**/
148
+ },
149
+ setJobId(_jobId) {
150
+ /**/
151
+ },
152
+ setTotalResourceCount(_totalResourceCount) {
153
+ /**/
154
+ },
155
+ setValidationProgress(_params) {
156
+ /**/
123
157
  }
124
158
  };
125
159
 
126
160
  const DeleteResourcesContext = /*#__PURE__*/React.createContext({
127
161
  state: initialState,
128
162
  actions: initialActions,
163
+ resourceType: 'product',
129
164
  onClose: () => {}
130
165
  });
131
166
  const DeleteResourcesProvider = props => {
@@ -175,6 +210,37 @@ const DeleteResourcesProvider = props => {
175
210
  uploadFileResponse
176
211
  });
177
212
  };
213
+ const setJobId = jobId => dispatch({
214
+ type: 'setJobId',
215
+ jobId
216
+ });
217
+ const setTotalResourceCount = totalResourceCount => dispatch({
218
+ type: 'setTotalResourceCount',
219
+ totalResourceCount
220
+ });
221
+ const setValidationProgress = _ref => {
222
+ let processed = _ref.processed,
223
+ isValidating = _ref.isValidating;
224
+ return dispatch({
225
+ type: 'setValidationProgress',
226
+ processed,
227
+ isValidating
228
+ });
229
+ };
230
+ const actions = {
231
+ setCurrentStep,
232
+ cancelImport,
233
+ uploadNewFile,
234
+ setDroppedFile,
235
+ setUploadFileResponse,
236
+ setFileUploadErrors,
237
+ setContainerKey,
238
+ setAbortController,
239
+ setProgress,
240
+ setJobId,
241
+ setTotalResourceCount,
242
+ setValidationProgress
243
+ };
178
244
  const handleClose = function () {
179
245
  let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
180
246
  if (state.abortController) state.abortController.abort();
@@ -190,17 +256,7 @@ const DeleteResourcesProvider = props => {
190
256
  resourceType: props.resourceType,
191
257
  state,
192
258
  onClose: handleClose,
193
- actions: {
194
- setCurrentStep,
195
- cancelImport,
196
- uploadNewFile,
197
- setDroppedFile,
198
- setUploadFileResponse,
199
- setFileUploadErrors,
200
- setContainerKey,
201
- setAbortController,
202
- setProgress
203
- }
259
+ actions
204
260
  },
205
261
  children: props.children
206
262
  });
@@ -252,7 +308,7 @@ function getDropAreaState(flags) {
252
308
  return 'ready-for-drop';
253
309
  }
254
310
 
255
- var messages$4 = defineMessages({
311
+ var messages$5 = defineMessages({
256
312
  dragAndDropCSV: {
257
313
  id: 'DeleteResourcesModal.dragAndDropCSV',
258
314
  description: 'The message telling the user to drag and drop CSV file in the file drop area',
@@ -345,7 +401,7 @@ const useDeleteResourcesContext = () => {
345
401
  return context;
346
402
  };
347
403
 
348
- var messages$3 = defineMessages({
404
+ var messages$4 = defineMessages({
349
405
  fileSizeExceededTitle: {
350
406
  id: 'DeleteResourcesModal.sizeExceededTitle',
351
407
  defaultMessage: 'File size exceeded'
@@ -401,6 +457,22 @@ var messages$3 = defineMessages({
401
457
  }
402
458
  });
403
459
 
460
+ function ownKeys$6(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
461
+ function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$6(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$6(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
462
+ const FILE_IMPORT_JOB_FLOW = 'fileImportJobFlow';
463
+ const DEFAULT_SHORT_LIVED_FLAGS = {
464
+ [FILE_IMPORT_JOB_FLOW]: false
465
+ };
466
+ const DEFAULT_LONG_LIVED_FLAGS = {};
467
+ _objectSpread$6(_objectSpread$6({}, DEFAULT_SHORT_LIVED_FLAGS), DEFAULT_LONG_LIVED_FLAGS);
468
+
469
+ const DOCUMENTATION_LINKS = {
470
+ product: 'https://docs.commercetools.com/merchant-center/product-list#bulk-delete-via-csv-import'
471
+ };
472
+ const TEMPLATE_DOWNLOAD_LINKS = {
473
+ product: 'https://docs.commercetools.com/merchant-center/downloads/product_delete_import_template.csv'
474
+ };
475
+
404
476
  const useUpload = () => {
405
477
  const intl = useIntl();
406
478
  const _useApplicationContex = useApplicationContext(context => ({
@@ -412,38 +484,37 @@ const useUpload = () => {
412
484
  state = _useDeleteResourcesCo.state,
413
485
  actions = _useDeleteResourcesCo.actions;
414
486
  const showNotification = useShowNotification();
415
- const _useImportContainerUp = useImportContainerUpload({
416
- projectKey: projectKey
487
+ const isFileImportJobFlowEnabled = useFeatureToggle(FILE_IMPORT_JOB_FLOW);
488
+ const _useFileUpload = useFileUpload({
489
+ projectKey: projectKey,
490
+ useJobBasedFlow: isFileImportJobFlowEnabled
417
491
  }),
418
- upload = _useImportContainerUp.upload;
419
- React.useEffect(() => {
420
- return () => {
421
- if (state.abortController) state.abortController.abort();
422
- };
423
- }, [state.abortController]);
492
+ upload = _useFileUpload.upload;
424
493
  const isFileValid = async file => {
425
494
  const errors = [];
495
+ const maxFileSizeMB = isFileImportJobFlowEnabled ? IMPORT_MAX_FILE_SIZE_MB : IMPORT_LEGACY_MAX_FILE_SIZE_MB;
496
+ const maxItemCount = isFileImportJobFlowEnabled ? IMPORT_MAX_ITEM_COUNT : IMPORT_LEGACY_MAX_ROW_COUNT;
426
497
  const rowCount = await getRowCount(file);
427
498
  if (rowCount < 1) errors.push({
428
- title: intl.formatMessage(messages$3.dropAreaNotEnoughRowsTitle),
429
- description: intl.formatMessage(messages$3.dropAreaNotEnoughRowsDescription)
499
+ title: intl.formatMessage(messages$4.dropAreaNotEnoughRowsTitle),
500
+ description: intl.formatMessage(messages$4.dropAreaNotEnoughRowsDescription)
430
501
  });
431
- if (file.size > toBytes(MAX_FILE_SIZE_MB)) errors.push({
432
- title: intl.formatMessage(messages$3.fileSizeExceededTitle),
433
- description: intl.formatMessage(messages$3.fileSizeExceededDescription, {
434
- fileSizeLimit: intl.formatNumber(MAX_FILE_SIZE_MB)
502
+ if (file.size > toBytes(maxFileSizeMB)) errors.push({
503
+ title: intl.formatMessage(messages$4.fileSizeExceededTitle),
504
+ description: intl.formatMessage(messages$4.fileSizeExceededDescription, {
505
+ fileSizeLimit: intl.formatNumber(maxFileSizeMB)
435
506
  })
436
507
  });
437
508
  if (!(await hasSingleKeyColumn(file))) {
438
509
  errors.push({
439
- title: intl.formatMessage(messages$3.csvFormatErrorTitle),
440
- description: intl.formatMessage(messages$3.csvFormatErrorDescription)
510
+ title: intl.formatMessage(messages$4.csvFormatErrorTitle),
511
+ description: intl.formatMessage(messages$4.csvFormatErrorDescription)
441
512
  });
442
513
  }
443
- if (rowCount > MAX_ROW_COUNT) errors.push({
444
- title: intl.formatMessage(messages$3.rowLimitExceededTitle),
445
- description: intl.formatMessage(messages$3.rowLimitExceededDescription, {
446
- rowLimit: intl.formatNumber(MAX_ROW_COUNT)
514
+ if (rowCount > maxItemCount) errors.push({
515
+ title: intl.formatMessage(messages$4.rowLimitExceededTitle),
516
+ description: intl.formatMessage(messages$4.rowLimitExceededDescription, {
517
+ rowLimit: intl.formatNumber(maxItemCount)
447
518
  })
448
519
  });
449
520
  if (errors.length > 0) {
@@ -451,6 +522,10 @@ const useUpload = () => {
451
522
  actions.setCurrentStep('upload-error');
452
523
  return false;
453
524
  }
525
+ if (isFileImportJobFlowEnabled) {
526
+ const resourceCount = await countUniqueResourcesInCsv(file);
527
+ actions.setTotalResourceCount(resourceCount);
528
+ }
454
529
  return true;
455
530
  };
456
531
  const handleUploadError = error => {
@@ -459,18 +534,25 @@ const useUpload = () => {
459
534
  return;
460
535
  }
461
536
  if (error instanceof HttpError) {
537
+ actions.setValidationProgress({
538
+ processed: 0,
539
+ isValidating: false
540
+ });
462
541
  if (error.errorData?.code === 'MISSING_KEY_ERROR') {
463
542
  actions.setFileUploadErrors([{
464
- title: intl.formatMessage(messages$3.missingRequiredField),
465
- description: intl.formatMessage(messages$3.missingKeyError)
543
+ title: intl.formatMessage(messages$4.missingRequiredField),
544
+ description: intl.formatMessage(messages$4.missingKeyError)
466
545
  }]);
467
546
  actions.setCurrentStep('upload-error');
547
+ } else if (error.errorData?.invalid > 0) {
548
+ actions.setUploadFileResponse(error.errorData);
549
+ actions.setCurrentStep('upload-error');
468
550
  } else {
469
551
  actions.cancelImport();
470
552
  showNotification({
471
553
  kind: 'error',
472
554
  domain: DOMAINS.PAGE,
473
- text: intl.formatMessage(messages$3.unexpectedError)
555
+ text: intl.formatMessage(messages$4.unexpectedError)
474
556
  });
475
557
  }
476
558
  } else {
@@ -492,25 +574,55 @@ const useUpload = () => {
492
574
  if (!state.droppedFile) return;
493
575
  const canUpload = await isFileValid(state.droppedFile);
494
576
  if (!canUpload) return;
577
+ const abortController = new AbortController();
578
+ actions.setAbortController(abortController);
495
579
  actions.setCurrentStep('uploading');
496
- try {
497
- const xhr = await upload({
498
- file: state.droppedFile,
499
- resourceType,
500
- onSuccess: (fileUploadResponse, importContainerKey) => {
501
- actions.setContainerKey(importContainerKey);
502
- actions.setUploadFileResponse(fileUploadResponse);
580
+ await upload({
581
+ file: state.droppedFile,
582
+ resourceType,
583
+ settings: {
584
+ format: 'CSV'
585
+ },
586
+ abortSignal: abortController.signal,
587
+ onSuccess: result => {
588
+ actions.setValidationProgress({
589
+ processed: 0,
590
+ isValidating: false
591
+ });
592
+ actions.setContainerKey(result.containerKey);
593
+ if (result.jobId) {
594
+ actions.setJobId(result.jobId);
595
+ }
596
+ const fileUploadResponse = {
597
+ results: result.summary.results,
598
+ invalid: result.summary.invalid,
599
+ valid: result.summary.valid,
600
+ fileName: state.droppedFile?.name || '',
601
+ itemsCount: result.summary.total,
602
+ rowsCount: result.summary.total,
603
+ columnsCount: result.summary.fieldsCount,
604
+ fields: result.summary.fields,
605
+ ignoredFields: result.summary.ignoredFields
606
+ };
607
+ actions.setUploadFileResponse(fileUploadResponse);
608
+ if (result.summary.invalid > 0) {
609
+ actions.setCurrentStep('upload-error');
610
+ } else {
503
611
  actions.setCurrentStep('upload-preview');
504
- },
505
- onProgress: progress => {
506
- actions.setProgress(progress);
507
- },
508
- onError: handleUploadError
509
- });
510
- actions.setAbortController(xhr);
511
- } catch (error) {
512
- handleUploadError(error);
513
- }
612
+ }
613
+ },
614
+ onProgress: progress => {
615
+ actions.setProgress(progress);
616
+ },
617
+ onValidationProgress: job => {
618
+ const processed = job.summary?.total ?? 0;
619
+ actions.setValidationProgress({
620
+ processed,
621
+ isValidating: true
622
+ });
623
+ },
624
+ onError: handleUploadError
625
+ });
514
626
  };
515
627
  return {
516
628
  handleUploadAndValidation
@@ -531,9 +643,9 @@ const FileDropArea = () => {
531
643
  }, [actions]);
532
644
  const handleDropRejected = React.useCallback(errorType => {
533
645
  const errorMessageMap = {
534
- 'too-many-files': messages$4.tooManyFilesError,
535
- 'invalid-type': messages$4.fileFormatNotSupported,
536
- generic: messages$4.genericError
646
+ 'too-many-files': messages$5.tooManyFilesError,
647
+ 'invalid-type': messages$5.fileFormatNotSupported,
648
+ generic: messages$5.genericError
537
649
  };
538
650
  showNotification({
539
651
  kind: 'error',
@@ -557,10 +669,10 @@ const FileDropArea = () => {
557
669
  isFileDropped: Boolean(state.droppedFile),
558
670
  fileName: state.droppedFile?.name,
559
671
  messages: {
560
- dragAndDropCSV: intl.formatMessage(messages$4.dragAndDropCSV),
561
- or: intl.formatMessage(messages$4.or),
562
- browseButton: intl.formatMessage(messages$4.browseButton),
563
- chooseFile: intl.formatMessage(messages$4.chooseFile)
672
+ dragAndDropCSV: intl.formatMessage(messages$5.dragAndDropCSV),
673
+ or: intl.formatMessage(messages$5.or),
674
+ browseButton: intl.formatMessage(messages$5.browseButton),
675
+ chooseFile: intl.formatMessage(messages$5.chooseFile)
564
676
  }
565
677
  })
566
678
  });
@@ -709,7 +821,7 @@ var sharedMessages = defineMessages({
709
821
  }
710
822
  });
711
823
 
712
- var messages$2 = defineMessages({
824
+ var messages$3 = defineMessages({
713
825
  fileUploadInstruction: {
714
826
  id: 'DeleteResourcesModal.fileUploadInstruction',
715
827
  description: 'Instructions for uploading a CSV file with resource keys to delete',
@@ -727,13 +839,6 @@ var messages$2 = defineMessages({
727
839
  }
728
840
  });
729
841
 
730
- const DOCUMENTATION_LINKS = {
731
- product: 'https://docs.commercetools.com/merchant-center/product-list#bulk-delete-via-csv-import'
732
- };
733
- const TEMPLATE_DOWNLOAD_LINKS = {
734
- product: 'https://docs.commercetools.com/merchant-center/downloads/product_delete_import_template.csv'
735
- };
736
-
737
842
  function resourceTypeToMessage(resourceType) {
738
843
  const resourceTypeMap = {
739
844
  category: sharedMessages.category,
@@ -791,23 +896,26 @@ const Instructions = () => {
791
896
  const intl = useIntl();
792
897
  const _useDeleteResourcesCo = useDeleteResourcesContext(),
793
898
  resourceType = _useDeleteResourcesCo.resourceType;
899
+ const isFileImportJobFlowEnabled = useFeatureToggle(FILE_IMPORT_JOB_FLOW);
794
900
  const documentTemplateLink = TEMPLATE_DOWNLOAD_LINKS[resourceType];
795
901
  const documentationLink = DOCUMENTATION_LINKS[resourceType];
902
+ const maxFileSizeMB = isFileImportJobFlowEnabled ? IMPORT_MAX_FILE_SIZE_MB : IMPORT_LEGACY_MAX_FILE_SIZE_MB;
903
+ const maxItemCount = isFileImportJobFlowEnabled ? IMPORT_MAX_ITEM_COUNT : IMPORT_LEGACY_MAX_ROW_COUNT;
796
904
  return jsxs(Spacings.Stack, {
797
905
  scale: "m",
798
906
  children: [jsxs(Text.Body, {
799
- children: [intl.formatMessage(messages$2.fileUploadInstruction, {
907
+ children: [intl.formatMessage(messages$3.fileUploadInstruction, {
800
908
  resourceType: intl.formatMessage(resourceTypeToMessage(resourceType))
801
- }), ' ', intl.formatMessage(messages$2.unpublishNote, {
909
+ }), ' ', intl.formatMessage(messages$3.unpublishNote, {
802
910
  b: msg => jsx("b", {
803
911
  children: msg
804
912
  }, "bold")
805
913
  })]
806
914
  }), jsx(Text.Body, {
807
- intlMessage: _objectSpread$5(_objectSpread$5({}, messages$2.fileUploadInstructionForMaxFileSize), {}, {
915
+ intlMessage: _objectSpread$5(_objectSpread$5({}, messages$3.fileUploadInstructionForMaxFileSize), {}, {
808
916
  values: {
809
- maxFileSize: intl.formatNumber(MAX_FILE_SIZE_MB),
810
- maxRowCount: intl.formatNumber(MAX_ROW_COUNT),
917
+ maxFileSize: intl.formatNumber(maxFileSizeMB),
918
+ maxRowCount: intl.formatNumber(maxItemCount),
811
919
  csvTemplateLink: msg => jsx(Link, {
812
920
  tone: "secondary",
813
921
  isExternal: true,
@@ -837,7 +945,7 @@ const Upload = () => {
837
945
  size: 16,
838
946
  isOpen: true,
839
947
  title: intl.formatMessage(sharedMessages.deleteModalTitle),
840
- labelPrimary: intl.formatMessage(messages$4.uploadAndPreview),
948
+ labelPrimary: intl.formatMessage(messages$5.uploadAndPreview),
841
949
  onPrimaryButtonClick: handleUploadAndValidation,
842
950
  isPrimaryButtonDisabled: !Boolean(state.droppedFile),
843
951
  onSecondaryButtonClick: () => onClose({
@@ -855,19 +963,34 @@ const Upload = () => {
855
963
  });
856
964
  };
857
965
 
966
+ var messages$2 = defineMessages({
967
+ validatingResources: {
968
+ id: 'DeleteResourcesModal.Uploading.validatingResources',
969
+ defaultMessage: 'Validating {processed} / {total} {resourceType}'
970
+ }
971
+ });
972
+
858
973
  const Uploading = () => {
859
974
  const intl = useIntl();
860
975
  const _useDeleteResourcesCo = useDeleteResourcesContext(),
976
+ resourceType = _useDeleteResourcesCo.resourceType,
861
977
  state = _useDeleteResourcesCo.state,
862
978
  actions = _useDeleteResourcesCo.actions,
863
979
  onClose = _useDeleteResourcesCo.onClose;
864
980
  if (!state.droppedFile?.name) return null;
981
+ const showValidationProgress = state.isValidating && state.totalResourceCount && (state.validationProcessed ?? 0) > 0;
982
+ const statusMessage = showValidationProgress ? intl.formatMessage(messages$2.validatingResources, {
983
+ processed: intl.formatNumber(state.validationProcessed ?? 0),
984
+ total: intl.formatNumber(state.totalResourceCount ?? 0),
985
+ resourceType: intl.formatMessage(resourceTypeToPluralMessage(resourceType))
986
+ }) : undefined;
865
987
  return jsx(UploadingModal, {
866
988
  isOpen: true,
867
989
  title: intl.formatMessage(sharedMessages.deleteModalTitle),
868
990
  fileName: state.droppedFile.name,
869
991
  fileSize: state.droppedFile.size,
870
992
  progress: state.progress,
993
+ statusMessage: statusMessage,
871
994
  cancelLabel: intl.formatMessage(sharedMessages.cancel),
872
995
  onCancel: () => {
873
996
  actions.setCurrentStep('upload');
@@ -960,7 +1083,7 @@ const UploadErrorsModal = () => {
960
1083
  state = _useDeleteResourcesCo.state,
961
1084
  actions = _useDeleteResourcesCo.actions,
962
1085
  onClose = _useDeleteResourcesCo.onClose;
963
- const errorsCount = state.fileUploadErrors.length;
1086
+ const errorsCount = state.fileUploadErrors?.length ?? 0;
964
1087
  return jsx(InfoDialog, {
965
1088
  size: 16,
966
1089
  isOpen: true,
@@ -980,7 +1103,7 @@ const UploadErrorsModal = () => {
980
1103
  })
981
1104
  })
982
1105
  }), jsx(UploadErrorTable, {
983
- rows: mapFileUploadErrorsToUploadFileErrorRows(state.fileUploadErrors)
1106
+ rows: mapFileUploadErrorsToUploadFileErrorRows(state.fileUploadErrors ?? [])
984
1107
  }), jsxs(Spacings.Inline, {
985
1108
  scale: "m",
986
1109
  justifyContent: "flex-end",
@@ -1061,7 +1184,7 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
1061
1184
  styles: "width:360px"
1062
1185
  } : {
1063
1186
  name: "g36yzl-ImportRunningTextNotification",
1064
- styles: "width:360px;label:ImportRunningTextNotification;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlbGV0ZS1yZXNvdXJjZXMtY29uZmlybWF0aW9uLW1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQ1kiLCJmaWxlIjoiZGVsZXRlLXJlc291cmNlcy1jb25maXJtYXRpb24tbW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnXG5pbXBvcnQgeyB1c2VTaG93Tm90aWZpY2F0aW9uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYWN0aW9ucy1nbG9iYWwnXG5pbXBvcnQgeyBJbmZvRGlhbG9nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cydcbmltcG9ydCB7IHVzZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLXNoZWxsLWNvbm5lY3RvcnMnXG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJ1xuaW1wb3J0IHsgTWFza2luZyBhcyBGdWxsU3RvcnlNYXNraW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvZnVsbHN0b3J5J1xuaW1wb3J0IHtcbiAgTGluayxcbiAgUHJpbWFyeUJ1dHRvbixcbiAgU2Vjb25kYXJ5QnV0dG9uLFxuICBTcGFjaW5ncyxcbiAgVGV4dCxcbiAgV2FybmluZ0ljb24sXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3VpLWtpdCdcbmltcG9ydCB7IHByb2Nlc3NVcGxvYWRlZEZpbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC1leHRlbnNpb25zL29wZXJhdGlvbnMnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJ1xuaW1wb3J0IHtcbiAgcmVzb3VyY2VUeXBlVG9NZXNzYWdlLFxuICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UsXG59IGZyb20gJy4uLy4uL0BoZWxwZXJzJ1xuaW1wb3J0IHsgdXNlRGVsZXRlUmVzb3VyY2VzQ29udGV4dCB9IGZyb20gJy4uLy4uL0Bob29rcydcbmltcG9ydCBzaGFyZWRNZXNzYWdlcyBmcm9tICcuLi8uLi9tZXNzYWdlcydcblxuY29uc3QgZ2V0TmV3TGluZSA9ICgpID0+IDxiciBrZXk9XCJicmVha1wiIC8+XG5jb25zdCBnZXRJbXBvcnRMb2dzTGluayA9IChtc2csIHByb2plY3RLZXkpID0+IChcbiAgPExpbmsgdG89e2AvJHtwcm9qZWN0S2V5fS9vcGVyYXRpb25zL2ltcG9ydC9sb2dzYH0ga2V5PVwibGlua1wiPlxuICAgIHttc2d9XG4gIDwvTGluaz5cbilcblxuY29uc3QgSW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gPSAocHJvcHM6IHsgcHJvamVjdEtleTogc3RyaW5nIH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17Y3NzYFxuICAgICAgd2lkdGg6IDM2MHB4O1xuICAgIGB9XG4gID5cbiAgICA8VGV4dC5Cb2R5XG4gICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAuLi5tZXNzYWdlcy5pbXBvcnRTdGFydGVkLFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5jb25zdCBJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uID0gKHByb3BzOiB7IHByb2plY3RLZXk6IHN0cmluZyB9KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e2Nzc2BcbiAgICAgIHdpZHRoOiAzNjBweDtcbiAgICBgfVxuICA+XG4gICAgPFRleHQuQm9keVxuICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgLi4ubWVzc2FnZXMucHJlcGFyaW5nSW1wb3J0LFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5leHBvcnQgY29uc3QgRGVsZXRlUmVzb3VyY2VzQ29uZmlybWF0aW9uTW9kYWwgPSAoKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKClcbiAgY29uc3QgeyByZXNvdXJjZVR5cGUsIHN0YXRlLCBvbkNsb3NlIH0gPSB1c2VEZWxldGVSZXNvdXJjZXNDb250ZXh0KClcbiAgY29uc3QgeyBwcm9qZWN0S2V5LCBwcm9qZWN0TmFtZSB9ID0gdXNlQXBwbGljYXRpb25Db250ZXh0KChjb250ZXh0KSA9PiAoe1xuICAgIHByb2plY3RLZXk6IGNvbnRleHQucHJvamVjdD8ua2V5LFxuICAgIHByb2plY3ROYW1lOiBjb250ZXh0LnByb2plY3Q/Lm5hbWUsXG4gIH0pKVxuXG4gIGNvbnN0IHNob3dOb3RpZmljYXRpb24gPSB1c2VTaG93Tm90aWZpY2F0aW9uKClcblxuICBjb25zdCBvblN0YXJ0SW1wb3J0ID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjYW5Db25maXJtID1cbiAgICAgICAgcHJvamVjdEtleSAmJiBzdGF0ZS5jb250YWluZXJLZXkgJiYgc3RhdGUuZHJvcHBlZEZpbGU/Lm5hbWVcbiAgICAgIGlmICghY2FuQ29uZmlybSkgcmV0dXJuXG4gICAgICBvbkNsb3NlKClcbiAgICAgIHNob3dOb3RpZmljYXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICBraW5kOiAnaW5mbycsXG4gICAgICAgICAgZG9tYWluOiBET01BSU5TLlNJREUsXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRleHQ6IDxJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBhd2FpdCBwcm9jZXNzVXBsb2FkZWRGaWxlKHtcbiAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgaW1wb3J0Q29udGFpbmVyS2V5OiBzdGF0ZS5jb250YWluZXJLZXkhLFxuICAgICAgICByZXNvdXJjZVR5cGUsXG4gICAgICAgIGFjdGlvbjogJ2RlbGV0ZScsXG4gICAgICB9KVxuICAgICAgc2hvd05vdGlmaWNhdGlvbihcbiAgICAgICAge1xuICAgICAgICAgIGtpbmQ6ICdpbmZvJyxcbiAgICAgICAgICBkb21haW46IERPTUFJTlMuU0lERSxcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgdGV4dDogPEltcG9ydFJ1bm5pbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIG9uQ2xvc2UoeyBzaG91bGREZWxldGVJbXBvcnRDb250YWluZXI6IHRydWUgfSlcbiAgICAgIHNob3dOb3RpZmljYXRpb24oe1xuICAgICAgICBraW5kOiAnZXJyb3InLFxuICAgICAgICBkb21haW46IERPTUFJTlMuUEFHRSxcbiAgICAgICAgdGV4dDogU3RyaW5nKGVycm9yKSxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8SW5mb0RpYWxvZ1xuICAgICAgdGl0bGU9e2ludGwuZm9ybWF0TWVzc2FnZShzaGFyZWRNZXNzYWdlcy5kZWxldGVNb2RhbFRpdGxlKX1cbiAgICAgIGlzT3BlblxuICAgICAgb25DbG9zZT17KCkgPT4gb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KX1cbiAgICAgIHNpemU9ezE2fVxuICAgID5cbiAgICAgIDxGdWxsU3RvcnlNYXNraW5nLlVubWFzaz5cbiAgICAgICAgPFNwYWNpbmdzLlN0YWNrIHNjYWxlPVwieGxcIj5cbiAgICAgICAgICA8U3BhY2luZ3MuU3RhY2sgc2NhbGU9XCJtXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5XG4gICAgICAgICAgICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgICAgICAgICAgIC4uLm1lc3NhZ2VzLmNvbmZpcm1hdGlvblRleHQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvamVjdE5hbWU6IHByb2plY3ROYW1lLFxuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVQbHVyYWw6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGU6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb01lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBjb3VudDogaW50bC5mb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGUudXBsb2FkRmlsZVJlc3BvbnNlPy5yb3dzQ291bnRcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgYjogZ2V0Qm9sZCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPFRleHQuQm9keVxuICAgICAgICAgICAgICAgIGludGxNZXNzYWdlPXt7XG4gICAgICAgICAgICAgICAgICAuLi5tZXNzYWdlcy5jb25maXJtYXRpb25RdWVzdGlvbixcbiAgICAgICAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVQbHVyYWw6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPVwic1wiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgICAgPFdhcm5pbmdJY29uIHNpemU9XCI0MFwiIGNvbG9yPVwid2FybmluZ1wiIC8+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmNhbm5vdEJlVW5kb25lTm90ZX0gLz5cbiAgICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICAgIDwvU3BhY2luZ3MuU3RhY2s+XG4gICAgICAgICAgPFNwYWNpbmdzLklubGluZSBzY2FsZT1cIm1cIiBqdXN0aWZ5Q29udGVudD1cImZsZXgtZW5kXCI+XG4gICAgICAgICAgICA8U2Vjb25kYXJ5QnV0dG9uXG4gICAgICAgICAgICAgIGRhdGEtdGVzdC1pZD1cImNvbmZpcm1hdGlvbi1kaWFsb2ctY2FuY2VsXCJcbiAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZShzaGFyZWRNZXNzYWdlcy5jYW5jZWwpfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNsb3NlKHsgc2hvdWxkRGVsZXRlSW1wb3J0Q29udGFpbmVyOiB0cnVlIH0pfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQcmltYXJ5QnV0dG9uXG4gICAgICAgICAgICAgIHRvbmU9XCJjcml0aWNhbFwiXG4gICAgICAgICAgICAgIGRhdGEtdGVzdC1pZD1cImNvbmZpcm1hdGlvbi1kaWFsb2ctY29uZmlybVwiXG4gICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoc2hhcmVkTWVzc2FnZXMuc3RhcnRCdWxrRGVsZXRlKX1cbiAgICAgICAgICAgICAgb25DbGljaz17b25TdGFydEltcG9ydH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICAgICAgIDwvU3BhY2luZ3MuU3RhY2s+XG4gICAgICA8L0Z1bGxTdG9yeU1hc2tpbmcuVW5tYXNrPlxuICAgIDwvSW5mb0RpYWxvZz5cbiAgKVxufVxuXG5mdW5jdGlvbiBnZXRCb2xkKG1zZykge1xuICByZXR1cm4gKFxuICAgIDxUZXh0LkJvZHkgYXM9XCJzcGFuXCIgaXNCb2xkIGtleT17Y3J5cHRvLnJhbmRvbVVVSUQoKX0+XG4gICAgICB7bXNnfVxuICAgIDwvVGV4dC5Cb2R5PlxuICApXG59XG4iXX0= */",
1187
+ styles: "width:360px;label:ImportRunningTextNotification;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlbGV0ZS1yZXNvdXJjZXMtY29uZmlybWF0aW9uLW1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQ1kiLCJmaWxlIjoiZGVsZXRlLXJlc291cmNlcy1jb25maXJtYXRpb24tbW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnXG5pbXBvcnQgeyB1c2VTaG93Tm90aWZpY2F0aW9uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYWN0aW9ucy1nbG9iYWwnXG5pbXBvcnQgeyBJbmZvRGlhbG9nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cydcbmltcG9ydCB7IHVzZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLXNoZWxsLWNvbm5lY3RvcnMnXG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJ1xuaW1wb3J0IHsgTWFza2luZyBhcyBGdWxsU3RvcnlNYXNraW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvZnVsbHN0b3J5J1xuaW1wb3J0IHtcbiAgTGluayxcbiAgUHJpbWFyeUJ1dHRvbixcbiAgU2Vjb25kYXJ5QnV0dG9uLFxuICBTcGFjaW5ncyxcbiAgVGV4dCxcbiAgV2FybmluZ0ljb24sXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3VpLWtpdCdcbmltcG9ydCB7XG4gIHByb2Nlc3NVcGxvYWRlZEZpbGUsXG4gIHByb2Nlc3NGaWxlSW1wb3J0Sm9iLFxufSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC1leHRlbnNpb25zL29wZXJhdGlvbnMnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJ1xuaW1wb3J0IHtcbiAgcmVzb3VyY2VUeXBlVG9NZXNzYWdlLFxuICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UsXG59IGZyb20gJy4uLy4uL0BoZWxwZXJzJ1xuaW1wb3J0IHsgdXNlRGVsZXRlUmVzb3VyY2VzQ29udGV4dCB9IGZyb20gJy4uLy4uL0Bob29rcydcbmltcG9ydCBzaGFyZWRNZXNzYWdlcyBmcm9tICcuLi8uLi9tZXNzYWdlcydcblxuY29uc3QgZ2V0TmV3TGluZSA9ICgpID0+IDxiciBrZXk9XCJicmVha1wiIC8+XG5jb25zdCBnZXRJbXBvcnRMb2dzTGluayA9IChtc2csIHByb2plY3RLZXkpID0+IChcbiAgPExpbmsgdG89e2AvJHtwcm9qZWN0S2V5fS9vcGVyYXRpb25zL2ltcG9ydC9sb2dzYH0ga2V5PVwibGlua1wiPlxuICAgIHttc2d9XG4gIDwvTGluaz5cbilcblxuY29uc3QgSW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gPSAocHJvcHM6IHsgcHJvamVjdEtleTogc3RyaW5nIH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17Y3NzYFxuICAgICAgd2lkdGg6IDM2MHB4O1xuICAgIGB9XG4gID5cbiAgICA8VGV4dC5Cb2R5XG4gICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAuLi5tZXNzYWdlcy5pbXBvcnRTdGFydGVkLFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5jb25zdCBJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uID0gKHByb3BzOiB7IHByb2plY3RLZXk6IHN0cmluZyB9KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e2Nzc2BcbiAgICAgIHdpZHRoOiAzNjBweDtcbiAgICBgfVxuICA+XG4gICAgPFRleHQuQm9keVxuICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgLi4ubWVzc2FnZXMucHJlcGFyaW5nSW1wb3J0LFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5leHBvcnQgY29uc3QgRGVsZXRlUmVzb3VyY2VzQ29uZmlybWF0aW9uTW9kYWwgPSAoKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKClcbiAgY29uc3QgeyByZXNvdXJjZVR5cGUsIHN0YXRlLCBvbkNsb3NlIH0gPSB1c2VEZWxldGVSZXNvdXJjZXNDb250ZXh0KClcbiAgY29uc3QgeyBwcm9qZWN0S2V5LCBwcm9qZWN0TmFtZSB9ID0gdXNlQXBwbGljYXRpb25Db250ZXh0KChjb250ZXh0KSA9PiAoe1xuICAgIHByb2plY3RLZXk6IGNvbnRleHQucHJvamVjdD8ua2V5LFxuICAgIHByb2plY3ROYW1lOiBjb250ZXh0LnByb2plY3Q/Lm5hbWUsXG4gIH0pKVxuXG4gIGNvbnN0IHNob3dOb3RpZmljYXRpb24gPSB1c2VTaG93Tm90aWZpY2F0aW9uKClcblxuICBjb25zdCBvblN0YXJ0SW1wb3J0ID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjYW5Db25maXJtID1cbiAgICAgICAgcHJvamVjdEtleSAmJiBzdGF0ZS5jb250YWluZXJLZXkgJiYgc3RhdGUuZHJvcHBlZEZpbGU/Lm5hbWVcbiAgICAgIGlmICghY2FuQ29uZmlybSkgcmV0dXJuXG4gICAgICBvbkNsb3NlKClcbiAgICAgIHNob3dOb3RpZmljYXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICBraW5kOiAnaW5mbycsXG4gICAgICAgICAgZG9tYWluOiBET01BSU5TLlNJREUsXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRleHQ6IDxJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG5cbiAgICAgIGlmIChzdGF0ZS5qb2JJZCkge1xuICAgICAgICBhd2FpdCBwcm9jZXNzRmlsZUltcG9ydEpvYih7XG4gICAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgICBpbXBvcnRDb250YWluZXJLZXk6IHN0YXRlLmNvbnRhaW5lcktleSEsXG4gICAgICAgICAgam9iSWQ6IHN0YXRlLmpvYklkLFxuICAgICAgICAgIHJlc291cmNlVHlwZSxcbiAgICAgICAgICBhY3Rpb246ICdkZWxldGUnLFxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXdhaXQgcHJvY2Vzc1VwbG9hZGVkRmlsZSh7XG4gICAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgICBpbXBvcnRDb250YWluZXJLZXk6IHN0YXRlLmNvbnRhaW5lcktleSEsXG4gICAgICAgICAgcmVzb3VyY2VUeXBlLFxuICAgICAgICAgIGFjdGlvbjogJ2RlbGV0ZScsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICBzaG93Tm90aWZpY2F0aW9uKFxuICAgICAgICB7XG4gICAgICAgICAga2luZDogJ2luZm8nLFxuICAgICAgICAgIGRvbWFpbjogRE9NQUlOUy5TSURFLFxuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICB0ZXh0OiA8SW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gcHJvamVjdEtleT17cHJvamVjdEtleX0gLz4sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkaXNtaXNzQWZ0ZXI6IDUwMDAsXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KVxuICAgICAgc2hvd05vdGlmaWNhdGlvbih7XG4gICAgICAgIGtpbmQ6ICdlcnJvcicsXG4gICAgICAgIGRvbWFpbjogRE9NQUlOUy5QQUdFLFxuICAgICAgICB0ZXh0OiBTdHJpbmcoZXJyb3IpLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxJbmZvRGlhbG9nXG4gICAgICB0aXRsZT17aW50bC5mb3JtYXRNZXNzYWdlKHNoYXJlZE1lc3NhZ2VzLmRlbGV0ZU1vZGFsVGl0bGUpfVxuICAgICAgaXNPcGVuXG4gICAgICBvbkNsb3NlPXsoKSA9PiBvbkNsb3NlKHsgc2hvdWxkRGVsZXRlSW1wb3J0Q29udGFpbmVyOiB0cnVlIH0pfVxuICAgICAgc2l6ZT17MTZ9XG4gICAgPlxuICAgICAgPEZ1bGxTdG9yeU1hc2tpbmcuVW5tYXNrPlxuICAgICAgICA8U3BhY2luZ3MuU3RhY2sgc2NhbGU9XCJ4bFwiPlxuICAgICAgICAgIDxTcGFjaW5ncy5TdGFjayBzY2FsZT1cIm1cIj5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHlcbiAgICAgICAgICAgICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAgICAgICAgICAgLi4ubWVzc2FnZXMuY29uZmlybWF0aW9uVGV4dCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICBwcm9qZWN0TmFtZTogcHJvamVjdE5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVBsdXJhbDogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVRvUGx1cmFsTWVzc2FnZShyZXNvdXJjZVR5cGUpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZTogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVRvTWVzc2FnZShyZXNvdXJjZVR5cGUpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIGNvdW50OiBpbnRsLmZvcm1hdE51bWJlcihcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS51cGxvYWRGaWxlUmVzcG9uc2U/LnJvd3NDb3VudCA/PyAwXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHlcbiAgICAgICAgICAgICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAgICAgICAgICAgLi4ubWVzc2FnZXMuY29uZmlybWF0aW9uUXVlc3Rpb24sXG4gICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VUeXBlUGx1cmFsOiBpbnRsLmZvcm1hdE1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VUeXBlVG9QbHVyYWxNZXNzYWdlKHJlc291cmNlVHlwZSlcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPFNwYWNpbmdzLklubGluZSBzY2FsZT1cInNcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxXYXJuaW5nSWNvbiBzaXplPVwiNDBcIiBjb2xvcj1cIndhcm5pbmdcIiAvPlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5jYW5ub3RCZVVuZG9uZU5vdGV9IC8+XG4gICAgICAgICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICAgICAgICA8L1NwYWNpbmdzLlN0YWNrPlxuICAgICAgICAgIDxTcGFjaW5ncy5JbmxpbmUgc2NhbGU9XCJtXCIganVzdGlmeUNvbnRlbnQ9XCJmbGV4LWVuZFwiPlxuICAgICAgICAgICAgPFNlY29uZGFyeUJ1dHRvblxuICAgICAgICAgICAgICBkYXRhLXRlc3QtaWQ9XCJjb25maXJtYXRpb24tZGlhbG9nLWNhbmNlbFwiXG4gICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoc2hhcmVkTWVzc2FnZXMuY2FuY2VsKX1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8UHJpbWFyeUJ1dHRvblxuICAgICAgICAgICAgICB0b25lPVwiY3JpdGljYWxcIlxuICAgICAgICAgICAgICBkYXRhLXRlc3QtaWQ9XCJjb25maXJtYXRpb24tZGlhbG9nLWNvbmZpcm1cIlxuICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHNoYXJlZE1lc3NhZ2VzLnN0YXJ0QnVsa0RlbGV0ZSl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e29uU3RhcnRJbXBvcnR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1NwYWNpbmdzLlN0YWNrPlxuICAgICAgPC9GdWxsU3RvcnlNYXNraW5nLlVubWFzaz5cbiAgICA8L0luZm9EaWFsb2c+XG4gIClcbn1cblxuZnVuY3Rpb24gZ2V0Qm9sZChtc2cpIHtcbiAgcmV0dXJuIChcbiAgICA8VGV4dC5Cb2R5IGFzPVwic3BhblwiIGlzQm9sZCBrZXk9e2NyeXB0by5yYW5kb21VVUlEKCl9PlxuICAgICAge21zZ31cbiAgICA8L1RleHQuQm9keT5cbiAgKVxufVxuIl19 */",
1065
1188
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
1066
1189
  };
1067
1190
  const ImportRunningTextNotification = props => jsx("div", {
@@ -1081,7 +1204,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
1081
1204
  styles: "width:360px"
1082
1205
  } : {
1083
1206
  name: "mjwslu-ImportPreparingTextNotification",
1084
- styles: "width:360px;label:ImportPreparingTextNotification;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlbGV0ZS1yZXNvdXJjZXMtY29uZmlybWF0aW9uLW1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRFkiLCJmaWxlIjoiZGVsZXRlLXJlc291cmNlcy1jb25maXJtYXRpb24tbW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnXG5pbXBvcnQgeyB1c2VTaG93Tm90aWZpY2F0aW9uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYWN0aW9ucy1nbG9iYWwnXG5pbXBvcnQgeyBJbmZvRGlhbG9nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cydcbmltcG9ydCB7IHVzZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLXNoZWxsLWNvbm5lY3RvcnMnXG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJ1xuaW1wb3J0IHsgTWFza2luZyBhcyBGdWxsU3RvcnlNYXNraW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvZnVsbHN0b3J5J1xuaW1wb3J0IHtcbiAgTGluayxcbiAgUHJpbWFyeUJ1dHRvbixcbiAgU2Vjb25kYXJ5QnV0dG9uLFxuICBTcGFjaW5ncyxcbiAgVGV4dCxcbiAgV2FybmluZ0ljb24sXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3VpLWtpdCdcbmltcG9ydCB7IHByb2Nlc3NVcGxvYWRlZEZpbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC1leHRlbnNpb25zL29wZXJhdGlvbnMnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJ1xuaW1wb3J0IHtcbiAgcmVzb3VyY2VUeXBlVG9NZXNzYWdlLFxuICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UsXG59IGZyb20gJy4uLy4uL0BoZWxwZXJzJ1xuaW1wb3J0IHsgdXNlRGVsZXRlUmVzb3VyY2VzQ29udGV4dCB9IGZyb20gJy4uLy4uL0Bob29rcydcbmltcG9ydCBzaGFyZWRNZXNzYWdlcyBmcm9tICcuLi8uLi9tZXNzYWdlcydcblxuY29uc3QgZ2V0TmV3TGluZSA9ICgpID0+IDxiciBrZXk9XCJicmVha1wiIC8+XG5jb25zdCBnZXRJbXBvcnRMb2dzTGluayA9IChtc2csIHByb2plY3RLZXkpID0+IChcbiAgPExpbmsgdG89e2AvJHtwcm9qZWN0S2V5fS9vcGVyYXRpb25zL2ltcG9ydC9sb2dzYH0ga2V5PVwibGlua1wiPlxuICAgIHttc2d9XG4gIDwvTGluaz5cbilcblxuY29uc3QgSW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gPSAocHJvcHM6IHsgcHJvamVjdEtleTogc3RyaW5nIH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17Y3NzYFxuICAgICAgd2lkdGg6IDM2MHB4O1xuICAgIGB9XG4gID5cbiAgICA8VGV4dC5Cb2R5XG4gICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAuLi5tZXNzYWdlcy5pbXBvcnRTdGFydGVkLFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5jb25zdCBJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uID0gKHByb3BzOiB7IHByb2plY3RLZXk6IHN0cmluZyB9KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e2Nzc2BcbiAgICAgIHdpZHRoOiAzNjBweDtcbiAgICBgfVxuICA+XG4gICAgPFRleHQuQm9keVxuICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgLi4ubWVzc2FnZXMucHJlcGFyaW5nSW1wb3J0LFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5leHBvcnQgY29uc3QgRGVsZXRlUmVzb3VyY2VzQ29uZmlybWF0aW9uTW9kYWwgPSAoKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKClcbiAgY29uc3QgeyByZXNvdXJjZVR5cGUsIHN0YXRlLCBvbkNsb3NlIH0gPSB1c2VEZWxldGVSZXNvdXJjZXNDb250ZXh0KClcbiAgY29uc3QgeyBwcm9qZWN0S2V5LCBwcm9qZWN0TmFtZSB9ID0gdXNlQXBwbGljYXRpb25Db250ZXh0KChjb250ZXh0KSA9PiAoe1xuICAgIHByb2plY3RLZXk6IGNvbnRleHQucHJvamVjdD8ua2V5LFxuICAgIHByb2plY3ROYW1lOiBjb250ZXh0LnByb2plY3Q/Lm5hbWUsXG4gIH0pKVxuXG4gIGNvbnN0IHNob3dOb3RpZmljYXRpb24gPSB1c2VTaG93Tm90aWZpY2F0aW9uKClcblxuICBjb25zdCBvblN0YXJ0SW1wb3J0ID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjYW5Db25maXJtID1cbiAgICAgICAgcHJvamVjdEtleSAmJiBzdGF0ZS5jb250YWluZXJLZXkgJiYgc3RhdGUuZHJvcHBlZEZpbGU/Lm5hbWVcbiAgICAgIGlmICghY2FuQ29uZmlybSkgcmV0dXJuXG4gICAgICBvbkNsb3NlKClcbiAgICAgIHNob3dOb3RpZmljYXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICBraW5kOiAnaW5mbycsXG4gICAgICAgICAgZG9tYWluOiBET01BSU5TLlNJREUsXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRleHQ6IDxJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICBhd2FpdCBwcm9jZXNzVXBsb2FkZWRGaWxlKHtcbiAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgaW1wb3J0Q29udGFpbmVyS2V5OiBzdGF0ZS5jb250YWluZXJLZXkhLFxuICAgICAgICByZXNvdXJjZVR5cGUsXG4gICAgICAgIGFjdGlvbjogJ2RlbGV0ZScsXG4gICAgICB9KVxuICAgICAgc2hvd05vdGlmaWNhdGlvbihcbiAgICAgICAge1xuICAgICAgICAgIGtpbmQ6ICdpbmZvJyxcbiAgICAgICAgICBkb21haW46IERPTUFJTlMuU0lERSxcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgdGV4dDogPEltcG9ydFJ1bm5pbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIG9uQ2xvc2UoeyBzaG91bGREZWxldGVJbXBvcnRDb250YWluZXI6IHRydWUgfSlcbiAgICAgIHNob3dOb3RpZmljYXRpb24oe1xuICAgICAgICBraW5kOiAnZXJyb3InLFxuICAgICAgICBkb21haW46IERPTUFJTlMuUEFHRSxcbiAgICAgICAgdGV4dDogU3RyaW5nKGVycm9yKSxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8SW5mb0RpYWxvZ1xuICAgICAgdGl0bGU9e2ludGwuZm9ybWF0TWVzc2FnZShzaGFyZWRNZXNzYWdlcy5kZWxldGVNb2RhbFRpdGxlKX1cbiAgICAgIGlzT3BlblxuICAgICAgb25DbG9zZT17KCkgPT4gb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KX1cbiAgICAgIHNpemU9ezE2fVxuICAgID5cbiAgICAgIDxGdWxsU3RvcnlNYXNraW5nLlVubWFzaz5cbiAgICAgICAgPFNwYWNpbmdzLlN0YWNrIHNjYWxlPVwieGxcIj5cbiAgICAgICAgICA8U3BhY2luZ3MuU3RhY2sgc2NhbGU9XCJtXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5XG4gICAgICAgICAgICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgICAgICAgICAgIC4uLm1lc3NhZ2VzLmNvbmZpcm1hdGlvblRleHQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvamVjdE5hbWU6IHByb2plY3ROYW1lLFxuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVQbHVyYWw6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGU6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb01lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBjb3VudDogaW50bC5mb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGUudXBsb2FkRmlsZVJlc3BvbnNlPy5yb3dzQ291bnRcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgYjogZ2V0Qm9sZCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPFRleHQuQm9keVxuICAgICAgICAgICAgICAgIGludGxNZXNzYWdlPXt7XG4gICAgICAgICAgICAgICAgICAuLi5tZXNzYWdlcy5jb25maXJtYXRpb25RdWVzdGlvbixcbiAgICAgICAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVQbHVyYWw6IGludGwuZm9ybWF0TWVzc2FnZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UocmVzb3VyY2VUeXBlKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8U3BhY2luZ3MuSW5saW5lIHNjYWxlPVwic1wiIGFsaWduSXRlbXM9XCJjZW50ZXJcIj5cbiAgICAgICAgICAgICAgPFdhcm5pbmdJY29uIHNpemU9XCI0MFwiIGNvbG9yPVwid2FybmluZ1wiIC8+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHkgaW50bE1lc3NhZ2U9e21lc3NhZ2VzLmNhbm5vdEJlVW5kb25lTm90ZX0gLz5cbiAgICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICAgIDwvU3BhY2luZ3MuU3RhY2s+XG4gICAgICAgICAgPFNwYWNpbmdzLklubGluZSBzY2FsZT1cIm1cIiBqdXN0aWZ5Q29udGVudD1cImZsZXgtZW5kXCI+XG4gICAgICAgICAgICA8U2Vjb25kYXJ5QnV0dG9uXG4gICAgICAgICAgICAgIGRhdGEtdGVzdC1pZD1cImNvbmZpcm1hdGlvbi1kaWFsb2ctY2FuY2VsXCJcbiAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZShzaGFyZWRNZXNzYWdlcy5jYW5jZWwpfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNsb3NlKHsgc2hvdWxkRGVsZXRlSW1wb3J0Q29udGFpbmVyOiB0cnVlIH0pfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQcmltYXJ5QnV0dG9uXG4gICAgICAgICAgICAgIHRvbmU9XCJjcml0aWNhbFwiXG4gICAgICAgICAgICAgIGRhdGEtdGVzdC1pZD1cImNvbmZpcm1hdGlvbi1kaWFsb2ctY29uZmlybVwiXG4gICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoc2hhcmVkTWVzc2FnZXMuc3RhcnRCdWxrRGVsZXRlKX1cbiAgICAgICAgICAgICAgb25DbGljaz17b25TdGFydEltcG9ydH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICAgICAgIDwvU3BhY2luZ3MuU3RhY2s+XG4gICAgICA8L0Z1bGxTdG9yeU1hc2tpbmcuVW5tYXNrPlxuICAgIDwvSW5mb0RpYWxvZz5cbiAgKVxufVxuXG5mdW5jdGlvbiBnZXRCb2xkKG1zZykge1xuICByZXR1cm4gKFxuICAgIDxUZXh0LkJvZHkgYXM9XCJzcGFuXCIgaXNCb2xkIGtleT17Y3J5cHRvLnJhbmRvbVVVSUQoKX0+XG4gICAgICB7bXNnfVxuICAgIDwvVGV4dC5Cb2R5PlxuICApXG59XG4iXX0= */",
1207
+ styles: "width:360px;label:ImportPreparingTextNotification;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRlbGV0ZS1yZXNvdXJjZXMtY29uZmlybWF0aW9uLW1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1RFkiLCJmaWxlIjoiZGVsZXRlLXJlc291cmNlcy1jb25maXJtYXRpb24tbW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnXG5pbXBvcnQgeyB1c2VTaG93Tm90aWZpY2F0aW9uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYWN0aW9ucy1nbG9iYWwnXG5pbXBvcnQgeyBJbmZvRGlhbG9nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvYXBwbGljYXRpb24tY29tcG9uZW50cydcbmltcG9ydCB7IHVzZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL2FwcGxpY2F0aW9uLXNoZWxsLWNvbm5lY3RvcnMnXG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvY29uc3RhbnRzJ1xuaW1wb3J0IHsgTWFza2luZyBhcyBGdWxsU3RvcnlNYXNraW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtZnJvbnRlbmQvZnVsbHN0b3J5J1xuaW1wb3J0IHtcbiAgTGluayxcbiAgUHJpbWFyeUJ1dHRvbixcbiAgU2Vjb25kYXJ5QnV0dG9uLFxuICBTcGFjaW5ncyxcbiAgVGV4dCxcbiAgV2FybmluZ0ljb24sXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLWZyb250ZW5kL3VpLWtpdCdcbmltcG9ydCB7XG4gIHByb2Nlc3NVcGxvYWRlZEZpbGUsXG4gIHByb2Nlc3NGaWxlSW1wb3J0Sm9iLFxufSBmcm9tICdAY29tbWVyY2V0b29scy1mcm9udGVuZC1leHRlbnNpb25zL29wZXJhdGlvbnMnXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBtZXNzYWdlcyBmcm9tICcuL21lc3NhZ2VzJ1xuaW1wb3J0IHtcbiAgcmVzb3VyY2VUeXBlVG9NZXNzYWdlLFxuICByZXNvdXJjZVR5cGVUb1BsdXJhbE1lc3NhZ2UsXG59IGZyb20gJy4uLy4uL0BoZWxwZXJzJ1xuaW1wb3J0IHsgdXNlRGVsZXRlUmVzb3VyY2VzQ29udGV4dCB9IGZyb20gJy4uLy4uL0Bob29rcydcbmltcG9ydCBzaGFyZWRNZXNzYWdlcyBmcm9tICcuLi8uLi9tZXNzYWdlcydcblxuY29uc3QgZ2V0TmV3TGluZSA9ICgpID0+IDxiciBrZXk9XCJicmVha1wiIC8+XG5jb25zdCBnZXRJbXBvcnRMb2dzTGluayA9IChtc2csIHByb2plY3RLZXkpID0+IChcbiAgPExpbmsgdG89e2AvJHtwcm9qZWN0S2V5fS9vcGVyYXRpb25zL2ltcG9ydC9sb2dzYH0ga2V5PVwibGlua1wiPlxuICAgIHttc2d9XG4gIDwvTGluaz5cbilcblxuY29uc3QgSW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gPSAocHJvcHM6IHsgcHJvamVjdEtleTogc3RyaW5nIH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17Y3NzYFxuICAgICAgd2lkdGg6IDM2MHB4O1xuICAgIGB9XG4gID5cbiAgICA8VGV4dC5Cb2R5XG4gICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAuLi5tZXNzYWdlcy5pbXBvcnRTdGFydGVkLFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5jb25zdCBJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uID0gKHByb3BzOiB7IHByb2plY3RLZXk6IHN0cmluZyB9KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e2Nzc2BcbiAgICAgIHdpZHRoOiAzNjBweDtcbiAgICBgfVxuICA+XG4gICAgPFRleHQuQm9keVxuICAgICAgaW50bE1lc3NhZ2U9e3tcbiAgICAgICAgLi4ubWVzc2FnZXMucHJlcGFyaW5nSW1wb3J0LFxuICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICBuZXdsaW5lOiBnZXROZXdMaW5lLFxuICAgICAgICAgIGxvZ3NMaW5rOiAobXNnKSA9PiBnZXRJbXBvcnRMb2dzTGluayhtc2csIHByb3BzLnByb2plY3RLZXkpLFxuICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgIH0sXG4gICAgICB9fVxuICAgIC8+XG4gIDwvZGl2PlxuKVxuXG5leHBvcnQgY29uc3QgRGVsZXRlUmVzb3VyY2VzQ29uZmlybWF0aW9uTW9kYWwgPSAoKSA9PiB7XG4gIGNvbnN0IGludGwgPSB1c2VJbnRsKClcbiAgY29uc3QgeyByZXNvdXJjZVR5cGUsIHN0YXRlLCBvbkNsb3NlIH0gPSB1c2VEZWxldGVSZXNvdXJjZXNDb250ZXh0KClcbiAgY29uc3QgeyBwcm9qZWN0S2V5LCBwcm9qZWN0TmFtZSB9ID0gdXNlQXBwbGljYXRpb25Db250ZXh0KChjb250ZXh0KSA9PiAoe1xuICAgIHByb2plY3RLZXk6IGNvbnRleHQucHJvamVjdD8ua2V5LFxuICAgIHByb2plY3ROYW1lOiBjb250ZXh0LnByb2plY3Q/Lm5hbWUsXG4gIH0pKVxuXG4gIGNvbnN0IHNob3dOb3RpZmljYXRpb24gPSB1c2VTaG93Tm90aWZpY2F0aW9uKClcblxuICBjb25zdCBvblN0YXJ0SW1wb3J0ID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjYW5Db25maXJtID1cbiAgICAgICAgcHJvamVjdEtleSAmJiBzdGF0ZS5jb250YWluZXJLZXkgJiYgc3RhdGUuZHJvcHBlZEZpbGU/Lm5hbWVcbiAgICAgIGlmICghY2FuQ29uZmlybSkgcmV0dXJuXG4gICAgICBvbkNsb3NlKClcbiAgICAgIHNob3dOb3RpZmljYXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICBraW5kOiAnaW5mbycsXG4gICAgICAgICAgZG9tYWluOiBET01BSU5TLlNJREUsXG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRleHQ6IDxJbXBvcnRQcmVwYXJpbmdUZXh0Tm90aWZpY2F0aW9uIHByb2plY3RLZXk9e3Byb2plY3RLZXl9IC8+LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZGlzbWlzc0FmdGVyOiA1MDAwLFxuICAgICAgICB9XG4gICAgICApXG5cbiAgICAgIGlmIChzdGF0ZS5qb2JJZCkge1xuICAgICAgICBhd2FpdCBwcm9jZXNzRmlsZUltcG9ydEpvYih7XG4gICAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgICBpbXBvcnRDb250YWluZXJLZXk6IHN0YXRlLmNvbnRhaW5lcktleSEsXG4gICAgICAgICAgam9iSWQ6IHN0YXRlLmpvYklkLFxuICAgICAgICAgIHJlc291cmNlVHlwZSxcbiAgICAgICAgICBhY3Rpb246ICdkZWxldGUnLFxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXdhaXQgcHJvY2Vzc1VwbG9hZGVkRmlsZSh7XG4gICAgICAgICAgcHJvamVjdEtleSxcbiAgICAgICAgICBpbXBvcnRDb250YWluZXJLZXk6IHN0YXRlLmNvbnRhaW5lcktleSEsXG4gICAgICAgICAgcmVzb3VyY2VUeXBlLFxuICAgICAgICAgIGFjdGlvbjogJ2RlbGV0ZScsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICBzaG93Tm90aWZpY2F0aW9uKFxuICAgICAgICB7XG4gICAgICAgICAga2luZDogJ2luZm8nLFxuICAgICAgICAgIGRvbWFpbjogRE9NQUlOUy5TSURFLFxuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICB0ZXh0OiA8SW1wb3J0UnVubmluZ1RleHROb3RpZmljYXRpb24gcHJvamVjdEtleT17cHJvamVjdEtleX0gLz4sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkaXNtaXNzQWZ0ZXI6IDUwMDAsXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KVxuICAgICAgc2hvd05vdGlmaWNhdGlvbih7XG4gICAgICAgIGtpbmQ6ICdlcnJvcicsXG4gICAgICAgIGRvbWFpbjogRE9NQUlOUy5QQUdFLFxuICAgICAgICB0ZXh0OiBTdHJpbmcoZXJyb3IpLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxJbmZvRGlhbG9nXG4gICAgICB0aXRsZT17aW50bC5mb3JtYXRNZXNzYWdlKHNoYXJlZE1lc3NhZ2VzLmRlbGV0ZU1vZGFsVGl0bGUpfVxuICAgICAgaXNPcGVuXG4gICAgICBvbkNsb3NlPXsoKSA9PiBvbkNsb3NlKHsgc2hvdWxkRGVsZXRlSW1wb3J0Q29udGFpbmVyOiB0cnVlIH0pfVxuICAgICAgc2l6ZT17MTZ9XG4gICAgPlxuICAgICAgPEZ1bGxTdG9yeU1hc2tpbmcuVW5tYXNrPlxuICAgICAgICA8U3BhY2luZ3MuU3RhY2sgc2NhbGU9XCJ4bFwiPlxuICAgICAgICAgIDxTcGFjaW5ncy5TdGFjayBzY2FsZT1cIm1cIj5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHlcbiAgICAgICAgICAgICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAgICAgICAgICAgLi4ubWVzc2FnZXMuY29uZmlybWF0aW9uVGV4dCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICBwcm9qZWN0TmFtZTogcHJvamVjdE5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVBsdXJhbDogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVRvUGx1cmFsTWVzc2FnZShyZXNvdXJjZVR5cGUpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZTogaW50bC5mb3JtYXRNZXNzYWdlKFxuICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZVRvTWVzc2FnZShyZXNvdXJjZVR5cGUpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIGNvdW50OiBpbnRsLmZvcm1hdE51bWJlcihcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS51cGxvYWRGaWxlUmVzcG9uc2U/LnJvd3NDb3VudCA/PyAwXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIGI6IGdldEJvbGQsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxUZXh0LkJvZHlcbiAgICAgICAgICAgICAgICBpbnRsTWVzc2FnZT17e1xuICAgICAgICAgICAgICAgICAgLi4ubWVzc2FnZXMuY29uZmlybWF0aW9uUXVlc3Rpb24sXG4gICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VUeXBlUGx1cmFsOiBpbnRsLmZvcm1hdE1lc3NhZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VUeXBlVG9QbHVyYWxNZXNzYWdlKHJlc291cmNlVHlwZSlcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPFNwYWNpbmdzLklubGluZSBzY2FsZT1cInNcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxXYXJuaW5nSWNvbiBzaXplPVwiNDBcIiBjb2xvcj1cIndhcm5pbmdcIiAvPlxuICAgICAgICAgICAgICA8VGV4dC5Cb2R5IGludGxNZXNzYWdlPXttZXNzYWdlcy5jYW5ub3RCZVVuZG9uZU5vdGV9IC8+XG4gICAgICAgICAgICA8L1NwYWNpbmdzLklubGluZT5cbiAgICAgICAgICA8L1NwYWNpbmdzLlN0YWNrPlxuICAgICAgICAgIDxTcGFjaW5ncy5JbmxpbmUgc2NhbGU9XCJtXCIganVzdGlmeUNvbnRlbnQ9XCJmbGV4LWVuZFwiPlxuICAgICAgICAgICAgPFNlY29uZGFyeUJ1dHRvblxuICAgICAgICAgICAgICBkYXRhLXRlc3QtaWQ9XCJjb25maXJtYXRpb24tZGlhbG9nLWNhbmNlbFwiXG4gICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoc2hhcmVkTWVzc2FnZXMuY2FuY2VsKX1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DbG9zZSh7IHNob3VsZERlbGV0ZUltcG9ydENvbnRhaW5lcjogdHJ1ZSB9KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8UHJpbWFyeUJ1dHRvblxuICAgICAgICAgICAgICB0b25lPVwiY3JpdGljYWxcIlxuICAgICAgICAgICAgICBkYXRhLXRlc3QtaWQ9XCJjb25maXJtYXRpb24tZGlhbG9nLWNvbmZpcm1cIlxuICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHNoYXJlZE1lc3NhZ2VzLnN0YXJ0QnVsa0RlbGV0ZSl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e29uU3RhcnRJbXBvcnR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvU3BhY2luZ3MuSW5saW5lPlxuICAgICAgICA8L1NwYWNpbmdzLlN0YWNrPlxuICAgICAgPC9GdWxsU3RvcnlNYXNraW5nLlVubWFzaz5cbiAgICA8L0luZm9EaWFsb2c+XG4gIClcbn1cblxuZnVuY3Rpb24gZ2V0Qm9sZChtc2cpIHtcbiAgcmV0dXJuIChcbiAgICA8VGV4dC5Cb2R5IGFzPVwic3BhblwiIGlzQm9sZCBrZXk9e2NyeXB0by5yYW5kb21VVUlEKCl9PlxuICAgICAge21zZ31cbiAgICA8L1RleHQuQm9keT5cbiAgKVxufVxuIl19 */",
1085
1208
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
1086
1209
  };
1087
1210
  const ImportPreparingTextNotification = props => jsx("div", {
@@ -1124,12 +1247,22 @@ const DeleteResourcesConfirmationModal = () => {
1124
1247
  }, {
1125
1248
  dismissAfter: 5000
1126
1249
  });
1127
- await processUploadedFile({
1128
- projectKey,
1129
- importContainerKey: state.containerKey,
1130
- resourceType,
1131
- action: 'delete'
1132
- });
1250
+ if (state.jobId) {
1251
+ await processFileImportJob({
1252
+ projectKey,
1253
+ importContainerKey: state.containerKey,
1254
+ jobId: state.jobId,
1255
+ resourceType,
1256
+ action: 'delete'
1257
+ });
1258
+ } else {
1259
+ await processUploadedFile({
1260
+ projectKey,
1261
+ importContainerKey: state.containerKey,
1262
+ resourceType,
1263
+ action: 'delete'
1264
+ });
1265
+ }
1133
1266
  showNotification({
1134
1267
  kind: 'info',
1135
1268
  domain: DOMAINS.SIDE,
@@ -1170,7 +1303,7 @@ const DeleteResourcesConfirmationModal = () => {
1170
1303
  projectName: projectName,
1171
1304
  resourceTypePlural: intl.formatMessage(resourceTypeToPluralMessage(resourceType)),
1172
1305
  resourceType: intl.formatMessage(resourceTypeToMessage(resourceType)),
1173
- count: intl.formatNumber(state.uploadFileResponse?.rowsCount),
1306
+ count: intl.formatNumber(state.uploadFileResponse?.rowsCount ?? 0),
1174
1307
  b: getBold$1
1175
1308
  }
1176
1309
  })
@@ -1259,7 +1392,7 @@ function UploadPreviewModal() {
1259
1392
  values: {
1260
1393
  resourceType: intl.formatMessage(resourceTypeToMessage(resourceType)),
1261
1394
  resourceTypePlural: intl.formatMessage(resourceTypeToPluralMessage(resourceType)),
1262
- count: intl.formatNumber(state.uploadFileResponse?.rowsCount),
1395
+ count: intl.formatNumber(state.uploadFileResponse?.rowsCount ?? 0),
1263
1396
  b: getBold
1264
1397
  }
1265
1398
  })