@reltio/components 1.4.1770 → 1.4.1771

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.
@@ -85,6 +85,7 @@ var RelationEditor = function (_a) {
85
85
  var globalSearchRequestOptions = (0, contexts_1.useMdmGlobalSearchRequestOptions)(['ovOnly']);
86
86
  var profileErrors = (0, contexts_1.useMdmProfileErrors)();
87
87
  var authoringItems = (0, contexts_1.useMdmAuthoringItemsByEntityType)(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.type);
88
+ var mainEntityUri = (0, contexts_1.useMdmEntityUri)();
88
89
  var error = (0, mdm_sdk_1.getRelationEditorActiveError)(connection, profileErrors);
89
90
  var modifiedEntity = isTempEntity ? mdmModifiedEntity : null;
90
91
  var allModifiedEntities = isTempEntity ? mdmAllModifiedEntities : null;
@@ -144,10 +145,15 @@ var RelationEditor = function (_a) {
144
145
  }
145
146
  }, [config.id, relationUri, setRelationEntity, errorDeactivated, modifiedEntity, deleteModifiedEntity, error]);
146
147
  var validate = (0, react_1.useCallback)(function () {
147
- var errors = (0, mdm_sdk_1.validateConnection)(metadata, allModifiedEntities, connection);
148
+ var errors = (0, mdm_sdk_1.validateConnection)(metadata, allModifiedEntities, connection).map(function (error) { return (__assign(__assign({}, error), { path: (0, ramda_1.pipe)(mdm_sdk_1.evaluateErrorPath, (0, ramda_1.map)((0, ramda_1.when)((0, ramda_1.propEq)('type', mdm_sdk_1.AttributeValuePathItemType.relationConnection), (0, ramda_1.assoc)('viewId', config.id))))({
149
+ entityUri: mainEntityUri,
150
+ metadata: metadata,
151
+ connections: [connection],
152
+ entitiesMap: allModifiedEntities || {}
153
+ }, error.uri || error.parentUri) })); });
148
154
  errorsSet(errors);
149
155
  return errors.length === 0;
150
- }, [connection, metadata, allModifiedEntities, errorsSet]);
156
+ }, [connection, metadata, allModifiedEntities, errorsSet, mainEntityUri, config]);
151
157
  var resetErrors = (0, react_1.useCallback)(function () { return errorsSet([]); }, [errorsSet]);
152
158
  var onApply = (0, react_1.useCallback)((0, ramda_1.pipe)((0, ramda_1.always)(connection), (0, ramda_1.when)(validate, (0, ramda_1.pipe)(mdm_sdk_1.omitMarks, updateModifiedEntityLabel, applyAction(config.id), (0, ramda_1.always)((0, ramda_1.differenceWith)(ramda_1.equals, relatedTempEntitiesUrisHistory.current, relatedTempEntities.map((0, ramda_1.prop)('uri')))), (0, ramda_1.forEach)(deleteModifiedEntity), handleClose))), [connection, config, updateModifiedEntityLabel, validate, relatedTempEntities]);
