@contentful/field-editor-reference 6.21.1 → 6.22.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/cjs/assets/WrappedAssetCard/FetchingWrappedAssetCard.js +4 -1
- package/dist/cjs/common/useContentTypePermissions.js +3 -9
- package/dist/cjs/common/useEditorPermissions.js +2 -2
- package/dist/cjs/entries/WrappedEntryCard/FetchingWrappedEntryCard.js +4 -1
- package/dist/esm/assets/WrappedAssetCard/FetchingWrappedAssetCard.js +4 -1
- package/dist/esm/common/useContentTypePermissions.js +3 -9
- package/dist/esm/common/useEditorPermissions.js +2 -2
- package/dist/esm/entries/WrappedEntryCard/FetchingWrappedEntryCard.js +4 -1
- package/dist/types/assets/WrappedAssetCard/FetchingWrappedAssetCard.d.ts +4 -1
- package/dist/types/common/ReferenceEditor.d.ts +4 -1
- package/dist/types/entries/WrappedEntryCard/FetchingWrappedEntryCard.d.ts +4 -1
- package/package.json +2 -2
|
@@ -74,7 +74,10 @@ function FetchingWrappedAssetCard(props) {
|
|
|
74
74
|
});
|
|
75
75
|
const onAddToRelease = ()=>{
|
|
76
76
|
if (asset && props.addReferenceToRelease) {
|
|
77
|
-
void props.addReferenceToRelease(asset, props.sdk.field.locale
|
|
77
|
+
void props.addReferenceToRelease(asset, props.sdk.field.locale, {
|
|
78
|
+
openModalForVersionSelection: true,
|
|
79
|
+
skipNestedReferencesPrompt: true
|
|
80
|
+
});
|
|
78
81
|
}
|
|
79
82
|
};
|
|
80
83
|
_react.useEffect(()=>{
|
|
@@ -41,21 +41,15 @@ function useContentTypePermissions({ entityType, validations, sdk, allContentTyp
|
|
|
41
41
|
const [creatableContentTypes, setCreatableContentTypes] = (0, _react.useState)(availableContentTypes);
|
|
42
42
|
const { canPerformActionOnEntryOfType } = (0, _useAccessApi.useAccessApi)(sdk.access);
|
|
43
43
|
(0, _react.useEffect)(()=>{
|
|
44
|
-
function getContentTypes(action) {
|
|
45
|
-
return filter(availableContentTypes, (ct)=>canPerformActionOnEntryOfType(action, ct.sys.id));
|
|
46
|
-
}
|
|
47
44
|
async function checkContentTypeAccess() {
|
|
48
|
-
const creatable = await
|
|
49
|
-
|
|
50
|
-
setCreatableContentTypes(creatable);
|
|
51
|
-
}
|
|
45
|
+
const creatable = await filter(availableContentTypes, (ct)=>canPerformActionOnEntryOfType('create', ct.sys.id));
|
|
46
|
+
setCreatableContentTypes((creatableContentTypes)=>(0, _isEqual.default)(creatable, creatableContentTypes) ? creatableContentTypes : creatable);
|
|
52
47
|
}
|
|
53
48
|
if (availableContentTypes.length > 0) {
|
|
54
49
|
void checkContentTypeAccess();
|
|
55
50
|
}
|
|
56
51
|
}, [
|
|
57
|
-
availableContentTypes
|
|
58
|
-
creatableContentTypes
|
|
52
|
+
availableContentTypes
|
|
59
53
|
]);
|
|
60
54
|
return {
|
|
61
55
|
creatableContentTypes,
|
|
@@ -17,8 +17,8 @@ function useEditorPermissions({ sdk, entityType, parameters, allContentTypes })
|
|
|
17
17
|
const itemsValidations = sdk.field.type === 'Array' ? sdk.field.items?.validations : undefined;
|
|
18
18
|
const validations = (0, _react.useMemo)(()=>(0, _fromFieldValidations.fromFieldValidations)(sdk.field), [
|
|
19
19
|
sdk.field,
|
|
20
|
-
fieldValidations,
|
|
21
|
-
itemsValidations
|
|
20
|
+
JSON.stringify(fieldValidations),
|
|
21
|
+
JSON.stringify(itemsValidations)
|
|
22
22
|
]);
|
|
23
23
|
const [canCreateEntity, setCanCreateEntity] = (0, _react.useState)(true);
|
|
24
24
|
const [canLinkEntity, setCanLinkEntity] = (0, _react.useState)(true);
|
|
@@ -116,7 +116,10 @@ function FetchingWrappedEntryCard(props) {
|
|
|
116
116
|
};
|
|
117
117
|
const onAddToRelease = ()=>{
|
|
118
118
|
if (entry && props.addReferenceToRelease) {
|
|
119
|
-
void props.addReferenceToRelease(entry, props.sdk.field.locale
|
|
119
|
+
void props.addReferenceToRelease(entry, props.sdk.field.locale, {
|
|
120
|
+
openModalForVersionSelection: true,
|
|
121
|
+
skipNestedReferencesPrompt: true
|
|
122
|
+
});
|
|
120
123
|
}
|
|
121
124
|
};
|
|
122
125
|
_react.useEffect(()=>{
|
|
@@ -23,7 +23,10 @@ export function FetchingWrappedAssetCard(props) {
|
|
|
23
23
|
});
|
|
24
24
|
const onAddToRelease = ()=>{
|
|
25
25
|
if (asset && props.addReferenceToRelease) {
|
|
26
|
-
void props.addReferenceToRelease(asset, props.sdk.field.locale
|
|
26
|
+
void props.addReferenceToRelease(asset, props.sdk.field.locale, {
|
|
27
|
+
openModalForVersionSelection: true,
|
|
28
|
+
skipNestedReferencesPrompt: true
|
|
29
|
+
});
|
|
27
30
|
}
|
|
28
31
|
};
|
|
29
32
|
React.useEffect(()=>{
|
|
@@ -26,21 +26,15 @@ export function useContentTypePermissions({ entityType, validations, sdk, allCon
|
|
|
26
26
|
const [creatableContentTypes, setCreatableContentTypes] = useState(availableContentTypes);
|
|
27
27
|
const { canPerformActionOnEntryOfType } = useAccessApi(sdk.access);
|
|
28
28
|
useEffect(()=>{
|
|
29
|
-
function getContentTypes(action) {
|
|
30
|
-
return filter(availableContentTypes, (ct)=>canPerformActionOnEntryOfType(action, ct.sys.id));
|
|
31
|
-
}
|
|
32
29
|
async function checkContentTypeAccess() {
|
|
33
|
-
const creatable = await
|
|
34
|
-
|
|
35
|
-
setCreatableContentTypes(creatable);
|
|
36
|
-
}
|
|
30
|
+
const creatable = await filter(availableContentTypes, (ct)=>canPerformActionOnEntryOfType('create', ct.sys.id));
|
|
31
|
+
setCreatableContentTypes((creatableContentTypes)=>isEqual(creatable, creatableContentTypes) ? creatableContentTypes : creatable);
|
|
37
32
|
}
|
|
38
33
|
if (availableContentTypes.length > 0) {
|
|
39
34
|
void checkContentTypeAccess();
|
|
40
35
|
}
|
|
41
36
|
}, [
|
|
42
|
-
availableContentTypes
|
|
43
|
-
creatableContentTypes
|
|
37
|
+
availableContentTypes
|
|
44
38
|
]);
|
|
45
39
|
return {
|
|
46
40
|
creatableContentTypes,
|
|
@@ -7,8 +7,8 @@ export function useEditorPermissions({ sdk, entityType, parameters, allContentTy
|
|
|
7
7
|
const itemsValidations = sdk.field.type === 'Array' ? sdk.field.items?.validations : undefined;
|
|
8
8
|
const validations = useMemo(()=>fromFieldValidations(sdk.field), [
|
|
9
9
|
sdk.field,
|
|
10
|
-
fieldValidations,
|
|
11
|
-
itemsValidations
|
|
10
|
+
JSON.stringify(fieldValidations),
|
|
11
|
+
JSON.stringify(itemsValidations)
|
|
12
12
|
]);
|
|
13
13
|
const [canCreateEntity, setCanCreateEntity] = useState(true);
|
|
14
14
|
const [canLinkEntity, setCanLinkEntity] = useState(true);
|
|
@@ -65,7 +65,10 @@ export function FetchingWrappedEntryCard(props) {
|
|
|
65
65
|
};
|
|
66
66
|
const onAddToRelease = ()=>{
|
|
67
67
|
if (entry && props.addReferenceToRelease) {
|
|
68
|
-
void props.addReferenceToRelease(entry, props.sdk.field.locale
|
|
68
|
+
void props.addReferenceToRelease(entry, props.sdk.field.locale, {
|
|
69
|
+
openModalForVersionSelection: true,
|
|
70
|
+
skipNestedReferencesPrompt: true
|
|
71
|
+
});
|
|
69
72
|
}
|
|
70
73
|
};
|
|
71
74
|
React.useEffect(()=>{
|
|
@@ -12,7 +12,10 @@ type FetchingWrappedAssetCardProps = {
|
|
|
12
12
|
renderDragHandle?: RenderDragFn;
|
|
13
13
|
renderCustomCard?: CustomCardRenderer;
|
|
14
14
|
renderCustomMissingEntityCard?: RenderCustomMissingEntityCard;
|
|
15
|
-
addReferenceToRelease?: (reference: Asset, localeCode?: string
|
|
15
|
+
addReferenceToRelease?: (reference: Asset, localeCode?: string, options?: {
|
|
16
|
+
openModalForVersionSelection?: boolean;
|
|
17
|
+
skipNestedReferencesPrompt?: boolean;
|
|
18
|
+
}) => Promise<void>;
|
|
16
19
|
};
|
|
17
20
|
export declare function FetchingWrappedAssetCard(props: FetchingWrappedAssetCardProps): React.JSX.Element;
|
|
18
21
|
export {};
|
|
@@ -33,7 +33,10 @@ export interface ReferenceEditorProps {
|
|
|
33
33
|
oldIndex: number;
|
|
34
34
|
newIndex: number;
|
|
35
35
|
}) => void;
|
|
36
|
-
addReferenceToRelease?: (reference: Entry | Asset, localeCode?: string
|
|
36
|
+
addReferenceToRelease?: (reference: Entry | Asset, localeCode?: string, options?: {
|
|
37
|
+
openModalForVersionSelection?: boolean;
|
|
38
|
+
skipNestedReferencesPrompt?: boolean;
|
|
39
|
+
}) => Promise<void>;
|
|
37
40
|
}
|
|
38
41
|
export type CustomActionProps = LinkActionsProps;
|
|
39
42
|
export declare function ReferenceEditor<T>(props: ReferenceEditorProps & {
|
|
@@ -17,6 +17,9 @@ export type EntryCardReferenceEditorProps = ReferenceEditorProps & {
|
|
|
17
17
|
activeLocales?: {
|
|
18
18
|
code: string;
|
|
19
19
|
}[];
|
|
20
|
-
addReferenceToRelease?: (reference: Entry, localeCode?: string
|
|
20
|
+
addReferenceToRelease?: (reference: Entry, localeCode?: string, options?: {
|
|
21
|
+
openModalForVersionSelection?: boolean;
|
|
22
|
+
skipNestedReferencesPrompt?: boolean;
|
|
23
|
+
}) => Promise<void>;
|
|
21
24
|
};
|
|
22
25
|
export declare function FetchingWrappedEntryCard(props: EntryCardReferenceEditorProps): React.JSX.Element;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contentful/field-editor-reference",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.22.0",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
@@ -68,5 +68,5 @@
|
|
|
68
68
|
"publishConfig": {
|
|
69
69
|
"registry": "https://npm.pkg.github.com/"
|
|
70
70
|
},
|
|
71
|
-
"gitHead": "
|
|
71
|
+
"gitHead": "436e2c3a4436dd4beb4a17128c359aea2689ba9f"
|
|
72
72
|
}
|