@reltio/components 1.4.910 → 1.4.914

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 (111) hide show
  1. package/cjs/components/MergeButton/MergeButton.d.ts +1 -0
  2. package/cjs/components/MergeButton/MergeButton.js +3 -2
  3. package/cjs/components/attributes/ImageAttributesLine/ImageAttributesLine.d.ts +7 -2
  4. package/cjs/components/attributes/ImageAttributesLine/ImageAttributesLine.js +15 -1
  5. package/cjs/components/attributes/editMode/AttributesPager/AttributesPager.js +1 -1
  6. package/cjs/components/attributes/editMode/ImageAttributesLine/ImageAttributesLine.d.ts +8 -2
  7. package/cjs/components/attributes/editMode/ImageAttributesLine/ImageAttributesLine.js +5 -5
  8. package/cjs/components/attributes/readMode/AttributesPager/AttributesPager.js +1 -1
  9. package/cjs/components/attributes/readMode/ImageAttributesLine/ImageAttributesLine.d.ts +7 -2
  10. package/cjs/components/attributes/readMode/ImageAttributesLine/ImageAttributesLine.js +2 -2
  11. package/cjs/components/history/HistoryMenuButton/HistoryMenuButton.js +46 -1
  12. package/cjs/components/history/HistoryMenuButton/MenuItemRenderer.d.ts +12 -0
  13. package/cjs/components/history/HistoryMenuButton/MenuItemRenderer.js +44 -0
  14. package/cjs/components/history/HistoryMenuButton/styles.d.ts +1 -1
  15. package/cjs/components/history/HistoryMenuButton/styles.js +13 -0
  16. package/cjs/components/index.d.ts +1 -0
  17. package/cjs/components/index.js +5 -3
  18. package/cjs/components/workflow/cards/DataChangeRequestTaskCard/DataChangeRequestTaskCard.js +6 -30
  19. package/cjs/components/workflow/components/AttributesChanges/AttributesChanges.d.ts +7 -4
  20. package/cjs/components/workflow/components/AttributesChanges/AttributesChanges.js +19 -9
  21. package/cjs/components/workflow/components/AttributesChanges/components/ChangeView/ChangeView.d.ts +4 -4
  22. package/cjs/components/workflow/components/AttributesChanges/components/ChangeView/styles.js +3 -9
  23. package/cjs/components/workflow/components/AttributesChanges/components/DCRChangesList/DCRChangesList.d.ts +2 -2
  24. package/cjs/components/workflow/components/AttributesChanges/components/DCRChangesList/DCRChangesList.js +4 -1
  25. package/cjs/components/workflow/components/AttributesChanges/components/DCRChangesList/styles.d.ts +1 -0
  26. package/cjs/components/workflow/components/AttributesChanges/components/DCRChangesList/styles.js +13 -0
  27. package/cjs/components/workflow/components/AttributesChanges/components/DiffRenderer/DiffRenderer.d.ts +2 -13
  28. package/cjs/components/workflow/components/AttributesChanges/components/DiffRenderer/DiffRenderer.js +25 -9
  29. package/cjs/components/workflow/components/AttributesChanges/components/DiffRenderer/styles.d.ts +1 -1
  30. package/cjs/components/workflow/components/AttributesChanges/components/DiffRenderer/styles.js +14 -2
  31. package/cjs/components/workflow/components/AttributesChanges/contexts/AttributesChangesContext.d.ts +1 -1
  32. package/cjs/components/workflow/components/AttributesChanges/helpers/attributesHelpers.d.ts +3 -2
  33. package/cjs/components/workflow/components/AttributesChanges/helpers/attributesHelpers.js +35 -6
  34. package/cjs/components/workflow/components/AttributesChanges/helpers/helpers.d.ts +4 -6
  35. package/cjs/components/workflow/components/AttributesChanges/helpers/helpers.js +4 -26
  36. package/cjs/components/workflow/components/AttributesChanges/helpers/mergeHelpers.d.ts +3 -2
  37. package/cjs/components/workflow/components/AttributesChanges/helpers/mergeHelpers.js +109 -28
  38. package/cjs/components/workflow/components/AttributesChanges/hooks/useCollapsibleList.d.ts +3 -2
  39. package/cjs/components/workflow/components/AttributesChanges/hooks/useCollapsibleList.js +4 -4
  40. package/cjs/components/workflow/components/AttributesChanges/types/diffTypes.d.ts +16 -0
  41. package/cjs/components/workflow/components/AttributesChanges/types/{DCRTypes.js → diffTypes.js} +0 -0
  42. package/cjs/components/workflow/components/LineDecorator/LineDecorator.d.ts +2 -1
  43. package/cjs/components/workflow/components/LineDecorator/LineDecorator.js +5 -2
  44. package/cjs/components/workflow/components/LineDecorator/styles.d.ts +1 -1
  45. package/cjs/components/workflow/components/LineDecorator/styles.js +4 -1
  46. package/cjs/components/workflow/{components/AttributesChanges/constants → constants}/operations.d.ts +0 -0
  47. package/cjs/components/workflow/{components/AttributesChanges/constants → constants}/operations.js +0 -0
  48. package/cjs/components/workflow/helpers/dcrHelpers.d.ts +7 -0
  49. package/cjs/components/workflow/helpers/dcrHelpers.js +48 -0
  50. package/cjs/components/workflow/hooks/useChangeRequest.d.ts +5 -0
  51. package/cjs/components/workflow/hooks/useChangeRequest.js +58 -0
  52. package/{esm/components/workflow/components/AttributesChanges/types/DCRTypes.d.ts → cjs/components/workflow/types/dcrTypes.d.ts} +22 -16
  53. package/cjs/components/workflow/types/dcrTypes.js +2 -0
  54. package/cjs/hooks/useMergeAllRequest.d.ts +2 -1
  55. package/cjs/hooks/useMergeAllRequest.js +6 -3
  56. package/esm/components/MergeButton/MergeButton.d.ts +1 -0
  57. package/esm/components/MergeButton/MergeButton.js +3 -2
  58. package/esm/components/attributes/ImageAttributesLine/ImageAttributesLine.d.ts +7 -2
  59. package/esm/components/attributes/ImageAttributesLine/ImageAttributesLine.js +15 -1
  60. package/esm/components/attributes/editMode/AttributesPager/AttributesPager.js +1 -1
  61. package/esm/components/attributes/editMode/ImageAttributesLine/ImageAttributesLine.d.ts +8 -2
  62. package/esm/components/attributes/editMode/ImageAttributesLine/ImageAttributesLine.js +6 -6
  63. package/esm/components/attributes/readMode/AttributesPager/AttributesPager.js +1 -1
  64. package/esm/components/attributes/readMode/ImageAttributesLine/ImageAttributesLine.d.ts +7 -2
  65. package/esm/components/attributes/readMode/ImageAttributesLine/ImageAttributesLine.js +2 -2
  66. package/esm/components/history/HistoryMenuButton/HistoryMenuButton.js +27 -1
  67. package/esm/components/history/HistoryMenuButton/MenuItemRenderer.d.ts +12 -0
  68. package/esm/components/history/HistoryMenuButton/MenuItemRenderer.js +20 -0
  69. package/esm/components/history/HistoryMenuButton/styles.d.ts +1 -1
  70. package/esm/components/history/HistoryMenuButton/styles.js +13 -0
  71. package/esm/components/index.d.ts +1 -0
  72. package/esm/components/index.js +1 -0
  73. package/esm/components/workflow/cards/DataChangeRequestTaskCard/DataChangeRequestTaskCard.js +6 -11
  74. package/esm/components/workflow/components/AttributesChanges/AttributesChanges.d.ts +7 -4
  75. package/esm/components/workflow/components/AttributesChanges/AttributesChanges.js +19 -9
  76. package/esm/components/workflow/components/AttributesChanges/components/ChangeView/ChangeView.d.ts +4 -4
  77. package/esm/components/workflow/components/AttributesChanges/components/ChangeView/styles.js +3 -9
  78. package/esm/components/workflow/components/AttributesChanges/components/DCRChangesList/DCRChangesList.d.ts +2 -2
  79. package/esm/components/workflow/components/AttributesChanges/components/DCRChangesList/DCRChangesList.js +4 -1
  80. package/esm/components/workflow/components/AttributesChanges/components/DCRChangesList/styles.d.ts +1 -0
  81. package/esm/components/workflow/components/AttributesChanges/components/DCRChangesList/styles.js +10 -0
  82. package/esm/components/workflow/components/AttributesChanges/components/DiffRenderer/DiffRenderer.d.ts +2 -13
  83. package/esm/components/workflow/components/AttributesChanges/components/DiffRenderer/DiffRenderer.js +26 -10
  84. package/esm/components/workflow/components/AttributesChanges/components/DiffRenderer/styles.d.ts +1 -1
  85. package/esm/components/workflow/components/AttributesChanges/components/DiffRenderer/styles.js +14 -2
  86. package/esm/components/workflow/components/AttributesChanges/contexts/AttributesChangesContext.d.ts +1 -1
  87. package/esm/components/workflow/components/AttributesChanges/helpers/attributesHelpers.d.ts +3 -2
  88. package/esm/components/workflow/components/AttributesChanges/helpers/attributesHelpers.js +35 -7
  89. package/esm/components/workflow/components/AttributesChanges/helpers/helpers.d.ts +4 -6
  90. package/esm/components/workflow/components/AttributesChanges/helpers/helpers.js +4 -25
  91. package/esm/components/workflow/components/AttributesChanges/helpers/mergeHelpers.d.ts +3 -2
  92. package/esm/components/workflow/components/AttributesChanges/helpers/mergeHelpers.js +112 -31
  93. package/esm/components/workflow/components/AttributesChanges/hooks/useCollapsibleList.d.ts +3 -2
  94. package/esm/components/workflow/components/AttributesChanges/hooks/useCollapsibleList.js +4 -4
  95. package/esm/components/workflow/components/AttributesChanges/types/diffTypes.d.ts +16 -0
  96. package/esm/components/workflow/components/AttributesChanges/types/{DCRTypes.js → diffTypes.js} +0 -0
  97. package/esm/components/workflow/components/LineDecorator/LineDecorator.d.ts +2 -1
  98. package/esm/components/workflow/components/LineDecorator/LineDecorator.js +5 -2
  99. package/esm/components/workflow/components/LineDecorator/styles.d.ts +1 -1
  100. package/esm/components/workflow/components/LineDecorator/styles.js +4 -1
  101. package/esm/components/workflow/{components/AttributesChanges/constants → constants}/operations.d.ts +0 -0
  102. package/esm/components/workflow/{components/AttributesChanges/constants → constants}/operations.js +0 -0
  103. package/esm/components/workflow/helpers/dcrHelpers.d.ts +7 -0
  104. package/esm/components/workflow/helpers/dcrHelpers.js +43 -0
  105. package/esm/components/workflow/hooks/useChangeRequest.d.ts +5 -0
  106. package/esm/components/workflow/hooks/useChangeRequest.js +54 -0
  107. package/{cjs/components/workflow/components/AttributesChanges/types/DCRTypes.d.ts → esm/components/workflow/types/dcrTypes.d.ts} +22 -16
  108. package/esm/components/workflow/types/dcrTypes.js +1 -0
  109. package/esm/hooks/useMergeAllRequest.d.ts +2 -1
  110. package/esm/hooks/useMergeAllRequest.js +6 -3
  111. package/package.json +3 -3
