@esri/solution-feature-layer 1.3.5 → 1.3.11

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.
@@ -27,7 +27,7 @@ import * as common from "@esri/solution-common";
27
27
  * @param destAuthentication Credentials for requests to the destination organization
28
28
  * @param srcAuthentication Credentials for requests to source items
29
29
  * @param templateDictionary Hash mapping property names to replacement values
30
- * @return A promise that will resolve when fullItem has been updated
30
+ * @returns A promise that will resolve when fullItem has been updated
31
31
  */
32
32
  export declare function convertItemToTemplate(solutionItemId: string, itemInfo: any, destAuthentication: common.UserSession, srcAuthentication: common.UserSession, templateDictionary?: any): Promise<common.IItemTemplate>;
33
33
  /**
@@ -38,8 +38,8 @@ export declare function convertItemToTemplate(solutionItemId: string, itemInfo:
38
38
  * folder; ignored for Group item type
39
39
  * @param settings Hash mapping property names to replacement values
40
40
  * @param authentication Credentials for the request
41
- * @return A promise that will resolve with the id of the created item
42
- * @protected
41
+ * @returns A promise that will resolve with the id of the created item
42
+ * @private
43
43
  */
44
44
  export declare function createItemFromTemplate(template: common.IItemTemplate, templateDictionary: any, destinationAuthentication: common.UserSession, itemProgressCallback: common.IItemProgressCallback): Promise<common.ICreateItemFromTemplateResponse>;
45
45
  /**
@@ -53,3 +53,4 @@ export declare function createItemFromTemplate(template: common.IItemTemplate, t
53
53
  * @returns Promise resolving to successfulness of update
54
54
  */
55
55
  export declare function postProcess(itemId: string, type: string, itemInfos: any[], template: common.IItemTemplate, templates: common.IItemTemplate[], templateDictionary: any, authentication: common.UserSession): Promise<common.IUpdateItemResponse>;
56
+ export declare function _mostRecentlyEditedLayer(layerOrTableList: any[]): any;
@@ -30,7 +30,7 @@ import * as common from "@esri/solution-common";
30
30
  * @param destAuthentication Credentials for requests to the destination organization
31
31
  * @param srcAuthentication Credentials for requests to source items
32
32
  * @param templateDictionary Hash mapping property names to replacement values
33
- * @return A promise that will resolve when fullItem has been updated
33
+ * @returns A promise that will resolve when fullItem has been updated
34
34
  */
