Skip to content

Commit 6f0bd6a

Browse files
Update the functionality for the multi-tabbed dashboard view (#2223)
1 parent b5ac66f commit 6f0bd6a

File tree

3 files changed

+34
-24
lines changed

3 files changed

+34
-24
lines changed

geonode_mapstore_client/client/js/epics/gnresource.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,10 @@ import {
113113
success as successNotification,
114114
warning as warningNotification
115115
} from '@mapstore/framework/actions/notifications';
116-
import { convertDependenciesMappingForCompatibility } from '@mapstore/framework/utils/WidgetsUtils';
116+
import {
117+
convertDependenciesMappingForCompatibility,
118+
updateDependenciesForMultiViewCompatibility
119+
} from '@mapstore/framework/utils/WidgetsUtils';
117120
import {
118121
setResource as setContextCreatorResource,
119122
enableMandatoryPlugins,
@@ -358,7 +361,9 @@ const resourceTypes = {
358361
lastUpdate: resource.last_updated,
359362
name: resource.title
360363
},
361-
options.data ? convertDependenciesMappingForCompatibility(options.data) : convertDependenciesMappingForCompatibility(resource.data)
364+
options.data
365+
? updateDependenciesForMultiViewCompatibility(convertDependenciesMappingForCompatibility(options.data))
366+
: updateDependenciesForMultiViewCompatibility(convertDependenciesMappingForCompatibility(resource.data))
362367
),
363368
setResource(resource),
364369
setResourceId(pk)
@@ -374,7 +379,7 @@ const resourceTypes = {
374379
canDelete: true,
375380
canEdit: true
376381
},
377-
convertDependenciesMappingForCompatibility(options.data)
382+
updateDependenciesForMultiViewCompatibility(convertDependenciesMappingForCompatibility(options.data))
378383
)
379384
] : []),
380385
dashboardLoading(false)

geonode_mapstore_client/client/js/observables/persistence/index.js

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,36 @@
88

99
import { Observable } from 'rxjs';
1010
import { addApi, setApi } from '@mapstore/framework/api/persistence';
11-
import { getMaps, getMapByPk, getResources as gnGetResources } from '@js/api/geonode/v2';
11+
import { getMaps, getMapByPk, getGeoAppByPk, getResources as gnGetResources } from '@js/api/geonode/v2';
1212
import { getFacetItems } from '@js/api/geonode/v2/facets';
13-
import { parseCatalogResource } from '@js/utils/ResourceUtils';
13+
import { parseCatalogResource, ResourceTypes } from '@js/utils/ResourceUtils';
1414
import { getCustomMenuFilters } from '@js/selectors/config';
1515

16-
const getResource = (pk) => {
17-
return Observable.defer(() => {
18-
return getMapByPk(pk)
19-
.then((resource) => {
20-
return {
21-
...resource,
22-
data: {
23-
...resource?.data,
24-
map: {
25-
...resource?.data?.map,
26-
extraParams: {
27-
...resource?.data?.map?.extraParams,
28-
// add the original pk to keep track in future synchronizations
29-
pk: resource?.pk
16+
const getResource = (pk, category) => {
17+
return Observable.defer(() =>
18+
category === ResourceTypes.DASHBOARD
19+
? getGeoAppByPk(pk)
20+
.then((resource) => {
21+
return resource;
22+
})
23+
: getMapByPk(pk)
24+
.then((resource) => {
25+
return {
26+
...resource,
27+
data: {
28+
...resource?.data,
29+
map: {
30+
...resource?.data?.map,
31+
extraParams: {
32+
...resource?.data?.map?.extraParams,
33+
// add the original pk to keep track in future synchronizations
34+
pk: resource?.pk
35+
}
3036
}
3137
}
32-
}
33-
};
34-
});
35-
});
38+
};
39+
})
40+
);
3641
};
3742

3843
const getResources = ({ category, options, query }) => {

0 commit comments

Comments
 (0)