@@ -10,6 +10,7 @@ declare type Props = {
10
10
  disabled?: boolean;
11
11
  onStartRequest?: () => void;
12
12
  onFinishRequest?: () => void;
13
+ onError?: () => void;
13
14
  };
14
15
  export declare const MergeButton: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLLIElement>>;
15
16
  export {};
@@ -52,12 +52,13 @@ var core_1 = require("../../core");
52
52
  var ActionButton_1 = require("../ActionButton/ActionButton");
53
53
  var hooks_1 = require("../../hooks");
54
54
  exports.MergeButton = react_1.forwardRef(function (_a, ref) {
55
- var className = _a.className, _b = _a.mode, mode = _b === void 0 ? ActionButton_1.ActionButtonMode.iconButton : _b, _c = _a.onMenuClose, onMenuClose = _c === void 0 ? core_1.noop : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d, entity = _a.entity, entities = _a.entities, onStartRequest = _a.onStartRequest, onFinishRequest = _a.onFinishRequest, otherProps = __rest(_a, ["className", "mode", "onMenuClose", "disabled", "entity", "entities", "onStartRequest", "onFinishRequest"]);
55
+ var className = _a.className, _b = _a.mode, mode = _b === void 0 ? ActionButton_1.ActionButtonMode.iconButton : _b, _c = _a.onMenuClose, onMenuClose = _c === void 0 ? core_1.noop : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d, entity = _a.entity, entities = _a.entities, onStartRequest = _a.onStartRequest, onFinishRequest = _a.onFinishRequest, onError = _a.onError, otherProps = __rest(_a, ["className", "mode", "onMenuClose", "disabled", "entity", "entities", "onStartRequest", "onFinishRequest", "onError"]);
56
56
  var sendMergeAllRequest = hooks_1.useMergeAllRequest({
57
57
  entity: entity,
58
58
  entities: entities,
59
59
  onStartRequest: onStartRequest,
60
- onFinishRequest: onFinishRequest
60
+ onFinishRequest: onFinishRequest,
61
+ onError: onError
61
62
  }).sendMergeAllRequest;
62
63
  return (react_1.default.createElement(ActionButton_1.ActionButton, __assign({ className: className, disabled: disabled, mode: mode, label: ui_i18n_1.default.text('Merge'), icon: mergeIcon_svg_1.default, onClick: sendMergeAllRequest, onMenuClose: onMenuClose, ref: ref }, otherProps)));
63
64
  });
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { AttributeType, ImageAttributeValue } from '@reltio/mdm-sdk';
2
+ import { RequestNextPageOfAttributeValuesPayload } from '@reltio/mdm-module';
3
+ import { AttributeType, ImageAttributeValue, Paging } from '@reltio/mdm-sdk';
3
4
  import { AttributeItem } from '../editMode/AttributesPager';
4
5
  import { SIZES_TYPE } from './styles';
