@commercetools-frontend-extensions/import-resources-modal 1.9.0 → 1.10.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.
Files changed (36) hide show
  1. package/dist/{active-drag-drop-area-a995b09d.cjs.prod.js → active-drag-drop-area-58179e9a.cjs.prod.js} +1 -1
  2. package/dist/{active-drag-drop-area-294d353d.esm.js → active-drag-drop-area-5983aeff.esm.js} +1 -1
  3. package/dist/{active-drag-drop-area-0467c118.cjs.dev.js → active-drag-drop-area-bb4bbe27.cjs.dev.js} +1 -1
  4. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.dev.js +1 -1
  5. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.prod.js +1 -1
  6. package/dist/commercetools-frontend-extensions-import-resources-modal.esm.js +1 -1
  7. package/dist/{de-2836a9ae.cjs.prod.js → de-3e1e8435.cjs.dev.js} +3 -3
  8. package/dist/{de-19530b12.esm.js → de-67bd98c5.esm.js} +3 -3
  9. package/dist/{de-db4fb974.cjs.dev.js → de-a33f40b4.cjs.prod.js} +3 -3
  10. package/dist/declarations/src/@types/file-upload.d.ts +1 -0
  11. package/dist/declarations/src/@types/import-container.d.ts +4 -2
  12. package/dist/{disabled-drop-area-7ca6b04a.esm.js → disabled-drop-area-67de59ef.esm.js} +1 -1
  13. package/dist/{disabled-drop-area-16b58581.cjs.prod.js → disabled-drop-area-9c90609b.cjs.prod.js} +1 -1
  14. package/dist/{disabled-drop-area-4a639dbf.cjs.dev.js → disabled-drop-area-a3d62583.cjs.dev.js} +1 -1
  15. package/dist/{en-f53130d1.cjs.dev.js → en-647cd603.cjs.prod.js} +1 -1
  16. package/dist/{en-1f091237.esm.js → en-850d8c4a.esm.js} +1 -1
  17. package/dist/{en-cb6893e4.cjs.prod.js → en-b68b87c8.cjs.dev.js} +1 -1
  18. package/dist/{enabled-drop-area-9bf924fa.esm.js → enabled-drop-area-5f322d0a.esm.js} +1 -1
  19. package/dist/{enabled-drop-area-1f50b766.cjs.prod.js → enabled-drop-area-723eb5b8.cjs.prod.js} +1 -1
  20. package/dist/{enabled-drop-area-a4a76650.cjs.dev.js → enabled-drop-area-7cc66fc8.cjs.dev.js} +1 -1
  21. package/dist/{es-420f21e1.cjs.dev.js → es-02f8a321.cjs.prod.js} +3 -3
  22. package/dist/{es-a9aada13.esm.js → es-21c30725.esm.js} +3 -3
  23. package/dist/{es-f085026e.cjs.prod.js → es-68d1ba91.cjs.dev.js} +3 -3
  24. package/dist/{file-dropped-area-e6b5a3fa.esm.js → file-dropped-area-724a3d30.esm.js} +1 -1
  25. package/dist/{file-dropped-area-84bc6912.cjs.prod.js → file-dropped-area-d451d883.cjs.prod.js} +1 -1
  26. package/dist/{file-dropped-area-9387283c.cjs.dev.js → file-dropped-area-e06176a3.cjs.dev.js} +1 -1
  27. package/dist/{fr-FR-dc40a55c.cjs.prod.js → fr-FR-078895d6.cjs.prod.js} +3 -3
  28. package/dist/{fr-FR-02bd52fb.esm.js → fr-FR-3c6878e4.esm.js} +3 -3
  29. package/dist/{fr-FR-342599f4.cjs.dev.js → fr-FR-a9a6c5c9.cjs.dev.js} +3 -3
  30. package/dist/{index-40da749a.cjs.dev.js → index-44a01cb9.cjs.dev.js} +174 -83
  31. package/dist/{index-10a225f5.esm.js → index-7a93797c.esm.js} +175 -84
  32. package/dist/{index-77194696.cjs.prod.js → index-e08c812b.cjs.prod.js} +169 -83
  33. package/dist/{pt-BR-339ed808.cjs.dev.js → pt-BR-a50aa3dd.cjs.prod.js} +3 -3
  34. package/dist/{pt-BR-31c46d23.cjs.prod.js → pt-BR-cd32fb09.cjs.dev.js} +3 -3
  35. package/dist/{pt-BR-ac1fc192.esm.js → pt-BR-fa0b65c8.esm.js} +3 -3
  36. package/package.json +18 -18
@@ -116,27 +116,26 @@ let CurrentStep$1 = /*#__PURE__*/function (CurrentStep) {
116
116
  return CurrentStep;
117
117
  }({});
118
118
 
