@reltio/components 1.4.1068 → 1.4.1073

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 (163) hide show
  1. package/cjs/components/AttributeGroupIcon/AttributeGroupIcon.d.ts +11 -0
  2. package/cjs/components/AttributeGroupIcon/AttributeGroupIcon.js +20 -0
  3. package/cjs/components/AttributeGroupIcon/styles.d.ts +1 -0
  4. package/cjs/components/AttributeGroupIcon/styles.js +11 -0
  5. package/cjs/components/AttributesFiltersBuilder/AttributesFiltersBuilder.d.ts +9 -0
  6. package/cjs/components/AttributesFiltersBuilder/AttributesFiltersBuilder.js +112 -0
  7. package/cjs/components/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.d.ts +9 -0
  8. package/cjs/components/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.js +53 -0
  9. package/cjs/components/AttributesFiltersBuilder/components/FilterSelector/FilterSelector.d.ts +7 -0
  10. package/cjs/components/AttributesFiltersBuilder/components/FilterSelector/FilterSelector.js +56 -0
  11. package/cjs/components/AttributesFiltersBuilder/components/FilterSelector/styles.d.ts +2 -0
  12. package/cjs/components/AttributesFiltersBuilder/components/FilterSelector/styles.js +9 -0
  13. package/cjs/components/AttributesFiltersBuilder/components/RowActions/RowActions.d.ts +4 -0
  14. package/cjs/components/AttributesFiltersBuilder/components/RowActions/RowActions.js +51 -0
  15. package/cjs/components/AttributesFiltersBuilder/components/RowActions/styles.d.ts +1 -0
  16. package/cjs/components/AttributesFiltersBuilder/components/RowActions/styles.js +23 -0
  17. package/cjs/components/AttributesFiltersBuilder/components/ValueEditor/ValueEditor.d.ts +4 -0
  18. package/cjs/components/AttributesFiltersBuilder/components/ValueEditor/ValueEditor.js +60 -0
  19. package/cjs/components/AttributesFiltersBuilder/components/ValueEditor/styles.d.ts +1 -0
  20. package/cjs/components/AttributesFiltersBuilder/components/ValueEditor/styles.js +25 -0
  21. package/cjs/components/AttributesFiltersBuilder/helpers.d.ts +12 -0
  22. package/cjs/components/AttributesFiltersBuilder/helpers.js +77 -0
  23. package/cjs/components/AttributesFiltersBuilder/styles.d.ts +1 -0
  24. package/cjs/components/AttributesFiltersBuilder/styles.js +21 -0
  25. package/cjs/components/AttributesFiltersBuilder/types.d.ts +24 -0
  26. package/cjs/components/AttributesFiltersBuilder/types.js +2 -0
  27. package/cjs/components/AttributesFiltersButton/ActionButtons/ActionButtons.d.ts +8 -0
  28. package/cjs/components/AttributesFiltersButton/ActionButtons/ActionButtons.js +18 -0
  29. package/cjs/components/AttributesFiltersButton/ActionButtons/styles.d.ts +1 -0
  30. package/cjs/components/AttributesFiltersButton/ActionButtons/styles.js +26 -0
  31. package/cjs/components/AttributesFiltersButton/AttributesFiltersButton.d.ts +9 -0
  32. package/cjs/components/AttributesFiltersButton/AttributesFiltersButton.js +82 -0
  33. package/cjs/components/AttributesFiltersButton/styles.d.ts +1 -0
  34. package/cjs/components/AttributesFiltersButton/styles.js +30 -0
  35. package/cjs/components/BasicAttributeSelector/AttributeTitle/AttributeTitle.d.ts +14 -0
  36. package/cjs/components/BasicAttributeSelector/AttributeTitle/AttributeTitle.js +27 -0
  37. package/cjs/components/BasicAttributeSelector/AttributeTitle/styles.d.ts +2 -0
  38. package/cjs/components/BasicAttributeSelector/AttributeTitle/styles.js +44 -0
  39. package/cjs/components/BasicAttributeSelector/BasicAttributeSelector.d.ts +4 -0
  40. package/cjs/components/BasicAttributeSelector/BasicAttributeSelector.js +99 -0
  41. package/cjs/components/BasicAttributeSelector/helpers.d.ts +22 -0
  42. package/cjs/components/BasicAttributeSelector/helpers.js +80 -0
  43. package/cjs/components/BasicAttributeSelector/styles.d.ts +2 -0
  44. package/cjs/components/BasicAttributeSelector/styles.js +14 -0
  45. package/cjs/components/ConnectionEditor/ConnectionEditor.d.ts +12 -3
  46. package/cjs/components/ConnectionEditor/ConnectionEditor.js +72 -5
  47. package/cjs/components/ConnectionEditor/styles.d.ts +1 -0
  48. package/cjs/components/ConnectionEditor/styles.js +12 -0
  49. package/cjs/components/ConnectionRelationTypeSelector/ConnectionRelationTypeSelector.js +3 -2
  50. package/cjs/components/Image/ImageActionsOverlay/styles.d.ts +1 -1
  51. package/cjs/components/ImageDetailsView/MetaInfoForm/styles.d.ts +1 -1
  52. package/cjs/components/QueryBuilderRow/QueryBuilderRow.d.ts +2 -2
  53. package/cjs/components/QueryBuilderRowsGroup/QueryBuilderRowsGroup.d.ts +2 -2
  54. package/cjs/components/QueryBuilderRowsGroup/QueryBuilderRowsGroup.js +1 -1
  55. package/cjs/components/SelectAttributesList/SelectAttributesList.d.ts +14 -0
  56. package/cjs/components/SelectAttributesList/SelectAttributesList.js +75 -0
  57. package/cjs/components/SelectAttributesList/styles.d.ts +1 -0
  58. package/cjs/components/SelectAttributesList/styles.js +16 -0
  59. package/cjs/components/SelectionPopup/SelectionPopup.d.ts +1 -1
  60. package/cjs/components/SidePanel/SidePanelContentHeader/SidePanelContentHeader.d.ts +2 -2
  61. package/cjs/components/activityLog/activities/SearchActivity.js +2 -2
  62. package/cjs/components/attributes/editMode/EntitySelector/EntitySelector.d.ts +1 -1
  63. package/cjs/components/attributes/editMode/EntitySelector/EntitySelector.js +13 -6
  64. package/cjs/components/index.d.ts +4 -0
  65. package/cjs/components/index.js +9 -1
  66. package/cjs/components/workflow/hooks/useWorkflowAssignee.d.ts +1 -1
  67. package/cjs/components/workflow/hooks/useWorkflowAssignee.js +2 -2
  68. package/cjs/constants/prop-types.d.ts +1 -1
  69. package/cjs/constants/prop-types.js +1 -1
  70. package/cjs/hooks/index.d.ts +1 -0
  71. package/cjs/hooks/index.js +3 -1
  72. package/cjs/hooks/useEditableConnection.d.ts +10 -4
  73. package/cjs/hooks/useEditableConnection.js +27 -3
  74. package/cjs/hooks/useReadableSearchState.d.ts +2 -0
  75. package/cjs/{components/activityLog/hooks → hooks}/useReadableSearchState.js +0 -0
  76. package/cjs/icons/Duplicate.d.ts +3 -0
  77. package/cjs/icons/Duplicate.js +28 -0
  78. package/cjs/icons/index.d.ts +6 -3
  79. package/cjs/icons/index.js +14 -7
  80. package/cjs/types/index.d.ts +40 -0
  81. package/esm/components/AttributeGroupIcon/AttributeGroupIcon.d.ts +11 -0
  82. package/esm/components/AttributeGroupIcon/AttributeGroupIcon.js +15 -0
  83. package/esm/components/AttributeGroupIcon/styles.d.ts +1 -0
  84. package/esm/components/AttributeGroupIcon/styles.js +8 -0
  85. package/esm/components/AttributesFiltersBuilder/AttributesFiltersBuilder.d.ts +9 -0
  86. package/esm/components/AttributesFiltersBuilder/AttributesFiltersBuilder.js +88 -0
  87. package/esm/components/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.d.ts +9 -0
  88. package/esm/components/AttributesFiltersBuilder/components/AttributeSelector/AttributeSelector.js +29 -0
  89. package/esm/components/AttributesFiltersBuilder/components/FilterSelector/FilterSelector.d.ts +7 -0
  90. package/esm/components/AttributesFiltersBuilder/components/FilterSelector/FilterSelector.js +32 -0
  91. package/esm/components/AttributesFiltersBuilder/components/FilterSelector/styles.d.ts +2 -0
  92. package/esm/components/AttributesFiltersBuilder/components/FilterSelector/styles.js +7 -0
  93. package/esm/components/AttributesFiltersBuilder/components/RowActions/RowActions.d.ts +4 -0
  94. package/esm/components/AttributesFiltersBuilder/components/RowActions/RowActions.js +27 -0
  95. package/esm/components/AttributesFiltersBuilder/components/RowActions/styles.d.ts +1 -0
  96. package/esm/components/AttributesFiltersBuilder/components/RowActions/styles.js +20 -0
  97. package/esm/components/AttributesFiltersBuilder/components/ValueEditor/ValueEditor.d.ts +4 -0
  98. package/esm/components/AttributesFiltersBuilder/components/ValueEditor/ValueEditor.js +36 -0
  99. package/esm/components/AttributesFiltersBuilder/components/ValueEditor/styles.d.ts +1 -0
  100. package/esm/components/AttributesFiltersBuilder/components/ValueEditor/styles.js +22 -0
  101. package/esm/components/AttributesFiltersBuilder/helpers.d.ts +12 -0
  102. package/esm/components/AttributesFiltersBuilder/helpers.js +70 -0
  103. package/esm/components/AttributesFiltersBuilder/styles.d.ts +1 -0
  104. package/esm/components/AttributesFiltersBuilder/styles.js +18 -0
  105. package/esm/components/AttributesFiltersBuilder/types.d.ts +24 -0
  106. package/esm/components/AttributesFiltersBuilder/types.js +1 -0
  107. package/esm/components/AttributesFiltersButton/ActionButtons/ActionButtons.d.ts +8 -0
  108. package/esm/components/AttributesFiltersButton/ActionButtons/ActionButtons.js +13 -0
  109. package/esm/components/AttributesFiltersButton/ActionButtons/styles.d.ts +1 -0
  110. package/esm/components/AttributesFiltersButton/ActionButtons/styles.js +23 -0
  111. package/esm/components/AttributesFiltersButton/AttributesFiltersButton.d.ts +9 -0
  112. package/esm/components/AttributesFiltersButton/AttributesFiltersButton.js +58 -0
  113. package/esm/components/AttributesFiltersButton/styles.d.ts +1 -0
  114. package/esm/components/AttributesFiltersButton/styles.js +27 -0
  115. package/esm/components/BasicAttributeSelector/AttributeTitle/AttributeTitle.d.ts +14 -0
  116. package/esm/components/BasicAttributeSelector/AttributeTitle/AttributeTitle.js +22 -0
  117. package/esm/components/BasicAttributeSelector/AttributeTitle/styles.d.ts +2 -0
  118. package/esm/components/BasicAttributeSelector/AttributeTitle/styles.js +42 -0
  119. package/esm/components/BasicAttributeSelector/BasicAttributeSelector.d.ts +4 -0
  120. package/esm/components/BasicAttributeSelector/BasicAttributeSelector.js +75 -0
  121. package/esm/components/BasicAttributeSelector/helpers.d.ts +22 -0
  122. package/esm/components/BasicAttributeSelector/helpers.js +72 -0
  123. package/esm/components/BasicAttributeSelector/styles.d.ts +2 -0
  124. package/esm/components/BasicAttributeSelector/styles.js +12 -0
  125. package/esm/components/ConnectionEditor/ConnectionEditor.d.ts +12 -3
  126. package/esm/components/ConnectionEditor/ConnectionEditor.js +74 -7
  127. package/esm/components/ConnectionEditor/styles.d.ts +1 -0
  128. package/esm/components/ConnectionEditor/styles.js +9 -0
  129. package/esm/components/ConnectionRelationTypeSelector/ConnectionRelationTypeSelector.js +3 -2
  130. package/esm/components/Image/ImageActionsOverlay/styles.d.ts +1 -1
  131. package/esm/components/ImageDetailsView/MetaInfoForm/styles.d.ts +1 -1
  132. package/esm/components/QueryBuilderRow/QueryBuilderRow.d.ts +2 -2
  133. package/esm/components/QueryBuilderRowsGroup/QueryBuilderRowsGroup.d.ts +2 -2
  134. package/esm/components/QueryBuilderRowsGroup/QueryBuilderRowsGroup.js +1 -1
  135. package/esm/components/SelectAttributesList/SelectAttributesList.d.ts +14 -0
  136. package/esm/components/SelectAttributesList/SelectAttributesList.js +51 -0
  137. package/esm/components/SelectAttributesList/styles.d.ts +1 -0
  138. package/esm/components/SelectAttributesList/styles.js +13 -0
  139. package/esm/components/SelectionPopup/SelectionPopup.d.ts +1 -1
  140. package/esm/components/SidePanel/SidePanelContentHeader/SidePanelContentHeader.d.ts +2 -2
  141. package/esm/components/activityLog/activities/SearchActivity.js +1 -1
  142. package/esm/components/attributes/editMode/EntitySelector/EntitySelector.d.ts +1 -1
  143. package/esm/components/attributes/editMode/EntitySelector/EntitySelector.js +13 -6
  144. package/esm/components/index.d.ts +4 -0
  145. package/esm/components/index.js +4 -0
  146. package/esm/components/workflow/hooks/useWorkflowAssignee.d.ts +1 -1
  147. package/esm/components/workflow/hooks/useWorkflowAssignee.js +1 -1
  148. package/esm/constants/prop-types.d.ts +1 -1
  149. package/esm/constants/prop-types.js +1 -1
  150. package/esm/hooks/index.d.ts +1 -0
  151. package/esm/hooks/index.js +1 -0
  152. package/esm/hooks/useEditableConnection.d.ts +10 -4
  153. package/esm/hooks/useEditableConnection.js +24 -3
  154. package/esm/hooks/useReadableSearchState.d.ts +2 -0
  155. package/esm/{components/activityLog/hooks → hooks}/useReadableSearchState.js +0 -0
  156. package/esm/icons/Duplicate.d.ts +3 -0
  157. package/esm/icons/Duplicate.js +23 -0
  158. package/esm/icons/index.d.ts +6 -3
  159. package/esm/icons/index.js +6 -3
  160. package/esm/types/index.d.ts +40 -0
  161. package/package.json +3 -3
  162. package/cjs/components/activityLog/hooks/useReadableSearchState.d.ts +0 -1
  163. package/esm/components/activityLog/hooks/useReadableSearchState.d.ts +0 -1
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UploadIcon = exports.UnMerge = exports.Table = exports.SimpleAttribute = exports.SelectAttributes = exports.Search = exports.ResizeIconInline = exports.Remove = exports.ReferenceAttribute = exports.Recommended = exports.Radius = exports.Profile = exports.PotentialMatch = exports.Polygon = exports.PmTaskIcon = exports.PmIcon = exports.PivotingIcon = exports.PinOutlined = exports.Pin = exports.NoMatches = exports.NoDataSearch = exports.NoData = exports.NestedAttribute = exports.MlMatch = exports.Merge = exports.LogOut = exports.LogIn = exports.IgnoredOutlined = exports.Ignored = exports.Filter = exports.Error = exports.EmptySearchResults = exports.Draw = exports.Download = exports.Details = exports.DeleteRequestTaskIcon = exports.DefaultTaskIcon = exports.DefaultImage = exports.DcrTaskIcon = exports.Create = exports.Copy = exports.CommentBubble = exports.Comment = exports.CollaborationIcon = exports.Calendar = exports.AttributesList = exports.AddComment = exports.Add = void 0;
6
+ exports.UnMerge = exports.Table = exports.SimpleAttribute = exports.SelectAttributes = exports.Search = exports.ResizeIconInline = exports.Remove = exports.ReferenceAttribute = exports.Recommended = exports.Radius = exports.Profile = exports.PotentialMatch = exports.Polygon = exports.PivotingIcon = exports.PinOutlined = exports.Pin = exports.PmTaskIcon = exports.PmIcon = exports.NotMatchDark = exports.NoMatches = exports.NoDataSearch = exports.NoData = exports.NestedAttribute = exports.MergeDark = exports.Merge = exports.MlMatch = exports.LogOut = exports.LogIn = exports.IgnoredOutlined = exports.Ignored = exports.Filter = exports.Error = exports.EmptySearchResults = exports.Duplicate = exports.Draw = exports.Download = exports.Details = exports.DeleteRequestTaskIcon = exports.DefaultTaskIcon = exports.DefaultImage = exports.DcrTaskIcon = exports.Create = exports.Copy = exports.CommentBubble = exports.Comment = exports.CollaborationIcon = exports.Calendar = exports.AttributesList = exports.AddComment = exports.Add = void 0;
7
+ exports.UploadIcon = void 0;
7
8
  var Add_1 = require("./Add");