5
6
  export declare type ImageRenderProps = {
@@ -19,6 +20,10 @@ declare type Props = {
19
20
  onUpload?: () => void;
20
21
  onDeleteAttribute?: (param: AttributeItem) => void;
21
22
  imageSize?: SIZES_TYPE;
23
+ paging?: Paging;
24
+ requestNextPageOfAttributeValues?: (payload: RequestNextPageOfAttributeValuesPayload) => void;
25
+ parentUri?: string;
26
+ showNonOv?: boolean;
22
27
  };
23
- declare const ImageAttributesLine: ({ attributeType, attributeValues, renderImage, overlay, countFixedItems, children, onUpload, onDeleteAttribute, imageSize }: Props) => JSX.Element;
28
+ declare const ImageAttributesLine: ({ attributeType, attributeValues, renderImage, overlay, countFixedItems, children, onUpload, onDeleteAttribute, imageSize, paging, parentUri, showNonOv, requestNextPageOfAttributeValues }: Props) => JSX.Element;
24
29
  export default ImageAttributesLine;
@@ -45,11 +45,25 @@ var imageAttributes_1 = require("../helpers/imageAttributes");
45
45
  var constants_1 = require("./constants");
46
46
  var styles_1 = require("./styles");
47
47
  var ImageAttributesLine = function (_a) {
48
- var attributeType = _a.attributeType, _b = _a.attributeValues, attributeValues = _b === void 0 ? [] : _b, renderImage = _a.renderImage, _c = _a.overlay, overlay = _c === void 0 ? false : _c, _d = _a.countFixedItems, countFixedItems = _d === void 0 ? 0 : _d, children = _a.children, onUpload = _a.onUpload, onDeleteAttribute = _a.onDeleteAttribute, _e = _a.imageSize, imageSize = _e === void 0 ? constants_1.DEFAULT_IMAGE_SIZE : _e;
48
+ var attributeType = _a.attributeType, _b = _a.attributeValues, attributeValues = _b === void 0 ? [] : _b, renderImage = _a.renderImage, _c = _a.overlay, overlay = _c === void 0 ? false : _c, _d = _a.countFixedItems, countFixedItems = _d === void 0 ? 0 : _d, children = _a.children, onUpload = _a.onUpload, onDeleteAttribute = _a.onDeleteAttribute, _e = _a.imageSize, imageSize = _e === void 0 ? constants_1.DEFAULT_IMAGE_SIZE : _e, paging = _a.paging, parentUri = _a.parentUri, showNonOv = _a.showNonOv, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues;
49
49
  var entity = react_redux_1.useSelector(mdm_module_1.default.selectors.getEntity) || {};
50
50
  var isViewMode = react_redux_1.useSelector(mdm_module_1.default.selectors.getIsViewMode);
51
51
  var dispatch = react_redux_1.useDispatch();
52
52
  var styles = styles_1.useStyles(imageSize);
53
+ react_1.useEffect(function () {
54
+ if (paging && requestNextPageOfAttributeValues) {
55
+ var totalVisibleValues = showNonOv ? paging.totalOvValues : paging.totalValues;
56
+ if (totalVisibleValues > attributeValues.length) {
57
+ requestNextPageOfAttributeValues({
58
+ parentUri: parentUri,
59
+ attributeTypeUri: attributeType.uri,
60
+ attributeTypeName: attributeType.name,
61
+ values: [],
62
+ defaultMaxValues: totalVisibleValues
63
+ });
64
+ }
65
+ }
66
+ }, [paging, requestNextPageOfAttributeValues, attributeType, parentUri, attributeValues.length, showNonOv]);
53
67
  var lastWidth = react_1.useRef();
54
68
  var _f = react_1.useState(0), maxItems = _f[0], setMaxItems = _f[1];
55
69
  var _g = react_1.useState(0), hiddenItemsLength = _g[0], setHiddenItemsLength = _g[1];
@@ -80,7 +80,7 @@ var AttributesPager = function (_a) {
80
80
  return (react_1.default.createElement(BranchDecorator_1.default, { enabled: drawLines },
81
81
  react_1.default.createElement("div", { className: styles.wrapper },
82
82
  react_1.default.createElement(Title_1.default, { label: attributeType === null || attributeType === void 0 ? void 0 : attributeType.label, attributeType: attributeType }),
83
- react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: visibleValues, attributeType: attributeType, onDeleteAttribute: onDeleteAttribute, parentUri: parentUri, onChangeAttribute: onChangeAttribute }))));
83
+ react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: visibleValues, attributeType: attributeType, paging: paging, onDeleteAttribute: onDeleteAttribute, parentUri: parentUri, onChangeAttribute: onChangeAttribute, requestNextPageOfAttributeValues: requestNextPageOfAttributeValues, showNonOv: showNonOv }))));
84
84
  default:
85
85
  return (react_1.default.createElement(AttributeRenderer_1.default, __assign({ values: visibleValues, attributeType: attributeType, max: max, paging: paging, crosswalks: crosswalks, showEmptyEditors: showEmptyEditors, drawLines: drawLines, requestNextPageOfAttributeValues: requestNextPageOfAttributeValues, showNonOv: showNonOv }, commonProps)));
86
86
  }
@@ -1,12 +1,18 @@
1
1
  /// <reference types="react" />
2
- import { AttributeType, ImageAttributeValue } from '@reltio/mdm-sdk';
2
+ import { RequestNextPageOfAttributeValuesPayload } from '@reltio/mdm-module';
3
+ import { AttributeType, ImageAttributeValue, Paging } from '@reltio/mdm-sdk';
3
4
  import { AttributeItem } from '../AttributesPager';
5
+ import { SIZES_TYPE } from '../../ImageAttributesLine/styles';
4
6
  declare type Props = {
5
7
  attributeType: AttributeType;
6
8
  attributeValues: ImageAttributeValue[];
7
9
  onDeleteAttribute: (param: AttributeItem) => void;
8
10
  onChangeAttribute: (param: AttributeItem) => void;
9
11
  parentUri: string;
12
+ imageSize?: SIZES_TYPE;
13
+ paging?: Paging;
14
+ requestNextPageOfAttributeValues?: (payload: RequestNextPageOfAttributeValuesPayload) => void;
15
+ showNonOv?: boolean;
10
16
  };
11
- declare const ImageAttributesLine: ({ attributeType, attributeValues, onDeleteAttribute, onChangeAttribute, parentUri }: Props) => JSX.Element;
17
+ declare const ImageAttributesLine: ({ attributeType, attributeValues, onDeleteAttribute, onChangeAttribute, requestNextPageOfAttributeValues, parentUri, paging, showNonOv, imageSize }: Props) => JSX.Element;
12
18
  export default ImageAttributesLine;
