@esri/hub-common 12.11.0 → 12.12.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/capabilities/getWorkspaceCapabilities.js +2 -0
- package/dist/esm/capabilities/getWorkspaceCapabilities.js.map +1 -1
- package/dist/esm/core/HubItemEntity.js +7 -0
- package/dist/esm/core/HubItemEntity.js.map +1 -1
- package/dist/esm/core/_internal/getBasePropertyMap.js +1 -0
- package/dist/esm/core/_internal/getBasePropertyMap.js.map +1 -1
- package/dist/esm/core/fetchHubEntity.js +4 -0
- package/dist/esm/core/fetchHubEntity.js.map +1 -1
- package/dist/esm/core/getTypeFromEntity.js +3 -0
- package/dist/esm/core/getTypeFromEntity.js.map +1 -1
- package/dist/esm/core/types/IHubDiscussion.js +1 -0
- package/dist/esm/core/types/IHubDiscussion.js.map +1 -0
- package/dist/esm/core/types/index.js +1 -0
- package/dist/esm/core/types/index.js.map +1 -1
- package/dist/esm/discussions/HubDiscussion.js +107 -0
- package/dist/esm/discussions/HubDiscussion.js.map +1 -0
- package/dist/esm/discussions/_internal/DiscussionBusinessRules.js +79 -0
- package/dist/esm/discussions/_internal/DiscussionBusinessRules.js.map +1 -0
- package/dist/esm/discussions/_internal/computeProps.js +31 -0
- package/dist/esm/discussions/_internal/computeProps.js.map +1 -0
- package/dist/esm/discussions/_internal/getPropertyMap.js +13 -0
- package/dist/esm/discussions/_internal/getPropertyMap.js.map +1 -0
- package/dist/esm/discussions/defaults.js +30 -0
- package/dist/esm/discussions/defaults.js.map +1 -0
- package/dist/esm/discussions/edit.js +82 -0
- package/dist/esm/discussions/edit.js.map +1 -0
- package/dist/esm/discussions/fetch.js +44 -0
- package/dist/esm/discussions/fetch.js.map +1 -0
- package/dist/esm/discussions/index.js +4 -0
- package/dist/esm/discussions/index.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/permissions/HubPermissionPolicies.js +2 -0
- package/dist/esm/permissions/HubPermissionPolicies.js.map +1 -1
- package/dist/esm/permissions/types/Permission.js +2 -0
- package/dist/esm/permissions/types/Permission.js.map +1 -1
- package/dist/node/capabilities/getWorkspaceCapabilities.js +2 -0
- package/dist/node/capabilities/getWorkspaceCapabilities.js.map +1 -1
- package/dist/node/core/HubItemEntity.js +7 -0
- package/dist/node/core/HubItemEntity.js.map +1 -1
- package/dist/node/core/_internal/getBasePropertyMap.js +1 -0
- package/dist/node/core/_internal/getBasePropertyMap.js.map +1 -1
- package/dist/node/core/fetchHubEntity.js +4 -0
- package/dist/node/core/fetchHubEntity.js.map +1 -1
- package/dist/node/core/getTypeFromEntity.js +3 -0
- package/dist/node/core/getTypeFromEntity.js.map +1 -1
- package/dist/node/core/types/IHubDiscussion.js +3 -0
- package/dist/node/core/types/IHubDiscussion.js.map +1 -0
- package/dist/node/core/types/index.js +1 -0
- package/dist/node/core/types/index.js.map +1 -1
- package/dist/node/discussions/HubDiscussion.js +111 -0
- package/dist/node/discussions/HubDiscussion.js.map +1 -0
- package/dist/node/discussions/_internal/DiscussionBusinessRules.js +82 -0
- package/dist/node/discussions/_internal/DiscussionBusinessRules.js.map +1 -0
- package/dist/node/discussions/_internal/computeProps.js +35 -0
- package/dist/node/discussions/_internal/computeProps.js.map +1 -0
- package/dist/node/discussions/_internal/getPropertyMap.js +17 -0
- package/dist/node/discussions/_internal/getPropertyMap.js.map +1 -0
- package/dist/node/discussions/defaults.js +33 -0
- package/dist/node/discussions/defaults.js.map +1 -0
- package/dist/node/discussions/edit.js +88 -0
- package/dist/node/discussions/edit.js.map +1 -0
- package/dist/node/discussions/fetch.js +49 -0
- package/dist/node/discussions/fetch.js.map +1 -0
- package/dist/node/discussions/index.js +7 -0
- package/dist/node/discussions/index.js.map +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/permissions/HubPermissionPolicies.js +2 -0
- package/dist/node/permissions/HubPermissionPolicies.js.map +1 -1
- package/dist/node/permissions/types/Permission.js +2 -0
- package/dist/node/permissions/types/Permission.js.map +1 -1
- package/dist/types/content/_internal.d.ts +1 -0
- package/dist/types/core/HubItemEntity.d.ts +5 -0
- package/dist/types/core/types/HubEntityType.d.ts +1 -1
- package/dist/types/core/types/IHubDiscussion.d.ts +8 -0
- package/dist/types/core/types/IHubItemEntity.d.ts +4 -0
- package/dist/types/core/types/index.d.ts +1 -0
- package/dist/types/discussions/HubDiscussion.d.ts +44 -0
- package/dist/types/discussions/_internal/DiscussionBusinessRules.d.ts +27 -0
- package/dist/types/discussions/_internal/computeProps.d.ts +12 -0
- package/dist/types/discussions/_internal/getPropertyMap.d.ts +8 -0
- package/dist/types/discussions/defaults.d.ts +11 -0
- package/dist/types/discussions/edit.d.ts +29 -0
- package/dist/types/discussions/fetch.d.ts +20 -0
- package/dist/types/discussions/index.d.ts +3 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/permissions/types/Permission.d.ts +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/discussions/fetch.ts"],"names":[],"mappings":";;;AACA,iEAA0D;AAE1D,sCAA+C;AAC/C,0CAA+C;AAC/C,oCAAkC;AAClC,qEAAkE;AAClE,+DAA4D;AAC5D,2DAAwD;AAExD;;;;;;GAMG;AACI,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,cAA+B;IAE/B,IAAI,OAAO,CAAC;IACZ,IAAI,cAAM,CAAC,UAAU,CAAC,EAAE;QACtB,iBAAiB;QACjB,OAAO,GAAG,4BAAO,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,GAAG,qBAAa,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;KACrD;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,uBAAuB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC;AAfD,0CAeC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,uBAAuB,CAC3C,IAAW,EACX,cAA+B;IAE/B,MAAM,KAAK,GAAG,MAAM,2BAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,IAAI,+BAAc,CAA0B,+BAAc,EAAE,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAmB,CAAC;IACrE,OAAO,2BAAY,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AACzD,CAAC;AARD,0DAQC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./HubDiscussion"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./edit"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./fetch"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/discussions/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,iDAAuB;AACvB,kDAAwB"}
|
package/dist/node/index.js
CHANGED
|
@@ -19,6 +19,7 @@ tslib_1.__exportStar(require("./extent"), exports);
|
|
|
19
19
|
tslib_1.__exportStar(require("./groups"), exports);
|
|
20
20
|
tslib_1.__exportStar(require("./i18n"), exports);
|
|
21
21
|
tslib_1.__exportStar(require("./initiatives"), exports);
|
|
22
|
+
tslib_1.__exportStar(require("./discussions"), exports);
|
|
22
23
|
tslib_1.__exportStar(require("./items"), exports);
|
|
23
24
|
tslib_1.__exportStar(require("./models"), exports);
|
|
24
25
|
tslib_1.__exportStar(require("./objects"), exports);
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,yDAA+B;AAC/B,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAE7B,qDAA8C;AAKrC,yBALF,wBAAc,CAKE;AAJvB,qDAA8C;AAIrB,yBAJlB,wBAAc,CAIkB;AAHvC,yCAAkC;AAGO,mBAHlC,kBAAQ,CAGkC;AACjD,6BAAkC;AAAzB,4FAAA,IAAI,OAAA;AAAE,4FAAA,IAAI,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;gBACgB;AAChB,0BAA0B;;;;AAE1B,mDAAyB;AACzB,gDAAsB;AACtB,0DAAgC;AAChC,iEAAuC;AACvC,iDAAuB;AACvB,uDAA6B;AAC7B,oDAA0B;AAC1B,iDAAuB;AACvB,yDAA+B;AAC/B,sDAA4B;AAC5B,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,wDAA8B;AAC9B,wDAA8B;AAC9B,kDAAwB;AACxB,mDAAyB;AACzB,oDAA0B;AAC1B,gDAAsB;AACtB,kDAAwB;AACxB,wDAA8B;AAC9B,qDAA2B;AAC3B,oDAA0B;AAC1B,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB;AACxB,oDAA0B;AAC1B,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB;AACxB,uDAA6B;AAE7B,qDAA8C;AAKrC,yBALF,wBAAc,CAKE;AAJvB,qDAA8C;AAIrB,yBAJlB,wBAAc,CAIkB;AAHvC,yCAAkC;AAGO,mBAHlC,kBAAQ,CAGkC;AACjD,6BAAkC;AAAzB,4FAAA,IAAI,OAAA;AAAE,4FAAA,IAAI,OAAA"}
|
|
@@ -4,6 +4,7 @@ exports.getPermissionPolicy = exports.HubPermissionsPolicies = void 0;
|
|
|
4
4
|
const InitiativeBusinessRules_1 = require("../initiatives/_internal/InitiativeBusinessRules");
|
|
5
5
|
const ProjectBusinessRules_1 = require("../projects/_internal/ProjectBusinessRules");
|
|
6
6
|
const SiteBusinessRules_1 = require("../sites/_internal/SiteBusinessRules");
|
|
7
|
+
const DiscussionBusinessRules_1 = require("../discussions/_internal/DiscussionBusinessRules");
|
|
7
8
|
// Examples of possible Permission Policies
|
|
8
9
|
// const DiscussionPermissionPolicies: IPermissionPolicy[] = [
|
|
9
10
|
// {
|
|
@@ -64,6 +65,7 @@ exports.HubPermissionsPolicies = [
|
|
|
64
65
|
...SiteBusinessRules_1.SitesPermissionPolicies,
|
|
65
66
|
...ProjectBusinessRules_1.ProjectPermissionPolicies,
|
|
66
67
|
...InitiativeBusinessRules_1.InitiativePermissionPolicies,
|
|
68
|
+
...DiscussionBusinessRules_1.DiscussionPermissionPolicies,
|
|
67
69
|
];
|
|
68
70
|
/**
|
|
69
71
|
* Get the policies defined for a specific permission
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":";;;AAAA,8FAAgG;AAChG,qFAAuF;AACvF,4EAA+E;
|
|
1
|
+
{"version":3,"file":"HubPermissionPolicies.js","sourceRoot":"","sources":["../../../src/permissions/HubPermissionPolicies.ts"],"names":[],"mappings":";;;AAAA,8FAAgG;AAChG,qFAAuF;AACvF,4EAA+E;AAC/E,8FAAgG;AAIhG,2CAA2C;AAC3C,8DAA8D;AAC9D,MAAM;AACN,gDAAgD;AAChD,2BAA2B;AAC3B,mCAAmC;AACnC,8CAA8C;AAC9C,OAAO;AACP,MAAM;AACN,uDAAuD;AACvD,mCAAmC;AACnC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,iDAAiD;AACjD,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,UAAU;AACV,2CAA2C;AAC3C,uCAAuC;AACvC,oCAAoC;AACpC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,gDAAgD;AAChD,mCAAmC;AACnC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,MAAM;AACN,6CAA6C;AAC7C,mCAAmC;AACnC,2BAA2B;AAC3B,8CAA8C;AAC9C,oBAAoB;AACpB,UAAU;AACV,2CAA2C;AAC3C,gCAAgC;AAChC,kCAAkC;AAClC,WAAW;AACX,SAAS;AACT,OAAO;AACP,KAAK;AAEL;;GAEG;AACU,QAAA,sBAAsB,GAAwB;IACzD,GAAG,2CAAuB;IAC1B,GAAG,gDAAyB;IAC5B,GAAG,sDAA4B;IAC/B,GAAG,sDAA4B;CAChC,CAAC;AAEF;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,UAAsB;IACxD,OAAO,8BAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;AACzE,CAAC;AAFD,kDAEC"}
|
|
@@ -4,6 +4,7 @@ exports.isPermission = void 0;
|
|
|
4
4
|
const ProjectBusinessRules_1 = require("../../projects/_internal/ProjectBusinessRules");
|
|
5
5
|
const SiteBusinessRules_1 = require("../../sites/_internal/SiteBusinessRules");
|
|
6
6
|
const InitiativeBusinessRules_1 = require("../../initiatives/_internal/InitiativeBusinessRules");
|
|
7
|
+
const DiscussionBusinessRules_1 = require("../../discussions/_internal/DiscussionBusinessRules");
|
|
7
8
|
/**
|
|
8
9
|
* Defines the values for Permissions
|
|
9
10
|
* It's critical that the arrays defined in the modules use `as const`
|
|
@@ -13,6 +14,7 @@ const validPermissions = [
|
|
|
13
14
|
...SiteBusinessRules_1.SitePermissions,
|
|
14
15
|
...ProjectBusinessRules_1.ProjectPermissions,
|
|
15
16
|
...InitiativeBusinessRules_1.InitiativePermissions,
|
|
17
|
+
...DiscussionBusinessRules_1.DiscussionPermissions,
|
|
16
18
|
];
|
|
17
19
|
/**
|
|
18
20
|
* Validate a Permission
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../../src/permissions/types/Permission.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AACnF,+EAA0E;AAC1E,iGAA4F;AAE5F;;;;GAIG;AACH,MAAM,gBAAgB,GAAG;IACvB,GAAG,mCAAe;IAClB,GAAG,yCAAkB;IACrB,GAAG,+CAAqB;CAChB,CAAC;AAOX;;;;GAIG;AACH,SAAgB,YAAY,CAAC,eAAuB;IAClD,OAAO,gBAAgB,CAAC,QAAQ,CAAC,eAA6B,CAAC,CAAC;AAClE,CAAC;AAFD,oCAEC"}
|
|
1
|
+
{"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../../src/permissions/types/Permission.ts"],"names":[],"mappings":";;;AAAA,wFAAmF;AACnF,+EAA0E;AAC1E,iGAA4F;AAC5F,iGAA4F;AAE5F;;;;GAIG;AACH,MAAM,gBAAgB,GAAG;IACvB,GAAG,mCAAe;IAClB,GAAG,yCAAkB;IACrB,GAAG,+CAAqB;IACxB,GAAG,+CAAqB;CAChB,CAAC;AAOX;;;;GAIG;AACH,SAAgB,YAAY,CAAC,eAAuB;IAClD,OAAO,gBAAgB,CAAC,QAAQ,CAAC,eAA6B,CAAC,CAAC;AAClE,CAAC;AAFD,oCAEC"}
|
|
@@ -76,6 +76,11 @@ export declare abstract class HubItemEntity<T extends IHubItemEntity> implements
|
|
|
76
76
|
* @returns
|
|
77
77
|
*/
|
|
78
78
|
get canDelete(): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* The orgId of the Entity, if available
|
|
81
|
+
* @returns the entity orgId, when available
|
|
82
|
+
*/
|
|
83
|
+
get orgId(): string;
|
|
79
84
|
/**
|
|
80
85
|
* Share the Entity with the specified group id
|
|
81
86
|
* @param groupId
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type HubEntityType = "site" | "project" | "initiative" | "page";
|
|
1
|
+
export declare type HubEntityType = "site" | "project" | "initiative" | "page" | "discussion";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IWithPermissions, IWithSlug } from "../traits";
|
|
2
|
+
import { IHubItemEntity } from "./IHubItemEntity";
|
|
3
|
+
/**
|
|
4
|
+
* DRAFT: Under development and more properties will likely be added
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export interface IHubDiscussion extends IHubItemEntity, IWithSlug, IWithPermissions {
|
|
8
|
+
}
|
|
@@ -2,6 +2,7 @@ export * from "./HubEntity";
|
|
|
2
2
|
export * from "./HubEntityType";
|
|
3
3
|
export * from "./IHubContent";
|
|
4
4
|
export * from "./IHubContentEnrichments";
|
|
5
|
+
export * from "./IHubDiscussion";
|
|
5
6
|
export * from "./IHubEntityBase";
|
|
6
7
|
export * from "./IHubEvent";
|
|
7
8
|
export * from "./IHubImage";
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IWithSharingBehavior, IWithStoreBehavior } from "../core/behaviors";
|
|
2
|
+
import { IArcGISContext } from "../ArcGISContext";
|
|
3
|
+
import { IHubDiscussion } from "../core/types";
|
|
4
|
+
import { HubItemEntity } from "../core/HubItemEntity";
|
|
5
|
+
/**
|
|
6
|
+
* Hub Discussion Class
|
|
7
|
+
*/
|
|
8
|
+
export declare class HubDiscussion extends HubItemEntity<IHubDiscussion> implements IWithStoreBehavior<IHubDiscussion>, IWithSharingBehavior {
|
|
9
|
+
/**
|
|
10
|
+
* Create an instance from an IHubDiscussion object
|
|
11
|
+
* @param json JSON object to create a HubDiscussion from
|
|
12
|
+
* @param context ArcGIS context
|
|
13
|
+
* @returns a HubDiscussion
|
|
14
|
+
*/
|
|
15
|
+
static fromJson(json: Partial<IHubDiscussion>, context: IArcGISContext): HubDiscussion;
|
|
16
|
+
/**
|
|
17
|
+
* Create a new HubDiscussion, returning a HubDiscussion instance.
|
|
18
|
+
* Note: This does not persist the Discussion into the backing store
|
|
19
|
+
* @param partialDiscussion a partial IHubDiscussion
|
|
20
|
+
* @param context ArcGIS context
|
|
21
|
+
* @returns promise that resolves a HubDiscussion
|
|
22
|
+
*/
|
|
23
|
+
static create(partialDiscussion: Partial<IHubDiscussion>, context: IArcGISContext, save?: boolean): Promise<HubDiscussion>;
|
|
24
|
+
/**
|
|
25
|
+
* Fetch a Discussion from the backing store and return a HubDiscussion instance.
|
|
26
|
+
* @param identifier slug or item id
|
|
27
|
+
* @param context ArcGIS context
|
|
28
|
+
* @returns promise that resolves a HubDiscussion
|
|
29
|
+
*/
|
|
30
|
+
static fetch(identifier: string, context: IArcGISContext): Promise<HubDiscussion>;
|
|
31
|
+
private static applyDefaults;
|
|
32
|
+
/**
|
|
33
|
+
* Apply a new state to the instance
|
|
34
|
+
* @param changes A partial IHubDiscussion
|
|
35
|
+
*/
|
|
36
|
+
update(changes: Partial<IHubDiscussion>): void;
|
|
37
|
+
save(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete the HubDiscussion from the store
|
|
40
|
+
* set a flag to indicate that it is destroyed
|
|
41
|
+
* @returns a promise
|
|
42
|
+
*/
|
|
43
|
+
delete(): Promise<void>;
|
|
44
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { EntityCapabilities, ICapabilityPermission } from "../../capabilities";
|
|
2
|
+
import { IPermissionPolicy } from "../../permissions";
|
|
3
|
+
/**
|
|
4
|
+
* Default capabilities for a Discussion. If not listed here, the capability will not be available
|
|
5
|
+
* This hash is combined with the capabilities hash stored in the item data. Regardless of what
|
|
6
|
+
* properties are defined in the item data, only the capabilities defined here will be available
|
|
7
|
+
* @private
|
|
8
|
+
*/
|
|
9
|
+
export declare const DiscussionDefaultCapabilities: EntityCapabilities;
|
|
10
|
+
/**
|
|
11
|
+
* List of all the Discussion Capability Permissions
|
|
12
|
+
* These are considered Hub Business Rules and are not intended
|
|
13
|
+
* to be modified by consumers
|
|
14
|
+
* @private
|
|
15
|
+
*/
|
|
16
|
+
export declare const DiscussionCapabilityPermissions: ICapabilityPermission[];
|
|
17
|
+
/**
|
|
18
|
+
* Discussion Permission Policies
|
|
19
|
+
* These define the requirements any user must meet to perform related actions
|
|
20
|
+
* @private
|
|
21
|
+
*/
|
|
22
|
+
export declare const DiscussionPermissions: readonly ["hub:discussion:create", "hub:discussion:delete", "hub:discussion:edit", "hub:discussion:view"];
|
|
23
|
+
/**
|
|
24
|
+
* Discussion permission policies
|
|
25
|
+
* @private
|
|
26
|
+
*/
|
|
27
|
+
export declare const DiscussionPermissionPolicies: IPermissionPolicy[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
2
|
+
import { IModel } from "../../types";
|
|
3
|
+
import { IHubDiscussion } from "../../core";
|
|
4
|
+
/**
|
|
5
|
+
* Given a model and a Discussion, set various computed properties that can't be directly mapped
|
|
6
|
+
* @private
|
|
7
|
+
* @param model
|
|
8
|
+
* @param discussion
|
|
9
|
+
* @param requestOptions
|
|
10
|
+
* @returns an IHubDiscussion
|
|
11
|
+
*/
|
|
12
|
+
export declare function computeProps(model: IModel, discussion: Partial<IHubDiscussion>, requestOptions: IRequestOptions): IHubDiscussion;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IPropertyMap } from "../../core/_internal/PropertyMapper";
|
|
2
|
+
/**
|
|
3
|
+
* Returns an Array of IPropertyMap objects
|
|
4
|
+
* that define the projection of properties from a IModel to an IHubDiscussion
|
|
5
|
+
* @returns an IPropertyMap array
|
|
6
|
+
* @private
|
|
7
|
+
*/
|
|
8
|
+
export declare function getPropertyMap(): IPropertyMap[];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IHubDiscussion } from "../core/types";
|
|
2
|
+
import { IModel } from "../types";
|
|
3
|
+
export declare const HUB_DISCUSSION_ITEM_TYPE = "Discussion";
|
|
4
|
+
/**
|
|
5
|
+
* Default values of a IHubDiscussion
|
|
6
|
+
*/
|
|
7
|
+
export declare const DEFAULT_DISCUSSION: Partial<IHubDiscussion>;
|
|
8
|
+
/**
|
|
9
|
+
* Default values for a new HubDiscussion Model
|
|
10
|
+
*/
|
|
11
|
+
export declare const DEFAULT_DISCUSSION_MODEL: IModel;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
2
|
+
import { IHubDiscussion } from "../core/types";
|
|
3
|
+
/**
|
|
4
|
+
* @private
|
|
5
|
+
* Create a new Hub Discussion item
|
|
6
|
+
*
|
|
7
|
+
* Minimal properties are name and orgUrlKey
|
|
8
|
+
*
|
|
9
|
+
* @param partialDiscussion a partial discussion
|
|
10
|
+
* @param requestOptions user request options
|
|
11
|
+
* @returns promise that resolves a IHubDiscussion
|
|
12
|
+
*/
|
|
13
|
+
export declare function createDiscussion(partialDiscussion: Partial<IHubDiscussion>, requestOptions: IUserRequestOptions): Promise<IHubDiscussion>;
|
|
14
|
+
/**
|
|
15
|
+
* @private
|
|
16
|
+
* Update a Hub Discussion
|
|
17
|
+
* @param discussion the discussion to update
|
|
18
|
+
* @param requestOptions user request options
|
|
19
|
+
* @returns promise that resolves a IHubDiscussion
|
|
20
|
+
*/
|
|
21
|
+
export declare function updateDiscussion(discussion: IHubDiscussion, requestOptions: IUserRequestOptions): Promise<IHubDiscussion>;
|
|
22
|
+
/**
|
|
23
|
+
* @private
|
|
24
|
+
* Remove a Hub Discussion
|
|
25
|
+
* @param id the discussion item id
|
|
26
|
+
* @param requestOptions request options
|
|
27
|
+
* @returns a promise
|
|
28
|
+
*/
|
|
29
|
+
export declare function deleteDiscussion(id: string, requestOptions: IUserRequestOptions): Promise<void>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
2
|
+
import { IItem } from "@esri/arcgis-rest-portal";
|
|
3
|
+
import { IHubDiscussion } from "../core/types";
|
|
4
|
+
/**
|
|
5
|
+
* @private
|
|
6
|
+
* Get a Discussion by id or slug
|
|
7
|
+
* @param identifier item id or slug
|
|
8
|
+
* @param requestOptions request options
|
|
9
|
+
* @returns a promise that resolves a IHubDiscussion
|
|
10
|
+
*/
|
|
11
|
+
export declare function fetchDiscussion(identifier: string, requestOptions: IRequestOptions): Promise<IHubDiscussion>;
|
|
12
|
+
/**
|
|
13
|
+
* @private
|
|
14
|
+
* Convert a Hub Discussion Item into a Hub Discussion, fetching any additional
|
|
15
|
+
* information that may be required
|
|
16
|
+
* @param item the discussion item
|
|
17
|
+
* @param auth request options
|
|
18
|
+
* @returns a promise that resolves a IHubDiscussion
|
|
19
|
+
*/
|
|
20
|
+
export declare function convertItemToDiscussion(item: IItem, requestOptions: IRequestOptions): Promise<IHubDiscussion>;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
* It's critical that the arrays defined in the modules use `as const`
|
|
4
4
|
* otherwise Permission devolves into just a string type
|
|
5
5
|
*/
|
|
6
|
-
declare const validPermissions: readonly ["hub:site:create", "hub:site:delete", "hub:site:edit", "hub:site:view", "hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view"];
|
|
6
|
+
declare const validPermissions: readonly ["hub:site:create", "hub:site:delete", "hub:site:edit", "hub:site:view", "hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view", "hub:discussion:create", "hub:discussion:delete", "hub:discussion:edit", "hub:discussion:view"];
|
|
7
7
|
/**
|
|
8
8
|
* Defines the possible values for Permissions
|
|
9
9
|
*/
|
|
10
|
-
export declare type Permission = typeof validPermissions[number];
|
|
10
|
+
export declare type Permission = (typeof validPermissions)[number];
|
|
11
11
|
/**
|
|
12
12
|
* Validate a Permission
|
|
13
13
|
* @param permission
|