@esri/hub-common 14.22.0 → 14.23.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/esm/core/getRelativeWorkspaceUrl.js +5 -1
- package/dist/esm/core/getRelativeWorkspaceUrl.js.map +1 -1
- package/dist/esm/groups/HubGroups.js +2 -7
- package/dist/esm/groups/HubGroups.js.map +1 -1
- package/dist/esm/groups/_internal/computeLinks.js +24 -0
- package/dist/esm/groups/_internal/computeLinks.js.map +1 -0
- package/dist/esm/groups/_internal/computeProps.js +2 -0
- package/dist/esm/groups/_internal/computeProps.js.map +1 -1
- package/dist/esm/initiatives/HubInitiatives.js +7 -12
- package/dist/esm/initiatives/HubInitiatives.js.map +1 -1
- package/dist/esm/initiatives/_internal/computeLinks.js +28 -0
- package/dist/esm/initiatives/_internal/computeLinks.js.map +1 -0
- package/dist/esm/initiatives/_internal/computeProps.js +2 -0
- package/dist/esm/initiatives/_internal/computeProps.js.map +1 -1
- package/dist/esm/projects/_internal/computeLinks.js +26 -0
- package/dist/esm/projects/_internal/computeLinks.js.map +1 -0
- package/dist/esm/projects/_internal/computeProps.js +2 -0
- package/dist/esm/projects/_internal/computeProps.js.map +1 -1
- package/dist/esm/projects/fetch.js +2 -10
- package/dist/esm/projects/fetch.js.map +1 -1
- package/dist/node/core/getRelativeWorkspaceUrl.js +5 -1
- package/dist/node/core/getRelativeWorkspaceUrl.js.map +1 -1
- package/dist/node/groups/HubGroups.js +4 -9
- package/dist/node/groups/HubGroups.js.map +1 -1
- package/dist/node/groups/_internal/computeLinks.js +28 -0
- package/dist/node/groups/_internal/computeLinks.js.map +1 -0
- package/dist/node/groups/_internal/computeProps.js +2 -0
- package/dist/node/groups/_internal/computeProps.js.map +1 -1
- package/dist/node/initiatives/HubInitiatives.js +6 -11
- package/dist/node/initiatives/HubInitiatives.js.map +1 -1
- package/dist/node/initiatives/_internal/computeLinks.js +32 -0
- package/dist/node/initiatives/_internal/computeLinks.js.map +1 -0
- package/dist/node/initiatives/_internal/computeProps.js +2 -0
- package/dist/node/initiatives/_internal/computeProps.js.map +1 -1
- package/dist/node/projects/_internal/computeLinks.js +30 -0
- package/dist/node/projects/_internal/computeLinks.js.map +1 -0
- package/dist/node/projects/_internal/computeProps.js +2 -0
- package/dist/node/projects/_internal/computeProps.js.map +1 -1
- package/dist/node/projects/fetch.js +2 -10
- package/dist/node/projects/fetch.js.map +1 -1
- package/dist/types/core/types/IHubEntityBase.d.ts +33 -29
- package/dist/types/groups/_internal/computeLinks.d.ts +11 -0
- package/dist/types/initiatives/_internal/computeLinks.d.ts +11 -0
- package/dist/types/projects/_internal/computeLinks.d.ts +11 -0
- package/package.json +1 -1
|
@@ -16,7 +16,11 @@ export const getRelativeWorkspaceUrl = (type, identifier) => {
|
|
|
16
16
|
* 2. handle entity variation
|
|
17
17
|
*/
|
|
18
18
|
if (isValidEntityType(entityType)) {
|
|
19
|
-
|
|
19
|
+
let typeSegment = entityType;
|
|
20
|
+
if (typeSegment !== "content") {
|
|
21
|
+
typeSegment = `${typeSegment}s`;
|
|
22
|
+
}
|
|
23
|
+
url = `/workspace/${typeSegment}/${identifier}`;
|
|
20
24
|
}
|
|
21
25
|
return url;
|
|
22
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRelativeWorkspaceUrl.js","sourceRoot":"","sources":["../../../src/core/getRelativeWorkspaceUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,IAAY,EACZ,UAAkB,EACV,EAAE;IACV,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAe,CAAC,CAAC;IAE5D;;;;OAIG;IACH,IAAI,iBAAiB,CAAC,UAAU,CAAC,EAAE;QACjC,GAAG,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"getRelativeWorkspaceUrl.js","sourceRoot":"","sources":["../../../src/core/getRelativeWorkspaceUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,IAAY,EACZ,UAAkB,EACV,EAAE;IACV,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAe,CAAC,CAAC;IAE5D;;;;OAIG;IACH,IAAI,iBAAiB,CAAC,UAAU,CAAC,EAAE;QACjC,IAAI,WAAW,GAAG,UAAoB,CAAC;QACvC,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,WAAW,GAAG,GAAG,WAAW,GAAG,CAAC;SACjC;QACD,GAAG,GAAG,cAAc,WAAW,IAAI,UAAU,EAAE,CAAC;KACjD;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { fetchGroupEnrichments } from "./_internal/enrichments";
|
|
2
2
|
import { getProp, setProp } from "../objects";
|
|
3
|
-
import { getGroupThumbnailUrl } from "../search/utils";
|
|
4
3
|
import { parseInclude } from "../search/_internal/parseInclude";
|
|
5
|
-
import { getGroupHomeUrl } from "../urls";
|
|
6
4
|
import { unique } from "../util";
|
|
7
5
|
import { mapBy } from "../utils";
|
|
8
6
|
import { getGroup, removeGroup, createGroup, updateGroup, } from "@esri/arcgis-rest-portal";
|
|
9
7
|
import { DEFAULT_GROUP } from "./defaults";
|
|
10
8
|
import { convertHubGroupToGroup } from "./_internal/convertHubGroupToGroup";
|
|
11
9
|
import { convertGroupToHubGroup } from "./_internal/convertGroupToHubGroup";
|
|
12
|
-
import {
|
|
10
|
+
import { computeLinks } from "./_internal/computeLinks";
|
|
13
11
|
/**
|
|
14
12
|
* Enrich a generic search result
|
|
15
13
|
* @param group
|
|
@@ -60,10 +58,7 @@ export async function enrichGroupSearchResult(group, include, requestOptions) {
|
|
|
60
58
|
result[spec.prop] = getProp(enriched, spec.path);
|
|
61
59
|
});
|
|
62
60
|
// Handle links
|
|
63
|
-
result.links
|
|
64
|
-
result.links.self = getGroupHomeUrl(result.id, requestOptions);
|
|
65
|
-
result.links.siteRelative = `/teams/${result.id}`;
|
|
66
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl("Group", result.id);
|
|
61
|
+
result.links = computeLinks(group, requestOptions);
|
|
67
62
|
return result;
|
|
68
63
|
}
|
|
69
64
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubGroups.js","sourceRoot":"","sources":["../../../src/groups/HubGroups.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"HubGroups.js","sourceRoot":"","sources":["../../../src/groups/HubGroups.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EACL,QAAQ,EACR,WAAW,EACX,WAAW,EACX,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAa,EACb,OAAiB,EACjB,cAAkC;IAElC,6BAA6B;IAC7B,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,KAAK,CAAC,KAAK;QACjB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,WAAW;QAC3C,WAAW,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACpC,iBAAiB,EAAE,eAAe;QAClC,WAAW,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,iBAAiB,EAAE,gBAAgB;QACnC,MAAM,EAAE,MAAM;QACd,KAAK,EAAE;YACL,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,iBAAiB;YAC/B,SAAS,EAAE,iBAAiB;SAC7B;KACF,CAAC;IAEF,8DAA8D;IAC9D,mCAAmC;IACnC,MAAM,CAAC,cAAc,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,QAAQ,CACzD,mBAAmB,CACpB,CAAC;IACF,MAAM,CAAC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IACjD,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAEvC,mBAAmB;IACnB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,iBAAiB;IACjB,OAAO,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnD,qDAAqD;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,+CAA+C;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,wBAAwB;IACxB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,WAAW,CAAC,MAAM,EAAE;QACtB,QAAQ,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;KAC5E;IAED,yCAAyC;IACzC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,eAAe;IACf,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,YAAgC,EAChC,cAAmC;IAEnC,wCAAwC;IACxC,MAAM,QAAQ,GAAG,gCAAK,aAAa,GAAK,YAAY,CAAe,CAAC;IACpE,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG;QACX,KAAK;QACL,cAAc,EAAE,cAAc,CAAC,cAAc;KAC9C,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,cAAmC;IAEnC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACzD,OAAO,sBAAsB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAmB,EACnB,cAA+B;IAE/B,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG;QACX,KAAK;QACL,cAAc,EAAE,cAAc,CAAC,cAAc;KAC9C,CAAC;IACF,4CAA4C;IAC5C,iEAAiE;IACjE,IAAI,KAAK,CAAC,iBAAiB,EAAE;QAC3B,OAAO,CAAC,yBAAyB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;KAChD;IACD,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAU,EACV,cAAmC;IAEnC,MAAM,EAAE,mCAAQ,cAAc,GAAK,EAAE,EAAE,EAAE,CAAE,CAAC;IAC5C,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { getRelativeWorkspaceUrl } from "../../core/getRelativeWorkspaceUrl";
|
|
2
|
+
import { getGroupHomeUrl } from "../../urls/getGroupHomeUrl";
|
|
3
|
+
import { getGroupThumbnailUrl } from "../../search/utils";
|
|
4
|
+
/**
|
|
5
|
+
* Compute the links that get appended to a Hub Group
|
|
6
|
+
* search result and entity
|
|
7
|
+
*
|
|
8
|
+
* @param group
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
*/
|
|
11
|
+
export function computeLinks(group, requestOptions) {
|
|
12
|
+
let token;
|
|
13
|
+
if (requestOptions.authentication) {
|
|
14
|
+
const session = requestOptions.authentication;
|
|
15
|
+
token = session.token;
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
self: getGroupHomeUrl(group.id, requestOptions),
|
|
19
|
+
siteRelative: `/teams/${group.id}`,
|
|
20
|
+
workspaceRelative: getRelativeWorkspaceUrl("Group", group.id),
|
|
21
|
+
thumbnail: getGroupThumbnailUrl(requestOptions.portal, group, token),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,UAAU,KAAK,CAAC,EAAE,EAAE;QAClC,iBAAiB,EAAE,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7D,SAAS,EAAE,oBAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isDiscussable } from "../../discussions";
|
|
2
2
|
import { getGroupThumbnailUrl } from "../../search/utils";
|
|
3
|
+
import { computeLinks } from "./computeLinks";
|
|
3
4
|
/**
|
|
4
5
|
* Given a model and a group, set various computed properties that can't be directly mapped
|
|
5
6
|
* @private
|
|
@@ -39,6 +40,7 @@ export function computeProps(group, hubGroup, requestOptions) {
|
|
|
39
40
|
((_b = group.userMembership) === null || _b === void 0 ? void 0 : _b.memberType) === "owner" ||
|
|
40
41
|
((_c = group.userMembership) === null || _c === void 0 ? void 0 : _c.memberType) === "admin";
|
|
41
42
|
hubGroup.canDelete = hubGroup.canEdit;
|
|
43
|
+
hubGroup.links = computeLinks(group, requestOptions);
|
|
42
44
|
// cast b/c this takes a partial but returns a full group
|
|
43
45
|
return hubGroup;
|
|
44
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeProps.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeProps.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,QAA4B,EAC5B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,QAAQ,CAAC,YAAY,GAAG,oBAAoB,CAC1C,cAAc,CAAC,MAAM,EACrB,KAAK,EACL,KAAK,CACN,CAAC;IAEF,eAAe;IACf,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,QAAQ,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC7C,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChD,QAAQ,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAE9C,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;IAExB,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAE9C,uDAAuD;IACvD,oEAAoE;IACpE,QAAQ,CAAC,cAAc,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,QAAQ,CAC3D,mBAAmB,CACpB,CAAC;IAEF,QAAQ,CAAC,UAAU,SAAG,KAAK,CAAC,cAAc,0CAAE,UAAU,CAAC;IAEvD,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACrC,IAAI,KAAK,CAAC,gBAAgB,KAAK,KAAK,EAAE;QACpC,QAAQ,CAAC,gBAAgB,GAAG,cAAc,CAAC;KAC5C;IACD,IAAI,KAAK,CAAC,gBAAgB,KAAK,eAAe,EAAE;QAC9C,QAAQ,CAAC,gBAAgB,GAAG,eAAe,CAAC;KAC7C;IAED,QAAQ,CAAC,OAAO;QACd,OAAA,KAAK,CAAC,cAAc,0CAAE,UAAU,MAAK,OAAO;YAC5C,OAAA,KAAK,CAAC,cAAc,0CAAE,UAAU,MAAK,OAAO,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC;IAEtC,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAErD,yDAAyD;IACzD,OAAO,QAAqB,CAAC;AAC/B,CAAC"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
// Note - we separate these imports so we can cleanly spy on things in tests
|
|
2
2
|
import { createModel, fetchModelFromItem, getModel, updateModel, } from "../models";
|
|
3
3
|
import { constructSlug, getItemBySlug, getUniqueSlug, setSlugKeyword, } from "../items/slugs";
|
|
4
|
-
import { isGuid, cloneObject,
|
|
4
|
+
import { isGuid, cloneObject, unique, mapBy, getProp, getFamily, setDiscussableKeyword, } from "../index";
|
|
5
5
|
import { removeItem, getItem, } from "@esri/arcgis-rest-portal";
|
|
6
6
|
import { PropertyMapper } from "../core/_internal/PropertyMapper";
|
|
7
7
|
import { parseInclude } from "../search/_internal/parseInclude";
|
|
8
8
|
import { fetchItemEnrichments } from "../items/_enrichments";
|
|
9
|
-
import { getHubRelativeUrl } from "../content/_internal/internalContentUtils";
|
|
10
9
|
import { DEFAULT_INITIATIVE, DEFAULT_INITIATIVE_MODEL } from "./defaults";
|
|
11
10
|
import { getPropertyMap } from "./_internal/getPropertyMap";
|
|
12
11
|
import { computeProps } from "./_internal/computeProps";
|
|
13
12
|
import { applyInitiativeMigrations } from "./_internal/applyInitiativeMigrations";
|
|
14
|
-
import { getRelativeWorkspaceUrl } from "../core/getRelativeWorkspaceUrl";
|
|
15
13
|
import { combineQueries } from "../search/_internal/combineQueries";
|
|
16
14
|
import { portalSearchItemsAsItems } from "../search/_internal/portalSearchItems";
|
|
17
15
|
import { getTypeWithKeywordQuery } from "../associations/internal/getTypeWithKeywordQuery";
|
|
18
16
|
import { negateGroupPredicates } from "../search/_internal/negateGroupPredicates";
|
|
17
|
+
import { computeLinks } from "./_internal/computeLinks";
|
|
18
|
+
import { getHubRelativeUrl } from "../content/_internal/internalContentUtils";
|
|
19
19
|
/**
|
|
20
20
|
* @private
|
|
21
21
|
* Create a new Hub Initiative item
|
|
@@ -174,15 +174,10 @@ export async function enrichInitiativeSearchResult(item, include, requestOptions
|
|
|
174
174
|
});
|
|
175
175
|
// Handle links
|
|
176
176
|
// TODO: Link handling should be an enrichment
|
|
177
|
-
result.links
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
// route using the id. Once the route is in place we can
|
|
182
|
-
// un-comment this
|
|
183
|
-
// const identifier = getItemIdentifier(item);
|
|
184
|
-
result.links.siteRelative = getHubRelativeUrl(result.type, identifier, item.typeKeywords);
|
|
185
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl(result.type, identifier);
|
|
177
|
+
result.links = Object.assign(Object.assign({}, computeLinks(item, requestOptions)), {
|
|
178
|
+
// TODO: remove once sites are separated from initiatives and
|
|
179
|
+
// the initiatives view route is released
|
|
180
|
+
siteRelative: getHubRelativeUrl(result.type, result.id) });
|
|
186
181
|
return result;
|
|
187
182
|
}
|
|
188
183
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubInitiatives.js","sourceRoot":"","sources":["../../../src/initiatives/HubInitiatives.ts"],"names":[],"mappings":"AAEA,4EAA4E;AAC5E,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,QAAQ,EACR,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,MAAM,EACN,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"HubInitiatives.js","sourceRoot":"","sources":["../../../src/initiatives/HubInitiatives.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { getItemHomeUrl } from "../../urls";
|
|
2
|
+
import { getItemIdentifier } from "../../items";
|
|
3
|
+
import { getRelativeWorkspaceUrl } from "../../core/getRelativeWorkspaceUrl";
|
|
4
|
+
import { getItemThumbnailUrl } from "../../resources/get-item-thumbnail-url";
|
|
5
|
+
/**
|
|
6
|
+
* Compute the links that get appended to a Hub Initiative
|
|
7
|
+
* search result and entity
|
|
8
|
+
*
|
|
9
|
+
* @param item
|
|
10
|
+
* @param requestOptions
|
|
11
|
+
*/
|
|
12
|
+
export function computeLinks(item, requestOptions) {
|
|
13
|
+
let token;
|
|
14
|
+
if (requestOptions.authentication) {
|
|
15
|
+
const session = requestOptions.authentication;
|
|
16
|
+
token = session.token;
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
self: getItemHomeUrl(item.id, requestOptions),
|
|
20
|
+
// TODO: once the initiative view is moved to initiatives/:id,
|
|
21
|
+
// update and leverage the getHubRelativeUrl util to construct
|
|
22
|
+
// this url. For now, we hard-code to the initiatives2/:id route
|
|
23
|
+
siteRelative: `/initiatives2/${getItemIdentifier(item)}`,
|
|
24
|
+
workspaceRelative: getRelativeWorkspaceUrl(item.type, getItemIdentifier(item)),
|
|
25
|
+
thumbnail: getItemThumbnailUrl(item, requestOptions, token),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeLinks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAW,EACX,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC;QAC7C,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,YAAY,EAAE,iBAAiB,iBAAiB,CAAC,IAAI,CAAC,EAAE;QACxD,iBAAiB,EAAE,uBAAuB,CACxC,IAAI,CAAC,IAAI,EACT,iBAAiB,CAAC,IAAI,CAAC,CACxB;QACD,SAAS,EAAE,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC;KAC5D,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { getItemThumbnailUrl } from "../../resources";
|
|
|
2
2
|
import { isDiscussable } from "../../discussions";
|
|
3
3
|
import { processEntityFeatures } from "../../permissions/_internal/processEntityFeatures";
|
|
4
4
|
import { InitiativeDefaultFeatures } from "./InitiativeBusinessRules";
|
|
5
|
+
import { computeLinks } from "./computeLinks";
|
|
5
6
|
/**
|
|
6
7
|
* Given a model and an Initiative, set various computed properties that can't be directly mapped
|
|
7
8
|
* @private
|
|
@@ -29,6 +30,7 @@ export function computeProps(model, initiative, requestOptions) {
|
|
|
29
30
|
* Features that can be disabled by the entity owner
|
|
30
31
|
*/
|
|
31
32
|
initiative.features = processEntityFeatures(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.features) || {}, InitiativeDefaultFeatures);
|
|
33
|
+
initiative.links = computeLinks(model.item, requestOptions);
|
|
32
34
|
// cast b/c this takes a partial but returns a full object
|
|
33
35
|
return initiative;
|
|
34
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeProps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAKtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeProps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAKtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,UAAmC,EACnC,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,UAAU,CAAC,YAAY,GAAG,mBAAmB,CAC3C,KAAK,CAAC,IAAI,EACV,cAAc,EACd,KAAK,CACN,CAAC;IAEF,eAAe;IACf,UAAU,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtD,UAAU,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC9C,UAAU,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,UAAU,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC/C,UAAU,CAAC,aAAa,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IAErD;;OAEG;IACH,UAAU,CAAC,QAAQ,GAAG,qBAAqB,CACzC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,yBAAyB,CAC1B,CAAC;IAEF,UAAU,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAE5D,0DAA0D;IAC1D,OAAO,UAA4B,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { getItemHomeUrl } from "../../urls";
|
|
2
|
+
import { getItemIdentifier } from "../../items";
|
|
3
|
+
import { getHubRelativeUrl } from "../../content/_internal/internalContentUtils";
|
|
4
|
+
import { getRelativeWorkspaceUrl } from "../../core/getRelativeWorkspaceUrl";
|
|
5
|
+
import { getItemThumbnailUrl } from "../../resources/get-item-thumbnail-url";
|
|
6
|
+
/**
|
|
7
|
+
* Compute the links that get appended to a Hub Project
|
|
8
|
+
* search result and entity
|
|
9
|
+
*
|
|
10
|
+
* @param item
|
|
11
|
+
* @param requestOptions
|
|
12
|
+
*/
|
|
13
|
+
export function computeLinks(item, requestOptions) {
|
|
14
|
+
let token;
|
|
15
|
+
if (requestOptions.authentication) {
|
|
16
|
+
const session = requestOptions.authentication;
|
|
17
|
+
token = session.token;
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
self: getItemHomeUrl(item.id, requestOptions),
|
|
21
|
+
siteRelative: getHubRelativeUrl(item.type, getItemIdentifier(item)),
|
|
22
|
+
workspaceRelative: getRelativeWorkspaceUrl(item.type, getItemIdentifier(item)),
|
|
23
|
+
thumbnail: getItemThumbnailUrl(item, requestOptions, token),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeLinks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAW,EACX,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC;QAC7C,YAAY,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACnE,iBAAiB,EAAE,uBAAuB,CACxC,IAAI,CAAC,IAAI,EACT,iBAAiB,CAAC,IAAI,CAAC,CACxB;QACD,SAAS,EAAE,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC;KAC5D,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { getItemThumbnailUrl } from "../../resources";
|
|
|
2
2
|
import { isDiscussable } from "../../discussions";
|
|
3
3
|
import { processEntityFeatures } from "../../permissions/_internal/processEntityFeatures";
|
|
4
4
|
import { ProjectDefaultFeatures } from "./ProjectBusinessRules";
|
|
5
|
+
import { computeLinks } from "./computeLinks";
|
|
5
6
|
/**
|
|
6
7
|
* Given a model and a project, set various computed properties that can't be directly mapped
|
|
7
8
|
* @private
|
|
@@ -29,6 +30,7 @@ export function computeProps(model, project, requestOptions) {
|
|
|
29
30
|
* Features that can be disabled by the entity owner
|
|
30
31
|
*/
|
|
31
32
|
project.features = processEntityFeatures(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.features) || {}, ProjectDefaultFeatures);
|
|
33
|
+
project.links = computeLinks(model.item, requestOptions);
|
|
32
34
|
// cast b/c this takes a partial but returns a full project
|
|
33
35
|
return project;
|
|
34
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAa,EACb,OAA6B,EAC7B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9E,eAAe;IACf,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC3C,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC5C,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAE/C;;OAEG;IACH,OAAO,CAAC,QAAQ,GAAG,qBAAqB,CACtC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,sBAAsB,CACvB,CAAC;IAEF,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAEzD,2DAA2D;IAC3D,OAAO,OAAsB,CAAC;AAChC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { getItem } from "@esri/arcgis-rest-portal";
|
|
2
2
|
import { getFamily } from "../content/get-family";
|
|
3
|
-
import { getHubRelativeUrl } from "../content/_internal/internalContentUtils";
|
|
4
3
|
import { PropertyMapper } from "../core/_internal/PropertyMapper";
|
|
5
4
|
import { getItemBySlug } from "../items/slugs";
|
|
6
5
|
import { fetchItemEnrichments } from "../items/_enrichments";
|
|
@@ -11,12 +10,9 @@ import { computeProps } from "./_internal/computeProps";
|
|
|
11
10
|
import { getPropertyMap } from "./_internal/getPropertyMap";
|
|
12
11
|
import { unique } from "../util";
|
|
13
12
|
import { getProp } from "../objects/get-prop";
|
|
14
|
-
import { getItemThumbnailUrl } from "../resources/get-item-thumbnail-url";
|
|
15
|
-
import { getItemHomeUrl } from "../urls/get-item-home-url";
|
|
16
|
-
import { getItemIdentifier } from "../items";
|
|
17
|
-
import { getRelativeWorkspaceUrl } from "../core/getRelativeWorkspaceUrl";
|
|
18
13
|
import { listAssociations } from "../associations";
|
|
19
14
|
import { getTypeByIdsQuery } from "../associations/internal/getTypeByIdsQuery";
|
|
15
|
+
import { computeLinks } from "./_internal/computeLinks";
|
|
20
16
|
/**
|
|
21
17
|
* @private
|
|
22
18
|
* Get a Hub Project by id or slug
|
|
@@ -105,11 +101,7 @@ export async function enrichProjectSearchResult(item, include, requestOptions) {
|
|
|
105
101
|
});
|
|
106
102
|
// Handle links
|
|
107
103
|
// TODO: Link handling should be an enrichment
|
|
108
|
-
result.links
|
|
109
|
-
result.links.self = getItemHomeUrl(result.id, requestOptions);
|
|
110
|
-
const identifier = getItemIdentifier(item);
|
|
111
|
-
result.links.siteRelative = getHubRelativeUrl(result.type, identifier, item.typeKeywords);
|
|
112
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl(result.type, identifier);
|
|
104
|
+
result.links = computeLinks(item, requestOptions);
|
|
113
105
|
return result;
|
|
114
106
|
}
|
|
115
107
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/projects/fetch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAS,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/projects/fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,11 @@ exports.getRelativeWorkspaceUrl = (type, identifier) => {
|
|
|
19
19
|
* 2. handle entity variation
|
|
20
20
|
*/
|
|
21
21
|
if (isValidEntityType_1.isValidEntityType(entityType)) {
|
|
22
|
-
|
|
22
|
+
let typeSegment = entityType;
|
|
23
|
+
if (typeSegment !== "content") {
|
|
24
|
+
typeSegment = `${typeSegment}s`;
|
|
25
|
+
}
|
|
26
|
+
url = `/workspace/${typeSegment}/${identifier}`;
|
|
23
27
|
}
|
|
24
28
|
return url;
|
|
25
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRelativeWorkspaceUrl.js","sourceRoot":"","sources":["../../../src/core/getRelativeWorkspaceUrl.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AACxD,2DAAwD;AAGxD;;;;;;GAMG;AACU,QAAA,uBAAuB,GAAG,CACrC,IAAY,EACZ,UAAkB,EACV,EAAE;IACV,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,MAAM,UAAU,GAAG,qCAAiB,CAAC,EAAE,IAAI,EAAe,CAAC,CAAC;IAE5D;;;;OAIG;IACH,IAAI,qCAAiB,CAAC,UAAU,CAAC,EAAE;QACjC,GAAG,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"getRelativeWorkspaceUrl.js","sourceRoot":"","sources":["../../../src/core/getRelativeWorkspaceUrl.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AACxD,2DAAwD;AAGxD;;;;;;GAMG;AACU,QAAA,uBAAuB,GAAG,CACrC,IAAY,EACZ,UAAkB,EACV,EAAE;IACV,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,MAAM,UAAU,GAAG,qCAAiB,CAAC,EAAE,IAAI,EAAe,CAAC,CAAC;IAE5D;;;;OAIG;IACH,IAAI,qCAAiB,CAAC,UAAU,CAAC,EAAE;QACjC,IAAI,WAAW,GAAG,UAAoB,CAAC;QACvC,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,WAAW,GAAG,GAAG,WAAW,GAAG,CAAC;SACjC;QACD,GAAG,GAAG,cAAc,WAAW,IAAI,UAAU,EAAE,CAAC;KACjD;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
|
@@ -3,16 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.deleteHubGroup = exports.updateHubGroup = exports.fetchHubGroup = exports.createHubGroup = exports.enrichGroupSearchResult = void 0;
|
|
4
4
|
const enrichments_1 = require("./_internal/enrichments");
|
|
5
5
|
const objects_1 = require("../objects");
|
|
6
|
-
const utils_1 = require("../search/utils");
|
|
7
6
|
const parseInclude_1 = require("../search/_internal/parseInclude");
|
|
8
|
-
const urls_1 = require("../urls");
|
|
9
7
|
const util_1 = require("../util");
|
|
10
|
-
const
|
|
8
|
+
const utils_1 = require("../utils");
|
|
11
9
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
12
10
|
const defaults_1 = require("./defaults");
|
|
13
11
|
const convertHubGroupToGroup_1 = require("./_internal/convertHubGroupToGroup");
|
|
14
12
|
const convertGroupToHubGroup_1 = require("./_internal/convertGroupToHubGroup");
|
|
15
|
-
const
|
|
13
|
+
const computeLinks_1 = require("./_internal/computeLinks");
|
|
16
14
|
/**
|
|
17
15
|
* Enrich a generic search result
|
|
18
16
|
* @param group
|
|
@@ -52,7 +50,7 @@ async function enrichGroupSearchResult(group, include, requestOptions) {
|
|
|
52
50
|
// Parse the includes into a valid set of enrichments
|
|
53
51
|
const specs = include.map(parseInclude_1.parseInclude);
|
|
54
52
|
// Extract out the low-level enrichments needed
|
|
55
|
-
const enrichments =
|
|
53
|
+
const enrichments = utils_1.mapBy("enrichment", specs).filter(util_1.unique);
|
|
56
54
|
// fetch the enrichments
|
|
57
55
|
let enriched = {};
|
|
58
56
|
if (enrichments.length) {
|
|
@@ -63,10 +61,7 @@ async function enrichGroupSearchResult(group, include, requestOptions) {
|
|
|
63
61
|
result[spec.prop] = objects_1.getProp(enriched, spec.path);
|
|
64
62
|
});
|
|
65
63
|
// Handle links
|
|
66
|
-
result.links
|
|
67
|
-
result.links.self = urls_1.getGroupHomeUrl(result.id, requestOptions);
|
|
68
|
-
result.links.siteRelative = `/teams/${result.id}`;
|
|
69
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl("Group", result.id);
|
|
64
|
+
result.links = computeLinks_1.computeLinks(group, requestOptions);
|
|
70
65
|
return result;
|
|
71
66
|
}
|
|
72
67
|
exports.enrichGroupSearchResult = enrichGroupSearchResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubGroups.js","sourceRoot":"","sources":["../../../src/groups/HubGroups.ts"],"names":[],"mappings":";;;AACA,yDAAgE;AAChE,wCAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"HubGroups.js","sourceRoot":"","sources":["../../../src/groups/HubGroups.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.computeLinks = void 0;
|
|
4
|
+
const getRelativeWorkspaceUrl_1 = require("../../core/getRelativeWorkspaceUrl");
|
|
5
|
+
const getGroupHomeUrl_1 = require("../../urls/getGroupHomeUrl");
|
|
6
|
+
const utils_1 = require("../../search/utils");
|
|
7
|
+
/**
|
|
8
|
+
* Compute the links that get appended to a Hub Group
|
|
9
|
+
* search result and entity
|
|
10
|
+
*
|
|
11
|
+
* @param group
|
|
12
|
+
* @param requestOptions
|
|
13
|
+
*/
|
|
14
|
+
function computeLinks(group, requestOptions) {
|
|
15
|
+
let token;
|
|
16
|
+
if (requestOptions.authentication) {
|
|
17
|
+
const session = requestOptions.authentication;
|
|
18
|
+
token = session.token;
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
self: getGroupHomeUrl_1.getGroupHomeUrl(group.id, requestOptions),
|
|
22
|
+
siteRelative: `/teams/${group.id}`,
|
|
23
|
+
workspaceRelative: getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl("Group", group.id),
|
|
24
|
+
thumbnail: utils_1.getGroupThumbnailUrl(requestOptions.portal, group, token),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
exports.computeLinks = computeLinks;
|
|
28
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeLinks.ts"],"names":[],"mappings":";;;AAIA,gFAA6E;AAC7E,gEAA6D;AAC7D,8CAA0D;AAE1D;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,iCAAe,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;QAC/C,YAAY,EAAE,UAAU,KAAK,CAAC,EAAE,EAAE;QAClC,iBAAiB,EAAE,iDAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7D,SAAS,EAAE,4BAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC;AAhBD,oCAgBC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.computeProps = void 0;
|
|
4
4
|
const discussions_1 = require("../../discussions");
|
|
5
5
|
const utils_1 = require("../../search/utils");
|
|
6
|
+
const computeLinks_1 = require("./computeLinks");
|
|
6
7
|
/**
|
|
7
8
|
* Given a model and a group, set various computed properties that can't be directly mapped
|
|
8
9
|
* @private
|
|
@@ -42,6 +43,7 @@ function computeProps(group, hubGroup, requestOptions) {
|
|
|
42
43
|
((_b = group.userMembership) === null || _b === void 0 ? void 0 : _b.memberType) === "owner" ||
|
|
43
44
|
((_c = group.userMembership) === null || _c === void 0 ? void 0 : _c.memberType) === "admin";
|
|
44
45
|
hubGroup.canDelete = hubGroup.canEdit;
|
|
46
|
+
hubGroup.links = computeLinks_1.computeLinks(group, requestOptions);
|
|
45
47
|
// cast b/c this takes a partial but returns a full group
|
|
46
48
|
return hubGroup;
|
|
47
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeProps.ts"],"names":[],"mappings":";;;AAKA,mDAAkD;AAClD,8CAA0D;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/groups/_internal/computeProps.ts"],"names":[],"mappings":";;;AAKA,mDAAkD;AAClD,8CAA0D;AAC1D,iDAA8C;AAE9C;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,QAA4B,EAC5B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,QAAQ,CAAC,YAAY,GAAG,4BAAoB,CAC1C,cAAc,CAAC,MAAM,EACrB,KAAK,EACL,KAAK,CACN,CAAC;IAEF,eAAe;IACf,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,QAAQ,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC7C,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChD,QAAQ,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAE9C,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;IAExB,QAAQ,CAAC,aAAa,GAAG,2BAAa,CAAC,KAAK,CAAC,CAAC;IAE9C,uDAAuD;IACvD,oEAAoE;IACpE,QAAQ,CAAC,cAAc,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,QAAQ,CAC3D,mBAAmB,CACpB,CAAC;IAEF,QAAQ,CAAC,UAAU,SAAG,KAAK,CAAC,cAAc,0CAAE,UAAU,CAAC;IAEvD,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACrC,IAAI,KAAK,CAAC,gBAAgB,KAAK,KAAK,EAAE;QACpC,QAAQ,CAAC,gBAAgB,GAAG,cAAc,CAAC;KAC5C;IACD,IAAI,KAAK,CAAC,gBAAgB,KAAK,eAAe,EAAE;QAC9C,QAAQ,CAAC,gBAAgB,GAAG,eAAe,CAAC;KAC7C;IAED,QAAQ,CAAC,OAAO;QACd,OAAA,KAAK,CAAC,cAAc,0CAAE,UAAU,MAAK,OAAO;YAC5C,OAAA,KAAK,CAAC,cAAc,0CAAE,UAAU,MAAK,OAAO,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC;IAEtC,QAAQ,CAAC,KAAK,GAAG,2BAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAErD,yDAAyD;IACzD,OAAO,QAAqB,CAAC;AAC/B,CAAC;AApDD,oCAoDC"}
|
|
@@ -9,16 +9,16 @@ const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
|
9
9
|
const PropertyMapper_1 = require("../core/_internal/PropertyMapper");
|
|
10
10
|
const parseInclude_1 = require("../search/_internal/parseInclude");
|
|
11
11
|
const _enrichments_1 = require("../items/_enrichments");
|
|
12
|
-
const internalContentUtils_1 = require("../content/_internal/internalContentUtils");
|
|
13
12
|
const defaults_1 = require("./defaults");
|
|
14
13
|
const getPropertyMap_1 = require("./_internal/getPropertyMap");
|
|
15
14
|
const computeProps_1 = require("./_internal/computeProps");
|
|
16
15
|
const applyInitiativeMigrations_1 = require("./_internal/applyInitiativeMigrations");
|
|
17
|
-
const getRelativeWorkspaceUrl_1 = require("../core/getRelativeWorkspaceUrl");
|
|
18
16
|
const combineQueries_1 = require("../search/_internal/combineQueries");
|
|
19
17
|
const portalSearchItems_1 = require("../search/_internal/portalSearchItems");
|
|
20
18
|
const getTypeWithKeywordQuery_1 = require("../associations/internal/getTypeWithKeywordQuery");
|
|
21
19
|
const negateGroupPredicates_1 = require("../search/_internal/negateGroupPredicates");
|
|
20
|
+
const computeLinks_1 = require("./_internal/computeLinks");
|
|
21
|
+
const internalContentUtils_1 = require("../content/_internal/internalContentUtils");
|
|
22
22
|
/**
|
|
23
23
|
* @private
|
|
24
24
|
* Create a new Hub Initiative item
|
|
@@ -182,15 +182,10 @@ async function enrichInitiativeSearchResult(item, include, requestOptions) {
|
|
|
182
182
|
});
|
|
183
183
|
// Handle links
|
|
184
184
|
// TODO: Link handling should be an enrichment
|
|
185
|
-
result.links
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
// route using the id. Once the route is in place we can
|
|
190
|
-
// un-comment this
|
|
191
|
-
// const identifier = getItemIdentifier(item);
|
|
192
|
-
result.links.siteRelative = internalContentUtils_1.getHubRelativeUrl(result.type, identifier, item.typeKeywords);
|
|
193
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl(result.type, identifier);
|
|
185
|
+
result.links = Object.assign(Object.assign({}, computeLinks_1.computeLinks(item, requestOptions)), {
|
|
186
|
+
// TODO: remove once sites are separated from initiatives and
|
|
187
|
+
// the initiatives view route is released
|
|
188
|
+
siteRelative: internalContentUtils_1.getHubRelativeUrl(result.type, result.id) });
|
|
194
189
|
return result;
|
|
195
190
|
}
|
|
196
191
|
exports.enrichInitiativeSearchResult = enrichInitiativeSearchResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubInitiatives.js","sourceRoot":"","sources":["../../../src/initiatives/HubInitiatives.ts"],"names":[],"mappings":";;;AAEA,4EAA4E;AAC5E,sCAKmB;AACnB,0CAKwB;AAExB,
|
|
1
|
+
{"version":3,"file":"HubInitiatives.js","sourceRoot":"","sources":["../../../src/initiatives/HubInitiatives.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.computeLinks = void 0;
|
|
4
|
+
const urls_1 = require("../../urls");
|
|
5
|
+
const items_1 = require("../../items");
|
|
6
|
+
const getRelativeWorkspaceUrl_1 = require("../../core/getRelativeWorkspaceUrl");
|
|
7
|
+
const get_item_thumbnail_url_1 = require("../../resources/get-item-thumbnail-url");
|
|
8
|
+
/**
|
|
9
|
+
* Compute the links that get appended to a Hub Initiative
|
|
10
|
+
* search result and entity
|
|
11
|
+
*
|
|
12
|
+
* @param item
|
|
13
|
+
* @param requestOptions
|
|
14
|
+
*/
|
|
15
|
+
function computeLinks(item, requestOptions) {
|
|
16
|
+
let token;
|
|
17
|
+
if (requestOptions.authentication) {
|
|
18
|
+
const session = requestOptions.authentication;
|
|
19
|
+
token = session.token;
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
self: urls_1.getItemHomeUrl(item.id, requestOptions),
|
|
23
|
+
// TODO: once the initiative view is moved to initiatives/:id,
|
|
24
|
+
// update and leverage the getHubRelativeUrl util to construct
|
|
25
|
+
// this url. For now, we hard-code to the initiatives2/:id route
|
|
26
|
+
siteRelative: `/initiatives2/${items_1.getItemIdentifier(item)}`,
|
|
27
|
+
workspaceRelative: getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl(item.type, items_1.getItemIdentifier(item)),
|
|
28
|
+
thumbnail: get_item_thumbnail_url_1.getItemThumbnailUrl(item, requestOptions, token),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
exports.computeLinks = computeLinks;
|
|
32
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeLinks.ts"],"names":[],"mappings":";;;AAGA,qCAA4C;AAE5C,uCAAgD;AAChD,gFAA6E;AAC7E,mFAA6E;AAE7E;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,IAAW,EACX,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,qBAAc,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC;QAC7C,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,YAAY,EAAE,iBAAiB,yBAAiB,CAAC,IAAI,CAAC,EAAE;QACxD,iBAAiB,EAAE,iDAAuB,CACxC,IAAI,CAAC,IAAI,EACT,yBAAiB,CAAC,IAAI,CAAC,CACxB;QACD,SAAS,EAAE,4CAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC;KAC5D,CAAC;AACJ,CAAC;AAtBD,oCAsBC"}
|
|
@@ -5,6 +5,7 @@ const resources_1 = require("../../resources");
|
|
|
5
5
|
const discussions_1 = require("../../discussions");
|
|
6
6
|
const processEntityFeatures_1 = require("../../permissions/_internal/processEntityFeatures");
|
|
7
7
|
const InitiativeBusinessRules_1 = require("./InitiativeBusinessRules");
|
|
8
|
+
const computeLinks_1 = require("./computeLinks");
|
|
8
9
|
/**
|
|
9
10
|
* Given a model and an Initiative, set various computed properties that can't be directly mapped
|
|
10
11
|
* @private
|
|
@@ -32,6 +33,7 @@ function computeProps(model, initiative, requestOptions) {
|
|
|
32
33
|
* Features that can be disabled by the entity owner
|
|
33
34
|
*/
|
|
34
35
|
initiative.features = processEntityFeatures_1.processEntityFeatures(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.features) || {}, InitiativeBusinessRules_1.InitiativeDefaultFeatures);
|
|
36
|
+
initiative.links = computeLinks_1.computeLinks(model.item, requestOptions);
|
|
35
37
|
// cast b/c this takes a partial but returns a full object
|
|
36
38
|
return initiative;
|
|
37
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAKtD,mDAAkD;AAClD,6FAA0F;AAC1F,uEAAsE;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/initiatives/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAKtD,mDAAkD;AAClD,6FAA0F;AAC1F,uEAAsE;AACtE,iDAA8C;AAE9C;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,UAAmC,EACnC,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,UAAU,CAAC,YAAY,GAAG,+BAAmB,CAC3C,KAAK,CAAC,IAAI,EACV,cAAc,EACd,KAAK,CACN,CAAC;IAEF,eAAe;IACf,UAAU,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtD,UAAU,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC9C,UAAU,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,UAAU,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC/C,UAAU,CAAC,aAAa,GAAG,2BAAa,CAAC,UAAU,CAAC,CAAC;IAErD;;OAEG;IACH,UAAU,CAAC,QAAQ,GAAG,6CAAqB,CACzC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,mDAAyB,CAC1B,CAAC;IAEF,UAAU,CAAC,KAAK,GAAG,2BAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAE5D,0DAA0D;IAC1D,OAAO,UAA4B,CAAC;AACtC,CAAC;AApCD,oCAoCC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.computeLinks = void 0;
|
|
4
|
+
const urls_1 = require("../../urls");
|
|
5
|
+
const items_1 = require("../../items");
|
|
6
|
+
const internalContentUtils_1 = require("../../content/_internal/internalContentUtils");
|
|
7
|
+
const getRelativeWorkspaceUrl_1 = require("../../core/getRelativeWorkspaceUrl");
|
|
8
|
+
const get_item_thumbnail_url_1 = require("../../resources/get-item-thumbnail-url");
|
|
9
|
+
/**
|
|
10
|
+
* Compute the links that get appended to a Hub Project
|
|
11
|
+
* search result and entity
|
|
12
|
+
*
|
|
13
|
+
* @param item
|
|
14
|
+
* @param requestOptions
|
|
15
|
+
*/
|
|
16
|
+
function computeLinks(item, requestOptions) {
|
|
17
|
+
let token;
|
|
18
|
+
if (requestOptions.authentication) {
|
|
19
|
+
const session = requestOptions.authentication;
|
|
20
|
+
token = session.token;
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
self: urls_1.getItemHomeUrl(item.id, requestOptions),
|
|
24
|
+
siteRelative: internalContentUtils_1.getHubRelativeUrl(item.type, items_1.getItemIdentifier(item)),
|
|
25
|
+
workspaceRelative: getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl(item.type, items_1.getItemIdentifier(item)),
|
|
26
|
+
thumbnail: get_item_thumbnail_url_1.getItemThumbnailUrl(item, requestOptions, token),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
exports.computeLinks = computeLinks;
|
|
30
|
+
//# sourceMappingURL=computeLinks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"computeLinks.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeLinks.ts"],"names":[],"mappings":";;;AAGA,qCAA4C;AAE5C,uCAAgD;AAChD,uFAAiF;AACjF,gFAA6E;AAC7E,mFAA6E;AAE7E;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,IAAW,EACX,cAA+B;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IAED,OAAO;QACL,IAAI,EAAE,qBAAc,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC;QAC7C,YAAY,EAAE,wCAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,yBAAiB,CAAC,IAAI,CAAC,CAAC;QACnE,iBAAiB,EAAE,iDAAuB,CACxC,IAAI,CAAC,IAAI,EACT,yBAAiB,CAAC,IAAI,CAAC,CACxB;QACD,SAAS,EAAE,4CAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC;KAC5D,CAAC;AACJ,CAAC;AAnBD,oCAmBC"}
|
|
@@ -5,6 +5,7 @@ const resources_1 = require("../../resources");
|
|
|
5
5
|
const discussions_1 = require("../../discussions");
|
|
6
6
|
const processEntityFeatures_1 = require("../../permissions/_internal/processEntityFeatures");
|
|
7
7
|
const ProjectBusinessRules_1 = require("./ProjectBusinessRules");
|
|
8
|
+
const computeLinks_1 = require("./computeLinks");
|
|
8
9
|
/**
|
|
9
10
|
* Given a model and a project, set various computed properties that can't be directly mapped
|
|
10
11
|
* @private
|
|
@@ -32,6 +33,7 @@ function computeProps(model, project, requestOptions) {
|
|
|
32
33
|
* Features that can be disabled by the entity owner
|
|
33
34
|
*/
|
|
34
35
|
project.features = processEntityFeatures_1.processEntityFeatures(((_a = model.data.settings) === null || _a === void 0 ? void 0 : _a.features) || {}, ProjectBusinessRules_1.ProjectDefaultFeatures);
|
|
36
|
+
project.links = computeLinks_1.computeLinks(model.item, requestOptions);
|
|
35
37
|
// cast b/c this takes a partial but returns a full project
|
|
36
38
|
return project;
|
|
37
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;
|
|
1
|
+
{"version":3,"file":"computeProps.js","sourceRoot":"","sources":["../../../../src/projects/_internal/computeProps.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AAGtD,mDAAkD;AAClD,6FAA0F;AAC1F,iEAAgE;AAChE,iDAA8C;AAE9C;;;;;;;GAOG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,OAA6B,EAC7B,cAA+B;;IAE/B,IAAI,KAAa,CAAC;IAClB,IAAI,cAAc,CAAC,cAAc,EAAE;QACjC,MAAM,OAAO,GAAgB,cAAc,CAAC,cAA6B,CAAC;QAC1E,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;KACvB;IACD,gBAAgB;IAChB,OAAO,CAAC,YAAY,GAAG,+BAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAE9E,eAAe;IACf,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CAAC,iBAAiB,GAAG,cAAc,CAAC;IAC3C,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC;IAC5C,OAAO,CAAC,aAAa,GAAG,2BAAa,CAAC,OAAO,CAAC,CAAC;IAE/C;;OAEG;IACH,OAAO,CAAC,QAAQ,GAAG,6CAAqB,CACtC,OAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,QAAQ,KAAI,EAAE,EACnC,6CAAsB,CACvB,CAAC;IAEF,OAAO,CAAC,KAAK,GAAG,2BAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAEzD,2DAA2D;IAC3D,OAAO,OAAsB,CAAC;AAChC,CAAC;AAhCD,oCAgCC"}
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getAssociatedInitiativesQuery = exports.enrichProjectSearchResult = exports.convertItemToProject = exports.fetchProject = void 0;
|
|
4
4
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
5
|
const get_family_1 = require("../content/get-family");
|
|
6
|
-
const internalContentUtils_1 = require("../content/_internal/internalContentUtils");
|
|
7
6
|
const PropertyMapper_1 = require("../core/_internal/PropertyMapper");
|
|
8
7
|
const slugs_1 = require("../items/slugs");
|
|
9
8
|
const _enrichments_1 = require("../items/_enrichments");
|
|
@@ -14,12 +13,9 @@ const computeProps_1 = require("./_internal/computeProps");
|
|
|
14
13
|
const getPropertyMap_1 = require("./_internal/getPropertyMap");
|
|
15
14
|
const util_1 = require("../util");
|
|
16
15
|
const get_prop_1 = require("../objects/get-prop");
|
|
17
|
-
const get_item_thumbnail_url_1 = require("../resources/get-item-thumbnail-url");
|
|
18
|
-
const get_item_home_url_1 = require("../urls/get-item-home-url");
|
|
19
|
-
const items_1 = require("../items");
|
|
20
|
-
const getRelativeWorkspaceUrl_1 = require("../core/getRelativeWorkspaceUrl");
|
|
21
16
|
const associations_1 = require("../associations");
|
|
22
17
|
const getTypeByIdsQuery_1 = require("../associations/internal/getTypeByIdsQuery");
|
|
18
|
+
const computeLinks_1 = require("./_internal/computeLinks");
|
|
23
19
|
/**
|
|
24
20
|
* @private
|
|
25
21
|
* Get a Hub Project by id or slug
|
|
@@ -110,11 +106,7 @@ async function enrichProjectSearchResult(item, include, requestOptions) {
|
|
|
110
106
|
});
|
|
111
107
|
// Handle links
|
|
112
108
|
// TODO: Link handling should be an enrichment
|
|
113
|
-
result.links
|
|
114
|
-
result.links.self = get_item_home_url_1.getItemHomeUrl(result.id, requestOptions);
|
|
115
|
-
const identifier = items_1.getItemIdentifier(item);
|
|
116
|
-
result.links.siteRelative = internalContentUtils_1.getHubRelativeUrl(result.type, identifier, item.typeKeywords);
|
|
117
|
-
result.links.workspaceRelative = getRelativeWorkspaceUrl_1.getRelativeWorkspaceUrl(result.type, identifier);
|
|
109
|
+
result.links = computeLinks_1.computeLinks(item, requestOptions);
|
|
118
110
|
return result;
|
|
119
111
|
}
|
|
120
112
|
exports.enrichProjectSearchResult = enrichProjectSearchResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/projects/fetch.ts"],"names":[],"mappings":";;;AACA,iEAA0D;AAE1D,sDAAkD;
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/projects/fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,38 @@ export interface ILink {
|
|
|
11
11
|
*/
|
|
12
12
|
[key: string]: string;
|
|
13
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Interface for entity links
|
|
16
|
+
*/
|
|
17
|
+
export interface IHubEntityLinks {
|
|
18
|
+
/**
|
|
19
|
+
* Url to Thumbnail. May not include a token
|
|
20
|
+
* TODO: Why should we not include the token?
|
|
21
|
+
*/
|
|
22
|
+
thumbnail?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Url to the entities canonical "self"
|
|
25
|
+
* For Items/Groups/Users, this will be the Home App url
|
|
26
|
+
* For other entities, it will be the canonical url
|
|
27
|
+
*/
|
|
28
|
+
self: string;
|
|
29
|
+
/**
|
|
30
|
+
* Relative url of the entity, within a site
|
|
31
|
+
*/
|
|
32
|
+
siteRelative?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Relative workspace url of the entity, within a site
|
|
35
|
+
*/
|
|
36
|
+
workspaceRelative?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Relative url to the entity's layout editing experience
|
|
39
|
+
*/
|
|
40
|
+
layoutRelative?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Additional urls
|
|
43
|
+
*/
|
|
44
|
+
[key: string]: string | ILink;
|
|
45
|
+
}
|
|
14
46
|
/**
|
|
15
47
|
* Base properties for Hub Entities
|
|
16
48
|
* This includes a subset of `IItem`, that can apply to
|
|
@@ -66,33 +98,5 @@ export interface IHubEntityBase {
|
|
|
66
98
|
/**
|
|
67
99
|
* Links to related things
|
|
68
100
|
*/
|
|
69
|
-
links?:
|
|
70
|
-
/**
|
|
71
|
-
* Url to Thumbnail. May not include a token
|
|
72
|
-
* TODO: Why should we not include the token?
|
|
73
|
-
*/
|
|
74
|
-
thumbnail?: string;
|
|
75
|
-
/**
|
|
76
|
-
* Url to the entities canonical "self"
|
|
77
|
-
* For Items/Groups/Users, this will be the Home App url
|
|
78
|
-
* For other entities, it will be the canonical url
|
|
79
|
-
*/
|
|
80
|
-
self: string;
|
|
81
|
-
/**
|
|
82
|
-
* Relative url of the entity, within a site
|
|
83
|
-
*/
|
|
84
|
-
siteRelative?: string;
|
|
85
|
-
/**
|
|
86
|
-
* Relative workspace url of the entity, within a site
|
|
87
|
-
*/
|
|
88
|
-
workspaceRelative?: string;
|
|
89
|
-
/**
|
|
90
|
-
* Relative url to the entity's layout editing experience
|
|
91
|
-
*/
|
|
92
|
-
layoutRelative?: string;
|
|
93
|
-
/**
|
|
94
|
-
* Additional urls
|
|
95
|
-
*/
|
|
96
|
-
[key: string]: string | ILink;
|
|
97
|
-
};
|
|
101
|
+
links?: IHubEntityLinks;
|
|
98
102
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IGroup } from "@esri/arcgis-rest-types";
|
|
2
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
3
|
+
import { IHubEntityLinks } from "../../core/types";
|
|
4
|
+
/**
|
|
5
|
+
* Compute the links that get appended to a Hub Group
|
|
6
|
+
* search result and entity
|
|
7
|
+
*
|
|
8
|
+
* @param group
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
*/
|
|
11
|
+
export declare function computeLinks(group: IGroup, requestOptions: IRequestOptions): IHubEntityLinks;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IItem } from "@esri/arcgis-rest-types";
|
|
2
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
3
|
+
import { IHubEntityLinks } from "../../core/types";
|
|
4
|
+
/**
|
|
5
|
+
* Compute the links that get appended to a Hub Initiative
|
|
6
|
+
* search result and entity
|
|
7
|
+
*
|
|
8
|
+
* @param item
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
*/
|
|
11
|
+
export declare function computeLinks(item: IItem, requestOptions: IRequestOptions): IHubEntityLinks;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IItem } from "@esri/arcgis-rest-types";
|
|
2
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
3
|
+
import { IHubEntityLinks } from "../../core/types";
|
|
4
|
+
/**
|
|
5
|
+
* Compute the links that get appended to a Hub Project
|
|
6
|
+
* search result and entity
|
|
7
|
+
*
|
|
8
|
+
* @param item
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
*/
|
|
11
|
+
export declare function computeLinks(item: IItem, requestOptions: IRequestOptions): IHubEntityLinks;
|