@@ -35,14 +35,14 @@ var ImageAttributesLine_1 = __importDefault(require("../../ImageAttributesLine")
35
35
  var constants_1 = require("../../ImageAttributesLine/constants");
36
36
  var styles_1 = require("./styles");
37
37
  var ImageAttributesLine = function (_a) {
38
- var _b = _a.attributeType, attributeType = _b === void 0 ? {} : _b, _c = _a.attributeValues, attributeValues = _c === void 0 ? [] : _c, onDeleteAttribute = _a.onDeleteAttribute, onChangeAttribute = _a.onChangeAttribute, parentUri = _a.parentUri;
39
- var styles = styles_1.useStyles({ imageMargin: constants_1.IMAGE_MARGIN, imageWidth: constants_1.IMAGE_WIDTH, imageHeight: constants_1.IMAGE_HEIGHT });
38
+ var _b = _a.attributeType, attributeType = _b === void 0 ? {} : _b, _c = _a.attributeValues, attributeValues = _c === void 0 ? [] : _c, onDeleteAttribute = _a.onDeleteAttribute, onChangeAttribute = _a.onChangeAttribute, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues, parentUri = _a.parentUri, paging = _a.paging, showNonOv = _a.showNonOv, _d = _a.imageSize, imageSize = _d === void 0 ? constants_1.DEFAULT_IMAGE_SIZE : _d;
39
+ var styles = styles_1.useStyles(imageSize);
40
40
  var entity = react_redux_1.useSelector(mdm_module_1.default.selectors.getEntity) || {};
41
41
  var defaultProfilePic = react_redux_1.useSelector(function (state) {
42
42
  return mdm_module_1.default.selectors.getModifiedEntityDefaultProfilePic(state, entity.uri);
43
43
  });
44
44
  var dispatch = react_redux_1.useDispatch();
45
- var _d = react_1.useState(false), isVisibleUploadDialog = _d[0], setIsVisibleUploadDialog = _d[1];
45
+ var _e = react_1.useState(false), isVisibleUploadDialog = _e[0], setIsVisibleUploadDialog = _e[1];
46
46
  var toggleVisibilityUploadDialog = react_1.useCallback(function () {
47
47
  setIsVisibleUploadDialog(function (visible) { return !visible; });
48
48
  }, []);
@@ -94,12 +94,12 @@ var ImageAttributesLine = function (_a) {
94
94
  var uri = attribute.uri;
95
95
  var onOpenImageGalleryDialog = methods.onOpenImageGalleryDialog;
96
96
  return (react_1.default.createElement("div", { className: styles.image, key: uri },
97
- react_1.default.createElement(Image_1.default, { src: src, overlay: renderImageActionsOverlay(methods, attribute), onClick: function () { return onOpenImageGalleryDialog(uri); } })));
97
+ react_1.default.createElement(Image_1.default, { src: src, overlay: renderImageActionsOverlay(methods, attribute), onClick: function () { return onOpenImageGalleryDialog(uri); }, size: { imageWidth: imageSize.imageWidth, imageHeight: imageSize.imageHeight } })));
98
98
  };
99
99
  return renderImage;
100
100
  };
101
101
  return (react_1.default.createElement("div", { className: styles.root },
102
- react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: attributeValues, attributeType: attributeType, renderImage: renderImage, overlay: true, countFixedItems: 1, onUpload: toggleVisibilityUploadDialog, onDeleteAttribute: handleDeleteAttribute },
102
+ react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: attributeValues, attributeType: attributeType, renderImage: renderImage, overlay: true, countFixedItems: 1, onUpload: toggleVisibilityUploadDialog, onDeleteAttribute: handleDeleteAttribute, imageSize: imageSize, requestNextPageOfAttributeValues: requestNextPageOfAttributeValues, paging: paging, parentUri: parentUri, showNonOv: showNonOv },
103
103
  react_1.default.createElement("div", { className: styles.uploadContainer, onClick: toggleVisibilityUploadDialog },
104
104
  react_1.default.createElement(SmallIconButton_1.SmallIconButton, { className: styles.uploadButton, iconClassName: styles.uploadIcon, icon: CloudUpload_1.default }))),
105
105
  react_1.default.createElement(UploadImageDialog_1.UploadImageDialog, { open: isVisibleUploadDialog, onUpload: handleAddAttributes, onClose: toggleVisibilityUploadDialog })));
@@ -71,7 +71,7 @@ var AttributesPager = function (_a) {
71
71
  case RENDERER_TYPES.imageLine:
72
72
  return (react_1.default.createElement(react_1.default.Fragment, null,
73
73
  showTitle && react_1.default.createElement(Title_1.default, { label: attributeType === null || attributeType === void 0 ? void 0 : attributeType.label, attributeType: attributeType }),
74
- react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: visibleValues, attributeType: attributeType })));
74
+ react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: visibleValues, attributeType: attributeType, paging: paging, parentUri: parentUri, requestNextPageOfAttributeValues: requestNextPageOfAttributeValues, showNonOv: showNonOv })));
75
75
  case RENDERER_TYPES.special:
76
76
  return react_1.default.createElement(SpecialRenderer_1.default, { values: visibleValues, attributeType: attributeType, showTitle: showTitle });
77
77
  }
@@ -1,10 +1,15 @@
1
1
  /// <reference types="react" />
2
- import { AttributeType, ImageAttributeValue } from '@reltio/mdm-sdk';
2
+ import { AttributeType, ImageAttributeValue, Paging } from '@reltio/mdm-sdk';
3
+ import { RequestNextPageOfAttributeValuesPayload } from '@reltio/mdm-module';
3
4
  import { SIZES_TYPE } from '../../ImageAttributesLine/styles';
4
5
  declare type Props = {
5
6
  attributeValues: ImageAttributeValue[];
6
7
  attributeType: AttributeType;
7
8
  imageSize?: SIZES_TYPE;
9
+ paging?: Paging;
10
+ parentUri?: string;
11
+ showNonOv?: boolean;
12
+ requestNextPageOfAttributeValues?: (payload: RequestNextPageOfAttributeValuesPayload) => void;
8
13
  };
9
- declare const ImageAttributesLine: ({ attributeType, attributeValues, imageSize }: Props) => JSX.Element;
14
+ declare const ImageAttributesLine: ({ attributeType, attributeValues, paging, parentUri, requestNextPageOfAttributeValues, showNonOv, imageSize }: Props) => JSX.Element;
10
15
  export default ImageAttributesLine;
@@ -32,7 +32,7 @@ var constants_1 = require("../../ImageAttributesLine/constants");
32
32
  var historyAppearance_1 = require("../helpers/historyAppearance");
33
33
  var styles_1 = require("./styles");
34
34
  var ImageAttributesLine = function (_a) {
35
- var attributeType = _a.attributeType, _b = _a.attributeValues, attributeValues = _b === void 0 ? [] : _b, _c = _a.imageSize, imageSize = _c === void 0 ? constants_1.DEFAULT_IMAGE_SIZE : _c;
35
+ var attributeType = _a.attributeType, _b = _a.attributeValues, attributeValues = _b === void 0 ? [] : _b, paging = _a.paging, parentUri = _a.parentUri, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues, showNonOv = _a.showNonOv, _c = _a.imageSize, imageSize = _c === void 0 ? constants_1.DEFAULT_IMAGE_SIZE : _c;
36
36
  var styles = styles_1.useStyles(imageSize);
37
37
  var appearance = react_1.useContext(contexts_1.HistoryDiffContext).appearance;
38
38
  var renderImage = function (_a) {
@@ -50,6 +50,6 @@ var ImageAttributesLine = function (_a) {
50
50
  };
51
51
  return renderImage;
52
52
  };
53
- return (react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: attributeValues, attributeType: attributeType, renderImage: renderImage, imageSize: imageSize }));
53
+ return (react_1.default.createElement(ImageAttributesLine_1.default, { attributeValues: attributeValues, attributeType: attributeType, renderImage: renderImage, imageSize: imageSize, requestNextPageOfAttributeValues: requestNextPageOfAttributeValues, paging: paging, parentUri: parentUri, showNonOv: showNonOv }));
54
54
  };