8
9
  Object.defineProperty(exports, "Add", { enumerable: true, get: function () { return __importDefault(Add_1).default; } });
9
10
  var AddComment_1 = require("./AddComment");
@@ -36,6 +37,8 @@ var Download_1 = require("./Download");
36
37
  Object.defineProperty(exports, "Download", { enumerable: true, get: function () { return __importDefault(Download_1).default; } });
37
38
  var Draw_1 = require("./Draw");
38
39
  Object.defineProperty(exports, "Draw", { enumerable: true, get: function () { return __importDefault(Draw_1).default; } });
40
+ var Duplicate_1 = require("./Duplicate");
41
+ Object.defineProperty(exports, "Duplicate", { enumerable: true, get: function () { return __importDefault(Duplicate_1).default; } });
39
42
  var EmptySearchResults_1 = require("./EmptySearchResults");
40
43
  Object.defineProperty(exports, "EmptySearchResults", { enumerable: true, get: function () { return __importDefault(EmptySearchResults_1).default; } });
41
44
  var Error_1 = require("./Error");
@@ -50,10 +53,12 @@ var LogIn_1 = require("./LogIn");
50
53
  Object.defineProperty(exports, "LogIn", { enumerable: true, get: function () { return __importDefault(LogIn_1).default; } });
51
54
  var LogOut_1 = require("./LogOut");
