@esri/solution-deployer 1.1.2 → 1.2.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.
Files changed (38) hide show
  1. package/dist/esm/deploySolutionFromTemplate.js +70 -66
  2. package/dist/esm/deploySolutionFromTemplate.js.map +1 -1
  3. package/dist/esm/deploySolutionItems.js +159 -166
  4. package/dist/esm/deploySolutionItems.js.map +1 -1
  5. package/dist/esm/deployer.js +13 -14
  6. package/dist/esm/deployer.js.map +1 -1
  7. package/dist/esm/deployerUtils.js +17 -22
  8. package/dist/esm/deployerUtils.js.map +1 -1
  9. package/dist/esm/helpers/post-process.js +12 -14
  10. package/dist/esm/helpers/post-process.js.map +1 -1
  11. package/dist/esm/helpers/share-templates-to-groups.js +29 -6
  12. package/dist/esm/helpers/share-templates-to-groups.js.map +1 -1
  13. package/dist/esm/helpers/sortTemplates.js +2 -4
  14. package/dist/esm/helpers/sortTemplates.js.map +1 -1
  15. package/dist/esm/module-map.js +2 -2
  16. package/dist/esm/module-map.js.map +1 -1
  17. package/dist/node/deploySolutionFromTemplate.js +76 -72
  18. package/dist/node/deploySolutionFromTemplate.js.map +1 -1
  19. package/dist/node/deploySolutionItems.js +161 -168
  20. package/dist/node/deploySolutionItems.js.map +1 -1
  21. package/dist/node/deployer.js +16 -17
  22. package/dist/node/deployer.js.map +1 -1
  23. package/dist/node/deployerUtils.js +18 -23
  24. package/dist/node/deployerUtils.js.map +1 -1
  25. package/dist/node/helpers/post-process.js +16 -18
  26. package/dist/node/helpers/post-process.js.map +1 -1
  27. package/dist/node/helpers/share-templates-to-groups.js +30 -7
  28. package/dist/node/helpers/share-templates-to-groups.js.map +1 -1
  29. package/dist/node/helpers/sortTemplates.js +2 -4
  30. package/dist/node/helpers/sortTemplates.js.map +1 -1
  31. package/dist/node/index.js +1 -1
  32. package/dist/node/module-map.js +9 -9
  33. package/dist/node/module-map.js.map +1 -1
  34. package/dist/umd/deployer.umd.js +1647 -1651
  35. package/dist/umd/deployer.umd.js.map +1 -1
  36. package/dist/umd/deployer.umd.min.js +3 -3
  37. package/dist/umd/deployer.umd.min.js.map +1 -1
  38. package/package.json +33 -33
@@ -16,39 +16,38 @@
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports._getNewItemId = exports._purgeTemplateProperties = exports._updateGroupReferences = exports._getPortalBaseUrl = exports._checkedReplaceAll = exports._updateProp = exports._replaceParamVariables = exports._applySourceToDeployOptions = exports.deploySolutionFromTemplate = void 0;
19
- var tslib_1 = require("tslib");
20
- var common = require("@esri/solution-common");
21
- var deployItems = require("./deploySolutionItems");
22
- var hub_common_1 = require("@esri/hub-common");
23
- var portal = require("@esri/arcgis-rest-portal");
24
- var post_process_1 = require("./helpers/post-process");
25
- var sortTemplates_1 = require("./helpers/sortTemplates");
19
+ const common = require("@esri/solution-common");
20
+ const deployItems = require("./deploySolutionItems");
21
+ const hub_common_1 = require("@esri/hub-common");
22
+ const portal = require("@esri/arcgis-rest-portal");
23
+ const post_process_1 = require("./helpers/post-process");
24
+ const sortTemplates_1 = require("./helpers/sortTemplates");
25
+ const solution_common_1 = require("@esri/solution-common");
26
26
  // NOTE: Moved to separate file to allow stubbing in main deploySolution tests