55
55
  exports.default = ImageAttributesLine;
@@ -1,14 +1,59 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
2
21
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
23
  };
5
24
  Object.defineProperty(exports, "__esModule", { value: true });
6
25
  var react_1 = __importDefault(require("react"));
26
+ var react_redux_1 = require("react-redux");
27
+ var ui_i18n_1 = __importDefault(require("ui-i18n"));
7
28
  var MoreVert_1 = __importDefault(require("@material-ui/icons/MoreVert"));
29
+ var mdm_module_1 = __importStar(require("@reltio/mdm-module"));
8
30
  var SmallIconButton_1 = require("../../SmallIconButton");
31
+ var DropDownMenuButton_1 = __importDefault(require("../../DropDownMenuButton/DropDownMenuButton"));
32
+ var MenuItemRenderer_1 = __importDefault(require("./MenuItemRenderer"));
9
33
  var styles_1 = require("./styles");
10
34
  var HistoryMenuButton = function () {
11
35
  var styles = styles_1.useStyles();
12
- return react_1.default.createElement(SmallIconButton_1.SmallIconButton, { icon: MoreVert_1.default, size: "XS", onClick: function () { }, className: styles.icon });
36
+ var mode = react_redux_1.useSelector(mdm_module_1.default.selectors.getHistoryMode);
37
+ var dispatch = react_redux_1.useDispatch();
38
+ var handleModeChange = function (selectedMode) {
39
+ dispatch(mdm_module_1.profile.history.actions.setHistoryMode(selectedMode));
40
+ };
41
+ var menuItems = [
42
+ {
43
+ text: ui_i18n_1.default.text('Compare to Current view'),
44
+ selected: mode === mdm_module_1.HistoryMode.Current,
45
+ onClick: function () { return handleModeChange(mdm_module_1.HistoryMode.Current); }
46
+ },
47
+ {
48
+ text: ui_i18n_1.default.text('Compare to Previous view'),
49
+ selected: mode === mdm_module_1.HistoryMode.Previous,
50
+ onClick: function () { return handleModeChange(mdm_module_1.HistoryMode.Previous); }
51
+ }
52
+ ];
53
+ return (react_1.default.createElement(DropDownMenuButton_1.default, { MenuItemRenderer: MenuItemRenderer_1.default, buttonComponent: SmallIconButton_1.SmallIconButton, buttonProps: {
54
+ icon: MoreVert_1.default,
55
+ size: 'L',
56
+ className: styles.icon
57
+ }, menuId: 'history-menu', menuItems: menuItems }));
13
58
  };
14
59
  exports.default = HistoryMenuButton;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ declare type Item = {
3
+ text: string;
4
+ selected: boolean;
5
+ onClick: (e: any) => void;
6
+ };
7
+ declare type Props = {
8
+ item: Item;
9
+ onMenuClose?: () => void;
10
+ };
11
+ declare const MenuItemRenderer: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLLIElement>>;
12
+ export default MenuItemRenderer;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ var react_1 = __importStar(require("react"));
26
+ var MenuItem_1 = __importDefault(require("@material-ui/core/MenuItem"));
27
+ var Typography_1 = __importDefault(require("@material-ui/core/Typography"));
28
+ var Check_1 = __importDefault(require("@material-ui/icons/Check"));
29
+ var core_1 = require("../../../core");
30
+ var styles_1 = require("./styles");
31
+ var MenuItemRenderer = react_1.forwardRef(function (_a, ref) {
32
+ var item = _a.item, _b = _a.onMenuClose, onMenuClose = _b === void 0 ? core_1.noop : _b;
33
+ var styles = styles_1.useStyles();
34
+ var text = item.text, selected = item.selected, onClick = item.onClick;
35
+ var handleClick = function (e) {
36
+ onMenuClose();
37
+ onClick(e);
38
+ };
39
+ return (react_1.default.createElement(MenuItem_1.default, { classes: { root: styles.menuItem }, onClick: handleClick, ref: ref },
40
+ selected && react_1.default.createElement(Check_1.default, { className: styles.checkIcon }),
41
+ react_1.default.createElement(Typography_1.default, { classes: { root: styles.menuText } }, text)));
42
+ });
43
+ MenuItemRenderer.displayName = 'MenuItemRenderer';
44
+ exports.default = MenuItemRenderer;
@@ -1 +1 @@
1
- export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon">;
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon" | "menuItem" | "menuText" | "checkIcon">;
@@ -5,5 +5,18 @@ var styles_1 = require("@material-ui/core/styles");
5
5
  exports.useStyles = styles_1.makeStyles({
6
6
  icon: {
7
7
  margin: 5
8
+ },
9
+ menuItem: {
10
+ minHeight: '32px'
11
+ },
12
+ menuText: {
13
+ fontSize: '13px',
14
+ lineHeight: '15px',
15
+ letterSpacing: 0,
16
+ marginLeft: '30px'
17
+ },
18
+ checkIcon: {
19
+ position: 'absolute',
20
+ color: 'rgba(0, 0, 0, 0.54)'
8
21
  }
9
22
  });
@@ -17,6 +17,7 @@ export { default as EditableAttribute } from './attributes/editMode/AttributesFa
17
17
  export { default as ReadOnlyAttributeValuesBlock } from './attributes/readMode/AttributeValuesBlock/AttributeValuesBlock';
18
18
  export { default as ReadOnlyAttributesList } from './attributes/readMode/AttributesList';
19
19
  export { default as ImageAttributesLine } from './attributes/readMode/ImageAttributesLine';
20
+ export { default as EditableImageAttributesLine } from './attributes/editMode/ImageAttributesLine';
20
21
  export { default as NestedAttribute } from './attributes/readMode/NestedAttribute';
21
22
  export { default as ReferenceAttribute } from './attributes/readMode/ReferenceAttribute';
22
23
  export { default as SimpleAttribute } from './attributes/readMode/SimpleAttribute';
