@reltio/components 1.4.2071 → 1.4.2072
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AttributesView/AttributesView.js +1 -1
- package/ColumnsSettings/components/ColumnsSettingsPopup/ColumnsSettingsPopup.d.ts +2 -3
- package/ColumnsSettings/helpers.d.ts +3 -1
- package/ColumnsSettings/types.d.ts +8 -0
- package/CommentsContainer/CommentsContainer.js +1 -1
- package/ConfigureColumnsPopup/ConfigureColumnsPopup.d.ts +23 -40
- package/ConfigureColumnsPopup/ConfigureColumnsPopup.js +6 -26
- package/EditModeAttributesList/EditModeAttributesList.js +1 -1
- package/EditModeAttributesPager/EditModeAttributesPager.test.js +1 -1
- package/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.js +1 -1
- package/MetadataTypesSelector/MetadataTypesSelector.d.ts +2 -1
- package/MetadataTypesSelector/components/SelectMetadataTypesList/SelectMetadataTypesList.d.ts +5 -6
- package/MoreAttributesButton/useMoreAttributesItems.d.ts +1 -1
- package/ReadOnlyAttributesList/ReadOnlyAttributesList.js +1 -1
- package/ReadOnlyAttributesPager/ReadOnlyAttributesPager.js +1 -1
- package/ReadOnlyAttributesView/ReadOnlyAttributesView.js +1 -1
- package/ScrollableTabs/ScrollableTabs.test.js +69 -19
- package/SearchHighlighter/SearchHighlighter.test.js +18 -7
- package/SelectAttributesList/SelectAttributesList.d.ts +11 -6
- package/SelectAttributesList/SelectAttributesList.js +5 -2
- package/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.test.js +109 -60
- package/SidePanelContentHeader/SidePanelContentHeader.js +2 -2
- package/SidePanelContentHeader/SidePanelContentHeader.test.js +104 -0
- package/SidePanelEmptyState/SidePanelEmptyState.js +1 -1
- package/SidePanelEmptyState/SidePanelEmptyState.test.js +24 -0
- package/SimpleAttribute/SimpleAttribute.js +1 -1
- package/SimpleAttribute/SimpleAttribute.test.js +155 -80
- package/SimpleAttributeEditor/SimpleAttributeEditor.test.js +339 -330
- package/SimpleAttributeEditor/useAttributeValuePermissions.js +1 -1
- package/SimpleDropDownSelector/SimpleDropDownSelector.test.js +86 -10
- package/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.js +1 -1
- package/SimpleDropDownSelector/components/DropDownValue/DropDownValue.js +1 -1
- package/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +128 -32
- package/SmallIconButton/SmallIconButton.test.js +98 -25
- package/TableWithBars/TableWithBars.test.js +98 -60
- package/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.js +1 -1
- package/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.js +1 -1
- package/Tags/Tags.d.ts +0 -1
- package/Tags/Tags.test.js +8 -7
- package/TransitiveMatchBlock/TransitiveMatchBlock.test.js +78 -22
- package/TransitiveMatchRule/TransitiveMatchRule.test.js +78 -37
- package/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.js +1 -1
- package/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.test.js +12 -18
- package/UploadFileButton/UploadFileButton.d.ts +2 -2
- package/UploadFileButton/UploadFileButton.test.js +199 -0
- package/UploadImageDialog/UploadImageDialog.test.js +1 -0
- package/UploadImageDialog/components/DividerWithText/DividerWithText.js +1 -1
- package/UploadImageDialog/components/ErrorSnackbar/ErrorSnackbar.test.js +80 -22
- package/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.js +1 -1
- package/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.test.js +162 -49
- package/ValueChip/ValueChip.test.js +7 -23
- package/VirtualGroupedList/VirtualGroupedList.d.ts +19 -31
- package/VirtualGroupedList/VirtualGroupedList.js +11 -36
- package/VirtualGroupedList/VirtualGroupedList.test.js +224 -0
- package/VirtualGroupedList/helpers.d.ts +7 -2
- package/VirtualGroupedList/helpers.js +3 -1
- package/VirtualGroupedList/index.d.ts +1 -1
- package/VirtualGroupedList/types.d.ts +10 -6
- package/VirtualGroupedList/useScrollToFocusItem.d.ts +8 -5
- package/WhiteSearchInput/{WhiteSearchInput.spec.js → WhiteSearchInput.test.js} +3 -8
- package/cjs/AttributesView/AttributesView.js +2 -2
- package/cjs/ColumnsSettings/components/ColumnsSettingsPopup/ColumnsSettingsPopup.d.ts +2 -3
- package/cjs/ColumnsSettings/helpers.d.ts +3 -1
- package/cjs/ColumnsSettings/types.d.ts +8 -0
- package/cjs/ColumnsSettings/types.js +2 -0
- package/cjs/CommentsContainer/CommentsContainer.js +1 -1
- package/cjs/ConfigureColumnsPopup/ConfigureColumnsPopup.d.ts +23 -40
- package/cjs/ConfigureColumnsPopup/ConfigureColumnsPopup.js +6 -26
- package/cjs/EditModeAttributesList/EditModeAttributesList.js +2 -2
- package/cjs/EditModeAttributesPager/EditModeAttributesPager.test.js +2 -2
- package/cjs/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.js +2 -2
- package/cjs/MetadataTypesSelector/MetadataTypesSelector.d.ts +2 -1
- package/cjs/MetadataTypesSelector/components/SelectMetadataTypesList/SelectMetadataTypesList.d.ts +5 -6
- package/cjs/MoreAttributesButton/useMoreAttributesItems.d.ts +1 -1
- package/cjs/ReadOnlyAttributesList/ReadOnlyAttributesList.js +2 -2
- package/cjs/ReadOnlyAttributesPager/ReadOnlyAttributesPager.js +2 -2
- package/cjs/ReadOnlyAttributesView/ReadOnlyAttributesView.js +2 -2
- package/cjs/ScrollableTabs/ScrollableTabs.test.js +69 -19
- package/cjs/SearchHighlighter/SearchHighlighter.test.js +18 -7
- package/cjs/SelectAttributesList/SelectAttributesList.d.ts +11 -6
- package/cjs/SelectAttributesList/SelectAttributesList.js +5 -2
- package/cjs/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.test.js +109 -60
- package/cjs/SidePanelContentHeader/SidePanelContentHeader.js +2 -2
- package/cjs/SidePanelContentHeader/SidePanelContentHeader.test.js +109 -0
- package/cjs/SidePanelEmptyState/SidePanelEmptyState.js +1 -1
- package/cjs/SidePanelEmptyState/SidePanelEmptyState.test.js +29 -0
- package/cjs/SimpleAttribute/SimpleAttribute.js +1 -1
- package/cjs/SimpleAttribute/SimpleAttribute.test.js +155 -80
- package/cjs/SimpleAttributeEditor/SimpleAttributeEditor.test.js +338 -352
- package/cjs/SimpleAttributeEditor/useAttributeValuePermissions.js +2 -2
- package/cjs/SimpleDropDownSelector/SimpleDropDownSelector.test.js +86 -10
- package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.js +1 -1
- package/cjs/SimpleDropDownSelector/components/DropDownValue/DropDownValue.js +1 -1
- package/cjs/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +127 -31
- package/cjs/SmallIconButton/SmallIconButton.test.js +98 -25
- package/cjs/TableWithBars/TableWithBars.test.js +98 -60
- package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.js +1 -1
- package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.js +1 -1
- package/cjs/Tags/Tags.d.ts +0 -1
- package/cjs/Tags/Tags.test.js +8 -7
- package/cjs/TransitiveMatchBlock/TransitiveMatchBlock.test.js +77 -21
- package/cjs/TransitiveMatchRule/TransitiveMatchRule.test.js +78 -37
- package/cjs/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.js +1 -1
- package/cjs/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.test.js +12 -18
- package/cjs/UploadFileButton/UploadFileButton.d.ts +2 -2
- package/cjs/UploadFileButton/UploadFileButton.test.js +204 -0
- package/cjs/UploadImageDialog/UploadImageDialog.test.js +1 -0
- package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.js +1 -1
- package/cjs/UploadImageDialog/components/ErrorSnackbar/ErrorSnackbar.test.js +80 -22
- package/cjs/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.js +1 -1
- package/cjs/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.test.js +162 -49
- package/cjs/ValueChip/ValueChip.test.js +7 -23
- package/cjs/VirtualGroupedList/VirtualGroupedList.d.ts +19 -31
- package/cjs/VirtualGroupedList/VirtualGroupedList.js +11 -36
- package/cjs/VirtualGroupedList/VirtualGroupedList.test.js +252 -0
- package/cjs/VirtualGroupedList/helpers.d.ts +7 -2
- package/cjs/VirtualGroupedList/helpers.js +3 -1
- package/cjs/VirtualGroupedList/index.d.ts +1 -1
- package/cjs/VirtualGroupedList/types.d.ts +10 -6
- package/cjs/VirtualGroupedList/useScrollToFocusItem.d.ts +8 -5
- package/cjs/WhiteSearchInput/{WhiteSearchInput.spec.js → WhiteSearchInput.test.js} +3 -8
- package/cjs/features/crosswalks/hooks/useAttributeActions.test.js +24 -25
- package/cjs/features/crosswalks/hooks/useCrosswalkActions.test.js +10 -11
- package/cjs/features/workflow/hooks/useChangeRequest.test.js +5 -6
- package/cjs/hooks/useCommentsEntitiesMap/useCommentsEntitiesMap.test.js +8 -9
- package/cjs/hooks/useKeyboardNavigation/useKeyboardNavigation.d.ts +9 -13
- package/features/crosswalks/hooks/useAttributeActions.test.js +1 -2
- package/features/crosswalks/hooks/useCrosswalkActions.test.js +1 -2
- package/features/workflow/hooks/useChangeRequest.test.js +1 -2
- package/hooks/useCommentsEntitiesMap/useCommentsEntitiesMap.test.js +1 -2
- package/hooks/useKeyboardNavigation/useKeyboardNavigation.d.ts +9 -13
- package/package.json +1 -1
- package/SidePanelContentHeader/SidePanelContentHeader.spec.js +0 -49
- package/SidePanelEmptyState/SidePanelEmptyState.spec.js +0 -24
- package/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.js +0 -103
- package/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.js +0 -13
- package/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.js +0 -21
- package/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.js +0 -20
- package/UploadFileButton/UploadFileButton.spec.js +0 -219
- package/UploadImageDialog/components/DividerWithText/DividerWithText.test.js +0 -9
- package/VirtualGroupedList/VirtualGroupedList.spec.js +0 -282
- package/cjs/SidePanelContentHeader/SidePanelContentHeader.spec.js +0 -54
- package/cjs/SidePanelEmptyState/SidePanelEmptyState.spec.d.ts +0 -1
- package/cjs/SidePanelEmptyState/SidePanelEmptyState.spec.js +0 -29
- package/cjs/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.d.ts +0 -1
- package/cjs/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.js +0 -108
- package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.d.ts +0 -1
- package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.js +0 -18
- package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.d.ts +0 -1
- package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.js +0 -26
- package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.d.ts +0 -1
- package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.js +0 -25
- package/cjs/UploadFileButton/UploadFileButton.spec.d.ts +0 -1
- package/cjs/UploadFileButton/UploadFileButton.spec.js +0 -224
- package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.test.d.ts +0 -1
- package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.test.js +0 -14
- package/cjs/VirtualGroupedList/VirtualGroupedList.spec.d.ts +0 -1
- package/cjs/VirtualGroupedList/VirtualGroupedList.spec.js +0 -287
- package/cjs/WhiteSearchInput/WhiteSearchInput.spec.d.ts +0 -1
- /package/{SidePanelContentHeader/SidePanelContentHeader.spec.d.ts → ColumnsSettings/types.js} +0 -0
- /package/{SidePanelEmptyState/SidePanelEmptyState.spec.d.ts → SidePanelContentHeader/SidePanelContentHeader.test.d.ts} +0 -0
- /package/{SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.d.ts → SidePanelEmptyState/SidePanelEmptyState.test.d.ts} +0 -0
- /package/{SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.d.ts → UploadFileButton/UploadFileButton.test.d.ts} +0 -0
- /package/{TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.d.ts → VirtualGroupedList/VirtualGroupedList.test.d.ts} +0 -0
- /package/{TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.d.ts → WhiteSearchInput/WhiteSearchInput.test.d.ts} +0 -0
- /package/{UploadFileButton/UploadFileButton.spec.d.ts → cjs/SidePanelContentHeader/SidePanelContentHeader.test.d.ts} +0 -0
- /package/{UploadImageDialog/components/DividerWithText/DividerWithText.test.d.ts → cjs/SidePanelEmptyState/SidePanelEmptyState.test.d.ts} +0 -0
- /package/{VirtualGroupedList/VirtualGroupedList.spec.d.ts → cjs/UploadFileButton/UploadFileButton.test.d.ts} +0 -0
- /package/{WhiteSearchInput/WhiteSearchInput.spec.d.ts → cjs/VirtualGroupedList/VirtualGroupedList.test.d.ts} +0 -0
- /package/cjs/{SidePanelContentHeader/SidePanelContentHeader.spec.d.ts → WhiteSearchInput/WhiteSearchInput.test.d.ts} +0 -0
- /package/cjs/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.d.ts +0 -0
- /package/cjs/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.js +0 -0
- /package/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.d.ts +0 -0
- /package/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.js +0 -0
|
@@ -44,11 +44,11 @@ var ShowLess_1 = require("../ShowLess");
|
|
|
44
44
|
var constants_1 = require("../constants");
|
|
45
45
|
var attributesView_1 = require("../helpers/attributesView");
|
|
46
46
|
var HiddenAttributesContext_1 = require("../contexts/HiddenAttributesContext");
|
|
47
|
-
var
|
|
47
|
+
var AlwaysVisibleAttributesContext_1 = require("../contexts/AlwaysVisibleAttributesContext");
|
|
48
48
|
var ReadOnlyAttributesList = function (_a) {
|
|
49
49
|
var _b = _a.attrTypes, attrTypes = _b === void 0 ? [] : _b, entity = _a.entity, parentUri = _a.parentUri, drawLines = _a.drawLines, children = _a.children, className = _a.className, max = _a.max, _c = _a.fixedTypeUris, fixedTypeUris = _c === void 0 ? constants_1.FIXED_TYPE_URIS : _c, showNonOv = _a.showNonOv, classes = _a.classes;
|
|
50
50
|
var hiddenAttributes = (0, react_1.useContext)(HiddenAttributesContext_1.HiddenAttributesContext);
|
|
51
|
-
var alwaysVisibleAttributes = (0, react_1.useContext)(
|
|
51
|
+
var alwaysVisibleAttributes = (0, react_1.useContext)(AlwaysVisibleAttributesContext_1.AlwaysVisibleAttributesContext);
|
|
52
52
|
var entityUri = parentUri && (0, mdm_sdk_1.getBaseUri)(parentUri);
|
|
53
53
|
var currentEntityHiddenAttributes = (0, react_1.useMemo)(function () { return hiddenAttributes[entityUri] || []; }, [hiddenAttributes, entityUri]);
|
|
54
54
|
var filteredAttrTypes = (0, react_1.useMemo)(function () { return (attrTypes || []).filter(function (attrType) { return !currentEntityHiddenAttributes.includes(attrType.uri); }); }, [attrTypes, currentEntityHiddenAttributes]);
|
|
@@ -48,7 +48,7 @@ var SpecialRenderer_1 = require("./components/SpecialRenderer");
|
|
|
48
48
|
var ImageLineRenderer_1 = require("./components/ImageLineRenderer");
|
|
49
49
|
var EmptyRenderer_1 = require("./components/EmptyRenderer");
|
|
50
50
|
var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
|
|
51
|
-
var
|
|
51
|
+
var AlwaysVisibleAttributesContext_1 = require("../contexts/AlwaysVisibleAttributesContext");
|
|
52
52
|
var styles_1 = require("./styles");
|
|
53
53
|
var RENDERER_TYPES = {
|
|
54
54
|
oneLine: 'oneLine',
|
|
@@ -66,7 +66,7 @@ var ReadOnlyAttributesPager = function (_a) {
|
|
|
66
66
|
var maxValuesInResponse = (0, MdmModuleContext_1.useMdmMaxValuesInResponse)();
|
|
67
67
|
var max = (_f = maxProp !== null && maxProp !== void 0 ? maxProp : maxValuesInResponse) !== null && _f !== void 0 ? _f : Infinity;
|
|
68
68
|
var partitionByOv = (0, ramda_1.partition)(mdm_sdk_1.isOv);
|
|
69
|
-
var alwaysVisibleAttributes = (0, react_1.useContext)(
|
|
69
|
+
var alwaysVisibleAttributes = (0, react_1.useContext)(AlwaysVisibleAttributesContext_1.AlwaysVisibleAttributesContext);
|
|
70
70
|
var isAlwaysVisible = (0, react_1.useMemo)(function () { return alwaysVisibleAttributes === null || alwaysVisibleAttributes === void 0 ? void 0 : alwaysVisibleAttributes.includes(attributeType.uri); }, [attributeType.uri, alwaysVisibleAttributes]);
|
|
71
71
|
if (!values || (!values.length && !isAlwaysVisible)) {
|
|
72
72
|
return null;
|
|
@@ -35,7 +35,7 @@ var Box_1 = __importDefault(require("@mui/material/Box"));
|
|
|
35
35
|
var Typography_1 = __importDefault(require("@mui/material/Typography"));
|
|
36
36
|
var PivotingAttributeContext_1 = require("../contexts/PivotingAttributeContext");
|
|
37
37
|
var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
|
|
38
|
-
var
|
|
38
|
+
var AlwaysVisibleAttributesContext_1 = require("../contexts/AlwaysVisibleAttributesContext");
|
|
39
39
|
var BasicView_1 = require("../BasicView");
|
|
40
40
|
var FacetViewHeader_1 = require("../FacetViewHeader");
|
|
41
41
|
var ReadOnlyAttributesList_1 = require("../ReadOnlyAttributesList");
|
|
@@ -51,7 +51,7 @@ var ReadOnlyAttributesView = function (_a) {
|
|
|
51
51
|
var filteredAttrTypes = (0, react_1.useMemo)(function () { return (0, attributesView_1.getFilteredAttrTypes)(metadata, entity.type, includeUris, excludeUris); }, [excludeUris, includeUris, metadata, entity]);
|
|
52
52
|
var attributesCount = attributesCountProp || DEFAULT_ATTRIBUTES_COUNT;
|
|
53
53
|
var attributesList = (0, mdm_sdk_1.getAttributesListForReadMode)(filteredAttrTypes, entity);
|
|
54
|
-
var alwaysVisible = (0, react_1.useContext)(
|
|
54
|
+
var alwaysVisible = (0, react_1.useContext)(AlwaysVisibleAttributesContext_1.AlwaysVisibleAttributesContext);
|
|
55
55
|
var isShowAttributeList = attributesList.filter(function (_a) {
|
|
56
56
|
var values = _a.values;
|
|
57
57
|
return !(0, mdm_sdk_1.isEmptyValue)(values);
|
|
@@ -10,17 +10,51 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
24
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
13
49
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
51
|
};
|
|
16
52
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
53
|
var react_1 = __importDefault(require("react"));
|
|
18
|
-
var enzyme_1 = require("enzyme");
|
|
19
54
|
var ramda_1 = require("ramda");
|
|
20
|
-
var
|
|
21
|
-
var
|
|
55
|
+
var react_2 = require("@testing-library/react");
|
|
56
|
+
var user_event_1 = __importDefault(require("@testing-library/user-event"));
|
|
22
57
|
var ScrollableTabs_1 = require("./ScrollableTabs");
|
|
23
|
-
var ExpandedValueTooltip_1 = require("../ExpandedValueTooltip");
|
|
24
58
|
describe('ScrollableTabs', function () {
|
|
25
59
|
var generateTabs = function (count, additionalLabel) {
|
|
26
60
|
if (additionalLabel === void 0) { additionalLabel = false; }
|
|
@@ -31,23 +65,39 @@ describe('ScrollableTabs', function () {
|
|
|
31
65
|
tabs: generateTabs(3),
|
|
32
66
|
onChange: jest.fn()
|
|
33
67
|
};
|
|
68
|
+
var setUp = function (props) {
|
|
69
|
+
if (props === void 0) { props = {}; }
|
|
70
|
+
var user = user_event_1.default.setup();
|
|
71
|
+
return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(ScrollableTabs_1.ScrollableTabs, __assign({}, defaultProps, props))));
|
|
72
|
+
};
|
|
34
73
|
it('should render main parts', function () {
|
|
35
|
-
|
|
36
|
-
expect(
|
|
37
|
-
|
|
38
|
-
expect(
|
|
39
|
-
expect(
|
|
74
|
+
setUp();
|
|
75
|
+
expect(react_2.screen.getByRole('tablist')).toBeInTheDocument();
|
|
76
|
+
var tabs = react_2.screen.getAllByRole('tab');
|
|
77
|
+
expect(tabs).toHaveLength(3);
|
|
78
|
+
expect(tabs[0]).toHaveTextContent('label0');
|
|
79
|
+
expect(tabs[1]).toHaveTextContent('label1');
|
|
80
|
+
expect(tabs[2]).toHaveTextContent('label2');
|
|
40
81
|
});
|
|
41
82
|
it('should render additional label', function () {
|
|
42
|
-
var additionalLabel = react_1.default.createElement("div", {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(ScrollableTabs_1.ScrollableTabs, __assign({}, defaultProps)));
|
|
48
|
-
var event = {};
|
|
49
|
-
var value = 'value2';
|
|
50
|
-
wrapper.find(Tabs_1.default).prop('onChange')(event, value);
|
|
51
|
-
expect(defaultProps.onChange).toHaveBeenCalledWith(value);
|
|
83
|
+
var additionalLabel = react_1.default.createElement("div", { "data-reltio-id": "additional-label" });
|
|
84
|
+
setUp({ tabs: generateTabs(1, additionalLabel) });
|
|
85
|
+
var tab = react_2.screen.getByRole('tab');
|
|
86
|
+
expect(tab).toHaveTextContent('label0');
|
|
87
|
+
expect((0, react_2.within)(tab).getByTestId('additional-label')).toBeInTheDocument();
|
|
52
88
|
});
|
|
89
|
+
it('should call prop onChange', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
90
|
+
var user;
|
|
91
|
+
return __generator(this, function (_a) {
|
|
92
|
+
switch (_a.label) {
|
|
93
|
+
case 0:
|
|
94
|
+
user = setUp().user;
|
|
95
|
+
return [4 /*yield*/, user.click(react_2.screen.getByText('label2'))];
|
|
96
|
+
case 1:
|
|
97
|
+
_a.sent();
|
|
98
|
+
expect(defaultProps.onChange).toHaveBeenCalledWith('value2');
|
|
99
|
+
return [2 /*return*/];
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}); });
|
|
53
103
|
});
|
|
@@ -4,18 +4,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var react_1 = __importDefault(require("react"));
|
|
7
|
-
var
|
|
7
|
+
var react_2 = require("@testing-library/react");
|
|
8
8
|
var SearchValueContext_1 = require("../contexts/SearchValueContext");
|
|
9
9
|
var SearchHighlighter_1 = require("./SearchHighlighter");
|
|
10
|
-
var Highlighter_1 = require("../Highlighter");
|
|
11
10
|
describe('SearchHighlighter test', function () {
|
|
12
11
|
it('should render SearchHighlighter as well', function () {
|
|
13
12
|
var highlightedValue = '1';
|
|
14
13
|
var attributeValue = 'Attribute 1 Label';
|
|
15
|
-
var
|
|
16
|
-
react_1.default.createElement(SearchHighlighter_1.SearchHighlighter, { text: attributeValue })));
|
|
17
|
-
|
|
18
|
-
expect(
|
|
19
|
-
expect(
|
|
14
|
+
var container = (0, react_2.render)(react_1.default.createElement(SearchValueContext_1.SearchValueContext.Provider, { value: highlightedValue },
|
|
15
|
+
react_1.default.createElement(SearchHighlighter_1.SearchHighlighter, { text: attributeValue }))).container;
|
|
16
|
+
var highlightedText = react_2.screen.getByText(highlightedValue);
|
|
17
|
+
expect(highlightedText).toBeInTheDocument();
|
|
18
|
+
expect(highlightedText).toHaveClass('highlightedText');
|
|
19
|
+
expect(container).toHaveTextContent(attributeValue);
|
|
20
|
+
});
|
|
21
|
+
it('should work without SearchValueContext', function () {
|
|
22
|
+
(0, react_2.render)(react_1.default.createElement(SearchHighlighter_1.SearchHighlighter, { text: 'Attribute text' }));
|
|
23
|
+
expect(react_2.screen.getByText('Attribute text')).toBeInTheDocument();
|
|
24
|
+
});
|
|
25
|
+
it('should work without highlighted value', function () {
|
|
26
|
+
var attributeValue = 'Attribute 1 Label';
|
|
27
|
+
var container = (0, react_2.render)(react_1.default.createElement(SearchValueContext_1.SearchValueContext.Provider, { value: undefined },
|
|
28
|
+
react_1.default.createElement(SearchHighlighter_1.SearchHighlighter, { text: attributeValue }))).container;
|
|
29
|
+
expect(container).toHaveTextContent(attributeValue);
|
|
30
|
+
expect(container.querySelector('.highlightedText')).toBeNull();
|
|
20
31
|
});
|
|
21
32
|
});
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { VirtualGroupedList } from '../VirtualGroupedList';
|
|
3
3
|
import { AttributeSelectorItem } from '../types';
|
|
4
|
-
type Data = {
|
|
5
|
-
|
|
4
|
+
type Data = AttributeSelectorItem & {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
filterText?: string;
|
|
8
|
+
notSelectable?: boolean;
|
|
9
|
+
needGroupIcon?: boolean;
|
|
10
|
+
LogoIcon?: React.ElementType;
|
|
6
11
|
};
|
|
7
|
-
type Props = {
|
|
12
|
+
type Props = Omit<React.ComponentProps<typeof VirtualGroupedList>, 'renderItem' | 'getItemSize'> & {
|
|
8
13
|
selectedAttributes: AttributeSelectorItem[];
|
|
9
14
|
focusIndex: number;
|
|
10
15
|
hideCheckBox: boolean;
|
|
11
16
|
onItemClick: (data: Data, checked: boolean, groupId: string) => void;
|
|
12
|
-
}
|
|
13
|
-
declare const _default:
|
|
17
|
+
};
|
|
18
|
+
declare const _default: ({ selectedAttributes, onItemClick, focusIndex, hideCheckBox, ...otherProps }: Props) => React.JSX.Element;
|
|
14
19
|
export default _default;
|
|
@@ -62,7 +62,9 @@ var ITEM_GROUP_TITLE_HEIGHT = 40;
|
|
|
62
62
|
var SelectAttributesList = function (_a) {
|
|
63
63
|
var selectedAttributes = _a.selectedAttributes, onItemClick = _a.onItemClick, focusIndex = _a.focusIndex, hideCheckBox = _a.hideCheckBox, otherProps = __rest(_a, ["selectedAttributes", "onItemClick", "focusIndex", "hideCheckBox"]);
|
|
64
64
|
var metadata = (0, MdmModuleContext_1.useMdmMetadata)();
|
|
65
|
-
var getItemSize = function (i, item) {
|
|
65
|
+
var getItemSize = function (i, item) {
|
|
66
|
+
return item.items ? ITEM_GROUP_TITLE_HEIGHT : ITEM_HEIGHT;
|
|
67
|
+
};
|
|
66
68
|
var renderGroupTitle = function (style, item) { return (react_1.default.createElement(ListItem_1.default, { component: 'div', className: SelectAttributesList_module_css_1.default.subHeader, style: style, key: "group-".concat(item.item.id) },
|
|
67
69
|
item.item.needGroupIcon && react_1.default.createElement(AttributeGroupIcon_1.AttributeGroupIcon, { group: item.item, metadata: metadata }),
|
|
68
70
|
react_1.default.createElement("div", { className: SelectAttributesList_module_css_1.default.subHeaderTitle }, item.item.title))); };
|
|
@@ -74,4 +76,5 @@ var SelectAttributesList = function (_a) {
|
|
|
74
76
|
};
|
|
75
77
|
return (react_1.default.createElement(VirtualGroupedList_1.VirtualGroupedList, __assign({ getItemSize: getItemSize, renderItem: renderItem, renderGroupTitle: renderGroupTitle, focusIndex: focusIndex }, otherProps)));
|
|
76
78
|
};
|
|
77
|
-
|
|
79
|
+
var typedMemo = react_1.memo;
|
|
80
|
+
exports.default = typedMemo(SelectAttributesList);
|
|
@@ -10,81 +10,130 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
24
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
13
49
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
51
|
};
|
|
16
52
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
53
|
var react_1 = __importDefault(require("react"));
|
|
18
|
-
var
|
|
54
|
+
var react_2 = require("@testing-library/react");
|
|
55
|
+
var user_event_1 = __importDefault(require("@testing-library/user-event"));
|
|
19
56
|
var SelectorWithOnlyOptionAutoSelect_1 = require("./SelectorWithOnlyOptionAutoSelect");
|
|
20
57
|
describe('SelectorWithOnlyOptionAutoSelect tests', function () {
|
|
58
|
+
var defaultProps = {
|
|
59
|
+
onChange: jest.fn(),
|
|
60
|
+
options: [],
|
|
61
|
+
value: null
|
|
62
|
+
};
|
|
63
|
+
var setUp = function (props) {
|
|
64
|
+
if (props === void 0) { props = {}; }
|
|
65
|
+
var user = user_event_1.default.setup();
|
|
66
|
+
return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(SelectorWithOnlyOptionAutoSelect_1.SelectorWithOnlyOptionAutoSelect, __assign({}, defaultProps, props))));
|
|
67
|
+
};
|
|
21
68
|
describe('options count > 1', function () {
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
{
|
|
30
|
-
|
|
31
|
-
|
|
69
|
+
var options = [
|
|
70
|
+
{ value: '1', label: 'First' },
|
|
71
|
+
{ value: '2', label: 'Second' }
|
|
72
|
+
];
|
|
73
|
+
it('should render DropDownEditor', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
74
|
+
var user, select;
|
|
75
|
+
return __generator(this, function (_a) {
|
|
76
|
+
switch (_a.label) {
|
|
77
|
+
case 0:
|
|
78
|
+
user = setUp({ options: options, value: '1' }).user;
|
|
79
|
+
select = react_2.screen.getByRole('button');
|
|
80
|
+
expect(react_2.screen.getByText('First')).toBeInTheDocument();
|
|
81
|
+
expect(select).toBeInTheDocument();
|
|
82
|
+
return [4 /*yield*/, user.click(select)];
|
|
83
|
+
case 1:
|
|
84
|
+
_a.sent();
|
|
85
|
+
expect(react_2.screen.getByRole('option', { name: 'First' })).toBeInTheDocument();
|
|
86
|
+
expect(react_2.screen.getByRole('option', { name: 'Second' })).toBeInTheDocument();
|
|
87
|
+
return [2 /*return*/];
|
|
32
88
|
}
|
|
33
|
-
],
|
|
34
|
-
value: '1'
|
|
35
|
-
};
|
|
36
|
-
it('should render DropDownEditor', function () {
|
|
37
|
-
var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(SelectorWithOnlyOptionAutoSelect_1.SelectorWithOnlyOptionAutoSelect, __assign({}, props)));
|
|
38
|
-
expect(wrapper.find('DropDownEditor').props()).toMatchObject({
|
|
39
|
-
value: props.value,
|
|
40
|
-
entries: [
|
|
41
|
-
{
|
|
42
|
-
value: '1',
|
|
43
|
-
label: 'First'
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
value: '2',
|
|
47
|
-
label: 'Second'
|
|
48
|
-
}
|
|
49
|
-
]
|
|
50
89
|
});
|
|
51
|
-
});
|
|
52
|
-
it('should call props.onChange on value change', function () {
|
|
53
|
-
var
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
90
|
+
}); });
|
|
91
|
+
it('should call props.onChange on value change', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
92
|
+
var user;
|
|
93
|
+
return __generator(this, function (_a) {
|
|
94
|
+
switch (_a.label) {
|
|
95
|
+
case 0:
|
|
96
|
+
user = setUp({ options: options }).user;
|
|
97
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('button'))];
|
|
98
|
+
case 1:
|
|
99
|
+
_a.sent();
|
|
100
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('option', { name: 'Second' }))];
|
|
101
|
+
case 2:
|
|
102
|
+
_a.sent();
|
|
103
|
+
expect(defaultProps.onChange).toHaveBeenCalledWith('2');
|
|
104
|
+
return [2 /*return*/];
|
|
105
|
+
}
|
|
67
106
|
});
|
|
68
|
-
});
|
|
107
|
+
}); });
|
|
108
|
+
it('should render empty option if empty label specified', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
109
|
+
var emptyLabel, user;
|
|
110
|
+
return __generator(this, function (_a) {
|
|
111
|
+
switch (_a.label) {
|
|
112
|
+
case 0:
|
|
113
|
+
emptyLabel = 'EMPTY_LABEL';
|
|
114
|
+
user = setUp({ options: options, value: '1', emptyLabel: emptyLabel }).user;
|
|
115
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('button'))];
|
|
116
|
+
case 1:
|
|
117
|
+
_a.sent();
|
|
118
|
+
return [4 /*yield*/, user.click(react_2.screen.getByRole('option', { name: emptyLabel }))];
|
|
119
|
+
case 2:
|
|
120
|
+
_a.sent();
|
|
121
|
+
expect(defaultProps.onChange).toHaveBeenCalledWith(null);
|
|
122
|
+
return [2 /*return*/];
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
}); });
|
|
69
126
|
});
|
|
70
127
|
describe('options count === 1', function () {
|
|
71
|
-
var
|
|
72
|
-
onChange: jest.fn(),
|
|
73
|
-
options: [
|
|
74
|
-
{
|
|
75
|
-
value: '1',
|
|
76
|
-
label: 'Only'
|
|
77
|
-
}
|
|
78
|
-
]
|
|
79
|
-
};
|
|
128
|
+
var options = [{ value: '1', label: 'Only' }];
|
|
80
129
|
it('should render label of the only option', function () {
|
|
81
|
-
|
|
82
|
-
expect(
|
|
83
|
-
expect(
|
|
130
|
+
setUp({ options: options });
|
|
131
|
+
expect(react_2.screen.getByText('Only')).toBeInTheDocument();
|
|
132
|
+
expect(react_2.screen.queryByRole('button')).not.toBeInTheDocument();
|
|
84
133
|
});
|
|
85
|
-
it('should
|
|
86
|
-
(
|
|
87
|
-
expect(
|
|
134
|
+
it('should select automatically value of the only option', function () {
|
|
135
|
+
setUp({ options: options, value: null });
|
|
136
|
+
expect(defaultProps.onChange).toHaveBeenCalledWith('1');
|
|
88
137
|
});
|
|
89
138
|
});
|
|
90
139
|
});
|
|
@@ -17,9 +17,9 @@ var SidePanelContentHeader = function (_a) {
|
|
|
17
17
|
return (react_1.default.createElement("div", { className: styles.container },
|
|
18
18
|
react_1.default.createElement(SmallIconButton_1.SmallIconButtonWithTooltip, { size: "L", icon: Close_1.default, onClick: onClose, className: styles.icon, tooltipTitle: ui_i18n_1.default.text('Close') }),
|
|
19
19
|
content || (react_1.default.createElement(react_1.default.Fragment, null,
|
|
20
|
-
react_1.default.createElement(Typography_1.default, { variant: "h6" }, mainTitle),
|
|
20
|
+
react_1.default.createElement(Typography_1.default, { "data-reltio-id": "content-header-title", variant: "h6" }, mainTitle),
|
|
21
21
|
secondTitle && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
22
|
-
react_1.default.createElement(Divider_1.default, { orientation: "vertical", flexItem: true, className: styles.divider }),
|
|
22
|
+
react_1.default.createElement(Divider_1.default, { "data-reltio-id": "content-header-divider", orientation: "vertical", flexItem: true, className: styles.divider }),
|
|
23
23
|
react_1.default.createElement(Typography_1.default, { variant: "body1", color: "textSecondary", className: styles.secondTitle }, secondTitle))),
|
|
24
24
|
rightContent))));
|
|
25
25
|
};
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
24
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
+
};
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
var react_1 = __importDefault(require("react"));
|
|
54
|
+
var react_2 = require("@testing-library/react");
|
|
55
|
+
var user_event_1 = __importDefault(require("@testing-library/user-event"));
|
|
56
|
+
var SidePanelContentHeader_1 = require("./SidePanelContentHeader");
|
|
57
|
+
var test_utils_1 = require("../test-utils");
|
|
58
|
+
describe('SidePanelContentHeader test', function () {
|
|
59
|
+
var mainTitle = 'mainTitle';
|
|
60
|
+
var secondTitle = 'secondTitle';
|
|
61
|
+
var rightContent = 'rightContent';
|
|
62
|
+
var defaultProps = {
|
|
63
|
+
onClose: jest.fn(),
|
|
64
|
+
mainTitle: mainTitle,
|
|
65
|
+
secondTitle: secondTitle,
|
|
66
|
+
rightContent: rightContent
|
|
67
|
+
};
|
|
68
|
+
var setUp = function (props) {
|
|
69
|
+
if (props === void 0) { props = {}; }
|
|
70
|
+
var user = user_event_1.default.setup();
|
|
71
|
+
return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(SidePanelContentHeader_1.SidePanelContentHeader, __assign({}, defaultProps, props))));
|
|
72
|
+
};
|
|
73
|
+
it('should renders all component well', function () {
|
|
74
|
+
setUp();
|
|
75
|
+
expect(react_2.screen.getByText(mainTitle)).toBeInTheDocument();
|
|
76
|
+
expect(react_2.screen.getByTestId('content-header-divider')).toBeInTheDocument();
|
|
77
|
+
expect(react_2.screen.getByText(secondTitle)).toBeInTheDocument();
|
|
78
|
+
expect(react_2.screen.getByText(rightContent)).toBeInTheDocument();
|
|
79
|
+
var closeButton = react_2.screen.getByRole('button');
|
|
80
|
+
expect((0, test_utils_1.getMuiIconByName)('Close', closeButton)).toBeInTheDocument();
|
|
81
|
+
});
|
|
82
|
+
it('should renders component with content', function () {
|
|
83
|
+
var textContent = 'Test content';
|
|
84
|
+
var content = react_1.default.createElement("div", null, textContent);
|
|
85
|
+
setUp({ content: content });
|
|
86
|
+
expect(react_2.screen.getByText(textContent)).toBeInTheDocument();
|
|
87
|
+
expect(react_2.screen.queryByTestId('content-header-title')).not.toBeInTheDocument();
|
|
88
|
+
});
|
|
89
|
+
it('should not render Divider with empty secondTitle', function () {
|
|
90
|
+
setUp({ secondTitle: '' });
|
|
91
|
+
expect(react_2.screen.queryByTestId('content-header-divider')).not.toBeInTheDocument();
|
|
92
|
+
});
|
|
93
|
+
it('should call onClose after button click', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
94
|
+
var onClose, user, closeButton;
|
|
95
|
+
return __generator(this, function (_a) {
|
|
96
|
+
switch (_a.label) {
|
|
97
|
+
case 0:
|
|
98
|
+
onClose = jest.fn();
|
|
99
|
+
user = setUp({ onClose: onClose }).user;
|
|
100
|
+
closeButton = react_2.screen.getByRole('button');
|
|
101
|
+
return [4 /*yield*/, user.click(closeButton)];
|
|
102
|
+
case 1:
|
|
103
|
+
_a.sent();
|
|
104
|
+
expect(onClose).toHaveBeenCalled();
|
|
105
|
+
return [2 /*return*/];
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}); });
|
|
109
|
+
});
|
|
@@ -15,6 +15,6 @@ var SidePanelEmptyState = function (_a) {
|
|
|
15
15
|
react_1.default.createElement(IconRenderer, { className: styles.logo }),
|
|
16
16
|
react_1.default.createElement("div", { className: styles.textBox },
|
|
17
17
|
react_1.default.createElement(Typography_1.default, { className: styles.text }, text),
|
|
18
|
-
secondaryText && react_1.default.createElement(Typography_1.default, { className: styles.secondaryText }, secondaryText))));
|
|
18
|
+
secondaryText && (react_1.default.createElement(Typography_1.default, { "data-reltio-id": "empty-state-secondary-text", className: styles.secondaryText }, secondaryText)))));
|
|
19
19
|
};
|
|
20
20
|
exports.SidePanelEmptyState = SidePanelEmptyState;
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
var react_1 = __importDefault(require("react"));
|
|
7
|
+
var react_2 = require("@testing-library/react");
|
|
8
|
+
var icons_1 = require("../icons");
|
|
9
|
+
var SidePanelEmptyState_1 = require("./SidePanelEmptyState");
|
|
10
|
+
describe('SidePanelEmptyState test', function () {
|
|
11
|
+
it('should render correct default state', function () {
|
|
12
|
+
(0, react_2.render)(react_1.default.createElement(SidePanelEmptyState_1.SidePanelEmptyState, { text: "test" }));
|
|
13
|
+
expect(react_2.screen.getByText('test')).toBeInTheDocument();
|
|
14
|
+
expect(react_2.screen.getByTestId('SvgAttributesList')).toBeInTheDocument();
|
|
15
|
+
expect(react_2.screen.queryByTestId('empty-state-secondary-text')).not.toBeInTheDocument();
|
|
16
|
+
});
|
|
17
|
+
it('should render icon passed in IconRenderer', function () {
|
|
18
|
+
(0, react_2.render)(react_1.default.createElement(SidePanelEmptyState_1.SidePanelEmptyState, { IconRenderer: icons_1.NoData, text: "test" }));
|
|
19
|
+
expect(react_2.screen.getByText('test')).toBeInTheDocument();
|
|
20
|
+
expect(react_2.screen.getByTestId('SvgNoData')).toBeInTheDocument();
|
|
21
|
+
expect(react_2.screen.queryByTestId('empty-state-secondary-text')).not.toBeInTheDocument();
|
|
22
|
+
});
|
|
23
|
+
it('should render secondary text', function () {
|
|
24
|
+
(0, react_2.render)(react_1.default.createElement(SidePanelEmptyState_1.SidePanelEmptyState, { text: "test", secondaryText: "secondaryTest" }));
|
|
25
|
+
expect(react_2.screen.getByText('test')).toBeInTheDocument();
|
|
26
|
+
expect(react_2.screen.getByText('secondaryTest')).toBeInTheDocument();
|
|
27
|
+
expect(react_2.screen.getByTestId('SvgAttributesList')).toBeInTheDocument();
|
|
28
|
+
});
|
|
29
|
+
});
|
|
@@ -62,7 +62,7 @@ var SimpleAttribute = function (_a) {
|
|
|
62
62
|
_d[styles.ovFalse] = !(0, mdm_sdk_1.isOv)(attributeValue),
|
|
63
63
|
_d)), "data-reltio-id": "reltio-attribute-value" },
|
|
64
64
|
dataTypeValue,
|
|
65
|
-
unmaskingControl)))) : (react_1.default.createElement("div", { className: (0, classnames_1.default)(className, styles.root, classnames_2.COMMENTS_CONTAINER_VISIBILITY_AREA, (_e = {},
|
|
65
|
+
unmaskingControl)))) : (react_1.default.createElement("div", { "data-reltio-id": "comments-container-visibility-area", className: (0, classnames_1.default)(className, styles.root, classnames_2.COMMENTS_CONTAINER_VISIBILITY_AREA, (_e = {},
|
|
66
66
|
_e[highlightedClassName] = highlightedValuesUris.includes(attributeValue.uri),
|
|
67
67
|
_e)) },
|
|
68
68
|
react_1.default.createElement(PivotingTooltip_1.PivotingTooltip, { value: attributeValue, attributeType: attributeType, key: attributeValue.uri },
|