@commercetools-frontend-extensions/export-resources-modal 4.0.3 → 4.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +1 -1
  2. package/dist/commercetools-frontend-extensions-export-resources-modal.cjs.dev.js +96 -29
  3. package/dist/commercetools-frontend-extensions-export-resources-modal.cjs.prod.js +83 -25
  4. package/dist/commercetools-frontend-extensions-export-resources-modal.esm.js +96 -29
  5. package/dist/de-061f704f.cjs.prod.js +125 -0
  6. package/dist/de-2053e30c.esm.js +123 -0
  7. package/dist/de-ab9aa191.cjs.dev.js +125 -0
  8. package/dist/declarations/src/@constants/misc.d.ts +1 -0
  9. package/dist/es-294da86d.cjs.prod.js +125 -0
  10. package/dist/es-6f6ac776.esm.js +123 -0
  11. package/dist/es-b57ba755.cjs.dev.js +125 -0
  12. package/dist/fr-FR-5ed7b9c1.cjs.prod.js +125 -0
  13. package/dist/fr-FR-65460b2c.esm.js +123 -0
  14. package/dist/fr-FR-d7209a15.cjs.dev.js +125 -0
  15. package/dist/pt-BR-50312992.esm.js +123 -0
  16. package/dist/pt-BR-6eb85adb.cjs.prod.js +125 -0
  17. package/dist/pt-BR-7c94da38.cjs.dev.js +125 -0
  18. package/dist/zh-CN-a4a57cea.cjs.dev.js +125 -0
  19. package/dist/zh-CN-b1180dfd.cjs.prod.js +125 -0
  20. package/dist/zh-CN-db13f016.esm.js +123 -0
  21. package/package.json +9 -9
  22. package/dist/de-a34c5dd4.cjs.dev.js +0 -6
  23. package/dist/de-cd6c45d3.esm.js +0 -4
  24. package/dist/de-d954fe3d.cjs.prod.js +0 -6
  25. package/dist/es-042343bd.cjs.prod.js +0 -6
  26. package/dist/es-8b3ecab1.cjs.dev.js +0 -6
  27. package/dist/es-e544023d.esm.js +0 -4
  28. package/dist/fr-FR-9d9081ee.esm.js +0 -4
  29. package/dist/fr-FR-e7126fcc.cjs.dev.js +0 -6
  30. package/dist/fr-FR-fce1ca96.cjs.prod.js +0 -6
  31. package/dist/pt-BR-b37d730b.esm.js +0 -4
  32. package/dist/pt-BR-ea6b3251.cjs.dev.js +0 -6
  33. package/dist/pt-BR-ec2a1a11.cjs.prod.js +0 -6
  34. package/dist/zh-CN-4780d88e.esm.js +0 -4
  35. package/dist/zh-CN-52baa549.cjs.prod.js +0 -6
  36. package/dist/zh-CN-d4bc6d26.cjs.dev.js +0 -6
@@ -15,7 +15,6 @@ var reactIntl = require('react-intl');
15
15
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
16
16
  var uiKit = require('@commercetools-frontend/ui-kit');
17
17
  var jsxRuntime = require('@emotion/react/jsx-runtime');
18
- require('@commercetools-uikit/design-system');
19
18
  var _valuesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/values');
20
19
  var applicationComponents = require('@commercetools-frontend/application-components');
21
20
  var _Reflect$construct = require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