@@ -13,9 +13,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.EntityTypeIcon = exports.EntityTypeBadge = exports.EntityAvatar = exports.EMPTY_STATE_VARIANTS = exports.EMPTY_STATE_ICONS = exports.EmptyState = exports.NoResults = exports.NoData = exports.DropDownSelector = exports.DropDownMenuButton = exports.Drawer = exports.DataTypeValue = exports.ConnectionRelationTypeSelector = exports.ConfigureColumnsPopup = exports.MenuWithPopper = exports.DropdownIndicatorWithIconButton = exports.DropdownIndicator = exports.CommentsContainer = exports.ColorBar = exports.CollapseButton = exports.CollaborationItem = exports.ClickAwayProvider = exports.BasicViewHeader = exports.BasicViewContent = exports.BasicView = exports.ProfileBandNavigation = exports.AvatarWithFallback = exports.AutoSizeList = exports.ReadOnlyAttributesPager = exports.SimpleAttribute = exports.ReferenceAttribute = exports.NestedAttribute = exports.ImageAttributesLine = exports.ReadOnlyAttributesList = exports.ReadOnlyAttributeValuesBlock = exports.EditableAttribute = exports.ReadOnlyAttribute = exports.CardinalityMessage = exports.AttributesPager = exports.SimpleAttributeEditor = exports.RelationTypeSelector = exports.ReferenceAttributeEditor = exports.NestedAttributeEditor = exports.MoreAttributesButton = exports.EntitySelector = exports.EntityCreator = exports.AttributesList = exports.BranchDecorator = exports.AttributesView = exports.AttributeListItem = void 0;
17
- exports.SimpleDropDownSelector = exports.SidePanelContentHeader = exports.SidePanel = exports.SideButtonsPanel = exports.SelectorWithOnlyOptionAutoSelect = exports.SelectionPopupPopper = exports.SelectionPopup = exports.useKeyboardNavigation = exports.WhiteSearchInput = exports.SearchInput = exports.ScoreLabel = exports.Score = exports.ResizablePanes = exports.ReltioGridLayout = exports.ReactSortableTreeUtils = exports.ReactSortableTreeHandlers = exports.ReactSortableTree = exports.ReactSelectOptionFilters = exports.MultiSelect = exports.QueryBuilderRowsGroup = exports.QueryBuilderRow = exports.ProfileCard = exports.ProfileBand = exports.PotentialMatchReviewCard = exports.PopupWithArrow = exports.Popper = exports.MultipleInput = exports.ModeSwitcherSelect = exports.ModeSwitcher = exports.TransitiveMatchBlock = exports.SimpleMatchRulesBuilder = exports.SimpleMatchRulesBlock = exports.MatchRulesBlock = exports.LoadingSpinner = exports.Link = exports.LinearLoadIndicator = exports.ImportModes = exports.ImportButton = exports.ImageGalleryDialog = exports.Highlighter = exports.HierarchicalAttributeTooltip = exports.HideOnShrink = exports.FlipCard = exports.FacetViewHeader = exports.ExpandedValueTooltip = exports.ErrorWrapper = exports.ErrorPopup = exports.ErrorBoundary = exports.EntityUriLink = exports.EntityTypesSelector = void 0;
18
- exports.ActionButtonMode = exports.ActionButton = exports.NotMatchButton = exports.MergeButton = exports.ProfileMatchCard = exports.RelationEditor = exports.OvIcon = exports.ErrorMessage = exports.ReltioMap = exports.ConfirmDeleteDialog = exports.ConfirmationDialog = exports.Marginator = exports.LightArrowTooltip = exports.ArrowExpandButton = exports.ScrollableTabs = exports.ExpandableSearchInput = exports.VirtualGroupedList = exports.ViewMoreToggle = exports.VerticalHeadingsTable = exports.VerticalDivider = exports.AttributeTitle = exports.Spacer = exports.SourceIcon = exports.SmallIconButtonWithTooltip = exports.SmallIconButton = void 0;
16
+ exports.EntityTypeBadge = exports.EntityAvatar = exports.EMPTY_STATE_VARIANTS = exports.EMPTY_STATE_ICONS = exports.EmptyState = exports.NoResults = exports.NoData = exports.DropDownSelector = exports.DropDownMenuButton = exports.Drawer = exports.DataTypeValue = exports.ConnectionRelationTypeSelector = exports.ConfigureColumnsPopup = exports.MenuWithPopper = exports.DropdownIndicatorWithIconButton = exports.DropdownIndicator = exports.CommentsContainer = exports.ColorBar = exports.CollapseButton = exports.CollaborationItem = exports.ClickAwayProvider = exports.BasicViewHeader = exports.BasicViewContent = exports.BasicView = exports.ProfileBandNavigation = exports.AvatarWithFallback = exports.AutoSizeList = exports.ReadOnlyAttributesPager = exports.SimpleAttribute = exports.ReferenceAttribute = exports.NestedAttribute = exports.EditableImageAttributesLine = exports.ImageAttributesLine = exports.ReadOnlyAttributesList = exports.ReadOnlyAttributeValuesBlock = exports.EditableAttribute = exports.ReadOnlyAttribute = exports.CardinalityMessage = exports.AttributesPager = exports.SimpleAttributeEditor = exports.RelationTypeSelector = exports.ReferenceAttributeEditor = exports.NestedAttributeEditor = exports.MoreAttributesButton = exports.EntitySelector = exports.EntityCreator = exports.AttributesList = exports.BranchDecorator = exports.AttributesView = exports.AttributeListItem = void 0;
17
+ exports.SidePanelContentHeader = exports.SidePanel = exports.SideButtonsPanel = exports.SelectorWithOnlyOptionAutoSelect = exports.SelectionPopupPopper = exports.SelectionPopup = exports.useKeyboardNavigation = exports.WhiteSearchInput = exports.SearchInput = exports.ScoreLabel = exports.Score = exports.ResizablePanes = exports.ReltioGridLayout = exports.ReactSortableTreeUtils = exports.ReactSortableTreeHandlers = exports.ReactSortableTree = exports.ReactSelectOptionFilters = exports.MultiSelect = exports.QueryBuilderRowsGroup = exports.QueryBuilderRow = exports.ProfileCard = exports.ProfileBand = exports.PotentialMatchReviewCard = exports.PopupWithArrow = exports.Popper = exports.MultipleInput = exports.ModeSwitcherSelect = exports.ModeSwitcher = exports.TransitiveMatchBlock = exports.SimpleMatchRulesBuilder = exports.SimpleMatchRulesBlock = exports.MatchRulesBlock = exports.LoadingSpinner = exports.Link = exports.LinearLoadIndicator = exports.ImportModes = exports.ImportButton = exports.ImageGalleryDialog = exports.Highlighter = exports.HierarchicalAttributeTooltip = exports.HideOnShrink = exports.FlipCard = exports.FacetViewHeader = exports.ExpandedValueTooltip = exports.ErrorWrapper = exports.ErrorPopup = exports.ErrorBoundary = exports.EntityUriLink = exports.EntityTypesSelector = exports.EntityTypeIcon = void 0;
18
+ exports.ActionButtonMode = exports.ActionButton = exports.NotMatchButton = exports.MergeButton = exports.ProfileMatchCard = exports.RelationEditor = exports.OvIcon = exports.ErrorMessage = exports.ReltioMap = exports.ConfirmDeleteDialog = exports.ConfirmationDialog = exports.Marginator = exports.LightArrowTooltip = exports.ArrowExpandButton = exports.ScrollableTabs = exports.ExpandableSearchInput = exports.VirtualGroupedList = exports.ViewMoreToggle = exports.VerticalHeadingsTable = exports.VerticalDivider = exports.AttributeTitle = exports.Spacer = exports.SourceIcon = exports.SmallIconButtonWithTooltip = exports.SmallIconButton = exports.SimpleDropDownSelector = void 0;
19
19
  __exportStar(require("./activityLog"), exports);
20
20
  var AttributeListItem_1 = require("./AttributeListItem/AttributeListItem");
