@esri/solution-common 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 (258) hide show
  1. package/dist/esm/completeItem.js +6 -7
  2. package/dist/esm/completeItem.js.map +1 -1
  3. package/dist/esm/create-hub-request-options.d.ts +4 -4
  4. package/dist/esm/create-hub-request-options.js +9 -12
  5. package/dist/esm/create-hub-request-options.js.map +1 -1
  6. package/dist/esm/deleteHelpers/deleteEmptyGroups.js +2 -2
  7. package/dist/esm/deleteHelpers/deleteEmptyGroups.js.map +1 -1
  8. package/dist/esm/deleteHelpers/deleteGroupIfEmpty.js +15 -15
  9. package/dist/esm/deleteHelpers/deleteGroupIfEmpty.js.map +1 -1
  10. package/dist/esm/deleteHelpers/deleteSolutionContents.js +20 -22
  11. package/dist/esm/deleteHelpers/deleteSolutionContents.js.map +1 -1
  12. package/dist/esm/deleteHelpers/deleteSolutionFolder.js +10 -10
  13. package/dist/esm/deleteHelpers/deleteSolutionFolder.js.map +1 -1
  14. package/dist/esm/deleteHelpers/deleteSolutionItem.js +4 -4
  15. package/dist/esm/deleteHelpers/deleteSolutionItem.js.map +1 -1
  16. package/dist/esm/deleteHelpers/reconstructBuildOrderIds.js +1 -1
  17. package/dist/esm/deleteHelpers/reconstructBuildOrderIds.js.map +1 -1
  18. package/dist/esm/deleteHelpers/removeItems.js +20 -29
  19. package/dist/esm/deleteHelpers/removeItems.js.map +1 -1
  20. package/dist/esm/deleteHelpers/reportProgress.js +3 -6
  21. package/dist/esm/deleteHelpers/reportProgress.js.map +1 -1
  22. package/dist/esm/deleteSolution.js +10 -12
  23. package/dist/esm/deleteSolution.js.map +1 -1
  24. package/dist/esm/dependencies.js +27 -19
  25. package/dist/esm/dependencies.js.map +1 -1
  26. package/dist/esm/featureServiceHelpers.d.ts +6 -0
  27. package/dist/esm/featureServiceHelpers.js +530 -500
  28. package/dist/esm/featureServiceHelpers.js.map +1 -1
  29. package/dist/esm/generalHelpers.js +72 -76
  30. package/dist/esm/generalHelpers.js.map +1 -1
  31. package/dist/esm/get-subscription-info.js +5 -3
  32. package/dist/esm/get-subscription-info.js.map +1 -1
  33. package/dist/esm/getDeletableSolutionInfo.js +6 -10
  34. package/dist/esm/getDeletableSolutionInfo.js.map +1 -1
  35. package/dist/esm/getSolutionSummary.js +15 -19
  36. package/dist/esm/getSolutionSummary.js.map +1 -1
  37. package/dist/esm/index.d.ts +1 -0
  38. package/dist/esm/index.js +1 -0
  39. package/dist/esm/index.js.map +1 -1
  40. package/dist/esm/interfaces.d.ts +39 -1
  41. package/dist/esm/interfaces.js +3 -3
  42. package/dist/esm/interfaces.js.map +1 -1
  43. package/dist/esm/libConnectors.js +5 -7
  44. package/dist/esm/libConnectors.js.map +1 -1
  45. package/dist/esm/migrations/apply-schema.js +3 -3
  46. package/dist/esm/migrations/apply-schema.js.map +1 -1
  47. package/dist/esm/migrations/is-legacy-solution.js +2 -2
  48. package/dist/esm/migrations/is-legacy-solution.js.map +1 -1
  49. package/dist/esm/migrations/upgrade-three-dot-one.js +3 -3
  50. package/dist/esm/migrations/upgrade-three-dot-one.js.map +1 -1
  51. package/dist/esm/migrations/upgrade-three-dot-zero.js +1 -1
  52. package/dist/esm/migrations/upgrade-three-dot-zero.js.map +1 -1
  53. package/dist/esm/migrations/upgrade-two-dot-five.js +17 -8
  54. package/dist/esm/migrations/upgrade-two-dot-five.js.map +1 -1
  55. package/dist/esm/migrations/upgrade-two-dot-four.js +12 -12
  56. package/dist/esm/migrations/upgrade-two-dot-four.js.map +1 -1
  57. package/dist/esm/migrations/upgrade-two-dot-one.js +1 -1
  58. package/dist/esm/migrations/upgrade-two-dot-one.js.map +1 -1
  59. package/dist/esm/migrations/upgrade-two-dot-seven.js +1 -1
  60. package/dist/esm/migrations/upgrade-two-dot-seven.js.map +1 -1
  61. package/dist/esm/migrations/upgrade-two-dot-six.js +9 -12
  62. package/dist/esm/migrations/upgrade-two-dot-six.js.map +1 -1
  63. package/dist/esm/migrations/upgrade-two-dot-three.js +3 -3
  64. package/dist/esm/migrations/upgrade-two-dot-three.js.map +1 -1
  65. package/dist/esm/migrations/upgrade-two-dot-two.js +3 -3
  66. package/dist/esm/migrations/upgrade-two-dot-two.js.map +1 -1
  67. package/dist/esm/migrations/upgrade-two-dot-zero.js +8 -9
  68. package/dist/esm/migrations/upgrade-two-dot-zero.js.map +1 -1
  69. package/dist/esm/migrator.js +5 -7
  70. package/dist/esm/migrator.js.map +1 -1
  71. package/dist/esm/polyfills.js +5 -5
  72. package/dist/esm/polyfills.js.map +1 -1
  73. package/dist/esm/resourceHelpers.js +54 -57
  74. package/dist/esm/resourceHelpers.js.map +1 -1
  75. package/dist/esm/resources/add-resource-from-blob.js +2 -2
  76. package/dist/esm/resources/add-resource-from-blob.js.map +1 -1
  77. package/dist/esm/resources/addMetadataFromBlob.js +1 -1
  78. package/dist/esm/resources/addMetadataFromBlob.js.map +1 -1
  79. package/dist/esm/resources/convert-item-resource-to-storage-resource.js +6 -7
  80. package/dist/esm/resources/convert-item-resource-to-storage-resource.js.map +1 -1
  81. package/dist/esm/resources/convert-storage-resource-to-item-resource.js +8 -9
  82. package/dist/esm/resources/convert-storage-resource-to-item-resource.js.map +1 -1
  83. package/dist/esm/resources/copyAssociatedFiles.js +44 -53
  84. package/dist/esm/resources/copyAssociatedFiles.js.map +1 -1
  85. package/dist/esm/resources/copyDataIntoItem.js +5 -11
  86. package/dist/esm/resources/copyDataIntoItem.js.map +1 -1
  87. package/dist/esm/resources/copyMetadataIntoItem.js +4 -10
  88. package/dist/esm/resources/copyMetadataIntoItem.js.map +1 -1
  89. package/dist/esm/resources/copyResourceIntoZip.js +5 -7
  90. package/dist/esm/resources/copyResourceIntoZip.js.map +1 -1
  91. package/dist/esm/resources/copyZipIntoItem.js +5 -9
  92. package/dist/esm/resources/copyZipIntoItem.js.map +1 -1
  93. package/dist/esm/resources/createCopyResults.js +5 -2
  94. package/dist/esm/resources/createCopyResults.js.map +1 -1
  95. package/dist/esm/resources/get-blob.js +7 -5
  96. package/dist/esm/resources/get-blob.js.map +1 -1
  97. package/dist/esm/resources/getItemResourcesFilesFromPaths.js +7 -7
  98. package/dist/esm/resources/getItemResourcesFilesFromPaths.js.map +1 -1
  99. package/dist/esm/resources/getItemResourcesPaths.js +7 -8
  100. package/dist/esm/resources/getItemResourcesPaths.js.map +1 -1
  101. package/dist/esm/resources/transform-resource-paths-to-solution-resources.js +8 -9
  102. package/dist/esm/resources/transform-resource-paths-to-solution-resources.js.map +1 -1
  103. package/dist/esm/restHelpers.d.ts +65 -5
  104. package/dist/esm/restHelpers.js +422 -276
  105. package/dist/esm/restHelpers.js.map +1 -1
  106. package/dist/esm/restHelpersGet.js +102 -111
  107. package/dist/esm/restHelpersGet.js.map +1 -1
  108. package/dist/esm/sharing/share-item-to-groups.d.ts +2 -1
  109. package/dist/esm/sharing/share-item-to-groups.js +12 -6
  110. package/dist/esm/sharing/share-item-to-groups.js.map +1 -1
  111. package/dist/esm/templatization.js +64 -40
  112. package/dist/esm/templatization.js.map +1 -1
  113. package/dist/esm/trackingHelpers.d.ts +116 -0
  114. package/dist/esm/trackingHelpers.js +205 -0
  115. package/dist/esm/trackingHelpers.js.map +1 -0
  116. package/dist/esm/velocityHelpers.d.ts +2 -0
  117. package/dist/esm/velocityHelpers.js +30 -12
  118. package/dist/esm/velocityHelpers.js.map +1 -1
  119. package/dist/esm/workforceHelpers.d.ts +11 -0
  120. package/dist/esm/workforceHelpers.js +208 -180
  121. package/dist/esm/workforceHelpers.js.map +1 -1
  122. package/dist/node/completeItem.js +8 -9
  123. package/dist/node/completeItem.js.map +1 -1
  124. package/dist/node/create-hub-request-options.d.ts +4 -4
  125. package/dist/node/create-hub-request-options.js +11 -14
  126. package/dist/node/create-hub-request-options.js.map +1 -1
  127. package/dist/node/deleteHelpers/deleteEmptyGroups.js +3 -3
  128. package/dist/node/deleteHelpers/deleteEmptyGroups.js.map +1 -1
  129. package/dist/node/deleteHelpers/deleteGroupIfEmpty.js +16 -16
  130. package/dist/node/deleteHelpers/deleteGroupIfEmpty.js.map +1 -1
  131. package/dist/node/deleteHelpers/deleteSolutionContents.js +26 -28
  132. package/dist/node/deleteHelpers/deleteSolutionContents.js.map +1 -1
  133. package/dist/node/deleteHelpers/deleteSolutionFolder.js +11 -11
  134. package/dist/node/deleteHelpers/deleteSolutionFolder.js.map +1 -1
  135. package/dist/node/deleteHelpers/deleteSolutionItem.js +6 -6
  136. package/dist/node/deleteHelpers/deleteSolutionItem.js.map +1 -1
  137. package/dist/node/deleteHelpers/index.js +1 -1
  138. package/dist/node/deleteHelpers/reconstructBuildOrderIds.js +2 -2
  139. package/dist/node/deleteHelpers/reconstructBuildOrderIds.js.map +1 -1
  140. package/dist/node/deleteHelpers/removeItems.js +26 -35
  141. package/dist/node/deleteHelpers/removeItems.js.map +1 -1
  142. package/dist/node/deleteHelpers/reportProgress.js +4 -7
  143. package/dist/node/deleteHelpers/reportProgress.js.map +1 -1
  144. package/dist/node/deleteSolution.js +12 -14
  145. package/dist/node/deleteSolution.js.map +1 -1
  146. package/dist/node/dependencies.js +29 -21
  147. package/dist/node/dependencies.js.map +1 -1
  148. package/dist/node/featureServiceHelpers.d.ts +6 -0
  149. package/dist/node/featureServiceHelpers.js +535 -504
  150. package/dist/node/featureServiceHelpers.js.map +1 -1
  151. package/dist/node/generalHelpers.js +75 -79
  152. package/dist/node/generalHelpers.js.map +1 -1
  153. package/dist/node/get-subscription-info.js +7 -5
  154. package/dist/node/get-subscription-info.js.map +1 -1
  155. package/dist/node/getDeletableSolutionInfo.js +8 -12
  156. package/dist/node/getDeletableSolutionInfo.js.map +1 -1
  157. package/dist/node/getSolutionSummary.js +19 -23
  158. package/dist/node/getSolutionSummary.js.map +1 -1
  159. package/dist/node/index.d.ts +1 -0
  160. package/dist/node/index.js +2 -1
  161. package/dist/node/index.js.map +1 -1
  162. package/dist/node/interfaces.d.ts +39 -1
  163. package/dist/node/interfaces.js.map +1 -1
  164. package/dist/node/libConnectors.js +8 -10
  165. package/dist/node/libConnectors.js.map +1 -1
  166. package/dist/node/migrations/apply-schema.js +4 -4
  167. package/dist/node/migrations/apply-schema.js.map +1 -1
  168. package/dist/node/migrations/is-legacy-solution.js +3 -3
  169. package/dist/node/migrations/is-legacy-solution.js.map +1 -1
  170. package/dist/node/migrations/upgrade-three-dot-one.js +5 -5
  171. package/dist/node/migrations/upgrade-three-dot-one.js.map +1 -1
  172. package/dist/node/migrations/upgrade-three-dot-zero.js +2 -2
  173. package/dist/node/migrations/upgrade-three-dot-zero.js.map +1 -1
  174. package/dist/node/migrations/upgrade-two-dot-five.js +18 -9
  175. package/dist/node/migrations/upgrade-two-dot-five.js.map +1 -1
  176. package/dist/node/migrations/upgrade-two-dot-four.js +13 -13
  177. package/dist/node/migrations/upgrade-two-dot-four.js.map +1 -1
  178. package/dist/node/migrations/upgrade-two-dot-one.js +2 -2
  179. package/dist/node/migrations/upgrade-two-dot-one.js.map +1 -1
  180. package/dist/node/migrations/upgrade-two-dot-seven.js +2 -2
  181. package/dist/node/migrations/upgrade-two-dot-seven.js.map +1 -1
  182. package/dist/node/migrations/upgrade-two-dot-six.js +10 -13
  183. package/dist/node/migrations/upgrade-two-dot-six.js.map +1 -1
  184. package/dist/node/migrations/upgrade-two-dot-three.js +5 -5
  185. package/dist/node/migrations/upgrade-two-dot-three.js.map +1 -1
  186. package/dist/node/migrations/upgrade-two-dot-two.js +5 -5
  187. package/dist/node/migrations/upgrade-two-dot-two.js.map +1 -1
  188. package/dist/node/migrations/upgrade-two-dot-zero.js +9 -10
  189. package/dist/node/migrations/upgrade-two-dot-zero.js.map +1 -1
  190. package/dist/node/migrator.js +16 -18
  191. package/dist/node/migrator.js.map +1 -1
  192. package/dist/node/polyfills.js +5 -5
  193. package/dist/node/polyfills.js.map +1 -1
  194. package/dist/node/resourceHelpers.js +62 -65
  195. package/dist/node/resourceHelpers.js.map +1 -1
  196. package/dist/node/resources/add-resource-from-blob.js +4 -4
  197. package/dist/node/resources/add-resource-from-blob.js.map +1 -1
  198. package/dist/node/resources/addMetadataFromBlob.js +2 -2
  199. package/dist/node/resources/addMetadataFromBlob.js.map +1 -1
  200. package/dist/node/resources/convert-item-resource-to-storage-resource.js +6 -7
  201. package/dist/node/resources/convert-item-resource-to-storage-resource.js.map +1 -1
  202. package/dist/node/resources/convert-storage-resource-to-item-resource.js +9 -10
  203. package/dist/node/resources/convert-storage-resource-to-item-resource.js.map +1 -1
  204. package/dist/node/resources/copyAssociatedFiles.js +52 -61
  205. package/dist/node/resources/copyAssociatedFiles.js.map +1 -1
  206. package/dist/node/resources/copyDataIntoItem.js +9 -15
  207. package/dist/node/resources/copyDataIntoItem.js.map +1 -1
  208. package/dist/node/resources/copyMetadataIntoItem.js +7 -13
  209. package/dist/node/resources/copyMetadataIntoItem.js.map +1 -1
  210. package/dist/node/resources/copyResourceIntoZip.js +7 -9
  211. package/dist/node/resources/copyResourceIntoZip.js.map +1 -1
  212. package/dist/node/resources/copyZipIntoItem.js +8 -12
  213. package/dist/node/resources/copyZipIntoItem.js.map +1 -1
  214. package/dist/node/resources/createCopyResults.js +5 -2
  215. package/dist/node/resources/createCopyResults.js.map +1 -1
  216. package/dist/node/resources/get-blob.js +8 -6
  217. package/dist/node/resources/get-blob.js.map +1 -1
  218. package/dist/node/resources/getItemResourcesFilesFromPaths.js +8 -8
  219. package/dist/node/resources/getItemResourcesFilesFromPaths.js.map +1 -1
  220. package/dist/node/resources/getItemResourcesPaths.js +9 -10
  221. package/dist/node/resources/getItemResourcesPaths.js.map +1 -1
  222. package/dist/node/resources/index.js +1 -1
  223. package/dist/node/resources/transform-resource-paths-to-solution-resources.js +10 -11
  224. package/dist/node/resources/transform-resource-paths-to-solution-resources.js.map +1 -1
  225. package/dist/node/restHelpers.d.ts +65 -5
  226. package/dist/node/restHelpers.js +437 -285
  227. package/dist/node/restHelpers.js.map +1 -1
  228. package/dist/node/restHelpersGet.js +107 -116
  229. package/dist/node/restHelpersGet.js.map +1 -1
  230. package/dist/node/sharing/index.js +1 -1
  231. package/dist/node/sharing/share-item-to-groups.d.ts +2 -1
  232. package/dist/node/sharing/share-item-to-groups.js +13 -7
  233. package/dist/node/sharing/share-item-to-groups.js.map +1 -1
  234. package/dist/node/templatization.js +61 -37
  235. package/dist/node/templatization.js.map +1 -1
  236. package/dist/node/trackingHelpers.d.ts +116 -0
  237. package/dist/node/trackingHelpers.js +217 -0
  238. package/dist/node/trackingHelpers.js.map +1 -0
  239. package/dist/node/velocityHelpers.d.ts +2 -0
  240. package/dist/node/velocityHelpers.js +33 -15
  241. package/dist/node/velocityHelpers.js.map +1 -1
  242. package/dist/node/workforceHelpers.d.ts +11 -0
  243. package/dist/node/workforceHelpers.js +214 -185
  244. package/dist/node/workforceHelpers.js.map +1 -1
  245. package/dist/umd/common.umd.js +14830 -14466
  246. package/dist/umd/common.umd.js.map +1 -1
  247. package/dist/umd/common.umd.min.js +3 -3
  248. package/dist/umd/common.umd.min.js.map +1 -1
  249. package/dist/umd/create-hub-request-options.d.ts +4 -4
  250. package/dist/umd/featureServiceHelpers.d.ts +6 -0
  251. package/dist/umd/index.d.ts +1 -0
  252. package/dist/umd/interfaces.d.ts +39 -1
  253. package/dist/umd/restHelpers.d.ts +65 -5
  254. package/dist/umd/sharing/share-item-to-groups.d.ts +2 -1
  255. package/dist/umd/trackingHelpers.d.ts +116 -0
  256. package/dist/umd/velocityHelpers.d.ts +2 -0
  257. package/dist/umd/workforceHelpers.d.ts +11 -0
  258. package/package.json +24 -24
