@esri/solution-common 3.0.0 → 3.1.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 (261) hide show
  1. package/dist/esm/featureServiceHelpers.js +20 -2
  2. package/dist/esm/featureServiceHelpers.js.map +1 -1
  3. package/dist/esm/resourceHelpers.d.ts +3 -2
  4. package/dist/esm/resourceHelpers.js +4 -3
  5. package/dist/esm/resourceHelpers.js.map +1 -1
  6. package/dist/esm/resources/copyAssociatedFiles.d.ts +17 -2
  7. package/dist/esm/resources/copyAssociatedFiles.js +106 -42
  8. package/dist/esm/resources/copyAssociatedFiles.js.map +1 -1
  9. package/dist/esm/resources/copyResourceIntoZip.js +8 -1
  10. package/dist/esm/resources/copyResourceIntoZip.js.map +1 -1
  11. package/dist/esm/resources/getItemResourcesPaths.js +9 -2
  12. package/dist/esm/resources/getItemResourcesPaths.js.map +1 -1
  13. package/package.json +3 -3
  14. package/dist/node/completeItem.d.ts +0 -29
  15. package/dist/node/completeItem.js +0 -82
  16. package/dist/node/completeItem.js.map +0 -1
  17. package/dist/node/create-hub-request-options.d.ts +0 -29
  18. package/dist/node/create-hub-request-options.js +0 -64
  19. package/dist/node/create-hub-request-options.js.map +0 -1
  20. package/dist/node/deleteHelpers/deleteEmptyGroups.d.ts +0 -24
  21. package/dist/node/deleteHelpers/deleteEmptyGroups.js +0 -42
  22. package/dist/node/deleteHelpers/deleteEmptyGroups.js.map +0 -1
  23. package/dist/node/deleteHelpers/deleteGroupIfEmpty.d.ts +0 -27
  24. package/dist/node/deleteHelpers/deleteGroupIfEmpty.js +0 -97
  25. package/dist/node/deleteHelpers/deleteGroupIfEmpty.js.map +0 -1
  26. package/dist/node/deleteHelpers/deleteSolutionContents.d.ts +0 -38
  27. package/dist/node/deleteHelpers/deleteSolutionContents.js +0 -130
  28. package/dist/node/deleteHelpers/deleteSolutionContents.js.map +0 -1
  29. package/dist/node/deleteHelpers/deleteSolutionFolder.d.ts +0 -29
  30. package/dist/node/deleteHelpers/deleteSolutionFolder.js +0 -79
  31. package/dist/node/deleteHelpers/deleteSolutionFolder.js.map +0 -1
  32. package/dist/node/deleteHelpers/deleteSolutionItem.d.ts +0 -30
  33. package/dist/node/deleteHelpers/deleteSolutionItem.js +0 -54
  34. package/dist/node/deleteHelpers/deleteSolutionItem.js.map +0 -1
  35. package/dist/node/deleteHelpers/index.d.ts +0 -22
  36. package/dist/node/deleteHelpers/index.js +0 -26
  37. package/dist/node/deleteHelpers/index.js.map +0 -1
  38. package/dist/node/deleteHelpers/reconstructBuildOrderIds.d.ts +0 -27
  39. package/dist/node/deleteHelpers/reconstructBuildOrderIds.js +0 -34
  40. package/dist/node/deleteHelpers/reconstructBuildOrderIds.js.map +0 -1
  41. package/dist/node/deleteHelpers/removeItems.d.ts +0 -34
  42. package/dist/node/deleteHelpers/removeItems.js +0 -112
  43. package/dist/node/deleteHelpers/removeItems.js.map +0 -1
  44. package/dist/node/deleteHelpers/reportProgress.d.ts +0 -27
  45. package/dist/node/deleteHelpers/reportProgress.js +0 -46
  46. package/dist/node/deleteHelpers/reportProgress.js.map +0 -1
  47. package/dist/node/deleteSolution.d.ts +0 -55
  48. package/dist/node/deleteSolution.js +0 -107
  49. package/dist/node/deleteSolution.js.map +0 -1
  50. package/dist/node/dependencies.d.ts +0 -26
  51. package/dist/node/dependencies.js +0 -171
  52. package/dist/node/dependencies.js.map +0 -1
  53. package/dist/node/featureServiceHelpers.d.ts +0 -791
  54. package/dist/node/featureServiceHelpers.js +0 -2403
  55. package/dist/node/featureServiceHelpers.js.map +0 -1
  56. package/dist/node/generalHelpers.d.ts +0 -372
  57. package/dist/node/generalHelpers.js +0 -842
  58. package/dist/node/generalHelpers.js.map +0 -1
  59. package/dist/node/get-subscription-info.d.ts +0 -27
  60. package/dist/node/get-subscription-info.js +0 -39
  61. package/dist/node/get-subscription-info.js.map +0 -1
  62. package/dist/node/getDeletableSolutionInfo.d.ts +0 -29
  63. package/dist/node/getDeletableSolutionInfo.js +0 -53
  64. package/dist/node/getDeletableSolutionInfo.js.map +0 -1
  65. package/dist/node/getItemTypeAbbrev.d.ts +0 -19
  66. package/dist/node/getItemTypeAbbrev.js +0 -184
  67. package/dist/node/getItemTypeAbbrev.js.map +0 -1
  68. package/dist/node/getSolutionSummary.d.ts +0 -27
  69. package/dist/node/getSolutionSummary.js +0 -101
  70. package/dist/node/getSolutionSummary.js.map +0 -1
  71. package/dist/node/index.d.ts +0 -44
  72. package/dist/node/index.js +0 -48
  73. package/dist/node/index.js.map +0 -1
  74. package/dist/node/interfaces.d.ts +0 -1321
  75. package/dist/node/interfaces.js +0 -75
  76. package/dist/node/interfaces.js.map +0 -1
  77. package/dist/node/libConnectors.d.ts +0 -73
  78. package/dist/node/libConnectors.js +0 -115
  79. package/dist/node/libConnectors.js.map +0 -1
  80. package/dist/node/migrations/apply-schema.d.ts +0 -24
  81. package/dist/node/migrations/apply-schema.js +0 -36
  82. package/dist/node/migrations/apply-schema.js.map +0 -1
  83. package/dist/node/migrations/is-legacy-solution.d.ts +0 -24
  84. package/dist/node/migrations/is-legacy-solution.js +0 -40
  85. package/dist/node/migrations/is-legacy-solution.js.map +0 -1
  86. package/dist/node/migrations/upgrade-three-dot-one.d.ts +0 -27
  87. package/dist/node/migrations/upgrade-three-dot-one.js +0 -49
  88. package/dist/node/migrations/upgrade-three-dot-one.js.map +0 -1
  89. package/dist/node/migrations/upgrade-three-dot-zero.d.ts +0 -27
  90. package/dist/node/migrations/upgrade-three-dot-zero.js +0 -43
  91. package/dist/node/migrations/upgrade-three-dot-zero.js.map +0 -1
  92. package/dist/node/migrations/upgrade-two-dot-five.d.ts +0 -24
  93. package/dist/node/migrations/upgrade-two-dot-five.js +0 -73
  94. package/dist/node/migrations/upgrade-two-dot-five.js.map +0 -1
  95. package/dist/node/migrations/upgrade-two-dot-four.d.ts +0 -24
  96. package/dist/node/migrations/upgrade-two-dot-four.js +0 -72
  97. package/dist/node/migrations/upgrade-two-dot-four.js.map +0 -1
  98. package/dist/node/migrations/upgrade-two-dot-one.d.ts +0 -7
  99. package/dist/node/migrations/upgrade-two-dot-one.js +0 -39
  100. package/dist/node/migrations/upgrade-two-dot-one.js.map +0 -1
  101. package/dist/node/migrations/upgrade-two-dot-seven.d.ts +0 -23
  102. package/dist/node/migrations/upgrade-two-dot-seven.js +0 -58
  103. package/dist/node/migrations/upgrade-two-dot-seven.js.map +0 -1
  104. package/dist/node/migrations/upgrade-two-dot-six.d.ts +0 -27
  105. package/dist/node/migrations/upgrade-two-dot-six.js +0 -61
  106. package/dist/node/migrations/upgrade-two-dot-six.js.map +0 -1
  107. package/dist/node/migrations/upgrade-two-dot-three.d.ts +0 -23
  108. package/dist/node/migrations/upgrade-two-dot-three.js +0 -55
  109. package/dist/node/migrations/upgrade-two-dot-three.js.map +0 -1
  110. package/dist/node/migrations/upgrade-two-dot-two.d.ts +0 -23
  111. package/dist/node/migrations/upgrade-two-dot-two.js +0 -58
  112. package/dist/node/migrations/upgrade-two-dot-two.js.map +0 -1
  113. package/dist/node/migrations/upgrade-two-dot-zero.d.ts +0 -44
  114. package/dist/node/migrations/upgrade-two-dot-zero.js +0 -95
  115. package/dist/node/migrations/upgrade-two-dot-zero.js.map +0 -1
  116. package/dist/node/migrator.d.ts +0 -25
  117. package/dist/node/migrator.js +0 -77
  118. package/dist/node/migrator.js.map +0 -1
  119. package/dist/node/polyfills.d.ts +0 -40
  120. package/dist/node/polyfills.js +0 -98
  121. package/dist/node/polyfills.js.map +0 -1
  122. package/dist/node/resourceHelpers.d.ts +0 -190
  123. package/dist/node/resourceHelpers.js +0 -390
  124. package/dist/node/resourceHelpers.js.map +0 -1
  125. package/dist/node/resources/add-resource-from-blob.d.ts +0 -26
  126. package/dist/node/resources/add-resource-from-blob.js +0 -52
  127. package/dist/node/resources/add-resource-from-blob.js.map +0 -1
  128. package/dist/node/resources/addMetadataFromBlob.d.ts +0 -25
  129. package/dist/node/resources/addMetadataFromBlob.js +0 -43
  130. package/dist/node/resources/addMetadataFromBlob.js.map +0 -1
  131. package/dist/node/resources/convert-item-resource-to-storage-resource.d.ts +0 -32
  132. package/dist/node/resources/convert-item-resource-to-storage-resource.js +0 -70
  133. package/dist/node/resources/convert-item-resource-to-storage-resource.js.map +0 -1
  134. package/dist/node/resources/convert-storage-resource-to-item-resource.d.ts +0 -29
  135. package/dist/node/resources/convert-storage-resource-to-item-resource.js +0 -70
  136. package/dist/node/resources/convert-storage-resource-to-item-resource.js.map +0 -1
  137. package/dist/node/resources/copyAssociatedFiles.d.ts +0 -52
  138. package/dist/node/resources/copyAssociatedFiles.js +0 -237
  139. package/dist/node/resources/copyAssociatedFiles.js.map +0 -1
  140. package/dist/node/resources/copyDataIntoItem.d.ts +0 -33
  141. package/dist/node/resources/copyDataIntoItem.js +0 -63
  142. package/dist/node/resources/copyDataIntoItem.js.map +0 -1
  143. package/dist/node/resources/copyMetadataIntoItem.d.ts +0 -26
  144. package/dist/node/resources/copyMetadataIntoItem.js +0 -46
  145. package/dist/node/resources/copyMetadataIntoItem.js.map +0 -1
  146. package/dist/node/resources/copyResourceIntoZip.d.ts +0 -33
  147. package/dist/node/resources/copyResourceIntoZip.js +0 -71
  148. package/dist/node/resources/copyResourceIntoZip.js.map +0 -1
  149. package/dist/node/resources/copyZipIntoItem.d.ts +0 -25
  150. package/dist/node/resources/copyZipIntoItem.js +0 -54
  151. package/dist/node/resources/copyZipIntoItem.js.map +0 -1
  152. package/dist/node/resources/createCopyResults.d.ts +0 -25
  153. package/dist/node/resources/createCopyResults.js +0 -36
  154. package/dist/node/resources/createCopyResults.js.map +0 -1
  155. package/dist/node/resources/get-blob.d.ts +0 -26
  156. package/dist/node/resources/get-blob.js +0 -27
  157. package/dist/node/resources/get-blob.js.map +0 -1
  158. package/dist/node/resources/getItemResourcesFilesFromPaths.d.ts +0 -24
  159. package/dist/node/resources/getItemResourcesFilesFromPaths.js +0 -49
  160. package/dist/node/resources/getItemResourcesFilesFromPaths.js.map +0 -1
  161. package/dist/node/resources/getItemResourcesPaths.d.ts +0 -26
  162. package/dist/node/resources/getItemResourcesPaths.js +0 -66
  163. package/dist/node/resources/getItemResourcesPaths.js.map +0 -1
  164. package/dist/node/resources/index.d.ts +0 -29
  165. package/dist/node/resources/index.js +0 -33
  166. package/dist/node/resources/index.js.map +0 -1
  167. package/dist/node/resources/solution-resource.d.ts +0 -35
  168. package/dist/node/resources/solution-resource.js +0 -31
  169. package/dist/node/resources/solution-resource.js.map +0 -1
  170. package/dist/node/resources/transform-resource-paths-to-solution-resources.d.ts +0 -56
  171. package/dist/node/resources/transform-resource-paths-to-solution-resources.js +0 -146
  172. package/dist/node/resources/transform-resource-paths-to-solution-resources.js.map +0 -1
  173. package/dist/node/restHelpers.d.ts +0 -585
  174. package/dist/node/restHelpers.js +0 -1887
  175. package/dist/node/restHelpers.js.map +0 -1
  176. package/dist/node/restHelpersGet.d.ts +0 -288
  177. package/dist/node/restHelpersGet.js +0 -804
  178. package/dist/node/restHelpersGet.js.map +0 -1
  179. package/dist/node/sharing/index.d.ts +0 -16
  180. package/dist/node/sharing/index.js +0 -20
  181. package/dist/node/sharing/index.js.map +0 -1
  182. package/dist/node/sharing/share-item-to-groups.d.ts +0 -26
  183. package/dist/node/sharing/share-item-to-groups.js +0 -44
  184. package/dist/node/sharing/share-item-to-groups.js.map +0 -1
  185. package/dist/node/templatization.d.ts +0 -139
  186. package/dist/node/templatization.js +0 -314
  187. package/dist/node/templatization.js.map +0 -1
  188. package/dist/node/trackingHelpers.d.ts +0 -116
  189. package/dist/node/trackingHelpers.js +0 -217
  190. package/dist/node/trackingHelpers.js.map +0 -1
  191. package/dist/node/velocityHelpers.d.ts +0 -57
  192. package/dist/node/velocityHelpers.js +0 -135
  193. package/dist/node/velocityHelpers.js.map +0 -1
  194. package/dist/node/workforceHelpers.d.ts +0 -115
  195. package/dist/node/workforceHelpers.js +0 -747
  196. package/dist/node/workforceHelpers.js.map +0 -1
  197. package/dist/umd/common.umd.js +0 -15471
  198. package/dist/umd/common.umd.js.map +0 -1
  199. package/dist/umd/common.umd.min.js +0 -19
  200. package/dist/umd/common.umd.min.js.map +0 -1
  201. package/dist/umd/src/completeItem.d.ts +0 -29
  202. package/dist/umd/src/create-hub-request-options.d.ts +0 -29
  203. package/dist/umd/src/deleteHelpers/deleteEmptyGroups.d.ts +0 -24
  204. package/dist/umd/src/deleteHelpers/deleteGroupIfEmpty.d.ts +0 -27
  205. package/dist/umd/src/deleteHelpers/deleteSolutionContents.d.ts +0 -38
  206. package/dist/umd/src/deleteHelpers/deleteSolutionFolder.d.ts +0 -29
  207. package/dist/umd/src/deleteHelpers/deleteSolutionItem.d.ts +0 -30
  208. package/dist/umd/src/deleteHelpers/index.d.ts +0 -22
  209. package/dist/umd/src/deleteHelpers/reconstructBuildOrderIds.d.ts +0 -27
  210. package/dist/umd/src/deleteHelpers/removeItems.d.ts +0 -34
  211. package/dist/umd/src/deleteHelpers/reportProgress.d.ts +0 -27
  212. package/dist/umd/src/deleteSolution.d.ts +0 -55
  213. package/dist/umd/src/dependencies.d.ts +0 -26
  214. package/dist/umd/src/featureServiceHelpers.d.ts +0 -791
  215. package/dist/umd/src/generalHelpers.d.ts +0 -372
  216. package/dist/umd/src/get-subscription-info.d.ts +0 -27
  217. package/dist/umd/src/getDeletableSolutionInfo.d.ts +0 -29
  218. package/dist/umd/src/getItemTypeAbbrev.d.ts +0 -19
  219. package/dist/umd/src/getSolutionSummary.d.ts +0 -27
  220. package/dist/umd/src/index.d.ts +0 -44
  221. package/dist/umd/src/interfaces.d.ts +0 -1321
  222. package/dist/umd/src/libConnectors.d.ts +0 -73
  223. package/dist/umd/src/migrations/apply-schema.d.ts +0 -24
  224. package/dist/umd/src/migrations/is-legacy-solution.d.ts +0 -24
  225. package/dist/umd/src/migrations/upgrade-three-dot-one.d.ts +0 -27
  226. package/dist/umd/src/migrations/upgrade-three-dot-zero.d.ts +0 -27
  227. package/dist/umd/src/migrations/upgrade-two-dot-five.d.ts +0 -24
  228. package/dist/umd/src/migrations/upgrade-two-dot-four.d.ts +0 -24
  229. package/dist/umd/src/migrations/upgrade-two-dot-one.d.ts +0 -7
  230. package/dist/umd/src/migrations/upgrade-two-dot-seven.d.ts +0 -23
  231. package/dist/umd/src/migrations/upgrade-two-dot-six.d.ts +0 -27
  232. package/dist/umd/src/migrations/upgrade-two-dot-three.d.ts +0 -23
  233. package/dist/umd/src/migrations/upgrade-two-dot-two.d.ts +0 -23
  234. package/dist/umd/src/migrations/upgrade-two-dot-zero.d.ts +0 -44
  235. package/dist/umd/src/migrator.d.ts +0 -25
  236. package/dist/umd/src/polyfills.d.ts +0 -40
  237. package/dist/umd/src/resourceHelpers.d.ts +0 -190
  238. package/dist/umd/src/resources/add-resource-from-blob.d.ts +0 -26
  239. package/dist/umd/src/resources/addMetadataFromBlob.d.ts +0 -25
  240. package/dist/umd/src/resources/convert-item-resource-to-storage-resource.d.ts +0 -32
  241. package/dist/umd/src/resources/convert-storage-resource-to-item-resource.d.ts +0 -29
  242. package/dist/umd/src/resources/copyAssociatedFiles.d.ts +0 -52
  243. package/dist/umd/src/resources/copyDataIntoItem.d.ts +0 -33
  244. package/dist/umd/src/resources/copyMetadataIntoItem.d.ts +0 -26
  245. package/dist/umd/src/resources/copyResourceIntoZip.d.ts +0 -33
  246. package/dist/umd/src/resources/copyZipIntoItem.d.ts +0 -25
  247. package/dist/umd/src/resources/createCopyResults.d.ts +0 -25
  248. package/dist/umd/src/resources/get-blob.d.ts +0 -26
  249. package/dist/umd/src/resources/getItemResourcesFilesFromPaths.d.ts +0 -24
  250. package/dist/umd/src/resources/getItemResourcesPaths.d.ts +0 -26
  251. package/dist/umd/src/resources/index.d.ts +0 -29
  252. package/dist/umd/src/resources/solution-resource.d.ts +0 -35
  253. package/dist/umd/src/resources/transform-resource-paths-to-solution-resources.d.ts +0 -56
  254. package/dist/umd/src/restHelpers.d.ts +0 -585
  255. package/dist/umd/src/restHelpersGet.d.ts +0 -288
  256. package/dist/umd/src/sharing/index.d.ts +0 -16
  257. package/dist/umd/src/sharing/share-item-to-groups.d.ts +0 -26
  258. package/dist/umd/src/templatization.d.ts +0 -139
  259. package/dist/umd/src/trackingHelpers.d.ts +0 -116
  260. package/dist/umd/src/velocityHelpers.d.ts +0 -57
  261. package/dist/umd/src/workforceHelpers.d.ts +0 -115
