@commercetools-frontend-extensions/export-resources-modal 1.3.2 → 1.3.3
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.
|
@@ -31,17 +31,16 @@ var omitEmpty = require('omit-empty-es');
|
|
|
31
31
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
32
32
|
var designSystem = require('@commercetools-uikit/design-system');
|
|
33
33
|
var PropTypes = require('prop-types');
|
|
34
|
-
var
|
|
34
|
+
var react$1 = require('react');
|
|
35
35
|
var react = require('@emotion/react');
|
|
36
36
|
var _styled = require('@emotion/styled/base');
|
|
37
37
|
var _valuesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/values');
|
|
38
38
|
var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
|
|
39
39
|
var sdk = require('@commercetools-frontend/sdk');
|
|
40
|
+
var constants = require('@commercetools-frontend/constants');
|
|
40
41
|
var actionsGlobal = require('@commercetools-frontend/actions-global');
|
|
41
|
-
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
42
42
|
var formik = require('formik');
|
|
43
43
|
var moment = require('moment');
|
|
44
|
-
var constants = require('@commercetools-frontend/constants');
|
|
45
44
|
|
|
46
45
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
47
46
|
|
|
@@ -60,7 +59,6 @@ var _Reflect$construct__default = /*#__PURE__*/_interopDefault(_Reflect$construc
|
|
|
60
59
|
var _Array$isArray__default = /*#__PURE__*/_interopDefault(_Array$isArray);
|
|
61
60
|
var omitEmpty__default = /*#__PURE__*/_interopDefault(omitEmpty);
|
|
62
61
|
var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
|
|
63
|
-
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
64
62
|
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
65
63
|
var _valuesInstanceProperty__default = /*#__PURE__*/_interopDefault(_valuesInstanceProperty);
|
|
66
64
|
var moment__default = /*#__PURE__*/_interopDefault(moment);
|
|
@@ -393,7 +391,7 @@ var messages = reactIntl.defineMessages({
|
|
|
393
391
|
exportOperationSuccessMessage: {
|
|
394
392
|
id: 'ExportResourcesModal.exportOperationSuccessMessage',
|
|
395
393
|
description: 'Success message',
|
|
396
|
-
defaultMessage: 'Your export has started
|
|
394
|
+
defaultMessage: '<b>Your export has started.</b> <newline></newline><logsLink>Go to Export logs</logsLink> to view the progress and download the file.'
|
|
397
395
|
},
|
|
398
396
|
exportConfirmationLabel: {
|
|
399
397
|
id: 'ExportResourcesModal.exportConfirmationLabel',
|
|
@@ -440,6 +438,10 @@ function getBold(msg) {
|
|
|
440
438
|
});
|
|
441
439
|
}
|
|
442
440
|
|
|
441
|
+
function getNewLine() {
|
|
442
|
+
return jsxRuntime.jsx("br", {});
|
|
443
|
+
}
|
|
444
|
+
|
|
443
445
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
444
446
|
const smallTopPadding = /*#__PURE__*/react.css("padding-top:", designSystem.customProperties.spacingXs, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:smallTopPadding;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJMkIiLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHsgY3VzdG9tUHJvcGVydGllcyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2Rlc2lnbi1zeXN0ZW0nXG5cbmNvbnN0IHNtYWxsVG9wUGFkZGluZyA9IGNzc2BcbiAgcGFkZGluZy10b3A6ICR7Y3VzdG9tUHJvcGVydGllcy5zcGFjaW5nWHN9O1xuYFxuXG5jb25zdCB0YWdMaXN0Q29udGFpbmVyID0gKHsgaXNOZXdUaGVtZSB9KSA9PiBjc3NgXG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwYWRkaW5nOiAwICR7aXNOZXdUaGVtZSA/IDAgOiBjdXN0b21Qcm9wZXJ0aWVzLnNwYWNpbmdMfTtcbiAgJiA+IGRpdiB7XG4gICAgbWFyZ2luOiAwICR7Y3VzdG9tUHJvcGVydGllcy5zcGFjaW5nU30gJHtjdXN0b21Qcm9wZXJ0aWVzLnNwYWNpbmdTfSAwO1xuICB9XG5gXG5cbmNvbnN0IHRhZ0xpc3RJdGVtID0gY3NzYFxuICBtYXJnaW46IDAgJHtjdXN0b21Qcm9wZXJ0aWVzLnNwYWNpbmdYc30gJHtjdXN0b21Qcm9wZXJ0aWVzLnNwYWNpbmdYc30gMDtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5jb25zdCBkaXZpZGVyID0gY3NzYFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAke2N1c3RvbVByb3BlcnRpZXMuY29sb3JOZXV0cmFsNjB9O1xuYFxuXG5jb25zdCBub3RCb2xkID0gY3NzYFxuICBmb250LXdlaWdodDogbm9ybWFsO1xuYFxuXG5jb25zdCBzdWNjZXNzTWVzc2FnZSA9IGNzc2BcbiAgbWFyZ2luLWJvdHRvbTogJHtjdXN0b21Qcm9wZXJ0aWVzLnNwYWNpbmdMfTtcbmBcblxuZXhwb3J0IGNvbnN0IHN0eWxlcyA9IHtcbiAgdGFnTGlzdEl0ZW0sXG4gIHRhZ0xpc3RDb250YWluZXIsXG4gIHNtYWxsVG9wUGFkZGluZyxcbiAgZGl2aWRlcixcbiAgbm90Qm9sZCxcbiAgc3VjY2Vzc01lc3NhZ2UsXG59XG4iXX0= */");
|
|
445
447
|
const tagListContainer = _ref => {
|
|
@@ -475,7 +477,7 @@ function TagList(props) {
|
|
|
475
477
|
isNewTheme
|
|
476
478
|
}),
|
|
477
479
|
"data-testid": props['data-testid'],
|
|
478
|
-
children: _mapInstanceProperty__default["default"](
|
|
480
|
+
children: _mapInstanceProperty__default["default"](react$1.Children).call(react$1.Children, props.children, tag => jsxRuntime.jsx("div", {
|
|
479
481
|
css: styles.tagListItem,
|
|
480
482
|
children: tag
|
|
481
483
|
}))
|
|
@@ -487,8 +489,8 @@ TagList.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
487
489
|
'data-testid': PropTypes__default["default"].string
|
|
488
490
|
} : {};
|
|
489
491
|
|
|
490
|
-
function ownKeys$
|
|
491
|
-
function _objectSpread$
|
|
492
|
+
function ownKeys$a(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
493
|
+
function _objectSpread$a(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$a(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$a(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
492
494
|
function AppliedFilters(_ref) {
|
|
493
495
|
let filters = _ref.filters,
|
|
494
496
|
onFilterRemove = _ref.onFilterRemove;
|
|
@@ -498,7 +500,7 @@ function AppliedFilters(_ref) {
|
|
|
498
500
|
condensed: true,
|
|
499
501
|
isDefaultClosed: !Boolean(filters.length),
|
|
500
502
|
header: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
501
|
-
intlMessage: _objectSpread$
|
|
503
|
+
intlMessage: _objectSpread$a(_objectSpread$a({}, messages.appliedFiltersMessage), {}, {
|
|
502
504
|
values: {
|
|
503
505
|
filtersCount: filters.length
|
|
504
506
|
}
|
|
@@ -527,7 +529,7 @@ function AppliedFilters(_ref) {
|
|
|
527
529
|
color: "neutral60"
|
|
528
530
|
}), jsxRuntime.jsx(uiKit.Text.Body, {
|
|
529
531
|
isBold: true,
|
|
530
|
-
intlMessage: _objectSpread$
|
|
532
|
+
intlMessage: _objectSpread$a(_objectSpread$a({}, messages.appliedFiltersMessage), {}, {
|
|
531
533
|
values: {
|
|
532
534
|
filtersCount: filters.length
|
|
533
535
|
}
|
|
@@ -551,8 +553,8 @@ AppliedFilters.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
551
553
|
onFilterRemove: PropTypes__default["default"].func.isRequired
|
|
552
554
|
} : {};
|
|
553
555
|
|
|
554
|
-
function ownKeys$
|
|
555
|
-
function _objectSpread$
|
|
556
|
+
function ownKeys$9(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
557
|
+
function _objectSpread$9(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$9(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$9(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
556
558
|
const IconPlaceholder = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV === "production" ? {
|
|
557
559
|
target: "e1oion860"
|
|
558
560
|
} : {
|
|
@@ -567,7 +569,7 @@ function AppliedSearchTerms(_ref) {
|
|
|
567
569
|
condensed: true,
|
|
568
570
|
isDefaultClosed: !Boolean(appliedSearchTerms.length),
|
|
569
571
|
header: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
570
|
-
intlMessage: _objectSpread$
|
|
572
|
+
intlMessage: _objectSpread$9(_objectSpread$9({}, messages.appliedSearchTermsMessage), {}, {
|
|
571
573
|
values: {
|
|
572
574
|
searchTermsCount: appliedSearchTerms.length
|
|
573
575
|
}
|
|
@@ -588,7 +590,7 @@ function AppliedSearchTerms(_ref) {
|
|
|
588
590
|
color: "neutral60"
|
|
589
591
|
}), jsxRuntime.jsx(uiKit.Text.Body, {
|
|
590
592
|
isBold: true,
|
|
591
|
-
intlMessage: _objectSpread$
|
|
593
|
+
intlMessage: _objectSpread$9(_objectSpread$9({}, messages.appliedSearchTermsMessage), {}, {
|
|
592
594
|
values: {
|
|
593
595
|
searchTermsCount: appliedSearchTerms.length
|
|
594
596
|
}
|
|
@@ -628,14 +630,14 @@ function ExportBasedOnMyViewsSelectField() {
|
|
|
628
630
|
});
|
|
629
631
|
}
|
|
630
632
|
|
|
631
|
-
function ownKeys$
|
|
632
|
-
function _objectSpread$
|
|
633
|
+
function ownKeys$8(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
634
|
+
function _objectSpread$8(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$8(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$8(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
633
635
|
function renderFileNameError(key) {
|
|
634
636
|
switch (key) {
|
|
635
637
|
case 'missing':
|
|
636
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
638
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$8({}, messages.missingFileNameError));
|
|
637
639
|
case 'invalidInput':
|
|
638
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
640
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$8({}, messages.invalidFileNameError));
|
|
639
641
|
default:
|
|
640
642
|
return null;
|
|
641
643
|
}
|
|
@@ -643,14 +645,14 @@ function renderFileNameError(key) {
|
|
|
643
645
|
function renderLanguageError(key) {
|
|
644
646
|
switch (key) {
|
|
645
647
|
case 'missing':
|
|
646
|
-
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$
|
|
648
|
+
return jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread$8({}, messages.missingLanguageError));
|
|
647
649
|
default:
|
|
648
650
|
return null;
|
|
649
651
|
}
|
|
650
652
|
}
|
|
651
653
|
|
|
652
654
|
function useExportResourcesContext() {
|
|
653
|
-
const context =
|
|
655
|
+
const context = react$1.useContext(ExportResourcesContext);
|
|
654
656
|
if (!context) {
|
|
655
657
|
throw new MissingExportResourceProviderError();
|
|
656
658
|
}
|
|
@@ -676,8 +678,12 @@ async function createExportOperation(_ref) {
|
|
|
676
678
|
return response;
|
|
677
679
|
}
|
|
678
680
|
|
|
679
|
-
function ownKeys$
|
|
680
|
-
function _objectSpread$
|
|
681
|
+
function ownKeys$7(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
682
|
+
function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$7(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$7(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
683
|
+
const getExportLogsLink = (projectKey, msg) => jsxRuntime.jsx(uiKit.Link, {
|
|
684
|
+
to: "/".concat(projectKey, "/operations/export/logs"),
|
|
685
|
+
children: msg
|
|
686
|
+
});
|
|
681
687
|
function ExportConfirmationModal(props) {
|
|
682
688
|
const _useApplicationContex = applicationShellConnectors.useApplicationContext(applicationContext => {
|
|
683
689
|
var _applicationContext$p, _applicationContext$p2;
|
|
@@ -693,8 +699,8 @@ function ExportConfirmationModal(props) {
|
|
|
693
699
|
allResourcesCount = _useExportResourcesCo.allResourcesCount,
|
|
694
700
|
matchingResourcesCount = _useExportResourcesCo.matchingResourcesCount,
|
|
695
701
|
selectedResourceIds = _useExportResourcesCo.selectedResourceIds,
|
|
696
|
-
resourceType = _useExportResourcesCo.resourceType
|
|
697
|
-
|
|
702
|
+
resourceType = _useExportResourcesCo.resourceType;
|
|
703
|
+
const showNotification = actionsGlobal.useShowNotification();
|
|
698
704
|
const intl = reactIntl.useIntl();
|
|
699
705
|
const asyncDispatch = sdk.useAsyncDispatch();
|
|
700
706
|
const resourceTypePlural = resourceTypeToPlural({
|
|
@@ -726,7 +732,6 @@ function ExportConfirmationModal(props) {
|
|
|
726
732
|
onClose: props.closeModal,
|
|
727
733
|
onCancel: props.closeModal,
|
|
728
734
|
onConfirm: async () => {
|
|
729
|
-
setExportOperationStarted(false);
|
|
730
735
|
const graphQuery = buildGraphQuery({
|
|
731
736
|
resourceType: resourceType,
|
|
732
737
|
selectedResourceIds: selectedResourceIds,
|
|
@@ -744,7 +749,16 @@ function ExportConfirmationModal(props) {
|
|
|
744
749
|
switch (response.state) {
|
|
745
750
|
case EXPORT_OPERATION_STATES.PROCESSING:
|
|
746
751
|
case EXPORT_OPERATION_STATES.COMPLETED:
|
|
747
|
-
|
|
752
|
+
showNotification({
|
|
753
|
+
kind: 'success',
|
|
754
|
+
domain: constants.DOMAINS.SIDE,
|
|
755
|
+
text: intl.formatMessage(messages.exportOperationSuccessMessage, {
|
|
756
|
+
newline: getNewLine,
|
|
757
|
+
logsLink: msg => getExportLogsLink(projectKey, msg),
|
|
758
|
+
b: getBold
|
|
759
|
+
})
|
|
760
|
+
});
|
|
761
|
+
props.onCloseParentModal();
|
|
748
762
|
break;
|
|
749
763
|
default:
|
|
750
764
|
throw new UnexpectedExportOperationStateError(response.state);
|
|
@@ -757,7 +771,7 @@ function ExportConfirmationModal(props) {
|
|
|
757
771
|
},
|
|
758
772
|
children: jsxRuntime.jsxs("div", {
|
|
759
773
|
children: [jsxRuntime.jsx(uiKit.Text.Body, {
|
|
760
|
-
intlMessage: _objectSpread$
|
|
774
|
+
intlMessage: _objectSpread$7(_objectSpread$7({}, messages.confirmationBodyPlan), {}, {
|
|
761
775
|
values: {
|
|
762
776
|
resourceType: resourceTypePlural,
|
|
763
777
|
projectName: projectName,
|
|
@@ -774,18 +788,19 @@ function ExportConfirmationModal(props) {
|
|
|
774
788
|
ExportConfirmationModal.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
775
789
|
isOpen: PropTypes__default["default"].bool.isRequired,
|
|
776
790
|
resourceType: PropTypes__default["default"].string.isRequired,
|
|
777
|
-
closeModal: PropTypes__default["default"].func.isRequired
|
|
791
|
+
closeModal: PropTypes__default["default"].func.isRequired,
|
|
792
|
+
onCloseParentModal: PropTypes__default["default"].func.isRequired
|
|
778
793
|
} : {};
|
|
779
794
|
|
|
780
|
-
function ownKeys$
|
|
781
|
-
function _objectSpread$
|
|
795
|
+
function ownKeys$6(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
796
|
+
function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var _context3, _context4; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context3 = ownKeys$6(Object(source), !0)).call(_context3, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context4 = ownKeys$6(Object(source))).call(_context4, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
782
797
|
function normalizeFields(fields) {
|
|
783
798
|
const result = _mapInstanceProperty__default["default"](fields).call(fields, field => {
|
|
784
799
|
if (isFilledArray(field.fields)) {
|
|
785
800
|
var _context;
|
|
786
801
|
return _mapInstanceProperty__default["default"](_context = normalizeFields(field.fields)).call(_context, nestedField => {
|
|
787
802
|
var _context2;
|
|
788
|
-
return _objectSpread$
|
|
803
|
+
return _objectSpread$6(_objectSpread$6({}, nestedField), {}, {
|
|
789
804
|
key: _concatInstanceProperty__default["default"](_context2 = "".concat(field.key, ".")).call(_context2, nestedField.key)
|
|
790
805
|
});
|
|
791
806
|
});
|
|
@@ -815,7 +830,7 @@ function ExportFields(_ref2) {
|
|
|
815
830
|
condensed: true,
|
|
816
831
|
isDefaultClosed: !Boolean(fields.length),
|
|
817
832
|
header: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
818
|
-
intlMessage: _objectSpread$
|
|
833
|
+
intlMessage: _objectSpread$6(_objectSpread$6({}, messages.columnsMessage), {}, {
|
|
819
834
|
values: {
|
|
820
835
|
columnsCount: fields.length
|
|
821
836
|
}
|
|
@@ -836,7 +851,7 @@ function ExportFields(_ref2) {
|
|
|
836
851
|
color: "neutral60"
|
|
837
852
|
}), jsxRuntime.jsx(uiKit.Text.Body, {
|
|
838
853
|
isBold: true,
|
|
839
|
-
intlMessage: _objectSpread$
|
|
854
|
+
intlMessage: _objectSpread$6(_objectSpread$6({}, messages.columnsMessage), {}, {
|
|
840
855
|
values: {
|
|
841
856
|
columnsCount: fields.length
|
|
842
857
|
}
|
|
@@ -861,8 +876,8 @@ ExportFields.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
861
876
|
})).isRequired
|
|
862
877
|
} : {};
|
|
863
878
|
|
|
864
|
-
function ownKeys$
|
|
865
|
-
function _objectSpread$
|
|
879
|
+
function ownKeys$5(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
880
|
+
function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$5(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$5(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
866
881
|
function ExportSelectionRadioButtons() {
|
|
867
882
|
const _useTheme = designSystem.useTheme(),
|
|
868
883
|
isNewTheme = _useTheme.isNewTheme;
|
|
@@ -891,7 +906,7 @@ function ExportSelectionRadioButtons() {
|
|
|
891
906
|
"data-testid": 'test-all-resources',
|
|
892
907
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
893
908
|
isBold: !isNewTheme,
|
|
894
|
-
intlMessage: _objectSpread$
|
|
909
|
+
intlMessage: _objectSpread$5(_objectSpread$5({}, messages.exportAllResources), {}, {
|
|
895
910
|
values: {
|
|
896
911
|
resourceType: resourceTypePlural,
|
|
897
912
|
count: allResourcesCount
|
|
@@ -904,7 +919,7 @@ function ExportSelectionRadioButtons() {
|
|
|
904
919
|
isDisabled: !Boolean(matchingResourcesCount),
|
|
905
920
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
906
921
|
isBold: !isNewTheme,
|
|
907
|
-
intlMessage: _objectSpread$
|
|
922
|
+
intlMessage: _objectSpread$5(_objectSpread$5({}, messages.exportOnlyMatchingResources), {}, {
|
|
908
923
|
values: {
|
|
909
924
|
count: matchingResourcesCount || intl.formatMessage(messages.nothingApplied)
|
|
910
925
|
}
|
|
@@ -916,7 +931,7 @@ function ExportSelectionRadioButtons() {
|
|
|
916
931
|
isDisabled: !Boolean(selectedResourceIds.length),
|
|
917
932
|
children: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
918
933
|
isBold: !isNewTheme,
|
|
919
|
-
intlMessage: _objectSpread$
|
|
934
|
+
intlMessage: _objectSpread$5(_objectSpread$5({}, messages.exportOnlySelectedResources), {}, {
|
|
920
935
|
values: {
|
|
921
936
|
resourceType: resourceTypePlural,
|
|
922
937
|
count: selectedResourceIds.length
|
|
@@ -928,8 +943,8 @@ function ExportSelectionRadioButtons() {
|
|
|
928
943
|
});
|
|
929
944
|
}
|
|
930
945
|
|
|
931
|
-
function ownKeys$
|
|
932
|
-
function _objectSpread$
|
|
946
|
+
function ownKeys$4(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
947
|
+
function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$4(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$4(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
933
948
|
function ExportTextMessage() {
|
|
934
949
|
const _useExportResourcesCo = useExportResourcesContext(),
|
|
935
950
|
resourceType = _useExportResourcesCo.resourceType,
|
|
@@ -943,7 +958,7 @@ function ExportTextMessage() {
|
|
|
943
958
|
switch (_valuesInstanceProperty__default["default"](formik).exportSelectionType) {
|
|
944
959
|
case EXPORT_SELECTION_TYPES.ALL_RESOURCES:
|
|
945
960
|
return jsxRuntime.jsx(uiKit.Text.Body, {
|
|
946
|
-
intlMessage: _objectSpread$
|
|
961
|
+
intlMessage: _objectSpread$4(_objectSpread$4({}, messages.exportAllMessage), {}, {
|
|
947
962
|
values: {
|
|
948
963
|
count: allResourcesCount,
|
|
949
964
|
resourceType: resourceTypePlural,
|
|
@@ -953,7 +968,7 @@ function ExportTextMessage() {
|
|
|
953
968
|
});
|
|
954
969
|
case EXPORT_SELECTION_TYPES.ONLY_MATCHING:
|
|
955
970
|
return jsxRuntime.jsx(uiKit.Text.Body, {
|
|
956
|
-
intlMessage: _objectSpread$
|
|
971
|
+
intlMessage: _objectSpread$4(_objectSpread$4({}, messages.exportMatchingMessage), {}, {
|
|
957
972
|
values: {
|
|
958
973
|
count: matchingResourcesCount,
|
|
959
974
|
resourceType: resourceTypePlural,
|
|
@@ -963,7 +978,7 @@ function ExportTextMessage() {
|
|
|
963
978
|
});
|
|
964
979
|
case EXPORT_SELECTION_TYPES.ONLY_SELECTED:
|
|
965
980
|
return jsxRuntime.jsx(uiKit.Text.Body, {
|
|
966
|
-
intlMessage: _objectSpread$
|
|
981
|
+
intlMessage: _objectSpread$4(_objectSpread$4({}, messages.exportSelectedMessage), {}, {
|
|
967
982
|
values: {
|
|
968
983
|
count: selectedResourceIds.length,
|
|
969
984
|
resourceType: resourceTypePlural,
|
|
@@ -1038,8 +1053,8 @@ const ExportSelection = () => {
|
|
|
1038
1053
|
});
|
|
1039
1054
|
};
|
|
1040
1055
|
|
|
1041
|
-
function ownKeys$
|
|
1042
|
-
function _objectSpread$
|
|
1056
|
+
function ownKeys$3(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1057
|
+
function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$3(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$3(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
1043
1058
|
const ExportProperties = props => {
|
|
1044
1059
|
const _useTheme = designSystem.useTheme(),
|
|
1045
1060
|
isNewTheme = _useTheme.isNewTheme;
|
|
@@ -1056,7 +1071,7 @@ const ExportProperties = props => {
|
|
|
1056
1071
|
return jsxRuntime.jsx(uiKit.CollapsiblePanel, {
|
|
1057
1072
|
header: jsxRuntime.jsx(uiKit.Text.Body, {
|
|
1058
1073
|
isBold: true,
|
|
1059
|
-
intlMessage: _objectSpread$
|
|
1074
|
+
intlMessage: _objectSpread$3({}, messages.propertiesPanelLabel)
|
|
1060
1075
|
}),
|
|
1061
1076
|
children: props.renderProperties()
|
|
1062
1077
|
});
|
|
@@ -1065,8 +1080,8 @@ ExportProperties.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
1065
1080
|
renderProperties: PropTypes__default["default"].func
|
|
1066
1081
|
} : {};
|
|
1067
1082
|
|
|
1068
|
-
function ownKeys$
|
|
1069
|
-
function _objectSpread$
|
|
1083
|
+
function ownKeys$2(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1084
|
+
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$2(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$2(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
1070
1085
|
const outputFormatOptions = [{
|
|
1071
1086
|
value: OUTPUT_FORMATS.JSON,
|
|
1072
1087
|
label: 'JSON'
|
|
@@ -1100,12 +1115,12 @@ function ExportFileSettings(props) {
|
|
|
1100
1115
|
children: [jsxRuntime.jsx(applicationComponents.PageContentNarrow, {
|
|
1101
1116
|
children: jsxRuntime.jsxs(uiKit.Spacings.Stack, {
|
|
1102
1117
|
scale: "xl",
|
|
1103
|
-
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$
|
|
1118
|
+
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$2(_objectSpread$2({
|
|
1104
1119
|
isDisabled: true
|
|
1105
1120
|
}, formik.getFieldProps('outputFormat')), {}, {
|
|
1106
1121
|
title: intl.formatMessage(messages.outputFormat),
|
|
1107
1122
|
options: outputFormatOptions
|
|
1108
|
-
})), jsxRuntime.jsx(uiKit.TextField, _objectSpread$
|
|
1123
|
+
})), jsxRuntime.jsx(uiKit.TextField, _objectSpread$2(_objectSpread$2({
|
|
1109
1124
|
title: intl.formatMessage(messages.fileName)
|
|
1110
1125
|
}, formik.getFieldProps('fileName')), {}, {
|
|
1111
1126
|
touched: formik.touched.fileName,
|
|
@@ -1113,7 +1128,7 @@ function ExportFileSettings(props) {
|
|
|
1113
1128
|
renderError: renderFileNameError
|
|
1114
1129
|
})), jsxRuntime.jsxs(uiKit.Spacings.Stack, {
|
|
1115
1130
|
scale: "xs",
|
|
1116
|
-
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$
|
|
1131
|
+
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$2(_objectSpread$2({
|
|
1117
1132
|
id: "languages",
|
|
1118
1133
|
title: intl.formatMessage(messages.localLanguage),
|
|
1119
1134
|
options: mapLanguagesToOptions(languages),
|
|
@@ -1150,13 +1165,13 @@ function ExportFileSettings(props) {
|
|
|
1150
1165
|
scale: "l",
|
|
1151
1166
|
children: [jsxRuntime.jsxs(uiKit.Spacings.Inline, {
|
|
1152
1167
|
scale: "l",
|
|
1153
|
-
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$
|
|
1168
|
+
children: [jsxRuntime.jsx(uiKit.SelectField, _objectSpread$2(_objectSpread$2({
|
|
1154
1169
|
isDisabled: true
|
|
1155
1170
|
}, formik.getFieldProps('outputFormat')), {}, {
|
|
1156
1171
|
title: intl.formatMessage(messages.outputFormat),
|
|
1157
1172
|
options: outputFormatOptions,
|
|
1158
1173
|
horizontalConstraint: 7
|
|
1159
|
-
})), jsxRuntime.jsx(uiKit.TextField, _objectSpread$
|
|
1174
|
+
})), jsxRuntime.jsx(uiKit.TextField, _objectSpread$2(_objectSpread$2({
|
|
1160
1175
|
title: intl.formatMessage(messages.fileName)
|
|
1161
1176
|
}, formik.getFieldProps('fileName')), {}, {
|
|
1162
1177
|
touched: formik.touched.fileName,
|
|
@@ -1165,7 +1180,7 @@ function ExportFileSettings(props) {
|
|
|
1165
1180
|
horizontalConstraint: 7
|
|
1166
1181
|
}))]
|
|
1167
1182
|
}), jsxRuntime.jsx(uiKit.Spacings.Inline, {
|
|
1168
|
-
children: jsxRuntime.jsx(uiKit.SelectField, _objectSpread$
|
|
1183
|
+
children: jsxRuntime.jsx(uiKit.SelectField, _objectSpread$2(_objectSpread$2({
|
|
1169
1184
|
id: "languages",
|
|
1170
1185
|
title: jsxRuntime.jsxs(uiKit.Spacings.Inline, {
|
|
1171
1186
|
scale: "s",
|
|
@@ -1207,43 +1222,7 @@ ExportFileSettings.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
1207
1222
|
renderProperties: PropTypes__default["default"].func
|
|
1208
1223
|
} : {};
|
|
1209
1224
|
|
|
1210
|
-
|
|
1211
|
-
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$2(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$2(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
1212
|
-
const getExportLogsLink = (projectKey, msg) => jsxRuntime.jsx(uiKit.Link, {
|
|
1213
|
-
to: "/".concat(projectKey, "/operations/export/logs"),
|
|
1214
|
-
children: msg
|
|
1215
|
-
});
|
|
1216
|
-
function ExportOperationSuccessMessage(_ref) {
|
|
1217
|
-
let isShown = _ref.isShown;
|
|
1218
|
-
const _useApplicationContex = applicationShellConnectors.useApplicationContext(applicationContext => {
|
|
1219
|
-
var _applicationContext$p;
|
|
1220
|
-
return {
|
|
1221
|
-
projectKey: (_applicationContext$p = applicationContext.project) === null || _applicationContext$p === void 0 ? void 0 : _applicationContext$p.key
|
|
1222
|
-
};
|
|
1223
|
-
}),
|
|
1224
|
-
projectKey = _useApplicationContex.projectKey;
|
|
1225
|
-
if (!isShown) return null;
|
|
1226
|
-
return jsxRuntime.jsx("div", {
|
|
1227
|
-
css: styles.successMessage,
|
|
1228
|
-
"data-testid": "export-started-message",
|
|
1229
|
-
children: jsxRuntime.jsx(uiKit.Constraints.Horizontal, {
|
|
1230
|
-
max: 16,
|
|
1231
|
-
children: jsxRuntime.jsx(uiKit.ContentNotification, {
|
|
1232
|
-
type: "success",
|
|
1233
|
-
intlMessage: _objectSpread$2(_objectSpread$2({}, messages.exportOperationSuccessMessage), {}, {
|
|
1234
|
-
values: {
|
|
1235
|
-
logsLink: msg => getExportLogsLink(projectKey, msg)
|
|
1236
|
-
}
|
|
1237
|
-
})
|
|
1238
|
-
})
|
|
1239
|
-
})
|
|
1240
|
-
});
|
|
1241
|
-
}
|
|
1242
|
-
ExportOperationSuccessMessage.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
1243
|
-
isShown: PropTypes__default["default"].bool.isRequired
|
|
1244
|
-
} : {};
|
|
1245
|
-
|
|
1246
|
-
const ExportResourcesContext = /*#__PURE__*/React.createContext();
|
|
1225
|
+
const ExportResourcesContext = /*#__PURE__*/react$1.createContext();
|
|
1247
1226
|
|
|
1248
1227
|
const ExportResourcesModalShape = PropTypes__default["default"].shape({
|
|
1249
1228
|
resourceType: PropTypes__default["default"].string.isRequired,
|
|
@@ -1295,19 +1274,13 @@ const ExportResourcesContextProvider = props => {
|
|
|
1295
1274
|
},
|
|
1296
1275
|
validate
|
|
1297
1276
|
});
|
|
1298
|
-
const _React$useState = React__default["default"].useState(false),
|
|
1299
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
1300
|
-
exportOperationStarted = _React$useState2[0],
|
|
1301
|
-
setExportOperationStarted = _React$useState2[1];
|
|
1302
1277
|
return jsxRuntime.jsx(ExportResourcesContext.Provider, {
|
|
1303
1278
|
value: {
|
|
1304
1279
|
formik: formik$1,
|
|
1305
1280
|
resourceType: props.resourceType,
|
|
1306
1281
|
allResourcesCount: props.allResourcesCount,
|
|
1307
1282
|
matchingResourcesCount: props.matchingResourcesCount,
|
|
1308
|
-
selectedResourceIds: props.selectedResourceIds
|
|
1309
|
-
exportOperationStarted,
|
|
1310
|
-
setExportOperationStarted
|
|
1283
|
+
selectedResourceIds: props.selectedResourceIds
|
|
1311
1284
|
},
|
|
1312
1285
|
children: props.children
|
|
1313
1286
|
});
|
|
@@ -1331,8 +1304,7 @@ const ExportResourcesModal = _ref => {
|
|
|
1331
1304
|
return jsxRuntime.jsx(ExportResourcesContextProvider, _objectSpread(_objectSpread({}, props), {}, {
|
|
1332
1305
|
children: jsxRuntime.jsx(ExportResourcesContext.Consumer, {
|
|
1333
1306
|
children: _ref2 => {
|
|
1334
|
-
let formik = _ref2.formik
|
|
1335
|
-
exportOperationStarted = _ref2.exportOperationStarted;
|
|
1307
|
+
let formik = _ref2.formik;
|
|
1336
1308
|
return jsxRuntime.jsxs(applicationComponents.FormModalPage, {
|
|
1337
1309
|
title: intl.formatMessage(messages.modalTitle, {
|
|
1338
1310
|
resourceType: resourceTypePlural
|
|
@@ -1349,14 +1321,13 @@ const ExportResourcesModal = _ref => {
|
|
|
1349
1321
|
resourceType: props.resourceType
|
|
1350
1322
|
}),
|
|
1351
1323
|
onPrimaryButtonClick: confirmationModal.openModal,
|
|
1352
|
-
children: [jsxRuntime.jsx(
|
|
1353
|
-
isShown: exportOperationStarted
|
|
1354
|
-
}), jsxRuntime.jsx(ExportFileSettings, {
|
|
1324
|
+
children: [jsxRuntime.jsx(ExportFileSettings, {
|
|
1355
1325
|
renderProperties: renderProperties
|
|
1356
1326
|
}), jsxRuntime.jsx(ExportConfirmationModal, {
|
|
1357
1327
|
resourceType: props.resourceType,
|
|
1358
1328
|
isOpen: confirmationModal.isModalOpen,
|
|
1359
|
-
closeModal: confirmationModal.closeModal
|
|
1329
|
+
closeModal: confirmationModal.closeModal,
|
|
1330
|
+
onCloseParentModal: props.closeModal
|
|
1360
1331
|
})]
|
|
1361
1332
|
});
|
|
1362
1333
|
}
|