@@ -26,6 +25,7 @@ var _possibleConstructorReturn = require('@babel/runtime-corejs3/helpers/possibl
26
25
  var _getPrototypeOf = require('@babel/runtime-corejs3/helpers/getPrototypeOf');
27
26
  var _wrapNativeSuper = require('@babel/runtime-corejs3/helpers/wrapNativeSuper');
28
27
  var React = require('react');
28
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
29
29
  var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
30
30
  var moment = require('moment');
31
31
  var _someInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/some');
@@ -36,10 +36,10 @@ var _Array$isArray = require('@babel/runtime-corejs3/core-js-stable/array/is-arr
36
36
  var _Set = require('@babel/runtime-corejs3/core-js-stable/set');
37
37
  var _sortInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/sort');
38
38
  var _indexOfInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
39
+ var experimentalComponents = require('@commercetools-frontend/experimental-components');
39
40
  var sdk = require('@commercetools-frontend/sdk');
40
41
  var actionsGlobal = require('@commercetools-frontend/actions-global');
41
42
  var constants = require('@commercetools-frontend/constants');
42
- var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
43
43
  var _styled = require('@emotion/styled/base');
44
44
  var _everyInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/every');
45
45
  var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
@@ -270,6 +270,7 @@ function renderLocaleError(key) {
270
270
  }
271
271
 
272
272
  const Z_INDEX_DROPDOWN = 30000;
273
+ const OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION = 'OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION';
273
274
 
274
275
  const EXPORT_OPERATION_STATES = {
275
276
  PROCESSING: 'processing',
@@ -512,14 +513,27 @@ function tmpBuildFilters(selectedResourceIds) {
512
513
  }
513
514
 
514
515
  function ownKeys$3(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; }
515
- function _objectSpread$3(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$3(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$3(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
516
- const updateFieldGroupsWithIsCheckedValue = groups => {
517
- const updateFields = (fields, parentChecked) => {
516
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var _context4, _context5; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys$3(Object(t), !0)).call(_context4, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys$3(Object(t))).call(_context5, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
517
+ const updateFieldGroupsWithIsCheckedValue = (groups, cachedSelectedGroups) => {
518
+ const updateFields = (fields, parentChecked, fieldName) => {
518
519
  return _mapInstanceProperty__default["default"](fields).call(fields, field => {
519
- var _field$isRequired;
520
- let isChecked = ((_field$isRequired = field.isRequired) !== null && _field$isRequired !== void 0 ? _field$isRequired : !field.isReadOnly && field.isSelectedByDefault) || parentChecked;
520
+ let isChecked = false;
521
+ if (field.isRequired) {
522
+ isChecked = true;
523
+ } else {
524
+ var _context;
525
+ if (cachedSelectedGroups[_concatInstanceProperty__default["default"](_context = "".concat(fieldName, ".")).call(_context, field.name)] !== undefined) {
526
+ var _context2;
527
+ isChecked = cachedSelectedGroups[_concatInstanceProperty__default["default"](_context2 = "".concat(fieldName, ".")).call(_context2, field.name)];
528
+ } else if (!field.isReadOnly && field.isSelectedByDefault) {
529
+ isChecked = true;
530
+ } else if (parentChecked) {
531
+ isChecked = true;
532
+ }
533
+ }
521
534
  if (field.fields) {
522
- const updatedFields = updateFields(field.fields, isChecked);
535
+ var _context3;
536
+ const updatedFields = updateFields(field.fields, isChecked, _concatInstanceProperty__default["default"](_context3 = "".concat(fieldName, ".")).call(_context3, field.name));
523
537
  isChecked = false;
524
538
  field.fields = updatedFields;
525
539
  }
@@ -529,7 +543,7 @@ const updateFieldGroupsWithIsCheckedValue = groups => {
529
543
  });
530
544
  };
531
545
  return _mapInstanceProperty__default["default"](groups).call(groups, group => {
532
- const updatedFields = updateFields(group.fields, false);
546
+ const updatedFields = updateFields(group.fields, false, group.groupLabel);
533
547
  return _objectSpread$3(_objectSpread$3({}, group), {}, {
534
548
  fields: updatedFields
535
549
  });
@@ -555,25 +569,36 @@ const updateFieldGroupWithAdditionalFieldExtensions = groups => {
555
569
  };
556
570
 
557
571
  const useInitialValues = props => {
572
+ var _context;
558
573
  const todayFormatted = moment__default["default"]().format('DD-MM-YY_HH-mm');
559
574
  const _useApplicationContex = applicationShellConnectors.useApplicationContext(applicationContext => ({
560
575
  locale: applicationContext.dataLocale
561
576
  })),
562
577
  locale = _useApplicationContex.locale;
563
- const groups = updateFieldGroupsWithIsCheckedValue(props.fieldGroups);
578
+ const _useApplicationContex2 = applicationShellConnectors.useApplicationContext(context => {
579
+ var _context$project;
580
+ return {
581
+ projectKey: (_context$project = context.project) === null || _context$project === void 0 ? void 0 : _context$project.key
582
+ };
583
+ }),
584
+ projectKey = _useApplicationContex2.projectKey;
585
+ const _useStorage = experimentalComponents.useStorage(_concatInstanceProperty__default["default"](_context = "".concat(projectKey, "/")).call(_context, OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION), {}),
586
+ _useStorage2 = _slicedToArray(_useStorage, 1),
587
+ cachedSelectedGroups = _useStorage2[0];
564
588
  return React__default["default"].useMemo(() => {
565
- var _context;
589
+ var _context2;
590
+ const groups = updateFieldGroupsWithIsCheckedValue(props.fieldGroups, cachedSelectedGroups[props.resourceType] || {});
566
591
  return {
567
592
  outputFormat: props.outputFormat,
568
- fileName: _concatInstanceProperty__default["default"](_context = "".concat(resourceTypeToDisplayName({
593
+ fileName: _concatInstanceProperty__default["default"](_context2 = "".concat(resourceTypeToDisplayName({
569
594
  resourceType: props.resourceType,
570
595
  isUpperCase: true,
571
596
  isPlural: true
572
- }), "_Export_")).call(_context, todayFormatted),
597
+ }), "_Export_")).call(_context2, todayFormatted),
573
598
  locales: [locale],
574
599
  groups: updateFieldGroupWithAdditionalFieldExtensions(groups)
575
600
  };
576
- }, [props, locale, todayFormatted, groups]);
601
+ }, [props.fieldGroups, props.outputFormat, props.resourceType, cachedSelectedGroups, todayFormatted, locale]);
577
602
  };
578
603
 
579
604
  async function createExportOperation(_ref) {
@@ -846,7 +871,13 @@ const NoSearchResults = () => {
846
871
  };
847
872
 
848
873
  function ownKeys$1(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; }
849
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var _context7, _context8; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context7 = ownKeys$1(Object(t), !0)).call(_context7, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context8 = ownKeys$1(Object(t))).call(_context8, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
874
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var _context11, _context12; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context11 = ownKeys$1(Object(t), !0)).call(_context11, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context12 = ownKeys$1(Object(t))).call(_context12, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
875
+ const StyledGridCard = /*#__PURE__*/_styled__default["default"](uiKit.Card, {
876
+ target: "e3xiyhb2"
877
+ } )({
878
+ name: "1lf8z6",
879
+ styles: "max-height:50vh;overflow:auto"
880
+ } );
850
881
  const StyledGroupCard = /*#__PURE__*/_styled__default["default"](uiKit.Card, {
851
882
  target: "e3xiyhb1"
852
883
  } )("border-right:", uiKit.designTokens.borderWidth1, " solid ", uiKit.designTokens.colorNeutral90, ";background-color:", uiKit.designTokens.colorNeutral98, ";height:100%;border-radius:0;", props => props.showTopBorder && /*#__PURE__*/react.css("border-top:", uiKit.designTokens.borderWidth1, " solid ", uiKit.designTokens.colorNeutral90, ";" + ("" ), "" ), ";" + ("" ));
@@ -995,11 +1026,23 @@ const FieldGroupSection = _ref2 => {
995
1026
  });
996
1027
  };
997
1028
  const ExportFieldsSelectionStep = () => {
1029
+ var _context5;
998
1030
  const intl = reactIntl.useIntl();
999
1031
  const _React$useState = React__default["default"].useState(''),
1000
1032
  _React$useState2 = _slicedToArray(_React$useState, 2),
1001
1033
  fieldSearchTerm = _React$useState2[0],
1002
1034
  setFieldSearchTerm = _React$useState2[1];
1035
+ const _useApplicationContex = applicationShellConnectors.useApplicationContext(context => {
1036
+ var _context$project;
1037
+ return {
1038
+ projectKey: (_context$project = context.project) === null || _context$project === void 0 ? void 0 : _context$project.key
1039
+ };
1040
+ }),
1041
+ projectKey = _useApplicationContex.projectKey;
1042
+ const _useStorage = experimentalComponents.useStorage(_concatInstanceProperty__default["default"](_context5 = "".concat(projectKey, "/")).call(_context5, OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION), {}),
1043
+ _useStorage2 = _slicedToArray(_useStorage, 2);
1044
+ _useStorage2[0];
1045
+ const setCachedSelectedGroups = _useStorage2[1];
1003
1046
  const _useExportResourcesCo = useExportResourcesContext(),
1004
1047
  formik = _useExportResourcesCo.formik,
1005
1048
  setCurrentStep = _useExportResourcesCo.setCurrentStep,
@@ -1010,16 +1053,31 @@ const ExportFieldsSelectionStep = () => {
1010
1053
  isPlural: true
1011
1054
  });
1012
1055
  React__default["default"].useEffect(() => {
1056
+ var _context8;
1013
1057
  formik.validateForm();
1058
+ const selectedFields = {};
1059
+ function getSelectedFields(field, groupName) {
1060
+ var _context6;
1061
+ const fieldName = field.name ? _concatInstanceProperty__default["default"](_context6 = "".concat(groupName, ".")).call(_context6, field.name) : groupName;
1062
+ if (field.fields) {
1063
+ var _context7;
1064
+ return _forEachInstanceProperty__default["default"](_context7 = field.fields).call(_context7, f => getSelectedFields(f, fieldName));
1065
+ }
1066
+ selectedFields[fieldName] = field.isChecked;
1067
+ }
1068
+ _forEachInstanceProperty__default["default"](_context8 = _valuesInstanceProperty__default["default"](formik).groups).call(_context8, group => getSelectedFields(group, group.groupLabel));
1069
+ setCachedSelectedGroups({
1070
+ [resourceType]: selectedFields
1071
+ });
1014
1072
  // eslint-disable-next-line react-hooks/exhaustive-deps
1015
1073
  }, [_valuesInstanceProperty__default["default"](formik).groups]);
1016
1074
  // adds `isHidden` property to each field based on search term
1017
1075
  const filteredGroups = React__default["default"].useMemo(() => {
1018
- var _fieldSearchTerm$trim, _context6;
1076
+ var _fieldSearchTerm$trim, _context10;
1019
1077
  const updateFields = (fields, parentMatches) => {
1020
1078
  return _mapInstanceProperty__default["default"](fields).call(fields, field => {
1021
- var _context5;
1022
- const matches = _includesInstanceProperty__default["default"](_context5 = field.label.toLowerCase()).call(_context5, fieldSearchTerm.toLowerCase());
1079
+ var _context9;
1080
+ const matches = _includesInstanceProperty__default["default"](_context9 = field.label.toLowerCase()).call(_context9, fieldSearchTerm.toLowerCase());
1023
1081
  let isHidden = !matches && !parentMatches;
1024
1082
  if (field.fields) {
1025
1083
  const updatedFields = updateFields(field.fields, matches);
@@ -1034,7 +1092,7 @@ const ExportFieldsSelectionStep = () => {
1034
1092
  });
1035
1093
  };
1036
1094
  if (!(fieldSearchTerm !== null && fieldSearchTerm !== void 0 && (_fieldSearchTerm$trim = _trimInstanceProperty__default["default"](fieldSearchTerm).call(fieldSearchTerm)) !== null && _fieldSearchTerm$trim !== void 0 && _fieldSearchTerm$trim.length)) return _valuesInstanceProperty__default["default"](formik).groups;
1037
- return _mapInstanceProperty__default["default"](_context6 = _valuesInstanceProperty__default["default"](formik).groups).call(_context6, group => {
1095
+ return _mapInstanceProperty__default["default"](_context10 = _valuesInstanceProperty__default["default"](formik).groups).call(_context10, group => {
1038
1096
  const updatedFields = updateFields(group.fields, false);
1039
1097
  const isHidden = _everyInstanceProperty__default["default"](updatedFields).call(updatedFields, field => field.isHidden);
1040
1098
  return _objectSpread$1(_objectSpread$1({}, group), {}, {
@@ -1085,7 +1143,7 @@ const ExportFieldsSelectionStep = () => {
1085
1143
  // TODO: `SearchTextInput` props to be improved. The `onSubmit` callback shouldn't be mandatory
1086
1144
  ,
1087
1145
  onSubmit: () => {}
1088
- }), hasResults ? jsxRuntime.jsx(uiKit.Card, {
1146
+ }), hasResults ? jsxRuntime.jsx(StyledGridCard, {
1089
1147
  insetScale: "none",
1090
1148
  children: jsxRuntime.jsx(uiKit.Grid, {
1091
1149
  gridAutoFlow: "row",
@@ -1159,17 +1217,17 @@ const getChunkImport = locale => {
1159
1217
  const intlLocale = i18n.mapLocaleToIntlLocale(locale);
1160
1218
  switch (intlLocale) {
1161
1219
  case 'de':
1162
- return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-de" */'./de-d954fe3d.cjs.prod.js'); });
1220
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-de" */'./de-061f704f.cjs.prod.js'); });
1163
1221
  case 'es':
1164
- return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-es" */'./es-042343bd.cjs.prod.js'); });
1222
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-es" */'./es-294da86d.cjs.prod.js'); });
1165
1223
  case 'fr-FR':
1166
- return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-fr-FR" */'./fr-FR-fce1ca96.cjs.prod.js'); });
1224
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-fr-FR" */'./fr-FR-5ed7b9c1.cjs.prod.js'); });
1167
1225
  case 'zh-CN':
1168
- return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-zh-CN" */'./zh-CN-52baa549.cjs.prod.js'); });
1226
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-zh-CN" */'./zh-CN-b1180dfd.cjs.prod.js'); });
1169
1227
  case 'ja':
1170
1228
  return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-ja" */'./ja-37632763.cjs.prod.js'); });
1171
1229
  case 'pt-BR':
1172
- return Promise.resolve().then(function () { return require( /* webpackChunkName: "change-history-i18n-pt-BR" */'./pt-BR-ec2a1a11.cjs.prod.js'); });
1230
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "change-history-i18n-pt-BR" */'./pt-BR-6eb85adb.cjs.prod.js'); });
1173
1231
  default:
1174
1232
  return Promise.resolve().then(function () { return require( /* webpackChunkName: "export-resources-modal-i18n-en" */'./en-7a050c00.cjs.prod.js'); });
1175
1233
  }