@esri/hub-common 9.15.0 → 9.18.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/Hub.js +6 -10
- package/dist/es2017/Hub.js.map +1 -1
- package/dist/es2017/HubError.js +2 -1
- package/dist/es2017/HubError.js.map +1 -1
- package/dist/es2017/content/_internal.js +12 -0
- package/dist/es2017/content/_internal.js.map +1 -1
- package/dist/es2017/content/index.js +17 -1
- package/dist/es2017/content/index.js.map +1 -1
- package/dist/es2017/core/types/IHubItemEntityManager.js +1 -0
- package/dist/es2017/core/types/IHubItemEntityManager.js.map +1 -0
- package/dist/es2017/items/index.js +1 -0
- package/dist/es2017/items/index.js.map +1 -1
- package/dist/es2017/items/setItemThumbnail.js +31 -0
- package/dist/es2017/items/setItemThumbnail.js.map +1 -0
- package/dist/es2017/items/slugs.js +39 -15
- package/dist/es2017/items/slugs.js.map +1 -1
- package/dist/es2017/models/index.js +13 -0
- package/dist/es2017/models/index.js.map +1 -1
- package/dist/es2017/projects/HubProjectManager.js +40 -4
- package/dist/es2017/projects/HubProjectManager.js.map +1 -1
- package/dist/es2017/projects/HubProjects.js +91 -18
- package/dist/es2017/projects/HubProjects.js.map +1 -1
- package/dist/esm/Hub.js +6 -10
- package/dist/esm/Hub.js.map +1 -1
- package/dist/esm/HubError.js +2 -1
- package/dist/esm/HubError.js.map +1 -1
- package/dist/esm/content/_internal.js +14 -0
- package/dist/esm/content/_internal.js.map +1 -1
- package/dist/esm/content/index.js +17 -1
- package/dist/esm/content/index.js.map +1 -1
- package/dist/esm/core/types/IHubItemEntityManager.js +1 -0
- package/dist/esm/core/types/IHubItemEntityManager.js.map +1 -0
- package/dist/esm/items/index.js +1 -0
- package/dist/esm/items/index.js.map +1 -1
- package/dist/esm/items/setItemThumbnail.js +46 -0
- package/dist/esm/items/setItemThumbnail.js.map +1 -0
- package/dist/esm/items/slugs.js +39 -15
- package/dist/esm/items/slugs.js.map +1 -1
- package/dist/esm/models/index.js +23 -1
- package/dist/esm/models/index.js.map +1 -1
- package/dist/esm/projects/HubProjectManager.js +58 -4
- package/dist/esm/projects/HubProjectManager.js.map +1 -1
- package/dist/esm/projects/HubProjects.js +100 -21
- package/dist/esm/projects/HubProjects.js.map +1 -1
- package/dist/node/Hub.js +6 -10
- package/dist/node/Hub.js.map +1 -1
- package/dist/node/HubError.js +5 -4
- package/dist/node/HubError.js.map +1 -1
- package/dist/node/content/_internal.js +13 -1
- package/dist/node/content/_internal.js.map +1 -1
- package/dist/node/content/index.js +17 -1
- package/dist/node/content/index.js.map +1 -1
- package/dist/node/core/types/IHubItemEntityManager.js +3 -0
- package/dist/node/core/types/IHubItemEntityManager.js.map +1 -0
- package/dist/node/items/index.js +1 -0
- package/dist/node/items/index.js.map +1 -1
- package/dist/node/items/setItemThumbnail.js +35 -0
- package/dist/node/items/setItemThumbnail.js.map +1 -0
- package/dist/node/items/slugs.js +42 -17
- package/dist/node/items/slugs.js.map +1 -1
- package/dist/node/models/index.js +15 -1
- package/dist/node/models/index.js.map +1 -1
- package/dist/node/projects/HubProjectManager.js +38 -2
- package/dist/node/projects/HubProjectManager.js.map +1 -1
- package/dist/node/projects/HubProjects.js +91 -17
- package/dist/node/projects/HubProjects.js.map +1 -1
- package/dist/types/Hub.d.ts +7 -11
- package/dist/types/HubError.d.ts +1 -1
- package/dist/types/content/_internal.d.ts +10 -1
- package/dist/types/content/index.d.ts +10 -1
- package/dist/types/core/types/IHubEntityManager.d.ts +16 -0
- package/dist/types/core/types/IHubItemEntityManager.d.ts +15 -0
- package/dist/types/items/index.d.ts +1 -0
- package/dist/types/items/setItemThumbnail.d.ts +9 -0
- package/dist/types/items/slugs.d.ts +20 -1
- package/dist/types/models/index.d.ts +8 -0
- package/dist/types/projects/HubProjectManager.d.ts +21 -3
- package/dist/types/projects/HubProjects.d.ts +3 -1
- package/dist/types/search/types.d.ts +2 -0
- package/dist/umd/common.umd.js +298 -47
- 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/node/items/slugs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getUniqueSlug = exports.getItemBySlug = exports.setSlugKeyword = exports.constructSlug = void 0;
|
|
3
|
+
exports.getUniqueSlug = exports.findItemsBySlug = exports.getItemBySlug = exports.setSlugKeyword = exports.constructSlug = void 0;
|
|
4
4
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
5
5
|
const __1 = require("..");
|
|
6
6
|
// TODO: work out how to unify content slug fns
|
|
@@ -45,25 +45,50 @@ exports.setSlugKeyword = setSlugKeyword;
|
|
|
45
45
|
* @returns
|
|
46
46
|
*/
|
|
47
47
|
function getItemBySlug(slug, requestOptions) {
|
|
48
|
+
return findItemsBySlug({ slug }, requestOptions).then((results) => {
|
|
49
|
+
if (results.length) {
|
|
50
|
+
return results[0];
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
exports.getItemBySlug = getItemBySlug;
|
|
58
|
+
/**
|
|
59
|
+
* Find items by slug typeKeywords.
|
|
60
|
+
*
|
|
61
|
+
* Optional exclude parameter accepts the id of an item we expect to
|
|
62
|
+
* have this particular slug. This is used during update calls
|
|
63
|
+
* where we don't know if the slug specifically has been updated, but we
|
|
64
|
+
* don't want a false-postive from the item we are updating
|
|
65
|
+
*
|
|
66
|
+
* @param slug
|
|
67
|
+
* @param requestOptions
|
|
68
|
+
* @returns
|
|
69
|
+
*/
|
|
70
|
+
function findItemsBySlug(slugInfo, requestOptions) {
|
|
48
71
|
const opts = {
|
|
49
72
|
q: "",
|
|
50
|
-
filter: `typekeywords:"slug|${slug}"`,
|
|
73
|
+
filter: `typekeywords:"slug|${slugInfo.slug}"`,
|
|
51
74
|
authentication: requestOptions.authentication,
|
|
52
75
|
};
|
|
76
|
+
// We need to check for other items w/ a slug during
|
|
77
|
+
// the update calls. For those scenarios we are interested
|
|
78
|
+
// in any _other_ items which may have a specific slug
|
|
79
|
+
// but not one specific item
|
|
80
|
+
if (slugInfo.exclude) {
|
|
81
|
+
opts.q = `NOT id:${slugInfo.exclude}`;
|
|
82
|
+
}
|
|
53
83
|
return arcgis_rest_portal_1.searchItems(opts)
|
|
54
84
|
.then((response) => {
|
|
55
|
-
|
|
56
|
-
return response.results[0];
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
85
|
+
return response.results;
|
|
61
86
|
})
|
|
62
87
|
.catch((e) => {
|
|
63
88
|
throw Error(`Error in getItemBySlug ${e}`);
|
|
64
89
|
});
|
|
65
90
|
}
|
|
66
|
-
exports.
|
|
91
|
+
exports.findItemsBySlug = findItemsBySlug;
|
|
67
92
|
/**
|
|
68
93
|
* Given a slug, search for items using that slug, incrementing the slug name until
|
|
69
94
|
* a unique value is found
|
|
@@ -76,19 +101,19 @@ exports.getItemBySlug = getItemBySlug;
|
|
|
76
101
|
* @param step
|
|
77
102
|
* @returns
|
|
78
103
|
*/
|
|
79
|
-
function getUniqueSlug(
|
|
80
|
-
let
|
|
104
|
+
function getUniqueSlug(slugInfo, requestOptions, step = 0) {
|
|
105
|
+
let combinedSlug = slugInfo.slug;
|
|
81
106
|
if (step) {
|
|
82
|
-
|
|
107
|
+
combinedSlug = `${slugInfo.slug}-${step}`;
|
|
83
108
|
}
|
|
84
|
-
return
|
|
85
|
-
.then((
|
|
86
|
-
if (
|
|
109
|
+
return findItemsBySlug({ slug: combinedSlug, exclude: slugInfo.existingId }, requestOptions)
|
|
110
|
+
.then((results) => {
|
|
111
|
+
if (results.length) {
|
|
87
112
|
step++;
|
|
88
|
-
return getUniqueSlug(
|
|
113
|
+
return getUniqueSlug(slugInfo, requestOptions, step);
|
|
89
114
|
}
|
|
90
115
|
else {
|
|
91
|
-
return
|
|
116
|
+
return combinedSlug;
|
|
92
117
|
}
|
|
93
118
|
})
|
|
94
119
|
.catch((e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slugs.js","sourceRoot":"","sources":["../../../src/items/slugs.ts"],"names":[],"mappings":";;;AAAA,iEAAuD;AAGvD,0BAA6B;AAE7B,+CAA+C;AAC/C,2FAA2F;AAE3F;;;;;;;GAOG;AACH,SAAgB,aAAa,CAAC,KAAa,EAAE,MAAc;IACzD,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAO,CAAC,KAAK,CAAC,EAAE,CAAC;AACrD,CAAC;AAFD,sCAEC;AAED;;;;;;GAMG;AACH,SAAgB,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;AATD,wCASC;AAED;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,cAA+B;IAE/B,MAAM,IAAI,GAAG;QACX,CAAC,EAAE,EAAE;QACL,MAAM,EAAE,sBAAsB,IAAI,GAAG;
|
|
1
|
+
{"version":3,"file":"slugs.js","sourceRoot":"","sources":["../../../src/items/slugs.ts"],"names":[],"mappings":";;;AAAA,iEAAuD;AAGvD,0BAA6B;AAE7B,+CAA+C;AAC/C,2FAA2F;AAE3F;;;;;;;GAOG;AACH,SAAgB,aAAa,CAAC,KAAa,EAAE,MAAc;IACzD,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAO,CAAC,KAAK,CAAC,EAAE,CAAC;AACrD,CAAC;AAFD,sCAEC;AAED;;;;;;GAMG;AACH,SAAgB,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;AATD,wCASC;AAED;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,cAA+B;IAE/B,OAAO,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChE,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAXD,sCAWC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,eAAe,CAC7B,QAGC,EACD,cAA+B;IAE/B,MAAM,IAAI,GAAG;QACX,CAAC,EAAE,EAAE;QACL,MAAM,EAAE,sBAAsB,QAAQ,CAAC,IAAI,GAAG;QAC9C,cAAc,EAAE,cAAc,CAAC,cAAc;KAC9C,CAAC;IACF,oDAAoD;IACpD,0DAA0D;IAC1D,sDAAsD;IACtD,4BAA4B;IAC5B,IAAI,QAAQ,CAAC,OAAO,EAAE;QACpB,IAAI,CAAC,CAAC,GAAG,UAAU,QAAQ,CAAC,OAAO,EAAE,CAAC;KACvC;IACD,OAAO,gCAAW,CAAC,IAAI,CAAC;SACrB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,MAAM,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC;AA1BD,0CA0BC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,aAAa,CAC3B,QAGC,EACD,cAA+B,EAC/B,OAAe,CAAC;IAEhB,IAAI,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;IACjC,IAAI,IAAI,EAAE;QACR,YAAY,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;KAC3C;IACD,OAAO,eAAe,CACpB,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,EACpD,cAAc,CACf;SACE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAI,EAAE,CAAC;YACP,OAAO,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;SACtD;aAAM;YACL,OAAO,YAAY,CAAC;SACrB;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;AA3BD,sCA2BC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.updateModel = exports.createModel = exports.getModelBySlug = exports.getModel = void 0;
|
|
3
|
+
exports.fetchModelFromItem = exports.updateModel = exports.createModel = exports.getModelBySlug = exports.getModel = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
tslib_1.__exportStar(require("./serializeModel"), exports);
|
|
6
6
|
const arcgis_rest_portal_1 = require("@esri/arcgis-rest-portal");
|
|
@@ -103,4 +103,18 @@ function updateModel(model, requestOptions) {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
exports.updateModel = updateModel;
|
|
106
|
+
/**
|
|
107
|
+
* Given an Item, fetch the data json and return an IModel
|
|
108
|
+
* @param item
|
|
109
|
+
* @param requestOptions
|
|
110
|
+
* @returns
|
|
111
|
+
*/
|
|
112
|
+
async function fetchModelFromItem(item, requestOptions) {
|
|
113
|
+
const data = await arcgis_rest_portal_1.getItemData(item.id, requestOptions);
|
|
114
|
+
return {
|
|
115
|
+
item,
|
|
116
|
+
data,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
exports.fetchModelFromItem = fetchModelFromItem;
|
|
106
120
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ const HubProjects_1 = require("./HubProjects");
|
|
|
5
5
|
// Node has issues if this is not directly imported
|
|
6
6
|
const ArcGISContextManager_1 = require("../ArcGISContextManager");
|
|
7
7
|
const __1 = require("..");
|
|
8
|
+
const setItemThumbnail_1 = require("../items/setItemThumbnail");
|
|
8
9
|
/**
|
|
9
10
|
* Centralized functions used to manage IHubProject instances
|
|
10
11
|
*
|
|
@@ -96,6 +97,14 @@ class HubProjectManager {
|
|
|
96
97
|
throw new __1.HubError("Destroy Project", "Destroying Hub Projects requires authentication.");
|
|
97
98
|
}
|
|
98
99
|
}
|
|
100
|
+
// DEPRECATED IN FAVOR OF .fetch()
|
|
101
|
+
// TODO: REMOVE AT NEXT MAJOR
|
|
102
|
+
/* istanbul ignore next */
|
|
103
|
+
async get(identifier, requestOptions) {
|
|
104
|
+
// tslint:disable-next-line
|
|
105
|
+
console.warn(`HubProjectManager.get is deprecated and will be removed. Use .fetch() instead.`);
|
|
106
|
+
return this.fetch(identifier, requestOptions);
|
|
107
|
+
}
|
|
99
108
|
/**
|
|
100
109
|
* Fetch a Project via id or it's slug
|
|
101
110
|
*
|
|
@@ -108,11 +117,38 @@ class HubProjectManager {
|
|
|
108
117
|
*/
|
|
109
118
|
async fetch(identifier, requestOptions) {
|
|
110
119
|
if (requestOptions || this.context.requestOptions) {
|
|
111
|
-
return HubProjects_1.
|
|
120
|
+
return HubProjects_1.fetchProject(identifier, requestOptions || this.context.requestOptions);
|
|
112
121
|
}
|
|
113
122
|
else {
|
|
114
|
-
throw new __1.HubError("
|
|
123
|
+
throw new __1.HubError("Fetch Project", "Can not retrieve context.requestOptions from Context Manager. HubProjectManager is configured incorrectly.");
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Search for Projects
|
|
128
|
+
*
|
|
129
|
+
* @param filter
|
|
130
|
+
* @param options
|
|
131
|
+
*/
|
|
132
|
+
async search(filter, options) {
|
|
133
|
+
// if we were not passed auth, and we have a session, use it
|
|
134
|
+
if (!options.authentication && this.context.session) {
|
|
135
|
+
options.authentication = this.context.session;
|
|
115
136
|
}
|
|
137
|
+
return HubProjects_1.searchProjects(filter, options);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Set the thumbnail for the Project
|
|
141
|
+
* @param id
|
|
142
|
+
* @param file
|
|
143
|
+
* @param filename
|
|
144
|
+
* @param requestOptions
|
|
145
|
+
* @returns
|
|
146
|
+
*/
|
|
147
|
+
async updateThumbnail(project, file, filename, requestOptions) {
|
|
148
|
+
const ro = requestOptions || this.context.userRequestOptions;
|
|
149
|
+
await setItemThumbnail_1.setItemThumbnail(project.id, file, filename, ro);
|
|
150
|
+
// get the item so we have updated props and timestamps
|
|
151
|
+
return this.fetch(project.id, requestOptions);
|
|
116
152
|
}
|
|
117
153
|
}
|
|
118
154
|
exports.HubProjectManager = HubProjectManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":";;;AAEA,+
|
|
1
|
+
{"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.destroyProject = exports.
|
|
3
|
+
exports.searchProjects = exports.destroyProject = exports.fetchProject = exports.updateProject = exports.createProject = exports.HUB_PROJECT_ITEM_TYPE = void 0;
|
|
4
4
|
// Note - we separate these imports so we can cleanly spy on things in tests
|
|
5
5
|
const models_1 = require("../models");
|
|
6
6
|
const slugs_1 = require("../items/slugs");
|
|
@@ -15,6 +15,7 @@ const DEFAULT_PROJECT = {
|
|
|
15
15
|
name: "No title provided",
|
|
16
16
|
tags: [],
|
|
17
17
|
typeKeywords: ["IHubProject", "HubProject"],
|
|
18
|
+
status: "inactive",
|
|
18
19
|
};
|
|
19
20
|
/**
|
|
20
21
|
* Default values for a new HubProject Model
|
|
@@ -26,7 +27,7 @@ const DEFAULT_PROJECT_MODEL = {
|
|
|
26
27
|
description: "No Description Provided",
|
|
27
28
|
snippet: "",
|
|
28
29
|
tags: [],
|
|
29
|
-
typeKeywords: [],
|
|
30
|
+
typeKeywords: ["Hub Project"],
|
|
30
31
|
properties: {
|
|
31
32
|
slug: "",
|
|
32
33
|
},
|
|
@@ -34,7 +35,6 @@ const DEFAULT_PROJECT_MODEL = {
|
|
|
34
35
|
data: {
|
|
35
36
|
display: "about",
|
|
36
37
|
timeline: {},
|
|
37
|
-
org: {},
|
|
38
38
|
status: "inactive",
|
|
39
39
|
contacts: [],
|
|
40
40
|
schemaVersion: 1,
|
|
@@ -111,7 +111,7 @@ async function createProject(partialProject, requestOptions) {
|
|
|
111
111
|
project.slug = slugs_1.constructSlug(project.name, project.orgUrlKey);
|
|
112
112
|
}
|
|
113
113
|
// Ensure slug is unique
|
|
114
|
-
project.slug = await slugs_1.getUniqueSlug(project.slug, requestOptions);
|
|
114
|
+
project.slug = await slugs_1.getUniqueSlug({ slug: project.slug }, requestOptions);
|
|
115
115
|
// add slug to keywords
|
|
116
116
|
project.typeKeywords = slugs_1.setSlugKeyword(project.typeKeywords, project.slug);
|
|
117
117
|
// Map project object onto a default project Model
|
|
@@ -132,10 +132,8 @@ exports.createProject = createProject;
|
|
|
132
132
|
* @param requestOptions
|
|
133
133
|
*/
|
|
134
134
|
async function updateProject(project, requestOptions) {
|
|
135
|
-
// verify that the slug is unique
|
|
136
|
-
|
|
137
|
-
// the existing item will cause this to increment
|
|
138
|
-
project.slug = await slugs_1.getUniqueSlug(project.slug, requestOptions);
|
|
135
|
+
// verify that the slug is unique, excluding the current project
|
|
136
|
+
project.slug = await slugs_1.getUniqueSlug({ slug: project.slug, existingId: project.id }, requestOptions);
|
|
139
137
|
// get the backing item & data
|
|
140
138
|
const model = await models_1.getModel(project.id, requestOptions);
|
|
141
139
|
// create the PropertyMapper
|
|
@@ -158,7 +156,7 @@ exports.updateProject = updateProject;
|
|
|
158
156
|
* @param identifier item id or slug
|
|
159
157
|
* @param requestOptions
|
|
160
158
|
*/
|
|
161
|
-
function
|
|
159
|
+
function fetchProject(identifier, requestOptions) {
|
|
162
160
|
let getPrms;
|
|
163
161
|
if (__1.isGuid(identifier)) {
|
|
164
162
|
// get item by id
|
|
@@ -166,16 +164,24 @@ function getProject(identifier, requestOptions) {
|
|
|
166
164
|
}
|
|
167
165
|
else {
|
|
168
166
|
// search for item using filter=typekeywords:slug|identifier
|
|
167
|
+
// although we could leverage searchProjects with an appropriate filter
|
|
168
|
+
// getModelBySlug is a generalized function that works for any type
|
|
169
169
|
getPrms = models_1.getModelBySlug(identifier, requestOptions);
|
|
170
170
|
}
|
|
171
171
|
return getPrms.then((model) => {
|
|
172
172
|
// transform the model into a HubProject
|
|
173
173
|
const mapper = new PropertyMapper_1.PropertyMapper(getProjectPropertyMap());
|
|
174
174
|
const project = mapper.modelToObject(model, {});
|
|
175
|
+
let token;
|
|
176
|
+
if (requestOptions.authentication) {
|
|
177
|
+
const us = requestOptions.authentication;
|
|
178
|
+
token = us.token;
|
|
179
|
+
}
|
|
180
|
+
project.thumbnailUrl = __1.getItemThumbnailUrl(model.item, requestOptions, token);
|
|
175
181
|
return project;
|
|
176
182
|
});
|
|
177
183
|
}
|
|
178
|
-
exports.
|
|
184
|
+
exports.fetchProject = fetchProject;
|
|
179
185
|
/**
|
|
180
186
|
* Remove a Hub Project
|
|
181
187
|
* @param id
|
|
@@ -191,11 +197,79 @@ exports.destroyProject = destroyProject;
|
|
|
191
197
|
// i.e. delegate to searchContent or just do an item search
|
|
192
198
|
// and convert to IHubProject objects.
|
|
193
199
|
//
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
//
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
200
|
+
async function searchProjects(filter, options) {
|
|
201
|
+
var _a;
|
|
202
|
+
// Scope to Hub Projects
|
|
203
|
+
const scopingFilter = {
|
|
204
|
+
filterType: "content",
|
|
205
|
+
typekeywords: {
|
|
206
|
+
exact: ["HubProject"],
|
|
207
|
+
},
|
|
208
|
+
};
|
|
209
|
+
// merge filters
|
|
210
|
+
const projectFilter = __1.mergeContentFilter([scopingFilter, filter]);
|
|
211
|
+
// expand filter so we can serialize to either api
|
|
212
|
+
const expanded = __1.expandContentFilter(projectFilter);
|
|
213
|
+
const so = __1.serializeContentFilterForPortal(expanded);
|
|
214
|
+
// Aggregations
|
|
215
|
+
if ((_a = options.aggregations) === null || _a === void 0 ? void 0 : _a.length) {
|
|
216
|
+
so.countFields = options.aggregations.join(",");
|
|
217
|
+
so.countSize = 200;
|
|
218
|
+
}
|
|
219
|
+
// copy over various options
|
|
220
|
+
if (options.num) {
|
|
221
|
+
so.num = options.num;
|
|
222
|
+
}
|
|
223
|
+
if (options.sortField) {
|
|
224
|
+
so.sortField = options.sortField;
|
|
225
|
+
}
|
|
226
|
+
if (options.sortOrder) {
|
|
227
|
+
so.sortOrder = options.sortOrder;
|
|
228
|
+
}
|
|
229
|
+
if (options.site) {
|
|
230
|
+
so.site = __1.cloneObject(options.site);
|
|
231
|
+
}
|
|
232
|
+
if (options.authentication) {
|
|
233
|
+
so.authentication = options.authentication;
|
|
234
|
+
}
|
|
235
|
+
return searchPortalProjects(so);
|
|
236
|
+
}
|
|
237
|
+
exports.searchProjects = searchProjects;
|
|
238
|
+
/**
|
|
239
|
+
* Internal fn that takes
|
|
240
|
+
* @param searchOptions
|
|
241
|
+
* @returns
|
|
242
|
+
*/
|
|
243
|
+
async function searchPortalProjects(searchOptions) {
|
|
244
|
+
const response = await arcgis_rest_portal_1.searchItems(searchOptions);
|
|
245
|
+
const hasNext = response.nextStart > -1;
|
|
246
|
+
// TODO: Change to leveraging the enrichment pipelines
|
|
247
|
+
// Convert the item's into models
|
|
248
|
+
const modelPromises = response.results.map((itm) => {
|
|
249
|
+
return models_1.fetchModelFromItem(itm, {
|
|
250
|
+
authentication: searchOptions.authentication,
|
|
251
|
+
});
|
|
252
|
+
});
|
|
253
|
+
const models = await Promise.all(modelPromises);
|
|
254
|
+
// create a mapper to convert the model int
|
|
255
|
+
const mapper = new PropertyMapper_1.PropertyMapper(getProjectPropertyMap());
|
|
256
|
+
let token;
|
|
257
|
+
if (searchOptions.authentication) {
|
|
258
|
+
const us = searchOptions.authentication;
|
|
259
|
+
token = us.token;
|
|
260
|
+
}
|
|
261
|
+
// map over the results, converting them into IHubProject pojos
|
|
262
|
+
const projects = models.map((m) => {
|
|
263
|
+
const prj = mapper.modelToObject(m, {});
|
|
264
|
+
prj.thumbnailUrl = __1.getItemThumbnailUrl(m.item, { authentication: searchOptions.authentication }, token);
|
|
265
|
+
return prj;
|
|
266
|
+
});
|
|
267
|
+
return {
|
|
268
|
+
total: response.total,
|
|
269
|
+
results: projects,
|
|
270
|
+
facets: [],
|
|
271
|
+
hasNext,
|
|
272
|
+
next: __1.getNextFunction(searchOptions, response.nextStart, response.total, searchPortalProjects),
|
|
273
|
+
};
|
|
274
|
+
}
|
|
201
275
|
//# sourceMappingURL=HubProjects.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":";;;AAEA,4EAA4E;AAC5E,
|
|
1
|
+
{"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
|
package/dist/types/Hub.d.ts
CHANGED
|
@@ -24,14 +24,12 @@ export interface IHubOptions {
|
|
|
24
24
|
*
|
|
25
25
|
* myHub.context.currentUser //=> {username: "casey", ...} as IUser
|
|
26
26
|
*
|
|
27
|
-
* const
|
|
28
|
-
*
|
|
29
|
-
* const pavingProject = await projectStore.create({name: "12th Street Paving"});
|
|
27
|
+
* const pavingProject = await myHub.projects.create({name: "12th Street Paving"});
|
|
30
28
|
* pavingProject.summary = "This is the 2024 planned paving of 12th Street, between 8th and 11th Ave";
|
|
31
|
-
* await
|
|
29
|
+
* await myHub.projects.update(pavingProject);
|
|
32
30
|
* ```
|
|
33
31
|
*
|
|
34
|
-
* This is a convenience class. Hub
|
|
32
|
+
* This is a convenience class. Hub Managers can be created
|
|
35
33
|
* directly, or the underlying functions can be imported an used
|
|
36
34
|
* as need for scenarios where these class structures introduce
|
|
37
35
|
* unwanted complexity
|
|
@@ -42,20 +40,18 @@ export declare class Hub {
|
|
|
42
40
|
* an application. When authentication changes, the .context
|
|
43
41
|
* property on the context manager will be replaced. As long as
|
|
44
42
|
* all the fns in this class leverage properties on .context
|
|
45
|
-
* everything be kept in sync.
|
|
43
|
+
* everything will be kept in sync.
|
|
46
44
|
*/
|
|
47
45
|
private _contextManager;
|
|
48
46
|
private _projectManager;
|
|
49
47
|
/**
|
|
50
|
-
* Private so we can employ a factory function
|
|
48
|
+
* Private so we can employ a factory function to do
|
|
51
49
|
* async work during creation
|
|
52
50
|
* @param contextManager
|
|
53
51
|
*/
|
|
54
52
|
private constructor();
|
|
55
53
|
/**
|
|
56
|
-
* Factory function to construct a new
|
|
57
|
-
*
|
|
58
|
-
* Note: Used so that we could do async actions in the ctor.
|
|
54
|
+
* Factory function to construct a new Hub instance.
|
|
59
55
|
* @param contextManager
|
|
60
56
|
* @returns
|
|
61
57
|
*/
|
|
@@ -65,7 +61,7 @@ export declare class Hub {
|
|
|
65
61
|
*/
|
|
66
62
|
get context(): import("./ArcGISContext").IArcGISContext;
|
|
67
63
|
/**
|
|
68
|
-
*
|
|
64
|
+
* HubProjectManager for the current Hub
|
|
69
65
|
* @returns
|
|
70
66
|
*/
|
|
71
67
|
get projects(): HubProjectManager;
|
package/dist/types/HubError.d.ts
CHANGED
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* It's probably a good pattern to add functions here first and then
|
|
9
9
|
* move them to index.ts only when they are needed by a consumer.
|
|
10
10
|
*/
|
|
11
|
-
import {
|
|
11
|
+
import { IItem } from "@esri/arcgis-rest-types/dist/types/item";
|
|
12
|
+
import { BBox, IHubContent, IHubGeography, GeographyProvenance, IHubRequestOptions } from "..";
|
|
12
13
|
/**
|
|
13
14
|
* Create a new content with updated boundary properties
|
|
14
15
|
* @param content original content
|
|
@@ -108,3 +109,11 @@ export declare const setContentBoundary: (content: IHubContent, boundary: Geogra
|
|
|
108
109
|
* @returns a new content with the updated extent and boundary
|
|
109
110
|
*/
|
|
110
111
|
export declare const setContentExtent: (content: IHubContent, extent: BBox) => IHubContent;
|
|
112
|
+
/**
|
|
113
|
+
* Returns whether or not an item is a proxied csv
|
|
114
|
+
*
|
|
115
|
+
* @param item
|
|
116
|
+
* @param requestOptions Hub Request Options (including whether we're in portal)
|
|
117
|
+
* @returns
|
|
118
|
+
*/
|
|
119
|
+
export declare const isProxiedCSV: (item: IItem, requestOptions: IHubRequestOptions) => boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ResourceObject } from "jsonapi-typescript";
|
|
2
2
|
import { IItem } from "@esri/arcgis-rest-portal";
|
|
3
|
-
import { HubType, HubFamily, IModel } from "../types";
|
|
3
|
+
import { HubType, HubFamily, IModel, IHubRequestOptions } from "../types";
|
|
4
4
|
import { IHubContent } from "..";
|
|
5
5
|
/**
|
|
6
6
|
* JSONAPI dataset resource returned by the Hub API
|
|
@@ -249,3 +249,12 @@ export declare const getContentSiteUrls: (content: IHubContent, siteModel: IMode
|
|
|
249
249
|
* @returns
|
|
250
250
|
*/
|
|
251
251
|
export declare const setContentSiteUrls: (content: IHubContent, siteModel: IModel) => IHubContent;
|
|
252
|
+
/**
|
|
253
|
+
* If an item is a proxied csv, returns the url for the proxying feature layer.
|
|
254
|
+
* If the item is not a proxied csv, returns undefined.
|
|
255
|
+
*
|
|
256
|
+
* @param item
|
|
257
|
+
* @param requestOptions Hub Request Options (including whether we're in portal)
|
|
258
|
+
* @returns
|
|
259
|
+
*/
|
|
260
|
+
export declare const getProxyUrl: (item: IItem, requestOptions: IHubRequestOptions) => string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
2
2
|
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
3
|
+
import { Filter, IHubSearchOptions, ISearchResponse } from "../..";
|
|
3
4
|
/**
|
|
4
5
|
* Baseline CRUD+Search functions required for all Store classes
|
|
5
6
|
*/
|
|
@@ -30,4 +31,19 @@ export interface IHubEntityManager<T> {
|
|
|
30
31
|
* @param requestOptions
|
|
31
32
|
*/
|
|
32
33
|
fetch(identifier: string, requestOptions: IRequestOptions): Promise<T>;
|
|
34
|
+
/**
|
|
35
|
+
* [WIP] We need to work out how best to handle the typing on this. Simply
|
|
36
|
+
* delegating to `searchContent` with a filter constraining to an Entity type
|
|
37
|
+
* will return `ISearchResponse<IHubContent>` and not the expected type.
|
|
38
|
+
*
|
|
39
|
+
* Search for Entitys of type `T`
|
|
40
|
+
*
|
|
41
|
+
* Note: When implementing, this should be a search for things of type `T`
|
|
42
|
+
* not searching "within" the `T`.
|
|
43
|
+
*
|
|
44
|
+
* i.e. Searching for Teams, not searching for content shared to a team.
|
|
45
|
+
* @param filter
|
|
46
|
+
* @param opts
|
|
47
|
+
*/
|
|
48
|
+
search(filter: Filter<"content">, opts: IHubSearchOptions): Promise<ISearchResponse<T>>;
|
|
33
49
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
2
|
+
/**
|
|
3
|
+
* Item specific functions that must be implemented by Managers which operate against
|
|
4
|
+
* items stored in the Portal API
|
|
5
|
+
*/
|
|
6
|
+
export interface IHubItemEntityManager<T> {
|
|
7
|
+
/**
|
|
8
|
+
* Add a thumbnail to an item
|
|
9
|
+
* @param entity
|
|
10
|
+
* @param file
|
|
11
|
+
* @param name
|
|
12
|
+
* @param requestOptions
|
|
13
|
+
*/
|
|
14
|
+
updateThumbnail(entity: T, file: any, filename: string, requestOptions?: IUserRequestOptions): Promise<T>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
2
|
+
/**
|
|
3
|
+
* Upload a file to be used as the thumbnail for an item
|
|
4
|
+
* @param id
|
|
5
|
+
* @param file
|
|
6
|
+
* @param filename
|
|
7
|
+
* @param requestOptions
|
|
8
|
+
*/
|
|
9
|
+
export declare function setItemThumbnail(id: string, file: any, filename: string, requestOptions: IUserRequestOptions): Promise<void>;
|
|
@@ -28,6 +28,22 @@ export declare function setSlugKeyword(typeKeywords: string[], slug: string): st
|
|
|
28
28
|
* @returns
|
|
29
29
|
*/
|
|
30
30
|
export declare function getItemBySlug(slug: string, requestOptions: IRequestOptions): Promise<IItem>;
|
|
31
|
+
/**
|
|
32
|
+
* Find items by slug typeKeywords.
|
|
33
|
+
*
|
|
34
|
+
* Optional exclude parameter accepts the id of an item we expect to
|
|
35
|
+
* have this particular slug. This is used during update calls
|
|
36
|
+
* where we don't know if the slug specifically has been updated, but we
|
|
37
|
+
* don't want a false-postive from the item we are updating
|
|
38
|
+
*
|
|
39
|
+
* @param slug
|
|
40
|
+
* @param requestOptions
|
|
41
|
+
* @returns
|
|
42
|
+
*/
|
|
43
|
+
export declare function findItemsBySlug(slugInfo: {
|
|
44
|
+
slug: string;
|
|
45
|
+
exclude?: string;
|
|
46
|
+
}, requestOptions: IRequestOptions): Promise<IItem[]>;
|
|
31
47
|
/**
|
|
32
48
|
* Given a slug, search for items using that slug, incrementing the slug name until
|
|
33
49
|
* a unique value is found
|
|
@@ -40,4 +56,7 @@ export declare function getItemBySlug(slug: string, requestOptions: IRequestOpti
|
|
|
40
56
|
* @param step
|
|
41
57
|
* @returns
|
|
42
58
|
*/
|
|
43
|
-
export declare function getUniqueSlug(
|
|
59
|
+
export declare function getUniqueSlug(slugInfo: {
|
|
60
|
+
slug: string;
|
|
61
|
+
existingId?: string;
|
|
62
|
+
}, requestOptions: IRequestOptions, step?: number): Promise<string>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from "./serializeModel";
|
|
2
2
|
import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
|
|
3
|
+
import { IItem } from "@esri/arcgis-rest-portal";
|
|
3
4
|
import { IRequestOptions } from "@esri/arcgis-rest-request";
|
|
4
5
|
import { IModel } from "..";
|
|
5
6
|
/**
|
|
@@ -40,3 +41,10 @@ export declare function createModel(model: IModel, requestOptions: IUserRequestO
|
|
|
40
41
|
* @returns {Promise<IModel>}
|
|
41
42
|
*/
|
|
42
43
|
export declare function updateModel(model: IModel, requestOptions: IUserRequestOptions): Promise<IModel>;
|
|
44
|
+
/**
|
|
45
|
+
* Given an Item, fetch the data json and return an IModel
|
|
46
|
+
* @param item
|
|
47
|
+
* @param requestOptions
|
|
48
|
+
* @returns
|
|
49
|
+
*/
|
|
50
|
+
export declare function fetchModelFromItem(item: IItem, requestOptions: IRequestOptions): Promise<IModel>;
|