27
27
  function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, solutionTemplateData, authentication, options) {
28
28
  options.storageVersion = common.extractSolutionVersion(solutionTemplateData);
29
- return new Promise(function (resolve, reject) {
30
- var _a;
29
+ return new Promise((resolve, reject) => {
31
30
  // It is possible to provide a separate authentication for the source
32
- var storageAuthentication = options.storageAuthentication
31
+ const storageAuthentication = options.storageAuthentication
33
32
  ? options.storageAuthentication
34
33
  : authentication;
35
34
  // Replacement dictionary and high-level deployment ids for cleanup
36
35
  // TODO: Extract all templateDictionary prep into a separate function
37
- var templateDictionary = (_a = options.templateDictionary) !== null && _a !== void 0 ? _a : {};
38
- var deployedFolderId;
39
- var deployedSolutionId;
36
+ const templateDictionary = options.templateDictionary ?? {};
37
+ let deployedFolderId;
38
+ let deployedSolutionId;
40
39
  _applySourceToDeployOptions(options, solutionTemplateBase, templateDictionary, authentication);
41
40
  if (options.additionalTypeKeywords) {
42
41
  solutionTemplateBase.typeKeywords = [].concat(solutionTemplateBase.typeKeywords, options.additionalTypeKeywords);
43
42
  }
44
43
  // Get the thumbnail file
45
- var thumbFilename = "thumbnail";
46
- var thumbDef = Promise.resolve(null);
44
+ let thumbFilename = "thumbnail";
45
+ let thumbDef = Promise.resolve(null);
47
46
  if (!options.thumbnail && options.thumbnailurl) {
48
47
  // Figure out the thumbnail's filename
49
48
  thumbFilename =
50
49
  common.getFilenameFromUrl(options.thumbnailurl) || thumbFilename;
51
- var thumbnailurl = common.appendQueryParam(options.thumbnailurl, "w=400");
50
+ const thumbnailurl = common.appendQueryParam(options.thumbnailurl, "w=400");
52
51
  delete options.thumbnailurl;
53
52
  // Fetch the thumbnail
54
53
  thumbDef = common.getBlobAsFile(thumbnailurl, thumbFilename, storageAuthentication, [400]);
@@ -61,14 +60,14 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
61
60
  common.getFoldersAndGroups(authentication),
62
61
  thumbDef
63
62
  ])
64
- .then(function (responses) {
65
- var _a = (0, tslib_1.__read)(responses, 4), portalResponse = _a[0], userResponse = _a[1], foldersAndGroupsResponse = _a[2], thumbnailFile = _a[3];
63
+ .then(responses => {
64
+ const [portalResponse, userResponse, foldersAndGroupsResponse, thumbnailFile] = responses;
66
65
  if (!options.thumbnail && thumbnailFile) {
67
66
  options.thumbnail = thumbnailFile;
68
67
  }
69
68
  // update template items with source-itemId type keyword
70
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (template) {
71
- var sourceId = "source-" + template.itemId;
69
+ solutionTemplateData.templates = solutionTemplateData.templates.map((template) => {
70
+ const sourceId = "source-" + template.itemId;
72
71
  /* istanbul ignore else */
73
72
  if (template.item) {
74
73
  /* istanbul ignore else */
@@ -92,23 +91,24 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
92
91
  templateDictionary.portalBaseUrl = _getPortalBaseUrl(portalResponse, authentication);
93
92
  templateDictionary.user = userResponse;
94
93
  templateDictionary.user.folders = foldersAndGroupsResponse.folders;
95
- templateDictionary.user.groups = foldersAndGroupsResponse.groups.filter(function (group) {
96
- return group.owner === templateDictionary.user.username;
97
- });
94
+ templateDictionary.user.groups = foldersAndGroupsResponse.groups.filter((group) => group.owner === templateDictionary.user.username);
95
+ // if we have tracking views and the user is not admin or the org doesn't support tracking an error is thrown
96
+ common.setLocationTrackingEnabled(portalResponse, userResponse, templateDictionary, solutionTemplateData.templates);
97
+ const trackingOwnerPromise = common.getTackingServiceOwner(templateDictionary, authentication);
98
98
  // Create a folder to hold the deployed solution. We use the solution name, appending a sequential
99
99
  // suffix if the folder exists, e.g.,
100
100
  // * Manage Right of Way Activities
101
101
  // * Manage Right of Way Activities 1
102
102
  // * Manage Right of Way Activities 2
103
- var folderPromise = common.createUniqueFolder(solutionTemplateBase.title, templateDictionary, authentication);
103
+ const folderPromise = common.createUniqueFolder(solutionTemplateBase.title, templateDictionary, authentication);
104
104
  // Apply the portal extents to the solution
105
- var portalExtent = portalResponse.defaultExtent;
106
- var extentsPromise = common.convertExtentWithFallback(portalExtent, undefined, { wkid: 4326 }, portalResponse.helperServices.geometry.url, authentication);
105
+ const portalExtent = portalResponse.defaultExtent;
106
+ const extentsPromise = common.convertExtentWithFallback(portalExtent, undefined, { wkid: 4326 }, portalResponse.helperServices.geometry.url, authentication);
107
107
  // Await completion of async actions: folder creation & extents conversion
108
- return Promise.all([folderPromise, extentsPromise]);
108
+ return Promise.all([folderPromise, extentsPromise, trackingOwnerPromise]);
109
109
  })
110
- .then(function (responses) {
111
- var _a = (0, tslib_1.__read)(responses, 2), folderResponse = _a[0], wgs84Extent = _a[1];
110
+ .then(responses => {
111
+ const [folderResponse, wgs84Extent, trackingOwnerResponse] = responses;
112
112
  deployedFolderId = folderResponse.folder.id;
113
113
  templateDictionary.folderId = deployedFolderId;
114
114
  templateDictionary.solutionItemExtent =
@@ -124,8 +124,18 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
124
124
  [wgs84Extent.xmin, wgs84Extent.ymin],
125
125
  [wgs84Extent.xmax, wgs84Extent.ymax]
126
126
  ];
127
+ // update templateDictionary to indicate if the user owns the tracking service
128
+ // this will affect how we handle group sharing
129
+ /* istanbul ignore else */
130
+ if (templateDictionary.locationTrackingEnabled) {
131
+ (0, solution_common_1.setCreateProp)(templateDictionary, "locationTracking.userIsOwner", trackingOwnerResponse);
132
+ }
127
133
  // Create a deployed Solution item
128
- var createSolutionItemBase = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, common.sanitizeJSONAndReportChanges(solutionTemplateBase)), { type: "Solution", typeKeywords: ["Solution"] });
134
+ const createSolutionItemBase = {
135
+ ...common.sanitizeJSONAndReportChanges(solutionTemplateBase),
136
+ type: "Solution",
137
+ typeKeywords: ["Solution"]
138
+ };
129
139
  if (options.additionalTypeKeywords) {
130
140
  createSolutionItemBase.typeKeywords = ["Solution"].concat(options.additionalTypeKeywords);
131
141
  }
@@ -133,16 +143,16 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
133
143
  createSolutionItemBase.thumbnail = options.thumbnail;
134
144
  return common.createItemWithData(createSolutionItemBase, {}, authentication, deployedFolderId);
135
145
  })
136
- .then(function (createSolutionResponse) {
146
+ .then(createSolutionResponse => {
137
147
  deployedSolutionId = createSolutionResponse.id;
138
148
  // Protect the solution item
139
- var protectOptions = {
149
+ const protectOptions = {
140
150
  id: deployedSolutionId,
141
- authentication: authentication
151
+ authentication
142
152
  };
143
153
  return portal.protectItem(protectOptions);
144
154
  })
145
- .then(function () {
155
+ .then(() => {
146
156
  // TODO: Attach the whole solution model so we can
147
157
  // have stuff like `{{solution.item.title}}
148
158
  templateDictionary.solutionItemId = deployedSolutionId;
@@ -152,32 +162,28 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
152
162
  // Handle the contained item templates
153
163
  return deployItems.deploySolutionItems(storageAuthentication.portal, templateSolutionId, solutionTemplateData.templates, storageAuthentication, templateDictionary, deployedSolutionId, authentication, options);
154
164
  })
155
- .then(function (clonedSolutionsResponse) {
156
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (itemTemplate) {
165
+ .then((clonedSolutionsResponse) => {
166
+ solutionTemplateData.templates = solutionTemplateData.templates.map((itemTemplate) => {
157
167
  // Update ids present in template dictionary
158
- itemTemplate.itemId = common.getProp(templateDictionary, itemTemplate.itemId + ".itemId");
168
+ itemTemplate.itemId = common.getProp(templateDictionary, `${itemTemplate.itemId}.itemId`);
159
169
  // Update the dependencies hash to point to the new item ids
160
- itemTemplate.dependencies = itemTemplate.dependencies.map(function (id) {
161
- return (0, hub_common_1.getWithDefault)(templateDictionary, id + ".itemId", id);
162
- });
170
+ itemTemplate.dependencies = itemTemplate.dependencies.map((id) => (0, hub_common_1.getWithDefault)(templateDictionary, `${id}.itemId`, id));
163
171
  return itemTemplate;
164
172
  });
165
173
  // Sort the templates into build order, which is provided by clonedSolutionsResponse
166
- (0, sortTemplates_1.sortTemplates)(solutionTemplateData.templates, clonedSolutionsResponse.map(function (response) { return response.id; }));
174
+ (0, sortTemplates_1.sortTemplates)(solutionTemplateData.templates, clonedSolutionsResponse.map(response => response.id));
167
175
  // Wrap up with post-processing, in which we deal with groups and cycle remnants
168
176
  return (0, post_process_1.postProcess)(deployedSolutionId, solutionTemplateData.templates, clonedSolutionsResponse, authentication, templateDictionary);
169
177
  })
170
- .then(function () {
178
+ .then(() => {
171
179
  // Update solution item using internal representation & and the updated data JSON
172
180
  solutionTemplateBase.typeKeywords = [].concat(solutionTemplateBase.typeKeywords, ["Deployed"]);
173
- var iTemplateKeyword = solutionTemplateBase.typeKeywords.indexOf("Template");
181
+ const iTemplateKeyword = solutionTemplateBase.typeKeywords.indexOf("Template");
174
182
  /* istanbul ignore else */
175
183
  if (iTemplateKeyword >= 0) {
176
184
  solutionTemplateBase.typeKeywords.splice(iTemplateKeyword, 1);
177
185
  }
178
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (itemTemplate) {
179
- return _purgeTemplateProperties(itemTemplate);
180
- });
186
+ solutionTemplateData.templates = solutionTemplateData.templates.map((itemTemplate) => _purgeTemplateProperties(itemTemplate));
181
187
  solutionTemplateData.templates = _updateGroupReferences(solutionTemplateData.templates, templateDictionary);
182
188
  // Update solution items data using template dictionary, and then update the
183
189
  // itemId & dependencies in each item template
@@ -189,7 +195,7 @@ function deploySolutionFromTemplate(templateSolutionId, solutionTemplateBase, so
189
195
  }
190
196
  return common.updateItem(solutionTemplateBase, authentication, deployedFolderId);
191
197
  })
192
- .then(function () { return resolve(solutionTemplateBase.id); }, reject);
198
+ .then(() => resolve(solutionTemplateBase.id), reject);
193
199
  });
194
200
  }
195
201
  exports.deploySolutionFromTemplate = deploySolutionFromTemplate;
@@ -205,9 +211,8 @@ exports.deploySolutionFromTemplate = deploySolutionFromTemplate;
205
211
  function _applySourceToDeployOptions(deployOptions, solutionTemplateBase, templateDictionary, authentication) {
206
212
  // Deploy a solution from the template's contents,
207
213
  // using the template's information as defaults for the deployed solution item
208
- ["title", "snippet", "description", "tags"].forEach(function (prop) {
209
- var _a;
210
- deployOptions[prop] = (_a = deployOptions[prop]) !== null && _a !== void 0 ? _a : solutionTemplateBase[prop];
214
+ ["title", "snippet", "description", "tags"].forEach(prop => {
215
+ deployOptions[prop] = deployOptions[prop] ?? solutionTemplateBase[prop];
211
216
  if (deployOptions[prop]) {
212
217
  solutionTemplateBase[prop] = deployOptions[prop];
213
218
  // carry these options forward on the templateDict
@@ -228,15 +233,15 @@ function _replaceParamVariables(solutionTemplateData, templateDictionary) {
228
233
  // for variable replacement
229
234
  // for spatial reference specifically we need to replace up front so the default extent
230
235
  // logic can execute as expected
231
- solutionTemplateData.templates = solutionTemplateData.templates.map(function (template) {
236
+ solutionTemplateData.templates = solutionTemplateData.templates.map((template) => {
232
237
  // can't do this as it causes other values that don't exist in the dict yet to revert to defaults they may have defined
233
238
  // return common.replaceInTemplate(template, templateDictionary);
234
239
  /* istanbul ignore else */
235
240
  if (template.type === "Feature Service") {
236
- var paramsLookup = "params.";
237
- var wkidItemPath = "item.spatialReference.wkid";
241
+ const paramsLookup = "params.";
242
+ const wkidItemPath = "item.spatialReference.wkid";
238
243
  template = _updateProp(template, wkidItemPath, paramsLookup, templateDictionary);
239
- var wkidServicePath = "properties.service.spatialReference.wkid";
244
+ const wkidServicePath = "properties.service.spatialReference.wkid";
240
245
  template = _updateProp(template, wkidServicePath, paramsLookup, templateDictionary);
241
246
  }
242
247
  return template;
@@ -244,7 +249,7 @@ function _replaceParamVariables(solutionTemplateData, templateDictionary) {
244
249
  }
245
250
  exports._replaceParamVariables = _replaceParamVariables;
246
251
  function _updateProp(template, path, lookup, templateDictionary) {
247
- var wkid = common.getProp(template, path);
252
+ const wkid = common.getProp(template, path);
248
253
  /* istanbul ignore else */
249
254
  if (wkid && typeof wkid === "string" && wkid.indexOf(lookup) > -1) {
250
255
  common.setProp(template, path, common.replaceInTemplate(wkid, templateDictionary));
@@ -253,9 +258,9 @@ function _updateProp(template, path, lookup, templateDictionary) {
253
258
  }
254
259
  exports._updateProp = _updateProp;
255
260
  function _checkedReplaceAll(template, oldValue, newValue) {
256
- var newTemplate;
261
+ let newTemplate;
257
262
  if (template && template.indexOf(oldValue) > -1) {
258
- var re = new RegExp(oldValue, "g");
263
+ const re = new RegExp(oldValue, "g");
259
264
  newTemplate = template.replace(re, newValue);
260
265
  }
261
266
  else {
@@ -267,29 +272,29 @@ exports._checkedReplaceAll = _checkedReplaceAll;
267
272
  function _getPortalBaseUrl(portalResponse, authentication) {
268
273
  // As of Spring 2020, only HTTPS (see
269
274
  // https://www.esri.com/arcgis-blog/products/product/administration/2019-arcgis-transport-security-improvements/)
270
- var scheme = "https"; // portalResponse.allSSL ? "https" : "http";
271
- var urlKey = common.getProp(portalResponse, "urlKey");
272
- var customBaseUrl = common.getProp(portalResponse, "customBaseUrl");
273
- var enterpriseBaseUrl = common.getProp(portalResponse, "portalHostname");
275
+ const scheme = "https"; // portalResponse.allSSL ? "https" : "http";
276
+ const urlKey = common.getProp(portalResponse, "urlKey");
277
+ const customBaseUrl = common.getProp(portalResponse, "customBaseUrl");
278
+ const enterpriseBaseUrl = common.getProp(portalResponse, "portalHostname");
274
279
  return urlKey && customBaseUrl
275
- ? scheme + "://" + urlKey + "." + customBaseUrl
280
+ ? `${scheme}://${urlKey}.${customBaseUrl}`
276
281
  : enterpriseBaseUrl
277
- ? scheme + "://" + enterpriseBaseUrl
282
+ ? `${scheme}://${enterpriseBaseUrl}`
278
283
  : authentication.portal.replace("/sharing/rest", "");
279
284
  }
280
285
  exports._getPortalBaseUrl = _getPortalBaseUrl;
281
286
  function _updateGroupReferences(itemTemplates, templateDictionary) {
282
- var groupIds = itemTemplates.reduce(function (result, t) {
287
+ const groupIds = itemTemplates.reduce((result, t) => {
283
288
  if (t.type === "Group") {
284
289
  result.push(t.itemId);
285
290
  }
286
291
  return result;
287
292
  }, []);
288
- Object.keys(templateDictionary).forEach(function (k) {
289
- var newId = templateDictionary[k].itemId;
293
+ Object.keys(templateDictionary).forEach(k => {
294
+ const newId = templateDictionary[k].itemId;
290
295
  if (groupIds.indexOf(newId) > -1) {
291
- itemTemplates.forEach(function (t) {
292
- t.groups = t.groups.map(function (id) { return (id === k ? newId : id); });
296
+ itemTemplates.forEach(t => {
297
+ t.groups = t.groups.map((id) => (id === k ? newId : id));
293
298
  });
294
299
  }
295
300
  });
@@ -297,8 +302,8 @@ function _updateGroupReferences(itemTemplates, templateDictionary) {
297
302
  }
298
303
  exports._updateGroupReferences = _updateGroupReferences;
299
304
  function _purgeTemplateProperties(itemTemplate) {
300
- var retainProps = ["itemId", "type", "dependencies", "groups"];
301
- var deleteProps = Object.keys(itemTemplate).filter(function (k) { return retainProps.indexOf(k) < 0; });
305
+ const retainProps = ["itemId", "type", "dependencies", "groups"];
306
+ const deleteProps = Object.keys(itemTemplate).filter(k => retainProps.indexOf(k) < 0);
302
307
  common.deleteProps(itemTemplate, deleteProps);
303
308
  return itemTemplate;
304
309
  }
@@ -311,8 +316,7 @@ exports._purgeTemplateProperties = _purgeTemplateProperties;
311
316
  * @return Match in template dictionary or original id
312
317
  */
313
318
  function _getNewItemId(id, templateDictionary) {
314
- var _a;
315
- return (_a = common.getProp(templateDictionary, id + ".itemId")) !== null && _a !== void 0 ? _a : id;
319
+ return common.getProp(templateDictionary, id + ".itemId") ?? id;
316
320
  }
317
321
  exports._getNewItemId = _getNewItemId;
318
322
  //# sourceMappingURL=deploySolutionFromTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploySolutionFromTemplate.js","sourceRoot":"","sources":["../../src/deploySolutionFromTemplate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploySolutionFromTemplate.js","sourceRoot":"","sources":["../../src/deploySolutionFromTemplate.ts"],"names":[],"mappings":"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"}