52
55
  Object.defineProperty(exports, "LogOut", { enumerable: true, get: function () { return __importDefault(LogOut_1).default; } });
53
- var Merge_1 = require("./Merge");
54
- Object.defineProperty(exports, "Merge", { enumerable: true, get: function () { return __importDefault(Merge_1).default; } });
55
56
  var MlMatch_1 = require("./MlMatch");
56
57
  Object.defineProperty(exports, "MlMatch", { enumerable: true, get: function () { return __importDefault(MlMatch_1).default; } });
58
+ var Merge_1 = require("./Merge");
59
+ Object.defineProperty(exports, "Merge", { enumerable: true, get: function () { return __importDefault(Merge_1).default; } });
60
+ var MergeDark_1 = require("./MergeDark");
61
+ Object.defineProperty(exports, "MergeDark", { enumerable: true, get: function () { return __importDefault(MergeDark_1).default; } });
57
62
  var NestedAttribute_1 = require("./NestedAttribute");
58
63
  Object.defineProperty(exports, "NestedAttribute", { enumerable: true, get: function () { return __importDefault(NestedAttribute_1).default; } });
59
64
  var NoData_1 = require("./NoData");
@@ -62,16 +67,18 @@ var NoDataSearch_1 = require("./NoDataSearch");
62
67
  Object.defineProperty(exports, "NoDataSearch", { enumerable: true, get: function () { return __importDefault(NoDataSearch_1).default; } });
