@esri/hub-common 13.22.0 → 13.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/EntityEditor.js +39 -0
- package/dist/esm/core/EntityEditor.js.map +1 -0
- package/dist/esm/core/HubItemEntity.js +15 -0
- package/dist/esm/core/HubItemEntity.js.map +1 -1
- package/dist/esm/core/index.js.map +1 -1
- package/dist/esm/core/schemas/getEntityEditorSchemas.js +7 -1
- package/dist/esm/core/schemas/getEntityEditorSchemas.js.map +1 -1
- package/dist/esm/core/schemas/internal/getCategoryItems.js +34 -0
- package/dist/esm/core/schemas/internal/getCategoryItems.js.map +1 -0
- package/dist/esm/core/schemas/internal/getFeaturedContentCatalogs.js +21 -0
- package/dist/esm/core/schemas/internal/getFeaturedContentCatalogs.js.map +1 -0
- package/dist/esm/core/schemas/internal/getFeaturedImageUrl.js +9 -0
- package/dist/esm/core/schemas/internal/getFeaturedImageUrl.js.map +1 -0
- package/dist/esm/core/schemas/internal/getLocationExtent.js +11 -0
- package/dist/esm/core/schemas/internal/getLocationExtent.js.map +1 -0
- package/dist/esm/core/schemas/internal/getLocationOptions.js +56 -0
- package/dist/esm/core/schemas/internal/getLocationOptions.js.map +1 -0
- package/dist/esm/core/schemas/internal/getSharableGroupsComboBoxItems.js +27 -0
- package/dist/esm/core/schemas/internal/getSharableGroupsComboBoxItems.js.map +1 -0
- package/dist/esm/core/schemas/internal/getTagItems.js +37 -0
- package/dist/esm/core/schemas/internal/getTagItems.js.map +1 -0
- package/dist/esm/core/types/HubEntityEditor.js +1 -0
- package/dist/esm/core/types/HubEntityEditor.js.map +1 -0
- package/dist/esm/core/types/IHubProject.js.map +1 -1
- package/dist/esm/core/types/index.js +5 -4
- package/dist/esm/core/types/index.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/projects/HubProject.js +92 -13
- package/dist/esm/projects/HubProject.js.map +1 -1
- package/dist/esm/projects/_internal/ProjectBusinessRules.js +7 -0
- package/dist/esm/projects/_internal/ProjectBusinessRules.js.map +1 -1
- package/dist/esm/projects/_internal/ProjectSchema.js +3 -3
- package/dist/esm/projects/_internal/ProjectSchema.js.map +1 -1
- package/dist/esm/projects/_internal/ProjectUiSchemaCreate.js +1 -1
- package/dist/esm/projects/_internal/ProjectUiSchemaCreate.js.map +1 -1
- package/dist/esm/projects/_internal/getProjectEditorConfigOptions.js +63 -0
- package/dist/esm/projects/_internal/getProjectEditorConfigOptions.js.map +1 -0
- package/dist/esm/projects/edit.js +23 -7
- package/dist/esm/projects/edit.js.map +1 -1
- package/dist/esm/sites/HubSites.js +12 -26
- package/dist/esm/sites/HubSites.js.map +1 -1
- package/dist/esm/urls/cacheBustUrl.js +13 -0
- package/dist/esm/urls/cacheBustUrl.js.map +1 -0
- package/dist/esm/urls/index.js +1 -0
- package/dist/esm/urls/index.js.map +1 -1
- package/dist/node/core/EntityEditor.js +43 -0
- package/dist/node/core/EntityEditor.js.map +1 -0
- package/dist/node/core/HubItemEntity.js +15 -0
- package/dist/node/core/HubItemEntity.js.map +1 -1
- package/dist/node/core/index.js.map +1 -1
- package/dist/node/core/schemas/getEntityEditorSchemas.js +7 -1
- package/dist/node/core/schemas/getEntityEditorSchemas.js.map +1 -1
- package/dist/node/core/schemas/internal/getCategoryItems.js +38 -0
- package/dist/node/core/schemas/internal/getCategoryItems.js.map +1 -0
- package/dist/node/core/schemas/internal/getFeaturedContentCatalogs.js +25 -0
- package/dist/node/core/schemas/internal/getFeaturedContentCatalogs.js.map +1 -0
- package/dist/node/core/schemas/internal/getFeaturedImageUrl.js +13 -0
- package/dist/node/core/schemas/internal/getFeaturedImageUrl.js.map +1 -0
- package/dist/node/core/schemas/internal/getLocationExtent.js +15 -0
- package/dist/node/core/schemas/internal/getLocationExtent.js.map +1 -0
- package/dist/node/core/schemas/internal/getLocationOptions.js +60 -0
- package/dist/node/core/schemas/internal/getLocationOptions.js.map +1 -0
- package/dist/node/core/schemas/internal/getSharableGroupsComboBoxItems.js +31 -0
- package/dist/node/core/schemas/internal/getSharableGroupsComboBoxItems.js.map +1 -0
- package/dist/node/core/schemas/internal/getTagItems.js +41 -0
- package/dist/node/core/schemas/internal/getTagItems.js.map +1 -0
- package/dist/node/core/types/HubEntityEditor.js +3 -0
- package/dist/node/core/types/HubEntityEditor.js.map +1 -0
- package/dist/node/core/types/IHubProject.js.map +1 -1
- package/dist/node/core/types/index.js +5 -4
- package/dist/node/core/types/index.js.map +1 -1
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/projects/HubProject.js +93 -14
- package/dist/node/projects/HubProject.js.map +1 -1
- package/dist/node/projects/_internal/ProjectBusinessRules.js +7 -0
- package/dist/node/projects/_internal/ProjectBusinessRules.js.map +1 -1
- package/dist/node/projects/_internal/ProjectSchema.js +5 -5
- package/dist/node/projects/_internal/ProjectSchema.js.map +1 -1
- package/dist/node/projects/_internal/ProjectUiSchemaCreate.js +1 -1
- package/dist/node/projects/_internal/ProjectUiSchemaCreate.js.map +1 -1
- package/dist/node/projects/_internal/getProjectEditorConfigOptions.js +67 -0
- package/dist/node/projects/_internal/getProjectEditorConfigOptions.js.map +1 -0
- package/dist/node/projects/edit.js +24 -7
- package/dist/node/projects/edit.js.map +1 -1
- package/dist/node/sites/HubSites.js +12 -27
- package/dist/node/sites/HubSites.js.map +1 -1
- package/dist/node/urls/cacheBustUrl.js +16 -0
- package/dist/node/urls/cacheBustUrl.js.map +1 -0
- package/dist/node/urls/index.js +1 -0
- package/dist/node/urls/index.js.map +1 -1
- package/dist/types/core/EntityEditor.d.ts +13 -0
- package/dist/types/core/behaviors/IWithEditorBehavior.d.ts +23 -9
- package/dist/types/core/schemas/internal/getCategoryItems.d.ts +11 -0
- package/dist/types/core/schemas/internal/getFeaturedContentCatalogs.d.ts +9 -0
- package/dist/types/core/schemas/internal/getFeaturedImageUrl.d.ts +3 -0
- package/dist/types/core/schemas/internal/getLocationExtent.d.ts +7 -0
- package/dist/types/core/schemas/internal/getLocationOptions.d.ts +16 -0
- package/dist/types/core/schemas/internal/getSharableGroupsComboBoxItems.d.ts +7 -0
- package/dist/types/core/schemas/internal/getTagItems.d.ts +12 -0
- package/dist/types/core/schemas/types.d.ts +6 -0
- package/dist/types/core/types/HubEntityEditor.d.ts +11 -0
- package/dist/types/core/types/IHubLocation.d.ts +12 -0
- package/dist/types/core/types/IHubProject.d.ts +10 -0
- package/dist/types/core/types/index.d.ts +5 -4
- package/dist/types/index.d.ts +1 -0
- package/dist/types/permissions/types/Permission.d.ts +1 -1
- package/dist/types/projects/HubProject.d.ts +21 -13
- package/dist/types/projects/_internal/ProjectBusinessRules.d.ts +1 -1
- package/dist/types/projects/_internal/ProjectSchema.d.ts +2 -2
- package/dist/types/projects/_internal/getProjectEditorConfigOptions.d.ts +10 -0
- package/dist/types/projects/edit.d.ts +12 -7
- package/dist/types/sites/HubSites.d.ts +0 -8
- package/dist/types/urls/cacheBustUrl.d.ts +5 -0
- package/dist/types/urls/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.enrichSiteSearchResult = exports.convertItemToSite = exports.
|
|
3
|
+
exports.enrichSiteSearchResult = exports.convertItemToSite = exports.convertModelToSite = exports.fetchSite = exports.deleteSite = exports.updateSite = exports.createSite = exports.ENTERPRISE_SITE_ITEM_TYPE = exports.HUB_SITE_ITEM_TYPE = 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
6
|
const fetchSiteModel_1 = require("./fetchSiteModel");
|
|
@@ -260,25 +260,26 @@ exports.createSite = createSite;
|
|
|
260
260
|
* @returns
|
|
261
261
|
*/
|
|
262
262
|
async function updateSite(site, requestOptions) {
|
|
263
|
+
// verify that the slug is unique, excluding the current site
|
|
264
|
+
site.slug = await slugs_1.getUniqueSlug({ slug: site.slug, existingId: site.id }, requestOptions);
|
|
263
265
|
site.typeKeywords = discussions_1.setDiscussableKeyword(site.typeKeywords, site.isDiscussable);
|
|
264
|
-
// convert IHubSite to model
|
|
265
|
-
const siteModel = convertSiteToModel(site, requestOptions);
|
|
266
266
|
// Fetch backing model from the portal
|
|
267
267
|
const currentModel = await models_1.getModel(site.id, requestOptions);
|
|
268
|
+
// Note: Although we are fetching the model, and applying changes onto it,
|
|
269
|
+
// we are not attempting to handle "concurrent edit" conflict resolution
|
|
270
|
+
// but this is where we would apply that sort of logic
|
|
271
|
+
const mapper = new PropertyMapper_1.PropertyMapper(getPropertyMap_1.getPropertyMap());
|
|
272
|
+
const modelToUpdate = mapper.entityToStore(site, currentModel);
|
|
268
273
|
// handle any domain changes
|
|
269
|
-
await _internal_1.handleDomainChanges(
|
|
270
|
-
if (siteModel.item.properties.slug !== currentModel.item.properties.slug) {
|
|
271
|
-
// ensure slug to keywords
|
|
272
|
-
siteModel.item.typeKeywords = slugs_1.setSlugKeyword(siteModel.item.typeKeywords, siteModel.item.properties.slug);
|
|
273
|
-
}
|
|
274
|
+
await _internal_1.handleDomainChanges(modelToUpdate, currentModel, requestOptions);
|
|
274
275
|
// The following props are currently affected by in-memory migrations,
|
|
275
276
|
// so we replace them with their canonical values so as to not overwrite
|
|
276
277
|
// them. Eventually these changes will be persisted in AGO.
|
|
277
|
-
|
|
278
|
-
|
|
278
|
+
modelToUpdate.data.catalog = currentModel.data.catalog;
|
|
279
|
+
modelToUpdate.data.values.searchCategories =
|
|
279
280
|
currentModel.data.values.searchCategories;
|
|
280
281
|
// send updates to the Portal API and get back the updated site model
|
|
281
|
-
const updatedSiteModel = await models_1.updateModel(
|
|
282
|
+
const updatedSiteModel = await models_1.updateModel(modelToUpdate, requestOptions);
|
|
282
283
|
// convert that back into a IHubSite and return it
|
|
283
284
|
const updatedSite = convertModelToSite(updatedSiteModel, requestOptions);
|
|
284
285
|
return updatedSite;
|
|
@@ -342,22 +343,6 @@ function convertModelToSite(model, requestOptions) {
|
|
|
342
343
|
return computeProps_1.computeProps(model, site, requestOptions);
|
|
343
344
|
}
|
|
344
345
|
exports.convertModelToSite = convertModelToSite;
|
|
345
|
-
/**
|
|
346
|
-
* @internal
|
|
347
|
-
* Convert an IHubSite into an IModel
|
|
348
|
-
* @param site
|
|
349
|
-
* @param requestOptions
|
|
350
|
-
* @returns
|
|
351
|
-
*/
|
|
352
|
-
function convertSiteToModel(site, _requestOptions) {
|
|
353
|
-
// create the mapper
|
|
354
|
-
const mapper = new PropertyMapper_1.PropertyMapper(getPropertyMap_1.getPropertyMap());
|
|
355
|
-
// applying the site onto the default model ensures that a minimum
|
|
356
|
-
// set of properties exist, regardless what may have been done to
|
|
357
|
-
// the IHubSite pojo
|
|
358
|
-
return mapper.entityToStore(site, util_1.cloneObject(DEFAULT_SITE_MODEL));
|
|
359
|
-
}
|
|
360
|
-
exports.convertSiteToModel = convertSiteToModel;
|
|
361
346
|
/**
|
|
362
347
|
* Convert a Hub Site Application item into a Hub Site, fetching any
|
|
363
348
|
* additional information that may be required
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubSites.js","sourceRoot":"","sources":["../../../src/sites/HubSites.ts"],"names":[],"mappings":";;;AACA,iEAA+E;AAC/E,sDAAkD;AAClD,qDAAkD;AAClD,qEAAkE;AAClE,2CAAkD;AAElD,wDAA6D;AAC7D,mEAAgE;AAChE,oFAA8E;AAC9E,mFAAgF;AAChF,2DAAwD;AACxD,+DAA4D;AAE5D,
|
|
1
|
+
{"version":3,"file":"HubSites.js","sourceRoot":"","sources":["../../../src/sites/HubSites.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cacheBustUrl = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* artifically update a query param associated with a url to force
|
|
6
|
+
* the browser to load it from file rather than from cache
|
|
7
|
+
*/
|
|
8
|
+
exports.cacheBustUrl = (url, param = "v") => {
|
|
9
|
+
if (!url) {
|
|
10
|
+
return url;
|
|
11
|
+
}
|
|
12
|
+
const delimiter = url.indexOf("?") > -1 ? "&" : "?";
|
|
13
|
+
url += `${delimiter}${param}=${new Date().getTime()}`;
|
|
14
|
+
return url;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=cacheBustUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cacheBustUrl.js","sourceRoot":"","sources":["../../../src/urls/cacheBustUrl.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACU,QAAA,YAAY,GAAG,CAAC,GAAW,EAAE,KAAK,GAAG,GAAG,EAAU,EAAE;IAC/D,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,GAAG,CAAC;KACZ;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;IAEtD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
package/dist/node/urls/index.js
CHANGED
|
@@ -24,6 +24,7 @@ tslib_1.__exportStar(require("./getGroupHomeUrl"), exports);
|
|
|
24
24
|
tslib_1.__exportStar(require("./getUserHomeUrl"), exports);
|
|
25
25
|
tslib_1.__exportStar(require("./get-campaign-url"), exports);
|
|
26
26
|
tslib_1.__exportStar(require("./is-safe-redirect-url"), exports);
|
|
27
|
+
tslib_1.__exportStar(require("./cacheBustUrl"), exports);
|
|
27
28
|
// For some reason, if this is exported here, random tests
|
|
28
29
|
// start failing. Resolved by moving to the root index
|
|
29
30
|
// export * from "./getCardModelUrl";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":";;;;AAAA,kCAAqC;AACrC,sDAA4B;AAC5B,qEAA2C;AAC3C,+DAAqC;AACrC,2DAAiC;AACjC,2DAAiC;AACjC,6DAAmC;AACnC,2DAAiC;AACjC,qEAA2C;AAC3C,0DAAgC;AAChC,wEAA8C;AAC9C,oEAA0C;AAC1C,8DAAoC;AACpC,6DAAmC;AACnC,8DAAoC;AACpC,wEAA8C;AAC9C,mEAAyC;AACzC,oEAA0C;AAC1C,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,iEAAuC;AACvC,0DAA0D;AAC1D,sDAAsD;AACtD,qCAAqC;AAErC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACU,QAAA,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,iBAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":";;;;AAAA,kCAAqC;AACrC,sDAA4B;AAC5B,qEAA2C;AAC3C,+DAAqC;AACrC,2DAAiC;AACjC,2DAAiC;AACjC,6DAAmC;AACnC,2DAAiC;AACjC,qEAA2C;AAC3C,0DAAgC;AAChC,wEAA8C;AAC9C,oEAA0C;AAC1C,8DAAoC;AACpC,6DAAmC;AACnC,8DAAoC;AACpC,wEAA8C;AAC9C,mEAAyC;AACzC,oEAA0C;AAC1C,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AACnC,iEAAuC;AACvC,yDAA+B;AAC/B,0DAA0D;AAC1D,sDAAsD;AACtD,qCAAqC;AAErC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACU,QAAA,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,iBAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IArcGISContext } from "../ArcGISContext";
|
|
2
|
+
import { IEditorConfig, IWithEditorBehavior } from "./behaviors";
|
|
3
|
+
import { EditorType } from "./schemas";
|
|
4
|
+
import { HubEntity } from "./types/HubEntity";
|
|
5
|
+
import { HubEntityEditor, IEntityEditorContext } from "./types/HubEntityEditor";
|
|
6
|
+
export declare class EntityEditor {
|
|
7
|
+
instance: IWithEditorBehavior;
|
|
8
|
+
private constructor();
|
|
9
|
+
static fromEntity(entity: HubEntity, context: IArcGISContext): EntityEditor;
|
|
10
|
+
getConfig(i18nScope: string, type: EditorType): Promise<IEditorConfig>;
|
|
11
|
+
toEditor(editorContext?: IEntityEditorContext): HubEntityEditor;
|
|
12
|
+
save(editor: HubEntityEditor): Promise<HubEntity>;
|
|
13
|
+
}
|
|
@@ -1,17 +1,31 @@
|
|
|
1
|
-
import { IConfigurationSchema, IUiSchema,
|
|
2
|
-
|
|
3
|
-
* DEPRECATED: the following will be removed at next breaking version
|
|
4
|
-
* we will be shifting towards the EditorType defined in the schemas
|
|
5
|
-
* directory
|
|
6
|
-
*/
|
|
7
|
-
export declare type EditorConfigType = "create" | "edit";
|
|
1
|
+
import { IConfigurationSchema, IUiSchema, EditorType } from "../schemas";
|
|
2
|
+
import { HubEntity, HubEntityEditor, IEntityEditorContext } from "../types";
|
|
8
3
|
export interface IEditorConfig {
|
|
9
4
|
schema: IConfigurationSchema;
|
|
10
5
|
uiSchema: IUiSchema;
|
|
11
6
|
}
|
|
12
7
|
/**
|
|
13
|
-
*
|
|
8
|
+
* Functions that are used by the arcgis-hub-entity-editor component
|
|
14
9
|
*/
|
|
15
10
|
export interface IWithEditorBehavior {
|
|
16
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Get the Entity's ui and schema for the editor
|
|
13
|
+
* @param i18nScope
|
|
14
|
+
* @param type
|
|
15
|
+
* @param options
|
|
16
|
+
*/
|
|
17
|
+
getEditorConfig(i18nScope: string, type: EditorType): Promise<IEditorConfig>;
|
|
18
|
+
/**
|
|
19
|
+
* Convert the entity into it's "Editor" structure.
|
|
20
|
+
* This should only be used by the arcgis-hub-entity-editor component.
|
|
21
|
+
* For general use, see the `toJson():<T>` method
|
|
22
|
+
*/
|
|
23
|
+
toEditor(editorContext: IEntityEditorContext): HubEntityEditor;
|
|
24
|
+
/**
|
|
25
|
+
* Update the internal Entity from the "Editor" structure.
|
|
26
|
+
* This should only be used by the arcgis-hub-entity-editor component.
|
|
27
|
+
* For general use, see the `update(Partial<T>)` method
|
|
28
|
+
* @param values
|
|
29
|
+
*/
|
|
30
|
+
fromEditor(editor: HubEntityEditor): Promise<HubEntity>;
|
|
17
31
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IHubRequestOptions } from "../../../types";
|
|
2
|
+
import { IUiSchemaComboboxItem } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Fetch the categorySchema for all the categories, including
|
|
5
|
+
* the ones with 0 count, then recursively collet all the child
|
|
6
|
+
* categories on the deepest level. Parse into a format that
|
|
7
|
+
* can be consumed by the combobox field
|
|
8
|
+
*
|
|
9
|
+
* TODO: render nested categories in combobox
|
|
10
|
+
*/
|
|
11
|
+
export declare function getCategoryItems(orgId: string, hubRequestOptions: IHubRequestOptions): Promise<IUiSchemaComboboxItem[]>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IUser } from "@esri/arcgis-rest-portal";
|
|
2
|
+
/**
|
|
3
|
+
* Return a catalog structured for picking featured content.
|
|
4
|
+
* @param user
|
|
5
|
+
* @returns
|
|
6
|
+
*/
|
|
7
|
+
export declare function getFeaturedContentCatalogs(user: IUser): {
|
|
8
|
+
catalogs: import("../../..").IHubCatalog[];
|
|
9
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IHubRequestOptions } from "../../../types";
|
|
2
|
+
import { HubEntity } from "../../types/HubEntity";
|
|
3
|
+
/**
|
|
4
|
+
* Get the extent from the entity's location, if it has one.
|
|
5
|
+
* Otherwise, fall back to using the org extent.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getLocationExtent(entity: HubEntity, hubRequestOptions: IHubRequestOptions): Promise<import("@esri/arcgis-rest-types").IExtent>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IHubRequestOptions } from "../../../types";
|
|
2
|
+
import { HubEntity } from "../../types/HubEntity";
|
|
3
|
+
import { IHubLocationOption } from "../../types/IHubLocation";
|
|
4
|
+
/**
|
|
5
|
+
* Construct the dynamic location picker options with the entity's
|
|
6
|
+
* configured location using the following logic:
|
|
7
|
+
*
|
|
8
|
+
* 1. If there is no entity (e.g. we're creating an entity),
|
|
9
|
+
* select the "custom" option by default
|
|
10
|
+
* 2. Else if there is no location set on the entity, select the
|
|
11
|
+
* "none" option
|
|
12
|
+
* 3. Else if the entity has a location and it's the same as the
|
|
13
|
+
* current option, select it and update the option with the entity's
|
|
14
|
+
* location
|
|
15
|
+
*/
|
|
16
|
+
export declare function getLocationOptions(entity: HubEntity, portalName: string, hubRequestOptions: IHubRequestOptions): Promise<IHubLocationOption[]>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IGroup } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { IUiSchemaComboboxItem } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Filter an array of groups into the set the user has the rights to share content
|
|
5
|
+
* into, and then convert them to UiSchemaComboboxItem array for use in the Entity Editor component
|
|
6
|
+
*/
|
|
7
|
+
export declare function getSharableGroupsComboBoxItems(groups: IGroup[]): IUiSchemaComboboxItem[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IHubRequestOptions } from "../../../types";
|
|
2
|
+
import { HubEntity } from "../../types/HubEntity";
|
|
3
|
+
import { IUiSchemaComboboxItem } from "../types";
|
|
4
|
+
/**
|
|
5
|
+
* Fetch the entity's org tags (limited to the top 200),
|
|
6
|
+
* merge with any configured on the entity itself, and convert
|
|
7
|
+
* into a format that can be consumed by the combobox field
|
|
8
|
+
*
|
|
9
|
+
* TODO: the search portion of this util should probably
|
|
10
|
+
* be hoisted to hub.js
|
|
11
|
+
*/
|
|
12
|
+
export declare function getTagItems(entity: HubEntity, orgId: string, hubRequestOptions: IHubRequestOptions): Promise<IUiSchemaComboboxItem[]>;
|
|
@@ -59,3 +59,9 @@ export interface IUiSchema extends IUiSchemaElement {
|
|
|
59
59
|
* Run-time configuration for UiSchema Elements
|
|
60
60
|
*/
|
|
61
61
|
export declare type UiSchemaElementOptions = Pick<IUiSchemaElement, "scope" | "options">;
|
|
62
|
+
export interface IUiSchemaComboboxItem {
|
|
63
|
+
value: string;
|
|
64
|
+
label?: string;
|
|
65
|
+
icon?: string;
|
|
66
|
+
selected?: boolean;
|
|
67
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified type for all Hub entity editors
|
|
3
|
+
*/
|
|
4
|
+
export declare type HubEntityEditor = Record<string, any>;
|
|
5
|
+
/**
|
|
6
|
+
* Additional context that can be passed to `toEditor()` functions
|
|
7
|
+
*/
|
|
8
|
+
export interface IEntityEditorContext {
|
|
9
|
+
collaborationGroupId?: string;
|
|
10
|
+
contentGroupId?: string;
|
|
11
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="arcgis-js-api" />
|
|
2
2
|
import { ISpatialReference } from "@esri/arcgis-rest-types";
|
|
3
3
|
import { IHubLocationType } from "./types";
|
|
4
|
+
import { HubEntityType } from "./HubEntityType";
|
|
4
5
|
/**
|
|
5
6
|
* A location associated with an item and stored as a json resource.
|
|
6
7
|
*/
|
|
@@ -15,3 +16,14 @@ export interface IHubLocation {
|
|
|
15
16
|
graphic?: any;
|
|
16
17
|
geoJson?: any;
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Location options for the location picker
|
|
21
|
+
*/
|
|
22
|
+
export interface IHubLocationOption {
|
|
23
|
+
/** Whether or not this option is selected initially */
|
|
24
|
+
selected?: boolean;
|
|
25
|
+
label: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
location: IHubLocation;
|
|
28
|
+
entityType?: HubEntityType;
|
|
29
|
+
}
|
|
@@ -13,3 +13,13 @@ export declare enum PROJECT_STATUSES {
|
|
|
13
13
|
onHold = "onHold",
|
|
14
14
|
complete = "complete"
|
|
15
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* This type redefines the IHubProject interface in such a way
|
|
18
|
+
* that it can be consumed by the entity editor.
|
|
19
|
+
*/
|
|
20
|
+
export declare type IHubProjectEditor = Omit<IHubProject, "extent"> & {
|
|
21
|
+
view: {
|
|
22
|
+
featuredImage?: any;
|
|
23
|
+
};
|
|
24
|
+
_groups?: string[];
|
|
25
|
+
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
export * from "./DynamicValues";
|
|
1
2
|
export * from "./HubEntity";
|
|
3
|
+
export * from "./HubEntityEditor";
|
|
2
4
|
export * from "./HubEntityType";
|
|
3
5
|
export * from "./IHubContent";
|
|
4
6
|
export * from "./IHubContentEnrichments";
|
|
@@ -17,11 +19,10 @@ export * from "./IHubSite";
|
|
|
17
19
|
export * from "./IHubSiteTheme";
|
|
18
20
|
export * from "./IHubTimeline";
|
|
19
21
|
export * from "./IItemEnrichments";
|
|
22
|
+
export * from "./IReference";
|
|
20
23
|
export * from "./IServerEnrichments";
|
|
21
24
|
export * from "./ISystemStatus";
|
|
22
|
-
export * from "./types";
|
|
23
|
-
export * from "./DynamicValues";
|
|
24
|
-
export * from "./IReference";
|
|
25
|
-
export * from "./Metrics";
|
|
26
25
|
export * from "./MaybeTranslate";
|
|
27
26
|
export * from "./IHubCardViewModel";
|
|
27
|
+
export * from "./Metrics";
|
|
28
|
+
export * from "./types";
|
package/dist/types/index.d.ts
CHANGED
|
@@ -34,6 +34,7 @@ export * from "./versioning";
|
|
|
34
34
|
export * from "./metrics";
|
|
35
35
|
export * from "./core/updateHubEntity";
|
|
36
36
|
export * from "./urls/getCardModelUrl";
|
|
37
|
+
export * from "./core/EntityEditor";
|
|
37
38
|
import OperationStack from "./OperationStack";
|
|
38
39
|
import OperationError from "./OperationError";
|
|
39
40
|
import HubError from "./HubError";
|
|
@@ -3,7 +3,7 @@
|
|
|
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:project:owner", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view", "hub:discussion:create", "hub:discussion:delete", "hub:discussion:edit", "hub:discussion:view", "hub:content:create", "hub:content:edit", "hub:content:view", "hub:page:create", "hub:page:delete", "hub:page:edit", "hub:page: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:project:owner", "hub:project:share", "hub:initiative:create", "hub:initiative:delete", "hub:initiative:edit", "hub:initiative:view", "hub:discussion:create", "hub:discussion:delete", "hub:discussion:edit", "hub:discussion:view", "hub:content:create", "hub:content:edit", "hub:content:view", "hub:page:create", "hub:page:delete", "hub:page:edit", "hub:page:view"];
|
|
7
7
|
/**
|
|
8
8
|
* Defines the possible values for Permissions
|
|
9
9
|
*/
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { IHubProject, IWithCatalogBehavior, IWithStoreBehavior, IWithSharingBehavior,
|
|
1
|
+
import { IHubProject, IWithCatalogBehavior, IWithStoreBehavior, IWithSharingBehavior, IResolvedMetric, IWithCardBehavior, IHubProjectEditor, IEntityEditorContext } from "../core";
|
|
2
|
+
import { EditorType } from "../core/schemas/getEntityEditorSchemas";
|
|
2
3
|
import { Catalog } from "../search";
|
|
3
4
|
import { IArcGISContext } from "../ArcGISContext";
|
|
4
5
|
import { HubItemEntity } from "../core/HubItemEntity";
|
|
5
|
-
import { IEditorConfig } from "../core/behaviors/IWithEditorBehavior";
|
|
6
|
-
import { ProjectEditorType } from "./_internal/ProjectSchema";
|
|
6
|
+
import { IEditorConfig, IWithEditorBehavior } from "../core/behaviors/IWithEditorBehavior";
|
|
7
7
|
import { IWithMetricsBehavior } from "../core/behaviors/IWithMetricsBehavior";
|
|
8
8
|
import { IConvertToCardModelOpts, IHubCardViewModel } from "../core/types/IHubCardViewModel";
|
|
9
9
|
/**
|
|
10
10
|
* Hub Project Class
|
|
11
11
|
*/
|
|
12
|
-
export declare class HubProject extends HubItemEntity<IHubProject> implements IWithStoreBehavior<IHubProject>, IWithCatalogBehavior, IWithMetricsBehavior, IWithSharingBehavior, IWithCardBehavior {
|
|
12
|
+
export declare class HubProject extends HubItemEntity<IHubProject> implements IWithStoreBehavior<IHubProject>, IWithCatalogBehavior, IWithMetricsBehavior, IWithSharingBehavior, IWithCardBehavior, IWithEditorBehavior {
|
|
13
13
|
private _catalog;
|
|
14
14
|
/**
|
|
15
15
|
* Private constructor so we don't have `new` all over the place. Allows for
|
|
@@ -45,16 +45,11 @@ export declare class HubProject extends HubItemEntity<IHubProject> implements IW
|
|
|
45
45
|
*/
|
|
46
46
|
static fetch(identifier: string, context: IArcGISContext): Promise<HubProject>;
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
49
|
-
* @param
|
|
50
|
-
* @param
|
|
51
|
-
* @
|
|
52
|
-
*
|
|
53
|
-
* Note: typescript does not have a means to specify static methods in interfaces
|
|
54
|
-
* so while this is the implementation of IWithEditorBehavior, it is not enforced
|
|
55
|
-
* by the compiler.
|
|
48
|
+
* Given a partial project, apply defaults to it to ensure that a baseline of properties are set
|
|
49
|
+
* @param partialProject
|
|
50
|
+
* @param context
|
|
51
|
+
* @returns
|
|
56
52
|
*/
|
|
57
|
-
static getEditorConfig(i18nScope: string, type: ProjectEditorType, options?: UiSchemaElementOptions[]): Promise<IEditorConfig>;
|
|
58
53
|
private static applyDefaults;
|
|
59
54
|
/**
|
|
60
55
|
* Convert the project entity into a card view model that can
|
|
@@ -63,6 +58,19 @@ export declare class HubProject extends HubItemEntity<IHubProject> implements IW
|
|
|
63
58
|
* @param opts view model options
|
|
64
59
|
*/
|
|
65
60
|
convertToCardModel(opts?: IConvertToCardModelOpts): IHubCardViewModel;
|
|
61
|
+
getEditorConfig(i18nScope: string, type: EditorType): Promise<IEditorConfig>;
|
|
62
|
+
/**
|
|
63
|
+
* Return the project as an editor object
|
|
64
|
+
* @param editorContext
|
|
65
|
+
* @returns
|
|
66
|
+
*/
|
|
67
|
+
toEditor(editorContext?: IEntityEditorContext): IHubProjectEditor;
|
|
68
|
+
/**
|
|
69
|
+
* Load the project from the editor object
|
|
70
|
+
* @param editor
|
|
71
|
+
* @returns
|
|
72
|
+
*/
|
|
73
|
+
fromEditor(editor: IHubProjectEditor): Promise<IHubProject>;
|
|
66
74
|
/**
|
|
67
75
|
* Apply a new state to the instance
|
|
68
76
|
* @param changes
|
|
@@ -19,7 +19,7 @@ export declare const ProjectCapabilityPermissions: ICapabilityPermission[];
|
|
|
19
19
|
* These define the requirements any user must meet to perform related actions
|
|
20
20
|
* @private
|
|
21
21
|
*/
|
|
22
|
-
export declare const ProjectPermissions: readonly ["hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:project:owner"];
|
|
22
|
+
export declare const ProjectPermissions: readonly ["hub:project:create", "hub:project:delete", "hub:project:edit", "hub:project:view", "hub:project:owner", "hub:project:share"];
|
|
23
23
|
/**
|
|
24
24
|
* Project permission policies
|
|
25
25
|
* @private
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { IConfigurationSchema } from "../../core";
|
|
1
|
+
import { IConfigurationSchema } from "../../core/schemas/types";
|
|
2
2
|
export declare type ProjectEditorType = (typeof ProjectEditorTypes)[number];
|
|
3
3
|
export declare const ProjectEditorTypes: readonly ["hub:project:create", "hub:project:edit"];
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Defines the JSON schema for a Hub Project's editable fields
|
|
6
6
|
*/
|
|
7
7
|
export declare const ProjectSchema: IConfigurationSchema;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IArcGISContext } from "../../ArcGISContext";
|
|
2
|
+
import { UiSchemaElementOptions } from "../../core/schemas/types";
|
|
3
|
+
import { IHubProject } from "../../core/types/IHubProject";
|
|
4
|
+
/**
|
|
5
|
+
* Construct the Project Editor configuration options
|
|
6
|
+
* @param entity
|
|
7
|
+
* @param context
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function getProjectEditorConfigOptions(entity: IHubProject, context: IArcGISContext): Promise<UiSchemaElementOptions[]>;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
2
|
-
import {
|
|
2
|
+
import { IPortal } from "@esri/arcgis-rest-portal";
|
|
3
|
+
import { IHubProject, IHubProjectEditor } from "../core/types";
|
|
4
|
+
import { ProjectEditorType } from "./_internal/ProjectSchema";
|
|
3
5
|
import { UiSchemaElementOptions } from "../core/schemas";
|
|
4
|
-
import {
|
|
6
|
+
import { IEditorConfig } from "../core/behaviors/IWithEditorBehavior";
|
|
5
7
|
/**
|
|
6
8
|
* @private
|
|
7
9
|
* Create a new Hub Project item
|
|
@@ -12,6 +14,13 @@ import { EditorConfigType, IEditorConfig } from "../core/behaviors/IWithEditorBe
|
|
|
12
14
|
* @param requestOptions
|
|
13
15
|
*/
|
|
14
16
|
export declare function createProject(partialProject: Partial<IHubProject>, requestOptions: IUserRequestOptions): Promise<IHubProject>;
|
|
17
|
+
/**
|
|
18
|
+
* Convert a IHubProjectEditor back to an IHubProject
|
|
19
|
+
* @param editor
|
|
20
|
+
* @param portal
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export declare function editorToProject(editor: IHubProjectEditor, portal: IPortal): IHubProject;
|
|
15
24
|
/**
|
|
16
25
|
* @private
|
|
17
26
|
* Update a Hub Project
|
|
@@ -27,13 +36,9 @@ export declare function updateProject(project: IHubProject, requestOptions: IUse
|
|
|
27
36
|
*/
|
|
28
37
|
export declare function deleteProject(id: string, requestOptions: IUserRequestOptions): Promise<void>;
|
|
29
38
|
/**
|
|
30
|
-
* DEPRECATED: the following will be removed at next breaking version
|
|
31
|
-
* use the getEntityEditorSchemas function instead (which this function
|
|
32
|
-
* has already been refactored to consume)
|
|
33
|
-
*
|
|
34
39
|
* Get the editor config for for the HubProject entity.
|
|
35
40
|
* @param i18nScope translation scope to be interpolated into the uiSchema
|
|
36
41
|
* @param type editor type - corresonds to the returned uiSchema
|
|
37
42
|
* @param options optional hash of dynamic uiSchema element options
|
|
38
43
|
*/
|
|
39
|
-
export declare function getHubProjectEditorConfig(i18nScope: string, type:
|
|
44
|
+
export declare function getHubProjectEditorConfig(i18nScope: string, type: ProjectEditorType, options?: UiSchemaElementOptions[]): Promise<IEditorConfig>;
|
|
@@ -49,14 +49,6 @@ export declare function fetchSite(identifier: string, requestOptions: IHubReques
|
|
|
49
49
|
* @returns
|
|
50
50
|
*/
|
|
51
51
|
export declare function convertModelToSite(model: IModel, requestOptions: IRequestOptions): IHubSite;
|
|
52
|
-
/**
|
|
53
|
-
* @internal
|
|
54
|
-
* Convert an IHubSite into an IModel
|
|
55
|
-
* @param site
|
|
56
|
-
* @param requestOptions
|
|
57
|
-
* @returns
|
|
58
|
-
*/
|
|
59
|
-
export declare function convertSiteToModel(site: IHubSite, _requestOptions: IRequestOptions): IModel;
|
|
60
52
|
/**
|
|
61
53
|
* Convert a Hub Site Application item into a Hub Site, fetching any
|
|
62
54
|
* additional information that may be required
|