@@ -791,9 +791,27 @@ export function _updateAddOptions(itemTemplate, options, layerChunks, isSelfRefe
791
791
  */
792
792
  export function _isSelfReferential(layersAndTables) {
793
793
  const names = layersAndTables.map(l => l.item.name);
794
+ const srcTables = {};
794
795
  return layersAndTables.some(l => {
795
- const relatedTables = l.item.adminLayerInfo?.viewLayerDefinition?.table?.relatedTables || [];
796
- return relatedTables.some(r => names.indexOf(r.name) > -1);
796
+ const table = l.item.adminLayerInfo?.viewLayerDefinition?.table;
797
+ if (table) {
798
+ const name = table.sourceServiceName;
799
+ const id = table.sourceLayerId;
800
+ if (name && id > -1) {
801
+ if (Object.keys(srcTables).indexOf(name) > -1) {
802
+ if (srcTables[name].indexOf(id) > -1) {
803
+ return true;
804
+ }
805
+ else {
806
+ srcTables[name].push(id);
807
+ }
808
+ }
809
+ else {
810
+ srcTables[name] = [id];
811
+ }
812
+ }
813
+ return (table.relatedTables || []).some(r => names.indexOf(r.name) > -1);
814
+ }
797
815
  });
798
816
  }
799
817
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"featureServiceHelpers.js","sourceRoot":"","sources":["../../src/featureServiceHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"featureServiceHelpers.js","sourceRoot":"","sources":["../../src/featureServiceHelpers.ts"],"names":[],"mappings":"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"}
@@ -55,13 +55,14 @@ export declare function convertBlobToSupportableResource(blob: Blob, filename?:
55
55
  *
56
56
  * @param storageAuthentication Credentials for the request to the storage
57
57
  * @param filePaths List of item files' URLs and folder/filenames for storing the files
58
+ * @param sourceItemId Id of item supplying resource/metadata
58
59
  * @param destinationFolderId Id of folder
59
60
  * @param destinationItemId Id of item to receive copy of resource/metadata
60
61
  * @param destinationAuthentication Credentials for the request to the destination
61
- * @param template Template for using its itemId and properties for fine-tuning the filename for Hub
62
+ * @param template Description of item that will receive files
62
63
  * @returns A promise which resolves to a boolean indicating if the copies were successful
63
64
  */
64
- export declare function copyFilesFromStorageItem(storageAuthentication: UserSession, filePaths: IDeployFileCopyPath[], destinationFolderId: string, destinationItemId: string, destinationAuthentication: UserSession, template?: any): Promise<boolean>;
65
+ export declare function copyFilesFromStorageItem(storageAuthentication: UserSession, filePaths: IDeployFileCopyPath[], sourceItemId: string, destinationFolderId: string, destinationItemId: string, destinationAuthentication: UserSession, template?: any): Promise<boolean>;
65
66
  /**
66
67
  * Copies the files for storing the resources, metadata, and thumbnail of an item or group to a storage item
67
68
  * with a specified path.
@@ -85,13 +85,14 @@ export function convertBlobToSupportableResource(blob, filename = "") {
85
85
  *
86
86
  * @param storageAuthentication Credentials for the request to the storage
87
87
  * @param filePaths List of item files' URLs and folder/filenames for storing the files
88
+ * @param sourceItemId Id of item supplying resource/metadata
88
89
  * @param destinationFolderId Id of folder
89
90
  * @param destinationItemId Id of item to receive copy of resource/metadata
90
91
  * @param destinationAuthentication Credentials for the request to the destination
91
- * @param template Template for using its itemId and properties for fine-tuning the filename for Hub
92
+ * @param template Description of item that will receive files
92
93
  * @returns A promise which resolves to a boolean indicating if the copies were successful
93
94
  */
94
- export function copyFilesFromStorageItem(storageAuthentication, filePaths, destinationFolderId, destinationItemId, destinationAuthentication, template = {}) {
95
+ export function copyFilesFromStorageItem(storageAuthentication, filePaths, sourceItemId, destinationFolderId, destinationItemId, destinationAuthentication, template = {}) {
95
96
  // TODO: This is only used in deployer, so move there
96
97
  // changed to allow the template to be passed in
97
98
  // because Hub templates need to swap out the templateId
@@ -118,7 +119,7 @@ export function copyFilesFromStorageItem(storageAuthentication, filePaths, desti
118
119
  url: path.url
119
120
  };
120
121
  });
121
- void copyAssociatedFilesByType(fileInfos, storageAuthentication, destinationItemId, destinationAuthentication).then((results) => {
122
+ void copyAssociatedFilesByType(fileInfos, storageAuthentication, sourceItemId, destinationItemId, destinationAuthentication, template).then((results) => {
122
123
  const allOK = results
123
124
  // Filter out metadata
124
125
  .filter((result) => result.filename !== "metadata.xml")
@@ -1 +1 @@
1
- {"version":3,"file":"resourceHelpers.js","sourceRoot":"","sources":["../../src/resourceHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resourceHelpers.js","sourceRoot":"","sources":["../../src/resourceHelpers.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@
16
16
  /**
17
17
  * Provides functions for sending resources to AGO.
18
18
  */
19
- import { IAssociatedFileCopyResults, IAssociatedFileInfo, ISourceFile, IZipInfo, UserSession } from "../interfaces";
19
+ import { IAssociatedFileCopyResults, IAssociatedFileInfo, IItemTemplate, ISourceFile, IZipInfo, UserSession } from "../interfaces";
20
20
  /**
21
21
  * Copies the files for storing the resources, metadata, and thumbnail of an item or group to a storage item
22
22
  * with a specified path by collecting files into zip files.
@@ -35,11 +35,13 @@ export declare function copyFilesAsResources(files: ISourceFile[], destinationIt
35
35
  *
36
36
  * @param fileInfos List of item files' URLs and folder/filenames for storing the files
37
37
  * @param sourceAuthentication Credentials for the request to the source
38
+ * @param sourceItemId Id of item supplying resource/metadata
38
39
  * @param destinationItemId Id of item to receive copy of resource/metadata/thumbnail
39
40
  * @param destinationAuthentication Credentials for the request to the storage
41
+ * @param template Description of item that will receive files
40
42
  * @returns A promise which resolves to a list of the result of the copies
41
43
  */
42
- export declare function copyAssociatedFilesByType(fileInfos: IAssociatedFileInfo[], sourceAuthentication: UserSession, destinationItemId: string, destinationAuthentication: UserSession): Promise<IAssociatedFileCopyResults[]>;
44
+ export declare function copyAssociatedFilesByType(fileInfos: IAssociatedFileInfo[], sourceAuthentication: UserSession, sourceItemId: string, destinationItemId: string, destinationAuthentication: UserSession, template?: any): Promise<IAssociatedFileCopyResults[]>;
43
45
  /**
44
46
  * Copies one or more zipfiles to a storage item.
45
47
  *
@@ -50,3 +52,16 @@ export declare function copyAssociatedFilesByType(fileInfos: IAssociatedFileInfo
50
52
  * @private
51
53
  */
52
54
  export declare function _copyAssociatedFileZips(zipInfos: IZipInfo[], destinationItemId: string, destinationAuthentication: UserSession): Promise<IAssociatedFileCopyResults[]>;
55
+ /**
56
+ * Replace templatizations in an item's resources
57
+ *
58
+ * @param sourceAuthentication Credentials for the request to the source
59
+ * @param sourceItemId Id of item supplying resource/metadata
60
+ * @param itemTemplate Item being created
61
+ * @param fileInfos Resources for the item; these resources are modified as needed
62
+ * by removing the templatization: the `url` property is replaced by the `file` property
63
+ * @param destinationAuthentication Credentials for the request to the storage
64
+ *
65
+ * @returns A promise that resolves when all de-templatization has completed
66
+ */
67
+ export declare function _detemplatizeResources(sourceAuthentication: UserSession, sourceItemId: string, itemTemplate: IItemTemplate, fileInfos: IAssociatedFileInfo[], destinationAuthentication: UserSession): Promise<void[]>;
@@ -23,6 +23,8 @@ import { copyMetadataIntoItem } from "./copyMetadataIntoItem";
23
23
  import { copyResourceIntoZip, copyResourceIntoZipFromInfo } from "./copyResourceIntoZip";
24
24
  import { copyZipIntoItem } from "./copyZipIntoItem";
25
25
  import { createCopyResults } from "./createCopyResults";
26
+ import { blobToJson, jsonToFile } from "../generalHelpers";
27
+ import { getBlobAsFile } from "../restHelpersGet";
26
28
  import JSZip from "jszip";
27
29
  // ------------------------------------------------------------------------------------------------------------------ //
28
30
  /**
@@ -89,11 +91,13 @@ export function copyFilesAsResources(files, destinationItemId, destinationAuthen
89
91
  *
90
92
  * @param fileInfos List of item files' URLs and folder/filenames for storing the files
91
93
  * @param sourceAuthentication Credentials for the request to the source
94
+ * @param sourceItemId Id of item supplying resource/metadata
92
95
  * @param destinationItemId Id of item to receive copy of resource/metadata/thumbnail
93
96
  * @param destinationAuthentication Credentials for the request to the storage
97
+ * @param template Description of item that will receive files
94
98
  * @returns A promise which resolves to a list of the result of the copies
95
99
  */
96
- export function copyAssociatedFilesByType(fileInfos, sourceAuthentication, destinationItemId, destinationAuthentication) {
100
+ export async function copyAssociatedFilesByType(fileInfos, sourceAuthentication, sourceItemId, destinationItemId, destinationAuthentication, template = {}) {
97
101
  return new Promise(resolve => {
98
102
  let awaitAllItems = [];
99
103
  let resourceFileInfos = fileInfos;
@@ -116,49 +120,64 @@ export function copyAssociatedFilesByType(fileInfos, sourceAuthentication, desti
116
120
  // Now add in the Resources
117
121
  resourceFileInfos = fileInfos.filter(fileInfo => fileInfo.type === EFileType.Info || fileInfo.type === EFileType.Resource);
118
122
  const zipInfos = [];
119
- if (resourceFileInfos.length > 0) {
120
- // Bundle the resources into chunked zip updates because AGO tends to have problems with
121
- // many updates in a row to the same item: it claims success despite randomly failing.
122
- // Note that AGO imposes a limit of 50 files per zip, so we break the list of resource
123
- // file info into chunks below this threshold and start a zip for each
124
- // https://developers.arcgis.com/rest/users-groups-and-items/add-resources.htm
125
- const chunkedResourceFileInfo = chunkArray(resourceFileInfos, 40); // leave a bit of room below threshold
126
- chunkedResourceFileInfo.forEach((chunk, index) => {
127
- // Create a zip for this chunk
128
- const zipInfo = {
129
- filename: `resources${index}.zip`,
130
- zip: new JSZip(),
131
- filelist: []
132
- };
133
- awaitAllItems = awaitAllItems.concat(chunk.map(fileInfo => {
134
- return copyResourceIntoZipFromInfo(fileInfo, sourceAuthentication, zipInfo);
135
- }));
136
- zipInfos.push(zipInfo);
137
- });
138
- }
139
- if (awaitAllItems.length > 0) {
140
- // Wait until all Data and Metadata files have been copied and the Resource zip file(s) prepared
141
- void Promise.all(awaitAllItems).then((results) => {
142
- // We have three types of results:
143
- // | fetchedFromSource | copiedToDestination | interpretation | |
144
- // +-------------------+---------------------+------------------------------------------------+
145
- // | false | * | could not fetch file from source |
146
- // | true | true | file has been fetched and sent to AGO |
147
- // | true | undefined | file has been fetched and will be sent via zip |
148
- // Filter out copiedToDestination===undefined; we'll get their status when we send their zip
149
- results = results.filter((result) => !(result.fetchedFromSource &&
150
- typeof result.copiedToDestination === "undefined"));
151
- // Now send the resources to AGO
123
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
124
+ const awaitAllResources = new Promise(resolve2 => {
125
+ if (resourceFileInfos.length > 0) {
126
+ // De-templatize as needed in files before adding them to the zip
152
127
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
153
- _copyAssociatedFileZips(zipInfos, destinationItemId, destinationAuthentication).then((zipResults) => {
154
- resolve(results.concat(zipResults));
128
+ _detemplatizeResources(sourceAuthentication, sourceItemId, template, resourceFileInfos, destinationAuthentication)
129
+ .then(() => {
130
+ // Bundle the resources into chunked zip updates because AGO tends to have problems with
131
+ // many updates in a row to the same item: it claims success despite randomly failing.
132
+ // Note that AGO imposes a limit of 50 files per zip, so we break the list of resource
133
+ // file info into chunks below this threshold and start a zip for each
134
+ // https://developers.arcgis.com/rest/users-groups-and-items/add-resources.htm
135
+ const chunkedResourceFileInfo = chunkArray(resourceFileInfos, 40); // leave a bit of room below threshold
136
+ chunkedResourceFileInfo.forEach((chunk, index) => {
137
+ // Create a zip for this chunk
138
+ const zipInfo = {
139
+ filename: `resources${index}.zip`,
140
+ zip: new JSZip(),
141
+ filelist: []
142
+ };
143
+ awaitAllItems = awaitAllItems.concat(chunk.map(fileInfo => {
144
+ return copyResourceIntoZipFromInfo(fileInfo, sourceAuthentication, zipInfo);
145
+ }));
146
+ zipInfos.push(zipInfo);
147
+ });
148
+ resolve2(null);
155
149
  });
156
- });
157
- }
158
- else {
159
- // No data, metadata, or resources to send; we're done
160
- resolve([]);
161
- }
150
+ }
151
+ else {
152
+ resolve2(null);
153
+ }
154
+ });
155
+ // Wait until the Resource zip file(s) have been prepared
156
+ void awaitAllResources.then(() => {
157
+ if (awaitAllItems.length > 0) {
158
+ // Wait until all Data and Metadata files have been copied
159
+ void Promise.all(awaitAllItems).then((results) => {
160
+ // We have three types of results:
161
+ // | fetchedFromSource | copiedToDestination | interpretation | |
162
+ // +-------------------+---------------------+------------------------------------------------+
163
+ // | false | * | could not fetch file from source |
164
+ // | true | true | file has been fetched and sent to AGO |
165
+ // | true | undefined | file has been fetched and will be sent via zip |
166
+ // Filter out copiedToDestination===undefined; we'll get their status when we send their zip
167
+ results = results.filter((result) => !(result.fetchedFromSource &&
168
+ typeof result.copiedToDestination === "undefined"));
169
+ // Now send the resources to AGO
170
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
171
+ _copyAssociatedFileZips(zipInfos, destinationItemId, destinationAuthentication).then((zipResults) => {
172
+ resolve(results.concat(zipResults));
173
+ });
174
+ });
175
+ }
176
+ else {
177
+ // No data, metadata, or resources to send; we're done
178
+ resolve([]);
179
+ }
180
+ });
162
181
  });
163
182
  }
164
183
  /**
@@ -188,6 +207,51 @@ export function _copyAssociatedFileZips(zipInfos, destinationItemId, destination
188
207
  }
189
208
  });
190
209
  }
210
+ /**
211
+ * Replace templatizations in an item's resources
212
+ *
213
+ * @param sourceAuthentication Credentials for the request to the source
214
+ * @param sourceItemId Id of item supplying resource/metadata
215
+ * @param itemTemplate Item being created
216
+ * @param fileInfos Resources for the item; these resources are modified as needed
217
+ * by removing the templatization: the `url` property is replaced by the `file` property
218
+ * @param destinationAuthentication Credentials for the request to the storage
219
+ *
220
+ * @returns A promise that resolves when all de-templatization has completed
221
+ */
222
+ export function _detemplatizeResources(sourceAuthentication, sourceItemId, itemTemplate, fileInfos, destinationAuthentication) {
223
+ const synchronizePromises = [];
224
+ if (itemTemplate.type === "Vector Tile Service") {
225
+ // Get the root.json files
226
+ const rootJsonResources = fileInfos.filter(file => file.filename === "root.json");
227
+ const templatizedResourcePath = "{{" + sourceItemId + ".url}}";
228
+ const resourcePath = destinationAuthentication.portal + "/content/items/" + itemTemplate.itemId;
229
+ const replacer = new RegExp(templatizedResourcePath, "g");
230
+ // Templatize the paths in the files that reference the source item id
231
+ rootJsonResources.forEach(rootFileResource => {
232
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
233
+ synchronizePromises.push(new Promise(resolve => {
234
+ // Fetch the file
235
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
236
+ getBlobAsFile(rootFileResource.url, rootFileResource.filename, sourceAuthentication).then((file) => {
237
+ // Read the file
238
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
239
+ blobToJson(file)
240
+ .then(fileJson => {
241
+ // Templatize by turning JSON into string, replacing paths with template, and re-JSONing
242
+ const updatedFileJson = JSON.parse(JSON.stringify(fileJson)
243
+ .replace(replacer, resourcePath));
244
+ // Write the changes back into the file
245
+ rootFileResource.file = jsonToFile(updatedFileJson, rootFileResource.filename);
246
+ rootFileResource.url = "";
247
+ resolve(null);
248
+ });
249
+ });
250
+ }));
251
+ });
252
+ }
253
+ return Promise.all(synchronizePromises);
254
+ }
191
255
  /**
192
256
  * Copies one or more zipfiles to a storage item in a serial fashion, waiting a bit between sends.
193
257
  *