@reltio/components 1.4.1694 → 1.4.1696

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.
@@ -77,12 +77,14 @@ var RelationEditor = function (_a) {
77
77
  var removeAttribute = (0, contexts_1.useMdmAction)('removeAttribute');
78
78
  var addRelation = (0, contexts_1.useMdmAction)('addRelation');
79
79
  var editRelation = (0, contexts_1.useMdmAction)('editRelation');
80
+ var mainEntity = (0, contexts_1.useMdmEntity)();
80
81
  var initialConnection = (0, contexts_1.useMdmInitialConnection)(config.id, relationUri);
81
82
  var initialModifiedEntity = (0, contexts_1.useMdmInitialConnectionTempEntity)(config.id, relationUri);
82
83
  var mdmModifiedEntity = (0, contexts_1.useMdmModifiedEntity)(entityUri);
83
84
  var mdmAllModifiedEntities = (0, contexts_1.useMdmModifiedEntities)();
84
85
  var globalSearchRequestOptions = (0, contexts_1.useMdmGlobalSearchRequestOptions)(['ovOnly']);
85
86
  var profileErrors = (0, contexts_1.useMdmProfileErrors)();
87
+ var authoringItems = (0, contexts_1.useMdmAuthoringItemsByEntityType)(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.type);
86
88
  var error = (0, mdm_sdk_1.getRelationEditorActiveError)(connection, profileErrors);
87
89
  var modifiedEntity = isTempEntity ? mdmModifiedEntity : null;
88
90
  var allModifiedEntities = isTempEntity ? mdmAllModifiedEntities : null;
@@ -120,6 +122,7 @@ var RelationEditor = function (_a) {
120
122
  !(0, ramda_1.equals)(initialModifiedEntity, modifiedEntity) ||
121
123
  areRelatedEntitiesChanged(initialRelatedTempEntities.current, relatedTempEntities));
122
124
  var applyAction = (0, react_1.useMemo)(function () { return (0, ramda_1.curry)(isNew ? addRelation : editRelation); }, [isNew, addRelation, editRelation]);
125
+ var canCreateNewEntity = !(0, mdm_sdk_1.isSuggestMode)(mode) || !(0, mdm_sdk_1.isTempUri)(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.uri) || !(0, mdm_sdk_1.isEmptyValue)(authoringItems);
123
126
  var onRelationTypeChange = (0, react_1.useCallback)(function (relationType) { return setRelationType(config.id, relationUri, relationType); }, [config, relationUri, setRelationType]);
124
127
  var handleClose = (0, react_1.useCallback)(function () { return closeRelationEditor(config.id, relationUri); }, [config, relationUri, closeRelationEditor]);
125
128
  var updateModifiedEntityLabel = (0, react_1.useCallback)(function (connection) {
@@ -200,7 +203,7 @@ var RelationEditor = function (_a) {
200
203
  react_1.default.createElement(EntitySelector_1.default, { className: (0, classnames_1.default)(styles.item, (_b = {},
201
204
  _b[styles.dense] = errorMessage ||
202
205
  (connection.entity && (0, mdm_sdk_1.isTempUri)(connection.entity.entityUri)),
203
- _b)), entity: connection.entity || {}, entityTypesUris: getEntityTypesUris() || [], max: config.max || 20, globalSearchRequestOptions: globalSearchRequestOptions, mode: mode, onChange: onChangeEntity, onCreate: (0, mdm_sdk_1.isSuggestMode)(mode) ? undefined : onCreateEntity, metadata: metadata, attributeTypesSelectionStrategy: mdm_sdk_1.relationEditorAttributeTypesSelectionStrategy }))),
206
+ _b)), entity: connection.entity || {}, entityTypesUris: getEntityTypesUris() || [], max: config.max || 20, globalSearchRequestOptions: globalSearchRequestOptions, mode: mode, onChange: onChangeEntity, onCreate: canCreateNewEntity ? onCreateEntity : undefined, metadata: metadata, attributeTypesSelectionStrategy: mdm_sdk_1.relationEditorAttributeTypesSelectionStrategy }))),
204
207
  react_1.default.createElement(AttributesList_1.default, { className: styles.item, attrTypes: firstLevelRelationAttrTypes, entity: attributeListEntity, showEmptyEditors: true, mode: mode, parentUri: relationUri, onAddAttributes: onAddAttributes, onChangeAttribute: onChangeAttribute, onDeleteAttribute: onDeleteAttribute })))),
