@esri/hub-common 9.13.1 → 9.15.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/es2017/ArcGISContext.js +202 -120
- package/dist/es2017/ArcGISContext.js.map +1 -1
- package/dist/es2017/ArcGISContextManager.js +171 -0
- package/dist/es2017/ArcGISContextManager.js.map +1 -0
- package/dist/es2017/Hub.js +70 -0
- package/dist/es2017/Hub.js.map +1 -0
- package/dist/es2017/HubError.js +34 -0
- package/dist/es2017/HubError.js.map +1 -0
- package/dist/es2017/collections.js +23 -0
- package/dist/es2017/collections.js.map +1 -1
- package/dist/es2017/content/_internal.js.map +1 -1
- package/dist/es2017/content/index.js +25 -17
- package/dist/es2017/content/index.js.map +1 -1
- package/dist/es2017/core/helpers/PropertyMapper.js +95 -0
- package/dist/es2017/core/helpers/PropertyMapper.js.map +1 -0
- package/dist/es2017/core/index.js +3 -0
- package/dist/es2017/core/index.js.map +1 -0
- package/dist/es2017/core/traits/WithBannerImage.js +1 -0
- package/dist/es2017/core/traits/WithBannerImage.js.map +1 -0
- package/dist/es2017/core/traits/WithLayout.js +1 -0
- package/dist/es2017/core/traits/WithLayout.js.map +1 -0
- package/dist/es2017/core/traits/WithSlug.js +1 -0
- package/dist/es2017/core/traits/WithSlug.js.map +1 -0
- package/dist/es2017/core/traits/index.js +4 -0
- package/dist/es2017/core/traits/index.js.map +1 -0
- package/dist/es2017/core/types/IContentEnrichments.js +1 -0
- package/dist/es2017/core/types/IContentEnrichments.js.map +1 -0
- package/dist/es2017/core/types/IHubContent.js +1 -0
- package/dist/es2017/core/types/IHubContent.js.map +1 -0
- package/dist/es2017/core/types/IHubEntityBase.js +1 -0
- package/dist/es2017/core/types/IHubEntityBase.js.map +1 -0
- package/dist/es2017/core/types/IHubEntityManager.js +1 -0
- package/dist/es2017/core/types/IHubEntityManager.js.map +1 -0
- package/dist/es2017/core/types/IHubEvent.js +1 -0
- package/dist/es2017/core/types/IHubEvent.js.map +1 -0
- package/dist/es2017/core/types/IHubImage.js +1 -0
- package/dist/es2017/core/types/IHubImage.js.map +1 -0
- package/dist/es2017/core/types/IHubInitiative.js +1 -0
- package/dist/es2017/core/types/IHubInitiative.js.map +1 -0
- package/dist/es2017/core/types/IHubItemEntity.js +1 -0
- package/dist/es2017/core/types/IHubItemEntity.js.map +1 -0
- package/dist/es2017/core/types/IHubLayout.js +1 -0
- package/dist/es2017/core/types/IHubLayout.js.map +1 -0
- package/dist/es2017/core/types/IHubPage.js +1 -0
- package/dist/es2017/core/types/IHubPage.js.map +1 -0
- package/dist/es2017/core/types/IHubProject.js +1 -0
- package/dist/es2017/core/types/IHubProject.js.map +1 -0
- package/dist/es2017/core/types/IHubSite.js +1 -0
- package/dist/es2017/core/types/IHubSite.js.map +1 -0
- package/dist/es2017/core/types/IHubTimeline.js +1 -0
- package/dist/es2017/core/types/IHubTimeline.js.map +1 -0
- package/dist/es2017/core/types/IItemEnrichments.js +1 -0
- package/dist/es2017/core/types/IItemEnrichments.js.map +1 -0
- package/dist/es2017/core/types/index.js +15 -0
- package/dist/es2017/core/types/index.js.map +1 -0
- package/dist/es2017/index.js +11 -5
- package/dist/es2017/index.js.map +1 -1
- package/dist/es2017/items/fail-safe-update.js +2 -2
- package/dist/es2017/items/fail-safe-update.js.map +1 -1
- package/dist/es2017/items/get-model-from-options.js +2 -2
- package/dist/es2017/items/get-model-from-options.js.map +1 -1
- package/dist/es2017/items/index.js +2 -3
- package/dist/es2017/items/index.js.map +1 -1
- package/dist/es2017/items/slugs.js +92 -0
- package/dist/es2017/items/slugs.js.map +1 -0
- package/dist/es2017/models/index.js +98 -0
- package/dist/es2017/models/index.js.map +1 -0
- package/dist/es2017/{items/serialize-model.js → models/serializeModel.js} +1 -1
- package/dist/es2017/models/serializeModel.js.map +1 -0
- package/dist/es2017/projects/HubProjectManager.js +115 -0
- package/dist/es2017/projects/HubProjectManager.js.map +1 -0
- package/dist/es2017/projects/HubProjects.js +194 -0
- package/dist/es2017/projects/HubProjects.js.map +1 -0
- package/dist/es2017/projects/index.js +3 -0
- package/dist/es2017/projects/index.js.map +1 -0
- package/dist/es2017/search/_searchContent.js +18 -7
- package/dist/es2017/search/_searchContent.js.map +1 -1
- package/dist/es2017/search/_searchGroups.js +1 -11
- package/dist/es2017/search/_searchGroups.js.map +1 -1
- package/dist/es2017/search/utils.js +1 -1
- package/dist/es2017/urls/getHubApiFromPortalUrl.js +21 -0
- package/dist/es2017/urls/getHubApiFromPortalUrl.js.map +1 -0
- package/dist/es2017/urls/getPortalBaseFromOrgUrl.js +25 -0
- package/dist/es2017/urls/getPortalBaseFromOrgUrl.js.map +1 -0
- package/dist/es2017/urls/index.js +2 -0
- package/dist/es2017/urls/index.js.map +1 -1
- package/dist/es2017/utils/dasherize.js +25 -0
- package/dist/es2017/utils/dasherize.js.map +1 -0
- package/dist/es2017/utils/index.js +1 -0
- package/dist/es2017/utils/index.js.map +1 -1
- package/dist/esm/ArcGISContext.js +308 -180
- package/dist/esm/ArcGISContext.js.map +1 -1
- package/dist/esm/ArcGISContextManager.js +215 -0
- package/dist/esm/ArcGISContextManager.js.map +1 -0
- package/dist/esm/Hub.js +89 -0
- package/dist/esm/Hub.js.map +1 -0
- package/dist/esm/HubError.js +40 -0
- package/dist/esm/HubError.js.map +1 -0
- package/dist/esm/collections.js +23 -0
- package/dist/esm/collections.js.map +1 -1
- package/dist/esm/content/_internal.js.map +1 -1
- package/dist/esm/content/index.js +25 -17
- package/dist/esm/content/index.js.map +1 -1
- package/dist/esm/core/helpers/PropertyMapper.js +97 -0
- package/dist/esm/core/helpers/PropertyMapper.js.map +1 -0
- package/dist/esm/core/index.js +3 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/core/traits/WithBannerImage.js +1 -0
- package/dist/esm/core/traits/WithBannerImage.js.map +1 -0
- package/dist/esm/core/traits/WithLayout.js +1 -0
- package/dist/esm/core/traits/WithLayout.js.map +1 -0
- package/dist/esm/core/traits/WithSlug.js +1 -0
- package/dist/esm/core/traits/WithSlug.js.map +1 -0
- package/dist/esm/core/traits/index.js +4 -0
- package/dist/esm/core/traits/index.js.map +1 -0
- package/dist/esm/core/types/IContentEnrichments.js +1 -0
- package/dist/esm/core/types/IContentEnrichments.js.map +1 -0
- package/dist/esm/core/types/IHubContent.js +1 -0
- package/dist/esm/core/types/IHubContent.js.map +1 -0
- package/dist/esm/core/types/IHubEntityBase.js +1 -0
- package/dist/esm/core/types/IHubEntityBase.js.map +1 -0
- package/dist/esm/core/types/IHubEntityManager.js +1 -0
- package/dist/esm/core/types/IHubEntityManager.js.map +1 -0
- package/dist/esm/core/types/IHubEvent.js +1 -0
- package/dist/esm/core/types/IHubEvent.js.map +1 -0
- package/dist/esm/core/types/IHubImage.js +1 -0
- package/dist/esm/core/types/IHubImage.js.map +1 -0
- package/dist/esm/core/types/IHubInitiative.js +1 -0
- package/dist/esm/core/types/IHubInitiative.js.map +1 -0
- package/dist/esm/core/types/IHubItemEntity.js +1 -0
- package/dist/esm/core/types/IHubItemEntity.js.map +1 -0
- package/dist/esm/core/types/IHubLayout.js +1 -0
- package/dist/esm/core/types/IHubLayout.js.map +1 -0
- package/dist/esm/core/types/IHubPage.js +1 -0
- package/dist/esm/core/types/IHubPage.js.map +1 -0
- package/dist/esm/core/types/IHubProject.js +1 -0
- package/dist/esm/core/types/IHubProject.js.map +1 -0
- package/dist/esm/core/types/IHubSite.js +1 -0
- package/dist/esm/core/types/IHubSite.js.map +1 -0
- package/dist/esm/core/types/IHubTimeline.js +1 -0
- package/dist/esm/core/types/IHubTimeline.js.map +1 -0
- package/dist/esm/core/types/IItemEnrichments.js +1 -0
- package/dist/esm/core/types/IItemEnrichments.js.map +1 -0
- package/dist/esm/core/types/index.js +15 -0
- package/dist/esm/core/types/index.js.map +1 -0
- package/dist/esm/index.js +11 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/items/fail-safe-update.js +2 -2
- package/dist/esm/items/fail-safe-update.js.map +1 -1
- package/dist/esm/items/get-model-from-options.js +2 -2
- package/dist/esm/items/get-model-from-options.js.map +1 -1
- package/dist/esm/items/index.js +2 -3
- package/dist/esm/items/index.js.map +1 -1
- package/dist/esm/items/slugs.js +93 -0
- package/dist/esm/items/slugs.js.map +1 -0
- package/dist/esm/models/index.js +99 -0
- package/dist/esm/models/index.js.map +1 -0
- package/dist/esm/{items/serialize-model.js → models/serializeModel.js} +1 -1
- package/dist/esm/models/serializeModel.js.map +1 -0
- package/dist/esm/projects/HubProjectManager.js +142 -0
- package/dist/esm/projects/HubProjectManager.js.map +1 -0
- package/dist/esm/projects/HubProjects.js +225 -0
- package/dist/esm/projects/HubProjects.js.map +1 -0
- package/dist/esm/projects/index.js +3 -0
- package/dist/esm/projects/index.js.map +1 -0
- package/dist/esm/search/_searchContent.js +18 -7
- package/dist/esm/search/_searchContent.js.map +1 -1
- package/dist/esm/search/_searchGroups.js +3 -13
- package/dist/esm/search/_searchGroups.js.map +1 -1
- package/dist/esm/search/utils.js +1 -1
- package/dist/esm/urls/getHubApiFromPortalUrl.js +21 -0
- package/dist/esm/urls/getHubApiFromPortalUrl.js.map +1 -0
- package/dist/esm/urls/getPortalBaseFromOrgUrl.js +25 -0
- package/dist/esm/urls/getPortalBaseFromOrgUrl.js.map +1 -0
- package/dist/esm/urls/index.js +2 -0
- package/dist/esm/urls/index.js.map +1 -1
- package/dist/esm/utils/dasherize.js +25 -0
- package/dist/esm/utils/dasherize.js.map +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/node/ArcGISContext.js +203 -121
- package/dist/node/ArcGISContext.js.map +1 -1
- package/dist/node/ArcGISContextManager.js +175 -0
- package/dist/node/ArcGISContextManager.js.map +1 -0
- package/dist/node/Hub.js +74 -0
- package/dist/node/Hub.js.map +1 -0
- package/dist/node/HubError.js +37 -0
- package/dist/node/HubError.js.map +1 -0
- package/dist/node/collections.js +24 -1
- package/dist/node/collections.js.map +1 -1
- package/dist/node/content/_internal.js.map +1 -1
- package/dist/node/content/index.js +25 -17
- package/dist/node/content/index.js.map +1 -1
- package/dist/node/core/helpers/PropertyMapper.js +101 -0
- package/dist/node/core/helpers/PropertyMapper.js.map +1 -0
- package/dist/node/core/index.js +6 -0
- package/dist/node/core/index.js.map +1 -0
- package/dist/node/core/traits/WithBannerImage.js +3 -0
- package/dist/node/core/traits/WithBannerImage.js.map +1 -0
- package/dist/node/core/traits/WithLayout.js +3 -0
- package/dist/node/core/traits/WithLayout.js.map +1 -0
- package/dist/node/core/traits/WithSlug.js +3 -0
- package/dist/node/core/traits/WithSlug.js.map +1 -0
- package/dist/node/core/traits/index.js +7 -0
- package/dist/node/core/traits/index.js.map +1 -0
- package/dist/node/core/types/IContentEnrichments.js +3 -0
- package/dist/node/core/types/IContentEnrichments.js.map +1 -0
- package/dist/node/core/types/IHubContent.js +3 -0
- package/dist/node/core/types/IHubContent.js.map +1 -0
- package/dist/node/core/types/IHubEntityBase.js +3 -0
- package/dist/node/core/types/IHubEntityBase.js.map +1 -0
- package/dist/node/core/types/IHubEntityManager.js +3 -0
- package/dist/node/core/types/IHubEntityManager.js.map +1 -0
- package/dist/node/core/types/IHubEvent.js +3 -0
- package/dist/node/core/types/IHubEvent.js.map +1 -0
- package/dist/node/core/types/IHubImage.js +3 -0
- package/dist/node/core/types/IHubImage.js.map +1 -0
- package/dist/node/core/types/IHubInitiative.js +3 -0
- package/dist/node/core/types/IHubInitiative.js.map +1 -0
- package/dist/node/core/types/IHubItemEntity.js +3 -0
- package/dist/node/core/types/IHubItemEntity.js.map +1 -0
- package/dist/node/core/types/IHubLayout.js +3 -0
- package/dist/node/core/types/IHubLayout.js.map +1 -0
- package/dist/node/core/types/IHubPage.js +3 -0
- package/dist/node/core/types/IHubPage.js.map +1 -0
- package/dist/node/core/types/IHubProject.js +3 -0
- package/dist/node/core/types/IHubProject.js.map +1 -0
- package/dist/node/core/types/IHubSite.js +3 -0
- package/dist/node/core/types/IHubSite.js.map +1 -0
- package/dist/node/core/types/IHubTimeline.js +3 -0
- package/dist/node/core/types/IHubTimeline.js.map +1 -0
- package/dist/node/core/types/IItemEnrichments.js +3 -0
- package/dist/node/core/types/IItemEnrichments.js.map +1 -0
- package/dist/node/core/types/index.js +18 -0
- package/dist/node/core/types/index.js.map +1 -0
- package/dist/node/index.js +12 -5
- package/dist/node/index.js.map +1 -1
- package/dist/node/items/fail-safe-update.js +3 -3
- package/dist/node/items/fail-safe-update.js.map +1 -1
- package/dist/node/items/get-model-from-options.js +3 -3
- package/dist/node/items/get-model-from-options.js.map +1 -1
- package/dist/node/items/index.js +2 -3
- package/dist/node/items/index.js.map +1 -1
- package/dist/node/items/slugs.js +99 -0
- package/dist/node/items/slugs.js.map +1 -0
- package/dist/node/models/index.js +106 -0
- package/dist/node/models/index.js.map +1 -0
- package/dist/node/{items/serialize-model.js → models/serializeModel.js} +1 -1
- package/dist/node/models/serializeModel.js.map +1 -0
- package/dist/node/projects/HubProjectManager.js +119 -0
- package/dist/node/projects/HubProjectManager.js.map +1 -0
- package/dist/node/projects/HubProjects.js +201 -0
- package/dist/node/projects/HubProjects.js.map +1 -0
- package/dist/node/projects/index.js +6 -0
- package/dist/node/projects/index.js.map +1 -0
- package/dist/node/search/_searchContent.js +17 -6
- package/dist/node/search/_searchContent.js.map +1 -1
- package/dist/node/search/_searchGroups.js +1 -11
- package/dist/node/search/_searchGroups.js.map +1 -1
- package/dist/node/search/utils.js +1 -1
- package/dist/node/urls/getHubApiFromPortalUrl.js +25 -0
- package/dist/node/urls/getHubApiFromPortalUrl.js.map +1 -0
- package/dist/node/urls/getPortalBaseFromOrgUrl.js +29 -0
- package/dist/node/urls/getPortalBaseFromOrgUrl.js.map +1 -0
- package/dist/node/urls/index.js +2 -0
- package/dist/node/urls/index.js.map +1 -1
- package/dist/node/utils/dasherize.js +29 -0
- package/dist/node/utils/dasherize.js.map +1 -0
- package/dist/node/utils/index.js +1 -0
- package/dist/node/utils/index.js.map +1 -1
- package/dist/types/ArcGISContext.d.ts +280 -58
- package/dist/types/ArcGISContextManager.d.ts +130 -0
- package/dist/types/Hub.d.ts +72 -0
- package/dist/types/HubError.d.ts +17 -0
- package/dist/types/collections.d.ts +12 -0
- package/dist/types/content/_internal.d.ts +57 -38
- package/dist/types/content/index.d.ts +8 -8
- package/dist/types/core/helpers/PropertyMapper.d.ts +69 -0
- package/dist/types/core/index.d.ts +2 -0
- package/dist/types/core/traits/WithBannerImage.d.ts +30 -0
- package/dist/types/core/traits/WithLayout.d.ts +54 -0
- package/dist/types/core/traits/WithSlug.d.ts +15 -0
- package/dist/types/core/traits/index.d.ts +3 -0
- package/dist/types/core/types/IContentEnrichments.d.ts +10 -0
- package/dist/types/core/types/IHubContent.d.ts +77 -0
- package/dist/types/core/types/IHubEntityBase.d.ts +41 -0
- package/dist/types/core/types/IHubEntityManager.d.ts +33 -0
- package/dist/types/core/types/IHubEvent.d.ts +10 -0
- package/dist/types/core/types/IHubImage.d.ts +25 -0
- package/dist/types/core/types/IHubInitiative.d.ts +8 -0
- package/dist/types/core/types/IHubItemEntity.d.ts +42 -0
- package/dist/types/core/types/IHubLayout.d.ts +20 -0
- package/dist/types/core/types/IHubPage.d.ts +8 -0
- package/dist/types/core/types/IHubProject.d.ts +15 -0
- package/dist/types/core/types/IHubSite.d.ts +11 -0
- package/dist/types/core/types/IHubTimeline.d.ts +41 -0
- package/dist/types/core/types/IItemEnrichments.d.ts +23 -0
- package/dist/types/core/types/index.d.ts +14 -0
- package/dist/types/index.d.ts +11 -5
- package/dist/types/items/index.d.ts +2 -3
- package/dist/types/items/slugs.d.ts +43 -0
- package/dist/types/models/index.d.ts +42 -0
- package/dist/types/{items/serialize-model.d.ts → models/serializeModel.d.ts} +0 -0
- package/dist/types/projects/HubProjectManager.d.ts +81 -0
- package/dist/types/projects/HubProjects.d.ts +31 -0
- package/dist/types/projects/index.d.ts +2 -0
- package/dist/types/search/utils.d.ts +1 -1
- package/dist/types/types.d.ts +2 -92
- package/dist/types/urls/getHubApiFromPortalUrl.d.ts +8 -0
- package/dist/types/urls/getPortalBaseFromOrgUrl.d.ts +9 -0
- package/dist/types/urls/index.d.ts +2 -0
- package/dist/types/utils/dasherize.d.ts +17 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/umd/common.umd.js +4632 -3668
- package/dist/umd/common.umd.js.map +1 -1
- package/dist/umd/common.umd.min.js +1 -1
- package/dist/umd/common.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/dist/es2017/ArcGISContextState.js +0 -203
- package/dist/es2017/ArcGISContextState.js.map +0 -1
- package/dist/es2017/items/get-model.js +0 -19
- package/dist/es2017/items/get-model.js.map +0 -1
- package/dist/es2017/items/serialize-model.js.map +0 -1
- package/dist/esm/ArcGISContextState.js +0 -285
- package/dist/esm/ArcGISContextState.js.map +0 -1
- package/dist/esm/items/get-model.js +0 -19
- package/dist/esm/items/get-model.js.map +0 -1
- package/dist/esm/items/serialize-model.js.map +0 -1
- package/dist/node/ArcGISContextState.js +0 -207
- package/dist/node/ArcGISContextState.js.map +0 -1
- package/dist/node/items/get-model.js +0 -23
- package/dist/node/items/get-model.js.map +0 -1
- package/dist/node/items/serialize-model.js.map +0 -1
- package/dist/types/ArcGISContextState.d.ts +0 -129
- package/dist/types/items/get-model.d.ts +0 -8
package/dist/es2017/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;gBACgB;AAEhB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;gBACgB;AAEhB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AAEtB,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,aAAa;AACb,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { updateItem } from "@esri/arcgis-rest-portal";
|
|
2
|
-
import { serializeModel } from "
|
|
2
|
+
import { serializeModel } from "../models/serializeModel";
|
|
3
3
|
import { failSafe } from "../utils";
|
|
4
4
|
/**
|
|
5
5
|
* Update a model's item, wrapped in a failSafe so this will not blow up if
|
|
@@ -11,7 +11,7 @@ import { failSafe } from "../utils";
|
|
|
11
11
|
export function failSafeUpdate(model, requestOptions) {
|
|
12
12
|
const failSafedUpdate = failSafe(updateItem, {
|
|
13
13
|
id: model.item.id,
|
|
14
|
-
success: true
|
|
14
|
+
success: true,
|
|
15
15
|
});
|
|
16
16
|
const opts = Object.assign({ item: serializeModel(model) }, requestOptions);
|
|
17
17
|
return failSafedUpdate(opts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fail-safe-update.js","sourceRoot":"","sources":["../../../src/items/fail-safe-update.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAsB,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"fail-safe-update.js","sourceRoot":"","sources":["../../../src/items/fail-safe-update.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAsB,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAa,EACb,cAAmC;IAEnC,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,EAAE;QAC3C,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE;QACjB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CACxB,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,EAC/B,cAAc,CACO,CAAC;IACxB,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { failSafe } from "../utils";
|
|
2
|
-
import { getModel } from "
|
|
2
|
+
import { getModel } from "../models";
|
|
3
3
|
/**
|
|
4
4
|
* To streamline passing of either a model id or the model itself, we use this function
|
|
5
5
|
* to extract the model or fetch it, and return it. It uses `failSafe` and if the item
|
|
@@ -19,7 +19,7 @@ export function getModelFromOptions(modelType, options) {
|
|
|
19
19
|
if (options[idProp]) {
|
|
20
20
|
const failSafeModel = failSafe(getModel, {
|
|
21
21
|
item: { id: options[idProp] },
|
|
22
|
-
isMissing: true
|
|
22
|
+
isMissing: true,
|
|
23
23
|
});
|
|
24
24
|
return failSafeModel(options[idProp], options);
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-model-from-options.js","sourceRoot":"","sources":["../../../src/items/get-model-from-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"get-model-from-options.js","sourceRoot":"","sources":["../../../src/items/get-model-from-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,OAA4B;IAE5B,MAAM,SAAS,GAAG,GAAG,SAAS,OAAO,CAAC;IACtC,MAAM,MAAM,GAAG,GAAG,SAAS,IAAI,CAAC;IAChC,+CAA+C;IAC/C,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;QACtB,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;KAC5C;SAAM;QACL,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;YACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,EAAE;gBACvC,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC7B,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,OAAO,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;SAChD;aAAM;YACL,MAAM,IAAI,KAAK,CACb,0CAA0C,SAAS,QAAQ,MAAM,YAAY,CAC9E,CAAC;SACH;KACF;AACH,CAAC"}
|
|
@@ -2,13 +2,10 @@ export * from "./_unprotect-and-remove-item";
|
|
|
2
2
|
export * from "./apply-properties-to-items";
|
|
3
3
|
export * from "./delete-prop";
|
|
4
4
|
export * from "./fail-safe-update";
|
|
5
|
-
export * from "./get-model";
|
|
6
5
|
export * from "./get-model-from-options";
|
|
7
6
|
export * from "./interpolate";
|
|
8
7
|
export * from "./interpolate-item-id";
|
|
9
|
-
export * from "./normalize-solution-template-item";
|
|
10
8
|
export * from "./replace-item-id";
|
|
11
|
-
export * from "./serialize-model";
|
|
12
9
|
export * from "./share-item-to-groups";
|
|
13
10
|
export * from "./unprotect-model";
|
|
14
11
|
export * from "./unshare-item-from-groups";
|
|
@@ -16,4 +13,6 @@ export * from "./does-item-exist-with-title";
|
|
|
16
13
|
export * from "./get-unique-item-title";
|
|
17
14
|
export * from "./fetch-all-pages";
|
|
18
15
|
export * from "./get-structured-license";
|
|
16
|
+
export * from "./slugs";
|
|
17
|
+
export * from "./normalize-solution-template-item";
|
|
19
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/items/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/items/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,SAAS,CAAC;AACxB,cAAc,oCAAoC,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { searchItems } from "@esri/arcgis-rest-portal";
|
|
2
|
+
import { slugify } from "..";
|
|
3
|
+
// TODO: work out how to unify content slug fns
|
|
4
|
+
// https: github.com/Esri/hub.js/blob/master/packages/common/src/content/index.ts#L301-L348
|
|
5
|
+
/**
|
|
6
|
+
* Create a slug, namespaced to an org
|
|
7
|
+
* Typically used to lookup items by a human readable name in urls
|
|
8
|
+
*
|
|
9
|
+
* @param title
|
|
10
|
+
* @param orgKey
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export function constructSlug(title, orgKey) {
|
|
14
|
+
return `${orgKey.toLowerCase()}-${slugify(title)}`;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Adds/Updates the slug typekeyword
|
|
18
|
+
* Returns a new array of keywords
|
|
19
|
+
* @param typeKeywords
|
|
20
|
+
* @param slug
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export function setSlugKeyword(typeKeywords, slug) {
|
|
24
|
+
// remove slug entry from array
|
|
25
|
+
const removed = typeKeywords.filter((entry) => {
|
|
26
|
+
return !entry.startsWith("slug|");
|
|
27
|
+
});
|
|
28
|
+
// now add it
|
|
29
|
+
removed.push(`slug|${slug}`);
|
|
30
|
+
return removed;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get an item by searching for items with a typeKeyword like `slug|{slug-value}`
|
|
34
|
+
*
|
|
35
|
+
* For example, if you pass a slug `"snow-map"` into this function, it will
|
|
36
|
+
* search for items with `slug|snow-map` in it's typeKeywords array,
|
|
37
|
+
*
|
|
38
|
+
* @param slug
|
|
39
|
+
* @param requestOptions
|
|
40
|
+
* @returns
|
|
41
|
+
*/
|
|
42
|
+
export function getItemBySlug(slug, requestOptions) {
|
|
43
|
+
const opts = {
|
|
44
|
+
q: "",
|
|
45
|
+
filter: `typekeywords:"slug|${slug}"`,
|
|
46
|
+
authentication: requestOptions.authentication,
|
|
47
|
+
};
|
|
48
|
+
return searchItems(opts)
|
|
49
|
+
.then((response) => {
|
|
50
|
+
if (response.results.length) {
|
|
51
|
+
return response.results[0];
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
})
|
|
57
|
+
.catch((e) => {
|
|
58
|
+
throw Error(`Error in getItemBySlug ${e}`);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Given a slug, search for items using that slug, incrementing the slug name until
|
|
63
|
+
* a unique value is found
|
|
64
|
+
*
|
|
65
|
+
* For example, if a slug of `"snow-map"` into this function and some item exists
|
|
66
|
+
* with that slug, it would return `"snow-map-1"`.
|
|
67
|
+
*
|
|
68
|
+
* @param slug
|
|
69
|
+
* @param requestOptions
|
|
70
|
+
* @param step
|
|
71
|
+
* @returns
|
|
72
|
+
*/
|
|
73
|
+
export function getUniqueSlug(slug, requestOptions, step = 0) {
|
|
74
|
+
let combined = slug;
|
|
75
|
+
if (step) {
|
|
76
|
+
combined = `${slug}-${step}`;
|
|
77
|
+
}
|
|
78
|
+
return getItemBySlug(combined, requestOptions)
|
|
79
|
+
.then((result) => {
|
|
80
|
+
if (result) {
|
|
81
|
+
step++;
|
|
82
|
+
return getUniqueSlug(slug, requestOptions, step);
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
return combined;
|
|
86
|
+
}
|
|
87
|
+
})
|
|
88
|
+
.catch((e) => {
|
|
89
|
+
throw Error(`Error in getUniqueSlug ${e}`);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=slugs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slugs.js","sourceRoot":"","sources":["../../../src/items/slugs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,+CAA+C;AAC/C,2FAA2F;AAE3F;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,MAAc;IACzD,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;AACrD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,YAAsB,EAAE,IAAY;IACjE,+BAA+B;IAC/B,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;QACpD,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,aAAa;IACb,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC7B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,cAA+B;IAE/B,MAAM,IAAI,GAAG;QACX,CAAC,EAAE,EAAE;QACL,MAAM,EAAE,sBAAsB,IAAI,GAAG;QACrC,cAAc,EAAE,cAAc,CAAC,cAAc;KAC9C,CAAC;IACF,OAAO,WAAW,CAAC,IAAI,CAAC;SACrB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;YAC3B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SAC5B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,MAAM,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,cAA+B,EAC/B,OAAe,CAAC;IAEhB,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,IAAI,EAAE;QACR,QAAQ,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;KAC9B;IACD,OAAO,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC;SAC3C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,MAAM,EAAE;YACV,IAAI,EAAE,CAAC;YACP,OAAO,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;SAClD;aAAM;YACL,OAAO,QAAQ,CAAC;SACjB;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,MAAM,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
export * from "./serializeModel";
|
|
2
|
+
import { createItem, getItem, getItemData, updateItem, } from "@esri/arcgis-rest-portal";
|
|
3
|
+
import { cloneObject, getItemBySlug } from "..";
|
|
4
|
+
/**
|
|
5
|
+
* Gets the full item/data model for an item id
|
|
6
|
+
* @param {string} id
|
|
7
|
+
* @param {Object} requestOptions
|
|
8
|
+
*/
|
|
9
|
+
export function getModel(id, requestOptions) {
|
|
10
|
+
return Promise.all([
|
|
11
|
+
getItem(id, requestOptions),
|
|
12
|
+
getItemData(id, requestOptions),
|
|
13
|
+
]).then((result) => {
|
|
14
|
+
// shape this into a model
|
|
15
|
+
return {
|
|
16
|
+
item: result[0],
|
|
17
|
+
data: result[1],
|
|
18
|
+
};
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get a model by it's slug
|
|
23
|
+
*
|
|
24
|
+
* This uses the [Filter](https://developers.arcgis.com/rest/users-groups-and-items/search-reference.htm) option of the
|
|
25
|
+
* to search for an item that has a typekeyword of `slug|{slug-value}`
|
|
26
|
+
*
|
|
27
|
+
* This is useful for applications that want to use human-readable urls instead
|
|
28
|
+
* of using item ids.
|
|
29
|
+
*
|
|
30
|
+
* @param slug
|
|
31
|
+
* @param requestOptions
|
|
32
|
+
* @returns
|
|
33
|
+
*/
|
|
34
|
+
export function getModelBySlug(slug, requestOptions) {
|
|
35
|
+
return getItemBySlug(slug, requestOptions)
|
|
36
|
+
.then((item) => {
|
|
37
|
+
const prms = [Promise.resolve(item)];
|
|
38
|
+
if (item) {
|
|
39
|
+
prms.push(getItemData(item.id, requestOptions));
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
prms.push(Promise.resolve(null));
|
|
43
|
+
}
|
|
44
|
+
return Promise.all(prms);
|
|
45
|
+
})
|
|
46
|
+
.then((result) => {
|
|
47
|
+
if (result[0]) {
|
|
48
|
+
return {
|
|
49
|
+
item: result[0],
|
|
50
|
+
data: result[1],
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Create an item to back and IModel.
|
|
60
|
+
*
|
|
61
|
+
* @param {IModel}
|
|
62
|
+
* @param {IRequestOptions} requestOptions
|
|
63
|
+
* @returns {Promise<IModel>}
|
|
64
|
+
*/
|
|
65
|
+
export function createModel(model, requestOptions) {
|
|
66
|
+
const clone = cloneObject(model);
|
|
67
|
+
const item = cloneObject(model.item);
|
|
68
|
+
item.data = cloneObject(model.data);
|
|
69
|
+
const opts = Object.assign({ item }, requestOptions);
|
|
70
|
+
return createItem(opts).then((response) => {
|
|
71
|
+
clone.item.id = response.id;
|
|
72
|
+
clone.item.created = new Date().getTime();
|
|
73
|
+
clone.item.modified = clone.item.created;
|
|
74
|
+
return clone;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Update an IModel. Generic function that will be used across all
|
|
79
|
+
* type-specific update functions
|
|
80
|
+
*
|
|
81
|
+
* @export
|
|
82
|
+
* @param {IModel} "model" object (i.e. `{item:{...}, data:{...}}`)
|
|
83
|
+
* @param {IRequestOptions} requestOptions
|
|
84
|
+
* @returns {Promise<IModel>}
|
|
85
|
+
*/
|
|
86
|
+
export function updateModel(model, requestOptions) {
|
|
87
|
+
const clone = cloneObject(model);
|
|
88
|
+
const item = cloneObject(model.item);
|
|
89
|
+
item.data = cloneObject(model.data);
|
|
90
|
+
const opts = Object.assign({ item }, requestOptions);
|
|
91
|
+
return updateItem(opts).then(() => {
|
|
92
|
+
// update the modified prop
|
|
93
|
+
// this won't be exact, but it will be very close
|
|
94
|
+
clone.item.modified = new Date().getTime();
|
|
95
|
+
return clone;
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializeModel.js","sourceRoot":"","sources":["../../../src/models/serializeModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAMtC;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;IAC/D,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { createProject, updateProject, destroyProject, getProject, } from "./HubProjects";
|
|
2
|
+
// Node has issues if this is not directly imported
|
|
3
|
+
import { ArcGISContextManager } from "../ArcGISContextManager";
|
|
4
|
+
import { HubError } from "..";
|
|
5
|
+
/**
|
|
6
|
+
* Centralized functions used to manage IHubProject instances
|
|
7
|
+
*
|
|
8
|
+
* This class is a convenience wrapper over util functions which
|
|
9
|
+
* are also directly accessible for use in scenarios where
|
|
10
|
+
* classes are inconvenient.
|
|
11
|
+
*/
|
|
12
|
+
export class HubProjectManager {
|
|
13
|
+
/**
|
|
14
|
+
* Private so we can employ a factory function should we need
|
|
15
|
+
* async work during creation
|
|
16
|
+
* @param contextOrManager
|
|
17
|
+
*/
|
|
18
|
+
constructor(contextOrManager) {
|
|
19
|
+
if (contextOrManager instanceof ArcGISContextManager) {
|
|
20
|
+
this._contextManager = contextOrManager;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
this._context = contextOrManager;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Factory function to construct a new HubProjectManager instance.
|
|
28
|
+
*
|
|
29
|
+
* Note: Used so that we could do async actions in the ctor.
|
|
30
|
+
* @param contextOrManager
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
static init(contextOrManager) {
|
|
34
|
+
return new HubProjectManager(contextOrManager);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Getter to abstract how we store the context
|
|
38
|
+
*/
|
|
39
|
+
get context() {
|
|
40
|
+
if (this._contextManager) {
|
|
41
|
+
return this._contextManager.context;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return this._context;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Create and store new project.
|
|
49
|
+
*
|
|
50
|
+
* Projects are stored as Items in the Sharing API
|
|
51
|
+
* @param project
|
|
52
|
+
* @param requestOptions
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
async create(project, requestOptions) {
|
|
56
|
+
if (requestOptions || this.context.isAuthenticated) {
|
|
57
|
+
// ammend in the orgUrlKey
|
|
58
|
+
if (!project.orgUrlKey) {
|
|
59
|
+
project.orgUrlKey = this.context.portal.urlKey;
|
|
60
|
+
}
|
|
61
|
+
return createProject(project, requestOptions || this.context.userRequestOptions);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
throw new HubError("Create Project", "Creating Hub Projects requires authentication.");
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Update a project
|
|
69
|
+
* @param project
|
|
70
|
+
* @param requestOptions
|
|
71
|
+
* @returns
|
|
72
|
+
*/
|
|
73
|
+
async update(project, requestOptions) {
|
|
74
|
+
if (requestOptions || this.context.isAuthenticated) {
|
|
75
|
+
return updateProject(project, requestOptions || this.context.userRequestOptions);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
throw new HubError("Update Project", "Updating Hub Projects requires authentication.");
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Destroy a project.
|
|
83
|
+
* This permanently removes the backing Item
|
|
84
|
+
* @param id
|
|
85
|
+
* @param requestOptions
|
|
86
|
+
* @returns
|
|
87
|
+
*/
|
|
88
|
+
async destroy(id, requestOptions) {
|
|
89
|
+
if (requestOptions || this.context.isAuthenticated) {
|
|
90
|
+
return destroyProject(id, requestOptions || this.context.userRequestOptions);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
throw new HubError("Destroy Project", "Destroying Hub Projects requires authentication.");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Fetch a Project via id or it's slug
|
|
98
|
+
*
|
|
99
|
+
* This function does not require a user to be
|
|
100
|
+
* authenticated, but it does require an `IRequestOptions`
|
|
101
|
+
* which contains the portal instance to communicate with
|
|
102
|
+
* @param identifier
|
|
103
|
+
* @param requestOptions
|
|
104
|
+
* @returns
|
|
105
|
+
*/
|
|
106
|
+
async fetch(identifier, requestOptions) {
|
|
107
|
+
if (requestOptions || this.context.requestOptions) {
|
|
108
|
+
return getProject(identifier, requestOptions || this.context.requestOptions);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
throw new HubError("Get Project", "Can not retrieve context.requestOptions from Context Manager. HubProjectManager is configured incorrectly.");
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=HubProjectManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,mDAAmD;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAkB,MAAM,IAAI,CAAC;AAG9C;;;;;;GAMG;AACH,MAAM,OAAO,iBAAiB;IAgB5B;;;;OAIG;IACH,YAAoB,gBAAuD;QACzE,IAAI,gBAAgB,YAAY,oBAAoB,EAAE;YACpD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;SAClC;IACH,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,CACT,gBAAuD;QAEvD,OAAO,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAY,OAAO;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;SACrC;aAAM;YACL,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CACV,OAA6B,EAC7B,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,0BAA0B;YAC1B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBACtB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;aAChD;YACD,OAAO,aAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;SACH;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,OAAoB,EACpB,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,aAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CACX,EAAU,EACV,cAAoC;QAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,OAAO,cAAc,CACnB,EAAE,EACF,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,CAAC;SACH;aAAM;YACL,MAAM,IAAI,QAAQ,CAChB,iBAAiB,EACjB,kDAAkD,CACnD,CAAC;SACH;IACH,CAAC;IACD;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK,CACT,UAAkB,EAClB,cAAgC;QAEhC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YACjD,OAAO,UAAU,CACf,UAAU,EACV,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAC9C,CAAC;SACH;aAAM;YACL,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,4GAA4G,CAC7G,CAAC;SACH;IACH,CAAC;CAgBF"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
// Note - we separate these imports so we can cleanly spy on things in tests
|
|
2
|
+
import { createModel, getModel, getModelBySlug, updateModel } from "../models";
|
|
3
|
+
import { constructSlug, getUniqueSlug, setSlugKeyword } from "../items/slugs";
|
|
4
|
+
import { isGuid, cloneObject, } from "..";
|
|
5
|
+
import { removeItem } from "@esri/arcgis-rest-portal";
|
|
6
|
+
import { PropertyMapper } from "../core/helpers/PropertyMapper";
|
|
7
|
+
export const HUB_PROJECT_ITEM_TYPE = "Web Mapping Application";
|
|
8
|
+
/**
|
|
9
|
+
* Default values of a IHubProject
|
|
10
|
+
*/
|
|
11
|
+
const DEFAULT_PROJECT = {
|
|
12
|
+
name: "No title provided",
|
|
13
|
+
tags: [],
|
|
14
|
+
typeKeywords: ["IHubProject", "HubProject"],
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Default values for a new HubProject Model
|
|
18
|
+
*/
|
|
19
|
+
const DEFAULT_PROJECT_MODEL = {
|
|
20
|
+
item: {
|
|
21
|
+
type: HUB_PROJECT_ITEM_TYPE,
|
|
22
|
+
title: "No Title Provided",
|
|
23
|
+
description: "No Description Provided",
|
|
24
|
+
snippet: "",
|
|
25
|
+
tags: [],
|
|
26
|
+
typeKeywords: [],
|
|
27
|
+
properties: {
|
|
28
|
+
slug: "",
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
data: {
|
|
32
|
+
display: "about",
|
|
33
|
+
timeline: {},
|
|
34
|
+
org: {},
|
|
35
|
+
status: "inactive",
|
|
36
|
+
contacts: [],
|
|
37
|
+
schemaVersion: 1,
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Returns an Array of IPropertyMap objects
|
|
42
|
+
* We could define these directly, but since the
|
|
43
|
+
* properties of IHubProject map directly to properties
|
|
44
|
+
* on item or data, it's slightly less verbose to
|
|
45
|
+
* generate the structure.
|
|
46
|
+
* @returns
|
|
47
|
+
*/
|
|
48
|
+
function getProjectPropertyMap() {
|
|
49
|
+
const itemProps = [
|
|
50
|
+
"created",
|
|
51
|
+
"culture",
|
|
52
|
+
"description",
|
|
53
|
+
"extent",
|
|
54
|
+
"id",
|
|
55
|
+
"modified",
|
|
56
|
+
"owner",
|
|
57
|
+
"snippet",
|
|
58
|
+
"tags",
|
|
59
|
+
"typeKeywords",
|
|
60
|
+
"url",
|
|
61
|
+
"type",
|
|
62
|
+
];
|
|
63
|
+
const dataProps = [
|
|
64
|
+
"contacts",
|
|
65
|
+
"display",
|
|
66
|
+
"geometry",
|
|
67
|
+
"headerImage",
|
|
68
|
+
"layout",
|
|
69
|
+
"location",
|
|
70
|
+
"status",
|
|
71
|
+
];
|
|
72
|
+
const map = [];
|
|
73
|
+
itemProps.forEach((entry) => {
|
|
74
|
+
map.push({ objectKey: entry, modelKey: `item.${entry}` });
|
|
75
|
+
});
|
|
76
|
+
dataProps.forEach((entry) => {
|
|
77
|
+
map.push({ objectKey: entry, modelKey: `data.${entry}` });
|
|
78
|
+
});
|
|
79
|
+
// Deeper mappings
|
|
80
|
+
map.push({
|
|
81
|
+
objectKey: "slug",
|
|
82
|
+
modelKey: "item.properties.slug",
|
|
83
|
+
});
|
|
84
|
+
map.push({
|
|
85
|
+
objectKey: "orgUrlKey",
|
|
86
|
+
modelKey: "item.properties.orgUrlKey",
|
|
87
|
+
});
|
|
88
|
+
map.push({
|
|
89
|
+
objectKey: "name",
|
|
90
|
+
modelKey: "item.title",
|
|
91
|
+
});
|
|
92
|
+
return map;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Create a new Hub Project item
|
|
96
|
+
*
|
|
97
|
+
* Minimal properties are name and org
|
|
98
|
+
*
|
|
99
|
+
* @param project
|
|
100
|
+
* @param requestOptions
|
|
101
|
+
*/
|
|
102
|
+
export async function createProject(partialProject, requestOptions) {
|
|
103
|
+
// merge incoming with the default
|
|
104
|
+
// this expansion solves the typing somehow
|
|
105
|
+
const project = Object.assign(Object.assign({}, DEFAULT_PROJECT), partialProject);
|
|
106
|
+
// Create a slug from the title if one is not passed in
|
|
107
|
+
if (!project.slug) {
|
|
108
|
+
project.slug = constructSlug(project.name, project.orgUrlKey);
|
|
109
|
+
}
|
|
110
|
+
// Ensure slug is unique
|
|
111
|
+
project.slug = await getUniqueSlug(project.slug, requestOptions);
|
|
112
|
+
// add slug to keywords
|
|
113
|
+
project.typeKeywords = setSlugKeyword(project.typeKeywords, project.slug);
|
|
114
|
+
// Map project object onto a default project Model
|
|
115
|
+
const mapper = new PropertyMapper(getProjectPropertyMap());
|
|
116
|
+
// create model from object, using the default model as a starting point
|
|
117
|
+
let model = mapper.objectToModel(project, cloneObject(DEFAULT_PROJECT_MODEL));
|
|
118
|
+
// create the item
|
|
119
|
+
model = await createModel(model, requestOptions);
|
|
120
|
+
// map the model back into a IHubProject
|
|
121
|
+
const newProject = mapper.modelToObject(model, {});
|
|
122
|
+
// and return it
|
|
123
|
+
return newProject;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Update a Hub Project
|
|
127
|
+
* @param project
|
|
128
|
+
* @param requestOptions
|
|
129
|
+
*/
|
|
130
|
+
export async function updateProject(project, requestOptions) {
|
|
131
|
+
// verify that the slug is unique
|
|
132
|
+
// TODO: if the slug has not changed, we don't want to do this because
|
|
133
|
+
// the existing item will cause this to increment
|
|
134
|
+
project.slug = await getUniqueSlug(project.slug, requestOptions);
|
|
135
|
+
// get the backing item & data
|
|
136
|
+
const model = await getModel(project.id, requestOptions);
|
|
137
|
+
// create the PropertyMapper
|
|
138
|
+
const mapper = new PropertyMapper(getProjectPropertyMap());
|
|
139
|
+
// Note: Although we are fetching the model, and applying changes onto it,
|
|
140
|
+
// we are not attempting to handle "concurrent edit" conflict resolution
|
|
141
|
+
// but this is where we would apply that sort of logic
|
|
142
|
+
const modelToUpdate = mapper.objectToModel(project, model);
|
|
143
|
+
// update the backing item
|
|
144
|
+
const updatedModel = await updateModel(modelToUpdate, requestOptions);
|
|
145
|
+
// now map back into a project and return that
|
|
146
|
+
const updatedProject = mapper.modelToObject(updatedModel, project);
|
|
147
|
+
// the casting is needed because modelToObject returns a `Partial<T>`
|
|
148
|
+
// where as this function returns a `T`
|
|
149
|
+
return updatedProject;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Get a Hub Project by id or slug
|
|
153
|
+
* @param identifier item id or slug
|
|
154
|
+
* @param requestOptions
|
|
155
|
+
*/
|
|
156
|
+
export function getProject(identifier, requestOptions) {
|
|
157
|
+
let getPrms;
|
|
158
|
+
if (isGuid(identifier)) {
|
|
159
|
+
// get item by id
|
|
160
|
+
getPrms = getModel(identifier, requestOptions);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
// search for item using filter=typekeywords:slug|identifier
|
|
164
|
+
getPrms = getModelBySlug(identifier, requestOptions);
|
|
165
|
+
}
|
|
166
|
+
return getPrms.then((model) => {
|
|
167
|
+
// transform the model into a HubProject
|
|
168
|
+
const mapper = new PropertyMapper(getProjectPropertyMap());
|
|
169
|
+
const project = mapper.modelToObject(model, {});
|
|
170
|
+
return project;
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Remove a Hub Project
|
|
175
|
+
* @param id
|
|
176
|
+
* @param requestOptions
|
|
177
|
+
*/
|
|
178
|
+
export async function destroyProject(id, requestOptions) {
|
|
179
|
+
const ro = Object.assign(Object.assign({}, requestOptions), { id });
|
|
180
|
+
await removeItem(ro);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
// WIP: Need to resolve how best to execute this
|
|
184
|
+
// i.e. delegate to searchContent or just do an item search
|
|
185
|
+
// and convert to IHubProject objects.
|
|
186
|
+
//
|
|
187
|
+
// export async function searchProjects(
|
|
188
|
+
// filter: Filter<"content">,
|
|
189
|
+
// opts: IHubSearchOptions
|
|
190
|
+
// ): Promise<ISearchResponse<IHubProject>> {
|
|
191
|
+
// return _searchContent(filter, opts).then((results) => {
|
|
192
|
+
// })
|
|
193
|
+
// }
|
|
194
|
+
//# sourceMappingURL=HubProjects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
|