@@ -35,9 +35,9 @@ import { useStore } from 'stores/connect';
35
35
import useProductName from 'customization/useProductName' ;
36
36
37
37
const EditContentPackPage = ( ) => {
38
+ useStore ( ContentPacksStore ) ;
38
39
const productName = useProductName ( ) ;
39
40
const { entityIndex } = useStore ( CatalogStore ) ;
40
- const { } = useStore ( ContentPacksStore ) ;
41
41
const { contentPackId, contentPackRev } = useParams < { contentPackId : string ; contentPackRev : string } > ( ) ;
42
42
const history = useHistory ( ) ;
43
43
const [ selectedEntities , setSelectedEntities ] = useState ( { } ) ;
@@ -49,30 +49,28 @@ const EditContentPackPage = () => {
49
49
useEffect ( ( ) => {
50
50
ContentPacksActions . get ( contentPackId ) . then ( ( result ) => {
51
51
const { contentPackRevisions } = result ;
52
- const originContentPackRev = contentPackRev ;
53
- const newContentPack = contentPackRevisions . createNewVersionFromRev ( originContentPackRev ) ;
52
+ const newContentPack = contentPackRevisions . createNewVersionFromRev ( contentPackRev ) ;
54
53
55
54
setContentPack ( newContentPack ) ;
56
55
setContentPackEntities ( cloneDeep ( newContentPack . entities ) ) ;
57
56
58
57
CatalogActions . showEntityIndex ( ) ;
59
58
} ) ;
60
- } , [ ] ) ;
59
+ } , [ contentPackId , contentPackRev ] ) ;
61
60
62
61
const entityCatalog = useMemo ( ( ) => {
63
62
if ( ! contentPack || ! entityIndex ) {
64
63
return { } ;
65
64
}
66
65
67
66
const groupedContentPackEntities = groupBy ( contentPackEntities , 'type.name' ) ;
68
- const newEntityCatalog = Object . keys ( entityIndex ) . reduce ( ( result , entityType ) => {
67
+
68
+ return Object . keys ( entityIndex ) . reduce ( ( result , entityType ) => {
69
69
/* eslint-disable-next-line no-param-reassign */
70
70
result [ entityType ] = entityIndex [ entityType ] . concat ( groupedContentPackEntities [ entityType ] || [ ] ) ;
71
71
72
72
return result ;
73
73
} , { } ) ;
74
-
75
- return newEntityCatalog ;
76
74
} , [ contentPack , entityIndex , contentPackEntities ] ) ;
77
75
78
76
useEffect ( ( ) => {
@@ -97,7 +95,7 @@ const EditContentPackPage = () => {
97
95
} , { } ) ;
98
96
99
97
setSelectedEntities ( newSelectedEntities ) ;
100
- } , [ contentPack , entityIndex ] ) ;
98
+ } , [ contentPack , entityCatalog , entityIndex ] ) ;
101
99
102
100
useEffect ( ( ) => {
103
101
if ( ! contentPack ) {
@@ -151,13 +149,13 @@ const EditContentPackPage = () => {
151
149
) ;
152
150
} ;
153
151
154
- const _getEntities = ( selectedEntities ) => {
155
- CatalogActions . getSelectedEntities ( selectedEntities ) . then ( ( result ) => {
156
- const contentPackEntities = Object . keys ( selectedEntities )
157
- . reduce ( ( acc , entityType ) => acc . concat ( selectedEntities [ entityType ] ) , [ ] )
152
+ const _getEntities = ( newSelectedEntities ) => {
153
+ CatalogActions . getSelectedEntities ( newSelectedEntities ) . then ( ( result ) => {
154
+ const selectedContentPackEntities = Object . keys ( newSelectedEntities )
155
+ . reduce ( ( acc , entityType ) => acc . concat ( newSelectedEntities [ entityType ] ) , [ ] )
158
156
. filter ( ( e ) => e instanceof Entity ) ;
159
157
/* Mark entities from server */
160
- const entities = contentPackEntities . concat ( result . entities . map ( ( e ) => Entity . fromJSON ( e , true ) ) ) ;
158
+ const entities = selectedContentPackEntities . concat ( result . entities . map ( ( e ) => Entity . fromJSON ( e , true ) ) ) ;
161
159
const builtContentPack = contentPack . toBuilder ( ) . entities ( entities ) . build ( ) ;
162
160
163
161
setContentPack ( builtContentPack ) ;
0 commit comments