21
21
  Object.defineProperty(exports, "AttributeListItem", { enumerable: true, get: function () { return __importDefault(AttributeListItem_1).default; } });
@@ -52,6 +52,8 @@ var AttributesList_2 = require("./attributes/readMode/AttributesList");
52
52
  Object.defineProperty(exports, "ReadOnlyAttributesList", { enumerable: true, get: function () { return __importDefault(AttributesList_2).default; } });
53
53
  var ImageAttributesLine_1 = require("./attributes/readMode/ImageAttributesLine");
54
54
  Object.defineProperty(exports, "ImageAttributesLine", { enumerable: true, get: function () { return __importDefault(ImageAttributesLine_1).default; } });
55
+ var ImageAttributesLine_2 = require("./attributes/editMode/ImageAttributesLine");
56
+ Object.defineProperty(exports, "EditableImageAttributesLine", { enumerable: true, get: function () { return __importDefault(ImageAttributesLine_2).default; } });
55
57
  var NestedAttribute_2 = require("./attributes/readMode/NestedAttribute");
56
58
  Object.defineProperty(exports, "NestedAttribute", { enumerable: true, get: function () { return __importDefault(NestedAttribute_2).default; } });
57
59
  var ReferenceAttribute_2 = require("./attributes/readMode/ReferenceAttribute");
@@ -1,46 +1,22 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
22
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
4
  };
24
5
  Object.defineProperty(exports, "__esModule", { value: true });
25
- var react_1 = __importStar(require("react"));
26
- var mdm_sdk_1 = require("@reltio/mdm-sdk");
6
+ var react_1 = __importDefault(require("react"));
27
7
  var GenericWorkflowTaskCard_1 = __importDefault(require("../GenericWorkflowTaskCard/GenericWorkflowTaskCard"));
28
8
  var LineDecorator_1 = __importDefault(require("../../components/LineDecorator/LineDecorator"));
29
9
  var helpers_1 = require("../../helpers");
30
10
  var DcrTaskIcon_1 = __importDefault(require("../../../../icons/DcrTaskIcon"));
31
- var AttributesChangesContext_1 = require("../../components/AttributesChanges/contexts/AttributesChangesContext");
32
- var helpers_2 = require("../../components/AttributesChanges/helpers/helpers");
33
11
  var AttributesChanges_1 = __importDefault(require("../../components/AttributesChanges/AttributesChanges"));
12
+ var useChangeRequest_1 = require("../../hooks/useChangeRequest");
34
13
  var DataChangeRequestTaskCard = function (_a) {
35
14
  var task = _a.task;
36
15
  var objectURIs = task.objectURIs;
37
16
  var dcrUri = helpers_1.getDCRUri(objectURIs);
38
- var _b = react_1.useState(null), dcr = _b[0], setDcr = _b[1];
39
- react_1.useEffect(function () {
40
- mdm_sdk_1.getDataChangeRequest(dcrUri).then(setDcr);
41
- }, [dcrUri]);
42
- var objectsWithChanges = react_1.useMemo(function () { return (dcr ? helpers_2.extractObjectsFromChangeRequest(dcr) : []); }, [dcr]);
43
- return (react_1.default.createElement(GenericWorkflowTaskCard_1.default, { task: task, Icon: DcrTaskIcon_1.default }, dcr && (react_1.default.createElement(AttributesChangesContext_1.AttributesChangesContext.Provider, { value: dcr.objectsInfo },
44
- react_1.default.createElement(LineDecorator_1.default, { last: true }, objectsWithChanges.map(function (object) { return (react_1.default.createElement(AttributesChanges_1.default, { key: object.uri, changes: dcr.changes[object.uri], objectInfo: object })); }))))));
17
+ var _b = useChangeRequest_1.useChangeRequest(dcrUri), dcr = _b.dcr, groupedObjects = _b.groupedObjects;
18
+ return (react_1.default.createElement(GenericWorkflowTaskCard_1.default, { task: task, Icon: DcrTaskIcon_1.default }, dcr &&
19
+ groupedObjects.map(function (object, index) { return (react_1.default.createElement(LineDecorator_1.default, { key: index, last: index === groupedObjects.length - 1, divider: true },
20
+ react_1.default.createElement(AttributesChanges_1.default, { entityInfo: object.entity, relationsInfo: object.relations, changes: dcr.changes, objectsInfo: dcr.objectsInfo }))); })));
45
21
  };
46
22
  exports.default = DataChangeRequestTaskCard;
@@ -1,8 +1,11 @@
1
1
  /// <reference types="react" />
2
- import { DCRChange, EntityInfo } from './types/DCRTypes';
2
+ import { DCRChanges, DCRObjectsInfo, EntityInfo, RelationInfo } from '../../types/dcrTypes';
3
3
  declare type Props = {
4
- changes: DCRChange[];
5
- objectInfo: EntityInfo;
4
+ changes: DCRChanges;
5
+ objectsInfo: DCRObjectsInfo;
6
+ entityInfo: EntityInfo;
7
+ relationsInfo?: RelationInfo[];
8
+ max?: number;
6
9
  };
7
- declare const AttributesChanges: ({ changes, objectInfo }: Props) => JSX.Element;
10
+ declare const AttributesChanges: ({ changes, objectsInfo, entityInfo, relationsInfo, max }: Props) => JSX.Element;
8
11
  export default AttributesChanges;
@@ -24,24 +24,34 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
25
  var react_1 = __importStar(require("react"));
26
26
  var react_redux_1 = require("react-redux");
27
+ var ui_i18n_1 = __importDefault(require("ui-i18n"));
28
+ var ramda_1 = require("ramda");
27
29
  var mdm_module_1 = __importDefault(require("@reltio/mdm-module"));
28
30
  var mdm_sdk_1 = require("@reltio/mdm-sdk");
29
31
  var mergeHelpers_1 = require("./helpers/mergeHelpers");
30
- var EntityUriLink_1 = __importDefault(require("../../../EntityUriLink/EntityUriLink"));
31
32
  var ShowMoreLink_1 = __importDefault(require("./components/ShowMoreLink/ShowMoreLink"));
32
33
  var DCRChangesList_1 = __importDefault(require("./components/DCRChangesList/DCRChangesList"));
34
+ var AttributesChangesContext_1 = require("./contexts/AttributesChangesContext");
33
35
  var useCollapsibleList_1 = require("./hooks/useCollapsibleList");
36
+ var EntityUriLink_1 = __importDefault(require("../../../EntityUriLink/EntityUriLink"));
34
37
  var styles_1 = require("./styles");
