@reltio/components 1.4.845 → 1.4.849

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 (128) hide show
  1. package/components/AttributeSelector/AttributeSelector.d.ts +14 -0
  2. package/components/{activityLog/ActivityFilterEditor → AttributeSelector}/AttributeSelector.js +10 -10
  3. package/components/AttributeSelector/styles.d.ts +4 -0
  4. package/components/AttributeSelector/styles.js +41 -0
  5. package/components/DateIntervalSelector/DateIntervalSelector.d.ts +8 -0
  6. package/components/{activityLog/ActivityFilterEditor/IntervalSelector.js → DateIntervalSelector/DateIntervalSelector.js} +8 -17
  7. package/components/DateIntervalSelector/styles.d.ts +1 -0
  8. package/components/DateIntervalSelector/styles.js +25 -0
  9. package/components/DateRangePicker/styles.d.ts +1 -1
  10. package/components/ImageGalleryDialog/styles.d.ts +1 -1
  11. package/components/ProfileBand/styles.js +1 -1
  12. package/components/UploadImageDialog/ImageByUrlField/styles.d.ts +1 -1
  13. package/components/UserSelector/UserSelector.d.ts +9 -0
  14. package/components/{activityLog/ActivityFilterEditor → UserSelector}/UserSelector.js +6 -6
  15. package/components/UserSelector/styles.d.ts +5 -0
  16. package/components/UserSelector/styles.js +39 -0
  17. package/components/activityLog/ActivityFilterEditor/ActivityFilterEditor.js +4 -4
  18. package/components/activityLog/ActivityFilterEditor/DateRangeSelector.d.ts +3 -3
  19. package/components/activityLog/ActivityFilterEditor/DateRangeSelector.js +6 -6
  20. package/components/activityLog/ActivityFilterEditor/styles.d.ts +1 -1
  21. package/components/activityLog/ActivityFilterEditor/styles.js +3 -32
  22. package/components/activityLog/ActivityLogFilter/helpers.js +1 -1
  23. package/components/activityLog/types/ActivitiesFilter.d.ts +2 -7
  24. package/components/activityLog/types/index.d.ts +1 -3
  25. package/components/activityLog/types/index.js +1 -3
  26. package/components/activityLog/utils/filters.d.ts +2 -2
  27. package/components/activityLog/utils/filters.js +1 -1
  28. package/components/attributes/OvIcon/OvIcon.d.ts +3 -1
  29. package/components/attributes/OvIcon/OvIcon.js +4 -4
  30. package/components/attributes/editMode/AttributesFactory/AttributesFactory.js +3 -2
  31. package/components/attributes/editMode/AttributesList/AttributesList.d.ts +3 -1
  32. package/components/attributes/editMode/AttributesList/AttributesList.js +4 -8
  33. package/components/attributes/editMode/AttributesPager/AttributeRenderer.d.ts +1 -1
  34. package/components/attributes/editMode/AttributesPager/AttributeRenderer.js +8 -7
  35. package/components/attributes/editMode/AttributesPager/AttributesPager.d.ts +1 -1
  36. package/components/attributes/editMode/AttributesPager/AttributesPager.js +5 -5
  37. package/components/attributes/editMode/AttributesPager/index.d.ts +2 -1
  38. package/components/attributes/editMode/ComplexAttribute/ComplexAttribute.d.ts +3 -1
  39. package/components/attributes/editMode/ComplexAttribute/ComplexAttribute.js +2 -2
  40. package/components/attributes/editMode/NestedAttribute/NestedAttribute.d.ts +1 -0
  41. package/components/attributes/editMode/ReferenceAttribute/ReferenceAttribute.d.ts +1 -0
  42. package/components/attributes/editMode/ReferenceAttribute/index.d.ts +1 -0
  43. package/components/attributes/inline/AttributesList/AttributesList.d.ts +2 -2
  44. package/components/attributes/inline/AttributesPager/AttributesPager.d.ts +2 -2
  45. package/components/attributes/inline/ComplexAttribute/ComplexAttribute.d.ts +3 -3
  46. package/components/attributes/inline/ComplexAttribute/ComplexAttribute.js +6 -6
  47. package/components/attributes/inline/ImageAttribute/ImageAttribute.d.ts +2 -2
  48. package/components/attributes/inline/ImageAttributesBlock/ImageAttributesBlock.d.ts +2 -2
  49. package/components/attributes/inline/NestedAttribute/NestedAttribute.d.ts +2 -2
  50. package/components/attributes/inline/NestedAttributesBlock/NestedAttributesBlock.d.ts +3 -3
  51. package/components/attributes/inline/NestedAttributesBlock/NestedAttributesBlock.js +3 -3
  52. package/components/attributes/inline/ReferenceAttribute/ReferenceAttribute.d.ts +2 -2
  53. package/components/attributes/inline/ReferenceAttributesBlock/ReferenceAttributesBlock.d.ts +2 -2
  54. package/components/attributes/inline/SimpleAttribute/SimpleAttribute.d.ts +3 -3
  55. package/components/attributes/inline/SimpleAttribute/SimpleAttribute.js +5 -5
  56. package/components/attributes/inline/SimpleAttributeEditor/styles.d.ts +1 -1
  57. package/components/attributes/inline/SimpleAttributesBlock/SimpleAttributesBlock.d.ts +3 -3
  58. package/components/attributes/inline/SimpleAttributesBlock/SimpleAttributesBlock.js +3 -3
  59. package/components/attributes/readMode/AttributesList/AttributesList.d.ts +2 -1
  60. package/components/attributes/readMode/AttributesList/AttributesList.js +7 -3
  61. package/components/attributes/readMode/AttributesPager/AttributesPager.d.ts +2 -1
  62. package/components/attributes/readMode/AttributesPager/AttributesPager.js +13 -7
  63. package/components/attributes/readMode/AttributesPager/MultiLineRenderer.d.ts +5 -3
  64. package/components/attributes/readMode/AttributesPager/MultiLineRenderer.js +8 -8
  65. package/components/attributes/readMode/AttributesPager/OneLineRenderer.d.ts +4 -2
  66. package/components/attributes/readMode/AttributesPager/OneLineRenderer.js +3 -3
  67. package/components/attributes/readMode/AttributesPager/index.d.ts +3 -1
  68. package/components/attributes/readMode/ComplexAttribute/ComplexAttribute.d.ts +3 -1
  69. package/components/attributes/readMode/ComplexAttribute/ComplexAttribute.js +4 -3
  70. package/components/attributes/readMode/NestedAttribute/NestedAttribute.d.ts +1 -0
  71. package/components/attributes/readMode/ReferenceAttribute/ReferenceAttribute.d.ts +1 -0
  72. package/components/attributes/readMode/ReferenceAttribute/index.d.ts +1 -0
  73. package/components/crosswalks/AttributesTable/AttributesTable.d.ts +8 -7
  74. package/components/crosswalks/AttributesTable/AttributesTable.js +12 -9
  75. package/components/crosswalks/AttributesTable/cell-renderers/AttributeValuesRenderer.d.ts +2 -1
  76. package/components/crosswalks/AttributesTable/cell-renderers/AttributeValuesRenderer.js +3 -3
  77. package/components/crosswalks/AttributesTable/cell-renderers/AttributesHeadCellRenderer.d.ts +9 -2
  78. package/components/crosswalks/AttributesTable/cell-renderers/AttributesHeadCellRenderer.js +19 -3
  79. package/components/crosswalks/AttributesTable/cell-renderers/attribute-renderers/AttributesFactory.d.ts +2 -0
  80. package/components/{activityLog/ActivityFilterEditor/ActivityDateRangeEditor.d.ts → editors/CustomDateRangeEditor/CustomDateRangeEditor.d.ts} +3 -3
  81. package/components/{activityLog/ActivityFilterEditor/ActivityDateRangeEditor.js → editors/CustomDateRangeEditor/CustomDateRangeEditor.js} +6 -5
  82. package/components/editors/CustomDateRangeEditor/styles.d.ts +1 -0
  83. package/components/editors/CustomDateRangeEditor/styles.js +25 -0
  84. package/components/editors/DateRangeEditor/styles.d.ts +1 -1
  85. package/components/history/DateRangeSelector/DateRangeSelector.d.ts +9 -0
  86. package/components/history/DateRangeSelector/DateRangeSelector.js +91 -0
  87. package/components/history/DateRangeSelector/styles.d.ts +1 -0
  88. package/components/history/DateRangeSelector/styles.js +22 -0
  89. package/components/history/DateRangeSelector/utils.d.ts +3 -0
  90. package/components/history/DateRangeSelector/utils.js +19 -0
  91. package/components/history/HistoryActivitySelector/HistoryActivitySelector.d.ts +9 -0
  92. package/components/history/HistoryActivitySelector/HistoryActivitySelector.js +27 -0
  93. package/components/history/HistoryActivitySelector/styles.d.ts +4 -0
  94. package/components/history/HistoryActivitySelector/styles.js +42 -0
  95. package/components/history/HistoryActivitySelector/utils.d.ts +3 -0
  96. package/components/history/HistoryActivitySelector/utils.js +23 -0
  97. package/components/history/HistoryFilterButton/HistoryFilterButton.d.ts +10 -0
  98. package/components/history/HistoryFilterButton/HistoryFilterButton.js +87 -0
  99. package/components/history/HistoryFilterButton/styles.d.ts +1 -1
  100. package/components/history/HistoryFilterButton/styles.js +26 -0
  101. package/components/history/HistoryHeader/HistoryHeader.d.ts +6 -1
  102. package/components/history/HistoryHeader/HistoryHeader.js +3 -3
  103. package/components/history/ProfileBandHistory/ProfileBandHistory.d.ts +3 -0
  104. package/components/history/ProfileBandHistory/ProfileBandHistory.js +45 -0
  105. package/components/history/ProfileBandHistory/styles.d.ts +1 -0
  106. package/components/history/ProfileBandHistory/styles.js +18 -0
  107. package/components/history/hooks/useHistorySlice.d.ts +4 -0
  108. package/components/history/hooks/useHistorySlice.js +58 -0
  109. package/components/history/index.d.ts +3 -2
  110. package/components/history/index.js +16 -5
  111. package/components/history/types/HistoryFilter.d.ts +12 -0
  112. package/components/history/types/HistoryFilter.js +9 -0
  113. package/components/history/types/index.d.ts +2 -0
  114. package/components/history/types/index.js +5 -0
  115. package/components/index.d.ts +1 -0
  116. package/components/index.js +3 -1
  117. package/package.json +3 -3
  118. package/types/index.d.ts +17 -0
  119. package/types/index.js +7 -0
  120. package/components/activityLog/ActivityFilterEditor/AttributeSelector.d.ts +0 -10
  121. package/components/activityLog/ActivityFilterEditor/IntervalSelector.d.ts +0 -8
  122. package/components/activityLog/ActivityFilterEditor/UserSelector.d.ts +0 -7
  123. package/components/activityLog/types/AttributeOption.d.ts +0 -8
  124. package/components/activityLog/types/AttributeOption.js +0 -2
  125. package/components/activityLog/types/DateRangeTypes.d.ts +0 -5
  126. package/components/activityLog/types/DateRangeTypes.js +0 -9
  127. package/components/history/HistoryFilterButton/HistoryFilterBitton.d.ts +0 -3
  128. package/components/history/HistoryFilterButton/HistoryFilterBitton.js +0 -14
