@commercetools-frontend-extensions/export-resources-modal 4.2.1 → 4.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.
- package/README.md +10 -1
- package/dist/commercetools-frontend-extensions-export-resources-modal.cjs.dev.js +492 -209
- package/dist/commercetools-frontend-extensions-export-resources-modal.cjs.prod.js +456 -191
- package/dist/commercetools-frontend-extensions-export-resources-modal.esm.js +491 -208
- package/dist/declarations/src/@constants/misc.d.ts +1 -0
- package/dist/declarations/src/@types/export-resources-modal-shape.d.ts +5 -0
- package/dist/declarations/src/@types/formik.d.ts +10 -0
- package/package.json +6 -6
|
@@ -26,7 +26,6 @@ var _getPrototypeOf = require('@babel/runtime-corejs3/helpers/getPrototypeOf');
|
|
|
26
26
|
var _inherits = require('@babel/runtime-corejs3/helpers/inherits');
|
|
27
27
|
var _wrapNativeSuper = require('@babel/runtime-corejs3/helpers/wrapNativeSuper');
|
|
28
28
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
29
|
-
var _someInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/some');
|
|
30
29
|
var _reduceInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
31
30
|
var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
32
31
|
var omitEmpty = require('omit-empty-es');
|
|
@@ -36,14 +35,15 @@ var _Set = require('@babel/runtime-corejs3/core-js-stable/set');
|
|
|
36
35
|
var _sortInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/sort');
|
|
37
36
|
var _indexOfInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
|
|
38
37
|
var moment = require('moment');
|
|
38
|
+
var _someInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/some');
|
|
39
|
+
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
40
|
+
var _everyInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/every');
|
|
39
41
|
var experimentalComponents = require('@commercetools-frontend/experimental-components');
|
|
40
42
|
var sdk = require('@commercetools-frontend/sdk');
|
|
41
43
|
var actionsGlobal = require('@commercetools-frontend/actions-global');
|
|
42
44
|
var constants = require('@commercetools-frontend/constants');
|
|
43
45
|
var _styled = require('@emotion/styled/base');
|
|
44
|
-
var _everyInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/every');
|
|
45
46
|
var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
|
|
46
|
-
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
47
47
|
var throttle = require('lodash/throttle');
|
|
48
48
|
var react = require('@emotion/react');
|
|
49
49
|
var get = require('lodash/get');
|
|
@@ -65,7 +65,6 @@ var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defin
|
|
|
65
65
|
var _valuesInstanceProperty__default = /*#__PURE__*/_interopDefault(_valuesInstanceProperty);
|
|
66
66
|
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
67
67
|
var _Reflect$construct__default = /*#__PURE__*/_interopDefault(_Reflect$construct);
|
|
68
|
-
var _someInstanceProperty__default = /*#__PURE__*/_interopDefault(_someInstanceProperty);
|
|
69
68
|
var _reduceInstanceProperty__default = /*#__PURE__*/_interopDefault(_reduceInstanceProperty);
|
|
70
69
|
var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
|
|
71
70
|
var omitEmpty__default = /*#__PURE__*/_interopDefault(omitEmpty);
|
|
@@ -75,10 +74,11 @@ var _Set__default = /*#__PURE__*/_interopDefault(_Set);
|
|
|
75
74
|
var _sortInstanceProperty__default = /*#__PURE__*/_interopDefault(_sortInstanceProperty);
|
|
76
75
|
var _indexOfInstanceProperty__default = /*#__PURE__*/_interopDefault(_indexOfInstanceProperty);
|
|
77
76
|
var moment__default = /*#__PURE__*/_interopDefault(moment);
|
|
78
|
-
var
|
|
77
|
+
var _someInstanceProperty__default = /*#__PURE__*/_interopDefault(_someInstanceProperty);
|
|
78
|
+
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
79
79
|
var _everyInstanceProperty__default = /*#__PURE__*/_interopDefault(_everyInstanceProperty);
|
|
80
|
+
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
80
81
|
var _includesInstanceProperty__default = /*#__PURE__*/_interopDefault(_includesInstanceProperty);
|
|
81
|
-
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
82
82
|
var throttle__default = /*#__PURE__*/_interopDefault(throttle);
|
|
83
83
|
var get__default = /*#__PURE__*/_interopDefault(get);
|
|
84
84
|
|
|
@@ -268,17 +268,22 @@ var messages = reactIntl.defineMessages({
|
|
|
268
268
|
id: 'ExportResourcesModal.exportSettings',
|
|
269
269
|
description: 'Label for Export Settings',
|
|
270
270
|
defaultMessage: 'Settings'
|
|
271
|
+
},
|
|
272
|
+
selected: {
|
|
273
|
+
id: 'ExportResourcesModal.selected',
|
|
274
|
+
description: 'Label for total Selected',
|
|
275
|
+
defaultMessage: '{total} selected'
|
|
271
276
|
}
|
|
272
277
|
});
|
|
273
278
|
|
|
274
|
-
function ownKeys$
|
|
275
|
-
function _objectSpread$
|
|
279
|
+
function ownKeys$7(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; }
|
|
280
|
+
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__default["default"](_context = ownKeys$7(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$7(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
276
281
|
function renderFileNameError(key) {
|
|
277
282
|
switch (key) {
|
|
278
283
|
case 'missing':
|
|
279
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
284
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$7({}, messages.missingFileNameError));
|
|
280
285
|
case 'invalidInput':
|
|
281
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
286
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$7({}, messages.invalidFileNameError));
|
|
282
287
|
default:
|
|
283
288
|
return null;
|
|
284
289
|
}
|
|
@@ -286,7 +291,7 @@ function renderFileNameError(key) {
|
|
|
286
291
|
function renderLocaleError(key) {
|
|
287
292
|
switch (key) {
|
|
288
293
|
case 'missing':
|
|
289
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
294
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$7({}, messages.missingLocaleError));
|
|
290
295
|
default:
|
|
291
296
|
return null;
|
|
292
297
|
}
|
|
@@ -356,10 +361,10 @@ function useExportResourcesContext() {
|
|
|
356
361
|
return context;
|
|
357
362
|
}
|
|
358
363
|
|
|
359
|
-
function checkAtLeastOneFieldChecked
|
|
360
|
-
return
|
|
364
|
+
function checkAtLeastOneFieldChecked(fields) {
|
|
365
|
+
return fields?.some(field => {
|
|
361
366
|
if (field.fields) {
|
|
362
|
-
return field.isChecked || checkAtLeastOneFieldChecked
|
|
367
|
+
return field.isChecked || checkAtLeastOneFieldChecked(field.fields);
|
|
363
368
|
}
|
|
364
369
|
return field.isChecked;
|
|
365
370
|
});
|
|
@@ -389,7 +394,7 @@ function validate(_ref) {
|
|
|
389
394
|
if (step === 2) {
|
|
390
395
|
const allFields = _reduceInstanceProperty__default["default"](groups).call(groups, (acc, group) => _concatInstanceProperty__default["default"](acc).call(acc, group.fields), []);
|
|
391
396
|
const checkedFieldsCount = _filterInstanceProperty__default["default"](allFields).call(allFields, field => {
|
|
392
|
-
if (field.fields) return checkAtLeastOneFieldChecked
|
|
397
|
+
if (field.fields) return checkAtLeastOneFieldChecked(field.fields);
|
|
393
398
|
return !field.isRequired && !field.isReadOnly && field.isChecked;
|
|
394
399
|
}).length;
|
|
395
400
|
if (checkedFieldsCount < 1) {
|
|
@@ -402,6 +407,7 @@ function validate(_ref) {
|
|
|
402
407
|
|
|
403
408
|
const Z_INDEX_DROPDOWN = 30000;
|
|
404
409
|
const OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION = 'OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION';
|
|
410
|
+
const OPERATIONS_EXPORT_RESOURCES_MODAL_EXPANDED_GROUP = 'OPERATIONS_EXPORT_RESOURCES_MODAL_EXPANDED_GROUP';
|
|
405
411
|
|
|
406
412
|
const EXPORT_OPERATION_STATES = {
|
|
407
413
|
PROCESSING: 'processing',
|
|
@@ -539,8 +545,8 @@ function tmpBuildFilters(selectedResourceIds) {
|
|
|
539
545
|
return [`id in (${formattedIds})`];
|
|
540
546
|
}
|
|
541
547
|
|
|
542
|
-
function ownKeys$
|
|
543
|
-
function _objectSpread$
|
|
548
|
+
function ownKeys$6(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; }
|
|
549
|
+
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__default["default"](_context = ownKeys$6(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$6(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
544
550
|
const updateFieldGroupsWithIsCheckedValue = (groups, cachedSelectedGroups) => {
|
|
545
551
|
const updateFields = (fields, parentChecked, fieldName) => {
|
|
546
552
|
return _mapInstanceProperty__default["default"](fields).call(fields, field => {
|
|
@@ -561,14 +567,14 @@ const updateFieldGroupsWithIsCheckedValue = (groups, cachedSelectedGroups) => {
|
|
|
561
567
|
isChecked = false;
|
|
562
568
|
field.fields = updatedFields;
|
|
563
569
|
}
|
|
564
|
-
return _objectSpread$
|
|
570
|
+
return _objectSpread$6(_objectSpread$6({}, field), {}, {
|
|
565
571
|
isChecked
|
|
566
572
|
});
|
|
567
573
|
});
|
|
568
574
|
};
|
|
569
575
|
return _mapInstanceProperty__default["default"](groups).call(groups, group => {
|
|
570
576
|
const updatedFields = updateFields(group.fields, false, group.groupLabel);
|
|
571
|
-
return _objectSpread$
|
|
577
|
+
return _objectSpread$6(_objectSpread$6({}, group), {}, {
|
|
572
578
|
fields: updatedFields
|
|
573
579
|
});
|
|
574
580
|
});
|
|
@@ -580,19 +586,83 @@ const updateFieldGroupWithAdditionalFieldExtensions = groups => {
|
|
|
580
586
|
if (field.fields) {
|
|
581
587
|
field.fields = updateAdditionalFieldExtensions(field.fields, updatedAdditionalFieldExtensions);
|
|
582
588
|
}
|
|
583
|
-
return _objectSpread$
|
|
589
|
+
return _objectSpread$6(_objectSpread$6({}, field), {}, {
|
|
584
590
|
additionalFieldExtensions: updatedAdditionalFieldExtensions
|
|
585
591
|
});
|
|
586
592
|
});
|
|
587
593
|
}
|
|
594
|
+
function combineDependentGroupNames(fields) {
|
|
595
|
+
return _reduceInstanceProperty__default["default"](fields).call(fields, (acc, field) => {
|
|
596
|
+
if (field.dependentGroupNames) {
|
|
597
|
+
acc = [...acc, ...field.dependentGroupNames];
|
|
598
|
+
}
|
|
599
|
+
if (field.fields) {
|
|
600
|
+
acc = [...acc, ...combineDependentGroupNames(field.fields)];
|
|
601
|
+
}
|
|
602
|
+
return acc;
|
|
603
|
+
}, []);
|
|
604
|
+
}
|
|
588
605
|
return _mapInstanceProperty__default["default"](groups).call(groups, group => {
|
|
589
|
-
return _objectSpread$
|
|
606
|
+
return _objectSpread$6(_objectSpread$6({}, group), {}, {
|
|
607
|
+
dependentGroupNames: combineDependentGroupNames(group.fields),
|
|
590
608
|
fields: updateAdditionalFieldExtensions(group.fields, group.additionalFieldExtensions || [])
|
|
591
609
|
});
|
|
592
610
|
});
|
|
593
611
|
};
|
|
612
|
+
const updateFieldGroupsWithIsExpandedValue = (groups, cachedExpandedGroups) => {
|
|
613
|
+
function updateFields(fields, groupName) {
|
|
614
|
+
return _mapInstanceProperty__default["default"](fields).call(fields, field => {
|
|
615
|
+
let isExpanded = null;
|
|
616
|
+
if (field.isExpandable) {
|
|
617
|
+
isExpanded = cachedExpandedGroups[`${groupName}.${field.name}`] ?? field.isExpanded ?? false;
|
|
618
|
+
}
|
|
619
|
+
if (field.fields) {
|
|
620
|
+
field.fields = updateFields(field.fields, groupName);
|
|
621
|
+
}
|
|
622
|
+
if (isExpanded !== null) {
|
|
623
|
+
return _objectSpread$6(_objectSpread$6({}, field), {}, {
|
|
624
|
+
isExpanded
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
return field;
|
|
628
|
+
});
|
|
629
|
+
}
|
|
630
|
+
return _mapInstanceProperty__default["default"](groups).call(groups, group => {
|
|
631
|
+
const updatedFields = updateFields(group.fields, group.groupName);
|
|
632
|
+
return _objectSpread$6(_objectSpread$6({}, group), {}, {
|
|
633
|
+
isExpanded: cachedExpandedGroups[group.groupName] ?? group.isExpanded ?? false,
|
|
634
|
+
fields: updatedFields
|
|
635
|
+
});
|
|
636
|
+
});
|
|
637
|
+
};
|
|
638
|
+
|
|
639
|
+
const isRequiredGroupChecked = function () {
|
|
640
|
+
let dependentGroupNames = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
641
|
+
let formik = arguments.length > 1 ? arguments[1] : undefined;
|
|
642
|
+
let result = false;
|
|
643
|
+
if (dependentGroupNames?.length) {
|
|
644
|
+
_someInstanceProperty__default["default"](dependentGroupNames).call(dependentGroupNames, dependentGroupName => {
|
|
645
|
+
var _context;
|
|
646
|
+
const dependentGroup = _findInstanceProperty__default["default"](_context = _valuesInstanceProperty__default["default"](formik).groups).call(_context, group => group.groupName === dependentGroupName);
|
|
647
|
+
if (dependentGroup) {
|
|
648
|
+
result = checkAtLeastOneFieldChecked(dependentGroup.fields);
|
|
649
|
+
}
|
|
650
|
+
return result;
|
|
651
|
+
});
|
|
652
|
+
}
|
|
653
|
+
return result;
|
|
654
|
+
};
|
|
655
|
+
const checkAllFieldsSelected = fields => {
|
|
656
|
+
return _everyInstanceProperty__default["default"](fields).call(fields, field => {
|
|
657
|
+
if (field.fields) {
|
|
658
|
+
return checkAllFieldsSelected(field.fields);
|
|
659
|
+
}
|
|
660
|
+
return field.isChecked || field.isRequired || field.isReadOnly;
|
|
661
|
+
});
|
|
662
|
+
};
|
|
594
663
|
|
|
595
664
|
const useInitialValues = props => {
|
|
665
|
+
var _context;
|
|
596
666
|
const _useApplicationContex = applicationShellConnectors.useApplicationContext(applicationContext => ({
|
|
597
667
|
locale: applicationContext.dataLocale
|
|
598
668
|
})),
|
|
@@ -604,8 +674,17 @@ const useInitialValues = props => {
|
|
|
604
674
|
const _useStorage = experimentalComponents.useStorage(`${projectKey}/${OPERATIONS_EXPORT_RESOURCES_MODAL_SELECTION}`, {}),
|
|
605
675
|
_useStorage2 = _slicedToArray(_useStorage, 1),
|
|
606
676
|
cachedSelectedGroups = _useStorage2[0];
|
|
677
|
+
const _useStorage3 = experimentalComponents.useStorage(`${projectKey}/${OPERATIONS_EXPORT_RESOURCES_MODAL_EXPANDED_GROUP}`, {
|
|
678
|
+
[props.resourceType]: _reduceInstanceProperty__default["default"](_context = props.fieldGroups).call(_context, (acc, group) => {
|
|
679
|
+
acc[group.groupName] = group.isExpanded;
|
|
680
|
+
return acc;
|
|
681
|
+
}, {})
|
|
682
|
+
}),
|
|
683
|
+
_useStorage4 = _slicedToArray(_useStorage3, 1),
|
|
684
|
+
cachedExpandedGroups = _useStorage4[0];
|
|
607
685
|
return React__default["default"].useMemo(() => {
|
|
608
|
-
|
|
686
|
+
let groups = updateFieldGroupsWithIsCheckedValue(props.fieldGroups, cachedSelectedGroups[props.resourceType] || {});
|
|
687
|
+
groups = updateFieldGroupsWithIsExpandedValue(groups, cachedExpandedGroups[props.resourceType] || {});
|
|
609
688
|
return {
|
|
610
689
|
outputFormat: props.outputFormat,
|
|
611
690
|
fileName: `${resourceTypeToFileName({
|
|
@@ -616,7 +695,7 @@ const useInitialValues = props => {
|
|
|
616
695
|
locales: [locale],
|
|
617
696
|
groups: updateFieldGroupWithAdditionalFieldExtensions(groups)
|
|
618
697
|
};
|
|
619
|
-
}, [props.fieldGroups, props.
|
|
698
|
+
}, [props.fieldGroups, props.resourceType, props.outputFormat, cachedSelectedGroups, cachedExpandedGroups, locale]);
|
|
620
699
|
};
|
|
621
700
|
|
|
622
701
|
async function createExportOperation(_ref) {
|
|
@@ -726,8 +805,8 @@ const useStartExportOperation = props => {
|
|
|
726
805
|
};
|
|
727
806
|
};
|
|
728
807
|
|
|
729
|
-
function ownKeys$
|
|
730
|
-
function _objectSpread$
|
|
808
|
+
function ownKeys$5(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; }
|
|
809
|
+
function _objectSpread$5(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$5(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$5(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
731
810
|
function ExportScopeSection() {
|
|
732
811
|
const _useExportResourcesCo = useExportResourcesContext(),
|
|
733
812
|
exportType = _useExportResourcesCo.exportType,
|
|
@@ -749,7 +828,7 @@ function ExportScopeSection() {
|
|
|
749
828
|
children: [jsxRuntime.jsx(uiKit.RadioInput.Option, {
|
|
750
829
|
value: EXPORT_TYPES.ALL,
|
|
751
830
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
752
|
-
intlMessage: _objectSpread$
|
|
831
|
+
intlMessage: _objectSpread$5(_objectSpread$5({}, resourceTypeMessages[resourceType].exportScopeAll), {}, {
|
|
753
832
|
values: {
|
|
754
833
|
total: new Intl.NumberFormat().format(totalResourcesCount)
|
|
755
834
|
}
|
|
@@ -760,7 +839,7 @@ function ExportScopeSection() {
|
|
|
760
839
|
isDisabled: !originalSelectedResourceIds?.length,
|
|
761
840
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
762
841
|
tone: !originalSelectedResourceIds?.length ? 'tertiary' : undefined,
|
|
763
|
-
intlMessage: originalSelectedResourceIds?.length ? _objectSpread$
|
|
842
|
+
intlMessage: originalSelectedResourceIds?.length ? _objectSpread$5(_objectSpread$5({}, resourceTypeMessages[resourceType].exportScopeSelected), {}, {
|
|
764
843
|
values: {
|
|
765
844
|
total: new Intl.NumberFormat().format(originalSelectedResourceIds?.length ?? 0)
|
|
766
845
|
}
|
|
@@ -861,7 +940,7 @@ const ExportFileSettingsStep = () => {
|
|
|
861
940
|
});
|
|
862
941
|
};
|
|
863
942
|
|
|
864
|
-
var _ref = {
|
|
943
|
+
var _ref$1 = {
|
|
865
944
|
name: "ti75j2",
|
|
866
945
|
styles: "margin:0"
|
|
867
946
|
} ;
|
|
@@ -877,7 +956,7 @@ const NoSearchResults = () => {
|
|
|
877
956
|
intlMessage: messages.suggestions
|
|
878
957
|
})]
|
|
879
958
|
}), jsxRuntime.jsxs("ul", {
|
|
880
|
-
css: _ref,
|
|
959
|
+
css: _ref$1,
|
|
881
960
|
children: [jsxRuntime.jsx("li", {
|
|
882
961
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
883
962
|
intlMessage: messages.checkTheSpelling
|
|
@@ -891,158 +970,342 @@ const NoSearchResults = () => {
|
|
|
891
970
|
});
|
|
892
971
|
};
|
|
893
972
|
|
|
894
|
-
function ownKeys$
|
|
895
|
-
function _objectSpread$
|
|
896
|
-
const
|
|
897
|
-
|
|
973
|
+
function ownKeys$4(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; }
|
|
974
|
+
function _objectSpread$4(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$4(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$4(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
975
|
+
const exportFieldSelectionContextDefaultValues = {
|
|
976
|
+
updateExpandedGroups: (_name, _value) => {}
|
|
977
|
+
};
|
|
978
|
+
const ExportFieldSelectionContext = /*#__PURE__*/React.createContext(exportFieldSelectionContextDefaultValues);
|
|
979
|
+
const ExportFieldSelectionProvider = _ref => {
|
|
980
|
+
let resourceType = _ref.resourceType,
|
|
981
|
+
children = _ref.children;
|
|
982
|
+
const _useApplicationContex = applicationShellConnectors.useApplicationContext(context => ({
|
|
983
|
+
projectKey: context.project?.key
|
|
984
|
+
})),
|
|
985
|
+
projectKey = _useApplicationContex.projectKey;
|
|
986
|
+
const _useStorage = experimentalComponents.useStorage(`${projectKey}/${OPERATIONS_EXPORT_RESOURCES_MODAL_EXPANDED_GROUP}`, {}),
|
|
987
|
+
_useStorage2 = _slicedToArray(_useStorage, 2),
|
|
988
|
+
cachedExpandedGroups = _useStorage2[0],
|
|
989
|
+
setCachedExpandedGroups = _useStorage2[1];
|
|
990
|
+
const updateExpandedGroups = React.useCallback((name, value) => {
|
|
991
|
+
setCachedExpandedGroups({
|
|
992
|
+
[resourceType]: _objectSpread$4(_objectSpread$4({}, cachedExpandedGroups[resourceType] || {}), {}, {
|
|
993
|
+
[name]: value
|
|
994
|
+
})
|
|
995
|
+
});
|
|
996
|
+
}, [cachedExpandedGroups, resourceType, setCachedExpandedGroups]);
|
|
997
|
+
return jsxRuntime.jsx(ExportFieldSelectionContext.Provider, {
|
|
998
|
+
value: {
|
|
999
|
+
updateExpandedGroups
|
|
1000
|
+
},
|
|
1001
|
+
children: children
|
|
1002
|
+
});
|
|
1003
|
+
};
|
|
1004
|
+
const useExportFieldSelectionContext = () => {
|
|
1005
|
+
return React.useContext(ExportFieldSelectionContext);
|
|
1006
|
+
};
|
|
1007
|
+
|
|
1008
|
+
const calculateTotalSelectedFields = (group, formik) => {
|
|
1009
|
+
let result = 0;
|
|
1010
|
+
// Check `isChecked` fields
|
|
1011
|
+
function countSelectedFields(fields) {
|
|
1012
|
+
_forEachInstanceProperty__default["default"](fields).call(fields, field => {
|
|
1013
|
+
if (field.fields) {
|
|
1014
|
+
countSelectedFields(field.fields);
|
|
1015
|
+
} else if (field.isChecked) {
|
|
1016
|
+
result += 1;
|
|
1017
|
+
}
|
|
1018
|
+
});
|
|
1019
|
+
}
|
|
1020
|
+
countSelectedFields(group.fields);
|
|
1021
|
+
// check `isReadOnly` fields
|
|
1022
|
+
function countReadOnlyDependentFields(fields) {
|
|
1023
|
+
_forEachInstanceProperty__default["default"](fields).call(fields, field => {
|
|
1024
|
+
if (field.fields) {
|
|
1025
|
+
countReadOnlyDependentFields(field.fields);
|
|
1026
|
+
} else if (field.dependentGroupNames?.length && isRequiredGroupChecked(field.dependentGroupNames, formik)) {
|
|
1027
|
+
result += 1;
|
|
1028
|
+
}
|
|
1029
|
+
});
|
|
1030
|
+
}
|
|
1031
|
+
function countReadOnlyFields(fields) {
|
|
1032
|
+
_forEachInstanceProperty__default["default"](fields).call(fields, field => {
|
|
1033
|
+
if (field.fields) {
|
|
1034
|
+
countReadOnlyFields(field.fields);
|
|
1035
|
+
} else if (field.isReadOnly && !field.dependentGroupNames?.length) {
|
|
1036
|
+
result += 1;
|
|
1037
|
+
}
|
|
1038
|
+
});
|
|
1039
|
+
}
|
|
1040
|
+
if (result > 0) {
|
|
1041
|
+
countReadOnlyFields(group.fields);
|
|
1042
|
+
}
|
|
1043
|
+
if (group.dependentGroupNames) {
|
|
1044
|
+
countReadOnlyDependentFields(group.fields);
|
|
1045
|
+
}
|
|
1046
|
+
return result;
|
|
1047
|
+
};
|
|
1048
|
+
const ExportFieldSelectionStamp = _ref => {
|
|
1049
|
+
let group = _ref.group;
|
|
1050
|
+
const _useExportResourcesCo = useExportResourcesContext(),
|
|
1051
|
+
formik = _useExportResourcesCo.formik;
|
|
1052
|
+
const _useIntl = reactIntl.useIntl(),
|
|
1053
|
+
formatMessage = _useIntl.formatMessage;
|
|
1054
|
+
return jsxRuntime.jsx(uiKit.Card, {
|
|
1055
|
+
type: "flat",
|
|
1056
|
+
insetScale: "m",
|
|
1057
|
+
children: jsxRuntime.jsx(uiKit.Spacings.Inline, {
|
|
1058
|
+
justifyContent: "flex-end",
|
|
1059
|
+
children: jsxRuntime.jsx(uiKit.Stamp, {
|
|
1060
|
+
tone: "secondary",
|
|
1061
|
+
isCondensed: true,
|
|
1062
|
+
label: formatMessage(messages.selected, {
|
|
1063
|
+
total: calculateTotalSelectedFields(group, formik)
|
|
1064
|
+
})
|
|
1065
|
+
})
|
|
1066
|
+
})
|
|
1067
|
+
});
|
|
1068
|
+
};
|
|
1069
|
+
|
|
1070
|
+
const FieldWrapper = /*#__PURE__*/_styled__default["default"]("div", {
|
|
1071
|
+
target: "e1judmlm0"
|
|
898
1072
|
} )({
|
|
899
|
-
name: "
|
|
900
|
-
styles: "
|
|
1073
|
+
name: "bjn8wh",
|
|
1074
|
+
styles: "position:relative"
|
|
901
1075
|
} );
|
|
902
|
-
const
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
1076
|
+
const CollapsibleFieldWrapper = _ref => {
|
|
1077
|
+
let isForceExpanded = _ref.isForceExpanded,
|
|
1078
|
+
field = _ref.field,
|
|
1079
|
+
children = _ref.children;
|
|
1080
|
+
if (field.isExpandable) return jsxRuntime.jsx(uiKit.CollapsibleMotion, {
|
|
1081
|
+
isDefaultClosed: isForceExpanded ? false : !field.isExpanded,
|
|
1082
|
+
children: _ref2 => {
|
|
1083
|
+
let isOpen = _ref2.isOpen,
|
|
1084
|
+
toggle = _ref2.toggle,
|
|
1085
|
+
registerContentNode = _ref2.registerContentNode;
|
|
1086
|
+
return children({
|
|
1087
|
+
isOpen,
|
|
1088
|
+
toggle,
|
|
1089
|
+
registerContentNode
|
|
1090
|
+
});
|
|
1091
|
+
}
|
|
1092
|
+
}, `${isForceExpanded}`);
|
|
1093
|
+
return children({
|
|
1094
|
+
isOpen: true,
|
|
1095
|
+
toggle: () => {},
|
|
1096
|
+
registerContentNode: () => {}
|
|
1097
|
+
});
|
|
1098
|
+
};
|
|
1099
|
+
const FieldSection = _ref3 => {
|
|
1100
|
+
let fields = _ref3.fields,
|
|
1101
|
+
parentKeys = _ref3.parentKeys,
|
|
1102
|
+
formik = _ref3.formik,
|
|
1103
|
+
isAnySiblingChecked = _ref3.isAnySiblingChecked,
|
|
1104
|
+
isForceExpanded = _ref3.isForceExpanded,
|
|
1105
|
+
groupName = _ref3.groupName;
|
|
1106
|
+
const _useExportFieldSelect = useExportFieldSelectionContext(),
|
|
1107
|
+
updateExpandedGroups = _useExportFieldSelect.updateExpandedGroups;
|
|
913
1108
|
return jsxRuntime.jsx(uiKit.Spacings.Stack, {
|
|
914
1109
|
scale: "s",
|
|
915
1110
|
children: fields?.map((field, index) => {
|
|
916
|
-
const
|
|
917
|
-
function checkAtLeastOneFieldChecked(fields) {
|
|
918
|
-
return fields?.some(field => {
|
|
919
|
-
if (field.fields) {
|
|
920
|
-
return field.isChecked || checkAtLeastOneFieldChecked(field.fields);
|
|
921
|
-
}
|
|
922
|
-
return field.isChecked;
|
|
923
|
-
});
|
|
924
|
-
}
|
|
925
|
-
return checkAtLeastOneFieldChecked(field.fields);
|
|
926
|
-
};
|
|
927
|
-
const isAnyOfTheChildFieldsChecked = isAtleastOneChildChecked();
|
|
1111
|
+
const isAnyOfTheChildFieldsChecked = checkAtLeastOneFieldChecked(field.fields);
|
|
928
1112
|
if (field.isHidden) return null;
|
|
929
|
-
return jsxRuntime.
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
1113
|
+
return jsxRuntime.jsx(CollapsibleFieldWrapper, {
|
|
1114
|
+
isForceExpanded: isForceExpanded,
|
|
1115
|
+
field: field,
|
|
1116
|
+
children: _ref4 => {
|
|
1117
|
+
let isOpen = _ref4.isOpen,
|
|
1118
|
+
toggle = _ref4.toggle,
|
|
1119
|
+
registerContentNode = _ref4.registerContentNode;
|
|
1120
|
+
return jsxRuntime.jsxs(React.Fragment, {
|
|
1121
|
+
children: [jsxRuntime.jsxs(FieldWrapper, {
|
|
1122
|
+
children: [field.isExpandable && jsxRuntime.jsx(uiKit.IconButton, {
|
|
1123
|
+
size: "20",
|
|
1124
|
+
style: {
|
|
1125
|
+
position: 'absolute',
|
|
1126
|
+
left: `calc(-1 * ${uiKit.designTokens.spacingXl})`
|
|
1127
|
+
},
|
|
1128
|
+
onClick: () => {
|
|
1129
|
+
if (!isForceExpanded) {
|
|
1130
|
+
updateExpandedGroups(`${groupName}.${field.name}`, !isOpen);
|
|
946
1131
|
}
|
|
947
|
-
|
|
948
|
-
}
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
1132
|
+
toggle();
|
|
1133
|
+
},
|
|
1134
|
+
icon: isOpen ? jsxRuntime.jsx(uiKit.AngleDownIcon, {}) : jsxRuntime.jsx(uiKit.AngleRightIcon, {}),
|
|
1135
|
+
label: ""
|
|
1136
|
+
}), jsxRuntime.jsx(uiKit.Spacings.Inline, {
|
|
1137
|
+
scale: "s",
|
|
1138
|
+
alignItems: "center",
|
|
1139
|
+
children: jsxRuntime.jsxs(uiKit.CheckboxInput, {
|
|
1140
|
+
isChecked: field.isReadOnly ? field.dependentGroupNames ? isRequiredGroupChecked(field.dependentGroupNames, formik) : isAnySiblingChecked : isAnyOfTheChildFieldsChecked || field.isChecked,
|
|
1141
|
+
isReadOnly: field.isReadOnly || field.isRequired,
|
|
1142
|
+
onChange: e => {
|
|
1143
|
+
const path = `${parentKeys.join('.')}.fields[${index}]`;
|
|
1144
|
+
// Update all child fields
|
|
1145
|
+
const updateAllChildFieldsChecked = (path, checked) => {
|
|
1146
|
+
const item = get__default["default"](_valuesInstanceProperty__default["default"](formik), path);
|
|
1147
|
+
if (item && item.fields) {
|
|
1148
|
+
var _context;
|
|
1149
|
+
_forEachInstanceProperty__default["default"](_context = item.fields).call(_context, (field, i) => {
|
|
1150
|
+
const fieldPath = `${path}.fields[${i}]`;
|
|
1151
|
+
if (!field.fields?.length) {
|
|
1152
|
+
formik.setFieldValue(`${fieldPath}.isChecked`, checked,
|
|
1153
|
+
// pass `false` to avoid revalidating the form with intermediate values
|
|
1154
|
+
false);
|
|
1155
|
+
}
|
|
1156
|
+
updateAllChildFieldsChecked(fieldPath, checked);
|
|
1157
|
+
});
|
|
1158
|
+
}
|
|
1159
|
+
};
|
|
1160
|
+
if (!field.fields?.length) {
|
|
1161
|
+
formik.setFieldValue(`${path}.isChecked`, e.target.checked,
|
|
1162
|
+
// pass `false` to avoid revalidating the form with intermediate values
|
|
1163
|
+
false);
|
|
1164
|
+
}
|
|
1165
|
+
updateAllChildFieldsChecked(path, e.target.checked);
|
|
1166
|
+
},
|
|
1167
|
+
children: [field.label, " ", field.isRequired && '*']
|
|
1168
|
+
})
|
|
1169
|
+
})]
|
|
1170
|
+
}), field.fields && field.fields?.length > 0 && jsxRuntime.jsx(StyledExpandableContent, {
|
|
1171
|
+
ref: registerContentNode,
|
|
1172
|
+
isOpen: isOpen,
|
|
1173
|
+
children: jsxRuntime.jsxs(uiKit.Spacings.Inline, {
|
|
1174
|
+
scale: "xl",
|
|
1175
|
+
children: [jsxRuntime.jsx("div", {}), jsxRuntime.jsx(FieldSection, {
|
|
1176
|
+
fields: field.fields,
|
|
1177
|
+
formik: formik,
|
|
1178
|
+
parentKeys: [...parentKeys, `fields[${index}]`],
|
|
1179
|
+
isAnySiblingChecked: isAnySiblingChecked,
|
|
1180
|
+
isForceExpanded: isForceExpanded,
|
|
1181
|
+
groupName: groupName
|
|
1182
|
+
})]
|
|
1183
|
+
})
|
|
1184
|
+
})]
|
|
1185
|
+
}, `${field.name}-${index}`);
|
|
1186
|
+
}
|
|
1187
|
+
}, `${field.name}.${isForceExpanded}`);
|
|
969
1188
|
})
|
|
970
1189
|
});
|
|
971
1190
|
};
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
}
|
|
1191
|
+
|
|
1192
|
+
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; }
|
|
1193
|
+
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; }
|
|
1194
|
+
const StyledGroupCard = /*#__PURE__*/_styled__default["default"](uiKit.Card, {
|
|
1195
|
+
target: "e1igkh7t2"
|
|
1196
|
+
} )("height:100%;border-radius:0;", props => props.showTopBorder && /*#__PURE__*/react.css("border-top:", uiKit.designTokens.borderWidth1, " solid ", uiKit.designTokens.colorNeutral90, ";" + ("" ), "" ), ";" + ("" ));
|
|
1197
|
+
const StyledFieldsCard = /*#__PURE__*/_styled__default["default"](uiKit.Card, {
|
|
1198
|
+
target: "e1igkh7t1"
|
|
1199
|
+
} )("border-radius:0;", props => props.showTopBorder && /*#__PURE__*/react.css("border-top:", uiKit.designTokens.borderWidth1, " solid ", uiKit.designTokens.colorNeutral90, ";" + ("" ), "" ), ";" + ("" ));
|
|
1200
|
+
var _ref = {
|
|
1201
|
+
name: "2ce4ng",
|
|
1202
|
+
styles: "overflow:hidden;height:0;margin-top:0!important"
|
|
1203
|
+
} ;
|
|
1204
|
+
const StyledExpandableContent = /*#__PURE__*/_styled__default["default"]("div", {
|
|
1205
|
+
target: "e1igkh7t0"
|
|
1206
|
+
} )(props => !props.isOpen && _ref, " ", props => !props.isOpen && props.showTopBorder && /*#__PURE__*/react.css("border-top:", uiKit.designTokens.borderWidth1, " solid ", uiKit.designTokens.colorNeutral90, ";" + ("" ), "" ), ";" + ("" ));
|
|
988
1207
|
const FieldGroupSection = _ref2 => {
|
|
989
1208
|
let group = _ref2.group,
|
|
990
1209
|
index = _ref2.index,
|
|
991
|
-
formik = _ref2.formik
|
|
992
|
-
|
|
993
|
-
const
|
|
1210
|
+
formik = _ref2.formik,
|
|
1211
|
+
isForceExpanded = _ref2.isForceExpanded;
|
|
1212
|
+
const allAllFieldsSelected = React.useMemo(() => checkAllFieldsSelected(group.fields), [group.fields]);
|
|
1213
|
+
const isAtleastOneFieldChecked = React.useMemo(() => checkAtLeastOneFieldChecked(group.fields), [group.fields]);
|
|
1214
|
+
const _useExportFieldSelect = useExportFieldSelectionContext(),
|
|
1215
|
+
updateExpandedGroups = _useExportFieldSelect.updateExpandedGroups;
|
|
994
1216
|
const parentKey = `groups[${index}]`;
|
|
995
1217
|
const handleChangeAllFields = e => {
|
|
996
1218
|
const item = get__default["default"](_valuesInstanceProperty__default["default"](formik), parentKey);
|
|
997
1219
|
function updateAllFields(fields, checked) {
|
|
998
1220
|
return _mapInstanceProperty__default["default"](fields).call(fields, field => {
|
|
999
1221
|
if (field.fields) {
|
|
1000
|
-
return _objectSpread$
|
|
1222
|
+
return _objectSpread$3(_objectSpread$3({}, field), {}, {
|
|
1001
1223
|
fields: updateAllFields(field.fields, checked)
|
|
1002
1224
|
});
|
|
1003
1225
|
}
|
|
1004
1226
|
if (field.isReadOnly || field.isRequired) return field;
|
|
1005
|
-
return _objectSpread$
|
|
1227
|
+
return _objectSpread$3(_objectSpread$3({}, field), {}, {
|
|
1006
1228
|
isChecked: checked
|
|
1007
1229
|
});
|
|
1008
1230
|
});
|
|
1009
1231
|
}
|
|
1010
|
-
formik.setFieldValue(parentKey, _objectSpread$
|
|
1232
|
+
formik.setFieldValue(parentKey, _objectSpread$3(_objectSpread$3({}, item), {}, {
|
|
1011
1233
|
fields: updateAllFields(item.fields, e.target.checked)
|
|
1012
1234
|
}));
|
|
1013
1235
|
};
|
|
1014
1236
|
if (group.isHidden) return null;
|
|
1015
|
-
return jsxRuntime.
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1237
|
+
return jsxRuntime.jsx(uiKit.CollapsibleMotion, {
|
|
1238
|
+
isDefaultClosed: isForceExpanded ? false : !group.isExpanded,
|
|
1239
|
+
children: _ref3 => {
|
|
1240
|
+
let isOpen = _ref3.isOpen,
|
|
1241
|
+
toggle = _ref3.toggle,
|
|
1242
|
+
registerContentNode = _ref3.registerContentNode;
|
|
1243
|
+
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
1244
|
+
children: [jsxRuntime.jsx(uiKit.Grid.Item, {
|
|
1245
|
+
children: jsxRuntime.jsx(StyledGroupCard, {
|
|
1246
|
+
type: "flat",
|
|
1247
|
+
insetScale: "m",
|
|
1248
|
+
showTopBorder: index > 0,
|
|
1249
|
+
children: jsxRuntime.jsxs(uiKit.Spacings.Inline, {
|
|
1250
|
+
scale: "s",
|
|
1251
|
+
alignItems: "center",
|
|
1252
|
+
children: [jsxRuntime.jsx(uiKit.IconButton, {
|
|
1253
|
+
size: "20",
|
|
1254
|
+
onClick: () => {
|
|
1255
|
+
if (!isForceExpanded) {
|
|
1256
|
+
updateExpandedGroups(group.groupName, !isOpen);
|
|
1257
|
+
}
|
|
1258
|
+
toggle();
|
|
1259
|
+
},
|
|
1260
|
+
icon: isOpen ? jsxRuntime.jsx(uiKit.AngleDownIcon, {}) : jsxRuntime.jsx(uiKit.AngleRightIcon, {}),
|
|
1261
|
+
label: ""
|
|
1262
|
+
}), jsxRuntime.jsx(uiKit.CheckboxInput, {
|
|
1263
|
+
isIndeterminate: !allAllFieldsSelected && (isAtleastOneFieldChecked || isRequiredGroupChecked(group.dependentGroupNames, formik)),
|
|
1264
|
+
isChecked: allAllFieldsSelected,
|
|
1265
|
+
onChange: handleChangeAllFields,
|
|
1266
|
+
children: group.groupLabel
|
|
1267
|
+
})]
|
|
1268
|
+
})
|
|
1040
1269
|
})
|
|
1041
|
-
})
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1270
|
+
}), jsxRuntime.jsx(uiKit.Grid.Item, {
|
|
1271
|
+
children: jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
1272
|
+
children: [jsxRuntime.jsx(StyledExpandableContent, {
|
|
1273
|
+
ref: registerContentNode,
|
|
1274
|
+
isOpen: isOpen,
|
|
1275
|
+
showTopBorder: index > 0,
|
|
1276
|
+
children: jsxRuntime.jsx(StyledFieldsCard, {
|
|
1277
|
+
type: "flat",
|
|
1278
|
+
insetScale: "m",
|
|
1279
|
+
showTopBorder: true,
|
|
1280
|
+
children: jsxRuntime.jsx(uiKit.Spacings.Stack, {
|
|
1281
|
+
scale: "s",
|
|
1282
|
+
children: jsxRuntime.jsx(FieldSection, {
|
|
1283
|
+
fields: group.fields,
|
|
1284
|
+
formik: formik,
|
|
1285
|
+
parentKeys: [parentKey],
|
|
1286
|
+
isAnySiblingChecked: isAtleastOneFieldChecked,
|
|
1287
|
+
groupName: group.groupName
|
|
1288
|
+
})
|
|
1289
|
+
})
|
|
1290
|
+
})
|
|
1291
|
+
}), !isOpen && jsxRuntime.jsx(ExportFieldSelectionStamp, {
|
|
1292
|
+
group: group
|
|
1293
|
+
})]
|
|
1294
|
+
})
|
|
1295
|
+
})]
|
|
1296
|
+
});
|
|
1297
|
+
}
|
|
1298
|
+
}, `${isForceExpanded}`);
|
|
1045
1299
|
};
|
|
1300
|
+
|
|
1301
|
+
function ownKeys$2(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; }
|
|
1302
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var _context5, _context6; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context5 = ownKeys$2(Object(t), !0)).call(_context5, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context6 = ownKeys$2(Object(t))).call(_context6, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
1303
|
+
const StyledGridCard = /*#__PURE__*/_styled__default["default"](uiKit.Card, {
|
|
1304
|
+
target: "e5mvpn60"
|
|
1305
|
+
} )({
|
|
1306
|
+
name: "1lf8z6",
|
|
1307
|
+
styles: "max-height:50vh;overflow:auto"
|
|
1308
|
+
} );
|
|
1046
1309
|
const ExportFieldsSelectionStep = () => {
|
|
1047
1310
|
const intl = reactIntl.useIntl();
|
|
1048
1311
|
const _React$useState = React__default["default"].useState(''),
|
|
@@ -1063,18 +1326,18 @@ const ExportFieldsSelectionStep = () => {
|
|
|
1063
1326
|
resourceType = _useExportResourcesCo.resourceType,
|
|
1064
1327
|
onClose = _useExportResourcesCo.onClose;
|
|
1065
1328
|
React__default["default"].useEffect(() => {
|
|
1066
|
-
var
|
|
1329
|
+
var _context2;
|
|
1067
1330
|
formik.validateForm();
|
|
1068
1331
|
const selectedFields = {};
|
|
1069
1332
|
function getSelectedFields(field, groupName) {
|
|
1070
1333
|
const fieldName = field.name ? `${groupName}.${field.name}` : groupName;
|
|
1071
1334
|
if (field.fields) {
|
|
1072
|
-
var
|
|
1073
|
-
return _forEachInstanceProperty__default["default"](
|
|
1335
|
+
var _context;
|
|
1336
|
+
return _forEachInstanceProperty__default["default"](_context = field.fields).call(_context, f => getSelectedFields(f, fieldName));
|
|
1074
1337
|
}
|
|
1075
1338
|
selectedFields[fieldName] = field.isChecked;
|
|
1076
1339
|
}
|
|
1077
|
-
_forEachInstanceProperty__default["default"](
|
|
1340
|
+
_forEachInstanceProperty__default["default"](_context2 = _valuesInstanceProperty__default["default"](formik).groups).call(_context2, group => getSelectedFields(group, group.groupLabel));
|
|
1078
1341
|
setCachedSelectedGroups({
|
|
1079
1342
|
[resourceType]: selectedFields
|
|
1080
1343
|
});
|
|
@@ -1082,11 +1345,11 @@ const ExportFieldsSelectionStep = () => {
|
|
|
1082
1345
|
}, [_valuesInstanceProperty__default["default"](formik).groups]);
|
|
1083
1346
|
// adds `isHidden` property to each field based on search term
|
|
1084
1347
|
const filteredGroups = React__default["default"].useMemo(() => {
|
|
1085
|
-
var
|
|
1348
|
+
var _context4;
|
|
1086
1349
|
const updateFields = (fields, parentMatches) => {
|
|
1087
1350
|
return _mapInstanceProperty__default["default"](fields).call(fields, field => {
|
|
1088
|
-
var
|
|
1089
|
-
const matches = _includesInstanceProperty__default["default"](
|
|
1351
|
+
var _context3;
|
|
1352
|
+
const matches = _includesInstanceProperty__default["default"](_context3 = field.label.toLowerCase()).call(_context3, fieldSearchTerm.toLowerCase());
|
|
1090
1353
|
let isHidden = !matches && !parentMatches;
|
|
1091
1354
|
if (field.fields) {
|
|
1092
1355
|
const updatedFields = updateFields(field.fields, matches);
|
|
@@ -1101,7 +1364,7 @@ const ExportFieldsSelectionStep = () => {
|
|
|
1101
1364
|
});
|
|
1102
1365
|
};
|
|
1103
1366
|
if (!fieldSearchTerm?.trim()?.length) return _valuesInstanceProperty__default["default"](formik).groups;
|
|
1104
|
-
return _mapInstanceProperty__default["default"](
|
|
1367
|
+
return _mapInstanceProperty__default["default"](_context4 = _valuesInstanceProperty__default["default"](formik).groups).call(_context4, group => {
|
|
1105
1368
|
const updatedFields = updateFields(group.fields, false);
|
|
1106
1369
|
const isHidden = _everyInstanceProperty__default["default"](updatedFields).call(updatedFields, field => field.isHidden);
|
|
1107
1370
|
return _objectSpread$2(_objectSpread$2({}, group), {}, {
|
|
@@ -1120,7 +1383,7 @@ const ExportFieldsSelectionStep = () => {
|
|
|
1120
1383
|
};
|
|
1121
1384
|
return jsxRuntime.jsx(applicationComponents.FormDialog, {
|
|
1122
1385
|
isOpen: true,
|
|
1123
|
-
title: intl.formatMessage(messages
|
|
1386
|
+
title: intl.formatMessage(messages.selectFieldsToExport),
|
|
1124
1387
|
labelPrimary: intl.formatMessage(messages.startExport),
|
|
1125
1388
|
onPrimaryButtonClick: formik.submitForm,
|
|
1126
1389
|
isPrimaryButtonDisabled: !formik.isValid,
|
|
@@ -1128,40 +1391,42 @@ const ExportFieldsSelectionStep = () => {
|
|
|
1128
1391
|
onSecondaryButtonClick: () => setCurrentStep(1),
|
|
1129
1392
|
onClose: onClose,
|
|
1130
1393
|
size: 16,
|
|
1131
|
-
children: jsxRuntime.jsx(
|
|
1132
|
-
|
|
1133
|
-
children: jsxRuntime.
|
|
1134
|
-
scale: "
|
|
1135
|
-
children:
|
|
1136
|
-
|
|
1137
|
-
children: [jsxRuntime.jsx(uiKit.
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1394
|
+
children: jsxRuntime.jsx(ExportFieldSelectionProvider, {
|
|
1395
|
+
resourceType: resourceType,
|
|
1396
|
+
children: jsxRuntime.jsx(uiKit.Spacings.Stack, {
|
|
1397
|
+
scale: "xl",
|
|
1398
|
+
children: jsxRuntime.jsxs(uiKit.Spacings.Stack, {
|
|
1399
|
+
scale: "m",
|
|
1400
|
+
children: [jsxRuntime.jsx(uiKit.Spacings.Inline, {
|
|
1401
|
+
justifyContent: "flex-end",
|
|
1402
|
+
children: jsxRuntime.jsx(uiKit.Link, {
|
|
1403
|
+
isExternal: true,
|
|
1404
|
+
tone: "secondary",
|
|
1405
|
+
intlMessage: messages.fieldDefinitions,
|
|
1406
|
+
to: FIELD_DEFINITIONS_URLS[resourceType]
|
|
1407
|
+
})
|
|
1408
|
+
}), jsxRuntime.jsx(uiKit.SearchTextInput, {
|
|
1409
|
+
placeholder: intl.formatMessage(messages.searchForFields),
|
|
1410
|
+
value: fieldSearchTerm,
|
|
1411
|
+
onChange: onSearchChangeThrottled,
|
|
1412
|
+
onReset: onSearchReset
|
|
1413
|
+
// TODO: `SearchTextInput` props to be improved. The `onSubmit` callback shouldn't be mandatory
|
|
1414
|
+
,
|
|
1415
|
+
onSubmit: () => {}
|
|
1416
|
+
}), hasResults ? jsxRuntime.jsx(StyledGridCard, {
|
|
1417
|
+
insetScale: "none",
|
|
1418
|
+
children: jsxRuntime.jsx(uiKit.Grid, {
|
|
1419
|
+
gridAutoFlow: "row",
|
|
1420
|
+
gridTemplateColumns: `calc(${uiKit.designTokens.spacingL} + ${uiKit.designTokens.constraint5} + ${uiKit.designTokens.spacingL}) auto`,
|
|
1421
|
+
children: _mapInstanceProperty__default["default"](filteredGroups).call(filteredGroups, (group, index) => jsxRuntime.jsx(FieldGroupSection, {
|
|
1422
|
+
group: group,
|
|
1423
|
+
index: index,
|
|
1424
|
+
formik: formik,
|
|
1425
|
+
isForceExpanded: fieldSearchTerm?.trim()?.length > 0
|
|
1426
|
+
}, group.groupLabel))
|
|
1427
|
+
})
|
|
1428
|
+
}) : jsxRuntime.jsx(NoSearchResults, {})]
|
|
1429
|
+
})
|
|
1165
1430
|
})
|
|
1166
1431
|
})
|
|
1167
1432
|
});
|