@@ -15,17 +15,16 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports._applyEdits = exports._updateDispatchers = exports._getField = exports._getAddFeatures = exports._updateUrl = exports._getFields = exports.fineTuneCreatedWorkforceItem = exports._getURLs = exports.urlTest = exports.getKeyWorkforceProperties = exports.isWorkforceProject = exports._templatizeWorkforceDispatcherOrWorker = exports._templatizeWorkforceProject = exports.postProcessWorkforceTemplates = exports.getReplaceValue = exports.getLayerId = exports._templatizeUrlTemplate = exports.getUrlDependencies = exports._getAssignmentIntegrationInfos = exports._getAssignmentTypeInfos = exports.getWorkforceServiceInfo = exports.getWorkforceDependencies = exports.templatizeWorkforce = exports.extractWorkforceDependencies = exports.convertWorkforceItemToTemplate = void 0;
19
- var tslib_1 = require("tslib");
18
+ exports._applyEdits = exports._updateDispatchers = exports._getField = exports._getAddFeatures = exports._updateUrl = exports._getFields = exports.fineTuneCreatedWorkforceItem = exports._getURLs = exports.urlTest = exports.getKeyWorkforceProperties = exports.isWorkforceProject = exports._templatizeWorkforceDispatcherOrWorker = exports._templatizeWorkforceProject = exports.postProcessWorkforceTemplates = exports.getReplaceValue = exports.getLayerId = exports._templatizeUrlTemplate = exports.getUrlDependencies = exports._getAssignmentIntegrationInfos = exports._getAssignmentTypeInfos = exports._updateGlobalIdAndAssignmentType = exports.getWorkforceServiceInfo = exports.getWorkforceDependencies = exports.templatizeWorkforce = exports.extractWorkforceDependencies = exports.convertWorkforceItemToTemplate = void 0;
20
19
  /**
21
20
  * Provides general helper functions.
22
21
  *
23
22
  * @module workforceHelpers
24
23
  */