@@ -5,13 +5,15 @@ declare type Props = {
5
5
  max: number;
6
6
  values: (SimpleAttributeValue | NestedAttributeValue | ReferenceAttributeValue)[];
7
7
  attributeType: AttributeType;
8
- totalOvValues: number;
9
- nonOvValues: (SimpleAttributeValue | NestedAttributeValue | ReferenceAttributeValue)[];
8
+ totalVisibleValues: number;
9
+ totalNonVisibleValues: number;
10
+ nonVisibleValues: (SimpleAttributeValue | NestedAttributeValue | ReferenceAttributeValue)[];
10
11
  parentUri: string;
11
12
  requestNextPageOfAttributeValues: (payload: RequestNextPageOfAttributeValuesPayload) => void;
12
13
  titleClassName?: string;
13
14
  contentClassName?: string;
14
15
  showTitle?: boolean;
16
+ showNonOv: boolean;
15
17
  };
16
- declare const MultiLineRenderer: ({ max, values, nonOvValues, totalOvValues, attributeType, parentUri, requestNextPageOfAttributeValues, titleClassName, contentClassName, showTitle }: Props) => JSX.Element;
18
+ declare const MultiLineRenderer: ({ max, values, nonVisibleValues, totalVisibleValues, attributeType, parentUri, requestNextPageOfAttributeValues, titleClassName, contentClassName, showTitle, showNonOv, totalNonVisibleValues }: Props) => JSX.Element;
17
19
  export default MultiLineRenderer;