205
208
  react_1.default.createElement("div", { className: styles.actionButtons },
206
209
  react_1.default.createElement(Button_1.default, { onClick: onCancel }, ui_i18n_1.default.text('Cancel')),
@@ -1,4 +1,4 @@
1
- import { Metadata, SearchState, AttributePresentations, Entity, Mode, AttributeType, AttributeError, ImageAttributeValue, SortingStrategy, DependentLookupsConfig, PivotingValue, PivotingAttribute, DataTenant, HistoryDiff, ImageAttributeFieldsOrder, Connection, User, SearchNavigationData, SearchProviderData, Lookups, HistoryMode, HistorySlice, HistoryEvent, RequestNextPageOfAttributeValuesPayload, LookupsForTypeResolvedPayload, RelationsLoadedPayload, CompactRelationType, AddAttributesPayload, ModifyAttributePayload, RemoveAttributePayload, RelationsState, DependentLookupsState, ActivityFilter, SearchOptions, GlobalFilter } from '@reltio/mdm-sdk';
1
+ import { Metadata, SearchState, AttributePresentations, Entity, Mode, AttributeType, AttributeError, ImageAttributeValue, SortingStrategy, DependentLookupsConfig, PivotingValue, PivotingAttribute, DataTenant, HistoryDiff, ImageAttributeFieldsOrder, Connection, User, SearchNavigationData, SearchProviderData, Lookups, HistoryMode, HistorySlice, HistoryEvent, RequestNextPageOfAttributeValuesPayload, LookupsForTypeResolvedPayload, RelationsLoadedPayload, CompactRelationType, AddAttributesPayload, ModifyAttributePayload, RemoveAttributePayload, RelationsState, DependentLookupsState, ActivityFilter, SearchOptions, GlobalFilter, LayoutConfigItem } from '@reltio/mdm-sdk';
2
2
  import { AnyAction } from '../../types';
3
3
  export type MdmModuleValuesContextProps = Partial<{
4
4
  autoCloseInterval: number;
@@ -51,6 +51,7 @@ export type MdmModuleValuesContextProps = Partial<{
51
51
  searchProviderData: SearchProviderData;
52
52
  isWorkflowEnabled: boolean;
53
53
  isCollaborationEnabled: boolean;
54
+ uiConfigLayout: LayoutConfigItem[];
54
55
  }>;
55
56
  export type MdmModuleActionsContextProps = Partial<{
56
57
  openSearch: (payload: SearchState) => void;
@@ -242,6 +243,7 @@ export declare const MdmModuleValuesContext: import("@fluentui/react-context-sel
242
243
  searchProviderData: SearchProviderData;
243
244
  isWorkflowEnabled: boolean;
244
245
  isCollaborationEnabled: boolean;
246
+ uiConfigLayout: LayoutConfigItem[];
245
247
  }>>;
246
248
  export declare const MdmModuleListenersContext: import("@fluentui/react-context-selector").Context<Partial<{
247
249
  expandInvalidRelatonsListener: (callback: () => void) => (action: any) => void;
@@ -69,6 +69,7 @@ export declare const useMdmDependentLookupEditorContext: (attributeValue: Simple
69
69
  value?: null;
70
70
  };
71
71
  export declare const useMdmGlobalSearchRequestOptions: (omittingFields?: string[]) => import("@reltio/mdm-sdk").GlobalSearchRequestOptions;
72
+ export declare const useMdmAuthoringItemsByEntityType: (entityTypeUri: string) => import("@reltio/mdm-sdk").AuthoringItem[];
72
73
  export declare const useMdmAction: <T extends "openSearch" | "openHistoryEvent" | "openConsoleApp" | "addAttributes" | "modifyAttribute" | "removeAttribute" | "entityDeleted" | "entityCreated" | "errorDeactivated" | "requestNextPageOfAttributeValues" | "openEntity" | "setDefaultProfilePicForModifiedEntity" | "setDefaultProfilePicForEntity" | "dependentLookupsEditorTouched" | "openPivotingPerspective" | "lookupsLoaded" | "lookupsForTypeResolved" | "errorSet" | "setHistoryMode" | "modeUpdated" | "setHistoryEvent" | "clearHistoryEvent" | "setHistoryDiff" | "setHistorySlice" | "updateSearchNavigationDataFields" | "openPerspective" | "entityDeletionFinished" | "loadEntity" | "updateSearchNavigationDataOnMerge" | "lookupsListResolved" | "relationsLoaded" | "setInitialInfo" | "setRelationType" | "closeRelationEditor" | "openRelationEditor" | "setRelationEntity" | "errorsSet" | "addRelation" | "editRelation">(action: T) => Partial<{
73
74
  openSearch: (payload: import("@reltio/mdm-sdk").SearchState) => void;
74
75
  openHistoryEvent: (payload: {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useMdmIsWorkflowEnabled = exports.useMdmIsCollaborationEnabled = exports.useMdmSearchProviderData = exports.useMdmSearchNavigationData = exports.useMdmDataTenants = exports.useMdmEnvironment = exports.useMdmTenantName = exports.useMdmTenant = exports.useMdmTenantObject = exports.useMdmUserRoles = exports.useMdmUsername = exports.useMdmUser = exports.useMdmMetadata = exports.useMdmDependentLookups = exports.useMdmLookups = exports.useMdmProfileLastLoadedTime = exports.useMdmHistoryEvent = exports.useMdmHistorySlice = exports.useMdmHistoryMode = exports.useMdmHistoryDiff = exports.useMdmIsEditableMode = exports.useMdmIsViewMode = exports.useMdmMode = exports.useMdmEntityUriWithDataTenant = exports.useMdmEntityWithDiff = exports.useMdmEntityUri = exports.useMdmEntity = exports.useMdmModifiedEntities = exports.useMdmLookupAutocomplete = exports.useMdmAttributesSortingStrategy = exports.useMdmDefaultMaxValues = exports.useMdmAttributePresentations = exports.useMdmDateTimeMask = exports.useMdmDateMask = exports.useMdmPivotingAttributes = exports.useMdmShowEntityId = exports.useMdmImageAttributesFieldsOrder = exports.useMdmCollaborationPath = exports.useMdmApiPath = exports.useMdmReltioPath = exports.useMdmImageServicePath = exports.useMdmWorkflowPath = exports.useMdmServicesPath = exports.useMdmDtssPath = exports.useMdmUiPath = exports.useMdmAbsoluteImagePath = exports.useMdmExportPath = exports.useMdmWorkflowEnvironmentUrl = exports.useMdmUiError = exports.useMdmAutoCloseInterval = void 0;
4
- exports.useMdmListener = exports.useMdmAction = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmRelationsDrafts = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmProfileErrors = void 0;
4
+ exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmRelationsDrafts = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmProfileErrors = void 0;
5
5
  var react_context_selector_1 = require("@fluentui/react-context-selector");
6
6
  var mdm_sdk_1 = require("@reltio/mdm-sdk");
7
7
  var context_1 = require("./context");
@@ -200,6 +200,12 @@ var useMdmGlobalSearchRequestOptions = function (omittingFields) {
200
200
  });
201
201
  };
202
202
  exports.useMdmGlobalSearchRequestOptions = useMdmGlobalSearchRequestOptions;
203
+ var useMdmAuthoringItemsByEntityType = function (entityTypeUri) {
204
+ return useMdmModuleValuesContext(function (context) {
205
+ return (0, mdm_sdk_1.getAuthoringItemsFromLayoutByEntityType)(context.uiConfigLayout, entityTypeUri);
206
+ });
207
+ };
208
+ exports.useMdmAuthoringItemsByEntityType = useMdmAuthoringItemsByEntityType;
203
209
  var useMdmAction = function (action) {
204
210
  return useMdmModuleActionsContext(function (context) { return context[action]; });
205
211
  };
@@ -1,3 +1,3 @@
1
1
  export { MdmModuleProvider } from './provider';
2
- export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAction, useMdmListener } from './hooks';
2
+ export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAuthoringItemsByEntityType, useMdmAction, useMdmListener } from './hooks';
3
3
  export type { MdmModuleActionsContextProps, MdmModuleValuesContextProps, MdmModuleListenersContextProps } from './context';
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useMdmIsCollaborationEnabled = exports.useMdmSearchProviderData = exports.useMdmSearchNavigationData = exports.useMdmDataTenants = exports.useMdmEnvironment = exports.useMdmTenantName = exports.useMdmTenant = exports.useMdmTenantObject = exports.useMdmUserRoles = exports.useMdmUsername = exports.useMdmUser = exports.useMdmMetadata = exports.useMdmDependentLookups = exports.useMdmLookups = exports.useMdmProfileLastLoadedTime = exports.useMdmHistoryEvent = exports.useMdmHistorySlice = exports.useMdmHistoryMode = exports.useMdmHistoryDiff = exports.useMdmIsEditableMode = exports.useMdmIsViewMode = exports.useMdmMode = exports.useMdmEntityUriWithDataTenant = exports.useMdmEntityWithDiff = exports.useMdmEntityUri = exports.useMdmEntity = exports.useMdmModifiedEntities = exports.useMdmLookupAutocomplete = exports.useMdmAttributesSortingStrategy = exports.useMdmDefaultMaxValues = exports.useMdmAttributePresentations = exports.useMdmDateTimeMask = exports.useMdmDateMask = exports.useMdmPivotingAttributes = exports.useMdmShowEntityId = exports.useMdmImageAttributesFieldsOrder = exports.useMdmCollaborationPath = exports.useMdmApiPath = exports.useMdmReltioPath = exports.useMdmImageServicePath = exports.useMdmWorkflowPath = exports.useMdmServicesPath = exports.useMdmDtssPath = exports.useMdmUiPath = exports.useMdmAbsoluteImagePath = exports.useMdmExportPath = exports.useMdmWorkflowEnvironmentUrl = exports.useMdmUiError = exports.useMdmAutoCloseInterval = exports.MdmModuleProvider = void 0;
4
- exports.useMdmListener = exports.useMdmAction = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmRelationsDrafts = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = void 0;
4
+ exports.useMdmListener = exports.useMdmAction = exports.useMdmAuthoringItemsByEntityType = exports.useMdmGlobalSearchRequestOptions = exports.useMdmDependentLookupEditorContext = exports.useMdmAllRelationsToAddAndEdit = exports.useMdmDependentLookupsStructureNode = exports.useMdmActiveErrorsForAttributesPager = exports.useMdmDependentLookupEditorState = exports.useMdmInitialConnection = exports.useMdmInitialConnectionTempEntity = exports.useMdmModifiedEntity = exports.useMdmModifiedEntityDefaultProfilePic = exports.useMdmRelationsDrafts = exports.useMdmProfileErrors = exports.useMdmIsWorkflowEnabled = void 0;
5
5
  var provider_1 = require("./provider");
6
6
  Object.defineProperty(exports, "MdmModuleProvider", { enumerable: true, get: function () { return provider_1.MdmModuleProvider; } });
7
7
  var hooks_1 = require("./hooks");
@@ -67,5 +67,6 @@ Object.defineProperty(exports, "useMdmDependentLookupsStructureNode", { enumerab
67
67
  Object.defineProperty(exports, "useMdmAllRelationsToAddAndEdit", { enumerable: true, get: function () { return hooks_1.useMdmAllRelationsToAddAndEdit; } });
68
68
  Object.defineProperty(exports, "useMdmDependentLookupEditorContext", { enumerable: true, get: function () { return hooks_1.useMdmDependentLookupEditorContext; } });
69
69
  Object.defineProperty(exports, "useMdmGlobalSearchRequestOptions", { enumerable: true, get: function () { return hooks_1.useMdmGlobalSearchRequestOptions; } });
70
+ Object.defineProperty(exports, "useMdmAuthoringItemsByEntityType", { enumerable: true, get: function () { return hooks_1.useMdmAuthoringItemsByEntityType; } });
70
71
  Object.defineProperty(exports, "useMdmAction", { enumerable: true, get: function () { return hooks_1.useMdmAction; } });
71
72
  Object.defineProperty(exports, "useMdmListener", { enumerable: true, get: function () { return hooks_1.useMdmListener; } });
@@ -21,7 +21,7 @@ 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 { isHighlightedErrorType, ScrollToElementContext, useMdmAction, useMdmGlobalSearchRequestOptions, useMdmInitialConnection, useMdmInitialConnectionTempEntity, useMdmModifiedEntities, useMdmModifiedEntity, useMdmProfileErrors } from '../../contexts';
24
+ import { isHighlightedErrorType, ScrollToElementContext, useMdmAction, useMdmAuthoringItemsByEntityType, useMdmEntity, useMdmGlobalSearchRequestOptions, useMdmInitialConnection, useMdmInitialConnectionTempEntity, useMdmModifiedEntities, useMdmModifiedEntity, useMdmProfileErrors } from '../../contexts';
25
25
  import { useScrollToAttributeError } from '../../hooks';
26
26
  import { useStyles } from './styles';
27
27
  var areRelatedEntitiesChanged = function (initial, actual) {
@@ -49,12 +49,14 @@ var RelationEditor = function (_a) {
49
49
  var removeAttribute = useMdmAction('removeAttribute');
50
50
  var addRelation = useMdmAction('addRelation');
51
51
  var editRelation = useMdmAction('editRelation');
52
+ var mainEntity = useMdmEntity();
52
53
  var initialConnection = useMdmInitialConnection(config.id, relationUri);
53
54
  var initialModifiedEntity = useMdmInitialConnectionTempEntity(config.id, relationUri);
54
55
  var mdmModifiedEntity = useMdmModifiedEntity(entityUri);
55
56
  var mdmAllModifiedEntities = useMdmModifiedEntities();
56
57
  var globalSearchRequestOptions = useMdmGlobalSearchRequestOptions(['ovOnly']);
57
58
  var profileErrors = useMdmProfileErrors();
59
+ var authoringItems = useMdmAuthoringItemsByEntityType(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.type);
58
60
  var error = getRelationEditorActiveError(connection, profileErrors);
59
61
  var modifiedEntity = isTempEntity ? mdmModifiedEntity : null;
60
62
  var allModifiedEntities = isTempEntity ? mdmAllModifiedEntities : null;
@@ -92,6 +94,7 @@ var RelationEditor = function (_a) {
92
94
  !equals(initialModifiedEntity, modifiedEntity) ||
93
95
  areRelatedEntitiesChanged(initialRelatedTempEntities.current, relatedTempEntities));
94
96
  var applyAction = useMemo(function () { return curry(isNew ? addRelation : editRelation); }, [isNew, addRelation, editRelation]);
97
+ var canCreateNewEntity = !isSuggestMode(mode) || !isTempUri(mainEntity === null || mainEntity === void 0 ? void 0 : mainEntity.uri) || !isEmptyValue(authoringItems);
95
98
  var onRelationTypeChange = useCallback(function (relationType) { return setRelationType(config.id, relationUri, relationType); }, [config, relationUri, setRelationType]);
96
99
  var handleClose = useCallback(function () { return closeRelationEditor(config.id, relationUri); }, [config, relationUri, closeRelationEditor]);
97
100
  var updateModifiedEntityLabel = useCallback(function (connection) {
@@ -172,7 +175,7 @@ var RelationEditor = function (_a) {
172
175
  React.createElement(EntitySelector, { className: classnames(styles.item, (_b = {},
173
176
  _b[styles.dense] = errorMessage ||
174
177
  (connection.entity && isTempUri(connection.entity.entityUri)),
175
- _b)), entity: connection.entity || {}, entityTypesUris: getEntityTypesUris() || [], max: config.max || 20, globalSearchRequestOptions: globalSearchRequestOptions, mode: mode, onChange: onChangeEntity, onCreate: isSuggestMode(mode) ? undefined : onCreateEntity, metadata: metadata, attributeTypesSelectionStrategy: relationEditorAttributeTypesSelectionStrategy }))),
178
+ _b)), entity: connection.entity || {}, entityTypesUris: getEntityTypesUris() || [], max: config.max || 20, globalSearchRequestOptions: globalSearchRequestOptions, mode: mode, onChange: onChangeEntity, onCreate: canCreateNewEntity ? onCreateEntity : undefined, metadata: metadata, attributeTypesSelectionStrategy: relationEditorAttributeTypesSelectionStrategy }))),
176
179
  React.createElement(AttributesList, { className: styles.item, attrTypes: firstLevelRelationAttrTypes, entity: attributeListEntity, showEmptyEditors: true, mode: mode, parentUri: relationUri, onAddAttributes: onAddAttributes, onChangeAttribute: onChangeAttribute, onDeleteAttribute: onDeleteAttribute })))),