119
- function ownKeys$j(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
120
- function _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$j(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$j(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
119
+ function ownKeys$k(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
120
+ function _objectSpread$k(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$k(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$k(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
121
121
 
122
122
  // TODO: make this resource type specific
123
123
 
124
124
  function reducer(state, action) {
125
- if (action.type === 'setCurrentStep') return _objectSpread$j(_objectSpread$j({}, state), {}, {
125
+ if (action.type === 'setCurrentStep') return _objectSpread$k(_objectSpread$k({}, state), {}, {
126
126
  currentStep: action.currentStep,
127
127
  progress: 0
128
128
  });
129
- if (action.type === 'setUploadFileResponse') return _objectSpread$j(_objectSpread$j({}, state), {}, {
129
+ if (action.type === 'setUploadFileResponse') return _objectSpread$k(_objectSpread$k({}, state), {}, {
130
130
  uploadFileResponse: action.uploadFileResponse
131
131
  });
132
- if (action.type === 'setResourceType') return _objectSpread$j(_objectSpread$j({}, state), {}, {
133
- settings: undefined,
132
+ if (action.type === 'setResourceType') return _objectSpread$k(_objectSpread$k({}, state), {}, {
134
133
  resourceType: action.resourceType
135
134
  });
136
- if (action.type === 'setContainerKey') return _objectSpread$j(_objectSpread$j({}, state), {}, {
135
+ if (action.type === 'setContainerKey') return _objectSpread$k(_objectSpread$k({}, state), {}, {
137
136
  containerKey: action.containerKey
138
137
  });
139
- if (action.type === 'cancelImport') return _objectSpread$j(_objectSpread$j({}, state), {}, {
138
+ if (action.type === 'cancelImport') return _objectSpread$k(_objectSpread$k({}, state), {}, {
140
139
  currentStep: CurrentStep$1.Upload,
141
140
  containerKey: undefined,
142
141
  fileUploadErrors: [],
@@ -145,7 +144,7 @@ function reducer(state, action) {
145
144
  dropAreaState: 'disabled',
146
145
  progress: 0
147
146
  });
148
- if (action.type === 'uploadNewFile') return _objectSpread$j(_objectSpread$j({}, state), {}, {
147
+ if (action.type === 'uploadNewFile') return _objectSpread$k(_objectSpread$k({}, state), {}, {
149
148
  currentStep: CurrentStep$1.Upload,
150
149
  containerKey: undefined,
151
150
  fileUploadErrors: [],
@@ -155,28 +154,28 @@ function reducer(state, action) {
155
154
  progress: 0
156
155
  });
157
156
  if (action.type === 'setDroppedFile') {
158
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
157
+ return _objectSpread$k(_objectSpread$k({}, state), {}, {
159
158
  droppedFile: action.droppedFile
160
159
  });
161
160
  }
162
161
  if (action.type === 'setFileUploadErrors') {
163
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
162
+ return _objectSpread$k(_objectSpread$k({}, state), {}, {
164
163
  fileUploadErrors: action.fileUploadErrors
165
164
  });
166
165
  }
167
166
  if (action.type === 'setAbortController') {
168
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
167
+ return _objectSpread$k(_objectSpread$k({}, state), {}, {
169
168
  abortController: action.abortController
170
169
  });
171
170
  }
172
171
  if (action.type === 'setProgress') {
173
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
172
+ return _objectSpread$k(_objectSpread$k({}, state), {}, {
174
173
  progress: action.progress
175
174
  });
176
175
  }
177
176
  if (action.type === 'setUploadSettings') {
178
- return _objectSpread$j(_objectSpread$j({}, state), {}, {
179
- settings: _objectSpread$j(_objectSpread$j({}, state.settings), action.settings)
177
+ return _objectSpread$k(_objectSpread$k({}, state), {}, {
178
+ settings: _objectSpread$k(_objectSpread$k({}, state.settings), action.settings)
180
179
  });
181
180
  }
182
181
  throw new Error(getUnknownActionError(action));
@@ -192,7 +191,10 @@ const initialState = {
192
191
  fileUploadErrors: [],
193
192
  resourceType: 'category',
194
193
  containerKey: undefined,
195
- progress: 0
194
+ progress: 0,
195
+ settings: {
196
+ decimalSeparator: '.'
197
+ }
196
198
  };
197
199
 
198
200
  function _callSuper$2(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$2() ? _Reflect$construct__default["default"](o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
@@ -241,8 +243,8 @@ let HttpError = /*#__PURE__*/function (_Error) {
241
243
  return _createClass(HttpError);
242
244
  }(/*#__PURE__*/_wrapNativeSuper(Error));
243
245
 
244
- function ownKeys$i(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
245
- function _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys$i(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys$i(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
246
+ function ownKeys$j(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
247
+ function _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys$j(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys$j(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
246
248
  const addProxyPrefixToUrl = (uri, proxy) => {
247
249
  return proxy ? `/proxy/${proxy}${uri}` : uri;
248
250
  };
@@ -254,7 +256,7 @@ const fetchUsingXhr = _ref2 => {
254
256
  onSuccess = _ref2.onSuccess,
255
257
  onError = _ref2.onError;
256
258
  const options = applicationShell.createHttpClientOptions({
257
- headers: _objectSpread$i({
259
+ headers: _objectSpread$j({
258
260
  'Content-Type': 'application/json'
259
261
  }, config?.headers)
260
262
  });
@@ -298,7 +300,14 @@ const fetchUsingXhr = _ref2 => {
298
300
  return xhr;
299
301
  };
300
302
 
301
- const ALLOWED_DELIMITERS = [',', ';', '|', '\t'];
303
+ const DELIMITERS = {
304
+ COMMA: ',',
305
+ SEMICOLON: ';',
306
+ POINT: '.',
307
+ TAB: '\t',
308
+ PIPE: '|'
309
+ };
310
+ const COLUMN_DELIMITERS = [DELIMITERS.COMMA, DELIMITERS.SEMICOLON, DELIMITERS.PIPE, DELIMITERS.TAB];
302
311
  const INITIAL_COLUMN_DISPLAY_COUNT = 8;
303
312
  const IMPORT_TAG_KEYS = {
304
313
  source: 'source'
@@ -399,11 +408,11 @@ const ACTION_RIGHTS = {
399
408
  }
400
409
  };
401
410
 
402
- function ownKeys$h(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
403
- function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$h(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$h(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
411
+ function ownKeys$i(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
412
+ function _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$i(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$i(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
404
413
  const DEFAULT_SHORT_LIVED_FLAGS = {};
405
414
  const DEFAULT_LONG_LIVED_FLAGS = {};
406
- _objectSpread$h(_objectSpread$h({}, DEFAULT_SHORT_LIVED_FLAGS), DEFAULT_LONG_LIVED_FLAGS);
415
+ _objectSpread$i(_objectSpread$i({}, DEFAULT_SHORT_LIVED_FLAGS), DEFAULT_LONG_LIVED_FLAGS);
407
416
 
408
417
  var sharedMessages = reactIntl.defineMessages({
409
418
  [`modalTitle.${IMPORTABLE_RESOURCES.CATEGORY}`]: {
@@ -655,13 +664,13 @@ var sharedMessages = reactIntl.defineMessages({
655
664
  //
656
665
  });
657
666
 
658
- function ownKeys$g(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
659
- function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$g(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$g(Object(t))).call(_context4, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
667
+ function ownKeys$h(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
668
+ function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$h(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$h(Object(t))).call(_context4, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
660
669
 
661
670
  // Delimiters not included in this array may be treated as part of a column content
662
671
  // potentially causing the file to be parsed as a single-column CSV and pass this validation
663
- const NON_ALLOWED_DELIMITERS = ['%', '.', ' '];
664
- const DELIMITERS_TO_GUESS = [...ALLOWED_DELIMITERS, ...NON_ALLOWED_DELIMITERS];
672
+ const NON_ALLOWED_COLUMN_DELIMITERS = ['%', '.', ' '];
673
+ const DELIMITERS_TO_GUESS = [...COLUMN_DELIMITERS, ...NON_ALLOWED_COLUMN_DELIMITERS];
665
674
  const validateDelimiter = file => {
666
675
  return new _Promise__default["default"](resolve => {
667
676
  Papa__default["default"].parse(file, {
@@ -676,7 +685,7 @@ const validateDelimiter = file => {
676
685
  }
677
686
  const detectedDelimiter = result.meta.delimiter;
678
687
  let isValid = false;
679
- if (detectedDelimiter !== null && _includesInstanceProperty__default["default"](ALLOWED_DELIMITERS).call(ALLOWED_DELIMITERS, detectedDelimiter)) {
688
+ if (detectedDelimiter !== null && _includesInstanceProperty__default["default"](COLUMN_DELIMITERS).call(COLUMN_DELIMITERS, detectedDelimiter)) {
680
689
  var _context;
681
690
  const isUndetectableDelimiter = _someInstanceProperty__default["default"](_context = result.errors).call(_context, error => error.code === 'UndetectableDelimiter');
682
691
  if (!isUndetectableDelimiter) {
@@ -705,7 +714,7 @@ const mapUploadFileErrorsResponseToUploadFileErrorRows = uploadFileErrorsRespons
705
714
  };
706
715
  const mapFileUploadErrorsToUploadFileErrorRows = uploadFileErrors => {
707
716
  let idCounter = 1;
708
- return _mapInstanceProperty__default["default"](uploadFileErrors).call(uploadFileErrors, uploadFileError => _objectSpread$g(_objectSpread$g({}, uploadFileError), {}, {
717
+ return _mapInstanceProperty__default["default"](uploadFileErrors).call(uploadFileErrors, uploadFileError => _objectSpread$h(_objectSpread$h({}, uploadFileError), {}, {
709
718
  id: String(idCounter++)
710
719
  }));
711
720
  };
@@ -745,7 +754,7 @@ const getValidatedColumns = (columns, ignoredColumns) => {
745
754
  };
746
755
  const formatAllowedDelimitersForMessageDisplay = intl => {
747
756
  const localizedOr = intl.formatMessage(sharedMessages.listConjunctionOr);
748
- const descriptions = _mapInstanceProperty__default["default"](ALLOWED_DELIMITERS).call(ALLOWED_DELIMITERS, delimiter => {
757
+ const descriptions = _mapInstanceProperty__default["default"](COLUMN_DELIMITERS).call(COLUMN_DELIMITERS, delimiter => {
749
758
  let nameDescriptor;
750
759
  switch (delimiter) {
751
760
  case ',':
@@ -903,8 +912,8 @@ function uploadFileForImport(_ref) {
903
912
  });
904
913
  }
905
914
 
906
- function ownKeys$f(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
907
- function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys$f(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys$f(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
915
+ function ownKeys$g(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
916
+ function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context2 = ownKeys$g(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context3 = ownKeys$g(Object(t))).call(_context3, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
908
917
  function createImportContainerForFileUpload(importContainerDraft, projectKey, asyncDispatch) {
909
918
  return asyncDispatch(sdk.actions.post({
910
919
  mcApiProxyTarget: constants.MC_API_PROXY_TARGETS.IMPORT,
@@ -913,7 +922,7 @@ function createImportContainerForFileUpload(importContainerDraft, projectKey, as
913
922
  accept: 'application/json',
914
923
  'Content-Type': 'application/json'
915
924
  },
916
- payload: _JSON$stringify__default["default"](_objectSpread$f({
925
+ payload: _JSON$stringify__default["default"](_objectSpread$g({
917
926
  retentionPolicy: {
918
927
  strategy: 'ttl',
919
928
  config: {
@@ -957,8 +966,8 @@ function assertProcessFileResponse(maybeProcessFileResponse) {
957
966
  throw new Error('Invalid response');
958
967
  }
959
968
 
960
- function ownKeys$e(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
961
- function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$e(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$e(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
969
+ function ownKeys$f(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
970
+ function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$f(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$f(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
962
971
  const ImportResourcesContext = /*#__PURE__*/React__default["default"].createContext();
963
972
  const ImportResourcesProvider = props => {
964
973
  const _useApplicationContex = applicationShellConnectors.useApplicationContext(context => ({
@@ -966,7 +975,7 @@ const ImportResourcesProvider = props => {
966
975
  })),
967
976
  projectKey = _useApplicationContex.projectKey;
968
977
  const asyncDispatch = sdk.useAsyncDispatch();
969
- const _React$useReducer = React__default["default"].useReducer(reducer, _objectSpread$e(_objectSpread$e({}, initialState), {}, {
978
+ const _React$useReducer = React__default["default"].useReducer(reducer, _objectSpread$f(_objectSpread$f({}, initialState), {}, {
970
979
  resourceType: props.resourceTypes[0]
971
980
  })),
972
981
  _React$useReducer2 = _slicedToArray(_React$useReducer, 2),
@@ -1103,13 +1112,13 @@ function getDefaultDropWrapperStyles(_dropAreaState) {
1103
1112
  return /*#__PURE__*/react.css("" , "" );
1104
1113
  }
1105
1114
 
1106
- var ActiveDragDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./active-drag-drop-area-a995b09d.cjs.prod.js'); }));
1115
+ var ActiveDragDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./active-drag-drop-area-58179e9a.cjs.prod.js'); }));
1107
1116
 
1108
- var DisabledDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./disabled-drop-area-16b58581.cjs.prod.js'); }));
1117
+ var DisabledDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./disabled-drop-area-9c90609b.cjs.prod.js'); }));
1109
1118
 
1110
- var EnabledDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./enabled-drop-area-1f50b766.cjs.prod.js'); }));
1119
+ var EnabledDropArea = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./enabled-drop-area-723eb5b8.cjs.prod.js'); }));
1111
1120
 
1112
- var FileDropped = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./file-dropped-area-84bc6912.cjs.prod.js'); }));
1121
+ var FileDropped = /*#__PURE__*/React.lazy(() => Promise.resolve().then(function () { return require('./file-dropped-area-d451d883.cjs.prod.js'); }));
1113
1122
 
1114
1123
  function getDropArea(_ref) {
1115
1124
  let dropAreaState = _ref.dropAreaState,
@@ -1147,7 +1156,7 @@ function getDropAreaState(flags) {
1147
1156
  return 'ready-for-drop';
1148
1157
  }
1149
1158
 
1150
- var messages$7 = reactIntl.defineMessages({
1159
+ var messages$8 = reactIntl.defineMessages({
1151
1160
  dragAndDropCSV: {
1152
1161
  id: 'ImportResourcesModal.dragAndDropCSV',
1153
1162
  description: 'The message telling the user to drag and drop CSV file in the file drop area',
@@ -1212,7 +1221,7 @@ function useImportResourcesContext() {
1212
1221
  return context;
1213
1222
  }
1214
1223
 
1215
- var messages$6 = reactIntl.defineMessages({
1224
+ var messages$7 = reactIntl.defineMessages({
1216
1225
  fileSizeExceededTitle: {
1217
1226
  id: 'ImportResourcesModal.sizeExceededTitle',
1218
1227
  defaultMessage: 'File size exceeded'
@@ -1272,8 +1281,8 @@ var messages$6 = reactIntl.defineMessages({
1272
1281
  }
1273
1282
  });
1274
1283
 
1275
- function ownKeys$d(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
1276
- function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$d(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$d(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
1284
+ function ownKeys$e(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
1285
+ function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$e(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$e(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
1277
1286
  const useUpload = () => {
1278
1287
  const intl = reactIntl.useIntl();
1279
1288
  const projectKey = applicationShellConnectors.useApplicationContext(context => context.project?.key);
@@ -1291,25 +1300,25 @@ const useUpload = () => {
1291
1300
  const errors = [];
1292
1301
  const isDelimiterValid = await validateDelimiter(file);
1293
1302
  if (!isDelimiterValid) errors.push({
1294
- title: intl.formatMessage(messages$6.wrongSeparatorTitle),
1295
- description: intl.formatMessage(messages$6.wrongSeparatorDescription, {
1303
+ title: intl.formatMessage(messages$7.wrongSeparatorTitle),
1304
+ description: intl.formatMessage(messages$7.wrongSeparatorDescription, {
1296
1305
  delimiterList: formatAllowedDelimitersForMessageDisplay(intl)
1297
1306
  })
1298
1307
  });
1299
1308
  const rowCount = await getRowCount(file);
1300
1309
  if (rowCount < 1) errors.push({
1301
- title: intl.formatMessage(messages$6.dropAreaNotEnoughRowsTitle),
1302
- description: intl.formatMessage(messages$6.dropAreaNotEnoughRowsDescription)
1310
+ title: intl.formatMessage(messages$7.dropAreaNotEnoughRowsTitle),
1311
+ description: intl.formatMessage(messages$7.dropAreaNotEnoughRowsDescription)
1303
1312
  });
1304
1313
  if (state.resourceType && file.size > toBytes(FILE_SIZE_LIMITS_MB[state.resourceType])) errors.push({
1305
- title: intl.formatMessage(messages$6.fileSizeExceededTitle),
1306
- description: intl.formatMessage(messages$6.fileSizeExceededDescription, {
1314
+ title: intl.formatMessage(messages$7.fileSizeExceededTitle),
1315
+ description: intl.formatMessage(messages$7.fileSizeExceededDescription, {
1307
1316
  fileSizeLimit: intl.formatNumber(FILE_SIZE_LIMITS_MB[state.resourceType])
1308
1317
  })
1309
1318
  });
1310
1319
  if (state.resourceType && rowCount > ROW_LIMITS[state.resourceType]) errors.push({
1311
- title: intl.formatMessage(messages$6.rowLimitExceededTitle),
1312
- description: intl.formatMessage(messages$6.rowLimitExceededDescription, {
1320
+ title: intl.formatMessage(messages$7.rowLimitExceededTitle),
1321
+ description: intl.formatMessage(messages$7.rowLimitExceededDescription, {
1313
1322
  rowLimit: intl.formatNumber(ROW_LIMITS[state.resourceType])
1314
1323
  })
1315
1324
  });
@@ -1328,16 +1337,16 @@ const useUpload = () => {
1328
1337
  if (error instanceof HttpError) {
1329
1338
  if (error.errorData?.code === 'MISSING_KEY_ERROR') {
1330
1339
  actions.setFileUploadErrors([{
1331
- title: intl.formatMessage(messages$6.missingRequiredField),
1332
- description: intl.formatMessage(messages$6.missingKeyError)
1340
+ title: intl.formatMessage(messages$7.missingRequiredField),
1341
+ description: intl.formatMessage(messages$7.missingKeyError)
1333
1342
  }]);
1334
1343
  actions.setCurrentStep(CurrentStep$1.UploadResult);
1335
1344
  } else if (error.errorData?.code === 'MissingCsvFieldIdentifier') {
1336
1345
  const MissingCsvFieldIdentifierError = error.errorData;
1337
1346
  const fieldNames = formatKeys(MissingCsvFieldIdentifierError.rowValue);
1338
1347
  actions.setFileUploadErrors([{
1339
- title: intl.formatMessage(messages$6.missingRequiredField),
1340
- description: intl.formatMessage(messages$6.missingRequiredKeys, {
1348
+ title: intl.formatMessage(messages$7.missingRequiredField),
1349
+ description: intl.formatMessage(messages$7.missingRequiredKeys, {
1341
1350
  fieldNames
1342
1351
  })
1343
1352
  }]);
@@ -1350,7 +1359,7 @@ const useUpload = () => {
1350
1359
  showNotification({
1351
1360
  kind: 'error',
1352
1361
  domain: constants.DOMAINS.PAGE,
1353
- text: intl.formatMessage(messages$6.unexpectedError)
1362
+ text: intl.formatMessage(messages$7.unexpectedError)
1354
1363
  });
1355
1364
  }
1356
1365
  } else {
@@ -1379,21 +1388,21 @@ const useUpload = () => {
1379
1388
  const containerKey = encodeFileNameWithTimestampToContainerKey(state.droppedFile.name);
1380
1389
  actions.setContainerKey(containerKey);
1381
1390
  try {
1382
- // TODO: Temporarily apply settings only for products
1383
- const shouldApplySettings = state.resourceType === 'product';
1384
- await createImportContainerForFileUpload(_objectSpread$d({
1391
+ const shouldApplyPublishSettings = state.resourceType === 'product';
1392
+ await createImportContainerForFileUpload({
1385
1393
  key: containerKey,
1386
1394
  resourceType: state.resourceType,
1387
- tags: [TAG_KEY_SOURCE_FILE_UPLOAD]
1388
- }, shouldApplySettings ? {
1389
- settings: {
1390
- resourceType: state.resourceType === 'product' ? 'product-draft' : state.resourceType,
1395
+ tags: [TAG_KEY_SOURCE_FILE_UPLOAD],
1396
+ settings: _objectSpread$e({
1391
1397
  format: 'CSV',
1398
+ decimalSeparator: state.settings?.decimalSeparator
1399
+ }, shouldApplyPublishSettings ? {
1400
+ resourceType: state.resourceType === 'product' ? 'product-draft' : state.resourceType,
1392
1401
  options: {
1393
1402
  publishAllChanges: state.settings?.publish ?? false
1394
1403
  }
1395
- }
1396
- } : {}), projectKey, asyncDispatch);
1404
+ } : {})
1405
+ }, projectKey, asyncDispatch);
1397
1406
  const newAbortController = uploadFileForImport({
1398
1407
  projectKey,
1399
1408
  containerKey,
@@ -1471,8 +1480,8 @@ const useImportPermission = () => {
1471
1480
  };
1472
1481
  };
1473
1482
 
1474
- function ownKeys$c(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
1475
- function _objectSpread$c(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$c(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$c(Object(t))).call(_context4, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
1483
+ function ownKeys$d(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
1484
+ function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var _context3, _context4; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$d(Object(t), !0)).call(_context3, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$d(Object(t))).call(_context4, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
1476
1485
  const FileDropArea = () => {
1477
1486
  const intl = reactIntl.useIntl();
1478
1487
  const _useImportResourcesCo = useImportResourcesContext(),
@@ -1502,7 +1511,7 @@ const FileDropArea = () => {
1502
1511
  showNotification({
1503
1512
  kind: 'error',
1504
1513
  domain: constants.DOMAINS.PAGE,
1505
- text: intl.formatMessage(messages$7.tooManyFilesError)
1514
+ text: intl.formatMessage(messages$8.tooManyFilesError)
1506
1515
  });
1507
1516
  return;
1508
1517
  }
@@ -1510,13 +1519,13 @@ const FileDropArea = () => {
1510
1519
  showNotification({
1511
1520
  kind: 'error',
1512
1521
  domain: constants.DOMAINS.PAGE,
1513
- text: intl.formatMessage(messages$7.fileFormatNotSupported)
1522
+ text: intl.formatMessage(messages$8.fileFormatNotSupported)
1514
1523
  });
1515
1524
  } else {
1516
1525
  showNotification({
1517
1526
  kind: 'error',
1518
1527
  domain: constants.DOMAINS.PAGE,
1519
- text: intl.formatMessage(messages$7.genericError)
1528
+ text: intl.formatMessage(messages$8.genericError)
1520
1529
  });
1521
1530
  }
1522
1531
  }
@@ -1534,11 +1543,11 @@ const FileDropArea = () => {
1534
1543
  resourceType: 'category',
1535
1544
  isFileDropped: Boolean(state.droppedFile)
1536
1545
  });
1537
- return jsxRuntime.jsxs(DropWrapper, _objectSpread$c(_objectSpread$c({
1546
+ return jsxRuntime.jsxs(DropWrapper, _objectSpread$d(_objectSpread$d({
1538
1547
  role: "presentation"
1539
1548
  }, getRootProps()), {}, {
1540
1549
  dropAreaState: dropAreaState,
1541
- children: [jsxRuntime.jsx("input", _objectSpread$c({
1550
+ children: [jsxRuntime.jsx("input", _objectSpread$d({
1542
1551
  "data-testid": "file-input"
1543
1552
  }, getInputProps())), jsxRuntime.jsx(uiKit.Constraints.Horizontal, {
1544
1553
  children: dropArea
@@ -1546,6 +1555,82 @@ const FileDropArea = () => {
1546
1555
  }));
1547
1556
  };
1548
1557
 
1558
+ var messages$6 = reactIntl.defineMessages({
1559
+ separatorTitle: {
1560
+ id: 'ImportResourcesModal.uploadSeparator.separatorTitle',
1561
+ description: 'Title for the separator selection',
1562
+ defaultMessage: 'Separator'
1563
+ },
1564
+ decimalsSeparatorDescription: {
1565
+ id: 'ImportResourcesModal.uploadSeparator.decimalsSeparatorDescription',
1566
+ description: 'Description for the decimals separator selection',
1567
+ defaultMessage: 'Select the decimals separator that match your CSV file. The column separator is automatically detected.'
1568
+ },
1569
+ decimalSeparatorPoint: {
1570
+ id: 'ImportResourcesModal.uploadSeparator.decimalSeparatorPoint',
1571
+ description: 'Label for point decimal separator option',
1572
+ defaultMessage: 'point (.)'
1573
+ },
1574
+ decimalSeparatorComma: {
1575
+ id: 'ImportResourcesModal.uploadSeparator.decimalSeparatorComma',
1576
+ description: 'Label for comma decimal separator option',
1577
+ defaultMessage: 'comma (,)'
1578
+ },
1579
+ decimals: {
1580
+ id: 'ImportResourcesModal.uploadSeparator.decimals',
1581
+ description: 'Label for decimal separator select',
1582
+ defaultMessage: 'Decimals'
1583
+ }
1584
+ });
1585
+
1586
+ function ownKeys$c(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
1587
+ function _objectSpread$c(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$c(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$c(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
1588
+ const DECIMAL_DELIMITER_OPTIONS = [{
1589
+ label: messages$6.decimalSeparatorPoint,
1590
+ value: DELIMITERS.POINT
1591
+ }, {
1592
+ label: messages$6.decimalSeparatorComma,
1593
+ value: DELIMITERS.COMMA
1594
+ }];
1595
+ const decimalSeparatorOptions = _mapInstanceProperty__default["default"](DECIMAL_DELIMITER_OPTIONS).call(DECIMAL_DELIMITER_OPTIONS, option => _objectSpread$c(_objectSpread$c({}, option), {}, {
1596
+ label: jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$c({}, option.label))
1597
+ }));
1598
+ var _ref$1 = {
1599
+ name: "lt3z56",
1600
+ styles: "width:calc(50% - 16px)"
1601
+ } ;
1602
+ const UploadSeparator = () => {
1603
+ const intl = reactIntl.useIntl();
1604
+ const _useImportResourcesCo = useImportResourcesContext(),
1605
+ state = _useImportResourcesCo.state,
1606
+ actions = _useImportResourcesCo.actions;
1607
+ return jsxRuntime.jsxs(uiKit.Spacings.Stack, {
1608
+ scale: "m",
1609
+ children: [jsxRuntime.jsxs("div", {
1610
+ children: [jsxRuntime.jsx(uiKit.Text.Subheadline, {
1611
+ as: "h4",
1612
+ intlMessage: messages$6.separatorTitle
1613
+ }), jsxRuntime.jsx(uiKit.Text.Caption, {
1614
+ tone: "tertiary",
1615
+ intlMessage: messages$6.decimalsSeparatorDescription
1616
+ })]
1617
+ }), jsxRuntime.jsx("div", {
1618
+ css: _ref$1,
1619
+ children: jsxRuntime.jsx(uiKit.SelectField, {
1620
+ title: intl.formatMessage(messages$6.decimals),
1621
+ isSearchable: false,
1622
+ options: decimalSeparatorOptions,
1623
+ value: state.settings?.decimalSeparator,
1624
+ onChange: e => {
1625
+ actions.setUploadSettings({
1626
+ decimalSeparator: e.target.value
1627
+ });
1628
+ }
1629
+ })
1630
+ })]
1631
+ });
1632
+ };
1633
+
1549
1634
  var messages$5 = reactIntl.defineMessages({
1550
1635
  publishProducts: {
1551
1636
  id: 'ImportResourcesModal.settings.publishProducts',
@@ -1561,6 +1646,7 @@ const UploadProductSettings = () => {
1561
1646
  state = _useImportResourcesCo.state,
1562
1647
  actions = _useImportResourcesCo.actions;
1563
1648
  return jsxRuntime.jsx(uiKit.CheckboxInput, {
1649
+ "data-tracking-target": 'product_import-publish_checkbox',
1564
1650
  isChecked: state.settings?.publish,
1565
1651
  onChange: e => {
1566
1652
  actions.setUploadSettings({
@@ -1608,28 +1694,28 @@ const Upload = () => {
1608
1694
  },
1609
1695
  children: jsxRuntime.jsx(fullstory.Masking.Unmask, {
1610
1696
  children: jsxRuntime.jsxs(uiKit.Spacings.Stack, {
1611
- scale: "m",
1697
+ scale: "l",
1612
1698
  children: [isMultipleResourceTypes ? jsxRuntime.jsxs(uiKit.Grid, {
1613
1699
  gridRowGap: uiKit.designTokens.spacingL,
1614
1700
  gridTemplateColumns: `calc(${uiKit.designTokens.constraint3} + ${uiKit.designTokens.spacingL}) auto`,
1615
1701
  children: [jsxRuntime.jsx(uiKit.Grid.Item, {
1616
1702
  children: jsxRuntime.jsx(uiKit.Text.Body, {
1617
1703
  isBold: true,
1618
- intlMessage: messages$7.dataType
1704
+ intlMessage: messages$8.dataType
1619
1705
  })
1620
1706
  }), jsxRuntime.jsx(uiKit.Grid.Item, {
1621
1707
  children: jsxRuntime.jsx(ResourceTypeSelection, {})
1622
1708
  }), jsxRuntime.jsx(uiKit.Grid.Item, {
1623
1709
  children: jsxRuntime.jsx(uiKit.Text.Body, {
1624
1710
  isBold: true,
1625
- intlMessage: messages$7.instructions
1711
+ intlMessage: messages$8.instructions
1626
1712
  })
1627
1713
  }), jsxRuntime.jsx(uiKit.Grid.Item, {
1628
1714
  children: jsxRuntime.jsx(Instructions, {})
1629
1715
  })]
1630
1716
  }) : jsxRuntime.jsx(jsxRuntime.Fragment, {
1631
1717
  children: jsxRuntime.jsx(Instructions, {})
1632
- }), jsxRuntime.jsx(InfoBox, {}), jsxRuntime.jsx(fullstory.Masking.Mask, {
1718
+ }), jsxRuntime.jsx(InfoBox, {}), jsxRuntime.jsx(UploadSeparator, {}), jsxRuntime.jsx(fullstory.Masking.Mask, {
1633
1719
  children: jsxRuntime.jsx(FileDropArea, {})
1634
1720
  }), jsxRuntime.jsx(UploadSettings, {})]
1635
1721
  })
@@ -2516,17 +2602,17 @@ const getChunkImport = locale => {
2516
2602
  const intlLocale = i18n.mapLocaleToIntlLocale(locale);
2517
2603
  switch (intlLocale) {
2518
2604
  case 'de':
2519
- return Promise.resolve().then(function () { return require('./de-2836a9ae.cjs.prod.js'); });
2605
+ return Promise.resolve().then(function () { return require('./de-a33f40b4.cjs.prod.js'); });
2520
2606
  case 'es':
2521
- return Promise.resolve().then(function () { return require('./es-f085026e.cjs.prod.js'); });
2607
+ return Promise.resolve().then(function () { return require('./es-02f8a321.cjs.prod.js'); });
2522
2608
  case 'fr-FR':
2523
- return Promise.resolve().then(function () { return require('./fr-FR-dc40a55c.cjs.prod.js'); });
2609
+ return Promise.resolve().then(function () { return require('./fr-FR-078895d6.cjs.prod.js'); });
2524
2610
  case 'ja':
2525
2611
  return Promise.resolve().then(function () { return require('./ja-37632763.cjs.prod.js'); });
2526
2612
  case 'pt-BR':
2527
- return Promise.resolve().then(function () { return require('./pt-BR-31c46d23.cjs.prod.js'); });
2613
+ return Promise.resolve().then(function () { return require('./pt-BR-a50aa3dd.cjs.prod.js'); });
2528
2614
  default:
2529
- return Promise.resolve().then(function () { return require('./en-cb6893e4.cjs.prod.js'); });
2615
+ return Promise.resolve().then(function () { return require('./en-647cd603.cjs.prod.js'); });
2530
2616
  }
2531
2617
  };
2532
2618
  const loadMessages = async locale => {
@@ -2610,6 +2696,6 @@ exports.EnabledDropArea = EnabledDropArea;
2610
2696
  exports.FileDropped = FileDropped;
2611
2697
  exports.FileIcon = FileIcon;
2612
2698
  exports.ImportResourcesModal = ImportResourcesModal;
2613
- exports.messages = messages$7;
2699
+ exports.messages = messages$8;
2614
2700
  exports.useImportPermission = useImportPermission;
2615
2701
  exports.useImportResourcesContext = useImportResourcesContext;
@@ -6,11 +6,11 @@ var ptBR = {
6
6
  },
7
7
  "ImportResourcesModal.business-unit": {
8
8
  developer_comment: "Label for the business-unit resource type",
9
- string: "Business unit"
9
+ string: "Unidade de negócios"
10
10
  },
11
11
  "ImportResourcesModal.business-units": {
12
12
  developer_comment: "Label for the business-units resource type",
13
- string: "Business units"
13
+ string: "Unidades de negócios"
14
14
  },
15
15
  "ImportResourcesModal.cancel": {
16
16
  developer_comment: "Label for the cancel button",
@@ -178,7 +178,7 @@ var ptBR = {
178
178
  },
179
179
  "ImportResourcesModal.modalTitle.businessUnit": {
180
180
  developer_comment: "Label for the business units modal title",
181
- string: "Import business units by CSV"
181
+ string: "Importar unidades de negócios por CSV"
182
182
  },
183
183
  "ImportResourcesModal.modalTitle.category": {
184
184
  developer_comment: "Label for the categories modal title",
@@ -6,11 +6,11 @@ var ptBR = {
6
6
  },
7
7
  "ImportResourcesModal.business-unit": {
8
8
  developer_comment: "Label for the business-unit resource type",
9
- string: "Business unit"
9
+ string: "Unidade de negócios"
10
10
  },
11
11
  "ImportResourcesModal.business-units": {
12
12
  developer_comment: "Label for the business-units resource type",
13
- string: "Business units"
13
+ string: "Unidades de negócios"
14
14
  },
15
15
  "ImportResourcesModal.cancel": {
16
16
  developer_comment: "Label for the cancel button",
@@ -178,7 +178,7 @@ var ptBR = {
178
178
  },
179
179
  "ImportResourcesModal.modalTitle.businessUnit": {
180
180
  developer_comment: "Label for the business units modal title",
181
- string: "Import business units by CSV"
181
+ string: "Importar unidades de negócios por CSV"
182
182
  },
183
183
  "ImportResourcesModal.modalTitle.category": {
184
184
  developer_comment: "Label for the categories modal title",