35
35
  export function convertItemToTemplate(solutionItemId, itemInfo, destAuthentication, srcAuthentication, templateDictionary) {
36
36
  return new Promise((resolve, reject) => {
@@ -49,6 +49,10 @@ export function convertItemToTemplate(solutionItemId, itemInfo, destAuthenticati
49
49
  common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {
50
50
  template.data = data;
51
51
  common.getServiceLayersAndTables(template, srcAuthentication).then(itemTemplate => {
52
+ // Update item's modified date to the latest of its modified date and the last edit date
53
+ // of each of its layers or tables
54
+ itemTemplate.item.modified =
55
+ Math.max(itemTemplate.item.modified, _mostRecentlyEditedLayer(template.properties.layers), _mostRecentlyEditedLayer(template.properties.tables));
52
56
  // Extract dependencies
53
57
  common.extractDependencies(itemTemplate, srcAuthentication).then((dependencies) => {
54
58
  // set the dependencies as an array of IDs from the array of IDependency
@@ -71,8 +75,8 @@ export function convertItemToTemplate(solutionItemId, itemInfo, destAuthenticati
71
75
  * folder; ignored for Group item type
72
76
  * @param settings Hash mapping property names to replacement values
73
77
  * @param authentication Credentials for the request
74
- * @return A promise that will resolve with the id of the created item
75
- * @protected
78
+ * @returns A promise that will resolve with the id of the created item
79
+ * @private
76
80
  */
77
81
  export function createItemFromTemplate(template, templateDictionary, destinationAuthentication, itemProgressCallback) {
78
82
  return new Promise(resolve => {
@@ -206,4 +210,17 @@ export function postProcess(itemId, type, itemInfos, template, templates, templa
206
210
  });
207
211
  }
208
212
  //#endregion
213
+ //#region Internal functions -----------------------------------------------------------------------------------------//
214
+ //???
215
+ export function _mostRecentlyEditedLayer(layerOrTableList) {
216
+ let mostRecentlyEdited = 0;
217
+ layerOrTableList.forEach((layer) => {
218
+ mostRecentlyEdited =
219
+ layer.editingInfo?.lastEditDate ?
220
+ Math.max(mostRecentlyEdited, layer.editingInfo.lastEditDate) :
221
+ mostRecentlyEdited;
222
+ });
223
+ return mostRecentlyEdited;
224
+ }
225
+ //#endregion
209
226
  //# sourceMappingURL=feature-layer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature-layer.js","sourceRoot":"","sources":["../../src/feature-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-layer.js","sourceRoot":"","sources":["../../src/feature-layer.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ import * as common from "@esri/solution-common";
27
27
  * @param destAuthentication Credentials for requests to the destination organization
28
28
  * @param srcAuthentication Credentials for requests to source items
29
29
  * @param templateDictionary Hash mapping property names to replacement values
30
- * @return A promise that will resolve when fullItem has been updated
30
+ * @returns A promise that will resolve when fullItem has been updated
31
31
  */
32
32
  export declare function convertItemToTemplate(solutionItemId: string, itemInfo: any, destAuthentication: common.UserSession, srcAuthentication: common.UserSession, templateDictionary?: any): Promise<common.IItemTemplate>;
33
33
  /**
@@ -38,8 +38,8 @@ export declare function convertItemToTemplate(solutionItemId: string, itemInfo:
38
38
  * folder; ignored for Group item type
39
39
  * @param settings Hash mapping property names to replacement values
40
40
  * @param authentication Credentials for the request
41
- * @return A promise that will resolve with the id of the created item
42
- * @protected
41
+ * @returns A promise that will resolve with the id of the created item
42
+ * @private
43
43
  */
44
44
  export declare function createItemFromTemplate(template: common.IItemTemplate, templateDictionary: any, destinationAuthentication: common.UserSession, itemProgressCallback: common.IItemProgressCallback): Promise<common.ICreateItemFromTemplateResponse>;
45
45
  /**
@@ -53,3 +53,4 @@ export declare function createItemFromTemplate(template: common.IItemTemplate, t
53
53
  * @returns Promise resolving to successfulness of update
54
54
  */
55
55
  export declare function postProcess(itemId: string, type: string, itemInfos: any[], template: common.IItemTemplate, templates: common.IItemTemplate[], templateDictionary: any, authentication: common.UserSession): Promise<common.IUpdateItemResponse>;
56
+ export declare function _mostRecentlyEditedLayer(layerOrTableList: any[]): any;
@@ -15,7 +15,7 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.postProcess = exports.createItemFromTemplate = exports.convertItemToTemplate = void 0;
18
+ exports._mostRecentlyEditedLayer = exports.postProcess = exports.createItemFromTemplate = exports.convertItemToTemplate = void 0;
19
19
  const tslib_1 = require("tslib");
20
20
  /**
21
21
  * Manages the creation and deployment of feature layers and services.
@@ -23,7 +23,7 @@ const tslib_1 = require("tslib");
23
23
  * @module feature-layer
24
24
  */
25
25
  //#region Imports ----------------------------------------------------------------------------------------------//
26
- const common = (0, tslib_1.__importStar)(require("@esri/solution-common"));
26
+ const common = tslib_1.__importStar(require("@esri/solution-common"));
27
27
  //#endregion
28
28
  //#region Publish Process --------------------------------------------------------------------------------------//
29
29
  /**
@@ -34,7 +34,7 @@ const common = (0, tslib_1.__importStar)(require("@esri/solution-common"));
34
34
  * @param destAuthentication Credentials for requests to the destination organization
35
35
  * @param srcAuthentication Credentials for requests to source items
36
36
  * @param templateDictionary Hash mapping property names to replacement values
37
- * @return A promise that will resolve when fullItem has been updated
37
+ * @returns A promise that will resolve when fullItem has been updated
38
38
  */
39
39
  function convertItemToTemplate(solutionItemId, itemInfo, destAuthentication, srcAuthentication, templateDictionary) {
40
40
  return new Promise((resolve, reject) => {
@@ -53,6 +53,10 @@ function convertItemToTemplate(solutionItemId, itemInfo, destAuthentication, src
53
53
  common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {
54
54
  template.data = data;
55
55
  common.getServiceLayersAndTables(template, srcAuthentication).then(itemTemplate => {
56
+ // Update item's modified date to the latest of its modified date and the last edit date
57
+ // of each of its layers or tables
58
+ itemTemplate.item.modified =
59
+ Math.max(itemTemplate.item.modified, _mostRecentlyEditedLayer(template.properties.layers), _mostRecentlyEditedLayer(template.properties.tables));
56
60
  // Extract dependencies
57
61
  common.extractDependencies(itemTemplate, srcAuthentication).then((dependencies) => {
58
62
  // set the dependencies as an array of IDs from the array of IDependency
@@ -76,8 +80,8 @@ exports.convertItemToTemplate = convertItemToTemplate;
76
80
  * folder; ignored for Group item type
77
81
  * @param settings Hash mapping property names to replacement values
78
82
  * @param authentication Credentials for the request
79
- * @return A promise that will resolve with the id of the created item
80
- * @protected
83
+ * @returns A promise that will resolve with the id of the created item
84
+ * @private
81
85
  */
82
86
  function createItemFromTemplate(template, templateDictionary, destinationAuthentication, itemProgressCallback) {
83
87
  return new Promise(resolve => {
@@ -213,4 +217,18 @@ function postProcess(itemId, type, itemInfos, template, templates, templateDicti
213
217
  }
214
218
  exports.postProcess = postProcess;
215
219
  //#endregion
220
+ //#region Internal functions -----------------------------------------------------------------------------------------//
221
+ //???
222
+ function _mostRecentlyEditedLayer(layerOrTableList) {
223
+ let mostRecentlyEdited = 0;
224
+ layerOrTableList.forEach((layer) => {
225
+ mostRecentlyEdited =
226
+ layer.editingInfo?.lastEditDate ?
227
+ Math.max(mostRecentlyEdited, layer.editingInfo.lastEditDate) :
228
+ mostRecentlyEdited;
229
+ });
230
+ return mostRecentlyEdited;
231
+ }
232
+ exports._mostRecentlyEditedLayer = _mostRecentlyEditedLayer;
233
+ //#endregion
216
234
  //# sourceMappingURL=feature-layer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature-layer.js","sourceRoot":"","sources":["../../src/feature-layer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;AAEH;;;;GAIG;AAEH,kHAAkH;AAElH,2EAAgD;AAEhD,YAAY;AAEZ,kHAAkH;AAElH;;;;;;;;;GASG;AACH,SAAgB,qBAAqB,CACnC,cAAsB,EACtB,QAAa,EACb,kBAAsC,EACtC,iBAAqC,EACrC,kBAAwB;IAExB,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3D,gBAAgB;QAChB,MAAM,QAAQ,GAAyB,MAAM,CAAC,6BAA6B,CACzE,QAAQ,CACT,CAAC;QAEF,MAAM,sBAAsB,GAAY,MAAM,CAAC,2BAA2B,CACxE,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;QACF,IAAI,sBAAsB,EAAE;YAC1B,MAAM;iBACH,oCAAoC,CAAC,QAAQ,EAAE,iBAAiB,CAAC;iBACjE,IAAI,CACH,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAC/B,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC5B,CAAC;SACL;aAAM;YACL,uDAAuD;YACvD,QAAQ,CAAC,6BAA6B,GAAG,EAAE,CAAC;YAE5C,mEAAmE;YACnE,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACxE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;gBACrB,MAAM,CAAC,yBAAyB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAChE,YAAY,CAAC,EAAE;oBACb,uBAAuB;oBACvB,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAC9D,CAAC,YAAkC,EAAE,EAAE;wBACrC,wEAAwE;wBACxE,YAAY,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG,CAC1C,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CACrB,CAAC;wBAEF,+CAA+C;wBAC/C,OAAO,CACL,MAAM,CAAC,UAAU,CACf,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,kBAAkB,CACnB,CACF,CAAC;oBACJ,CAAC,EACD,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACnC,CAAC;gBACJ,CAAC,EACD,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC5B,CAAC;YACJ,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA1DD,sDA0DC;AAED,YAAY;AAEZ,kHAAkH;AAElH;;;;;;;;;;GAUG;AACH,SAAgB,sBAAsB,CACpC,QAA8B,EAC9B,kBAAuB,EACvB,yBAA6C,EAC7C,oBAAkD;IAElD,OAAO,IAAI,OAAO,CAAyC,OAAO,CAAC,EAAE;QACnE,yDAAyD;QACzD,IACE,CAAC,oBAAoB,CACnB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAClC,CAAC,CACF,EACD;YACA,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAClC,CAAC,CACF,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,OAAO;SACR;QAED,4DAA4D;QAC5D,IAAI,eAAe,GAAyB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzE,eAAe,GAAG,MAAM,CAAC,iBAAiB,CACxC,eAAe,EACf,kBAAkB,CACnB,CAAC;QAEF,8EAA8E;QAC9E,OAAO,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;QAEtC,yCAAyC;QACzC,MAAM,UAAU,GAAuB,MAAM,CAAC,eAAe,CAC3D,eAAe,CAAC,IAAI,CACrB,CAAC;QAEF,uDAAuD;QACvD,MAAM;aACH,oBAAoB,CACnB,eAAe,EACf,yBAAyB,EACzB,kBAAkB,CACnB;aACA,IAAI,CACH,cAAc,CAAC,EAAE;YACf,IAAI,cAAc,CAAC,OAAO,EAAE;gBAC1B,yDAAyD;gBACzD,IACE,CAAC,oBAAoB,CACnB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAClC,QAAQ,CAAC,6BAA6B,GAAG,CAAC,EAC1C,cAAc,CAAC,aAAa,CAC7B,EACD;oBACA,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,SAAS,EACpC,CAAC,CACF,CAAC;oBACF,MAAM;yBACH,UAAU,CACT,cAAc,CAAC,aAAa,EAC5B,yBAAyB,CAC1B;yBACA,IAAI,CACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACpD,EACH,GAAG,EAAE,CACH,OAAO,CAAC,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAC/D,CAAC;iBACL;qBAAM;oBACL,iEAAiE;oBACjE,eAAe,GAAG,MAAM,CAAC,cAAc,CACrC,eAAe,EACf,kBAAkB,EAClB,cAAc,CACf,CAAC;oBACF,mDAAmD;oBACnD,MAAM;yBACH,gCAAgC,CAC/B,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,yBAAyB,CAC1B;yBACA,IAAI,CACH,GAAG,EAAE;wBACH,eAAe,GAAG,MAAM,CAAC,cAAc,CACrC,eAAe,EACf,kBAAkB,EAClB,cAAc,CACf,CAAC;wBACF,6DAA6D;wBAC7D,MAAM;6BACH,kBAAkB,CACjB;4BACE,GAAG,eAAe,CAAC,IAAI;4BACvB,GAAG,EAAE,SAAS,CAAC,4CAA4C;yBAC5D,EACD,eAAe,CAAC,IAAI,EACpB,yBAAyB,EACzB,QAAQ,CAAC,IAAI,CAAC,SAAS,EACvB,SAAS,EACT,kBAAkB,CACnB;6BACA,IAAI,CACH,GAAG,EAAE;4BACH,yDAAyD;4BACzD,IACE,CAAC,oBAAoB,CACnB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EACnC,QAAQ,CAAC,6BAA6B,GAAG,CAAC,EAC1C,cAAc,CAAC,aAAa,CAC7B,EACD;gCACA,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,SAAS,EACpC,CAAC,CACF,CAAC;gCACF,MAAM;qCACH,UAAU,CACT,cAAc,CAAC,aAAa,EAC5B,yBAAyB,CAC1B;qCACA,IAAI,CACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,EACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,CACJ,CAAC;6BACL;iCAAM;gCACL,wDAAwD;gCACxD,MAAM;qCACH,WAAW,CACV,eAAe,CAAC,MAAM,EACtB,yBAAyB,CAC1B;qCACA,IAAI,CACH,WAAW,CAAC,EAAE;oCACZ,eAAe,CAAC,IAAI,GAAG,WAAW,CAAC;oCACnC,0BAA0B;oCAC1B,IACE,MAAM,CAAC,OAAO,CACZ,eAAe,EACf,UAAU,CACX;wCACD,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EACvC;wCACA,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC;qCACjC;oCAED,OAAO,CAAC;wCACN,IAAI,EAAE,eAAe;wCACrB,EAAE,EAAE,cAAc,CAAC,aAAa;wCAChC,IAAI,EAAE,eAAe,CAAC,IAAI;wCAC1B,WAAW,EACT,MAAM,CAAC,sBAAsB,CAAC;4CAC5B,IAAI,EAAE,eAAe,CAAC,IAAI;4CAC1B,IAAI,EAAE,eAAe,CAAC,IAAI;yCAC3B,CAAC;4CACF,MAAM,CAAC,kBAAkB,CAAC,eAAe,CAAC;qCAC7C,CAAC,CAAC;gCACL,CAAC,EACD,GAAG,EAAE;oCACH,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;oCACF,MAAM;yCACH,UAAU,CACT,cAAc,CAAC,aAAa,EAC5B,yBAAyB,CAC1B;yCACA,IAAI,CACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,EACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,CACJ,CAAC;gCACN,CAAC,CAAC,uBAAuB;iCAC1B,CAAC;6BACL;wBACH,CAAC,EACD,GAAG,EAAE;4BACH,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;4BACF,MAAM;iCACH,UAAU,CACT,cAAc,CAAC,aAAa,EAC5B,yBAAyB,CAC1B;iCACA,IAAI,CACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,EACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAClC,QAAQ,CAAC,IAAI,CACd,CACF,CACJ,CAAC;wBACN,CAAC,CAAC,uBAAuB;yBAC1B,CAAC;oBACN,CAAC,EACD,GAAG,EAAE;wBACH,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;wBACF,MAAM;6BACH,UAAU,CACT,cAAc,CAAC,aAAa,EAC5B,yBAAyB,CAC1B;6BACA,IAAI,CACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACpD,EACH,GAAG,EAAE,CACH,OAAO,CACL,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACpD,CACJ,CAAC;oBACN,CAAC,CAAC,4CAA4C;qBAC/C,CAAC;iBACL;aACF;iBAAM;gBACL,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB;aACtF;QACH,CAAC,EACD,GAAG,EAAE;YACH,oBAAoB,CAClB,QAAQ,CAAC,MAAM,EACf,MAAM,CAAC,mBAAmB,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB;QACvF,CAAC,CACF,CAAC;IACN,CAAC,CAAC,CAAC;AACL,CAAC;AAvRD,wDAuRC;AAED;;;;;;;;;GASG;AACH,SAAgB,WAAW,CACzB,MAAc,EACd,IAAY,EACZ,SAAgB,EAChB,QAA8B,EAC9B,SAAiC,EACjC,kBAAuB,EACvB,cAAkC;IAElC,OAAO,IAAI,OAAO,CAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACjE,MAAM;aACH,gCAAgC,CAC/B,MAAM,EACN,kBAAkB,EAClB,cAAc,CACf;aACA,IAAI,CAAC,OAAO,CAAC,EAAE;YACd,IAAI,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE;gBACvC,QAAQ,GAAG,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;gBAClE,MAAM;qBACH,4BAA4B,CAC3B,QAAQ,EACR,cAAc,EACd,QAAQ,CAAC,IAAI,CAAC,GAAG,EACjB,kBAAkB,CACnB;qBACA,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,OAAO,CAAC,CAAC;aAClB;QACH,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAhCD,kCAgCC;AAED,YAAY"}
1
+ {"version":3,"file":"feature-layer.js","sourceRoot":"","sources":["../../src/feature-layer.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,5 @@ const tslib_1 = require("tslib");
21
21
  *
22
22
  * @module feature-layer
23
23
  */
24
- (0, tslib_1.__exportStar)(require("./feature-layer"), exports);
24
+ tslib_1.__exportStar(require("./feature-layer"), exports);
25
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;;;GAIG;AAEH,+DAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;;;GAIG;AAEH,0DAAgC"}
@@ -27,7 +27,7 @@ import * as common from "@esri/solution-common";
27
27
  * @param destAuthentication Credentials for requests to the destination organization
28
28
  * @param srcAuthentication Credentials for requests to source items
29
29
  * @param templateDictionary Hash mapping property names to replacement values
30
- * @return A promise that will resolve when fullItem has been updated
30
+ * @returns A promise that will resolve when fullItem has been updated
31
31
  */
32
32
  export declare function convertItemToTemplate(solutionItemId: string, itemInfo: any, destAuthentication: common.UserSession, srcAuthentication: common.UserSession, templateDictionary?: any): Promise<common.IItemTemplate>;
33
33
  /**
@@ -38,8 +38,8 @@ export declare function convertItemToTemplate(solutionItemId: string, itemInfo:
38
38
  * folder; ignored for Group item type
39
39
  * @param settings Hash mapping property names to replacement values
40
40
  * @param authentication Credentials for the request
41
- * @return A promise that will resolve with the id of the created item
42
- * @protected
41
+ * @returns A promise that will resolve with the id of the created item
42
+ * @private
43
43
  */
44
44
  export declare function createItemFromTemplate(template: common.IItemTemplate, templateDictionary: any, destinationAuthentication: common.UserSession, itemProgressCallback: common.IItemProgressCallback): Promise<common.ICreateItemFromTemplateResponse>;
45
45
  /**
@@ -53,3 +53,4 @@ export declare function createItemFromTemplate(template: common.IItemTemplate, t
53
53
  * @returns Promise resolving to successfulness of update
54
54
  */
55
55
  export declare function postProcess(itemId: string, type: string, itemInfos: any[], template: common.IItemTemplate, templates: common.IItemTemplate[], templateDictionary: any, authentication: common.UserSession): Promise<common.IUpdateItemResponse>;
56
+ export declare function _mostRecentlyEditedLayer(layerOrTableList: any[]): any;
@@ -1,7 +1,7 @@
1
1
  /* @preserve
2
- * @esri/solution-feature-layer - v1.3.5 - Apache-2.0
2
+ * @esri/solution-feature-layer - v1.3.11 - Apache-2.0
3
3
  * Copyright (c) 2018-2022 Esri, Inc.
4
- * Fri Mar 04 2022 21:15:32 GMT-0800 (Pacific Standard Time)
4
+ * Mon Apr 25 2022 11:56:23 GMT-0700 (Pacific Daylight Time)
5
5
  *
6
6
  * Licensed under the Apache License, Version 2.0 (the "License");
7
7
  * you may not use this file except in compliance with the License.
@@ -66,7 +66,7 @@
66
66
  * @param destAuthentication Credentials for requests to the destination organization
67
67
  * @param srcAuthentication Credentials for requests to source items
68
68
  * @param templateDictionary Hash mapping property names to replacement values
69
- * @return A promise that will resolve when fullItem has been updated
69
+ * @returns A promise that will resolve when fullItem has been updated
70
70
  */
71
71
  function convertItemToTemplate(solutionItemId, itemInfo, destAuthentication, srcAuthentication, templateDictionary) {
72
72
  return new Promise((resolve, reject) => {
@@ -85,6 +85,10 @@
85
85
  common__namespace.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {
86
86
  template.data = data;
87
87
  common__namespace.getServiceLayersAndTables(template, srcAuthentication).then(itemTemplate => {
88
+ // Update item's modified date to the latest of its modified date and the last edit date
89
+ // of each of its layers or tables
90
+ itemTemplate.item.modified =
91
+ Math.max(itemTemplate.item.modified, _mostRecentlyEditedLayer(template.properties.layers), _mostRecentlyEditedLayer(template.properties.tables));
88
92
  // Extract dependencies
89
93
  common__namespace.extractDependencies(itemTemplate, srcAuthentication).then((dependencies) => {
90
94
  // set the dependencies as an array of IDs from the array of IDependency
@@ -107,8 +111,8 @@
107
111
  * folder; ignored for Group item type
108
112
  * @param settings Hash mapping property names to replacement values
109
113
  * @param authentication Credentials for the request
110
- * @return A promise that will resolve with the id of the created item
111
- * @protected
114
+ * @returns A promise that will resolve with the id of the created item
115
+ * @private
112
116
  */
113
117
  function createItemFromTemplate(template, templateDictionary, destinationAuthentication, itemProgressCallback) {
114
118
  return new Promise(resolve => {
@@ -241,8 +245,22 @@
241
245
  }, reject);
242
246
  });
243
247
  }
248
+ //#endregion
249
+ //#region Internal functions -----------------------------------------------------------------------------------------//
250
+ //???
251
+ function _mostRecentlyEditedLayer(layerOrTableList) {
252
+ let mostRecentlyEdited = 0;
253
+ layerOrTableList.forEach((layer) => {
254
+ mostRecentlyEdited =
255
+ layer.editingInfo?.lastEditDate ?
256
+ Math.max(mostRecentlyEdited, layer.editingInfo.lastEditDate) :
257
+ mostRecentlyEdited;
258
+ });
259
+ return mostRecentlyEdited;
260
+ }
244
261
  //#endregion
245
262
 
263
+ exports._mostRecentlyEditedLayer = _mostRecentlyEditedLayer;
246
264
  exports.convertItemToTemplate = convertItemToTemplate;
247
265
  exports.createItemFromTemplate = createItemFromTemplate;
248
266
  exports.postProcess = postProcess;
@@ -1 +1 @@
1
- {"version":3,"file":"feature-layer.umd.js","sources":["../../src/feature-layer.ts"],"sourcesContent":["/** @license\r\n * Copyright 2018 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/**\r\n * Manages the creation and deployment of feature layers and services.\r\n *\r\n * @module feature-layer\r\n */\r\n\r\n//#region Imports ----------------------------------------------------------------------------------------------//\r\n\r\nimport * as common from \"@esri/solution-common\";\r\n\r\n//#endregion\r\n\r\n//#region Publish Process --------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Fills in missing data, including full layer and table definitions, in a feature services' definition.\r\n *\r\n * @param solutionItemId\r\n * @param itemInfo Feature service item\r\n * @param destAuthentication Credentials for requests to the destination organization\r\n * @param srcAuthentication Credentials for requests to source items\r\n * @param templateDictionary Hash mapping property names to replacement values\r\n * @return A promise that will resolve when fullItem has been updated\r\n */\r\nexport function convertItemToTemplate(\r\n solutionItemId: string,\r\n itemInfo: any,\r\n destAuthentication: common.UserSession,\r\n srcAuthentication: common.UserSession,\r\n templateDictionary?: any\r\n): Promise<common.IItemTemplate> {\r\n return new Promise<common.IItemTemplate>((resolve, reject) => {\r\n // Init template\r\n const template: common.IItemTemplate = common.createInitializedItemTemplate(\r\n itemInfo\r\n );\r\n\r\n const hasInvalidDesignations: boolean = common.hasInvalidGroupDesignations(\r\n itemInfo.groupDesignations\r\n );\r\n if (hasInvalidDesignations) {\r\n common\r\n .updateTemplateForInvalidDesignations(template, srcAuthentication)\r\n .then(\r\n _template => resolve(_template),\r\n e => reject(common.fail(e))\r\n );\r\n } else {\r\n // Update the estimated cost factor to deploy this item\r\n template.estimatedDeploymentCostFactor = 10;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {\r\n template.data = data;\r\n common.getServiceLayersAndTables(template, srcAuthentication).then(\r\n itemTemplate => {\r\n // Extract dependencies\r\n common.extractDependencies(itemTemplate, srcAuthentication).then(\r\n (dependencies: common.IDependency[]) => {\r\n // set the dependencies as an array of IDs from the array of IDependency\r\n itemTemplate.dependencies = dependencies.map(\r\n (dep: any) => dep.id\r\n );\r\n\r\n // resolve the template with templatized values\r\n resolve(\r\n common.templatize(\r\n itemTemplate,\r\n dependencies,\r\n false,\r\n templateDictionary\r\n )\r\n );\r\n },\r\n (e: any) => reject(common.fail(e))\r\n );\r\n },\r\n e => reject(common.fail(e))\r\n );\r\n });\r\n }\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Deploy Process ---------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Creates an item in a specified folder (except for Group item type).\r\n *\r\n * @param itemTemplate Item to be created; n.b.: this item is modified\r\n * @param folderId Id of folder to receive item; null indicates that the item goes into the root\r\n * folder; ignored for Group item type\r\n * @param settings Hash mapping property names to replacement values\r\n * @param authentication Credentials for the request\r\n * @return A promise that will resolve with the id of the created item\r\n * @protected\r\n */\r\nexport function createItemFromTemplate(\r\n template: common.IItemTemplate,\r\n templateDictionary: any,\r\n destinationAuthentication: common.UserSession,\r\n itemProgressCallback: common.IItemProgressCallback\r\n): Promise<common.ICreateItemFromTemplateResponse> {\r\n return new Promise<common.ICreateItemFromTemplateResponse>(resolve => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Started,\r\n 0\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Ignored,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type));\r\n return;\r\n }\r\n\r\n // Replace the templatized symbols in a copy of the template\r\n let newItemTemplate: common.IItemTemplate = common.cloneObject(template);\r\n newItemTemplate = common.replaceInTemplate(\r\n newItemTemplate,\r\n templateDictionary\r\n );\r\n\r\n // Thumbnail has to be updated separately; doesn't work in create service call\r\n delete newItemTemplate.item.thumbnail;\r\n\r\n // cache the popup info to be added later\r\n const popupInfos: common.IPopupInfos = common.cachePopupInfos(\r\n newItemTemplate.data\r\n );\r\n\r\n // Create the item, then update its URL with its new id\r\n common\r\n .createFeatureService(\r\n newItemTemplate,\r\n destinationAuthentication,\r\n templateDictionary\r\n )\r\n .then(\r\n createResponse => {\r\n if (createResponse.success) {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Created,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(common.generateEmptyCreationResponse(template.type))\r\n );\r\n } else {\r\n // Detemplatize what we can now that the service has been created\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Add the layers and tables to the feature service\r\n common\r\n .addFeatureServiceLayersAndTables(\r\n newItemTemplate,\r\n templateDictionary,\r\n popupInfos,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () => {\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Update the item with snippet, description, popupInfo, etc.\r\n common\r\n .updateItemExtended(\r\n {\r\n ...newItemTemplate.item,\r\n url: undefined // can't update the URL of a feature service\r\n },\r\n newItemTemplate.data,\r\n destinationAuthentication,\r\n template.item.thumbnail,\r\n undefined,\r\n templateDictionary\r\n )\r\n .then(\r\n () => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Finished,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } else {\r\n // Update the template to match what we've stored in AGO\r\n common\r\n .getItemBase(\r\n newItemTemplate.itemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n updatedItem => {\r\n newItemTemplate.item = updatedItem;\r\n /* istanbul ignore else */\r\n if (\r\n common.getProp(\r\n newItemTemplate,\r\n \"item.url\"\r\n ) &&\r\n !newItemTemplate.item.url.endsWith(\"/\")\r\n ) {\r\n newItemTemplate.item.url += \"/\";\r\n }\r\n\r\n resolve({\r\n item: newItemTemplate,\r\n id: createResponse.serviceItemId,\r\n type: newItemTemplate.type,\r\n postProcess:\r\n common.hasUnresolvedVariables({\r\n item: newItemTemplate.item,\r\n data: newItemTemplate.data\r\n }) ||\r\n common.isWorkforceProject(newItemTemplate)\r\n });\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n )\r\n );\r\n } // fails to add service layers and/or tables\r\n );\r\n }\r\n } else {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n );\r\n });\r\n}\r\n\r\n/**\r\n * Feature Layer post-processing actions\r\n *\r\n * @param {string} itemId The item ID\r\n * @param {string} type The template type\r\n * @param {any[]} itemInfos Array of {id: 'ef3', type: 'Web Map'} objects\r\n * @param {any} templateDictionary The template dictionary\r\n * @param {UserSession} authentication The destination session info\r\n * @returns Promise resolving to successfulness of update\r\n */\r\nexport function postProcess(\r\n itemId: string,\r\n type: string,\r\n itemInfos: any[],\r\n template: common.IItemTemplate,\r\n templates: common.IItemTemplate[],\r\n templateDictionary: any,\r\n authentication: common.UserSession\r\n): Promise<common.IUpdateItemResponse> {\r\n return new Promise<common.IUpdateItemResponse>((resolve, reject) => {\r\n common\r\n .updateItemTemplateFromDictionary(\r\n itemId,\r\n templateDictionary,\r\n authentication\r\n )\r\n .then(results => {\r\n if (common.isWorkforceProject(template)) {\r\n template = common.replaceInTemplate(template, templateDictionary);\r\n common\r\n .fineTuneCreatedWorkforceItem(\r\n template,\r\n authentication,\r\n template.item.url,\r\n templateDictionary\r\n )\r\n .then(resolve, reject);\r\n } else {\r\n resolve(results);\r\n }\r\n }, reject);\r\n });\r\n}\r\n\r\n//#endregion\r\n"],"names":["common"],"mappings":"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"}
1
+ {"version":3,"file":"feature-layer.umd.js","sources":["../../src/feature-layer.ts"],"sourcesContent":["/** @license\r\n * Copyright 2018 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/**\r\n * Manages the creation and deployment of feature layers and services.\r\n *\r\n * @module feature-layer\r\n */\r\n\r\n//#region Imports ----------------------------------------------------------------------------------------------//\r\n\r\nimport * as common from \"@esri/solution-common\";\r\n\r\n//#endregion\r\n\r\n//#region Publish Process --------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Fills in missing data, including full layer and table definitions, in a feature services' definition.\r\n *\r\n * @param solutionItemId\r\n * @param itemInfo Feature service item\r\n * @param destAuthentication Credentials for requests to the destination organization\r\n * @param srcAuthentication Credentials for requests to source items\r\n * @param templateDictionary Hash mapping property names to replacement values\r\n * @returns A promise that will resolve when fullItem has been updated\r\n */\r\nexport function convertItemToTemplate(\r\n solutionItemId: string,\r\n itemInfo: any,\r\n destAuthentication: common.UserSession,\r\n srcAuthentication: common.UserSession,\r\n templateDictionary?: any\r\n): Promise<common.IItemTemplate> {\r\n return new Promise<common.IItemTemplate>((resolve, reject) => {\r\n // Init template\r\n const template: common.IItemTemplate = common.createInitializedItemTemplate(\r\n itemInfo\r\n );\r\n\r\n const hasInvalidDesignations: boolean = common.hasInvalidGroupDesignations(\r\n itemInfo.groupDesignations\r\n );\r\n if (hasInvalidDesignations) {\r\n common\r\n .updateTemplateForInvalidDesignations(template, srcAuthentication)\r\n .then(\r\n _template => resolve(_template),\r\n e => reject(common.fail(e))\r\n );\r\n } else {\r\n // Update the estimated cost factor to deploy this item\r\n template.estimatedDeploymentCostFactor = 10;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {\r\n template.data = data;\r\n common.getServiceLayersAndTables(template, srcAuthentication).then(\r\n itemTemplate => {\r\n // Update item's modified date to the latest of its modified date and the last edit date\r\n // of each of its layers or tables\r\n itemTemplate.item.modified =\r\n Math.max(itemTemplate.item.modified,\r\n _mostRecentlyEditedLayer(template.properties.layers),\r\n _mostRecentlyEditedLayer(template.properties.tables)\r\n );\r\n\r\n // Extract dependencies\r\n common.extractDependencies(itemTemplate, srcAuthentication).then(\r\n (dependencies: common.IDependency[]) => {\r\n // set the dependencies as an array of IDs from the array of IDependency\r\n itemTemplate.dependencies = dependencies.map(\r\n (dep: any) => dep.id\r\n );\r\n\r\n // resolve the template with templatized values\r\n resolve(\r\n common.templatize(\r\n itemTemplate,\r\n dependencies,\r\n false,\r\n templateDictionary\r\n )\r\n );\r\n },\r\n (e: any) => reject(common.fail(e))\r\n );\r\n },\r\n e => reject(common.fail(e))\r\n );\r\n });\r\n }\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Deploy Process ---------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Creates an item in a specified folder (except for Group item type).\r\n *\r\n * @param itemTemplate Item to be created; n.b.: this item is modified\r\n * @param folderId Id of folder to receive item; null indicates that the item goes into the root\r\n * folder; ignored for Group item type\r\n * @param settings Hash mapping property names to replacement values\r\n * @param authentication Credentials for the request\r\n * @returns A promise that will resolve with the id of the created item\r\n * @private\r\n */\r\nexport function createItemFromTemplate(\r\n template: common.IItemTemplate,\r\n templateDictionary: any,\r\n destinationAuthentication: common.UserSession,\r\n itemProgressCallback: common.IItemProgressCallback\r\n): Promise<common.ICreateItemFromTemplateResponse> {\r\n return new Promise<common.ICreateItemFromTemplateResponse>(resolve => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Started,\r\n 0\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Ignored,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type));\r\n return;\r\n }\r\n\r\n // Replace the templatized symbols in a copy of the template\r\n let newItemTemplate: common.IItemTemplate = common.cloneObject(template);\r\n newItemTemplate = common.replaceInTemplate(\r\n newItemTemplate,\r\n templateDictionary\r\n );\r\n\r\n // Thumbnail has to be updated separately; doesn't work in create service call\r\n delete newItemTemplate.item.thumbnail;\r\n\r\n // cache the popup info to be added later\r\n const popupInfos: common.IPopupInfos = common.cachePopupInfos(\r\n newItemTemplate.data\r\n );\r\n\r\n // Create the item, then update its URL with its new id\r\n common\r\n .createFeatureService(\r\n newItemTemplate,\r\n destinationAuthentication,\r\n templateDictionary\r\n )\r\n .then(\r\n createResponse => {\r\n if (createResponse.success) {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Created,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(common.generateEmptyCreationResponse(template.type))\r\n );\r\n } else {\r\n // Detemplatize what we can now that the service has been created\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Add the layers and tables to the feature service\r\n common\r\n .addFeatureServiceLayersAndTables(\r\n newItemTemplate,\r\n templateDictionary,\r\n popupInfos,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () => {\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Update the item with snippet, description, popupInfo, etc.\r\n common\r\n .updateItemExtended(\r\n {\r\n ...newItemTemplate.item,\r\n url: undefined // can't update the URL of a feature service\r\n },\r\n newItemTemplate.data,\r\n destinationAuthentication,\r\n template.item.thumbnail,\r\n undefined,\r\n templateDictionary\r\n )\r\n .then(\r\n () => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Finished,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } else {\r\n // Update the template to match what we've stored in AGO\r\n common\r\n .getItemBase(\r\n newItemTemplate.itemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n updatedItem => {\r\n newItemTemplate.item = updatedItem;\r\n /* istanbul ignore else */\r\n if (\r\n common.getProp(\r\n newItemTemplate,\r\n \"item.url\"\r\n ) &&\r\n !newItemTemplate.item.url.endsWith(\"/\")\r\n ) {\r\n newItemTemplate.item.url += \"/\";\r\n }\r\n\r\n resolve({\r\n item: newItemTemplate,\r\n id: createResponse.serviceItemId,\r\n type: newItemTemplate.type,\r\n postProcess:\r\n common.hasUnresolvedVariables({\r\n item: newItemTemplate.item,\r\n data: newItemTemplate.data\r\n }) ||\r\n common.isWorkforceProject(newItemTemplate)\r\n });\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n )\r\n );\r\n } // fails to add service layers and/or tables\r\n );\r\n }\r\n } else {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n );\r\n });\r\n}\r\n\r\n/**\r\n * Feature Layer post-processing actions\r\n *\r\n * @param {string} itemId The item ID\r\n * @param {string} type The template type\r\n * @param {any[]} itemInfos Array of {id: 'ef3', type: 'Web Map'} objects\r\n * @param {any} templateDictionary The template dictionary\r\n * @param {UserSession} authentication The destination session info\r\n * @returns Promise resolving to successfulness of update\r\n */\r\nexport function postProcess(\r\n itemId: string,\r\n type: string,\r\n itemInfos: any[],\r\n template: common.IItemTemplate,\r\n templates: common.IItemTemplate[],\r\n templateDictionary: any,\r\n authentication: common.UserSession\r\n): Promise<common.IUpdateItemResponse> {\r\n return new Promise<common.IUpdateItemResponse>((resolve, reject) => {\r\n common\r\n .updateItemTemplateFromDictionary(\r\n itemId,\r\n templateDictionary,\r\n authentication\r\n )\r\n .then(results => {\r\n if (common.isWorkforceProject(template)) {\r\n template = common.replaceInTemplate(template, templateDictionary);\r\n common\r\n .fineTuneCreatedWorkforceItem(\r\n template,\r\n authentication,\r\n template.item.url,\r\n templateDictionary\r\n )\r\n .then(resolve, reject);\r\n } else {\r\n resolve(results);\r\n }\r\n }, reject);\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Internal functions -----------------------------------------------------------------------------------------//\r\n\r\n//???\r\nexport function _mostRecentlyEditedLayer(\r\n layerOrTableList: any[]\r\n): any {\r\n let mostRecentlyEdited = 0;\r\n layerOrTableList.forEach(\r\n (layer) => {\r\n mostRecentlyEdited =\r\n layer.editingInfo?.lastEditDate ?\r\n Math.max(mostRecentlyEdited, layer.editingInfo.lastEditDate) :\r\n mostRecentlyEdited;\r\n }\r\n );\r\n return mostRecentlyEdited;\r\n}\r\n\r\n//#endregion\r\n"],"names":["common"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /* @preserve
2
- * @esri/solution-feature-layer - v1.3.5 - Apache-2.0
2
+ * @esri/solution-feature-layer - v1.3.11 - Apache-2.0
3
3
  * Copyright (c) 2018-2022 Esri, Inc.
4
- * Fri Mar 04 2022 21:15:39 GMT-0800 (Pacific Standard Time)
4
+ * Mon Apr 25 2022 11:56:33 GMT-0700 (Pacific Daylight Time)
5
5
  *
6
6
  * Licensed under the Apache License, Version 2.0 (the "License");
7
7
  * you may not use this file except in compliance with the License.
@@ -15,5 +15,5 @@
15
15
  * See the License for the specific language governing permissions and
16
16
  * limitations under the License.
17
17
  */
18
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@esri/solution-common")):"function"==typeof define&&define.amd?define(["exports","@esri/solution-common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisSolution=e.arcgisSolution||{},e.arcgisSolution)}(this,(function(e,t){"use strict";function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=r(t);e.convertItemToTemplate=function(e,t,r,s,o){return new Promise(((e,r)=>{const i=n.createInitializedItemTemplate(t);n.hasInvalidGroupDesignations(t.groupDesignations)?n.updateTemplateForInvalidDesignations(i,s).then((t=>e(t)),(e=>r(n.fail(e)))):(i.estimatedDeploymentCostFactor=10,n.getItemDataAsJson(i.item.id,s).then((t=>{i.data=t,n.getServiceLayersAndTables(i,s).then((t=>{n.extractDependencies(t,s).then((r=>{t.dependencies=r.map((e=>e.id)),e(n.templatize(t,r,!1,o))}),(e=>r(n.fail(e))))}),(e=>r(n.fail(e))))})))}))},e.createItemFromTemplate=function(e,t,r,s){return new Promise((o=>{if(!s(e.itemId,n.EItemProgressStatus.Started,0))return s(e.itemId,n.EItemProgressStatus.Ignored,0),void o(n.generateEmptyCreationResponse(e.type));let i=n.cloneObject(e);i=n.replaceInTemplate(i,t),delete i.item.thumbnail;const a=n.cachePopupInfos(i.data);n.createFeatureService(i,r,t).then((m=>{m.success?s(e.itemId,n.EItemProgressStatus.Created,e.estimatedDeploymentCostFactor/2,m.serviceItemId)?(i=n.updateTemplate(i,t,m),n.addFeatureServiceLayersAndTables(i,t,a,r).then((()=>{i=n.updateTemplate(i,t,m),n.updateItemExtended({...i.item,url:void 0},i.data,r,e.item.thumbnail,void 0,t).then((()=>{s(e.itemId,n.EItemProgressStatus.Finished,e.estimatedDeploymentCostFactor/2,m.serviceItemId)?n.getItemBase(i.itemId,r).then((e=>{i.item=e,n.getProp(i,"item.url")&&!i.item.url.endsWith("/")&&(i.item.url+="/"),o({item:i,id:m.serviceItemId,type:i.type,postProcess:n.hasUnresolvedVariables({item:i.item,data:i.data})||n.isWorkforceProject(i)})}),(()=>{s(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>o(n.generateEmptyCreationResponse(e.type))),(()=>o(n.generateEmptyCreationResponse(e.type))))})):(s(e.itemId,n.EItemProgressStatus.Cancelled,0),n.removeItem(m.serviceItemId,r).then((()=>o(n.generateEmptyCreationResponse(e.type))),(()=>o(n.generateEmptyCreationResponse(e.type)))))}),(()=>{s(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>o(n.generateEmptyCreationResponse(e.type))),(()=>o(n.generateEmptyCreationResponse(e.type))))}))}),(()=>{s(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>o(n.generateEmptyCreationResponse(e.type))),(()=>o(n.generateEmptyCreationResponse(e.type))))}))):(s(e.itemId,n.EItemProgressStatus.Cancelled,0),n.removeItem(m.serviceItemId,r).then((()=>o(n.generateEmptyCreationResponse(e.type))),(()=>o(n.generateEmptyCreationResponse(e.type))))):(s(e.itemId,n.EItemProgressStatus.Failed,0),o(n.generateEmptyCreationResponse(e.type)))}),(()=>{s(e.itemId,n.EItemProgressStatus.Failed,0),o(n.generateEmptyCreationResponse(e.type))}))}))},e.postProcess=function(e,t,r,s,o,i,a){return new Promise(((t,r)=>{n.updateItemTemplateFromDictionary(e,i,a).then((e=>{n.isWorkforceProject(s)?(s=n.replaceInTemplate(s,i),n.fineTuneCreatedWorkforceItem(s,a,s.item.url,i).then(t,r)):t(e)}),r)}))},Object.defineProperty(e,"__esModule",{value:!0})}));
18
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@esri/solution-common")):"function"==typeof define&&define.amd?define(["exports","@esri/solution-common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisSolution=e.arcgisSolution||{},e.arcgisSolution)}(this,(function(e,t){"use strict";function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=r(t);function i(e){let t=0;return e.forEach((e=>{t=e.editingInfo?.lastEditDate?Math.max(t,e.editingInfo.lastEditDate):t})),t}e._mostRecentlyEditedLayer=i,e.convertItemToTemplate=function(e,t,r,a,o){return new Promise(((e,r)=>{const s=n.createInitializedItemTemplate(t);n.hasInvalidGroupDesignations(t.groupDesignations)?n.updateTemplateForInvalidDesignations(s,a).then((t=>e(t)),(e=>r(n.fail(e)))):(s.estimatedDeploymentCostFactor=10,n.getItemDataAsJson(s.item.id,a).then((t=>{s.data=t,n.getServiceLayersAndTables(s,a).then((t=>{t.item.modified=Math.max(t.item.modified,i(s.properties.layers),i(s.properties.tables)),n.extractDependencies(t,a).then((r=>{t.dependencies=r.map((e=>e.id)),e(n.templatize(t,r,!1,o))}),(e=>r(n.fail(e))))}),(e=>r(n.fail(e))))})))}))},e.createItemFromTemplate=function(e,t,r,i){return new Promise((a=>{if(!i(e.itemId,n.EItemProgressStatus.Started,0))return i(e.itemId,n.EItemProgressStatus.Ignored,0),void a(n.generateEmptyCreationResponse(e.type));let o=n.cloneObject(e);o=n.replaceInTemplate(o,t),delete o.item.thumbnail;const s=n.cachePopupInfos(o.data);n.createFeatureService(o,r,t).then((m=>{m.success?i(e.itemId,n.EItemProgressStatus.Created,e.estimatedDeploymentCostFactor/2,m.serviceItemId)?(o=n.updateTemplate(o,t,m),n.addFeatureServiceLayersAndTables(o,t,s,r).then((()=>{o=n.updateTemplate(o,t,m),n.updateItemExtended({...o.item,url:void 0},o.data,r,e.item.thumbnail,void 0,t).then((()=>{i(e.itemId,n.EItemProgressStatus.Finished,e.estimatedDeploymentCostFactor/2,m.serviceItemId)?n.getItemBase(o.itemId,r).then((e=>{o.item=e,n.getProp(o,"item.url")&&!o.item.url.endsWith("/")&&(o.item.url+="/"),a({item:o,id:m.serviceItemId,type:o.type,postProcess:n.hasUnresolvedVariables({item:o.item,data:o.data})||n.isWorkforceProject(o)})}),(()=>{i(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>a(n.generateEmptyCreationResponse(e.type))),(()=>a(n.generateEmptyCreationResponse(e.type))))})):(i(e.itemId,n.EItemProgressStatus.Cancelled,0),n.removeItem(m.serviceItemId,r).then((()=>a(n.generateEmptyCreationResponse(e.type))),(()=>a(n.generateEmptyCreationResponse(e.type)))))}),(()=>{i(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>a(n.generateEmptyCreationResponse(e.type))),(()=>a(n.generateEmptyCreationResponse(e.type))))}))}),(()=>{i(e.itemId,n.EItemProgressStatus.Failed,0),n.removeItem(m.serviceItemId,r).then((()=>a(n.generateEmptyCreationResponse(e.type))),(()=>a(n.generateEmptyCreationResponse(e.type))))}))):(i(e.itemId,n.EItemProgressStatus.Cancelled,0),n.removeItem(m.serviceItemId,r).then((()=>a(n.generateEmptyCreationResponse(e.type))),(()=>a(n.generateEmptyCreationResponse(e.type))))):(i(e.itemId,n.EItemProgressStatus.Failed,0),a(n.generateEmptyCreationResponse(e.type)))}),(()=>{i(e.itemId,n.EItemProgressStatus.Failed,0),a(n.generateEmptyCreationResponse(e.type))}))}))},e.postProcess=function(e,t,r,i,a,o,s){return new Promise(((t,r)=>{n.updateItemTemplateFromDictionary(e,o,s).then((e=>{n.isWorkforceProject(i)?(i=n.replaceInTemplate(i,o),n.fineTuneCreatedWorkforceItem(i,s,i.item.url,o).then(t,r)):t(e)}),r)}))},Object.defineProperty(e,"__esModule",{value:!0})}));
19
19
  //# sourceMappingURL=feature-layer.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature-layer.umd.min.js","sources":["../../src/feature-layer.ts"],"sourcesContent":["/** @license\r\n * Copyright 2018 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/**\r\n * Manages the creation and deployment of feature layers and services.\r\n *\r\n * @module feature-layer\r\n */\r\n\r\n//#region Imports ----------------------------------------------------------------------------------------------//\r\n\r\nimport * as common from \"@esri/solution-common\";\r\n\r\n//#endregion\r\n\r\n//#region Publish Process --------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Fills in missing data, including full layer and table definitions, in a feature services' definition.\r\n *\r\n * @param solutionItemId\r\n * @param itemInfo Feature service item\r\n * @param destAuthentication Credentials for requests to the destination organization\r\n * @param srcAuthentication Credentials for requests to source items\r\n * @param templateDictionary Hash mapping property names to replacement values\r\n * @return A promise that will resolve when fullItem has been updated\r\n */\r\nexport function convertItemToTemplate(\r\n solutionItemId: string,\r\n itemInfo: any,\r\n destAuthentication: common.UserSession,\r\n srcAuthentication: common.UserSession,\r\n templateDictionary?: any\r\n): Promise<common.IItemTemplate> {\r\n return new Promise<common.IItemTemplate>((resolve, reject) => {\r\n // Init template\r\n const template: common.IItemTemplate = common.createInitializedItemTemplate(\r\n itemInfo\r\n );\r\n\r\n const hasInvalidDesignations: boolean = common.hasInvalidGroupDesignations(\r\n itemInfo.groupDesignations\r\n );\r\n if (hasInvalidDesignations) {\r\n common\r\n .updateTemplateForInvalidDesignations(template, srcAuthentication)\r\n .then(\r\n _template => resolve(_template),\r\n e => reject(common.fail(e))\r\n );\r\n } else {\r\n // Update the estimated cost factor to deploy this item\r\n template.estimatedDeploymentCostFactor = 10;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {\r\n template.data = data;\r\n common.getServiceLayersAndTables(template, srcAuthentication).then(\r\n itemTemplate => {\r\n // Extract dependencies\r\n common.extractDependencies(itemTemplate, srcAuthentication).then(\r\n (dependencies: common.IDependency[]) => {\r\n // set the dependencies as an array of IDs from the array of IDependency\r\n itemTemplate.dependencies = dependencies.map(\r\n (dep: any) => dep.id\r\n );\r\n\r\n // resolve the template with templatized values\r\n resolve(\r\n common.templatize(\r\n itemTemplate,\r\n dependencies,\r\n false,\r\n templateDictionary\r\n )\r\n );\r\n },\r\n (e: any) => reject(common.fail(e))\r\n );\r\n },\r\n e => reject(common.fail(e))\r\n );\r\n });\r\n }\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Deploy Process ---------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Creates an item in a specified folder (except for Group item type).\r\n *\r\n * @param itemTemplate Item to be created; n.b.: this item is modified\r\n * @param folderId Id of folder to receive item; null indicates that the item goes into the root\r\n * folder; ignored for Group item type\r\n * @param settings Hash mapping property names to replacement values\r\n * @param authentication Credentials for the request\r\n * @return A promise that will resolve with the id of the created item\r\n * @protected\r\n */\r\nexport function createItemFromTemplate(\r\n template: common.IItemTemplate,\r\n templateDictionary: any,\r\n destinationAuthentication: common.UserSession,\r\n itemProgressCallback: common.IItemProgressCallback\r\n): Promise<common.ICreateItemFromTemplateResponse> {\r\n return new Promise<common.ICreateItemFromTemplateResponse>(resolve => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Started,\r\n 0\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Ignored,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type));\r\n return;\r\n }\r\n\r\n // Replace the templatized symbols in a copy of the template\r\n let newItemTemplate: common.IItemTemplate = common.cloneObject(template);\r\n newItemTemplate = common.replaceInTemplate(\r\n newItemTemplate,\r\n templateDictionary\r\n );\r\n\r\n // Thumbnail has to be updated separately; doesn't work in create service call\r\n delete newItemTemplate.item.thumbnail;\r\n\r\n // cache the popup info to be added later\r\n const popupInfos: common.IPopupInfos = common.cachePopupInfos(\r\n newItemTemplate.data\r\n );\r\n\r\n // Create the item, then update its URL with its new id\r\n common\r\n .createFeatureService(\r\n newItemTemplate,\r\n destinationAuthentication,\r\n templateDictionary\r\n )\r\n .then(\r\n createResponse => {\r\n if (createResponse.success) {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Created,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(common.generateEmptyCreationResponse(template.type))\r\n );\r\n } else {\r\n // Detemplatize what we can now that the service has been created\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Add the layers and tables to the feature service\r\n common\r\n .addFeatureServiceLayersAndTables(\r\n newItemTemplate,\r\n templateDictionary,\r\n popupInfos,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () => {\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Update the item with snippet, description, popupInfo, etc.\r\n common\r\n .updateItemExtended(\r\n {\r\n ...newItemTemplate.item,\r\n url: undefined // can't update the URL of a feature service\r\n },\r\n newItemTemplate.data,\r\n destinationAuthentication,\r\n template.item.thumbnail,\r\n undefined,\r\n templateDictionary\r\n )\r\n .then(\r\n () => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Finished,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } else {\r\n // Update the template to match what we've stored in AGO\r\n common\r\n .getItemBase(\r\n newItemTemplate.itemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n updatedItem => {\r\n newItemTemplate.item = updatedItem;\r\n /* istanbul ignore else */\r\n if (\r\n common.getProp(\r\n newItemTemplate,\r\n \"item.url\"\r\n ) &&\r\n !newItemTemplate.item.url.endsWith(\"/\")\r\n ) {\r\n newItemTemplate.item.url += \"/\";\r\n }\r\n\r\n resolve({\r\n item: newItemTemplate,\r\n id: createResponse.serviceItemId,\r\n type: newItemTemplate.type,\r\n postProcess:\r\n common.hasUnresolvedVariables({\r\n item: newItemTemplate.item,\r\n data: newItemTemplate.data\r\n }) ||\r\n common.isWorkforceProject(newItemTemplate)\r\n });\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n )\r\n );\r\n } // fails to add service layers and/or tables\r\n );\r\n }\r\n } else {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n );\r\n });\r\n}\r\n\r\n/**\r\n * Feature Layer post-processing actions\r\n *\r\n * @param {string} itemId The item ID\r\n * @param {string} type The template type\r\n * @param {any[]} itemInfos Array of {id: 'ef3', type: 'Web Map'} objects\r\n * @param {any} templateDictionary The template dictionary\r\n * @param {UserSession} authentication The destination session info\r\n * @returns Promise resolving to successfulness of update\r\n */\r\nexport function postProcess(\r\n itemId: string,\r\n type: string,\r\n itemInfos: any[],\r\n template: common.IItemTemplate,\r\n templates: common.IItemTemplate[],\r\n templateDictionary: any,\r\n authentication: common.UserSession\r\n): Promise<common.IUpdateItemResponse> {\r\n return new Promise<common.IUpdateItemResponse>((resolve, reject) => {\r\n common\r\n .updateItemTemplateFromDictionary(\r\n itemId,\r\n templateDictionary,\r\n authentication\r\n )\r\n .then(results => {\r\n if (common.isWorkforceProject(template)) {\r\n template = common.replaceInTemplate(template, templateDictionary);\r\n common\r\n .fineTuneCreatedWorkforceItem(\r\n template,\r\n authentication,\r\n template.item.url,\r\n templateDictionary\r\n )\r\n .then(resolve, reject);\r\n } else {\r\n resolve(results);\r\n }\r\n }, reject);\r\n });\r\n}\r\n\r\n//#endregion\r\n"],"names":["solutionItemId","itemInfo","destAuthentication","srcAuthentication","templateDictionary","Promise","resolve","reject","template","common","createInitializedItemTemplate","hasInvalidGroupDesignations","groupDesignations","updateTemplateForInvalidDesignations","then","_template","e","fail","estimatedDeploymentCostFactor","getItemDataAsJson","item","id","data","getServiceLayersAndTables","itemTemplate","extractDependencies","dependencies","map","dep","templatize","destinationAuthentication","itemProgressCallback","itemId","EItemProgressStatus","Started","Ignored","generateEmptyCreationResponse","type","newItemTemplate","cloneObject","replaceInTemplate","thumbnail","popupInfos","cachePopupInfos","createFeatureService","createResponse","success","Created","serviceItemId","updateTemplate","addFeatureServiceLayersAndTables","updateItemExtended","url","undefined","Finished","getItemBase","updatedItem","getProp","endsWith","postProcess","hasUnresolvedVariables","isWorkforceProject","Failed","removeItem","Cancelled","itemInfos","templates","authentication","updateItemTemplateFromDictionary","results","fineTuneCreatedWorkforceItem"],"mappings":"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"}
1
+ {"version":3,"file":"feature-layer.umd.min.js","sources":["../../src/feature-layer.ts"],"sourcesContent":["/** @license\r\n * Copyright 2018 Esri\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/**\r\n * Manages the creation and deployment of feature layers and services.\r\n *\r\n * @module feature-layer\r\n */\r\n\r\n//#region Imports ----------------------------------------------------------------------------------------------//\r\n\r\nimport * as common from \"@esri/solution-common\";\r\n\r\n//#endregion\r\n\r\n//#region Publish Process --------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Fills in missing data, including full layer and table definitions, in a feature services' definition.\r\n *\r\n * @param solutionItemId\r\n * @param itemInfo Feature service item\r\n * @param destAuthentication Credentials for requests to the destination organization\r\n * @param srcAuthentication Credentials for requests to source items\r\n * @param templateDictionary Hash mapping property names to replacement values\r\n * @returns A promise that will resolve when fullItem has been updated\r\n */\r\nexport function convertItemToTemplate(\r\n solutionItemId: string,\r\n itemInfo: any,\r\n destAuthentication: common.UserSession,\r\n srcAuthentication: common.UserSession,\r\n templateDictionary?: any\r\n): Promise<common.IItemTemplate> {\r\n return new Promise<common.IItemTemplate>((resolve, reject) => {\r\n // Init template\r\n const template: common.IItemTemplate = common.createInitializedItemTemplate(\r\n itemInfo\r\n );\r\n\r\n const hasInvalidDesignations: boolean = common.hasInvalidGroupDesignations(\r\n itemInfo.groupDesignations\r\n );\r\n if (hasInvalidDesignations) {\r\n common\r\n .updateTemplateForInvalidDesignations(template, srcAuthentication)\r\n .then(\r\n _template => resolve(_template),\r\n e => reject(common.fail(e))\r\n );\r\n } else {\r\n // Update the estimated cost factor to deploy this item\r\n template.estimatedDeploymentCostFactor = 10;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n common.getItemDataAsJson(template.item.id, srcAuthentication).then(data => {\r\n template.data = data;\r\n common.getServiceLayersAndTables(template, srcAuthentication).then(\r\n itemTemplate => {\r\n // Update item's modified date to the latest of its modified date and the last edit date\r\n // of each of its layers or tables\r\n itemTemplate.item.modified =\r\n Math.max(itemTemplate.item.modified,\r\n _mostRecentlyEditedLayer(template.properties.layers),\r\n _mostRecentlyEditedLayer(template.properties.tables)\r\n );\r\n\r\n // Extract dependencies\r\n common.extractDependencies(itemTemplate, srcAuthentication).then(\r\n (dependencies: common.IDependency[]) => {\r\n // set the dependencies as an array of IDs from the array of IDependency\r\n itemTemplate.dependencies = dependencies.map(\r\n (dep: any) => dep.id\r\n );\r\n\r\n // resolve the template with templatized values\r\n resolve(\r\n common.templatize(\r\n itemTemplate,\r\n dependencies,\r\n false,\r\n templateDictionary\r\n )\r\n );\r\n },\r\n (e: any) => reject(common.fail(e))\r\n );\r\n },\r\n e => reject(common.fail(e))\r\n );\r\n });\r\n }\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Deploy Process ---------------------------------------------------------------------------------------//\r\n\r\n/**\r\n * Creates an item in a specified folder (except for Group item type).\r\n *\r\n * @param itemTemplate Item to be created; n.b.: this item is modified\r\n * @param folderId Id of folder to receive item; null indicates that the item goes into the root\r\n * folder; ignored for Group item type\r\n * @param settings Hash mapping property names to replacement values\r\n * @param authentication Credentials for the request\r\n * @returns A promise that will resolve with the id of the created item\r\n * @private\r\n */\r\nexport function createItemFromTemplate(\r\n template: common.IItemTemplate,\r\n templateDictionary: any,\r\n destinationAuthentication: common.UserSession,\r\n itemProgressCallback: common.IItemProgressCallback\r\n): Promise<common.ICreateItemFromTemplateResponse> {\r\n return new Promise<common.ICreateItemFromTemplateResponse>(resolve => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Started,\r\n 0\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Ignored,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type));\r\n return;\r\n }\r\n\r\n // Replace the templatized symbols in a copy of the template\r\n let newItemTemplate: common.IItemTemplate = common.cloneObject(template);\r\n newItemTemplate = common.replaceInTemplate(\r\n newItemTemplate,\r\n templateDictionary\r\n );\r\n\r\n // Thumbnail has to be updated separately; doesn't work in create service call\r\n delete newItemTemplate.item.thumbnail;\r\n\r\n // cache the popup info to be added later\r\n const popupInfos: common.IPopupInfos = common.cachePopupInfos(\r\n newItemTemplate.data\r\n );\r\n\r\n // Create the item, then update its URL with its new id\r\n common\r\n .createFeatureService(\r\n newItemTemplate,\r\n destinationAuthentication,\r\n templateDictionary\r\n )\r\n .then(\r\n createResponse => {\r\n if (createResponse.success) {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Created,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(common.generateEmptyCreationResponse(template.type))\r\n );\r\n } else {\r\n // Detemplatize what we can now that the service has been created\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Add the layers and tables to the feature service\r\n common\r\n .addFeatureServiceLayersAndTables(\r\n newItemTemplate,\r\n templateDictionary,\r\n popupInfos,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () => {\r\n newItemTemplate = common.updateTemplate(\r\n newItemTemplate,\r\n templateDictionary,\r\n createResponse\r\n );\r\n // Update the item with snippet, description, popupInfo, etc.\r\n common\r\n .updateItemExtended(\r\n {\r\n ...newItemTemplate.item,\r\n url: undefined // can't update the URL of a feature service\r\n },\r\n newItemTemplate.data,\r\n destinationAuthentication,\r\n template.item.thumbnail,\r\n undefined,\r\n templateDictionary\r\n )\r\n .then(\r\n () => {\r\n // Interrupt process if progress callback returns `false`\r\n if (\r\n !itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Finished,\r\n template.estimatedDeploymentCostFactor / 2,\r\n createResponse.serviceItemId\r\n )\r\n ) {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Cancelled,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } else {\r\n // Update the template to match what we've stored in AGO\r\n common\r\n .getItemBase(\r\n newItemTemplate.itemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n updatedItem => {\r\n newItemTemplate.item = updatedItem;\r\n /* istanbul ignore else */\r\n if (\r\n common.getProp(\r\n newItemTemplate,\r\n \"item.url\"\r\n ) &&\r\n !newItemTemplate.item.url.endsWith(\"/\")\r\n ) {\r\n newItemTemplate.item.url += \"/\";\r\n }\r\n\r\n resolve({\r\n item: newItemTemplate,\r\n id: createResponse.serviceItemId,\r\n type: newItemTemplate.type,\r\n postProcess:\r\n common.hasUnresolvedVariables({\r\n item: newItemTemplate.item,\r\n data: newItemTemplate.data\r\n }) ||\r\n common.isWorkforceProject(newItemTemplate)\r\n });\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(\r\n template.type\r\n )\r\n )\r\n );\r\n } // fails to update item\r\n );\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n common\r\n .removeItem(\r\n createResponse.serviceItemId,\r\n destinationAuthentication\r\n )\r\n .then(\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n ),\r\n () =>\r\n resolve(\r\n common.generateEmptyCreationResponse(template.type)\r\n )\r\n );\r\n } // fails to add service layers and/or tables\r\n );\r\n }\r\n } else {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n },\r\n () => {\r\n itemProgressCallback(\r\n template.itemId,\r\n common.EItemProgressStatus.Failed,\r\n 0\r\n );\r\n resolve(common.generateEmptyCreationResponse(template.type)); // fails to create item\r\n }\r\n );\r\n });\r\n}\r\n\r\n/**\r\n * Feature Layer post-processing actions\r\n *\r\n * @param {string} itemId The item ID\r\n * @param {string} type The template type\r\n * @param {any[]} itemInfos Array of {id: 'ef3', type: 'Web Map'} objects\r\n * @param {any} templateDictionary The template dictionary\r\n * @param {UserSession} authentication The destination session info\r\n * @returns Promise resolving to successfulness of update\r\n */\r\nexport function postProcess(\r\n itemId: string,\r\n type: string,\r\n itemInfos: any[],\r\n template: common.IItemTemplate,\r\n templates: common.IItemTemplate[],\r\n templateDictionary: any,\r\n authentication: common.UserSession\r\n): Promise<common.IUpdateItemResponse> {\r\n return new Promise<common.IUpdateItemResponse>((resolve, reject) => {\r\n common\r\n .updateItemTemplateFromDictionary(\r\n itemId,\r\n templateDictionary,\r\n authentication\r\n )\r\n .then(results => {\r\n if (common.isWorkforceProject(template)) {\r\n template = common.replaceInTemplate(template, templateDictionary);\r\n common\r\n .fineTuneCreatedWorkforceItem(\r\n template,\r\n authentication,\r\n template.item.url,\r\n templateDictionary\r\n )\r\n .then(resolve, reject);\r\n } else {\r\n resolve(results);\r\n }\r\n }, reject);\r\n });\r\n}\r\n\r\n//#endregion\r\n\r\n//#region Internal functions -----------------------------------------------------------------------------------------//\r\n\r\n//???\r\nexport function _mostRecentlyEditedLayer(\r\n layerOrTableList: any[]\r\n): any {\r\n let mostRecentlyEdited = 0;\r\n layerOrTableList.forEach(\r\n (layer) => {\r\n mostRecentlyEdited =\r\n layer.editingInfo?.lastEditDate ?\r\n Math.max(mostRecentlyEdited, layer.editingInfo.lastEditDate) :\r\n mostRecentlyEdited;\r\n }\r\n );\r\n return mostRecentlyEdited;\r\n}\r\n\r\n//#endregion\r\n"],"names":["_mostRecentlyEditedLayer","layerOrTableList","mostRecentlyEdited","forEach","layer","editingInfo","lastEditDate","Math","max","solutionItemId","itemInfo","destAuthentication","srcAuthentication","templateDictionary","Promise","resolve","reject","template","common","createInitializedItemTemplate","hasInvalidGroupDesignations","groupDesignations","updateTemplateForInvalidDesignations","then","_template","e","fail","estimatedDeploymentCostFactor","getItemDataAsJson","item","id","data","getServiceLayersAndTables","itemTemplate","modified","properties","layers","tables","extractDependencies","dependencies","map","dep","templatize","destinationAuthentication","itemProgressCallback","itemId","EItemProgressStatus","Started","Ignored","generateEmptyCreationResponse","type","newItemTemplate","cloneObject","replaceInTemplate","thumbnail","popupInfos","cachePopupInfos","createFeatureService","createResponse","success","Created","serviceItemId","updateTemplate","addFeatureServiceLayersAndTables","updateItemExtended","url","undefined","Finished","getItemBase","updatedItem","getProp","endsWith","postProcess","hasUnresolvedVariables","isWorkforceProject","Failed","removeItem","Cancelled","itemInfos","templates","authentication","updateItemTemplateFromDictionary","results","fineTuneCreatedWorkforceItem"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/solution-feature-layer",
3
- "version": "1.3.5",
3
+ "version": "1.3.11",
4
4
  "description": "Manages the creation and deployment of feature layers and services for @esri/solution.js.",
5
5
  "main": "dist/node/index.js",
6
6
  "unpkg": "dist/umd/feature-layer.umd.min.js",
@@ -18,11 +18,11 @@
18
18
  "@esri/arcgis-rest-portal": "3.4.3",
19
19
  "@esri/arcgis-rest-request": "3.4.3",
20
20
  "@esri/arcgis-rest-service-admin": "3.4.3",
21
- "@esri/hub-common": "9.15.0",
22
- "@esri/hub-initiatives": "9.15.0",
23
- "@esri/hub-sites": "9.15.0",
24
- "@esri/hub-teams": "9.15.0",
25
- "rollup": "^2.60.0"
21
+ "@esri/hub-common": "9.29.0",
22
+ "@esri/hub-initiatives": "9.29.0",
23
+ "@esri/hub-sites": "9.29.0",
24
+ "@esri/hub-teams": "9.29.0",
25
+ "rollup": "2.70.2"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "@esri/arcgis-rest-auth": "3.4.3",
@@ -30,14 +30,14 @@
30
30
  "@esri/arcgis-rest-portal": "3.4.3",
31
31
  "@esri/arcgis-rest-request": "3.4.3",
32
32
  "@esri/arcgis-rest-service-admin": "3.4.3",
33
- "@esri/hub-common": "9.15.0",
34
- "@esri/hub-initiatives": "9.15.0",
35
- "@esri/hub-sites": "9.15.0",
36
- "@esri/hub-teams": "9.15.0"
33
+ "@esri/hub-common": "9.29.0",
34
+ "@esri/hub-initiatives": "9.29.0",
35
+ "@esri/hub-sites": "9.29.0",
36
+ "@esri/hub-teams": "9.29.0"
37
37
  },
38
38
  "dependencies": {
39
- "@esri/solution-common": "^1.3.5",
40
- "tslib": "1.13.0"
39
+ "@esri/solution-common": "^1.3.11",
40
+ "tslib": "1.14.1"
41
41
  },
42
42
  "scripts": {
43
43
  "prepare": "npm run build",
@@ -47,7 +47,8 @@
47
47
  "build:node": "tsc -p ./tsconfig.json --module commonjs --outDir ./dist/node",
48
48
  "dev:esm": "tsc -w --module esnext --outDir ./dist/esm --declaration",
49
49
  "dev:umd": "rollup -w -c ../../umd-base-profile.js",
50
- "dev:node": "tsc -w --module commonjs --outDir ./dist/node"
50
+ "dev:node": "tsc -w --module commonjs --outDir ./dist/node",
51
+ "getupdates": "npm-check-updates --upgrade"
51
52
  },
52
53
  "publishConfig": {
53
54
  "access": "public"
@@ -89,5 +90,5 @@
89
90
  "esri",
90
91
  "ES6"
91
92
  ],
92
- "gitHead": "9f2f2c69043777abd94120acad0b7c45d172301d"
93
+ "gitHead": "eb2ce85aa37bd71c0961df7b7bd89d461cf9b697"
93
94
  }