177
180
  React.createElement("div", { className: styles.actionButtons },
178
181
  React.createElement(Button, { onClick: onCancel }, i18n.text('Cancel')),
@@ -1,4 +1,4 @@
1
- import { Metadata, SearchState, AttributePresentations, Entity, Mode, AttributeType, AttributeError, ImageAttributeValue, SortingStrategy, DependentLookupsConfig, PivotingValue, PivotingAttribute, DataTenant, HistoryDiff, ImageAttributeFieldsOrder, Connection, User, SearchNavigationData, SearchProviderData, Lookups, HistoryMode, HistorySlice, HistoryEvent, RequestNextPageOfAttributeValuesPayload, LookupsForTypeResolvedPayload, RelationsLoadedPayload, CompactRelationType, AddAttributesPayload, ModifyAttributePayload, RemoveAttributePayload, RelationsState, DependentLookupsState, ActivityFilter, SearchOptions, GlobalFilter } from '@reltio/mdm-sdk';
1
+ import { Metadata, SearchState, AttributePresentations, Entity, Mode, AttributeType, AttributeError, ImageAttributeValue, SortingStrategy, DependentLookupsConfig, PivotingValue, PivotingAttribute, DataTenant, HistoryDiff, ImageAttributeFieldsOrder, Connection, User, SearchNavigationData, SearchProviderData, Lookups, HistoryMode, HistorySlice, HistoryEvent, RequestNextPageOfAttributeValuesPayload, LookupsForTypeResolvedPayload, RelationsLoadedPayload, CompactRelationType, AddAttributesPayload, ModifyAttributePayload, RemoveAttributePayload, RelationsState, DependentLookupsState, ActivityFilter, SearchOptions, GlobalFilter, LayoutConfigItem } from '@reltio/mdm-sdk';
2
2
  import { AnyAction } from '../../types';
3
3
  export type MdmModuleValuesContextProps = Partial<{
4
4
  autoCloseInterval: number;
@@ -51,6 +51,7 @@ export type MdmModuleValuesContextProps = Partial<{
51
51
  searchProviderData: SearchProviderData;
52
52
  isWorkflowEnabled: boolean;
53
53
  isCollaborationEnabled: boolean;
54
+ uiConfigLayout: LayoutConfigItem[];
54
55
  }>;
55
56
  export type MdmModuleActionsContextProps = Partial<{
56
57
  openSearch: (payload: SearchState) => void;
@@ -242,6 +243,7 @@ export declare const MdmModuleValuesContext: import("@fluentui/react-context-sel
242
243
  searchProviderData: SearchProviderData;
243
244
  isWorkflowEnabled: boolean;
244
245
  isCollaborationEnabled: boolean;
246
+ uiConfigLayout: LayoutConfigItem[];
245
247
  }>>;
246
248
  export declare const MdmModuleListenersContext: import("@fluentui/react-context-selector").Context<Partial<{
247
249
  expandInvalidRelatonsListener: (callback: () => void) => (action: any) => void;
@@ -69,6 +69,7 @@ export declare const useMdmDependentLookupEditorContext: (attributeValue: Simple
69
69
  value?: null;
70
70
  };
71
71
  export declare const useMdmGlobalSearchRequestOptions: (omittingFields?: string[]) => import("@reltio/mdm-sdk").GlobalSearchRequestOptions;
72
+ export declare const useMdmAuthoringItemsByEntityType: (entityTypeUri: string) => import("@reltio/mdm-sdk").AuthoringItem[];
72
73
  export declare const useMdmAction: <T extends "openSearch" | "openHistoryEvent" | "openConsoleApp" | "addAttributes" | "modifyAttribute" | "removeAttribute" | "entityDeleted" | "entityCreated" | "errorDeactivated" | "requestNextPageOfAttributeValues" | "openEntity" | "setDefaultProfilePicForModifiedEntity" | "setDefaultProfilePicForEntity" | "dependentLookupsEditorTouched" | "openPivotingPerspective" | "lookupsLoaded" | "lookupsForTypeResolved" | "errorSet" | "setHistoryMode" | "modeUpdated" | "setHistoryEvent" | "clearHistoryEvent" | "setHistoryDiff" | "setHistorySlice" | "updateSearchNavigationDataFields" | "openPerspective" | "entityDeletionFinished" | "loadEntity" | "updateSearchNavigationDataOnMerge" | "lookupsListResolved" | "relationsLoaded" | "setInitialInfo" | "setRelationType" | "closeRelationEditor" | "openRelationEditor" | "setRelationEntity" | "errorsSet" | "addRelation" | "editRelation">(action: T) => Partial<{
73
74
  openSearch: (payload: import("@reltio/mdm-sdk").SearchState) => void;
74
75
  openHistoryEvent: (payload: {
@@ -1,5 +1,5 @@
1
1
  import { useContextSelector } from '@fluentui/react-context-selector';
2
- import { isEditableMode as checkIsEditableMode, isViewMode as checkIsViewMode, getDependentLookupsStructureNode, getDependentLookupEditorState, getAllRelationsToAddAndEdit, getInitialConnection, getInitialConnectionTempEntity, getCachedActiveErrorsForAttributesPager, getGlobalSearchRequestOptions, getDraftsByViewId } from '@reltio/mdm-sdk';
2
+ import { isEditableMode as checkIsEditableMode, isViewMode as checkIsViewMode, getDependentLookupsStructureNode, getDependentLookupEditorState, getAllRelationsToAddAndEdit, getInitialConnection, getInitialConnectionTempEntity, getCachedActiveErrorsForAttributesPager, getGlobalSearchRequestOptions, getDraftsByViewId, getAuthoringItemsFromLayoutByEntityType } from '@reltio/mdm-sdk';
3
3
  import { MdmModuleActionsContext, MdmModuleListenersContext, MdmModuleValuesContext } from './context';
4
4
  import { getDependentLookupEditorContext } from './selectors/dependentLookupEditorContext';
5
5
  import { getModifiedEntity, getModifiedEntityDefaultProfilePic } from './selectors/entity';
@@ -134,6 +134,11 @@ export var useMdmGlobalSearchRequestOptions = function (omittingFields) {
134
134
  }, omittingFields);
135
135
  });
136
136
  };
137
+ export var useMdmAuthoringItemsByEntityType = function (entityTypeUri) {
138
+ return useMdmModuleValuesContext(function (context) {
139
+ return getAuthoringItemsFromLayoutByEntityType(context.uiConfigLayout, entityTypeUri);
140
+ });
141
+ };
137
142
  export var useMdmAction = function (action) {
138
143
  return useMdmModuleActionsContext(function (context) { return context[action]; });
139
144
  };
@@ -1,3 +1,3 @@
1
1
  export { MdmModuleProvider } from './provider';
2
- export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAction, useMdmListener } from './hooks';
2
+ export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAuthoringItemsByEntityType, useMdmAction, useMdmListener } from './hooks';
3
3
  export type { MdmModuleActionsContextProps, MdmModuleValuesContextProps, MdmModuleListenersContextProps } from './context';
@@ -1,2 +1,2 @@
1
1
  export { MdmModuleProvider } from './provider';
2
- export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAction, useMdmListener } from './hooks';
2
+ export { useMdmAutoCloseInterval, useMdmUiError, useMdmWorkflowEnvironmentUrl, useMdmExportPath, useMdmAbsoluteImagePath, useMdmUiPath, useMdmDtssPath, useMdmServicesPath, useMdmWorkflowPath, useMdmImageServicePath, useMdmReltioPath, useMdmApiPath, useMdmCollaborationPath, useMdmImageAttributesFieldsOrder, useMdmShowEntityId, useMdmPivotingAttributes, useMdmDateMask, useMdmDateTimeMask, useMdmAttributePresentations, useMdmDefaultMaxValues, useMdmAttributesSortingStrategy, useMdmLookupAutocomplete, useMdmModifiedEntities, useMdmEntity, useMdmEntityUri, useMdmEntityWithDiff, useMdmEntityUriWithDataTenant, useMdmMode, useMdmIsViewMode, useMdmIsEditableMode, useMdmHistoryDiff, useMdmHistoryMode, useMdmHistorySlice, useMdmHistoryEvent, useMdmProfileLastLoadedTime, useMdmLookups, useMdmDependentLookups, useMdmMetadata, useMdmUser, useMdmUsername, useMdmUserRoles, useMdmTenantObject, useMdmTenant, useMdmTenantName, useMdmEnvironment, useMdmDataTenants, useMdmSearchNavigationData, useMdmSearchProviderData, useMdmIsCollaborationEnabled, useMdmIsWorkflowEnabled, useMdmProfileErrors, useMdmRelationsDrafts, useMdmModifiedEntityDefaultProfilePic, useMdmModifiedEntity, useMdmInitialConnectionTempEntity, useMdmInitialConnection, useMdmDependentLookupEditorState, useMdmActiveErrorsForAttributesPager, useMdmDependentLookupsStructureNode, useMdmAllRelationsToAddAndEdit, useMdmDependentLookupEditorContext, useMdmGlobalSearchRequestOptions, useMdmAuthoringItemsByEntityType, useMdmAction, useMdmListener } from './hooks';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reltio/components",
3
- "version": "1.4.1694",
3
+ "version": "1.4.1696",
4
4
  "license": "SEE LICENSE IN LICENSE FILE",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -8,7 +8,7 @@
8
8
  "@date-io/moment": "^1.3.5",
9
9
  "@fluentui/react-context-selector": "^9.1.26",
10
10
  "@react-google-maps/api": "2.7.0",
11
- "@reltio/mdm-sdk": "^1.4.1694",
11
+ "@reltio/mdm-sdk": "^1.4.1696",
12
12
  "classnames": "^2.2.5",
13
13
  "d3-cloud": "^1.2.5",
14
14
  "d3-geo": "^2.0.1",