25
- var arcgis_rest_feature_layer_1 = require("@esri/arcgis-rest-feature-layer");
26
- var generalHelpers_1 = require("./generalHelpers");
27
- var restHelpers_1 = require("./restHelpers");
28
- var templatization_1 = require("./templatization");
24
+ const arcgis_rest_feature_layer_1 = require("@esri/arcgis-rest-feature-layer");
25
+ const generalHelpers_1 = require("./generalHelpers");
26
+ const restHelpers_1 = require("./restHelpers");
27
+ const templatization_1 = require("./templatization");
29
28
  //#region workforce v1
30
29
  /**
31
30
  * Converts an workforce item to a template.
@@ -35,20 +34,20 @@ var templatization_1 = require("./templatization");
35
34
  * @return templatized itemTemplate
36
35
  */
37
36
  function convertWorkforceItemToTemplate(itemTemplate, authentication) {
38
- return new Promise(function (resolve, reject) {
37
+ return new Promise((resolve, reject) => {
39
38
  // This function is specific to workforce v1 project structure
40
39
  // Key properties that contain item IDs for the workforce project type
41
- var keyProperties = getKeyWorkforceProperties(1);
40
+ const keyProperties = getKeyWorkforceProperties(1);
42
41
  // The templates data to process
43
- var data = itemTemplate.data;
42
+ const data = itemTemplate.data;
44
43
  if (data) {
45
44
  // Extract dependencies
46
- extractWorkforceDependencies(data, keyProperties, authentication).then(function (results) {
45
+ extractWorkforceDependencies(data, keyProperties, authentication).then(results => {
47
46
  itemTemplate.dependencies = results.dependencies;
48
47
  // templatize key properties
49
48
  itemTemplate.data = templatizeWorkforce(data, keyProperties, results.urlHash);
50
49
  resolve(itemTemplate);
51
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
50
+ }, e => reject((0, generalHelpers_1.fail)(e)));
52
51
  }
53
52
  else {
54
53
  resolve(itemTemplate);
@@ -65,13 +64,13 @@ exports.convertWorkforceItemToTemplate = convertWorkforceItemToTemplate;
65
64
  * @return List of dependencies ids
66
65
  */
67
66
  function extractWorkforceDependencies(data, keyProperties, authentication) {
68
- return new Promise(function (resolve, reject) {
69
- var deps = [];
67
+ return new Promise((resolve, reject) => {
68
+ const deps = [];
70
69
  // get the ids for the service dependencies
71
70
  // "workerWebMapId" and "dispatcherWebMapId" are already IDs and don't have a serviceItemId
72
- keyProperties.forEach(function (p) {
73
- var serviceItemId = (0, generalHelpers_1.getProp)(data, p + ".serviceItemId");
74
- var v = (0, generalHelpers_1.getProp)(data, p);
71
+ keyProperties.forEach(p => {
72
+ const serviceItemId = (0, generalHelpers_1.getProp)(data, p + ".serviceItemId");
73
+ const v = (0, generalHelpers_1.getProp)(data, p);
75
74
  if (serviceItemId) {
76
75
  if (deps.indexOf(serviceItemId) === -1) {
77
76
  deps.push(serviceItemId);
@@ -82,33 +81,33 @@ function extractWorkforceDependencies(data, keyProperties, authentication) {
82
81
  }
83
82
  });
84
83
  if ((0, generalHelpers_1.getProp)(data, "assignmentIntegrations")) {
85
- var requests_1 = [];
86
- var urls_1 = [];
87
- data.assignmentIntegrations.forEach(function (ai) {
84
+ let requests = [];
85
+ let urls = [];
86
+ data.assignmentIntegrations.forEach((ai) => {
88
87
  if (ai.assignmentTypes) {
89
- var assignmentKeys = Object.keys(ai.assignmentTypes);
90
- assignmentKeys.forEach(function (k) {
91
- var urlTemplate = ai.assignmentTypes[k].urlTemplate;
88
+ const assignmentKeys = Object.keys(ai.assignmentTypes);
89
+ assignmentKeys.forEach(k => {
90
+ const urlTemplate = ai.assignmentTypes[k].urlTemplate;
92
91
  (0, generalHelpers_1.idTest)(urlTemplate, deps);
93
- var serviceRequests = urlTest(urlTemplate, authentication);
92
+ const serviceRequests = urlTest(urlTemplate, authentication);
94
93
  if (Array.isArray(serviceRequests.requests) &&
95
94
  serviceRequests.requests.length > 0) {
96
- requests_1 = requests_1.concat(serviceRequests.requests);
97
- urls_1 = urls_1.concat(serviceRequests.urls);
95
+ requests = requests.concat(serviceRequests.requests);
96
+ urls = urls.concat(serviceRequests.urls);
98
97
  }
99
98
  });
100
99
  }
101
100
  });
102
- if (requests_1.length > 0) {
103
- Promise.all(requests_1).then(function (results) {
104
- var urlHash = {};
101
+ if (requests.length > 0) {
102
+ Promise.all(requests).then(results => {
103
+ const urlHash = {};
105
104
  // Get the serviceItemId for the url
106
105
  /* istanbul ignore else */
107
106
  if (Array.isArray(results)) {
108
- results.forEach(function (result, i) {
107
+ results.forEach((result, i) => {
109
108
  /* istanbul ignore else */
110
109
  if (result.serviceItemId) {
111
- urlHash[urls_1[i]] = result.serviceItemId;
110
+ urlHash[urls[i]] = result.serviceItemId;
112
111
  /* istanbul ignore else */
113
112
  if (deps.indexOf(result.serviceItemId) === -1) {
114
113
  deps.push(result.serviceItemId);
@@ -120,7 +119,7 @@ function extractWorkforceDependencies(data, keyProperties, authentication) {
120
119
  dependencies: deps,
121
120
  urlHash: urlHash
122
121
  });
123
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
122
+ }, e => reject((0, generalHelpers_1.fail)(e)));
124
123
  }
125
124
  else {
126
125
  resolve({
@@ -147,16 +146,16 @@ exports.extractWorkforceDependencies = extractWorkforceDependencies;
147
146
  * @return an updated data object to be stored in the template
148
147
  */
149
148
  function templatizeWorkforce(data, keyProperties, urlHash) {
150
- keyProperties.forEach(function (p) {
149
+ keyProperties.forEach(p => {
151
150
  /* istanbul ignore else */
152
151
  if ((0, generalHelpers_1.getProp)(data, p)) {
153
152
  if ((0, generalHelpers_1.getProp)(data[p], "serviceItemId")) {
154
153
  // templatize properties with id and url
155
- var id = data[p].serviceItemId;
156
- var serviceItemIdSuffix = ".itemId";
154
+ const id = data[p].serviceItemId;
155
+ let serviceItemIdSuffix = ".itemId";
157
156
  /* istanbul ignore else */
158
157
  if ((0, generalHelpers_1.getProp)(data[p], "url")) {
159
- var layerId = getLayerId(data[p].url);
158
+ const layerId = getLayerId(data[p].url);
160
159
  data[p].url = (0, templatization_1.templatizeTerm)(id, id, getReplaceValue(layerId, ".url"));
161
160
  serviceItemIdSuffix = getReplaceValue(layerId, serviceItemIdSuffix);
162
161
  }
@@ -170,13 +169,13 @@ function templatizeWorkforce(data, keyProperties, urlHash) {
170
169
  });
171
170
  data["folderId"] = "{{folderId}}";
172
171
  // templatize app integrations
173
- var integrations = data.assignmentIntegrations || [];
174
- integrations.forEach(function (i) {
172
+ const integrations = data.assignmentIntegrations || [];
173
+ integrations.forEach(i => {
175
174
  _templatizeUrlTemplate(i, urlHash);
176
175
  /* istanbul ignore else */
177
176
  if (i.assignmentTypes) {
178
- var assignmentKeys = Object.keys(i.assignmentTypes);
179
- assignmentKeys.forEach(function (k) {
177
+ const assignmentKeys = Object.keys(i.assignmentTypes);
178
+ assignmentKeys.forEach(k => {
180
179
  _templatizeUrlTemplate(i.assignmentTypes[k], urlHash);
181
180
  });
182
181
  }
@@ -193,8 +192,8 @@ exports.templatizeWorkforce = templatizeWorkforce;
193
192
  * @returns an array of objects with dependency ids
194
193
  */
195
194
  function getWorkforceDependencies(itemTemplate, dependencies) {
196
- var properties = itemTemplate.item.properties || {};
197
- var keyProperties = getKeyWorkforceProperties(2);
195
+ const properties = itemTemplate.item.properties || {};
196
+ const keyProperties = getKeyWorkforceProperties(2);
198
197
  dependencies = keyProperties.reduce(function (acc, v) {
199
198
  /* istanbul ignore else */
200
199
  if (properties[v] && dependencies.indexOf(properties[v]) < 0) {
@@ -203,14 +202,14 @@ function getWorkforceDependencies(itemTemplate, dependencies) {
203
202
  return acc;
204
203
  }, dependencies);
205
204
  // We also need the dependencies listed in the Assignment Integrations table
206
- var infos = (0, generalHelpers_1.getProp)(itemTemplate, "properties.workforceInfos.assignmentIntegrationInfos");
205
+ const infos = (0, generalHelpers_1.getProp)(itemTemplate, "properties.workforceInfos.assignmentIntegrationInfos");
207
206
  /* istanbul ignore else */
208
207
  if (infos && infos.length > 0) {
209
- infos.forEach(function (info) {
210
- var infoKeys = Object.keys(info);
208
+ infos.forEach((info) => {
209
+ const infoKeys = Object.keys(info);
211
210
  /* istanbul ignore else */
212
211
  if (infoKeys.indexOf("dependencies") > -1) {
213
- info["dependencies"].forEach(function (d) {
212
+ info["dependencies"].forEach((d) => {
214
213
  /* istanbul ignore else */
215
214
  if (dependencies.indexOf(d) < 0) {
216
215
  dependencies.push(d);
@@ -219,50 +218,85 @@ function getWorkforceDependencies(itemTemplate, dependencies) {
219
218
  }
220
219
  });
221
220
  }
222
- return dependencies.map(function (d) {
221
+ return dependencies.map(d => {
223
222
  return { id: d, name: "" };
224
223
  });
225
224
  }
226
225
  exports.getWorkforceDependencies = getWorkforceDependencies;
227
226
  function getWorkforceServiceInfo(properties, url, authentication) {
228
- return new Promise(function (resolve, reject) {
227
+ return new Promise((resolve, reject) => {
229
228
  url = url.replace("/rest/admin/services", "/rest/services");
230
229
  url = _updateUrl(url);
231
- var requests = [
230
+ const requests = [
232
231
  (0, arcgis_rest_feature_layer_1.queryFeatures)({
233
- url: url + "3",
232
+ url: `${url}3`,
234
233
  where: "1=1",
235
- authentication: authentication
234
+ authentication
236
235
  }),
237
236
  (0, arcgis_rest_feature_layer_1.queryFeatures)({
238
- url: url + "4",
237
+ url: `${url}4`,
239
238
  where: "1=1",
240
- authentication: authentication
239
+ authentication
241
240
  })
242
241
  ];
243
- Promise.all(requests).then(function (responses) {
244
- var _a = (0, tslib_1.__read)(responses, 2), assignmentTypes = _a[0], assignmentIntegrations = _a[1];
242
+ Promise.all(requests).then(responses => {
243
+ const [assignmentTypes, assignmentIntegrations] = responses;
245
244
  properties.workforceInfos = {
246
245
  assignmentTypeInfos: _getAssignmentTypeInfos(assignmentTypes)
247
246
  };
248
- _getAssignmentIntegrationInfos(assignmentIntegrations, authentication).then(function (results) {
247
+ _getAssignmentIntegrationInfos(assignmentIntegrations, authentication).then(results => {
249
248
  properties.workforceInfos["assignmentIntegrationInfos"] = results;
249
+ _updateGlobalIdAndAssignmentType(properties.workforceInfos);
250
250
  resolve(properties);
251
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
252
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
251
+ }, e => reject((0, generalHelpers_1.fail)(e)));
252
+ }, e => reject((0, generalHelpers_1.fail)(e)));
253
253
  });
254
254
  }
255
255
  exports.getWorkforceServiceInfo = getWorkforceServiceInfo;
256
+ /**
257
+ * Wrap global id and assignmenttype values in curly braces
258
+ *
259
+ * Added for issue #734
260
+ *
261
+ * This function will update the provided workforceInfos object
262
+ *
263
+ * @param workforceInfos the object that stores the integration and type info with global ids
264
+ *
265
+ */
266
+ function _updateGlobalIdAndAssignmentType(workforceInfos) {
267
+ const updateId = (i) => {
268
+ /* istanbul ignore else */
269
+ if (i["GlobalID"]) {
270
+ i["GlobalID"] = `{${i["GlobalID"]}}`;
271
+ }
272
+ /* istanbul ignore else */
273
+ if (i["assignmenttype"]) {
274
+ i["assignmenttype"] = `{${i["assignmenttype"]}}`;
275
+ }
276
+ return i;
277
+ };
278
+ const assignmentIntegrationInfos = (0, generalHelpers_1.getProp)(workforceInfos, "assignmentIntegrationInfos");
279
+ /* istanbul ignore else */
280
+ if (assignmentIntegrationInfos && Array.isArray(assignmentIntegrationInfos)) {
281
+ (0, generalHelpers_1.setProp)(workforceInfos, "assignmentIntegrationInfos", assignmentIntegrationInfos.map(updateId));
282
+ }
283
+ const assignmentTypeInfos = (0, generalHelpers_1.getProp)(workforceInfos, "assignmentTypeInfos");
284
+ /* istanbul ignore else */
285
+ if (assignmentTypeInfos && Array.isArray(assignmentTypeInfos)) {
286
+ (0, generalHelpers_1.setProp)(workforceInfos, "assignmentTypeInfos", assignmentTypeInfos.map(updateId));
287
+ }
288
+ }
289
+ exports._updateGlobalIdAndAssignmentType = _updateGlobalIdAndAssignmentType;
256
290
  function _getAssignmentTypeInfos(assignmentTypes) {
257
291
  // Assignment Types
258
- var assignmentTypeInfos = [];
259
- var keyAssignmentTypeProps = [
292
+ const assignmentTypeInfos = [];
293
+ const keyAssignmentTypeProps = [
260
294
  "description",
261
295
  assignmentTypes.globalIdFieldName
262
296
  ];
263
- assignmentTypes.features.forEach(function (f) {
264
- var info = {};
265
- keyAssignmentTypeProps.forEach(function (p) {
297
+ assignmentTypes.features.forEach((f) => {
298
+ const info = {};
299
+ keyAssignmentTypeProps.forEach(p => {
266
300
  info[p] = f.attributes[p];
267
301
  });
268
302
  assignmentTypeInfos.push(info);
@@ -271,27 +305,27 @@ function _getAssignmentTypeInfos(assignmentTypes) {
271
305
  }
272
306
  exports._getAssignmentTypeInfos = _getAssignmentTypeInfos;
273
307
  function _getAssignmentIntegrationInfos(assignmentIntegrations, authentication) {
274
- return new Promise(function (resolve, reject) {
275
- var requests = [];
276
- var urls = [];
277
- var assignmentIntegrationInfos = [];
278
- var keyAssignmentIntegrationsProps = [
308
+ return new Promise((resolve, reject) => {
309
+ let requests = [];
310
+ let urls = [];
311
+ const assignmentIntegrationInfos = [];
312
+ const keyAssignmentIntegrationsProps = [
279
313
  "appid",
280
314
  assignmentIntegrations.globalIdFieldName,
281
315
  "prompt",
282
316
  "urltemplate",
283
317
  "assignmenttype"
284
318
  ];
285
- assignmentIntegrations.features.forEach(function (f) {
286
- var info = {};
287
- keyAssignmentIntegrationsProps.forEach(function (p) {
319
+ assignmentIntegrations.features.forEach((f) => {
320
+ const info = {};
321
+ keyAssignmentIntegrationsProps.forEach(p => {
288
322
  info[p] = f.attributes[p];
289
323
  /* istanbul ignore else */
290
324
  if (p === "urltemplate") {
291
- var urlTemplate = f.attributes[p];
292
- var ids = (0, generalHelpers_1.getIDs)(urlTemplate);
325
+ const urlTemplate = f.attributes[p];
326
+ const ids = (0, generalHelpers_1.getIDs)(urlTemplate);
293
327
  info["dependencies"] = ids;
294
- var serviceRequests = urlTest(urlTemplate, authentication);
328
+ const serviceRequests = urlTest(urlTemplate, authentication);
295
329
  /* istanbul ignore else */
296
330
  if (Array.isArray(serviceRequests.requests) &&
297
331
  serviceRequests.requests.length > 0) {
@@ -302,25 +336,25 @@ function _getAssignmentIntegrationInfos(assignmentIntegrations, authentication)
302
336
  });
303
337
  assignmentIntegrationInfos.push(info);
304
338
  });
305
- getUrlDependencies(requests, urls).then(function (results) {
306
- assignmentIntegrationInfos.forEach(function (ai) {
339
+ getUrlDependencies(requests, urls).then(results => {
340
+ assignmentIntegrationInfos.forEach(ai => {
307
341
  _templatizeUrlTemplate(ai, results.urlHash);
308
342
  });
309
343
  resolve(assignmentIntegrationInfos);
310
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
344
+ }, e => reject((0, generalHelpers_1.fail)(e)));
311
345
  });
312
346
  }
313
347
  exports._getAssignmentIntegrationInfos = _getAssignmentIntegrationInfos;
314
348
  function getUrlDependencies(requests, urls) {
315
- return new Promise(function (resolve, reject) {
316
- var dependencies = [];
349
+ return new Promise((resolve, reject) => {
350
+ const dependencies = [];
317
351
  if (requests.length > 0) {
318
- Promise.all(requests).then(function (results) {
319
- var urlHash = {};
352
+ Promise.all(requests).then(results => {
353
+ const urlHash = {};
320
354
  // Get the serviceItemId for the url
321
355
  /* istanbul ignore else */
322
356
  if (Array.isArray(results)) {
323
- results.forEach(function (result, i) {
357
+ results.forEach((result, i) => {
324
358
  /* istanbul ignore else */
325
359
  if (result.serviceItemId) {
326
360
  urlHash[urls[i]] = result.serviceItemId;
@@ -332,14 +366,14 @@ function getUrlDependencies(requests, urls) {
332
366
  });
333
367
  }
334
368
  resolve({
335
- dependencies: dependencies,
336
- urlHash: urlHash
369
+ dependencies,
370
+ urlHash
337
371
  });
338
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
372
+ }, e => reject((0, generalHelpers_1.fail)(e)));
339
373
  }
340
374
  else {
341
375
  resolve({
342
- dependencies: dependencies,
376
+ dependencies,
343
377
  urlHash: {}
344
378
  });
345
379
  }
@@ -355,21 +389,21 @@ exports.getUrlDependencies = getUrlDependencies;
355
389
  function _templatizeUrlTemplate(item, urlHash) {
356
390
  // v1 uses urlTemplate
357
391
  // v2 uses urltemplate
358
- var urlTemplateVar = (0, generalHelpers_1.getProp)(item, "urlTemplate")
392
+ const urlTemplateVar = (0, generalHelpers_1.getProp)(item, "urlTemplate")
359
393
  ? "urlTemplate"
360
394
  : "urltemplate";
361
- var urlTemplate = (0, generalHelpers_1.getProp)(item, urlTemplateVar);
395
+ let urlTemplate = (0, generalHelpers_1.getProp)(item, urlTemplateVar);
362
396
  /* istanbul ignore else */
363
397
  if (urlTemplate) {
364
- var ids = (0, generalHelpers_1.getIDs)(urlTemplate);
365
- ids.forEach(function (id) {
398
+ const ids = (0, generalHelpers_1.getIDs)(urlTemplate);
399
+ ids.forEach(id => {
366
400
  urlTemplate = urlTemplate.replace(id, (0, templatization_1.templatizeTerm)(id, id, ".itemId"));
367
401
  });
368
- var urls = _getURLs(urlTemplate);
369
- urls.forEach(function (url) {
370
- var layerId = getLayerId(url);
371
- var replaceValue = getReplaceValue(layerId, ".url");
372
- var id = urlHash[url];
402
+ const urls = _getURLs(urlTemplate);
403
+ urls.forEach(url => {
404
+ const layerId = getLayerId(url);
405
+ const replaceValue = getReplaceValue(layerId, ".url");
406
+ const id = urlHash[url];
373
407
  /* istanbul ignore else */
374
408
  if (Array.isArray(item.dependencies) &&
375
409
  item.dependencies.indexOf(id) < 0) {
@@ -389,13 +423,13 @@ function getLayerId(url) {
389
423
  exports.getLayerId = getLayerId;
390
424
  function getReplaceValue(layerId, suffix) {
391
425
  return isNaN(Number.parseInt(layerId, 10))
392
- ? "" + suffix
393
- : ".layer" + layerId + suffix;
426
+ ? `${suffix}`
427
+ : `.layer${layerId}${suffix}`;
394
428
  }
395
429
  exports.getReplaceValue = getReplaceValue;
396
430
  function postProcessWorkforceTemplates(templates) {
397
- var groupUpdates = {};
398
- var _templates = templates.map(function (t) {
431
+ const groupUpdates = {};
432
+ const _templates = templates.map(t => {
399
433
  // templatize Workforce Project
400
434
  t = _templatizeWorkforceProject(t, groupUpdates);
401
435
  // templatize Workforce Dispatcher
@@ -404,7 +438,7 @@ function postProcessWorkforceTemplates(templates) {
404
438
  t = _templatizeWorkforceDispatcherOrWorker(t, "Workforce Worker");
405
439
  return t;
406
440
  });
407
- return _templates.map(function (t) {
441
+ return _templates.map(t => {
408
442
  if (groupUpdates[t.itemId]) {
409
443
  t.dependencies = t.dependencies.concat(groupUpdates[t.itemId]);
410
444
  }
@@ -415,37 +449,37 @@ exports.postProcessWorkforceTemplates = postProcessWorkforceTemplates;
415
449
  function _templatizeWorkforceProject(t, groupUpdates) {
416
450
  /* istanbul ignore else */
417
451
  if (isWorkforceProject(t)) {
418
- var properties_1 = t.item.properties || {};
419
- var keyProperties_1 = getKeyWorkforceProperties(2);
420
- var groupId_1 = properties_1["workforceProjectGroupId"];
421
- var shuffleIds_1 = [];
422
- Object.keys(properties_1).forEach(function (p) {
452
+ const properties = t.item.properties || {};
453
+ const keyProperties = getKeyWorkforceProperties(2);
454
+ const groupId = properties["workforceProjectGroupId"];
455
+ const shuffleIds = [];
456
+ Object.keys(properties).forEach((p) => {
423
457
  /* istanbul ignore else */
424
- if (keyProperties_1.indexOf(p) > -1) {
425
- var id = properties_1[p];
458
+ if (keyProperties.indexOf(p) > -1) {
459
+ const id = properties[p];
426
460
  /* istanbul ignore else */
427
- if (id !== groupId_1) {
428
- shuffleIds_1.push(id);
461
+ if (id !== groupId) {
462
+ shuffleIds.push(id);
429
463
  }
430
- t.item.properties[p] = (0, templatization_1.templatizeTerm)(properties_1[p], properties_1[p], ".itemId");
464
+ t.item.properties[p] = (0, templatization_1.templatizeTerm)(properties[p], properties[p], ".itemId");
431
465
  }
432
466
  });
433
467
  // update the dependencies
434
- t.dependencies = t.dependencies.filter(function (d) { return d !== groupId_1 && shuffleIds_1.indexOf(d) < 0; });
468
+ t.dependencies = t.dependencies.filter((d) => d !== groupId && shuffleIds.indexOf(d) < 0);
435
469
  // shuffle and cleanup
436
- var workforceInfos_1 = (0, generalHelpers_1.getProp)(t, "properties.workforceInfos");
470
+ const workforceInfos = (0, generalHelpers_1.getProp)(t, "properties.workforceInfos");
437
471
  /* istanbul ignore else */
438
- if (workforceInfos_1) {
439
- Object.keys(workforceInfos_1).forEach(function (k) {
440
- workforceInfos_1[k].forEach(function (wInfo) {
472
+ if (workforceInfos) {
473
+ Object.keys(workforceInfos).forEach(k => {
474
+ workforceInfos[k].forEach((wInfo) => {
441
475
  /* istanbul ignore else */
442
476
  if (wInfo.dependencies) {
443
- wInfo.dependencies.forEach(function (id) {
477
+ wInfo.dependencies.forEach((id) => {
444
478
  /* istanbul ignore else */
445
- if (shuffleIds_1.indexOf(id) < 0) {
446
- shuffleIds_1.push(id);
479
+ if (shuffleIds.indexOf(id) < 0) {
480
+ shuffleIds.push(id);
447
481
  }
448
- var depIndex = t.dependencies.indexOf(id);
482
+ const depIndex = t.dependencies.indexOf(id);
449
483
  /* istanbul ignore else */
450
484
  if (depIndex > -1) {
451
485
  t.dependencies.splice(depIndex, 1);
@@ -457,7 +491,7 @@ function _templatizeWorkforceProject(t, groupUpdates) {
457
491
  });
458
492
  }
459
493
  // move the dependencies to the group
460
- groupUpdates[groupId_1] = shuffleIds_1;
494
+ groupUpdates[groupId] = shuffleIds;
461
495
  }
462
496
  return t;
463
497
  }
@@ -465,8 +499,8 @@ exports._templatizeWorkforceProject = _templatizeWorkforceProject;
465
499
  function _templatizeWorkforceDispatcherOrWorker(t, type) {
466
500
  /* istanbul ignore else */
467
501
  if ((t.item.typeKeywords || []).indexOf(type) > -1) {
468
- var properties = t.item.properties || {};
469
- var fsId = properties["workforceFeatureServiceId"];
502
+ const properties = t.item.properties || {};
503
+ const fsId = properties["workforceFeatureServiceId"];
470
504
  /* istanbul ignore else */
471
505
  if (fsId) {
472
506
  t.item.properties["workforceFeatureServiceId"] = (0, templatization_1.templatizeTerm)(fsId, fsId, ".itemId");
@@ -506,10 +540,10 @@ exports.getKeyWorkforceProperties = getKeyWorkforceProperties;
506
540
  * @returns an object with any pending requests and the urls that requests were made to
507
541
  */
508
542
  function urlTest(v, authentication) {
509
- var urls = _getURLs(v);
510
- var requests = [];
511
- urls.forEach(function (url) {
512
- var options = {
543
+ const urls = _getURLs(v);
544
+ const requests = [];
545
+ urls.forEach(url => {
546
+ const options = {
513
547
  f: "json",
514
548
  authentication: authentication
515
549
  };
@@ -522,9 +556,7 @@ function urlTest(v, authentication) {
522
556
  }
523
557
  exports.urlTest = urlTest;
524
558
  function _getURLs(v) {
525
- return (0, generalHelpers_1.regExTest)(v, /=(http.*?FeatureServer.*?(?=&|$))/gi).map(function (_v) {
526
- return _v.replace("=", "");
527
- });
559
+ return (0, generalHelpers_1.regExTest)(v, /=(http.*?FeatureServer.*?(?=&|$))/gi).map(_v => _v.replace("=", ""));
528
560
  }
529
561
  exports._getURLs = _getURLs;
530
562
  //#region Deploy Process ---------------------------------------------------------------------------------------//
@@ -536,64 +568,64 @@ exports._getURLs = _getURLs;
536
568
  * @return A promise that will resolve with { "success" === true || false }
537
569
  */
538
570
  function fineTuneCreatedWorkforceItem(newlyCreatedItem, destinationAuthentication, url, templateDictionary) {
539
- return new Promise(function (resolve, reject) {
540
- destinationAuthentication.getUser().then(function (user) {
571
+ return new Promise((resolve, reject) => {
572
+ destinationAuthentication.getUser().then(user => {
541
573
  // update url with slash if necessary
542
574
  url = _updateUrl(url);
543
575
  // Dispatchers...index 2 for workforce v2
544
576
  // for v1 we need tp fetch from dispatchers for v2 we use the items url
545
- var dispatchers = (0, generalHelpers_1.getProp)(newlyCreatedItem, "data.dispatchers");
577
+ const dispatchers = (0, generalHelpers_1.getProp)(newlyCreatedItem, "data.dispatchers");
546
578
  // add current user as dispatcher
547
- _updateDispatchers(dispatchers && dispatchers.url ? dispatchers.url : url + "2", user.username || "", user.fullName || "", destinationAuthentication, templateDictionary.isPortal).then(function (results) {
579
+ _updateDispatchers(dispatchers && dispatchers.url ? dispatchers.url : `${url}2`, user.username || "", user.fullName || "", destinationAuthentication, templateDictionary.isPortal).then(results => {
548
580
  // for workforce v2 we storce the key details from the workforce service as workforceInfos
549
581
  // now we need to detemplatize it and update the workforce service
550
- var workforceInfos = (0, generalHelpers_1.getProp)(newlyCreatedItem, "properties.workforceInfos");
582
+ let workforceInfos = (0, generalHelpers_1.getProp)(newlyCreatedItem, "properties.workforceInfos");
551
583
  if (workforceInfos && url) {
552
584
  workforceInfos = (0, templatization_1.replaceInTemplate)(workforceInfos, templateDictionary);
553
- _getFields(url, [2, 3, 4], destinationAuthentication).then(function (fields) {
585
+ _getFields(url, [2, 3, 4], destinationAuthentication).then(fields => {
554
586
  // Assignment Types...index 3
555
- var assignmentTypeUrl = url + "3";
556
- var assignmentTypeInfos = workforceInfos.assignmentTypeInfos;
557
- var assignmentTypeFeatures = _getAddFeatures(assignmentTypeInfos, fields[assignmentTypeUrl]);
558
- var assignmentTypePromise = _applyEdits(assignmentTypeUrl, assignmentTypeFeatures, destinationAuthentication, true);
587
+ const assignmentTypeUrl = `${url}3`;
588
+ const assignmentTypeInfos = workforceInfos.assignmentTypeInfos;
589
+ const assignmentTypeFeatures = _getAddFeatures(assignmentTypeInfos, fields[assignmentTypeUrl]);
590
+ const assignmentTypePromise = _applyEdits(assignmentTypeUrl, assignmentTypeFeatures, destinationAuthentication, true);
559
591
  // Assignment Integrations...index 4
560
- var assignmentIntegrationUrl = url + "4";
561
- var assignmentIntegrationInfos = workforceInfos.assignmentIntegrationInfos;
562
- var assignmentIntegrationFeatures = _getAddFeatures(assignmentIntegrationInfos, fields[assignmentIntegrationUrl]);
563
- var assignmentIntegrationPromise = _applyEdits(assignmentIntegrationUrl, assignmentIntegrationFeatures, destinationAuthentication, true);
592
+ const assignmentIntegrationUrl = `${url}4`;
593
+ const assignmentIntegrationInfos = workforceInfos.assignmentIntegrationInfos;
594
+ const assignmentIntegrationFeatures = _getAddFeatures(assignmentIntegrationInfos, fields[assignmentIntegrationUrl]);
595
+ const assignmentIntegrationPromise = _applyEdits(assignmentIntegrationUrl, assignmentIntegrationFeatures, destinationAuthentication, true);
564
596
  Promise.all([
565
597
  assignmentTypePromise,
566
598
  assignmentIntegrationPromise
567
599
  ]).then(resolve, reject);
568
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
600
+ }, e => reject((0, generalHelpers_1.fail)(e)));
569
601
  }
570
602
  else {
571
603
  resolve({ success: results });
572
604
  }
573
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
574
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
605
+ }, e => reject((0, generalHelpers_1.fail)(e)));
606
+ }, e => reject((0, generalHelpers_1.fail)(e)));
575
607
  });
576
608
  }
577
609
  exports.fineTuneCreatedWorkforceItem = fineTuneCreatedWorkforceItem;
578
610
  function _getFields(url, ids, authentication) {
579
- return new Promise(function (resolve, reject) {
580
- var options = {
611
+ return new Promise((resolve, reject) => {
612
+ const options = {
581
613
  f: "json",
582
614
  fields: "*",
583
615
  authentication: authentication
584
616
  };
585
617
  url = _updateUrl(url);
586
- var promises = [];
587
- ids.forEach(function (id) {
588
- promises.push((0, restHelpers_1.rest_request)("" + url + id, options));
618
+ const promises = [];
619
+ ids.forEach(id => {
620
+ promises.push((0, restHelpers_1.rest_request)(`${url}${id}`, options));
589
621
  });
590
- Promise.all(promises).then(function (results) {
591
- var finalResult = {};
592
- results.forEach(function (r) {
593
- finalResult["" + url + r.id] = r.fields.map(function (f) { return f.name; });
622
+ Promise.all(promises).then(results => {
623
+ const finalResult = {};
624
+ results.forEach(r => {
625
+ finalResult[`${url}${r.id}`] = r.fields.map((f) => f.name);
594
626
  });
595
627
  resolve(finalResult);
596
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
628
+ }, e => reject((0, generalHelpers_1.fail)(e)));
597
629
  });
598
630
  }
599
631
  exports._getFields = _getFields;
@@ -603,11 +635,11 @@ function _updateUrl(url) {
603
635
  }
604
636
  exports._updateUrl = _updateUrl;
605
637
  function _getAddFeatures(updateInfos, fields) {
606
- var features = [];
607
- updateInfos.forEach(function (update) {
608
- var f = {};
609
- Object.keys(update).forEach(function (k) {
610
- var fieldName = _getField(k, fields);
638
+ const features = [];
639
+ updateInfos.forEach((update) => {
640
+ const f = {};
641
+ Object.keys(update).forEach(k => {
642
+ const fieldName = _getField(k, fields);
611
643
  f[fieldName] = update[k];
612
644
  });
613
645
  features.push({ attributes: f });
@@ -616,7 +648,7 @@ function _getAddFeatures(updateInfos, fields) {
616
648
  }
617
649
  exports._getAddFeatures = _getAddFeatures;
618
650
  function _getField(name, fields) {
619
- return fields.filter(function (f) { return f.toLowerCase() === name.toLowerCase(); })[0];
651
+ return fields.filter(f => f.toLowerCase() === name.toLowerCase())[0];
620
652
  }
621
653
  exports._getField = _getField;
622
654
  /**
@@ -630,24 +662,24 @@ exports._getField = _getField;
630
662
  * @protected
631
663
  */
632
664
  function _updateDispatchers(url, name, fullName, authentication, isPortal) {
633
- return new Promise(function (resolve, reject) {
665
+ return new Promise((resolve, reject) => {
634
666
  if (url) {
635
- var fieldName_1 = isPortal ? "userid" : "userId";
667
+ const fieldName = isPortal ? "userid" : "userId";
636
668
  (0, arcgis_rest_feature_layer_1.queryFeatures)({
637
- url: url,
638
- where: fieldName_1 + " = '" + name + "'",
639
- authentication: authentication
640
- }).then(function (results) {
669
+ url,
670
+ where: `${fieldName} = '${name}'`,
671
+ authentication
672
+ }).then((results) => {
641
673
  if (results && results.features) {
642
674
  if (results.features.length === 0) {
643
- var features = [
675
+ const features = [
644
676
  {
645
677
  attributes: {
646
678
  name: fullName
647
679
  }
648
680
  }
649
681
  ];
650
- features[0].attributes[fieldName_1] = name;
682
+ features[0].attributes[fieldName] = name;
651
683
  _applyEdits(url, features, authentication).then(resolve, reject);
652
684
  }
653
685
  else {
@@ -657,7 +689,7 @@ function _updateDispatchers(url, name, fullName, authentication, isPortal) {
657
689
  else {
658
690
  resolve(false);
659
691
  }
660
- }, function (e) { return reject((0, generalHelpers_1.fail)(e)); });
692
+ }, e => reject((0, generalHelpers_1.fail)(e)));
661
693
  }
662
694
  else {
663
695
  resolve(false);
@@ -665,17 +697,16 @@ function _updateDispatchers(url, name, fullName, authentication, isPortal) {
665
697
  });
666
698
  }
667
699
  exports._updateDispatchers = _updateDispatchers;
668
- function _applyEdits(url, adds, authentication, useGlobalIds // only set when contains a globalid
700
+ function _applyEdits(url, adds, authentication, useGlobalIds = false // only set when contains a globalid
669
701
  ) {
670
- if (useGlobalIds === void 0) { useGlobalIds = false; }
671
- return new Promise(function (resolve, reject) {
702
+ return new Promise((resolve, reject) => {
672
703
  if (adds.length > 0) {
673
704
  (0, arcgis_rest_feature_layer_1.applyEdits)({
674
- url: url,
675
- adds: adds,
676
- useGlobalIds: useGlobalIds,
677
- authentication: authentication
678
- }).then(function (addResults) {
705
+ url,
706
+ adds,
707
+ useGlobalIds,
708
+ authentication
709
+ }).then(addResults => {
679
710
  if (addResults && addResults.addResults) {
680
711
  resolve(true);
681
712
  }
@@ -685,13 +716,11 @@ function _applyEdits(url, adds, authentication, useGlobalIds // only set when co
685
716
  message: "Failed to add dispatch record."
686
717
  }));
687
718
  }
688
- }, function (e) {
689
- return reject((0, generalHelpers_1.fail)({
690
- success: false,
691
- message: "Failed to add dispatch record.",
692
- error: e
693
- }));
694
- });
719
+ }, e => reject((0, generalHelpers_1.fail)({
720
+ success: false,
721
+ message: "Failed to add dispatch record.",
722
+ error: e
723
+ })));
695
724
  }
696
725
  else {
697
726
  resolve(true);