@@ -32,15 +32,15 @@ var ShowMore_1 = __importDefault(require("../../pagersCommon/ShowMore"));
32
32
  var ShowLess_1 = __importDefault(require("../../pagersCommon/ShowLess"));
33
33
  var OvIcon_1 = __importDefault(require("../../OvIcon"));
34
34
  var MultiLineRenderer = function (_a) {
35
- var max = _a.max, values = _a.values, nonOvValues = _a.nonOvValues, totalOvValues = _a.totalOvValues, attributeType = _a.attributeType, parentUri = _a.parentUri, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, _b = _a.showTitle, showTitle = _b === void 0 ? true : _b;
35
+ var max = _a.max, values = _a.values, nonVisibleValues = _a.nonVisibleValues, totalVisibleValues = _a.totalVisibleValues, attributeType = _a.attributeType, parentUri = _a.parentUri, requestNextPageOfAttributeValues = _a.requestNextPageOfAttributeValues, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, _b = _a.showTitle, showTitle = _b === void 0 ? true : _b, showNonOv = _a.showNonOv, totalNonVisibleValues = _a.totalNonVisibleValues;
36
36
  var styles = styles_1.useMultiLineStyles();
37
37
  var _c = react_1.useState(max), visibleValuesCount = _c[0], setVisibleValuesCount = _c[1];
38
- var hasPaging = max < totalOvValues;
39
- var showMore = hasPaging && visibleValuesCount < totalOvValues;
40
- var showLess = hasPaging && visibleValuesCount >= totalOvValues;
38
+ var hasPaging = max < totalVisibleValues;
39
+ var showMore = hasPaging && visibleValuesCount < totalVisibleValues;
40
+ var showLess = hasPaging && visibleValuesCount >= totalVisibleValues;
41
41
  var label = attributeType.label;
42
42
  var onShowMore = function () {
43
- if (values.length < totalOvValues) {
43
+ if (values.length < totalVisibleValues) {
44
44
  requestNextPageOfAttributeValues({
45
45
  parentUri: parentUri,
46
46
  attributeTypeUri: attributeType.uri,
@@ -55,12 +55,12 @@ var MultiLineRenderer = function (_a) {
55
55
  setVisibleValuesCount(max);
56
56
  };
57
57
  var shownValues = values.slice(0, visibleValuesCount);
58
- var hiddenValuesCount = totalOvValues - visibleValuesCount;
58
+ var hiddenValuesCount = totalVisibleValues - visibleValuesCount;
59
59
  return (react_1.default.createElement("div", { className: styles.wrapper },
60
60
  showTitle && (react_1.default.createElement("div", { className: styles.titleRow },
61
61
  react_1.default.createElement(Title_1.default, { label: label, className: classnames_1.default(styles.title, titleClassName), attributeType: attributeType }),
62
- react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonOvValues, attributeType: attributeType, className: styles.ovIcon }))),
63
- react_1.default.createElement("div", { className: styles.attributes }, shownValues.map(function (value) { return (react_1.default.createElement(Attribute_1.default, { key: value.uri, className: classnames_1.default(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType })); })),
62
+ react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonVisibleValues, attributeType: attributeType, className: styles.ovIcon, nonOvTotal: totalNonVisibleValues }))),
63
+ react_1.default.createElement("div", { className: styles.attributes }, shownValues.map(function (value) { return (react_1.default.createElement(Attribute_1.default, { key: value.uri, className: classnames_1.default(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType, showNonOv: showNonOv })); })),
64
64
  showMore && (react_1.default.createElement(ShowMore_1.default, { moreNumber: ramda_1.min(max, hiddenValuesCount), valueNumber: hiddenValuesCount, onClick: onShowMore })),
65
65
  showLess && react_1.default.createElement(ShowLess_1.default, { onClick: onShowLess })));
66
66
  };
@@ -3,10 +3,12 @@ import { AttributeType, AttributeValue } from '@reltio/mdm-sdk';
3
3
  declare type Props = {
4
4
  value: AttributeValue;
5
5
  attributeType: AttributeType;
6
- nonOvValues: AttributeValue[];
6
+ nonVisibleValues: AttributeValue[];
7
7
  titleClassName?: string;
8
8
  contentClassName?: string;
9
9
  showTitle?: boolean;
10
+ showNonOv: boolean;
11
+ totalNonVisibleValues: number;
10
12
  };
11
- declare const OneLineRenderer: ({ value, nonOvValues, attributeType, titleClassName, contentClassName, showTitle }: Props) => JSX.Element;
13
+ declare const OneLineRenderer: ({ value, nonVisibleValues, attributeType, titleClassName, contentClassName, showTitle, showNonOv, totalNonVisibleValues }: Props) => JSX.Element;
12
14
  export default OneLineRenderer;
@@ -13,14 +13,14 @@ var OvIcon_1 = __importDefault(require("../../OvIcon"));
13
13
  var Attribute_1 = __importDefault(require("../AttributesFactory/Attribute"));
14
14
  var styles_1 = require("./styles");
15
15
  var OneLineRenderer = function (_a) {
16
- var value = _a.value, nonOvValues = _a.nonOvValues, attributeType = _a.attributeType, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, _b = _a.showTitle, showTitle = _b === void 0 ? true : _b;
16
+ var value = _a.value, nonVisibleValues = _a.nonVisibleValues, attributeType = _a.attributeType, titleClassName = _a.titleClassName, contentClassName = _a.contentClassName, _b = _a.showTitle, showTitle = _b === void 0 ? true : _b, showNonOv = _a.showNonOv, totalNonVisibleValues = _a.totalNonVisibleValues;
17
17
  var styles = styles_1.useOneLineStyles();
18
18
  var label = attributeType.label;
19
19
  return (react_1.default.createElement("div", { className: classnames_1.default(styles.collaborationWrapper, constants_1.COMMENTS_CONTAINER_VISIBILITY_AREA) },
20
20
  react_1.default.createElement("div", { className: classnames_1.default(styles.titleRow, styles.wrapper) },
21
21
  showTitle && (react_1.default.createElement(Title_1.default, { label: label, className: classnames_1.default(styles.title, titleClassName), attributeType: attributeType })),
22
- react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonOvValues, attributeType: attributeType, className: styles.ovIcon }),
23
- react_1.default.createElement(Attribute_1.default, { className: classnames_1.default(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType, inlined: true })),
22
+ react_1.default.createElement(OvIcon_1.default, { nonOvValues: nonVisibleValues, attributeType: attributeType, className: styles.ovIcon, nonOvTotal: totalNonVisibleValues }),
23
+ react_1.default.createElement(Attribute_1.default, { className: classnames_1.default(styles.attribute, contentClassName), attributeValue: value, attributeType: attributeType, showNonOv: showNonOv, inlined: true })),
24
24
  react_1.default.createElement(CommentsContainer_1.default, { uri: value.uri, relatedObjectUris: mdm_sdk_1.createRelatedObjectUris(mdm_sdk_1.CollaborationObjectTypes.ENTITY_ATTRIBUTE, {
25
25
  uri: value.uri
26
26
  }), objectType: mdm_sdk_1.CollaborationObjectTypes.ENTITY_ATTRIBUTE })));