63
68
  var NoMatches_1 = require("./NoMatches");
64
69
  Object.defineProperty(exports, "NoMatches", { enumerable: true, get: function () { return __importDefault(NoMatches_1).default; } });
70
+ var NotMatchDark_1 = require("./NotMatchDark");
71
+ Object.defineProperty(exports, "NotMatchDark", { enumerable: true, get: function () { return __importDefault(NotMatchDark_1).default; } });
72
+ var PmIcon_1 = require("./PmIcon");
73
+ Object.defineProperty(exports, "PmIcon", { enumerable: true, get: function () { return __importDefault(PmIcon_1).default; } });
74
+ var PmTaskIcon_1 = require("./PmTaskIcon");
75
+ Object.defineProperty(exports, "PmTaskIcon", { enumerable: true, get: function () { return __importDefault(PmTaskIcon_1).default; } });
65
76
  var Pin_1 = require("./Pin");
66
77
  Object.defineProperty(exports, "Pin", { enumerable: true, get: function () { return __importDefault(Pin_1).default; } });
67
78
  var PinOutlined_1 = require("./PinOutlined");
68
79
  Object.defineProperty(exports, "PinOutlined", { enumerable: true, get: function () { return __importDefault(PinOutlined_1).default; } });
69
80
  var PivotingIcon_1 = require("./PivotingIcon");
70
81
  Object.defineProperty(exports, "PivotingIcon", { enumerable: true, get: function () { return __importDefault(PivotingIcon_1).default; } });
71
- var PmIcon_1 = require("./PmIcon");
72
- Object.defineProperty(exports, "PmIcon", { enumerable: true, get: function () { return __importDefault(PmIcon_1).default; } });
73
- var PmTaskIcon_1 = require("./PmTaskIcon");
74
- Object.defineProperty(exports, "PmTaskIcon", { enumerable: true, get: function () { return __importDefault(PmTaskIcon_1).default; } });
75
82
  var Polygon_1 = require("./Polygon");
76
83
  Object.defineProperty(exports, "Polygon", { enumerable: true, get: function () { return __importDefault(Polygon_1).default; } });
77
84
  var PotentialMatch_1 = require("./PotentialMatch");
@@ -57,6 +57,46 @@ export declare type QueryBuilderAttribute = {
57
57
  filter: string;
58
58
  operator: string;
59
59
  };