35
38
  var AttributesChanges = function (_a) {
36
- var changes = _a.changes, objectInfo = _a.objectInfo;
39
+ var changes = _a.changes, objectsInfo = _a.objectsInfo, entityInfo = _a.entityInfo, relationsInfo = _a.relationsInfo, max = _a.max;
37
40
  var styles = styles_1.useStyles();
38
41
  var metadata = react_redux_1.useSelector(mdm_module_1.default.selectors.getMetadata);
39
- var mergedChanges = react_1.useMemo(function () { return mergeHelpers_1.mergeChanges(metadata, changes, objectInfo); }, [metadata, changes, objectInfo]);
40
- var _b = useCollapsibleList_1.useCollapsibleList(mergedChanges), isExpanded = _b.isExpanded, onToggle = _b.onToggle, itemsToShow = _b.itemsToShow, collapsedSuggestionsCount = _b.collapsedSuggestionsCount;
41
- return (react_1.default.createElement("div", { className: styles.container },
42
- react_1.default.createElement(EntityUriLink_1.default, { className: styles.uri, value: mdm_sdk_1.getEntityUriForLink(objectInfo) },
43
- react_1.default.createElement("div", { className: styles.label }, mdm_sdk_1.getLabel(objectInfo.label))),
44
- react_1.default.createElement(DCRChangesList_1.default, { changes: itemsToShow }),
45
- collapsedSuggestionsCount > 0 && (react_1.default.createElement(ShowMoreLink_1.default, { onClick: onToggle, suggestionsCount: collapsedSuggestionsCount, isExpanded: isExpanded, className: styles.showMoreLink }))));
42
+ var _b = react_1.useMemo(function () { return mergeHelpers_1.mergeChanges(metadata, changes, entityInfo, relationsInfo); }, [metadata, changes, entityInfo, relationsInfo]), mergedEntityChanges = _b[0], mergedRelationsChanges = _b[1];
43
+ var changesList = react_1.useMemo(function () {
44
+ var relationshipTitle = { label: ui_i18n_1.default.text('Relationships') };
45
+ return mergedRelationsChanges.length > 0
46
+ ? ramda_1.flatten([mergedEntityChanges, relationshipTitle, mergedRelationsChanges])
47
+ : mergedEntityChanges;
48
+ }, [mergedEntityChanges, mergedRelationsChanges]);
49
+ var _c = useCollapsibleList_1.useCollapsibleList(changesList, max), isExpanded = _c.isExpanded, onToggle = _c.onToggle, itemsToShow = _c.itemsToShow, collapsedSuggestionsCount = _c.collapsedSuggestionsCount;
50
+ return (react_1.default.createElement(AttributesChangesContext_1.AttributesChangesContext.Provider, { value: objectsInfo },
51
+ react_1.default.createElement("div", { className: styles.container },
52
+ react_1.default.createElement(EntityUriLink_1.default, { className: styles.uri, value: mdm_sdk_1.getEntityUriForLink(entityInfo) },
53
+ react_1.default.createElement("div", { className: styles.label }, mdm_sdk_1.getLabel(entityInfo.label))),
54
+ react_1.default.createElement(DCRChangesList_1.default, { changes: itemsToShow }),
55
+ collapsedSuggestionsCount > 0 && (react_1.default.createElement(ShowMoreLink_1.default, { onClick: onToggle, suggestionsCount: collapsedSuggestionsCount, isExpanded: isExpanded, className: styles.showMoreLink })))));
46
56
  };
47
57
  exports.default = AttributesChanges;
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
- import { OperationTypes } from '../../constants/operations';
2
+ import { OperationTypes } from '../../../../constants/operations';
3
3
  declare type Props = {
4
- label: React.ReactElement;
5
- oldValue?: React.ReactElement;
6
- newValue?: React.ReactElement;
4
+ label: React.ReactNode;
5
+ oldValue?: React.ReactNode;
6
+ newValue?: React.ReactNode;
7
7
  operation?: OperationTypes;
8
8
  className?: string;
9
9
  };
@@ -8,20 +8,15 @@ exports.useStyles = styles_1.makeStyles(function (theme) { return ({
8
8
  lineHeight: '20px',
9
9
  color: theme.palette.text.primary,
10
10
  marginTop: '6px',
11
- display: 'flex',
12
- flexWrap: 'wrap',
13
- overflow: 'hidden'
11
+ overflow: 'hidden',
12
+ wordBreak: 'break-word'
14
13
  },
15
14
  fieldName: {
16
- display: 'flex',
17
- alignItems: 'center',
18
15
  color: theme.palette.text.secondary,
19
16
  marginRight: '8px'
20
17
  },
21
18
  difference: {
22
- display: 'flex',
23
- alignItems: 'center',
24
- flexDirection: 'row'
19
+ marginRight: '8px'
25
20
  },
26
21
  arrow: {
27
22
  margin: '0 4px',
@@ -34,7 +29,6 @@ exports.useStyles = styles_1.makeStyles(function (theme) { return ({
34
29
  fontWeight: 500,
35
30
  lineHeight: '16px',
36
31
  letterSpacing: 0,
37
- marginLeft: '8px',
38
32
  flexShrink: 0,
39
33
  textTransform: 'capitalize',
40
34
  color: theme.palette.primary.main,
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { Props as Change } from '../DiffRenderer/DiffRenderer';
2
+ import { Diff, Title } from '../../types/diffTypes';
3
3
  declare type Props = {
4
- changes: Change[];
4
+ changes: (Diff | Title)[];
5
5
  };
6
6
  declare const DCRChangesList: ({ changes }: Props) => JSX.Element;
7
7
  export default DCRChangesList;
@@ -15,11 +15,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  var react_1 = __importDefault(require("react"));
18
+ var ramda_1 = require("ramda");
18
19
  var DiffRenderer_1 = __importDefault(require("../DiffRenderer/DiffRenderer"));
20
+ var styles_1 = require("./styles");
19
21
  var DCRChangesList = function (_a) {
20
22
  var changes = _a.changes;
23
+ var styles = styles_1.useStyles();
21
24
  return (react_1.default.createElement(react_1.default.Fragment, null, changes.map(function (change, index) {
22
- return react_1.default.createElement(DiffRenderer_1.default, __assign({}, change, { key: index }));
25
+ return ramda_1.has('level', change) ? (react_1.default.createElement(DiffRenderer_1.default, __assign({}, change, { key: index }))) : (react_1.default.createElement("div", { className: styles.title, key: index }, change.label));
23
26
  })));
24
27
  };
25
28
  exports.default = DCRChangesList;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title">;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useStyles = void 0;
4
+ var styles_1 = require("@material-ui/core/styles");
5
+ exports.useStyles = styles_1.makeStyles({
6
+ title: {
7
+ fontSize: '12px',
8
+ letterSpacing: 0,
9
+ lineHeight: '16px',
10
+ fontWeight: 500,
11
+ marginTop: '8px'
12
+ }
13
+ });
@@ -1,15 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { AttributeType } from '@reltio/mdm-sdk';
3
- import { OperationTypes } from '../../constants/operations';
4
- import { ChangeValue, DCRAttributeValue } from '../../types/DCRTypes';
5
- export declare type Props = {
6
- level: number;
7
- label: string;
8
- attributeType: AttributeType;
9
- attributeValue?: DCRAttributeValue;
10
- newValue?: ChangeValue;
11
- oldValue?: ChangeValue;
12
- operation?: OperationTypes;
13
- };
14
- declare const DiffRenderer: ({ label, level, attributeType, attributeValue, oldValue, newValue, operation }: Props) => JSX.Element;
2
+ import { Diff } from '../../types/diffTypes';
3
+ declare const DiffRenderer: ({ label, level, attributeType, attributeValue, oldValue, newValue, operation }: Diff) => JSX.Element;
15
4
  export default DiffRenderer;