@@ -1,5 +1,5 @@
1
1
  export { AttributesPager };
2
- declare var _default: import("react-redux").ConnectedComponent<import("react").MemoExoticComponent<({ values, attributeType, drawLines, paging, parentUri, max, requestNextPageOfAttributeValues, titleClassName, contentClassName, showTitle }: {
2
+ declare var _default: import("react-redux").ConnectedComponent<import("react").MemoExoticComponent<({ values, attributeType, drawLines, paging, parentUri, max, requestNextPageOfAttributeValues, titleClassName, contentClassName, showTitle, showNonOv }: {
3
3
  values: (string | number | import("@reltio/mdm-sdk").AttributeValue)[];
4
4
  attributeType: import("@reltio/mdm-sdk").AttributeType;
5
5
  paging?: import("@reltio/mdm-sdk").Paging;
@@ -10,6 +10,7 @@ declare var _default: import("react-redux").ConnectedComponent<import("react").M
10
10
  titleClassName?: string;
11
11
  contentClassName?: string;
12
12
  showTitle?: boolean;
13
+ showNonOv?: boolean;
13
14
  }) => JSX.Element>, import("react-redux").Omit<{
14
15
  values: (string | number | import("@reltio/mdm-sdk").AttributeValue)[];
15
16
  attributeType: import("@reltio/mdm-sdk").AttributeType;
@@ -21,6 +22,7 @@ declare var _default: import("react-redux").ConnectedComponent<import("react").M
21
22
  titleClassName?: string;
22
23
  contentClassName?: string;
23
24
  showTitle?: boolean;
25
+ showNonOv?: boolean;
24
26
  }, "max" | "requestNextPageOfAttributeValues"> & {
25
27
  max?: any;
26
28
  }>;
@@ -1,10 +1,11 @@
1
1
  export default ComplexAttribute;
2
- declare function ComplexAttribute({ attributeTypesList, attributeValue, label, expanded: expandedProp, children }: {
2
+ declare function ComplexAttribute({ attributeTypesList, attributeValue, label, expanded: expandedProp, children, showNonOv }: {
3
3
  attributeTypesList: any;
4
4
  attributeValue: any;
5
5
  label: any;
6
6
  expanded?: boolean;
7
7
  children: any;
8
+ showNonOv: any;
8
9
  }): JSX.Element;
9
10
  declare namespace ComplexAttribute {
10
11
  namespace propTypes {
@@ -32,6 +33,7 @@ declare namespace ComplexAttribute {
32
33
  uri: PropTypes.Requireable<string>;
33
34
  }>>;
34
35
  const expanded: PropTypes.Requireable<boolean>;
36
+ const showNonOv: PropTypes.Requireable<boolean>;
35
37
  }
36
38
  }
37
39
  import PropTypes from "prop-types";
@@ -33,7 +33,7 @@ var CommentsContainer_1 = __importDefault(require("../../../CommentsContainer/Co
33
33
  var classnames_2 = require("../../../../constants/classnames");
34
34
  var styles_1 = require("./styles");
35
35
  var ComplexAttribute = function (_a) {
36
- var attributeTypesList = _a.attributeTypesList, attributeValue = _a.attributeValue, label = _a.label, _b = _a.expanded, expandedProp = _b === void 0 ? false : _b, children = _a.children;
36
+ var attributeTypesList = _a.attributeTypesList, attributeValue = _a.attributeValue, label = _a.label, _b = _a.expanded, expandedProp = _b === void 0 ? false : _b, children = _a.children, showNonOv = _a.showNonOv;
37
37
  var styles = styles_1.useStyles();
38
38
  var uri = attributeValue.uri;
39
39
  var _c = react_1.useState(false), expanded = _c[0], setExpanded = _c[1];
@@ -53,13 +53,14 @@ var ComplexAttribute = function (_a) {
53
53
  react_1.default.createElement(CommentsContainer_1.default, { uri: attributeValue.uri, relatedObjectUris: mdm_sdk_1.createRelatedObjectUris(mdm_sdk_1.CollaborationObjectTypes.ENTITY_ATTRIBUTE, {
54
54
  uri: attributeValue.uri
55
55
  }), objectType: mdm_sdk_1.CollaborationObjectTypes.ENTITY_ATTRIBUTE })),
56
- expanded && (react_1.default.createElement(AttributesList_1.default, { attrTypes: attributeTypesList, entity: attributeListEntity, drawLines: true, parentUri: uri }, children))));
56
+ expanded && (react_1.default.createElement(AttributesList_1.default, { attrTypes: attributeTypesList, entity: attributeListEntity, drawLines: true, parentUri: uri, showNonOv: showNonOv }, children))));
57
57
  };
58
58
  ComplexAttribute.propTypes = {
59
59
  children: prop_types_1.default.node,
60
60
  label: prop_types_1.default.oneOfType([prop_types_1.default.string, prop_types_1.default.node]),
61
61
  attributeTypesList: prop_types_1.default.arrayOf(mdm_sdk_1.AttributeTypeType),
62
62
  attributeValue: prop_types_1.default.oneOfType([mdm_sdk_1.NestedAttributeValueType, mdm_sdk_1.ReferenceAttributeValueType]),
63
- expanded: prop_types_1.default.bool
63
+ expanded: prop_types_1.default.bool,
64
+ showNonOv: prop_types_1.default.bool
64
65
  };
65
66
  exports.default = ComplexAttribute;
@@ -110,6 +110,7 @@ declare var _default: React.MemoExoticComponent<{
110
110
  onChangeAttribute: import("prop-types").Requireable<(...args: any[]) => any>;
111
111
  additionalControlsRenderer: import("prop-types").Requireable<(...args: any[]) => any>;
112
112
  hideDeleteButton: import("prop-types").Requireable<boolean>;
113
+ showNonOv: import("prop-types").Requireable<boolean>;
113
114
  state: import("prop-types").Requireable<string>;
114
115
  attributeValue: import("prop-types").Requireable<import("prop-types").InferProps<{
115
116
  value: import("prop-types").Requireable<object>;
@@ -112,6 +112,7 @@ declare var _default: React.MemoExoticComponent<{
112
112
  onChangeAttribute: import("prop-types").Requireable<(...args: any[]) => any>;
113
113
  additionalControlsRenderer: import("prop-types").Requireable<(...args: any[]) => any>;
114
114
  hideDeleteButton: import("prop-types").Requireable<boolean>;
115
+ showNonOv: import("prop-types").Requireable<boolean>;
115
116
  state: import("prop-types").Requireable<string>;
116
117
  attributeValue: import("prop-types").Requireable<import("prop-types").InferProps<{
117
118
  refEntity: import("prop-types").Requireable<object>;
@@ -113,6 +113,7 @@ declare var _default: import("react-redux").ConnectedComponent<import("react").M
113
113
  onChangeAttribute: import("prop-types").Requireable<(...args: any[]) => any>;
114
114
  additionalControlsRenderer: import("prop-types").Requireable<(...args: any[]) => any>;
115
115
  hideDeleteButton: import("prop-types").Requireable<boolean>;
116
+ showNonOv: import("prop-types").Requireable<boolean>;
116
117
  state: import("prop-types").Requireable<string>;
117
118
  attributeValue: import("prop-types").Requireable<import("prop-types").InferProps<{
118
119
  refEntity: import("prop-types").Requireable<object>;
@@ -8,13 +8,14 @@ declare type Props = {
8
8
  crosswalksMap: CrosswalksByOwnerTypeMap;
9
9
  visibleColumns?: string[];
10
10
  onChangeVisibleColumns?: (visibleColumns: string[]) => void;
11
- onDelete: (event: DeleteInlineAttributeEvent) => void;
12
- onPin: (event: PinInlineAttributeEvent) => void;
13
- onIgnore: (event: IgnoreInlineAttributeEvent) => void;
14
- onEdit: (event: EditInlineAttributeEvent) => void;
15
- onAdd: (event: AddInlineAttributeEvent) => void;
11
+ readOnly?: boolean;
12
+ onDelete?: (event: DeleteInlineAttributeEvent) => void;
13
+ onPin?: (event: PinInlineAttributeEvent) => void;
14
+ onIgnore?: (event: IgnoreInlineAttributeEvent) => void;
15
+ onEdit?: (event: EditInlineAttributeEvent) => void;
16
+ onAdd?: (event: AddInlineAttributeEvent) => void;
16
17
  selectedAttributeTypes?: AttributeType[];
17
- onSelectAttributeTypes: (selected: AttributeType[]) => void;
18
+ onSelectAttributeTypes?: (selected: AttributeType[]) => void;
18
19
  };
19
- declare const _default: React.MemoExoticComponent<({ entity, isLoading, crosswalksMap, visibleColumns, onChangeVisibleColumns, onDelete, onPin, onIgnore, onEdit, onAdd, selectedAttributeTypes, onSelectAttributeTypes }: Props) => JSX.Element>;
20
+ declare const _default: React.MemoExoticComponent<({ entity, isLoading, crosswalksMap, visibleColumns, onChangeVisibleColumns, readOnly, onDelete, onPin, onIgnore, onEdit, onAdd, selectedAttributeTypes, onSelectAttributeTypes }: Props) => JSX.Element>;
20
21
  export default _default;
@@ -46,10 +46,11 @@ var RowCellRenderer_1 = __importDefault(require("./cell-renderers/RowCellRendere
46
46
  var LinearLoadIndicator_1 = __importDefault(require("../../LinearLoadIndicator/LinearLoadIndicator"));
47
47
  var ConfirmDeleteDialog_1 = __importDefault(require("../../ConfirmDeleteDialog/ConfirmDeleteDialog"));
48
48
  var ConfirmEditIgnoredDialog_1 = __importDefault(require("./ConfirmEditIgnoredDialog/ConfirmEditIgnoredDialog"));
49
+ var core_1 = require("../../../core");
49
50
  var styles_1 = require("./styles");
50
51
  var DEFAULT_ROW_HEIGHT = 68;
51
52
  var AttributesTable = function (_a) {
52
- var entity = _a.entity, isLoading = _a.isLoading, crosswalksMap = _a.crosswalksMap, _b = _a.visibleColumns, visibleColumns = _b === void 0 ? helpers_1.DEFAULT_VISIBLE_COLUMNS : _b, onChangeVisibleColumns = _a.onChangeVisibleColumns, onDelete = _a.onDelete, onPin = _a.onPin, onIgnore = _a.onIgnore, onEdit = _a.onEdit, onAdd = _a.onAdd, selectedAttributeTypes = _a.selectedAttributeTypes, onSelectAttributeTypes = _a.onSelectAttributeTypes;
53
+ var entity = _a.entity, isLoading = _a.isLoading, crosswalksMap = _a.crosswalksMap, _b = _a.visibleColumns, visibleColumns = _b === void 0 ? helpers_1.DEFAULT_VISIBLE_COLUMNS : _b, onChangeVisibleColumns = _a.onChangeVisibleColumns, readOnly = _a.readOnly, _c = _a.onDelete, onDelete = _c === void 0 ? core_1.noop : _c, _d = _a.onPin, onPin = _d === void 0 ? core_1.noop : _d, _e = _a.onIgnore, onIgnore = _e === void 0 ? core_1.noop : _e, _f = _a.onEdit, onEdit = _f === void 0 ? core_1.noop : _f, _g = _a.onAdd, onAdd = _g === void 0 ? core_1.noop : _g, selectedAttributeTypes = _a.selectedAttributeTypes, _h = _a.onSelectAttributeTypes, onSelectAttributeTypes = _h === void 0 ? core_1.noop : _h;
53
54
  var styles = styles_1.useStyles();
54
55
  var visibleColumnsData = react_1.useMemo(function () {
55
56
  return ramda_1.pipe(ramda_1.filter(function (_a) {
@@ -57,27 +58,27 @@ var AttributesTable = function (_a) {
57
58
  return visibleColumns.includes(id);
58
59
  }), helpers_1.getBasicTableColumnsData)(helpers_1.COLUMNS_DATA);
59
60
  }, [visibleColumns]);
60
- var _c = entity || {}, parentTypeUri = _c.type, parentUri = _c.uri, _d = _c.attributes, attributes = _d === void 0 ? {} : _d;
61
+ var _j = entity || {}, parentTypeUri = _j.type, parentUri = _j.uri, _k = _j.attributes, attributes = _k === void 0 ? {} : _k;
61
62
  var metadata = react_redux_1.useSelector(mdm_module_1.default.selectors.getMetadata);
62
63
  react_1.useEffect(function () {
63
- if (parentUri) {
64
+ if (entity && ramda_1.isNil(selectedAttributeTypes)) {
64
65
  var initialAttrTypes = ramda_1.pipe(ramda_1.keys, ramda_1.without(['paging']), ramda_1.map(mdm_sdk_1.makeAttrTypeUri(parentTypeUri)), ramda_1.map(function (attrTypeUri) { return mdm_sdk_1.findAttributeTypeByUri(metadata, attrTypeUri, parentTypeUri); }), ramda_1.filter(mdm_sdk_1.isReadableAttribute))(attributes);
65
66
  onSelectAttributeTypes(initialAttrTypes);
66
67
  }
67
- }, [parentUri]);
68
+ }, [entity, selectedAttributeTypes]);
68
69
  var rowsData = react_1.useMemo(function () {
69
70
  return parentTypeUri
70
71
  ? helpers_1.getBasicTableRowsData(metadata, parentTypeUri, selectedAttributeTypes, visibleColumns, crosswalksMap, attributes)
71
72
  : [];
72
73
  }, [metadata, parentTypeUri, selectedAttributeTypes, visibleColumns, attributes, crosswalksMap]);
73
- var _e = BasicTableView_1.useDynamicRowCellHeight(), getDynamicRowCellHeight = _e.getDynamicRowCellHeight, changeRowCellHeight = _e.changeRowCellHeight;
74
+ var _l = BasicTableView_1.useDynamicRowCellHeight(), getDynamicRowCellHeight = _l.getDynamicRowCellHeight, changeRowCellHeight = _l.changeRowCellHeight;
74
75
  var renderRowCell = react_1.useCallback(function (props) { return (react_1.default.createElement(BasicTableView_1.RowCellAutoSizer, __assign({ onChangeHeight: changeRowCellHeight }, props),
75
76
  react_1.default.createElement(RowCellRenderer_1.default, __assign({}, props)))); }, [changeRowCellHeight]);
76
77
  var getRowCellHeight = react_1.useCallback(ramda_1.either(getDynamicRowCellHeight, ramda_1.always(DEFAULT_ROW_HEIGHT)), [
77
78
  getDynamicRowCellHeight
78
79
  ]);
79
- var _f = react_1.useState(null), pendingDeletion = _f[0], setPendingDeletion = _f[1];
80
- var _g = react_1.useState(null), pendingIgnoredEditing = _g[0], setPendingIgnoredEditing = _g[1];
80
+ var _m = react_1.useState(null), pendingDeletion = _m[0], setPendingDeletion = _m[1];
81
+ var _o = react_1.useState(null), pendingIgnoredEditing = _o[0], setPendingIgnoredEditing = _o[1];
81
82
  var handleEdit = react_1.useCallback(function (event) {
82
83
  event.attributeValue.ignored ? setPendingIgnoredEditing(event) : onEdit(event);
83
84
  }, [onEdit, setPendingIgnoredEditing]);
@@ -90,7 +91,8 @@ var AttributesTable = function (_a) {
90
91
  parentUri: parentUri,
91
92
  parentTypeUri: parentTypeUri,
92
93
  selectedAttributeTypes: selectedAttributeTypes,
93
- onSelectAttributeTypes: onSelectAttributeTypes
94
+ onSelectAttributeTypes: onSelectAttributeTypes,
95
+ readOnly: readOnly
94
96
  }); }, [
95
97
  setPendingDeletion,
96
98
  onPin,
@@ -100,7 +102,8 @@ var AttributesTable = function (_a) {
100
102
  parentUri,
101
103
  parentTypeUri,
102
104
  selectedAttributeTypes,
103
- onSelectAttributeTypes
105
+ onSelectAttributeTypes,
106
+ readOnly
104
107
  ]);
105
108
  return (react_1.default.createElement("div", { className: styles.tableContainer },
106
109
  react_1.default.createElement(BasicViewHeader_1.default, { classes: { root: styles.tableHeader }, title: ui_i18n_1.default.text('Sources') },
@@ -13,7 +13,8 @@ declare type Props = {
13
13
  onIgnore: (event: IgnoreInlineAttributeEvent) => void;
14
14
  onAdd: (event: AddInlineAttributeEvent) => void;
15
15
  parentUri: string;
16
+ readOnly?: boolean;
16
17
  };
17
- export declare const AttributeValuesRenderer: ({ value, onDelete, onEdit, onPin, onIgnore, onAdd, parentUri }: Props) => JSX.Element;
18
+ export declare const AttributeValuesRenderer: ({ value, onDelete, onEdit, onPin, onIgnore, onAdd, parentUri, readOnly }: Props) => JSX.Element;
18
19
  declare const _default: any;
19
20
  export default _default;
@@ -19,13 +19,13 @@ var AttributesFactory_1 = __importDefault(require("./attribute-renderers/Attribu
19
19
  var BasicTableView_1 = require("../../../BasicTableView");
20
20
  var ramda_1 = require("ramda");
21
21
  var AttributeValuesRenderer = function (_a) {
22
- var value = _a.value, onDelete = _a.onDelete, onEdit = _a.onEdit, onPin = _a.onPin, onIgnore = _a.onIgnore, onAdd = _a.onAdd, parentUri = _a.parentUri;
22
+ var value = _a.value, onDelete = _a.onDelete, onEdit = _a.onEdit, onPin = _a.onPin, onIgnore = _a.onIgnore, onAdd = _a.onAdd, parentUri = _a.parentUri, readOnly = _a.readOnly;
23
23
  return AttributesFactory_1.default.build(value.attributeType.type, __assign(__assign({}, value), { parentUri: parentUri,
24
24
  onDelete: onDelete,
25
25
  onEdit: onEdit,
26
26
  onPin: onPin,
27
27
  onIgnore: onIgnore,
28
- onAdd: onAdd }));
28
+ onAdd: onAdd, disableEdit: readOnly, disableDelete: readOnly }));
29
29
  };
30
30
  exports.AttributeValuesRenderer = AttributeValuesRenderer;
31
- exports.default = BasicTableView_1.withTableContext(ramda_1.pick(['onDelete', 'onPin', 'onIgnore', 'onEdit', 'onAdd', 'parentUri']))(exports.AttributeValuesRenderer);
31
+ exports.default = BasicTableView_1.withTableContext(ramda_1.pick(['onDelete', 'onPin', 'onIgnore', 'onEdit', 'onAdd', 'parentUri', 'readOnly']))(exports.AttributeValuesRenderer);
@@ -1,3 +1,10 @@
1
1
  /// <reference types="react" />
2
- declare const AttributesHeadCellRenderer: (props: any) => JSX.Element;
3
- export default AttributesHeadCellRenderer;
2
+ declare type Props = {
3
+ readOnly?: boolean;
4
+ headCellData: {
5
+ label: string;
6
+ };
7
+ };
8
+ export declare const AttributesHeadCellRenderer: ({ readOnly, ...props }: Props) => JSX.Element;
9
+ declare const _default: any;
10
+ export default _default;
@@ -10,17 +10,33 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
13
24
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
26
  };
16
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.AttributesHeadCellRenderer = void 0;
17
29
  var react_1 = __importDefault(require("react"));
18
30
  var HeadCellRenderer_1 = __importDefault(require("./HeadCellRenderer"));
19
31
  var AddAttributesButton_1 = __importDefault(require("../AddAttributesButton/AddAttributesButton"));
20
32
  var Spacer_1 = __importDefault(require("../../../Spacer/Spacer"));
21
- var AttributesHeadCellRenderer = function (props) {
22
- return (react_1.default.createElement(HeadCellRenderer_1.default, __assign({}, props),
33
+ var BasicTableView_1 = require("../../../BasicTableView");
34
+ var ramda_1 = require("ramda");
35
+ var AttributesHeadCellRenderer = function (_a) {
36
+ var readOnly = _a.readOnly, props = __rest(_a, ["readOnly"]);
37
+ return readOnly ? (react_1.default.createElement(HeadCellRenderer_1.default, __assign({}, props))) : (react_1.default.createElement(HeadCellRenderer_1.default, __assign({}, props),
23
38
  react_1.default.createElement(Spacer_1.default, null),
24
39
  react_1.default.createElement(AddAttributesButton_1.default, null)));
25
40
  };
26
- exports.default = AttributesHeadCellRenderer;
41
+ exports.AttributesHeadCellRenderer = AttributesHeadCellRenderer;
42
+ exports.default = BasicTableView_1.withTableContext(ramda_1.pick(['readOnly']))(exports.AttributesHeadCellRenderer);
@@ -6,6 +6,8 @@ export declare type AttributesRendererProps = {
6
6
  attributeType: AttributeType;
7
7
  crosswalksMap: CrosswalksMap;
8
8
  parentUri: string;
9
+ disableDelete?: boolean;
10
+ disableEdit?: boolean;
9
11
  onDelete: (event: DeleteInlineAttributeEvent) => void;
10
12
  onEdit: (event: EditInlineAttributeEvent) => void;
11
13
  onPin: (event: PinInlineAttributeEvent) => void;
@@ -3,7 +3,7 @@ declare type DateValues = [Date, Date];
3
3
  declare type Props = {
4
4
  values: DateValues;
5
5
  onChange: (values: DateValues) => void;
6
- onFocus: () => void;
6
+ onFocus?: () => void;
7
7
  };
8
- declare const ActivityDateRangeEditor: ({ values, onChange, onFocus }: Props) => JSX.Element;
9
- export default ActivityDateRangeEditor;
8
+ declare const CustomDateRangeEditor: ({ values, onChange, onFocus }: Props) => JSX.Element;
9
+ export default CustomDateRangeEditor;
@@ -38,7 +38,7 @@ var formatValue = function (value, placeholder) {
38
38
  ? "" + placeholder
39
39
  : "" + mdm_sdk_1.formatDataTypeValue({ dataTypeDefinition: { type: mdm_sdk_1.DataTypes.TYPE_ACTIVENESS_DATE } }, value);
40
40
  };
41
- var ActivityDateRangeEditor = function (_a) {
41
+ var CustomDateRangeEditor = function (_a) {
42
42
  var values = _a.values, onChange = _a.onChange, onFocus = _a.onFocus;
43
43
  var placeholder = localeFormat;
44
44
  var inputRef = react_1.useRef(null);
@@ -55,13 +55,14 @@ var ActivityDateRangeEditor = function (_a) {
55
55
  var onCancel = function () {
56
56
  setOpen(false);
57
57
  };
58
- return (react_1.default.createElement("div", { className: styles.dateRangeRoot },
59
- react_1.default.createElement(TextField_1.default, { fullWidth: true, value: values.map(function (value) { return formatValue(value, placeholder); }).join(' \u2014 '), onClick: handleToggle, variant: "filled", margin: "dense", ref: inputRef, InputProps: {
58
+ return (react_1.default.createElement("div", { className: styles.root },
59
+ react_1.default.createElement(TextField_1.default, { fullWidth: true, value: values.map(function (value) { return formatValue(value, placeholder); }).join(' \u2014 '), onClick: handleToggle, variant: "filled", ref: inputRef, InputProps: {
60
60
  endAdornment: (react_1.default.createElement(DropdownIndicatorWithIconButton_1.default, { selectProps: { classes: styles, menuIsOpen: open }, innerProps: {} })),
61
61
  disableUnderline: ramda_1.isNil(values),
62
62
  readOnly: true,
63
63
  classes: {
64
- root: styles.labels
64
+ root: styles.inputRoot,
65
+ input: styles.input
65
66
  }
66
67
  }, InputLabelProps: {
67
68
  shrink: false
@@ -84,4 +85,4 @@ var ActivityDateRangeEditor = function (_a) {
84
85
  // @ts-ignore
85
86
  values: values, onCancel: onCancel, onApply: onApply, type: mdm_sdk_1.DataTypes.TYPE_ACTIVENESS_DATE }))));
86
87
  };
87
- exports.default = ActivityDateRangeEditor;
88
+ exports.default = CustomDateRangeEditor;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"input" | "root" | "dateOptionLabel" | "dropdownIndicator" | "inputRoot" | "paper">;
@@ -0,0 +1,25 @@
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
+ root: {
7
+ flex: 1
8
+ },
9
+ dropdownIndicator: {
10
+ transition: 'transform .15s ease'
11
+ },
12
+ inputRoot: {
13
+ fontSize: '14px',
14
+ height: 46
15
+ },
16
+ input: {
17
+ padding: '0 12px 0'
18
+ },
19
+ dateOptionLabel: {
20
+ minWidth: '100px'
21
+ },
22
+ paper: {
23
+ minWidth: '112px'
24
+ }
25
+ });
@@ -1 +1 @@
1
- export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"underline" | "paper" | "dropdownIndicator" | "adornedEnd" | "menuItem" | "menuText" | "inputRoot" | "inputLabel">;
1
+ export const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"underline" | "dropdownIndicator" | "adornedEnd" | "inputRoot" | "paper" | "menuItem" | "menuText" | "inputLabel">;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { DateRangeFilter } from '../../../types';
3
+ declare type Props = {
4
+ value: DateRangeFilter;
5
+ onChange: (range: DateRangeFilter) => void;
6
+ className?: string;
7
+ };
8
+ declare const DateRangeSelector: ({ value, onChange, className }: Props) => JSX.Element;
9
+ export default DateRangeSelector;
@@ -0,0 +1,91 @@
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 ui_i18n_1 = __importDefault(require("ui-i18n"));
27
+ var classnames_1 = __importDefault(require("classnames"));
28
+ var Typography_1 = __importDefault(require("@material-ui/core/Typography"));
29
+ var SimpleDropDownSelector_1 = __importDefault(require("../../SimpleDropDownSelector/SimpleDropDownSelector"));
30
+ var utils_1 = require("./utils");
31
+ var DateIntervalSelector_1 = __importDefault(require("../../DateIntervalSelector/DateIntervalSelector"));
32
+ var hooks_1 = require("../../../hooks");
33
+ var CustomDateRangeEditor_1 = __importDefault(require("../../editors/CustomDateRangeEditor/CustomDateRangeEditor"));
34
+ var types_1 = require("../../../types");
35
+ var styles_1 = require("./styles");
36
+ var emptyDates = [null, null];
37
+ var emptyInterval = [null, 'hours'];
38
+ var DateRangeSelector = function (_a) {
39
+ var value = _a.value, onChange = _a.onChange, className = _a.className;
40
+ var styles = styles_1.useStyles();
41
+ var isIntervalType = function (type) { return type === types_1.DateRangeTypes.WITHIN || type === types_1.DateRangeTypes.AGO; };
42
+ var isBetweenType = function (type) { return type === types_1.DateRangeTypes.BETWEEN; };
43
+ var initDatesInterval = isBetweenType(value === null || value === void 0 ? void 0 : value.type) ? value.period : emptyDates;
44
+ var initInterval = isIntervalType(value === null || value === void 0 ? void 0 : value.type) ? value.period : emptyInterval;
45
+ var _b = react_1.useState(initDatesInterval), datesInterval = _b[0], setDatesInterval = _b[1];
46
+ var _c = react_1.useState(initInterval), interval = _c[0], setInterval = _c[1];
47
+ var selectedType = (value === null || value === void 0 ? void 0 : value.type) || types_1.DateRangeTypes.WITHIN;
48
+ var getCurrentPeriodByType = function (type) {
49
+ if (isIntervalType(type)) {
50
+ return interval;
51
+ }
52
+ else if (isBetweenType(type)) {
53
+ return datesInterval;
54
+ }
55
+ };
56
+ var changeType = function (_a) {
57
+ var type = _a.value;
58
+ if ((value === null || value === void 0 ? void 0 : value.type) !== type) {
59
+ onChange({ period: getCurrentPeriodByType(type), type: type });
60
+ }
61
+ };
62
+ var changePeriod = function (period) {
63
+ onChange({ type: selectedType, period: period });
64
+ };
65
+ hooks_1.useDidUpdateEffect(function () {
66
+ if (value) {
67
+ if (isIntervalType(value.type)) {
68
+ setInterval(value.period);
69
+ }
70
+ else if (isBetweenType(value.type)) {
71
+ setDatesInterval(value.period);
72
+ }
73
+ }
74
+ else {
75
+ setDatesInterval(emptyDates);
76
+ setInterval(emptyInterval);
77
+ }
78
+ }, [value]);
79
+ return (react_1.default.createElement("div", { className: classnames_1.default(styles.root, className) },
80
+ react_1.default.createElement(Typography_1.default, { className: styles.title, variant: 'subtitle1' }, ui_i18n_1.default.text('Date')),
81
+ react_1.default.createElement("div", { className: styles.intervalContainer },
82
+ react_1.default.createElement(SimpleDropDownSelector_1.default, { label: '', className: styles.typeInput, value: {
83
+ value: selectedType,
84
+ label: utils_1.getDateRangeTypeLabel(selectedType)
85
+ }, options: utils_1.dateRangeTypeOptions.map(function (option) { return ({
86
+ value: option,
87
+ label: utils_1.getDateRangeTypeLabel(option)
88
+ }); }), onChange: changeType }),
89
+ isIntervalType(selectedType) ? (react_1.default.createElement(DateIntervalSelector_1.default, { interval: interval, onChange: changePeriod })) : (react_1.default.createElement(CustomDateRangeEditor_1.default, { values: datesInterval, onChange: changePeriod })))));
90
+ };
91
+ exports.default = DateRangeSelector;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"title" | "root" | "intervalContainer" | "typeInput">;
@@ -0,0 +1,22 @@
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
+ root: {
7
+ flex: 1
8
+ },
9
+ title: {
10
+ paddingBottom: '10px',
11
+ paddingLeft: '5px',
12
+ fontSize: '14px'
13
+ },
14
+ intervalContainer: {
15
+ display: 'flex',
16
+ justifyContent: 'space-between'
17
+ },
18
+ typeInput: {
19
+ width: 160,
20
+ marginRight: 10
21
+ }
22
+ });
@@ -0,0 +1,3 @@
1
+ import { DateRangeTypes } from '../../../types';
2
+ export declare const dateRangeTypeOptions: DateRangeTypes[];
3
+ export declare const getDateRangeTypeLabel: (type: DateRangeTypes) => string;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getDateRangeTypeLabel = exports.dateRangeTypeOptions = void 0;
7
+ var ui_i18n_1 = __importDefault(require("ui-i18n"));
8
+ var types_1 = require("../../../types");
9
+ exports.dateRangeTypeOptions = [types_1.DateRangeTypes.WITHIN, types_1.DateRangeTypes.AGO, types_1.DateRangeTypes.BETWEEN];
10
+ var getDateRangeTypeLabel = function (type) {
11
+ var _a;
12
+ var labels = (_a = {},
13
+ _a[types_1.DateRangeTypes.WITHIN] = ui_i18n_1.default.text('Within the last'),
14
+ _a[types_1.DateRangeTypes.AGO] = ui_i18n_1.default.text('More than'),
15
+ _a[types_1.DateRangeTypes.BETWEEN] = ui_i18n_1.default.text('Date range'),
16
+ _a);
17
+ return labels[type] || '';
18
+ };
19
+ exports.getDateRangeTypeLabel = getDateRangeTypeLabel;