153
159
  var onCancel = (0, react_1.useCallback)(function () {
@@ -12,16 +12,16 @@ var __assign = (this && this.__assign) || function () {
12
12
  import React, { useCallback, useEffect, useMemo, useRef } from 'react';
13
13
  import i18n from 'ui-i18n';
14
14
  import classnames from 'classnames';
15
- import { always, concat, differenceWith, equals, forEach, path, pick, pipe, prop, when, uniq, curry } from 'ramda';
15
+ import { always, assoc, concat, differenceWith, equals, forEach, map, path, pick, pipe, prop, propEq, when, uniq, curry } from 'ramda';
16
16
  import Button from '@mui/material/Button';
17
17
  import Typography from '@mui/material/Typography';
18
- import { createTemporaryEntity, findRelatedTemporaryEntities, getActivenessAttributes, getCreatableAttributeTypes, getEntityType, getErrorMessage, getErrorId, omitMarks, relationEditorAttributeTypesSelectionStrategy, validateConnection, updateConnectionEntityLabel, isTempUri, isEmptyValue, getRelationAttributesList, getDefaultRelationTypeObject, getInOutRelations, isSuggestMode, isAttributeTypeError, getRelationUriFromConnection, getRelationEditorActiveError, getRelationAttributesFromConnection, getEntityUriFromConnection } from '@reltio/mdm-sdk';
18
+ import { createTemporaryEntity, findRelatedTemporaryEntities, getActivenessAttributes, getCreatableAttributeTypes, getEntityType, getErrorMessage, getErrorId, omitMarks, relationEditorAttributeTypesSelectionStrategy, validateConnection, updateConnectionEntityLabel, isTempUri, isEmptyValue, getRelationAttributesList, getDefaultRelationTypeObject, getInOutRelations, isSuggestMode, isAttributeTypeError, getRelationUriFromConnection, getRelationEditorActiveError, getRelationAttributesFromConnection, getEntityUriFromConnection, evaluateErrorPath, AttributeValuePathItemType } from '@reltio/mdm-sdk';
19
19
  import ConnectionRelationTypeSelector from '../ConnectionRelationTypeSelector/ConnectionRelationTypeSelector';
20
20
  import ErrorWrapper from '../ErrorWrapper/ErrorWrapper';
21
21
  import EntitySelector from '../attributes/editMode/EntitySelector/EntitySelector';
22
22
  import AttributesList from '../attributes/editMode/AttributesList';
23
23
  import { withContext } from '../../HOCs';
24
- import { ConfigPermissionsContextProvider, isHighlightedErrorType, ScrollToElementContext, useMdmAction, useMdmAuthoringItemsByEntityType, useMdmEntity, useMdmGlobalSearchRequestOptions, useMdmInitialConnection, useMdmInitialConnectionTempEntity, useMdmModifiedEntities, useMdmModifiedEntity, useMdmProfileErrors } from '../../contexts';
24
+ import { ConfigPermissionsContextProvider, isHighlightedErrorType, ScrollToElementContext, useMdmAction, useMdmAuthoringItemsByEntityType, useMdmEntity, useMdmGlobalSearchRequestOptions, useMdmInitialConnection, useMdmInitialConnectionTempEntity, useMdmModifiedEntities, useMdmModifiedEntity, useMdmProfileErrors, useMdmEntityUri } from '../../contexts';
25
25
  import { useScrollToAttributeError } from '../../hooks';
26
26
  import { useStyles } from './styles';
27
27
  var areRelatedEntitiesChanged = function (initial, actual) {
@@ -57,6 +57,7 @@ var RelationEditor = function (_a) {
57
57
  var globalSearchRequestOptions = useMdmGlobalSearchRequestOptions(['ovOnly']);
58
58
  var profileErrors = useMdmProfileErrors();
59
59
  var authoringItems = useMdmAuthoringItemsByEntityType(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.type);
60
+ var mainEntityUri = useMdmEntityUri();
60
61
  var error = getRelationEditorActiveError(connection, profileErrors);
61
62
  var modifiedEntity = isTempEntity ? mdmModifiedEntity : null;
62
63
  var allModifiedEntities = isTempEntity ? mdmAllModifiedEntities : null;
@@ -116,10 +117,15 @@ var RelationEditor = function (_a) {
116
117
  }
117
118
  }, [config.id, relationUri, setRelationEntity, errorDeactivated, modifiedEntity, deleteModifiedEntity, error]);
118
119
  var validate = useCallback(function () {
119
- var errors = validateConnection(metadata, allModifiedEntities, connection);
120
+ var errors = validateConnection(metadata, allModifiedEntities, connection).map(function (error) { return (__assign(__assign({}, error), { path: pipe(evaluateErrorPath, map(when(propEq('type', AttributeValuePathItemType.relationConnection), assoc('viewId', config.id))))({
121
+ entityUri: mainEntityUri,
122
+ metadata: metadata,
123
+ connections: [connection],
124
+ entitiesMap: allModifiedEntities || {}
125
+ }, error.uri || error.parentUri) })); });
120
126
  errorsSet(errors);
121
127
  return errors.length === 0;
122
- }, [connection, metadata, allModifiedEntities, errorsSet]);
128
+ }, [connection, metadata, allModifiedEntities, errorsSet, mainEntityUri, config]);
123
129
  var resetErrors = useCallback(function () { return errorsSet([]); }, [errorsSet]);
124
130
  var onApply = useCallback(pipe(always(connection), when(validate, pipe(omitMarks, updateModifiedEntityLabel, applyAction(config.id), always(differenceWith(equals, relatedTempEntitiesUrisHistory.current, relatedTempEntities.map(prop('uri')))), forEach(deleteModifiedEntity), handleClose))), [connection, config, updateModifiedEntityLabel, validate, relatedTempEntities]);
125
131
  var onCancel = useCallback(function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reltio/components",
3
- "version": "1.4.1770",
3
+ "version": "1.4.1771",
4
4
  "license": "SEE LICENSE IN LICENSE FILE",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",