@strapi/content-manager 5.12.5 → 5.13.0-beta.0
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/dist/admin/hooks/useDocumentActions.js +5 -1
- package/dist/admin/hooks/useDocumentActions.js.map +1 -1
- package/dist/admin/hooks/useDocumentActions.mjs +5 -1
- package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
- package/dist/admin/hooks/useDocumentContext.js.map +1 -1
- package/dist/admin/hooks/useDocumentContext.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/DocumentActions.js +206 -21
- package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
- package/dist/admin/pages/EditView/components/DocumentActions.mjs +208 -23
- package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js +7 -12
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs +8 -13
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js +46 -95
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs +48 -78
- package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js +2 -0
- package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs +2 -0
- package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js +199 -137
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +199 -137
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js +89 -50
- package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs +91 -52
- package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.js +50 -97
- package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.mjs +51 -79
- package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.mjs.map +1 -1
- package/dist/admin/preview/components/PreviewHeader.js +1 -1
- package/dist/admin/preview/components/PreviewHeader.js.map +1 -1
- package/dist/admin/preview/components/PreviewHeader.mjs +1 -1
- package/dist/admin/preview/components/PreviewHeader.mjs.map +1 -1
- package/dist/admin/services/homepage.js +9 -5
- package/dist/admin/services/homepage.js.map +1 -1
- package/dist/admin/services/homepage.mjs +9 -5
- package/dist/admin/services/homepage.mjs.map +1 -1
- package/dist/admin/src/hooks/useDocumentContext.d.ts +1 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.d.ts +2 -2
- package/dist/admin/src/pages/EditView/components/FormInputs/Relations/RelationModal.d.ts +26 -5
- package/dist/admin/translations/en.json.js +2 -1
- package/dist/admin/translations/en.json.js.map +1 -1
- package/dist/admin/translations/en.json.mjs +2 -1
- package/dist/admin/translations/en.json.mjs.map +1 -1
- package/dist/server/controllers/index.js +3 -1
- package/dist/server/controllers/index.js.map +1 -1
- package/dist/server/controllers/index.mjs +3 -1
- package/dist/server/controllers/index.mjs.map +1 -1
- package/dist/server/homepage/controllers/homepage.js +57 -0
- package/dist/server/homepage/controllers/homepage.js.map +1 -0
- package/dist/server/homepage/controllers/homepage.mjs +36 -0
- package/dist/server/homepage/controllers/homepage.mjs.map +1 -0
- package/dist/server/homepage/controllers/index.js +10 -0
- package/dist/server/homepage/controllers/index.js.map +1 -0
- package/dist/server/homepage/controllers/index.mjs +8 -0
- package/dist/server/homepage/controllers/index.mjs.map +1 -0
- package/dist/server/homepage/index.js +14 -0
- package/dist/server/homepage/index.js.map +1 -0
- package/dist/server/homepage/index.mjs +12 -0
- package/dist/server/homepage/index.mjs.map +1 -0
- package/dist/server/homepage/routes/homepage.js +25 -0
- package/dist/server/homepage/routes/homepage.js.map +1 -0
- package/dist/server/homepage/routes/homepage.mjs +23 -0
- package/dist/server/homepage/routes/homepage.mjs.map +1 -0
- package/dist/server/homepage/routes/index.js +13 -0
- package/dist/server/homepage/routes/index.js.map +1 -0
- package/dist/server/homepage/routes/index.mjs +11 -0
- package/dist/server/homepage/routes/index.mjs.map +1 -0
- package/dist/server/homepage/services/homepage.js +157 -0
- package/dist/server/homepage/services/homepage.js.map +1 -0
- package/dist/server/homepage/services/homepage.mjs +155 -0
- package/dist/server/homepage/services/homepage.mjs.map +1 -0
- package/dist/server/homepage/services/index.js +10 -0
- package/dist/server/homepage/services/index.js.map +1 -0
- package/dist/server/homepage/services/index.mjs +8 -0
- package/dist/server/homepage/services/index.mjs.map +1 -0
- package/dist/server/preview/services/preview.js +0 -1
- package/dist/server/preview/services/preview.js.map +1 -1
- package/dist/server/preview/services/preview.mjs +0 -1
- package/dist/server/preview/services/preview.mjs.map +1 -1
- package/dist/server/routes/index.js +3 -1
- package/dist/server/routes/index.js.map +1 -1
- package/dist/server/routes/index.mjs +3 -1
- package/dist/server/routes/index.mjs.map +1 -1
- package/dist/server/services/index.js +3 -1
- package/dist/server/services/index.js.map +1 -1
- package/dist/server/services/index.mjs +3 -1
- package/dist/server/services/index.mjs.map +1 -1
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/homepage/controllers/homepage.d.ts +7 -0
- package/dist/server/src/homepage/controllers/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/controllers/index.d.ts +2 -0
- package/dist/server/src/homepage/controllers/index.d.ts.map +1 -0
- package/dist/server/src/homepage/index.d.ts +16 -0
- package/dist/server/src/homepage/index.d.ts.map +1 -0
- package/dist/server/src/homepage/routes/homepage.d.ts +4 -0
- package/dist/server/src/homepage/routes/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/routes/index.d.ts +8 -0
- package/dist/server/src/homepage/routes/index.d.ts.map +1 -0
- package/dist/server/src/{services → homepage/services}/homepage.d.ts +1 -1
- package/dist/server/src/homepage/services/homepage.d.ts.map +1 -0
- package/dist/server/src/homepage/services/index.d.ts +9 -0
- package/dist/server/src/homepage/services/index.d.ts.map +1 -0
- package/dist/server/src/index.d.ts +7 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/preview/services/preview.d.ts.map +1 -1
- package/dist/server/src/routes/index.d.ts +1 -0
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +6 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/package.json +7 -7
- package/dist/server/src/services/homepage.d.ts.map +0 -1
@@ -6,6 +6,9 @@ var strapiAdmin = require('@strapi/admin/strapi-admin');
|
|
6
6
|
var designSystem = require('@strapi/design-system');
|
7
7
|
var Icons = require('@strapi/icons');
|
8
8
|
var mapValues = require('lodash/fp/mapValues');
|
9
|
+
var get = require('lodash/get');
|
10
|
+
var merge = require('lodash/merge');
|
11
|
+
var set = require('lodash/set');
|
9
12
|
var reactIntl = require('react-intl');
|
10
13
|
var reactRouterDom = require('react-router-dom');
|
11
14
|
var styledComponents = require('styled-components');
|
@@ -20,6 +23,7 @@ var router = require('../../../router.js');
|
|
20
23
|
var documents = require('../../../services/documents.js');
|
21
24
|
var api = require('../../../utils/api.js');
|
22
25
|
var translations = require('../../../utils/translations.js');
|
26
|
+
var RelationModal = require('./FormInputs/Relations/RelationModal.js');
|
23
27
|
|
24
28
|
function _interopNamespaceDefault(e) {
|
25
29
|
var n = Object.create(null);
|
@@ -40,6 +44,38 @@ function _interopNamespaceDefault(e) {
|
|
40
44
|
|
41
45
|
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
42
46
|
|
47
|
+
const connectRelationToParent = (parentDataToUpdate, fieldToConnect, data, fieldToConnectUID)=>{
|
48
|
+
/*
|
49
|
+
* Check if the fieldToConnect is already present in the parentDataToUpdate.
|
50
|
+
* This happens in particular when in the parentDocument you have created
|
51
|
+
* a new component without saving.
|
52
|
+
*/ const isFieldPresent = !!get(parentDataToUpdate, fieldToConnect);
|
53
|
+
const fieldToConnectPath = isFieldPresent ? fieldToConnect : fieldToConnect.split('.').slice(0, -1).join('.');
|
54
|
+
const fieldToConnectValue = isFieldPresent ? {
|
55
|
+
connect: [
|
56
|
+
{
|
57
|
+
id: data.documentId,
|
58
|
+
documentId: data.documentId,
|
59
|
+
locale: data.locale
|
60
|
+
}
|
61
|
+
]
|
62
|
+
} : {
|
63
|
+
[fieldToConnect.split('.').pop()]: {
|
64
|
+
connect: [
|
65
|
+
{
|
66
|
+
id: data.documentId,
|
67
|
+
documentId: data.documentId,
|
68
|
+
locale: data.locale
|
69
|
+
}
|
70
|
+
],
|
71
|
+
disconnect: []
|
72
|
+
},
|
73
|
+
// In case the object was not present you need to pass the componentUID of the parent document
|
74
|
+
__component: fieldToConnectUID
|
75
|
+
};
|
76
|
+
const objectToConnect = set({}, fieldToConnectPath, fieldToConnectValue);
|
77
|
+
return merge(parentDataToUpdate, objectToConnect);
|
78
|
+
};
|
43
79
|
const DocumentActions = ({ actions })=>{
|
44
80
|
const { formatMessage } = reactIntl.useIntl();
|
45
81
|
const [primaryAction, secondaryAction, ...restActions] = actions.filter((action)=>{
|
@@ -395,7 +431,17 @@ const transformData = (data)=>{
|
|
395
431
|
const setErrors = strapiAdmin.useForm('PublishAction', (state)=>state.setErrors);
|
396
432
|
const formValues = strapiAdmin.useForm('PublishAction', ({ values })=>values);
|
397
433
|
const resetForm = strapiAdmin.useForm('PublishAction', ({ resetForm })=>resetForm);
|
434
|
+
// need to discriminate if the publish is coming from a relation modal or in the edit view
|
435
|
+
const relationContext = RelationModal.useRelationModal('PublishAction', ()=>true, false);
|
436
|
+
const fromRelationModal = relationContext != undefined;
|
437
|
+
const dispatch = RelationModal.useRelationModal('PublishAction', (state)=>state.dispatch);
|
438
|
+
const fieldToConnect = RelationModal.useRelationModal('PublishAction', (state)=>state.state.fieldToConnect, false);
|
439
|
+
const fieldToConnectUID = RelationModal.useRelationModal('PublishAction', (state)=>state.state.fieldToConnectUID, false);
|
440
|
+
const documentHistory = RelationModal.useRelationModal('PublishAction', (state)=>state.state.documentHistory, false);
|
441
|
+
const rootDocumentMeta = RelationModal.useRelationModal('PublishAction', (state)=>state.rootDocumentMeta);
|
398
442
|
const { currentDocumentMeta } = useDocumentContext.useDocumentContext('PublishAction');
|
443
|
+
const [updateDocumentMutation] = documents.useUpdateDocumentMutation();
|
444
|
+
const { _unstableFormatAPIError: formatAPIError } = strapiAdmin.useAPIErrorHandler();
|
399
445
|
const idToPublish = currentDocumentMeta.documentId || id;
|
400
446
|
React__namespace.useEffect(()=>{
|
401
447
|
if (isErrorDraftRelations) {
|
@@ -479,6 +525,16 @@ const transformData = (data)=>{
|
|
479
525
|
model,
|
480
526
|
currentDocumentMeta.params
|
481
527
|
]);
|
528
|
+
const parentDocumentMetaToUpdate = documentHistory?.at(-2) ?? rootDocumentMeta;
|
529
|
+
const parentDocumentData = useDocument.useDocument({
|
530
|
+
documentId: parentDocumentMetaToUpdate?.documentId,
|
531
|
+
model: parentDocumentMetaToUpdate?.model,
|
532
|
+
collectionType: parentDocumentMetaToUpdate?.collectionType,
|
533
|
+
params: parentDocumentMetaToUpdate?.params
|
534
|
+
}, {
|
535
|
+
skip: !parentDocumentMetaToUpdate
|
536
|
+
});
|
537
|
+
const { getInitialFormValues } = useDocument.useDoc();
|
482
538
|
const isDocumentPublished = (document?.[attributes.PUBLISHED_AT_ATTRIBUTE_NAME] || meta?.availableStatus.some((doc)=>doc[attributes.PUBLISHED_AT_ATTRIBUTE_NAME] !== null)) && document?.status !== 'modified';
|
483
539
|
if (!schema?.options?.draftAndPublish) {
|
484
540
|
return null;
|
@@ -512,11 +568,59 @@ const transformData = (data)=>{
|
|
512
568
|
if ('data' in res && collectionType !== collections.SINGLE_TYPES) {
|
513
569
|
/**
|
514
570
|
* TODO: refactor the router so we can just do `../${res.data.documentId}` instead of this.
|
515
|
-
*/ if (idToPublish === 'create') {
|
571
|
+
*/ if (idToPublish === 'create' && !fromRelationModal) {
|
516
572
|
navigate({
|
517
573
|
pathname: `../${collectionType}/${model}/${res.data.documentId}`,
|
518
574
|
search: rawQuery
|
519
575
|
});
|
576
|
+
} else if (fromRelationModal) {
|
577
|
+
const newRelation = {
|
578
|
+
documentId: res.data.documentId,
|
579
|
+
collectionType,
|
580
|
+
model,
|
581
|
+
params: currentDocumentMeta.params
|
582
|
+
};
|
583
|
+
/*
|
584
|
+
* Update, if needed, the parent relation with the newly published document.
|
585
|
+
* Check if in history we have the parent relation otherwise use the
|
586
|
+
* rootDocument
|
587
|
+
*/ if (fieldToConnect && documentHistory && (parentDocumentMetaToUpdate.documentId || parentDocumentMetaToUpdate.collectionType === collections.SINGLE_TYPES)) {
|
588
|
+
const parentDataToUpdate = parentDocumentMetaToUpdate.collectionType === collections.SINGLE_TYPES ? getInitialFormValues() : parentDocumentData.getInitialFormValues();
|
589
|
+
const metaDocumentToUpdate = documentHistory.at(-2) ?? rootDocumentMeta;
|
590
|
+
const dataToUpdate = connectRelationToParent(parentDataToUpdate, fieldToConnect, res.data, fieldToConnectUID);
|
591
|
+
try {
|
592
|
+
const updateRes = await updateDocumentMutation({
|
593
|
+
collectionType: metaDocumentToUpdate.collectionType,
|
594
|
+
model: metaDocumentToUpdate.model,
|
595
|
+
documentId: metaDocumentToUpdate.collectionType !== collections.SINGLE_TYPES ? metaDocumentToUpdate.documentId : undefined,
|
596
|
+
params: metaDocumentToUpdate.params,
|
597
|
+
data: dataToUpdate
|
598
|
+
});
|
599
|
+
if ('error' in updateRes) {
|
600
|
+
toggleNotification({
|
601
|
+
type: 'danger',
|
602
|
+
message: formatAPIError(updateRes.error)
|
603
|
+
});
|
604
|
+
return;
|
605
|
+
}
|
606
|
+
} catch (err) {
|
607
|
+
toggleNotification({
|
608
|
+
type: 'danger',
|
609
|
+
message: formatMessage({
|
610
|
+
id: 'notification.error',
|
611
|
+
defaultMessage: 'An error occurred'
|
612
|
+
})
|
613
|
+
});
|
614
|
+
throw err;
|
615
|
+
}
|
616
|
+
}
|
617
|
+
dispatch({
|
618
|
+
type: 'GO_TO_CREATED_RELATION',
|
619
|
+
payload: {
|
620
|
+
document: newRelation,
|
621
|
+
shouldBypassConfirmation: true
|
622
|
+
}
|
623
|
+
});
|
520
624
|
}
|
521
625
|
} else if ('error' in res && api.isBaseQueryError(res.error) && res.error.name === 'ValidationError') {
|
522
626
|
setErrors(formatValidationErrors(res.error));
|
@@ -592,14 +696,34 @@ const UpdateAction = ({ activeTab, documentId, model, collectionType })=>{
|
|
592
696
|
const { create, update, clone, isLoading } = useDocumentActions.useDocumentActions();
|
593
697
|
const [{ rawQuery }] = strapiAdmin.useQueryParams();
|
594
698
|
const onPreview = Preview.usePreviewContext('UpdateAction', (state)=>state.onPreview, false);
|
699
|
+
const { getInitialFormValues } = useDocument.useDoc();
|
595
700
|
const isSubmitting = strapiAdmin.useForm('UpdateAction', ({ isSubmitting })=>isSubmitting);
|
596
701
|
const modified = strapiAdmin.useForm('UpdateAction', ({ modified })=>modified);
|
597
702
|
const setSubmitting = strapiAdmin.useForm('UpdateAction', ({ setSubmitting })=>setSubmitting);
|
598
703
|
const document = strapiAdmin.useForm('UpdateAction', ({ values })=>values);
|
599
704
|
const validate = strapiAdmin.useForm('UpdateAction', (state)=>state.validate);
|
600
705
|
const setErrors = strapiAdmin.useForm('UpdateAction', (state)=>state.setErrors);
|
601
|
-
const resetForm = strapiAdmin.useForm('
|
706
|
+
const resetForm = strapiAdmin.useForm('UpdateAction', ({ resetForm })=>resetForm);
|
707
|
+
const dispatch = RelationModal.useRelationModal('UpdateAction', (state)=>state.dispatch);
|
708
|
+
// need to discriminate if the update is coming from a relation modal or in the edit view
|
709
|
+
const relationContext = RelationModal.useRelationModal('UpdateAction', ()=>true, false);
|
710
|
+
const fieldToConnect = RelationModal.useRelationModal('UpdateAction', (state)=>state.state.fieldToConnect, false);
|
711
|
+
const fieldToConnectUID = RelationModal.useRelationModal('PublishAction', (state)=>state.state.fieldToConnectUID, false);
|
712
|
+
const documentHistory = RelationModal.useRelationModal('UpdateAction', (state)=>state.state.documentHistory, false);
|
713
|
+
const rootDocumentMeta = RelationModal.useRelationModal('UpdateAction', (state)=>state.rootDocumentMeta);
|
714
|
+
const fromRelationModal = relationContext != undefined;
|
602
715
|
const { currentDocumentMeta } = useDocumentContext.useDocumentContext('UpdateAction');
|
716
|
+
const [updateDocumentMutation] = documents.useUpdateDocumentMutation();
|
717
|
+
const { _unstableFormatAPIError: formatAPIError } = strapiAdmin.useAPIErrorHandler();
|
718
|
+
const parentDocumentMetaToUpdate = documentHistory?.at(-2) ?? rootDocumentMeta;
|
719
|
+
const parentDocumentData = useDocument.useDocument({
|
720
|
+
documentId: parentDocumentMetaToUpdate?.documentId,
|
721
|
+
model: parentDocumentMetaToUpdate?.model,
|
722
|
+
collectionType: parentDocumentMetaToUpdate?.collectionType,
|
723
|
+
params: parentDocumentMetaToUpdate?.params
|
724
|
+
}, {
|
725
|
+
skip: !parentDocumentMetaToUpdate
|
726
|
+
});
|
603
727
|
const handleUpdate = React__namespace.useCallback(async ()=>{
|
604
728
|
setSubmitting(true);
|
605
729
|
try {
|
@@ -653,13 +777,64 @@ const UpdateAction = ({ activeTab, documentId, model, collectionType })=>{
|
|
653
777
|
params: currentDocumentMeta.params
|
654
778
|
}, transformData(document));
|
655
779
|
if ('data' in res && collectionType !== collections.SINGLE_TYPES) {
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
780
|
+
if (fromRelationModal) {
|
781
|
+
const createdRelation = {
|
782
|
+
documentId: res.data.documentId,
|
783
|
+
collectionType,
|
784
|
+
model,
|
785
|
+
params: currentDocumentMeta.params
|
786
|
+
};
|
787
|
+
/*
|
788
|
+
* Update, if needed, the parent relation with the newly published document.
|
789
|
+
* Check if in history we have the parent relation otherwise use the
|
790
|
+
* rootDocument
|
791
|
+
*/ if (fieldToConnect && documentHistory && (parentDocumentMetaToUpdate.documentId || parentDocumentMetaToUpdate.collectionType === collections.SINGLE_TYPES)) {
|
792
|
+
const parentDataToUpdate = parentDocumentMetaToUpdate.collectionType === collections.SINGLE_TYPES ? getInitialFormValues() : parentDocumentData.getInitialFormValues();
|
793
|
+
const dataToUpdate = connectRelationToParent(parentDataToUpdate, fieldToConnect, res.data, fieldToConnectUID);
|
794
|
+
try {
|
795
|
+
const updateRes = await updateDocumentMutation({
|
796
|
+
collectionType: parentDocumentMetaToUpdate.collectionType,
|
797
|
+
model: parentDocumentMetaToUpdate.model,
|
798
|
+
documentId: parentDocumentMetaToUpdate.collectionType !== collections.SINGLE_TYPES ? parentDocumentMetaToUpdate.documentId : undefined,
|
799
|
+
params: parentDocumentMetaToUpdate.params,
|
800
|
+
data: {
|
801
|
+
...dataToUpdate
|
802
|
+
}
|
803
|
+
});
|
804
|
+
if ('error' in updateRes) {
|
805
|
+
toggleNotification({
|
806
|
+
type: 'danger',
|
807
|
+
message: formatAPIError(updateRes.error)
|
808
|
+
});
|
809
|
+
return;
|
810
|
+
}
|
811
|
+
} catch (err) {
|
812
|
+
toggleNotification({
|
813
|
+
type: 'danger',
|
814
|
+
message: formatMessage({
|
815
|
+
id: 'notification.error',
|
816
|
+
defaultMessage: 'An error occurred'
|
817
|
+
})
|
818
|
+
});
|
819
|
+
throw err;
|
820
|
+
}
|
821
|
+
}
|
822
|
+
dispatch({
|
823
|
+
type: 'GO_TO_CREATED_RELATION',
|
824
|
+
payload: {
|
825
|
+
document: createdRelation,
|
826
|
+
shouldBypassConfirmation: true
|
827
|
+
}
|
828
|
+
});
|
829
|
+
} else {
|
830
|
+
navigate({
|
831
|
+
pathname: `../${res.data.documentId}`,
|
832
|
+
search: rawQuery
|
833
|
+
}, {
|
834
|
+
replace: true,
|
835
|
+
relative: 'path'
|
836
|
+
});
|
837
|
+
}
|
663
838
|
} else if ('error' in res && api.isBaseQueryError(res.error) && res.error.name === 'ValidationError') {
|
664
839
|
setErrors(formatValidationErrors(res.error));
|
665
840
|
}
|
@@ -671,26 +846,36 @@ const UpdateAction = ({ activeTab, documentId, model, collectionType })=>{
|
|
671
846
|
}
|
672
847
|
}
|
673
848
|
}, [
|
849
|
+
setSubmitting,
|
850
|
+
modified,
|
851
|
+
validate,
|
852
|
+
isCloning,
|
853
|
+
documentId,
|
854
|
+
collectionType,
|
855
|
+
toggleNotification,
|
856
|
+
formatMessage,
|
674
857
|
clone,
|
858
|
+
model,
|
675
859
|
cloneMatch?.params.origin,
|
676
|
-
collectionType,
|
677
|
-
create,
|
678
860
|
currentDocumentMeta.params,
|
679
861
|
document,
|
680
|
-
documentId,
|
681
|
-
formatMessage,
|
682
|
-
formatValidationErrors,
|
683
|
-
isCloning,
|
684
|
-
model,
|
685
|
-
modified,
|
686
862
|
navigate,
|
687
863
|
rawQuery,
|
688
|
-
resetForm,
|
689
864
|
setErrors,
|
690
|
-
|
691
|
-
toggleNotification,
|
865
|
+
formatValidationErrors,
|
692
866
|
update,
|
693
|
-
|
867
|
+
resetForm,
|
868
|
+
create,
|
869
|
+
fromRelationModal,
|
870
|
+
fieldToConnect,
|
871
|
+
documentHistory,
|
872
|
+
parentDocumentMetaToUpdate,
|
873
|
+
dispatch,
|
874
|
+
getInitialFormValues,
|
875
|
+
parentDocumentData,
|
876
|
+
fieldToConnectUID,
|
877
|
+
updateDocumentMutation,
|
878
|
+
formatAPIError,
|
694
879
|
onPreview
|
695
880
|
]);
|
696
881
|
// Auto-save on CMD+S or CMD+Enter on macOS, and CTRL+S or CTRL+Enter on Windows/Linux
|