60
+ export declare type AttributeSelectorItem = {
61
+ attrType: AttributeType;
62
+ entityTypeUri: string;
63
+ fieldName: string;
64
+ groupName: string;
65
+ title: string;
66
+ uri: string;
67
+ children?: AttributeSelectorItem[];
68
+ pathToTitle?: string[];
69
+ };
70
+ export declare type AttributeSelectorItemsGroup = {
71
+ id?: string;
72
+ title: string;
73
+ attributes: AttributeSelectorItem[];
74
+ };
75
+ export declare type AttributeSelectionInfo = {
76
+ index: number;
77
+ checked: boolean;
78
+ attribute: AttributeSelectorItem;
79
+ selectedAttributes: AttributeSelectorItem[];
80
+ };
81
+ export declare type BasicAttributeSelectorProps = {
82
+ className?: string;
83
+ itemsGroups: AttributeSelectorItemsGroup[];
84
+ value: AttributeSelectorItem;
85
+ onSelect: (selectInfo: AttributeSelectionInfo) => void;
86
+ onRestoreFocus?: () => void;
87
+ onOpenPopup?: () => void;
88
+ getLabel?: (value: {
89
+ fieldName?: string;
90
+ pathToTitle?: string[];
91
+ title: string;
92
+ }) => string;
93
+ disableRestoreFocus?: boolean;
94
+ disableEnforceFocus?: boolean;
95
+ single?: boolean;
96
+ ungroup?: boolean;
97
+ disabled?: boolean;
98
+ hideCheckBox?: boolean;
99
+ };
60
100
  export declare enum RequestStates {
61
101
  INIT = "init",
62
102
  LOADING = "loading",
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { Metadata } from '@reltio/mdm-sdk';
3
+ declare type Props = {
4
+ group: {
5
+ id: string;
6
+ title: string;
7
+ };
8
+ metadata: Metadata;
9
+ };
10
+ declare const AttributeGroupIcon: ({ group, metadata }: Props) => JSX.Element;
11
+ export default AttributeGroupIcon;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { useSelector } from 'react-redux';
3
+ import mdm from '@reltio/mdm-module';
4
+ import { getAbsoluteImageUrl, getEntityTypeGraphIcon } from '@reltio/mdm-sdk';
5
+ import AvatarWithFallback from '../AvatarWithFallback/AvatarWithFallback';
6
+ import { useStyles } from './styles';
7
+ var AttributeGroupIcon = function (_a) {
8
+ var group = _a.group, metadata = _a.metadata;
9
+ var styles = useStyles();
10
+ var absoluteImagePath = useSelector(mdm.selectors.getAbsoluteImagePath);
11
+ var entityTypeGraphIcon = getEntityTypeGraphIcon(metadata, { type: group.id });
12
+ var absoluteImageUrl = getAbsoluteImageUrl(absoluteImagePath, entityTypeGraphIcon);
13
+ return React.createElement(AvatarWithFallback, { className: styles.icon, icon: absoluteImageUrl, avatarText: group.title[0] });
14
+ };
15
+ export default AttributeGroupIcon;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"icon">;
@@ -0,0 +1,8 @@
1
+ import { makeStyles } from '@material-ui/core/styles';
2
+ export var useStyles = makeStyles({
3
+ icon: {
4
+ maxHeight: '25px',
5
+ maxWidth: '25px',
6
+ marginRight: '16px'
7
+ }
8
+ });
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { SearchFilter, AttributeType } from '@reltio/mdm-sdk';
3
+ declare type Props = {
4
+ filters: SearchFilter[];
5
+ onChange: (filtres: SearchFilter[]) => void;
6
+ attributeTypes: AttributeType[];
7
+ };
8
+ declare const _default: React.MemoExoticComponent<({ attributeTypes, filters, onChange }: Props) => JSX.Element>;
9
+ export default _default;
@@ -0,0 +1,88 @@
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
2
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
3
+ to[j] = from[i];
4
+ return to;
5
+ };
6
+ import React, { useCallback, useRef, useMemo, memo, useEffect } from 'react';
7
+ import { useSelector } from 'react-redux';
8
+ import { always, evolve } from 'ramda';
9
+ import mdmModule from '@reltio/mdm-module';
10
+ import { getEntityType } from '@reltio/mdm-sdk';
11
+ import { getAttributeSelectorItems, getRowsDataFromFilters, getEntityTypeFromAttrTypes } from './helpers';
12
+ import FilterSelector from './components/FilterSelector/FilterSelector';
13
+ import RowActions from './components/RowActions/RowActions';
14
+ import QueryBuilderRowsGroup from '../QueryBuilderRowsGroup/QueryBuilderRowsGroup';
15
+ import AttributeSelector from './components/AttributeSelector/AttributeSelector';
16
+ import ValueEditor from './components/ValueEditor/ValueEditor';
17
+ import { useStyles } from './styles';
18
+ var EMPTY_FILTER = { fieldName: null, filter: null, values: [] };
19
+ var Stub = function () { return null; };
20
+ var AttributesFiltersBuilder = function (_a) {
21
+ var attributeTypes = _a.attributeTypes, filters = _a.filters, onChange = _a.onChange;
22
+ var metadata = useSelector(mdmModule.selectors.getMetadata);
23
+ var entityType = getEntityType(metadata, getEntityTypeFromAttrTypes(attributeTypes));
24
+ var _b = useStyles(), attrSelector = _b.attrSelector, filterSelector = _b.filterSelector, actionContainer = _b.actionContainer;
25
+ var actualFilters = useRef(filters);
26
+ actualFilters.current = filters;
27
+ var attributeFilterRef = useRef(null);
28
+ var lastAttributesCountRef = useRef(null);
29
+ var attributesCountRef = useRef(null);
30
+ var rowClasses = useMemo(function () { return ({
31
+ attributeSelectorContainer: attrSelector,
32
+ filterSelectorContainer: filterSelector,
33
+ actionsContainer: actionContainer
34
+ }); }, [attrSelector, filterSelector, actionContainer]);
35
+ var attributeSelectorItems = useMemo(function () { return getAttributeSelectorItems(attributeTypes, entityType, metadata); }, [
36
+ attributeTypes,
37
+ metadata,
38
+ entityType
39
+ ]);
40
+ var rowsData = useMemo(function () { return (filters.length ? getRowsDataFromFilters(filters, attributeSelectorItems) : []); }, [
41
+ attributeSelectorItems,
42
+ filters
43
+ ]);
44
+ attributesCountRef.current = rowsData.length;
45
+ useEffect(function () {
46
+ if (attributeFilterRef.current && lastAttributesCountRef.current !== attributesCountRef.current) {
47
+ attributeFilterRef.current.querySelector('input').focus();
48
+ lastAttributesCountRef.current = null;
49
+ }
50
+ }, [rowsData.length]);
51
+ var handleAttributeSelectorOnOpen = useCallback(function () {
52
+ lastAttributesCountRef.current = rowsData.length;
53
+ }, [rowsData.length]);
54
+ var lastRowAttributeSelectorProps = useMemo(function () { return ({
55
+ onOpen: handleAttributeSelectorOnOpen
56
+ }); }, [handleAttributeSelectorOnOpen]);
57
+ var addRowAfterIndex = useCallback(function (index) {
58
+ var newFilters = __spreadArray([], actualFilters.current);
59
+ newFilters.splice(index + 1, 0, EMPTY_FILTER);
60
+ onChange(newFilters);
61
+ }, [onChange]);
62
+ var removeRow = useCallback(function (index) {
63
+ var newFilters = __spreadArray([], actualFilters.current);
64
+ newFilters.splice(index, 1);
65
+ onChange(newFilters);
66
+ }, [onChange]);
67
+ var duplicateRow = useCallback(function (index) {
68
+ var newFilters = __spreadArray([], actualFilters.current);
69
+ newFilters.splice(index + 1, 0, {
70
+ fieldName: actualFilters.current[index].fieldName,
71
+ filter: actualFilters.current[index].filter,
72
+ values: actualFilters.current[index].values
73
+ });
74
+ onChange(newFilters);
75
+ }, [onChange]);
76
+ var changeFilter = useCallback(function (newFilter, id) {
77
+ var _a;
78
+ var newFilters = evolve((_a = {},
79
+ _a[id] = always(newFilter),
80
+ _a), actualFilters.current);
81
+ onChange(newFilters);
82
+ }, [onChange]);
83
+ var addNewFilter = useCallback(function (newFilter) {
84
+ onChange(__spreadArray(__spreadArray([], actualFilters.current), [newFilter]));
85
+ }, [onChange]);
86
+ return (React.createElement(QueryBuilderRowsGroup, { rowClasses: rowClasses, rowsData: rowsData, AttributeSelectorComponent: AttributeSelector, FilterSelectorComponent: FilterSelector, ValuesEditorComponent: ValueEditor, ActionsComponent: RowActions, LogicOperatorComponent: Stub, filterSelectorRefIndex: lastAttributesCountRef.current, filterSelectorRef: attributeFilterRef, lastRowAttributeSelectorProps: lastRowAttributeSelectorProps, attributesGroup: attributeSelectorItems, changeFilter: changeFilter, addNewFilter: addNewFilter, addRowAfterIndex: addRowAfterIndex, removeRow: removeRow, duplicateRow: duplicateRow }));
87
+ };
88
+ export default memo(AttributesFiltersBuilder);
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { AttributeFiltersComponentProps } from '../../types';
3
+ declare type Props = AttributeFiltersComponentProps & {
4
+ attributeSelectorProps: {
5
+ onOpen: () => void;
6
+ };
7
+ };
8
+ declare const _default: React.MemoExoticComponent<({ rowData, rowContext, attributeSelectorProps }: Props) => JSX.Element>;
9
+ export default _default;
@@ -0,0 +1,29 @@
1
+ import React, { useCallback, useMemo, memo } from 'react';
2
+ import { getSearchGroupAttributeLabel } from '@reltio/mdm-sdk';
3
+ import BasicAttributeSelector from '../../../BasicAttributeSelector/BasicAttributeSelector';
4
+ var AttributeSelector = function (_a) {
5
+ var rowData = _a.rowData, rowContext = _a.rowContext, attributeSelectorProps = _a.attributeSelectorProps;
6
+ var _b = rowData || {}, attribute = _b.attribute, id = _b.id, filter = _b.filter;
7
+ var changeFilter = rowContext.changeFilter, addNewFilter = rowContext.addNewFilter, attributesGroup = rowContext.attributesGroup;
8
+ var getSelectedAttributeLabel = useCallback(function (data) { return getSearchGroupAttributeLabel({ data: data }); }, []);
9
+ var itemsGroup = useMemo(function () { return [{ id: '', title: '', attributes: attributesGroup }]; }, [attributesGroup]);
10
+ var changeAttribute = useCallback(function (selectInfo) {
11
+ if (rowData) {
12
+ var newFilter = {
13
+ fieldName: selectInfo.attribute.fieldName,
14
+ filter: filter,
15
+ values: []
16
+ };
17
+ changeFilter(newFilter, id);
18
+ }
19
+ else {
20
+ addNewFilter({
21
+ fieldName: selectInfo.attribute.fieldName,
22
+ filter: null,
23
+ values: []
24
+ });
25
+ }
26
+ }, [addNewFilter, changeFilter, id, rowData, filter]);
27
+ return (React.createElement(BasicAttributeSelector, { itemsGroups: itemsGroup, ungroup: true, single: true, value: attribute, getLabel: getSelectedAttributeLabel, onSelect: changeAttribute, onOpenPopup: attributeSelectorProps.onOpen }));
28
+ };
29
+ export default memo(AttributeSelector);
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { AttributeFiltersComponentProps } from '../../types';
3
+ declare type Props = AttributeFiltersComponentProps & {
4
+ textFieldInputRef: React.MutableRefObject<HTMLInputElement>;
5
+ };
6
+ declare const _default: React.MemoExoticComponent<({ rowData, rowContext, textFieldInputRef }: Props) => JSX.Element>;
7
+ export default _default;
@@ -0,0 +1,32 @@
1
+ import React, { useCallback, useEffect, memo } from 'react';
2
+ import i18n from 'ui-i18n';
3
+ import { pipe, map } from 'ramda';
4
+ import capitalize from '@material-ui/core/utils/capitalize';
5
+ import { getFilterOptionLabel, getFilterOptionsForQueryBuilder } from '@reltio/mdm-sdk';
6
+ import SimpleDropDownSelector from '../../../SimpleDropDownSelector/SimpleDropDownSelector';
7
+ import { findValue } from '../../helpers';
8
+ import useStyles from './styles';
9
+ var FilterSelector = function (_a) {
10
+ var rowData = _a.rowData, rowContext = _a.rowContext, textFieldInputRef = _a.textFieldInputRef;
11
+ var styles = useStyles();
12
+ var _b = rowData || {}, _c = _b.attribute, _d = _c === void 0 ? {} : _c, _e = _d.attrType, attrType = _e === void 0 ? {} : _e, _f = _d.fieldName, fieldName = _f === void 0 ? null : _f, filter = _b.filter, id = _b.id;
13
+ var changeFilter = rowContext.changeFilter;
14
+ var options = attrType &&
15
+ fieldName &&
16
+ pipe(getFilterOptionsForQueryBuilder, map(function (value) { return ({ value: value, label: capitalize(getFilterOptionLabel(value)) }); }))(attrType, fieldName);
17
+ var onChangeFilter = useCallback(function (filterOption) {
18
+ var newFilter = {
19
+ fieldName: fieldName,
20
+ filter: filterOption.value,
21
+ values: []
22
+ };
23
+ changeFilter(newFilter, id);
24
+ }, [changeFilter, id, fieldName]);
25
+ useEffect(function () {
26
+ if ((fieldName && !filter) || (fieldName && !findValue(options, filter))) {
27
+ onChangeFilter(options[0]);
28
+ }
29
+ }, [fieldName, filter, onChangeFilter, options]);
30
+ return (React.createElement(SimpleDropDownSelector, { label: "", height: 40, isDisabled: !options, placeholder: i18n.text('Equals'), value: findValue(options, filter), options: options, onChange: onChangeFilter, className: styles.dropDownSelector, textFieldInputRef: textFieldInputRef }));
31
+ };
32
+ export default memo(FilterSelector);
@@ -0,0 +1,2 @@
1
+ declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"dropDownSelector">;
2
+ export default useStyles;
@@ -0,0 +1,7 @@
1
+ import { makeStyles } from '@material-ui/core/styles';
2
+ var useStyles = makeStyles({
3
+ dropDownSelector: {
4
+ width: '100%'
5
+ }
6
+ });
7
+ export default useStyles;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { AttributeFiltersComponentProps } from '../../types';
3
+ declare const _default: React.MemoExoticComponent<({ rowData, rowContext }: AttributeFiltersComponentProps) => JSX.Element>;
4
+ export default _default;
@@ -0,0 +1,27 @@
1
+ import React, { memo, useCallback } from 'react';
2
+ import i18n from 'ui-i18n';
3
+ import CloseIcon from '@material-ui/icons/Close';
4
+ import AddCircleIcon from '@material-ui/icons/AddCircle';
5
+ import { SmallIconButtonWithTooltip } from '../../../SmallIconButton/index';
6
+ import DuplicateIcon from '../../../../icons/Duplicate';
7
+ import { useStyles } from './styles';
8
+ var RowActions = function (_a) {
9
+ var rowData = _a.rowData, rowContext = _a.rowContext;
10
+ var styles = useStyles();
11
+ var _b = rowData || {}, index = _b.id, attribute = _b.attribute;
12
+ var addRowAfterIndex = rowContext.addRowAfterIndex, removeRow = rowContext.removeRow, duplicateRow = rowContext.duplicateRow;
13
+ var onAddRowAfterId = useCallback(function () {
14
+ addRowAfterIndex(index);
15
+ }, [addRowAfterIndex, index]);
16
+ var onRowDuplicate = useCallback(function () {
17
+ duplicateRow(index);
18
+ }, [duplicateRow, index]);
19
+ var onRowDelete = useCallback(function () {
20
+ removeRow(index);
21
+ }, [index, removeRow]);
22
+ return (React.createElement("div", { className: styles.actions },
23
+ React.createElement(SmallIconButtonWithTooltip, { tooltipTitle: i18n.text('Add'), icon: AddCircleIcon, size: "M", onClick: onAddRowAfterId }),
24
+ attribute && (React.createElement(SmallIconButtonWithTooltip, { tooltipTitle: i18n.text('Duplicate'), icon: DuplicateIcon, size: "M", onClick: onRowDuplicate })),
25
+ React.createElement(SmallIconButtonWithTooltip, { tooltipTitle: i18n.text('Delete'), icon: CloseIcon, size: "M", onClick: onRowDelete })));
26
+ };
27
+ export default memo(RowActions);
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"actions" | "actionIcon">;
@@ -0,0 +1,20 @@
1
+ import { makeStyles } from '@material-ui/core/styles';
2
+ export var useStyles = makeStyles(function () { return ({
3
+ actions: {
4
+ width: '88px',
5
+ height: '24px',
6
+ display: 'flex',
7
+ alignItems: 'center',
8
+ justifyContent: 'space-between',
9
+ flexShrink: 0,
10
+ '& >span': {
11
+ cursor: 'pointer',
12
+ display: 'flex'
13
+ },
14
+ '& $actionIcon': {
15
+ cursor: 'pointer',
16
+ color: 'rgba(0, 0, 0, .54)'
17
+ }
18
+ },
19
+ actionIcon: {}
20
+ }); });
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { AttributeFiltersComponentProps } from '../../types';
3
+ declare const _default: React.MemoExoticComponent<({ rowData, rowContext }: AttributeFiltersComponentProps) => JSX.Element>;
4
+ export default _default;
@@ -0,0 +1,36 @@
1
+ import React, { memo, useMemo, useCallback } from 'react';
2
+ import { checkIfOptionHasValues, getAttrDataTypeDefinition, getDataTypeDefinitionForFilterValue } from '@reltio/mdm-sdk';
3
+ import FilterValueEditor from '../../../editors/FilterEditor/FilterValueEditor';
4
+ import { useStyles } from './styles';
5
+ var ValuesEditor = function (_a) {
6
+ var rowData = _a.rowData, rowContext = _a.rowContext;
7
+ var styles = useStyles();
8
+ var canFilterAcceptValues = (rowData === null || rowData === void 0 ? void 0 : rowData.attribute) && checkIfOptionHasValues(rowData.filter);
9
+ var changeFilter = rowContext.changeFilter;
10
+ var _b = rowData || {}, _c = _b.values, values = _c === void 0 ? [] : _c, _d = _b.attribute, _e = _d === void 0 ? {} : _d, _f = _e.attrType, attrType = _f === void 0 ? {} : _f, _g = _e.fieldName, fieldName = _g === void 0 ? null : _g, filter = _b.filter, id = _b.id;
11
+ var valueDataTypeDefinition = attrType && getAttrDataTypeDefinition(attrType);
12
+ var filterValueDataTypeDefinition = valueDataTypeDefinition && getDataTypeDefinitionForFilterValue(valueDataTypeDefinition, filter);
13
+ var editorFilter = useMemo(function () { return ({
14
+ filter: filter,
15
+ fieldName: fieldName,
16
+ values: values || []
17
+ }); }, [filter, fieldName, values]);
18
+ var TextFieldProps = useMemo(function () { return ({
19
+ InputProps: {
20
+ classes: {
21
+ root: styles.input
22
+ }
23
+ }
24
+ }); }, [styles]);
25
+ var editorClasses = useMemo(function () { return ({ root: styles.root }); }, [styles]);
26
+ var changeValue = useCallback(function (values) {
27
+ var newFilter = {
28
+ fieldName: fieldName,
29
+ filter: filter,
30
+ values: values
31
+ };
32
+ changeFilter(newFilter, id);
33
+ }, [changeFilter, id, fieldName, filter]);
34
+ return (React.createElement("div", { className: styles.valuesEditor }, (rowData === null || rowData === void 0 ? void 0 : rowData.attribute) && canFilterAcceptValues && (React.createElement(FilterValueEditor, { filter: editorFilter, onChange: changeValue, dataTypeDefinition: filterValueDataTypeDefinition, fullWidth: true, TextFieldProps: TextFieldProps, color: "primary", classes: editorClasses, orientation: "horizontal" }))));
35
+ };
36
+ export default memo(ValuesEditor);
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"input" | "root" | "valuesEditor">;
@@ -0,0 +1,22 @@
1
+ import { makeStyles } from '@material-ui/core/styles';
2
+ export var useStyles = makeStyles(function () { return ({
3
+ input: {
4
+ margin: 0,
5
+ borderRadius: '4px',
6
+ width: '100%',
7
+ paddingTop: 0,
8
+ paddingBottom: 0
9
+ },
10
+ root: {
11
+ borderRadius: '4px 4px 0 0',
12
+ padding: 0,
13
+ display: 'flex',
14
+ alignItems: 'center',
15
+ margin: 0
16
+ },
17
+ valuesEditor: {
18
+ width: '222px!important',
19
+ minHeight: '40px',
20
+ flexShrink: 0
21
+ }
22
+ }); });
@@ -0,0 +1,12 @@
1
+ import { AttributeType, TEntityType, Metadata, SearchFilter } from '@reltio/mdm-sdk';
2
+ import { AttributeSelectorItem } from '../../types';
3
+ import { FilterOption } from './types';
4
+ export declare const getAttributeSelectorItems: (attributeTypes: AttributeType[], entityType: TEntityType, metadata: Metadata) => AttributeSelectorItem[];
5
+ export declare const findValue: (options: FilterOption[], filter: string) => FilterOption;
6
+ export declare const getRowsDataFromFilters: (filters: SearchFilter[], attributesGroup: AttributeSelectorItem[]) => {
7
+ attribute: AttributeSelectorItem;
8
+ filter: string;
9
+ id: number;
10
+ values: string[];
11
+ }[];
12
+ export declare const getEntityTypeFromAttrTypes: (attributeTypes: AttributeType[]) => any;
@@ -0,0 +1,70 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { getAttributesTreeFromAttributes, attributeUriToSearchUri, isSpecialAttribute, getBaseUri } from '@reltio/mdm-sdk';
13
+ var createAttributeItem = function (attrType, entityTypeUri) {
14
+ var title = attrType.label || attrType.name;
15
+ return {
16
+ title: title,
17
+ fieldName: attributeUriToSearchUri(attrType.uri),
18
+ entityTypeUri: entityTypeUri,
19
+ attrType: attrType
20
+ };
21
+ };
22
+ var createAttributesConfig = function (attrNode, entityTypeUri, createAttributeConfig) {
23
+ var resConfig = __assign(__assign({}, createAttributeConfig(attrNode, entityTypeUri)), { uri: attrNode.uri });
24
+ var children = attrNode.children
25
+ ? attrNode.children.map(function (childNode) { return createAttributesConfig(childNode, entityTypeUri, createAttributeConfig); })
26
+ : [];
27
+ if (children.length)
28
+ resConfig.children = children;
29
+ return resConfig;
30
+ };
31
+ export var getAttributeSelectorItems = function (attributeTypes, entityType, metadata) {
32
+ if (entityType === void 0) { entityType = {}; }
33
+ return getAttributesTreeFromAttributes(attributeTypes, metadata).map(function (attrNode) {
34
+ return createAttributesConfig(attrNode, entityType.uri, createAttributeItem);
35
+ });
36
+ };
37
+ var findAttributeSelectorItem = function (fieldName, attributesGroup) {
38
+ var attrGroup;
39
+ var findAttribute = function (fieldName, attributesGroup) {
40
+ for (var _i = 0, attributesGroup_1 = attributesGroup; _i < attributesGroup_1.length; _i++) {
41
+ var attributeGroup = attributesGroup_1[_i];
42
+ if (fieldName === attributeGroup.fieldName) {
43
+ attrGroup = attributeGroup;
44
+ return;
45
+ }
46
+ if ('children' in attributeGroup) {
47
+ findAttribute(fieldName, attributeGroup.children);
48
+ }
49
+ }
50
+ };
51
+ findAttribute(fieldName, attributesGroup);
52
+ return attrGroup;
53
+ };
54
+ export var findValue = function (options, filter) {
55
+ return options ? options.find(function (option) { return option.value === filter; }) : null;
56
+ };
57
+ export var getRowsDataFromFilters = function (filters, attributesGroup) {
58
+ return filters.map(function (filter, index) {
59
+ return {
60
+ attribute: filter.fieldName ? findAttributeSelectorItem(filter.fieldName, attributesGroup) : undefined,
61
+ filter: filter.filter,
62
+ id: index,
63
+ values: filter.values
64
+ };
65
+ });
66
+ };
67
+ export var getEntityTypeFromAttrTypes = function (attributeTypes) {
68
+ var regularAttribute = attributeTypes.find(function (attribute) { return !isSpecialAttribute(attribute); });
69
+ return regularAttribute ? getBaseUri(regularAttribute.uri) : null;
70
+ };
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"attrSelector" | "filterSelector" | "actionContainer">;
@@ -0,0 +1,18 @@
1
+ import { makeStyles } from '@material-ui/core/styles';
2
+ export var useStyles = makeStyles(function () { return ({
3
+ attrSelector: {
4
+ width: '222px',
5
+ height: '40px',
6
+ flexShrink: 0
7
+ },
8
+ filterSelector: {
9
+ width: '180px',
10
+ flexShrink: 0,
11
+ marginTop: 0,
12
+ marginBottom: 0
13
+ },
14
+ actionContainer: {
15
+ alignItems: 'center',
16
+ marginRight: '15px'
17
+ }
18
+ }); });
@@ -0,0 +1,24 @@
1
+ import { SearchFilter } from '@reltio/mdm-sdk';
2
+ import { AttributeSelectorItem } from '../../types';
3
+ export declare type FilterOption = {
4
+ value: string;
5
+ label: string;
6
+ };
7
+ export declare type RowData = {
8
+ attribute: AttributeSelectorItem;
9
+ filter: string;
10
+ id: number;
11
+ values: string[];
12
+ };
13
+ export declare type RowContext = {
14
+ attributesGroup: AttributeSelectorItem[];
15
+ addNewFilter: (newFilter: SearchFilter) => void;
16
+ addRowAfterIndex: (index: number) => void;
17
+ changeFilter: (newFilter: SearchFilter, id: number) => void;
18
+ duplicateRow: (index: number) => void;
19
+ removeRow: (index: number) => void;
20
+ };
21
+ export declare type AttributeFiltersComponentProps = {
22
+ rowData: RowData;
23
+ rowContext: RowContext;
24
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ declare type Props = {
3
+ onClear: () => void;
4
+ onCancel: () => void;
5
+ onApply: () => void;
6
+ };
7
+ declare const ActionButtons: ({ onClear, onCancel, onApply }: Props) => JSX.Element;
8
+ export default ActionButtons;
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import i18n from 'ui-i18n';
3
+ import Button from '@material-ui/core/Button';
4
+ import { useStyles } from './styles';
5
+ var ActionButtons = function (_a) {
6
+ var onClear = _a.onClear, onCancel = _a.onCancel, onApply = _a.onApply;
7
+ var styles = useStyles();
8
+ return (React.createElement("div", { className: styles.buttonsWrapper },
9
+ React.createElement(Button, { onClick: onClear, variant: "text", color: "default", className: styles.clearButon }, i18n.text('Clear all')),
10
+ React.createElement(Button, { onClick: onCancel, variant: "text", color: "default", className: styles.cancelButton }, i18n.text('Cancel')),
11
+ React.createElement(Button, { onClick: onApply, variant: "text", color: "primary", className: styles.applyButton }, i18n.text('Apply'))));
12
+ };
13
+ export default ActionButtons;
@@ -0,0 +1 @@
1
+ export declare const useStyles: (props?: any) => import("@material-ui/core/styles/withStyles").ClassNameMap<"buttonsWrapper" | "cancelButton" | "applyButton" | "clearButon">;