@esri/hub-common 14.115.0 → 14.116.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/HubItemEntity.js +20 -25
- package/dist/esm/core/HubItemEntity.js.map +1 -1
- package/dist/esm/core/getEntityGroups.js +23 -0
- package/dist/esm/core/getEntityGroups.js.map +1 -0
- package/dist/esm/core/index.js +4 -0
- package/dist/esm/core/index.js.map +1 -1
- package/dist/esm/core/setEntityAccess.js +38 -0
- package/dist/esm/core/setEntityAccess.js.map +1 -0
- package/dist/esm/core/shareEntityWithGroups.js +25 -0
- package/dist/esm/core/shareEntityWithGroups.js.map +1 -0
- package/dist/esm/core/unshareEntityWithGroups.js +25 -0
- package/dist/esm/core/unshareEntityWithGroups.js.map +1 -0
- package/dist/esm/events/HubEvent.js +29 -4
- package/dist/esm/events/HubEvent.js.map +1 -1
- package/dist/esm/events/_internal/PropertyMapper.js +1 -1
- package/dist/esm/events/_internal/PropertyMapper.js.map +1 -1
- package/dist/esm/events/_internal/getEventGroups.js +17 -0
- package/dist/esm/events/_internal/getEventGroups.js.map +1 -0
- package/dist/esm/events/_internal/getPropertyMap.js +9 -1
- package/dist/esm/events/_internal/getPropertyMap.js.map +1 -1
- package/dist/esm/events/_internal/shareEventWithGroups.js +42 -0
- package/dist/esm/events/_internal/shareEventWithGroups.js.map +1 -0
- package/dist/esm/events/_internal/unshareEventWithGroups.js +26 -0
- package/dist/esm/events/_internal/unshareEventWithGroups.js.map +1 -0
- package/dist/esm/events/defaults.js +1 -1
- package/dist/esm/events/defaults.js.map +1 -1
- package/dist/esm/events/edit.js +1 -0
- package/dist/esm/events/edit.js.map +1 -1
- package/dist/esm/items/share-item-to-groups.js +29 -10
- package/dist/esm/items/share-item-to-groups.js.map +1 -1
- package/dist/esm/items/unshare-item-from-groups.js +4 -3
- package/dist/esm/items/unshare-item-from-groups.js.map +1 -1
- package/dist/esm/utils/poll.js +23 -31
- package/dist/esm/utils/poll.js.map +1 -1
- package/dist/node/core/HubItemEntity.js +20 -25
- package/dist/node/core/HubItemEntity.js.map +1 -1
- package/dist/node/core/getEntityGroups.js +27 -0
- package/dist/node/core/getEntityGroups.js.map +1 -0
- package/dist/node/core/index.js +4 -0
- package/dist/node/core/index.js.map +1 -1
- package/dist/node/core/setEntityAccess.js +42 -0
- package/dist/node/core/setEntityAccess.js.map +1 -0
- package/dist/node/core/shareEntityWithGroups.js +29 -0
- package/dist/node/core/shareEntityWithGroups.js.map +1 -0
- package/dist/node/core/unshareEntityWithGroups.js +29 -0
- package/dist/node/core/unshareEntityWithGroups.js.map +1 -0
- package/dist/node/events/HubEvent.js +29 -4
- package/dist/node/events/HubEvent.js.map +1 -1
- package/dist/node/events/_internal/PropertyMapper.js +1 -1
- package/dist/node/events/_internal/PropertyMapper.js.map +1 -1
- package/dist/node/events/_internal/getEventGroups.js +21 -0
- package/dist/node/events/_internal/getEventGroups.js.map +1 -0
- package/dist/node/events/_internal/getPropertyMap.js +9 -1
- package/dist/node/events/_internal/getPropertyMap.js.map +1 -1
- package/dist/node/events/_internal/shareEventWithGroups.js +46 -0
- package/dist/node/events/_internal/shareEventWithGroups.js.map +1 -0
- package/dist/node/events/_internal/unshareEventWithGroups.js +30 -0
- package/dist/node/events/_internal/unshareEventWithGroups.js.map +1 -0
- package/dist/node/events/defaults.js +1 -1
- package/dist/node/events/defaults.js.map +1 -1
- package/dist/node/events/edit.js +1 -0
- package/dist/node/events/edit.js.map +1 -1
- package/dist/node/items/share-item-to-groups.js +28 -9
- package/dist/node/items/share-item-to-groups.js.map +1 -1
- package/dist/node/items/unshare-item-from-groups.js +4 -3
- package/dist/node/items/unshare-item-from-groups.js.map +1 -1
- package/dist/node/utils/poll.js +24 -31
- package/dist/node/utils/poll.js.map +1 -1
- package/dist/types/core/HubItemEntity.d.ts +12 -1
- package/dist/types/core/behaviors/IWithSharingBehavior.d.ts +10 -0
- package/dist/types/core/getEntityGroups.d.ts +10 -0
- package/dist/types/core/index.d.ts +4 -0
- package/dist/types/core/setEntityAccess.d.ts +11 -0
- package/dist/types/core/shareEntityWithGroups.d.ts +10 -0
- package/dist/types/core/types/IHubEvent.d.ts +8 -0
- package/dist/types/core/unshareEntityWithGroups.d.ts +10 -0
- package/dist/types/events/HubEvent.d.ts +12 -2
- package/dist/types/events/_internal/getEventGroups.d.ts +9 -0
- package/dist/types/events/_internal/shareEventWithGroups.d.ts +10 -0
- package/dist/types/events/_internal/unshareEventWithGroups.d.ts +10 -0
- package/dist/types/items/share-item-to-groups.d.ts +5 -4
- package/dist/types/items/unshare-item-from-groups.d.ts +1 -1
- package/dist/types/utils/poll.d.ts +4 -4
- package/package.json +1 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { getGroup, removeItemResource, setItemAccess,
|
|
1
|
+
import { getGroup, removeItemResource, setItemAccess, updateGroup, } from "@esri/arcgis-rest-portal";
|
|
2
2
|
import HubError from "../HubError";
|
|
3
|
-
import { uploadImageResource } from "../items";
|
|
3
|
+
import { uploadImageResource } from "../items/uploadImageResource";
|
|
4
|
+
import { unshareItemFromGroups } from "../items/unshare-item-from-groups";
|
|
5
|
+
import { shareItemToGroups } from "../items/share-item-to-groups";
|
|
4
6
|
import { deleteItemThumbnail } from "../items/deleteItemThumbnail";
|
|
5
7
|
import { setItemThumbnail } from "../items/setItemThumbnail";
|
|
6
8
|
import { addPermissionPolicy, checkPermission, removePermissionPolicy, } from "../permissions";
|
|
@@ -111,38 +113,31 @@ export class HubItemEntity {
|
|
|
111
113
|
* @param groupId
|
|
112
114
|
*/
|
|
113
115
|
async shareWithGroup(groupId) {
|
|
114
|
-
var _a;
|
|
115
116
|
if (!this.context.currentUser) {
|
|
116
117
|
throw new HubError("Share Item With Group", "Cannot share item with group when no user is logged in.");
|
|
117
118
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
const isEditGroup = ((group === null || group === void 0 ? void 0 : group.capabilities) || []).includes("updateitemcontrol");
|
|
127
|
-
await shareItemWithGroup({
|
|
128
|
-
id: this.entity.id,
|
|
129
|
-
groupId,
|
|
130
|
-
confirmItemControl: isEditGroup,
|
|
131
|
-
owner: this.entity.owner,
|
|
132
|
-
authentication: this.context.session,
|
|
133
|
-
});
|
|
119
|
+
await shareItemToGroups(this.entity.id, [groupId], this.context.requestOptions, this.entity.owner);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Share the Entity with the specified group ids
|
|
123
|
+
* @param groupIds
|
|
124
|
+
*/
|
|
125
|
+
async shareWithGroups(groupIds) {
|
|
126
|
+
await shareItemToGroups(this.entity.id, groupIds, this.context.requestOptions, this.entity.owner);
|
|
134
127
|
}
|
|
135
128
|
/**
|
|
136
129
|
* Unshare the Entity with the specified group id
|
|
137
130
|
* @param groupId
|
|
138
131
|
*/
|
|
139
132
|
async unshareWithGroup(groupId) {
|
|
140
|
-
await
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
133
|
+
await unshareItemFromGroups(this.entity.id, [groupId], this.context.requestOptions, this.entity.owner);
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Unshare the Entity with the specified group ids
|
|
137
|
+
* @param groupIds
|
|
138
|
+
*/
|
|
139
|
+
async unshareWithGroups(groupIds) {
|
|
140
|
+
await unshareItemFromGroups(this.entity.id, groupIds, this.context.requestOptions, this.entity.owner);
|
|
146
141
|
}
|
|
147
142
|
/**
|
|
148
143
|
* Set the access level of the backing item
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubItemEntity.js","sourceRoot":"","sources":["../../../src/core/HubItemEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"HubItemEntity.js","sourceRoot":"","sources":["../../../src/core/HubItemEntity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { getEventGroups } from "../events/_internal/getEventGroups";
|
|
2
|
+
import { sharedWith } from "./_internal/sharedWith";
|
|
3
|
+
import { getTypeFromEntity } from "./getTypeFromEntity";
|
|
4
|
+
/**
|
|
5
|
+
* Fetches an array of groups the entity is shared with
|
|
6
|
+
* @param entity An IHubItemEntity
|
|
7
|
+
* @param context An IArcGISContext
|
|
8
|
+
* @returns a promise that resolves an array of groups the entity is shared with
|
|
9
|
+
*/
|
|
10
|
+
export async function getEntityGroups(entity, context) {
|
|
11
|
+
const type = getTypeFromEntity(entity);
|
|
12
|
+
let groups;
|
|
13
|
+
switch (type) {
|
|
14
|
+
case "event":
|
|
15
|
+
groups = await getEventGroups(entity.id, context);
|
|
16
|
+
break;
|
|
17
|
+
default:
|
|
18
|
+
groups = await sharedWith(entity.id, context.requestOptions);
|
|
19
|
+
break;
|
|
20
|
+
}
|
|
21
|
+
return groups;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=getEntityGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEntityGroups.js","sourceRoot":"","sources":["../../../src/core/getEntityGroups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,OAAuB;IAEvB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC;IACX,QAAQ,IAAI,EAAE;QACZ,KAAK,OAAO;YACV,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM;QACR;YACE,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YAC7D,MAAM;KACT;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/esm/core/index.js
CHANGED
|
@@ -9,6 +9,10 @@ export * from "./getTypesFromEntityType";
|
|
|
9
9
|
export * from "./getRelativeWorkspaceUrl";
|
|
10
10
|
export * from "./isValidEntityType";
|
|
11
11
|
export * from "./processActionLinks";
|
|
12
|
+
export * from "./setEntityAccess";
|
|
13
|
+
export * from "./shareEntityWithGroups";
|
|
14
|
+
export * from "./unshareEntityWithGroups";
|
|
15
|
+
export * from "./getEntityGroups";
|
|
12
16
|
// For sme reason, if these are exported here,
|
|
13
17
|
// they are not actually exported in the final package.
|
|
14
18
|
// export * from "./updateHubEntity";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAElC,8CAA8C;AAC9C,uDAAuD;AACvD,qCAAqC;AACrC,gCAAgC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { setItemAccess, updateGroup } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { getTypeFromEntity } from "./getTypeFromEntity";
|
|
3
|
+
import { updateEvent } from "../events/api/events";
|
|
4
|
+
/**
|
|
5
|
+
* Sets an entity's access to the given access
|
|
6
|
+
* @param entity A HubEntity object
|
|
7
|
+
* @param access The access to set the entity to
|
|
8
|
+
* @param context An IArcGISContext object
|
|
9
|
+
* @returns a promise
|
|
10
|
+
*/
|
|
11
|
+
export async function setEntityAccess(entity, access, context) {
|
|
12
|
+
const type = getTypeFromEntity(entity);
|
|
13
|
+
switch (type) {
|
|
14
|
+
case "event":
|
|
15
|
+
await updateEvent(Object.assign({ eventId: entity.id, data: {
|
|
16
|
+
access: access.toUpperCase(),
|
|
17
|
+
} }, context.hubRequestOptions));
|
|
18
|
+
break;
|
|
19
|
+
case "group":
|
|
20
|
+
await updateGroup({
|
|
21
|
+
group: {
|
|
22
|
+
id: entity.id,
|
|
23
|
+
access,
|
|
24
|
+
},
|
|
25
|
+
authentication: context.session,
|
|
26
|
+
});
|
|
27
|
+
break;
|
|
28
|
+
default:
|
|
29
|
+
await setItemAccess({
|
|
30
|
+
id: entity.id,
|
|
31
|
+
access,
|
|
32
|
+
owner: entity.owner,
|
|
33
|
+
authentication: context.session,
|
|
34
|
+
});
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=setEntityAccess.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setEntityAccess.js","sourceRoot":"","sources":["../../../src/core/setEntityAccess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAiB,EACjB,MAA2B,EAC3B,OAAuB;IAEvB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,IAAI,EAAE;QACZ,KAAK,OAAO;YACV,MAAM,WAAW,iBACf,OAAO,EAAE,MAAM,CAAC,EAAE,EAClB,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM,CAAC,WAAW,EAAiB;iBAC5C,IACE,OAAO,CAAC,iBAAiB,EAC5B,CAAC;YACH,MAAM;QACR,KAAK,OAAO;YACV,MAAM,WAAW,CAAC;gBAChB,KAAK,EAAE;oBACL,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,MAAM;iBACP;gBACD,cAAc,EAAE,OAAO,CAAC,OAAO;aAChC,CAAC,CAAC;YACH,MAAM;QACR;YACE,MAAM,aAAa,CAAC;gBAClB,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,cAAc,EAAE,OAAO,CAAC,OAAO;aAChC,CAAC,CAAC;YACH,MAAM;KACT;AACH,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { shareEventWithGroups } from "../events/_internal/shareEventWithGroups";
|
|
2
|
+
import { getTypeFromEntity } from "./getTypeFromEntity";
|
|
3
|
+
import { shareItemToGroups } from "../items/share-item-to-groups";
|
|
4
|
+
/**
|
|
5
|
+
* Shares an entity to one or more groups
|
|
6
|
+
* @param entity An IHubItemEntity object
|
|
7
|
+
* @param groupIds An array of group IDs to share the entity to
|
|
8
|
+
* @param context An IArcGISContext object
|
|
9
|
+
* @returns a promise that resolves the updated entity
|
|
10
|
+
*/
|
|
11
|
+
export async function shareEntityWithGroups(entity, groupIds, context) {
|
|
12
|
+
const type = getTypeFromEntity(entity);
|
|
13
|
+
let results;
|
|
14
|
+
switch (type) {
|
|
15
|
+
case "event":
|
|
16
|
+
results = await shareEventWithGroups(groupIds, entity, context);
|
|
17
|
+
break;
|
|
18
|
+
default:
|
|
19
|
+
results = entity;
|
|
20
|
+
await shareItemToGroups(entity.id, groupIds, context.requestOptions, entity.owner);
|
|
21
|
+
break;
|
|
22
|
+
}
|
|
23
|
+
return results;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=shareEntityWithGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shareEntityWithGroups.js","sourceRoot":"","sources":["../../../src/core/shareEntityWithGroups.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAsB,EACtB,QAAkB,EAClB,OAAuB;IAEvB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,OAAuB,CAAC;IAC5B,QAAQ,IAAI,EAAE;QACZ,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,oBAAoB,CAClC,QAAQ,EACR,MAAmB,EACnB,OAAO,CACR,CAAC;YACF,MAAM;QACR;YACE,OAAO,GAAG,MAAM,CAAC;YACjB,MAAM,iBAAiB,CACrB,MAAM,CAAC,EAAE,EACT,QAAQ,EACR,OAAO,CAAC,cAAc,EACtB,MAAM,CAAC,KAAK,CACb,CAAC;YACF,MAAM;KACT;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { unshareEventWithGroups } from "../events/_internal/unshareEventWithGroups";
|
|
2
|
+
import { getTypeFromEntity } from "./getTypeFromEntity";
|
|
3
|
+
import { unshareItemFromGroups } from "../items/unshare-item-from-groups";
|
|
4
|
+
/**
|
|
5
|
+
* Unshares an entity from one or more groups
|
|
6
|
+
* @param entity An IHubItemEntity object
|
|
7
|
+
* @param groupIds An array of group IDs to unshare the entity from
|
|
8
|
+
* @param context An IArcGISContext object
|
|
9
|
+
* @returns a promise that resolves the updated entity
|
|
10
|
+
*/
|
|
11
|
+
export async function unshareEntityWithGroups(entity, groupIds, context) {
|
|
12
|
+
const type = getTypeFromEntity(entity);
|
|
13
|
+
let results;
|
|
14
|
+
switch (type) {
|
|
15
|
+
case "event":
|
|
16
|
+
results = await unshareEventWithGroups(groupIds, entity, context);
|
|
17
|
+
break;
|
|
18
|
+
default:
|
|
19
|
+
results = entity;
|
|
20
|
+
await unshareItemFromGroups(entity.id, groupIds, context.requestOptions, entity.owner);
|
|
21
|
+
break;
|
|
22
|
+
}
|
|
23
|
+
return results;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=unshareEntityWithGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unshareEntityWithGroups.js","sourceRoot":"","sources":["../../../src/core/unshareEntityWithGroups.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAGpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAsB,EACtB,QAAkB,EAClB,OAAuB;IAEvB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,OAAuB,CAAC;IAC5B,QAAQ,IAAI,EAAE;QACZ,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,sBAAsB,CACpC,QAAQ,EACR,MAAmB,EACnB,OAAO,CACR,CAAC;YACF,MAAM;QACR;YACE,OAAO,GAAG,MAAM,CAAC;YACjB,MAAM,qBAAqB,CACzB,MAAM,CAAC,EAAE,EACT,QAAQ,EACR,OAAO,CAAC,cAAc,EACtB,MAAM,CAAC,KAAK,CACb,CAAC;YACF,MAAM;KACT;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -3,6 +3,11 @@ import { fetchEvent } from "./fetch";
|
|
|
3
3
|
import { buildDefaultEventEntity } from "./defaults";
|
|
4
4
|
import { getEditorConfig } from "../core/schemas/getEditorConfig";
|
|
5
5
|
import { cloneObject } from "../util";
|
|
6
|
+
import { shareEventWithGroups } from "./_internal/shareEventWithGroups";
|
|
7
|
+
import { unshareEventWithGroups } from "./_internal/unshareEventWithGroups";
|
|
8
|
+
import HubError from "../HubError";
|
|
9
|
+
import { updateEvent } from "./api/events";
|
|
10
|
+
import { getEventGroups } from "./_internal/getEventGroups";
|
|
6
11
|
/**
|
|
7
12
|
* Defines the properties of a Hub Event object
|
|
8
13
|
* @internal
|
|
@@ -91,27 +96,47 @@ export class HubEvent extends HubItemEntity {
|
|
|
91
96
|
* @param groupId The ID of the group to share the Event to
|
|
92
97
|
*/
|
|
93
98
|
async shareWithGroup(groupId) {
|
|
94
|
-
|
|
99
|
+
if (!this.context.currentUser) {
|
|
100
|
+
throw new HubError("Share Event With Group", "Cannot share event with group when no user is logged in.");
|
|
101
|
+
}
|
|
102
|
+
this.entity = (await shareEventWithGroups([groupId], this.entity, this.context));
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Share the Entity with the specified group ids
|
|
106
|
+
* @param groupIds The IDs of the groups to share the Event to
|
|
107
|
+
*/
|
|
108
|
+
async shareWithGroups(groupIds) {
|
|
109
|
+
this.entity = (await shareEventWithGroups(groupIds, this.entity, this.context));
|
|
95
110
|
}
|
|
96
111
|
/**
|
|
97
112
|
* Unshare the Event with the specified group id
|
|
98
113
|
* @param groupId The ID of the group to unshar ethe Event with
|
|
99
114
|
*/
|
|
100
115
|
async unshareWithGroup(groupId) {
|
|
101
|
-
|
|
116
|
+
this.entity = (await unshareEventWithGroups([groupId], this.entity, this.context));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Unshare the Event with the specified group ids
|
|
120
|
+
* @param groupIds The IDs of the groups to unshare the Event with
|
|
121
|
+
*/
|
|
122
|
+
async unshareWithGroups(groupIds) {
|
|
123
|
+
this.entity = (await unshareEventWithGroups(groupIds, this.entity, this.context));
|
|
102
124
|
}
|
|
103
125
|
/**
|
|
104
126
|
* Sets the access level of the event
|
|
105
127
|
* @param access The access level to set the Event to
|
|
106
128
|
*/
|
|
107
129
|
async setAccess(access) {
|
|
108
|
-
|
|
130
|
+
await updateEvent(Object.assign({ eventId: this.entity.id, data: {
|
|
131
|
+
access: access.toUpperCase(),
|
|
132
|
+
} }, this.context.hubRequestOptions));
|
|
133
|
+
this.entity.access = access;
|
|
109
134
|
}
|
|
110
135
|
/**
|
|
111
136
|
* Return a list of groups the Entity is shared to.
|
|
112
137
|
*/
|
|
113
138
|
async sharedWith() {
|
|
114
|
-
|
|
139
|
+
return getEventGroups(this.entity.id, this.context);
|
|
115
140
|
}
|
|
116
141
|
/*
|
|
117
142
|
* Get the editor config for the HubEvent entity.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubEvent.js","sourceRoot":"","sources":["../../../src/events/HubEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAKtD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAGrD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"HubEvent.js","sourceRoot":"","sources":["../../../src/events/HubEvent.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,7 +54,7 @@ export class EventPropertyMapper extends PropertyMapper {
|
|
|
54
54
|
store.permission.canSetAccessToPublic,
|
|
55
55
|
store.permission.canSetAccessToOrg,
|
|
56
56
|
store.permission.canSetAccessToPrivate,
|
|
57
|
-
].
|
|
57
|
+
].every(Boolean);
|
|
58
58
|
obj.canChangeStatus = [
|
|
59
59
|
store.permission.canSetStatusToCancelled,
|
|
60
60
|
store.permission.canSetStatusToRemoved,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/events/_internal/PropertyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAEL,mBAAmB,EACnB,WAAW,GAGZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,cAGxC;IACC;;;;;;;;;;;OAWG;IACH,aAAa,CACX,KAAsB,EACtB,MAA0B;QAE1B,0BAA0B;QAC1B,kCAAkC;;QAElC,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3D,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;QACnB,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAyB,CAAC;QAC/D,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,QAAQ,CAAC;QACvD,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO,CAAC;QACrD,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO,CAAC;QACrD,IACE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC;YAC5D,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAC1D;YACA,GAAG,CAAC,cAAc,GAAG,sBAAsB,CAAC,IAAI,CAAC;SAClD;aAAM,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;YACvE,GAAG,CAAC,cAAc,GAAG,sBAAsB,CAAC,QAAQ,CAAC;SACtD;aAAM;YACL,GAAG,CAAC,cAAc,GAAG,sBAAsB,CAAC,MAAM,CAAC;SACpD;QACD,GAAG,CAAC,gBAAgB,qBAAG,KAAK,CAAC,SAAS,0CAAG,CAAC,2CAAG,QAAQ,mCAAI,IAAI,CAAC;QAC9D,GAAG,CAAC,cAAc,qBAAG,KAAK,CAAC,cAAc,0CAAG,CAAC,2CAAG,QAAQ,mCAAI,IAAI,CAAC;QACjE,GAAG,CAAC,kBAAkB,GAAG,aAAA,KAAK,CAAC,cAAc,0CAAG,CAAC,2CAAG,QAAQ,EAC1D,CAAC,CAAC,0BAA0B,CAAC,KAAK;YAClC,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QACzC,GAAG,CAAC,aAAa,qBAAG,KAAK,CAAC,cAAc,0CAAG,CAAC,2CAAG,OAAO,mCAAI,IAAI,CAAC;QAC/D,GAAG,CAAC,SAAS,qBAAG,KAAK,CAAC,cAAc,0CAAG,CAAC,2CAAG,GAAG,mCAAI,IAAI,CAAC;QACvD,GAAG,CAAC,eAAe,GAAG;YACpB,KAAK,CAAC,UAAU,CAAC,oBAAoB;YACrC,KAAK,CAAC,UAAU,CAAC,iBAAiB;YAClC,KAAK,CAAC,UAAU,CAAC,qBAAqB;SACvC,CAAC,
|
|
1
|
+
{"version":3,"file":"PropertyMapper.js","sourceRoot":"","sources":["../../../../src/events/_internal/PropertyMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { searchGroups } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { getEvent } from "../api/events";
|
|
3
|
+
/**
|
|
4
|
+
* Fetches the groups an event is shared with
|
|
5
|
+
* @param eventId The ID of the event to fetch the groups for
|
|
6
|
+
* @param context An IArcGISContext object
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export async function getEventGroups(eventId, context) {
|
|
10
|
+
const { editGroups: editGroupIds, readGroups: readGroupIds } = await getEvent(Object.assign({ eventId }, context.hubRequestOptions));
|
|
11
|
+
const search = (ids) => ids.length
|
|
12
|
+
? searchGroups(Object.assign({ q: `id:(${ids.join(" OR ")})`, num: ids.length }, context.requestOptions))
|
|
13
|
+
: Promise.resolve({ results: [] });
|
|
14
|
+
const [{ results: readGroups }, { results: editGroups }] = await Promise.all([readGroupIds, editGroupIds].map(search));
|
|
15
|
+
return [...readGroups, ...editGroups];
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=getEventGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEventGroups.js","sourceRoot":"","sources":["../../../../src/events/_internal/getEventGroups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAe,EACf,OAAuB;IAEvB,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,iBAEzE,OAAO,IACJ,OAAO,CAAC,iBAAiB,EAE/B,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,GAAa,EAAkC,EAAE,CAC/D,GAAG,CAAC,MAAM;QACR,CAAC,CAAC,YAAY,iBACV,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAC7B,GAAG,EAAE,GAAG,CAAC,MAAM,IACZ,OAAO,CAAC,cAAc,EACzB;QACJ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAA2B,CAAC,CAAC;IAChE,MAAM,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1E,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CACzC,CAAC;IACF,OAAO,CAAC,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -19,7 +19,7 @@ export function getPropertyMap() {
|
|
|
19
19
|
return commonPropNames.reduce((acc, propName) => [...acc, { entityKey: propName, storeKey: propName }], [
|
|
20
20
|
{ entityKey: "isAllDay", storeKey: "allDay" },
|
|
21
21
|
{ entityKey: "name", storeKey: "title" },
|
|
22
|
-
{ entityKey: "owner", storeKey: "
|
|
22
|
+
{ entityKey: "owner", storeKey: "creator.username" },
|
|
23
23
|
{ entityKey: "canEdit", storeKey: "permission.canEdit" },
|
|
24
24
|
{ entityKey: "canDelete", storeKey: "permission.canDelete" },
|
|
25
25
|
{
|
|
@@ -42,6 +42,14 @@ export function getPropertyMap() {
|
|
|
42
42
|
entityKey: "canChangeStatusRemoved",
|
|
43
43
|
storeKey: "permission.canSetStatusToRemoved",
|
|
44
44
|
},
|
|
45
|
+
{
|
|
46
|
+
entityKey: "readGroupIds",
|
|
47
|
+
storeKey: "readGroups",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
entityKey: "editGroupIds",
|
|
51
|
+
storeKey: "editGroups",
|
|
52
|
+
},
|
|
45
53
|
]);
|
|
46
54
|
}
|
|
47
55
|
//# sourceMappingURL=getPropertyMap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPropertyMap.js","sourceRoot":"","sources":["../../../../src/events/_internal/getPropertyMap.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,eAAe,GAAG;QACtB,OAAO;QACP,aAAa;QACb,IAAI;QACJ,MAAM;QACN,YAAY;QACZ,UAAU;QACV,SAAS;QACT,iBAAiB;QACjB,mBAAmB;KACpB,CAAC;IACF,OAAO,eAAe,CAAC,MAAM,CAC3B,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EACxE;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC7C,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE;QACxC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"getPropertyMap.js","sourceRoot":"","sources":["../../../../src/events/_internal/getPropertyMap.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,eAAe,GAAG;QACtB,OAAO;QACP,aAAa;QACb,IAAI;QACJ,MAAM;QACN,YAAY;QACZ,UAAU;QACV,SAAS;QACT,iBAAiB;QACjB,mBAAmB;KACpB,CAAC;IACF,OAAO,eAAe,CAAC,MAAM,CAC3B,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EACxE;QACE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC7C,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE;QACxC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE;QACpD,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,oBAAoB,EAAE;QACxD,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,sBAAsB,EAAE;QAC5D;YACE,SAAS,EAAE,oBAAoB;YAC/B,QAAQ,EAAE,8BAA8B;SACzC;QACD;YACE,SAAS,EAAE,wBAAwB;YACnC,QAAQ,EAAE,kCAAkC;SAC7C;QACD;YACE,SAAS,EAAE,uBAAuB;YAClC,QAAQ,EAAE,iCAAiC;SAC5C;QACD;YACE,SAAS,EAAE,0BAA0B;YACrC,QAAQ,EAAE,oCAAoC;SAC/C;QACD;YACE,SAAS,EAAE,wBAAwB;YACnC,QAAQ,EAAE,kCAAkC;SAC7C;QACD;YACE,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,YAAY;SACvB;QACD;YACE,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,YAAY;SACvB;KACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { searchGroups } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { unique } from "../../util";
|
|
3
|
+
import { updateEvent } from "../api/events";
|
|
4
|
+
import { poll } from "../../utils/poll";
|
|
5
|
+
/**
|
|
6
|
+
* Shares an event with one or more groups
|
|
7
|
+
* @param groupIds An array of group IDs to share the event with
|
|
8
|
+
* @param entity An IHubEvent object
|
|
9
|
+
* @param context An IArcGISContext object
|
|
10
|
+
* @returns a promise that resolves IHubItemEntity
|
|
11
|
+
*/
|
|
12
|
+
export async function shareEventWithGroups(groupIds, entity, context) {
|
|
13
|
+
const fn = searchGroups.bind(undefined, Object.assign({ q: `id:(${groupIds.join(" OR ")})`, num: groupIds.length }, context.requestOptions));
|
|
14
|
+
const validate = (resp) => resp.results.length === groupIds.length;
|
|
15
|
+
if (groupIds.length) {
|
|
16
|
+
try {
|
|
17
|
+
// We poll for the expected group results as newly created groups aren't immediately available in the
|
|
18
|
+
// AGO group search index. Polling here eliminates the need for us to potentially implement this polling
|
|
19
|
+
// in multiple places in our app where we create new groups from. In the majority of cases, this will only fire
|
|
20
|
+
// a single request.
|
|
21
|
+
const { results: groups } = await poll(fn, validate);
|
|
22
|
+
const { readGroupIds, editGroupIds } = groups.reduce((acc, group) => {
|
|
23
|
+
const key = group.capabilities.includes("updateitemcontrol")
|
|
24
|
+
? "editGroupIds"
|
|
25
|
+
: "readGroupIds";
|
|
26
|
+
return Object.assign(Object.assign({}, acc), { [key]: [...acc[key], group.id] });
|
|
27
|
+
}, { readGroupIds: [], editGroupIds: [] });
|
|
28
|
+
const { readGroups: updatedReadGroupIds, editGroups: updatedEditGroupIds, } = await updateEvent(Object.assign({ eventId: entity.id, data: {
|
|
29
|
+
readGroups: [...entity.readGroupIds, ...readGroupIds].filter(unique),
|
|
30
|
+
editGroups: [...entity.editGroupIds, ...editGroupIds].filter(unique),
|
|
31
|
+
} }, context.hubRequestOptions));
|
|
32
|
+
return Object.assign(Object.assign({}, entity), { readGroupIds: updatedReadGroupIds, editGroupIds: updatedEditGroupIds });
|
|
33
|
+
}
|
|
34
|
+
catch (e) {
|
|
35
|
+
throw new Error(`Entity: ${entity.id} could not be shared with groups: ${groupIds.join(", ")}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return entity;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=shareEventWithGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shareEventWithGroups.js","sourceRoot":"","sources":["../../../../src/events/_internal/shareEventWithGroups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG/E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAkB,EAClB,MAAiB,EACjB,OAAuB;IAEvB,MAAM,EAAE,GAAyC,YAAY,CAAC,IAAI,CAChE,SAAS,kBAEP,CAAC,EAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAClC,GAAG,EAAE,QAAQ,CAAC,MAAM,IACjB,OAAO,CAAC,cAAc,EAE5B,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,IAA2B,EAAE,EAAE,CAC/C,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC;IAC1C,IAAI,QAAQ,CAAC,MAAM,EAAE;QACnB,IAAI;YACF,qGAAqG;YACrG,wGAAwG;YACxG,+GAA+G;YAC/G,oBAAoB;YACpB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CACpC,EAAE,EACF,QAAQ,CACT,CAAC;YACF,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,MAAM,CAIlD,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACb,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC;oBAC1D,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,cAAc,CAAC;gBACnB,uCAAY,GAAG,KAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,IAAG;YACpD,CAAC,EACD,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CACvC,CAAC;YACF,MAAM,EACJ,UAAU,EAAE,mBAAmB,EAC/B,UAAU,EAAE,mBAAmB,GAChC,GAAG,MAAM,WAAW,iBACnB,OAAO,EAAE,MAAM,CAAC,EAAE,EAClB,IAAI,EAAE;oBACJ,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;oBACpE,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;iBACrE,IACE,OAAO,CAAC,iBAAiB,EAC5B,CAAC;YACH,uCACK,MAAM,KACT,YAAY,EAAE,mBAAmB,EACjC,YAAY,EAAE,mBAAmB,IACjC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,EAAE,qCAAqC,QAAQ,CAAC,IAAI,CACpE,IAAI,CACL,EAAE,CACJ,CAAC;SACH;KACF;SAAM;QACL,OAAO,MAAM,CAAC;KACf;AACH,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { updateEvent } from "../api/events";
|
|
2
|
+
/**
|
|
3
|
+
* Unshares an event with one or more groups
|
|
4
|
+
* @param groupIds An array of group IDs to unshare the group from
|
|
5
|
+
* @param entity An IHubEvent object
|
|
6
|
+
* @param context An IArcGISContext object
|
|
7
|
+
* @returns An updated IHubEvent object
|
|
8
|
+
*/
|
|
9
|
+
export async function unshareEventWithGroups(groupIds, entity, context) {
|
|
10
|
+
if (groupIds.length) {
|
|
11
|
+
try {
|
|
12
|
+
const { readGroups: updatedReadGroupIds, editGroups: updatedEditGroupIds, } = await updateEvent(Object.assign({ eventId: entity.id, data: {
|
|
13
|
+
readGroups: entity.readGroupIds.filter((groupId) => !groupIds.includes(groupId)),
|
|
14
|
+
editGroups: entity.editGroupIds.filter((groupId) => !groupIds.includes(groupId)),
|
|
15
|
+
} }, context.hubRequestOptions));
|
|
16
|
+
return Object.assign(Object.assign({}, entity), { readGroupIds: updatedReadGroupIds, editGroupIds: updatedEditGroupIds });
|
|
17
|
+
}
|
|
18
|
+
catch (e) {
|
|
19
|
+
throw new Error(`Entity: ${entity.id} could not be unshared with groups: ${groupIds.join(", ")}`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return entity;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=unshareEventWithGroups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unshareEventWithGroups.js","sourceRoot":"","sources":["../../../../src/events/_internal/unshareEventWithGroups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAkB,EAClB,MAAiB,EACjB,OAAuB;IAEvB,IAAI,QAAQ,CAAC,MAAM,EAAE;QACnB,IAAI;YACF,MAAM,EACJ,UAAU,EAAE,mBAAmB,EAC/B,UAAU,EAAE,mBAAmB,GAChC,GAAG,MAAM,WAAW,iBACnB,OAAO,EAAE,MAAM,CAAC,EAAE,EAClB,IAAI,EAAE;oBACJ,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CACzC;oBACD,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CACzC;iBACF,IACE,OAAO,CAAC,iBAAiB,EAC5B,CAAC;YACH,uCACK,MAAM,KACT,YAAY,EAAE,mBAAmB,EACjC,YAAY,EAAE,mBAAmB,IACjC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,WACE,MAAM,CAAC,EACT,uCAAuC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7D,CAAC;SACH;KACF;SAAM;QACL,OAAO,MAAM,CAAC;KACf;AACH,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { HubEventAttendanceType } from "./types";
|
|
|
6
6
|
*/
|
|
7
7
|
export function buildDefaultEventEntity() {
|
|
8
8
|
const dates = getDefaultEventDatesAndTimes();
|
|
9
|
-
return Object.assign({ access: "private", allowRegistration: true, attendanceType: HubEventAttendanceType.InPerson, categories: [], inPersonCapacity: null, isAllDay: false, isCanceled: false, isDiscussable: true, isPlanned: true, isRemoved: false, name: "", notifyAttendees: true, onlineCapacity: null, onlineDetails: null, onlineUrl: null, references: [], schemaVersion: 1, tags: [] }, dates);
|
|
9
|
+
return Object.assign({ access: "private", allowRegistration: true, attendanceType: HubEventAttendanceType.InPerson, categories: [], inPersonCapacity: null, isAllDay: false, isCanceled: false, isDiscussable: true, isPlanned: true, isRemoved: false, name: "", notifyAttendees: true, onlineCapacity: null, onlineDetails: null, onlineUrl: null, references: [], schemaVersion: 1, tags: [], readGroupIds: [], editGroupIds: [] }, dates);
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
12
|
* Builds a partial IEvent (record) with default values
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/events/defaults.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,WAAW,GAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,KAAK,GAAG,4BAA4B,EAAE,CAAC;IAC7C,uBACE,MAAM,EAAE,SAAS,EACjB,iBAAiB,EAAE,IAAI,EACvB,cAAc,EAAE,sBAAsB,CAAC,QAAQ,EAC/C,UAAU,EAAE,EAAE,EACd,gBAAgB,EAAE,IAAI,EACtB,QAAQ,EAAE,KAAK,EACf,UAAU,EAAE,KAAK,EACjB,aAAa,EAAE,IAAI,EACnB,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,KAAK,EAChB,IAAI,EAAE,EAAE,EACR,eAAe,EAAE,IAAI,EACrB,cAAc,EAAE,IAAI,EACpB,aAAa,EAAE,IAAI,EACnB,SAAS,EAAE,IAAI,EACf,UAAU,EAAE,EAAE,EACd,aAAa,EAAE,CAAC,EAChB,IAAI,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/events/defaults.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,WAAW,GAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,KAAK,GAAG,4BAA4B,EAAE,CAAC;IAC7C,uBACE,MAAM,EAAE,SAAS,EACjB,iBAAiB,EAAE,IAAI,EACvB,cAAc,EAAE,sBAAsB,CAAC,QAAQ,EAC/C,UAAU,EAAE,EAAE,EACd,gBAAgB,EAAE,IAAI,EACtB,QAAQ,EAAE,KAAK,EACf,UAAU,EAAE,KAAK,EACjB,aAAa,EAAE,IAAI,EACnB,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,KAAK,EAChB,IAAI,EAAE,EAAE,EACR,eAAe,EAAE,IAAI,EACrB,cAAc,EAAE,IAAI,EACpB,aAAa,EAAE,IAAI,EACnB,SAAS,EAAE,IAAI,EACf,UAAU,EAAE,EAAE,EACd,aAAa,EAAE,CAAC,EAChB,IAAI,EAAE,EAAE,EACR,YAAY,EAAE,EAAE,EAChB,YAAY,EAAE,EAAE,IACb,KAAK,EACR;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,4BAA4B,EAAE,CAAC;IACtE,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,OAAO;QAC3B,MAAM,EAAE,KAAK;QACb,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;QAC/C,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE;QACtC,eAAe,EAAE,IAAI;QACrB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,aAAa,CAAC,WAAW,EAAE;QAC1C,MAAM,EAAE,WAAW,CAAC,OAAO;QAC3B,IAAI,EAAE,EAAE;QACR,KAAK,EAAE,EAAE;KACS,CAAC;AACvB,CAAC"}
|
package/dist/esm/events/edit.js
CHANGED
|
@@ -70,6 +70,7 @@ export async function updateHubEvent(event, requestOptions) {
|
|
|
70
70
|
onlineMeetings: model.onlineMeetings,
|
|
71
71
|
readGroups: model.readGroups,
|
|
72
72
|
startDateTime: model.startDateTime,
|
|
73
|
+
status: model.status,
|
|
73
74
|
summary: model.summary,
|
|
74
75
|
tags: model.tags,
|
|
75
76
|
timeZone: model.timeZone,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/events/edit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,EACL,WAAW,IAAI,cAAc,EAC7B,WAAW,IAAI,cAAc,GAC9B,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,YAAgC,EAChC,cAAkC;IAElC,MAAM,KAAK,mCAAQ,uBAAuB,EAAE,GAAK,YAAY,CAAE,CAAC;IAEhE,8EAA8E;IAC9E,8BAA8B;IAC9B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC;IAEhC,4BAA4B;IAC5B,kEAAkE;IAElE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,cAAc,EAAE,CAAC,CAAC;IAEzD,IAAI,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAEnE,MAAM,IAAI,GAAG;QACX,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,KAAK,EAAE,KAAK,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/events/edit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,37 @@
|
|
|
1
|
-
import { shareItemWithGroup, } from "@esri/arcgis-rest-portal";
|
|
1
|
+
import { shareItemWithGroup, searchGroups, } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { poll } from "../utils/poll";
|
|
2
3
|
/**
|
|
3
4
|
* Share an item to a set of groups
|
|
4
|
-
* @param {String} itemId
|
|
5
|
-
* @param {Array}
|
|
5
|
+
* @param {String} itemId Item Id to share to the groups
|
|
6
|
+
* @param {Array} groupIds Array of group id's to which the item will be shared
|
|
7
|
+
* @param {IRequestOptions} requestOptions
|
|
6
8
|
* @param {String} owner optional Owner username to determine which endpoint to hit
|
|
7
|
-
* @param {*} requestOptions
|
|
8
9
|
*/
|
|
9
|
-
export function shareItemToGroups(itemId,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
export async function shareItemToGroups(itemId, groupIds, requestOptions, owner) {
|
|
11
|
+
const fn = searchGroups.bind(undefined, Object.assign({ q: `id:(${groupIds.join(" OR ")})`, num: groupIds.length }, requestOptions));
|
|
12
|
+
const validate = (resp) => resp.results.length === groupIds.length;
|
|
13
|
+
let groups;
|
|
14
|
+
try {
|
|
15
|
+
// We poll for the expected group results as newly created groups aren't immediately available in the
|
|
16
|
+
// AGO group search index. Polling here eliminates the need for us to potentially implement this polling
|
|
17
|
+
// in multiple places in our app where we create new groups from. In the majority of cases, this will only fire
|
|
18
|
+
// a single request.
|
|
19
|
+
({ results: groups } = groupIds.length
|
|
20
|
+
? await poll(fn, validate)
|
|
21
|
+
: { results: [] });
|
|
22
|
+
}
|
|
23
|
+
catch (e) {
|
|
24
|
+
throw new Error(`Error sharing item: ${itemId} with groups: ${groupIds.join(", ")}`);
|
|
25
|
+
}
|
|
26
|
+
return Promise.all(groups.map(async (group) => {
|
|
27
|
+
const opt = Object.assign(Object.assign({}, requestOptions), { id: itemId, groupId: group.id, owner, confirmItemControl: group.capabilities.includes("updateitemcontrol") });
|
|
28
|
+
try {
|
|
29
|
+
const res = await shareItemWithGroup(opt);
|
|
30
|
+
return res;
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
throw new Error(`Error sharing item: ${itemId} with group: ${group.id}`);
|
|
14
34
|
}
|
|
15
|
-
return shareItemWithGroup(opt);
|
|
16
35
|
}));
|
|
17
36
|
}
|
|
18
37
|
//# sourceMappingURL=share-item-to-groups.js.map
|