@esri/solutions-components 0.8.24 → 0.8.26

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 (193) hide show
  1. package/dist/cjs/basemap-gallery_7.cjs.entry.js +6 -6
  2. package/dist/cjs/buffer-tools_3.cjs.entry.js +1 -1
  3. package/dist/cjs/calcite-alert_4.cjs.entry.js +6 -6
  4. package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +1 -1
  5. package/dist/cjs/calcite-flow_6.cjs.entry.js +108 -65
  6. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +7 -7
  7. package/dist/cjs/card-manager_3.cjs.entry.js +2 -2
  8. package/dist/cjs/crowdsource-manager.cjs.entry.js +1 -1
  9. package/dist/cjs/crowdsource-reporter.cjs.entry.js +4 -4
  10. package/dist/cjs/deduct-calculator.cjs.entry.js +1 -1
  11. package/dist/cjs/feature-comments.cjs.entry.js +1 -1
  12. package/dist/cjs/feature-form-flow-item.cjs.entry.js +1 -1
  13. package/dist/cjs/feature-list.cjs.entry.js +4 -4
  14. package/dist/cjs/features-flow-item.cjs.entry.js +1 -1
  15. package/dist/cjs/layout-manager.cjs.entry.js +1 -1
  16. package/dist/cjs/list-flow-item.cjs.entry.js +1 -1
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/cjs/location-flow-item.cjs.entry.js +1 -1
  19. package/dist/cjs/map-select-tools_3.cjs.entry.js +3 -3
  20. package/dist/cjs/pci-calculator.cjs.entry.js +1 -1
  21. package/dist/cjs/public-notification.cjs.entry.js +1 -1
  22. package/dist/cjs/refine-results-flow-item.cjs.entry.js +1 -1
  23. package/dist/cjs/share-item.cjs.entry.js +1 -1
  24. package/dist/cjs/solution-configuration.cjs.entry.js +3 -3
  25. package/dist/cjs/solution-contents_3.cjs.entry.js +3 -3
  26. package/dist/cjs/solution-item-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/solutions-components.cjs.js +1 -1
  28. package/dist/cjs/spatial-ref.cjs.entry.js +1 -1
  29. package/dist/collection/components/create-feature/create-feature.js +90 -51
  30. package/dist/collection/components/create-related-feature/create-related-feature.js +9 -2
  31. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +1 -1
  32. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +4 -4
  33. package/dist/collection/components/deduct-calculator/deduct-calculator.js +1 -1
  34. package/dist/collection/components/delete-button/delete-button.css +4 -0
  35. package/dist/collection/components/delete-button/delete-button.js +2 -2
  36. package/dist/collection/components/edit-card/edit-card.js +1 -1
  37. package/dist/collection/components/feature-comments/feature-comments.js +1 -1
  38. package/dist/collection/components/feature-details/feature-details.css +4 -4
  39. package/dist/collection/components/feature-details/feature-details.js +12 -11
  40. package/dist/collection/components/feature-form-flow-item/feature-form-flow-item.js +1 -1
  41. package/dist/collection/components/feature-list/feature-list.css +2 -0
  42. package/dist/collection/components/feature-list/feature-list.js +3 -3
  43. package/dist/collection/components/features-flow-item/features-flow-item.js +1 -1
  44. package/dist/collection/components/floor-filter/floor-filter.js +1 -1
  45. package/dist/collection/components/info-card/info-card.js +2 -2
  46. package/dist/collection/components/json-editor/json-editor.js +1 -1
  47. package/dist/collection/components/layer-table/layer-table.js +1 -1
  48. package/dist/collection/components/layout-manager/layout-manager.js +1 -1
  49. package/dist/collection/components/list-flow-item/list-flow-item.js +1 -1
  50. package/dist/collection/components/location-flow-item/location-flow-item.js +1 -1
  51. package/dist/collection/components/map-card/map-card.js +1 -1
  52. package/dist/collection/components/map-draw-tools/map-draw-tools.js +1 -1
  53. package/dist/collection/components/map-fullscreen/map-fullscreen.js +1 -1
  54. package/dist/collection/components/map-layer-picker/map-layer-picker.js +1 -1
  55. package/dist/collection/components/map-legend/map-legend.js +1 -1
  56. package/dist/collection/components/map-picker/map-picker.js +1 -1
  57. package/dist/collection/components/map-search/map-search.js +1 -1
  58. package/dist/collection/components/map-select-tools/map-select-tools.js +1 -1
  59. package/dist/collection/components/map-tools/map-tools.js +1 -1
  60. package/dist/collection/components/pci-calculator/pci-calculator.js +1 -1
  61. package/dist/collection/components/pdf-download/pdf-download.js +1 -1
  62. package/dist/collection/components/public-notification/public-notification.js +1 -1
  63. package/dist/collection/components/refine-results-flow-item/refine-results-flow-item.js +1 -1
  64. package/dist/collection/components/refine-selection/refine-selection.js +1 -1
  65. package/dist/collection/components/share-item/share-item.js +1 -1
  66. package/dist/collection/components/solution-configuration/solution-configuration.js +3 -3
  67. package/dist/collection/components/solution-contents/solution-contents.js +1 -1
  68. package/dist/collection/components/solution-item/solution-item.js +1 -1
  69. package/dist/collection/components/solution-item-details/solution-item-details.js +1 -1
  70. package/dist/collection/components/solution-item-icon/solution-item-icon.js +1 -1
  71. package/dist/collection/components/solution-item-sharing/solution-item-sharing.js +1 -1
  72. package/dist/collection/components/solution-organization-variables/solution-organization-variables.js +1 -1
  73. package/dist/collection/components/solution-resource-item/solution-resource-item.js +1 -1
  74. package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +1 -1
  75. package/dist/collection/components/solution-template-data/solution-template-data.js +1 -1
  76. package/dist/collection/components/solution-variables/solution-variables.js +1 -1
  77. package/dist/collection/components/spatial-ref/spatial-ref.js +1 -1
  78. package/dist/components/create-feature2.js +98 -54
  79. package/dist/components/create-related-feature2.js +9 -2
  80. package/dist/components/crowdsource-manager.js +1 -1
  81. package/dist/components/crowdsource-reporter.js +4 -4
  82. package/dist/components/deduct-calculator2.js +1 -1
  83. package/dist/components/delete-button2.js +3 -3
  84. package/dist/components/edit-card2.js +1 -1
  85. package/dist/components/feature-comments.js +1 -1
  86. package/dist/components/feature-details2.js +12 -11
  87. package/dist/components/feature-form-flow-item.js +1 -1
  88. package/dist/components/feature-list2.js +4 -4
  89. package/dist/components/features-flow-item.js +1 -1
  90. package/dist/components/floor-filter2.js +1 -1
  91. package/dist/components/info-card2.js +2 -2
  92. package/dist/components/json-editor2.js +1 -1
  93. package/dist/components/layer-table2.js +1 -1
  94. package/dist/components/layout-manager.js +1 -1
  95. package/dist/components/list-flow-item.js +1 -1
  96. package/dist/components/location-flow-item.js +1 -1
  97. package/dist/components/map-card2.js +1 -1
  98. package/dist/components/map-draw-tools2.js +1 -1
  99. package/dist/components/map-fullscreen2.js +1 -1
  100. package/dist/components/map-layer-picker2.js +1 -1
  101. package/dist/components/map-legend2.js +1 -1
  102. package/dist/components/map-picker2.js +1 -1
  103. package/dist/components/map-search2.js +1 -1
  104. package/dist/components/map-select-tools2.js +1 -1
  105. package/dist/components/map-tools2.js +1 -1
  106. package/dist/components/pci-calculator.js +1 -1
  107. package/dist/components/pdf-download2.js +1 -1
  108. package/dist/components/public-notification.js +1 -1
  109. package/dist/components/refine-results-flow-item.js +1 -1
  110. package/dist/components/refine-selection2.js +1 -1
  111. package/dist/components/share-item.js +1 -1
  112. package/dist/components/solution-configuration.js +3 -3
  113. package/dist/components/solution-contents2.js +1 -1
  114. package/dist/components/solution-item-details2.js +1 -1
  115. package/dist/components/solution-item-icon2.js +1 -1
  116. package/dist/components/solution-item-sharing2.js +1 -1
  117. package/dist/components/solution-item2.js +1 -1
  118. package/dist/components/solution-organization-variables2.js +1 -1
  119. package/dist/components/solution-resource-item2.js +1 -1
  120. package/dist/components/solution-spatial-ref2.js +1 -1
  121. package/dist/components/solution-template-data2.js +1 -1
  122. package/dist/components/solution-variables2.js +1 -1
  123. package/dist/components/spatial-ref2.js +1 -1
  124. package/dist/esm/basemap-gallery_7.entry.js +6 -6
  125. package/dist/esm/buffer-tools_3.entry.js +1 -1
  126. package/dist/esm/calcite-alert_4.entry.js +6 -6
  127. package/dist/esm/calcite-dropdown-group_2.entry.js +1 -1
  128. package/dist/esm/calcite-flow_6.entry.js +108 -65
  129. package/dist/esm/calcite-shell-panel_14.entry.js +7 -7
  130. package/dist/esm/card-manager_3.entry.js +2 -2
  131. package/dist/esm/crowdsource-manager.entry.js +1 -1
  132. package/dist/esm/crowdsource-reporter.entry.js +4 -4
  133. package/dist/esm/deduct-calculator.entry.js +1 -1
  134. package/dist/esm/feature-comments.entry.js +1 -1
  135. package/dist/esm/feature-form-flow-item.entry.js +1 -1
  136. package/dist/esm/feature-list.entry.js +4 -4
  137. package/dist/esm/features-flow-item.entry.js +1 -1
  138. package/dist/esm/layout-manager.entry.js +1 -1
  139. package/dist/esm/list-flow-item.entry.js +1 -1
  140. package/dist/esm/loader.js +1 -1
  141. package/dist/esm/location-flow-item.entry.js +1 -1
  142. package/dist/esm/map-select-tools_3.entry.js +3 -3
  143. package/dist/esm/pci-calculator.entry.js +1 -1
  144. package/dist/esm/public-notification.entry.js +1 -1
  145. package/dist/esm/refine-results-flow-item.entry.js +1 -1
  146. package/dist/esm/share-item.entry.js +1 -1
  147. package/dist/esm/solution-configuration.entry.js +3 -3
  148. package/dist/esm/solution-contents_3.entry.js +3 -3
  149. package/dist/esm/solution-item-icon.entry.js +1 -1
  150. package/dist/esm/solutions-components.js +1 -1
  151. package/dist/esm/spatial-ref.entry.js +1 -1
  152. package/dist/solutions-components/{p-2c044250.entry.js → p-053be79f.entry.js} +2 -2
  153. package/dist/solutions-components/{p-1ff9eb95.entry.js → p-05b3a5d9.entry.js} +1 -1
  154. package/dist/solutions-components/p-0d17246a.entry.js +6 -0
  155. package/dist/solutions-components/{p-b3160299.entry.js → p-1e915546.entry.js} +1 -1
  156. package/dist/solutions-components/{p-97e343df.entry.js → p-1f4b174f.entry.js} +1 -1
  157. package/dist/solutions-components/p-27e9ea86.entry.js +6 -0
  158. package/dist/solutions-components/{p-72317f8e.entry.js → p-296375d3.entry.js} +2 -2
  159. package/dist/solutions-components/{p-af4be4ce.entry.js → p-2a6db6e8.entry.js} +1 -1
  160. package/dist/solutions-components/p-4870be89.entry.js +6 -0
  161. package/dist/solutions-components/p-51b5ac05.entry.js +6 -0
  162. package/dist/solutions-components/{p-1251dcc6.entry.js → p-66722851.entry.js} +1 -1
  163. package/dist/solutions-components/{p-f35cc7ae.entry.js → p-81747268.entry.js} +1 -1
  164. package/dist/solutions-components/{p-84a5d221.entry.js → p-92eadd14.entry.js} +1 -1
  165. package/dist/solutions-components/{p-fc665a1a.entry.js → p-96c901b4.entry.js} +1 -1
  166. package/dist/solutions-components/p-9cfc59dd.entry.js +6 -0
  167. package/dist/solutions-components/{p-16730f05.entry.js → p-b656b73e.entry.js} +1 -1
  168. package/dist/solutions-components/{p-8c500fd7.entry.js → p-bfdabb9d.entry.js} +1 -1
  169. package/dist/solutions-components/p-c5becad1.entry.js +6 -0
  170. package/dist/solutions-components/{p-102b1f94.entry.js → p-cb20ba34.entry.js} +1 -1
  171. package/dist/solutions-components/p-cd694107.entry.js +17 -0
  172. package/dist/solutions-components/p-e1662e32.entry.js +6 -0
  173. package/dist/solutions-components/p-eda6994e.entry.js +6 -0
  174. package/dist/solutions-components/{p-bf57dbfd.entry.js → p-edcc1f23.entry.js} +1 -1
  175. package/dist/solutions-components/p-f7b791a8.entry.js +6 -0
  176. package/dist/solutions-components/p-fac36b42.entry.js +6 -0
  177. package/dist/solutions-components/{p-33845a79.entry.js → p-fd28754c.entry.js} +1 -1
  178. package/dist/solutions-components/solutions-components.esm.js +1 -1
  179. package/dist/types/components/create-feature/create-feature.d.ts +25 -3
  180. package/dist/types/components/create-related-feature/create-related-feature.d.ts +4 -0
  181. package/dist/types/components/feature-details/feature-details.d.ts +4 -0
  182. package/package.json +1 -1
  183. package/dist/solutions-components/p-28c6906c.entry.js +0 -6
  184. package/dist/solutions-components/p-3470c0f7.entry.js +0 -6
  185. package/dist/solutions-components/p-3fae9775.entry.js +0 -6
  186. package/dist/solutions-components/p-71de367b.entry.js +0 -6
  187. package/dist/solutions-components/p-8a81f3c7.entry.js +0 -6
  188. package/dist/solutions-components/p-aa06f4d1.entry.js +0 -6
  189. package/dist/solutions-components/p-b76b5310.entry.js +0 -6
  190. package/dist/solutions-components/p-c047a6fc.entry.js +0 -6
  191. package/dist/solutions-components/p-cbf0dada.entry.js +0 -17
  192. package/dist/solutions-components/p-e78be59a.entry.js +0 -6
  193. package/dist/solutions-components/p-e9176a44.entry.js +0 -6
@@ -162,7 +162,7 @@ const FloorFilter = class {
162
162
  return this._initModules();
163
163
  }
164
164
  render() {
165
- return (index.h(index.Host, { key: '4b532bae1022d879f46022203a9ffa00c8e615a7' }, index.h("div", { key: 'd75ad603472d2f57ccd52725f1c3ed428bdd8173', ref: (el) => { this._floorFilterElement = el; } })));
165
+ return (index.h(index.Host, { key: '98769446b20d8a9432b571b5653abbc6613bdfe5' }, index.h("div", { key: '6606a2593fec1885fc02b07a168bdea43e7f864a', ref: (el) => { this._floorFilterElement = el; } })));
166
166
  }
167
167
  //--------------------------------------------------------------------------
168
168
  //
@@ -255,7 +255,7 @@ const MapFullscreen = class {
255
255
  * Renders the component.
256
256
  */
257
257
  render() {
258
- return (index.h(index.Host, { key: '5e2b4343c53ff91b50cd7b91aebe76a686802da7' }, index.h("div", { key: '03cb0c8f2766278698b9c3302e9e494b7ba77bc9', class: "fullscreen-widget", ref: (el) => { this._fullscreenElement = el; } })));
258
+ return (index.h(index.Host, { key: '943217d26f3cf5861c165c3300ba24736ce8f7dc' }, index.h("div", { key: '6c76ebf6e63dab19f24d776cd27cd86b74ea93d0', class: "fullscreen-widget", ref: (el) => { this._fullscreenElement = el; } })));
259
259
  }
260
260
  /**
261
261
  * StencilJS: Called just after the component updates.
@@ -361,7 +361,7 @@ const MapLegend = class {
361
361
  * StencilJS: Renders the component.
362
362
  */
363
363
  render() {
364
- return (index.h(index.Host, { key: '3298d8202e384626e065d9fee0900d43dd75e02e' }, index.h("div", { key: 'd5e717c5c14a4db97036d8aba3dbb1c98c659b74', ref: (el) => { this._legendElement = el; } })));
364
+ return (index.h(index.Host, { key: 'bdd3b848bec1aec6f8c7676f8bab5e9463b16064' }, index.h("div", { key: 'd7bb217db6971758ef8774d19d6ac5cfa94a0ddc', ref: (el) => { this._legendElement = el; } })));
365
365
  }
366
366
  /**
367
367
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -479,7 +479,7 @@ const MapPicker = class {
479
479
  * Renders the component.
480
480
  */
481
481
  render() {
482
- return (index.h(index.Host, { key: 'c37af1bef83f65297d520e34730b94bfdbf30066' }, this._getToolbar(), this._getMapNameList(this._mapListExpanded)));
482
+ return (index.h(index.Host, { key: '86994e2c4d87809c1508b073c3af1c0975c2d81d' }, this._getToolbar(), this._getMapNameList(this._mapListExpanded)));
483
483
  }
484
484
  /**
485
485
  * Called once after the component has loaded
@@ -638,7 +638,7 @@ const MapSearch = class {
638
638
  * Renders the component.
639
639
  */
640
640
  render() {
641
- return (index.h(index.Host, { key: '4b8224b0193ea081d2e505e10ea0b925a9f47045' }, index.h("div", { key: 'f7efe5db5477cb2ba8e5e62003e65c8151ee94f5', class: "search-widget", ref: (el) => { this._searchElement = el; } })));
641
+ return (index.h(index.Host, { key: '5036a89c6a686b2486ff88dffd06f0bed1ea510e' }, index.h("div", { key: '4c5ede4d9877ff0ca0f16706c99aba354df21fd1', class: "search-widget", ref: (el) => { this._searchElement = el; } })));
642
642
  }
643
643
  //--------------------------------------------------------------------------
644
644
  //
@@ -903,7 +903,7 @@ const MapTools = class {
903
903
  const toolMarginClass = this.enableSingleExpand ? "margin-top-1-2" : "";
904
904
  const toolOrder = this.toolOrder ? this.toolOrder : ["legend", "search", "fullscreen", "floorfilter"];
905
905
  const shadowClass = this.stackTools ? "box-shadow" : "";
906
- return (index.h(index.Host, { key: 'f18f09af4ff094b74b8360aff710217850bebbf3' }, index.h("div", { key: '54ad8527ab3d5b45df68bb566301f86f3eff0ca3', class: containerClass }, this.enableSingleExpand ? (index.h("div", { class: "box-shadow" }, this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools()))) : undefined, index.h("div", { key: '4385868565bb8a2ae44d28d8b9a01bee119ca8b7', class: `${toolMarginClass} ${shadowClass} ${toolsClass}` }, this._getMapWidgets(toolOrder))), index.h("basemap-gallery", { key: '4c2ff4c1ec73f73a0c8c52280692489bba542765', basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), index.h("map-search", { key: '20d27c33286be6c1911e8b14902cc86aa6ec8dab', class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, resultGraphicEnabled: true, searchConfiguration: this.searchConfiguration }), index.h("map-legend", { key: '6b635cbf80802b1c7240b8ca1503e185c2900133', class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), index.h("map-fullscreen", { key: '87fcc6db1c89415649c555c354641229b68ce865', class: fullscreenClass, mapView: this.mapView, onFullscreenStateChange: (evt) => this._fullscreenStateChange(evt.detail), ref: (el) => { this._fullscreenElement = el; } }), index.h("floor-filter", { key: 'a897933e0d4a00b6780d99ac5d1173b668adae5d', class: floorFilterClass, enabled: this.enableFloorFilter, mapView: this.mapView, ref: (el) => { this._floorFilterElement = el; } })));
906
+ return (index.h(index.Host, { key: 'a1557491ffd833bed11843dbe1bd040a9d2d6b15' }, index.h("div", { key: '8866b3bc6e05fa75605b078e1a3deecaf6392024', class: containerClass }, this.enableSingleExpand ? (index.h("div", { class: "box-shadow" }, this._getActionGroup(toggleIcon, false, expandTip, () => this._toggleTools()))) : undefined, index.h("div", { key: '6a4e62ad1afcca39365aa965ffabedf8933051d4', class: `${toolMarginClass} ${shadowClass} ${toolsClass}` }, this._getMapWidgets(toolOrder))), index.h("basemap-gallery", { key: '4edade9536c0912a89f6a9335ae05ae46669e14d', basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), index.h("map-search", { key: '046d02c1927def025294645c6e855906fabd30aa', class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, resultGraphicEnabled: true, searchConfiguration: this.searchConfiguration }), index.h("map-legend", { key: '54575e31073bdc68b611939eb0e619e4479b26f3', class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), index.h("map-fullscreen", { key: '9a54a22e12c372dd85717f83cf31b4ace80489eb', class: fullscreenClass, mapView: this.mapView, onFullscreenStateChange: (evt) => this._fullscreenStateChange(evt.detail), ref: (el) => { this._fullscreenElement = el; } }), index.h("floor-filter", { key: 'ffadf501a03186ed6f2fec8754cd758faea5b4dd', class: floorFilterClass, enabled: this.enableFloorFilter, mapView: this.mapView, ref: (el) => { this._floorFilterElement = el; } })));
907
907
  }
908
908
  //--------------------------------------------------------------------------
909
909
  //
@@ -420,7 +420,7 @@ const MapDrawTools = class {
420
420
  "border" : "border esri-widget esri-sketch__panel";
421
421
  const undoRedoClass = this.drawMode === interfaces.EDrawMode.SKETCH ?
422
422
  "display-none" : "esri-widget esri-sketch__panel border-left esri-sketch__section";
423
- return (index.h(index.Host, { key: 'ab6fe128a5059e5b58ba9dc240f3934142097482' }, index.h("div", { key: '846d66c3aad67b63a2bbbf47325594d2eb35fbb6', class: containerClass }, index.h("div", { key: '0f439e2c3f4a51413f49ccd1dc6f3524d0e36017', ref: (el) => { this._sketchElement = el; } }), index.h("div", { key: '9b755b8df3bb66bf2713969417a29a7059b4f0c9', class: undoRedoClass }, index.h("calcite-action", { key: 'f565f8683cf6222232f913a2edb7fcab7e7235c2', disabled: !this.undoEnabled, icon: "undo", onClick: () => this._undo(), scale: "s", text: this._translations.undo }), index.h("calcite-action", { key: 'fd5d819cf78399c12ffb156035ba38ba41e7cd9b', disabled: !this.redoEnabled, icon: "redo", onClick: () => this._redo(), scale: "s", text: this._translations.redo })))));
423
+ return (index.h(index.Host, { key: '1f9544ac97df4b51337260e1bb7cf3b5d923fa03' }, index.h("div", { key: 'eca20834d2eacf3cc4a30e6ecf15a2f8d894cb8f', class: containerClass }, index.h("div", { key: '32bbaf5a03251c035821880231acb894a452b8dd', ref: (el) => { this._sketchElement = el; } }), index.h("div", { key: 'cd446419c2b7d347711a48851baec46f24d20375', class: undoRedoClass }, index.h("calcite-action", { key: '03ce63c7805c1cc1b63e78336ba624199eef3336', disabled: !this.undoEnabled, icon: "undo", onClick: () => this._undo(), scale: "s", text: this._translations.undo }), index.h("calcite-action", { key: '0d688389277586163c589561865ab7778021ac10', disabled: !this.redoEnabled, icon: "redo", onClick: () => this._redo(), scale: "s", text: this._translations.redo })))));
424
424
  }
425
425
  //--------------------------------------------------------------------------
426
426
  //
@@ -329,7 +329,7 @@ const Alert = class {
329
329
  };
330
330
  Alert.style = CalciteAlertStyle0;
331
331
 
332
- const deleteButtonCss = ":host{display:block}";
332
+ const deleteButtonCss = ":host{display:block}.delete-modal{position:fixed}";
333
333
  const DeleteButtonStyle0 = deleteButtonCss;
334
334
 
335
335
  const DeleteButton = class {
@@ -386,7 +386,7 @@ const DeleteButton = class {
386
386
  * Renders the component.
387
387
  */
388
388
  render() {
389
- return (index.h(index.Host, { key: '09821225eb29ad6eef021f81977cabc3b7852167' }, this.buttonType === "button" ? (index.h("calcite-button", { appearance: "outline", disabled: !this._deleteEndabled, id: "solutions-delete", kind: "danger", onClick: () => this._delete(), width: "full" }, this._translations.deleteCount.replace("{{n}}", this.ids.length.toString()))) : (index.h("calcite-action", { appearance: "solid", compact: true, disabled: !this._deleteEndabled, id: this.icon, onClick: () => this._delete(), scale: "s", text: this._translations.delete }, index.h("calcite-button", { appearance: "transparent", iconStart: this.icon, kind: "danger" }, this._translations.delete))), this._deleteMessage()));
389
+ return (index.h(index.Host, { key: '87e080ea4203ab7fcb1313d8fa57a3d5c5d37885' }, this.buttonType === "button" ? (index.h("calcite-button", { appearance: "outline", disabled: !this._deleteEndabled, id: "solutions-delete", kind: "danger", onClick: () => this._delete(), width: "full" }, this._translations.deleteCount.replace("{{n}}", this.ids.length.toString()))) : (index.h("calcite-action", { appearance: "solid", compact: true, disabled: !this._deleteEndabled, id: this.icon, onClick: () => this._delete(), scale: "s", text: this._translations.delete }, index.h("calcite-button", { appearance: "transparent", iconStart: this.icon, kind: "danger" }, this._translations.delete))), this._deleteMessage()));
390
390
  }
391
391
  /**
392
392
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -423,7 +423,7 @@ const DeleteButton = class {
423
423
  _deleteMessage() {
424
424
  const confirmMessage = this.ids.length === 1 ? this._translations.confirmSingle :
425
425
  this._translations.confirmMultiple;
426
- return (index.h("calcite-modal", { "aria-labelledby": "modal-title", kind: "danger", onCalciteModalClose: () => this._deleteClosed(), open: this._confirmDelete }, index.h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations.deleteFeature), index.h("div", { slot: "content" }, confirmMessage), index.h("calcite-button", { appearance: "outline", kind: "danger", onClick: () => this._deleteClosed(), slot: "secondary", width: "full" }, this._translations.cancel), index.h("calcite-button", { kind: "danger", loading: this._isDeleting, onClick: () => void this._deleteFeatures(), slot: "primary", width: "full" }, this._translations.delete)));
426
+ return (index.h("calcite-modal", { "aria-labelledby": "modal-title", class: "delete-modal", kind: "danger", onCalciteModalClose: () => this._deleteClosed(), open: this._confirmDelete }, index.h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations.deleteFeature), index.h("div", { slot: "content" }, confirmMessage), index.h("calcite-button", { appearance: "outline", kind: "danger", onClick: () => this._deleteClosed(), slot: "secondary", width: "full" }, this._translations.cancel), index.h("calcite-button", { kind: "danger", loading: this._isDeleting, onClick: () => void this._deleteFeatures(), slot: "primary", width: "full" }, this._translations.delete)));
427
427
  }
428
428
  /**
429
429
  * Delete the currently selected features
@@ -560,7 +560,7 @@ const EditCard = class {
560
560
  !this.graphics[0].layer.editingEnabled : true;
561
561
  const tableNodeClass = this._editorLoading ? "display-none" : "position-absolute";
562
562
  const loadingClass = this._editorLoading ? "" : "display-none";
563
- return (index.h(index.Host, { key: 'fbb55e4f99e4fde338fb1ca9debc6cd4eeb46787' }, index.h("div", { key: '10f7468920f81c1b97a2b23c8069e5b821683788', class: "position-absolute" }, editDisabled ? (index.h("calcite-notice", { kind: "warning", open: true, slot: "content-top", width: "full" }, index.h("div", { slot: "message" }, this._translations.enableEditing))) : undefined, index.h("div", { key: '4badfa94e30d2a8108812c780ea6e636ca4e6e00', class: "position-absolute" }, index.h("div", { key: '7ce280938b7ae435fbffd358969a23577a0a8ce8', class: tableNodeClass, id: "feature-form", ref: (el) => this._editContainer = el }), index.h("calcite-loader", { key: '13e23afb8e6d012f6abebad43b24485ac0e72805', class: loadingClass, label: "", scale: "s" })))));
563
+ return (index.h(index.Host, { key: '80acdd7d9b9441be28664ab60b7ad5d19c633bdd' }, index.h("div", { key: 'c8e41f2f7f3d5fcc4f49dd42b1f530c9e422cc8a', class: "position-absolute" }, editDisabled ? (index.h("calcite-notice", { kind: "warning", open: true, slot: "content-top", width: "full" }, index.h("div", { slot: "message" }, this._translations.enableEditing))) : undefined, index.h("div", { key: '4b93fef902254d2a55e997bccdb4e16ee67c3c75', class: "position-absolute" }, index.h("div", { key: '1794c5c246ab90b2915a15a15077ae7d82ec567c', class: tableNodeClass, id: "feature-form", ref: (el) => this._editContainer = el }), index.h("calcite-loader", { key: '001162f8ae947cae915de33c16a116efd7795f75', class: loadingClass, label: "", scale: "s" })))));
564
564
  }
565
565
  //--------------------------------------------------------------------------
566
566
  //
@@ -842,8 +842,8 @@ const InfoCard = class {
842
842
  const id = (_d = (_c = this._features) === null || _c === void 0 ? void 0 : _c.selectedFeature) === null || _d === void 0 ? void 0 : _d.getObjectId();
843
843
  const ids = parseInt(id === null || id === void 0 ? void 0 : id.toString(), 10) > -1 ? [id] : [];
844
844
  const deleteEnabled = ((_e = this._layer) === null || _e === void 0 ? void 0 : _e.editingEnabled) && ((_h = (_g = (_f = this._layer) === null || _f === void 0 ? void 0 : _f.capabilities) === null || _g === void 0 ? void 0 : _g.operations) === null || _h === void 0 ? void 0 : _h.supportsDelete);
845
- return (index.h(index.Host, { key: 'ab22ed392db6e8bad11758f39d6bd1738c10a229' }, index.h("calcite-shell", { key: 'f97bdc21cb5e667b1973353a45297f9536252fcd', style: { position: this.position } }, this._getHeader(), index.h("calcite-loader", { key: '82b78360be903de1be044406735db84122399f49', class: loadingClass, label: this._translations.fetchingData }), index.h("div", { key: '168d0310daf7eca08c4891283b8a9865eda102bc', class: "esri-widget feature-node " + featureNodeClass, id: this._featuresNodeId }), index.h("div", { key: '258b913cfdc4f1269dcc250a473643878d97f8bd', class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
846
- index.h("div", { key: 'c6fd569640410dd3a106f27f49eb6553c9ea0167', class: "display-flex top-border padding-1-2" }, index.h("calcite-button", { key: '3dbe007feb1104d53c47298ae1308c776e3ec5cf', appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (index.h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, index.h("calcite-tooltip", { key: '094e52e8d2945125096856a8c5249babdbbd1eec', placement: "bottom", "reference-element": "solutions-edit" }, index.h("span", { key: 'da9edbf6bdb39ce1a287894287d69f2767bb18de' }, this._translations.edit)), this.isMobile ? (index.h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, index.h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && index.h("div", { key: '5badbe8009a3a64e3b471ce4e63f4a7d2ae68acc', class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, index.h("div", { key: '17b287e0f0405ead48a9460423e5371e102de38a' }, index.h("calcite-button", { key: '4277d8e56528475c5cea369811c9c3c8a0cdd5c7', appearance: 'transparent', disabled: nextBackDisabled, iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), index.h("calcite-tooltip", { key: 'c8ee8c81d9de098290f35075b0c6ac3ee2f46afc', placement: "top", "reference-element": "solutions-back" }, index.h("span", { key: '3321af9ca1a78efe28249872be05433d9d79f51b' }, this._translations.back))), index.h("calcite-action", { key: '5ce96bff1e1e1bd77f364d8ceb297e0db7453a29', class: 'pagination-action', onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, index.h("span", { key: 'd558026468f5aeb0797efcfa1843f515fed2b451', class: "pagination-count" }, this._count)), index.h("div", { key: '52fd57812fda98ad244a1f60aa4ec2f31efce78d' }, index.h("calcite-button", { key: '3582c2ea725fe9eb36f1846fbb06acaedcb3ebe1', appearance: "transparent", disabled: nextBackDisabled, iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), index.h("calcite-tooltip", { key: '1212e990b6ae4e7979f2a1571b461cf063e55b9d', placement: "top", "reference-element": "solutions-next" }, index.h("span", { key: '2284b042fdfeebc86441119c404c5905fb84f367' }, this._translations.next))))), index.h("edit-card", { key: 'ae9f73223bdffa5c3ec85e3ebdf4b314cd91d1c7', class: editClass, graphicIndex: (_j = this._features) === null || _j === void 0 ? void 0 : _j.selectedFeatureIndex, graphics: this.graphics, mapView: this.mapView, open: this._editRecordOpen }), index.h("calcite-alert", { key: '1927a41a8c9fbb6373490d554cf8128a93fe8e71', icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, index.h("div", { key: '33ba87f5b72019c2795fe12485aa51429115b74d', slot: "title" }, this._translations.editDisabled), index.h("div", { key: 'd45970a653b416bbdd5e5b97040b23e54eaf98a5', slot: "message" }, this._translations.enableEditing)))));
845
+ return (index.h(index.Host, { key: 'ac9c78b064154a666a50e7e8540f13bd541c4d37' }, index.h("calcite-shell", { key: 'e12b6fd8ac5f92282899edceb5818764fb543301', style: { position: this.position } }, this._getHeader(), index.h("calcite-loader", { key: 'e73db3c6f71cddf497cb20e1f59e9f1d8b1ecdd6', class: loadingClass, label: this._translations.fetchingData }), index.h("div", { key: 'ab1913d90206219978d425a45f312da3e73bcca8', class: "esri-widget feature-node " + featureNodeClass, id: this._featuresNodeId }), index.h("div", { key: '67242dfb2b219e71a135c88d9d5e2fd40b083226', class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
846
+ index.h("div", { key: '25ee3d9374a5ce97c4fcd672b1f78315d1294719', class: "display-flex top-border padding-1-2" }, index.h("calcite-button", { key: '840e3b4ae075fbfd7836f2757128e2cfe9f267e3', appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (index.h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, index.h("calcite-tooltip", { key: '747436c3815e94976c2838777a26185c9cb7ab28', placement: "bottom", "reference-element": "solutions-edit" }, index.h("span", { key: 'd40dbe85eddaf99acc522f305960ce59c16a8b1f' }, this._translations.edit)), this.isMobile ? (index.h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, index.h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && index.h("div", { key: '9a1b1e5d7e4432f6b2cd80f77a49f50b1910117f', class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, index.h("div", { key: '9b6fd66023b514ff996107ade3af93415f1353f1' }, index.h("calcite-button", { key: '823bcbe1a3b592344972e6ef39fd5088ab6197fa', appearance: 'transparent', disabled: nextBackDisabled, iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), index.h("calcite-tooltip", { key: 'f547487c9eae179e0c65015a24432c936de2ceca', placement: "top", "reference-element": "solutions-back" }, index.h("span", { key: 'f6f352416103008acc20238efe7e7714fca8d05e' }, this._translations.back))), index.h("calcite-action", { key: '799e06b8af5df338b920ddc578fa349de469e786', class: 'pagination-action', onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, index.h("span", { key: 'adee5b6b5149dbb4c1d6136c1314db89a04e8913', class: "pagination-count" }, this._count)), index.h("div", { key: '87f181c53ad1806a9831d01b54fdd51434a5a4c2' }, index.h("calcite-button", { key: 'a4612a6f0d9b6a9412e60022599cba536cd4f623', appearance: "transparent", disabled: nextBackDisabled, iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), index.h("calcite-tooltip", { key: '613849a34a568fe8df2abe8b1813070cb7a54633', placement: "top", "reference-element": "solutions-next" }, index.h("span", { key: '35a2e621ce4b3bccb2b859e961db1065d619b2d9' }, this._translations.next))))), index.h("edit-card", { key: 'a2054fc21fc09dbffc47e1a7617a4b91b29d26fd', class: editClass, graphicIndex: (_j = this._features) === null || _j === void 0 ? void 0 : _j.selectedFeatureIndex, graphics: this.graphics, mapView: this.mapView, open: this._editRecordOpen }), index.h("calcite-alert", { key: 'ec0fd6540b21987c80fe2035efa96d197c1e6cec', icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, index.h("div", { key: '721a363423ec61a9645b003a7d53849137fe1b82', slot: "title" }, this._translations.editDisabled), index.h("div", { key: '143e9ff06f5363682e8b9e1976fdbfdd1b56f2a9', slot: "message" }, this._translations.enableEditing)))));
847
847
  }
848
848
  //--------------------------------------------------------------------------
849
849
  //
@@ -171,7 +171,7 @@ const MapLayerPicker = class {
171
171
  const id = "map-layer-picker";
172
172
  let style = this.height > 0 ? { "height": `${this.height.toString()}px` } : {};
173
173
  style = Object.assign(Object.assign({}, style), { "display": this.display });
174
- return (index.h(index.Host, { key: 'ccb8c7d12a2e631938308380cd4ecd0a1d73c963' }, index.h("div", { key: 'aa0992de9bab1c5a555d51542c093cc7cb948200', class: "map-layer-picker-container", style: style }, index.h("div", { key: 'a03bca67eb822b492d34abe53db7d05e6fd7ebdf', class: "map-layer-picker", style: style }, !this._hasValidLayers ? this._getInvalidPlaceholder() :
174
+ return (index.h(index.Host, { key: 'a96e93924530d926c5e10dd2f7212f3f8c1cbe3c' }, index.h("div", { key: '4b96a73e43e86c31291e4ac60eb15976b01de6a2', class: "map-layer-picker-container", style: style }, index.h("div", { key: 'e75c61d8ce0853814dd3903b9e1952cc613b6fbb', class: "map-layer-picker", style: style }, !this._hasValidLayers ? this._getInvalidPlaceholder() :
175
175
  !this._hasMultipleLayers && this.showSingleLayerAsLabel ? this._getSingleLayerPlaceholder() :
176
176
  this.type === "combobox" ? this._getCombobox(id) :
177
177
  this.type === "select" ? this._getSelect(id) : this._getDropdown(id)))));
@@ -351,10 +351,15 @@ const CreateFeature = class {
351
351
  this.drawComplete = index.createEvent(this, "drawComplete", 7);
352
352
  this.editingAttachment = index.createEvent(this, "editingAttachment", 7);
353
353
  this.progressStatus = index.createEvent(this, "progressStatus", 7);
354
+ /**
355
+ * boolean: Flag to maintain form submission using submit button
356
+ */
357
+ this._isSubmitBtnClicked = false;
354
358
  this.mapView = undefined;
355
359
  this.selectedLayerId = undefined;
356
360
  this.customizeSubmit = false;
357
361
  this.searchConfiguration = undefined;
362
+ this._editorLoading = false;
358
363
  this.showSearchWidget = undefined;
359
364
  }
360
365
  //--------------------------------------------------------------------------
@@ -363,13 +368,25 @@ const CreateFeature = class {
363
368
  //
364
369
  //--------------------------------------------------------------------------
365
370
  /**
366
- * Called each time the mapView prop is changed.
367
- */
371
+ * Called each time the mapView prop is changed.
372
+ */
368
373
  async mapViewWatchHandler() {
369
374
  await this.mapView.when(async () => {
370
375
  await this.init();
371
376
  });
372
377
  }
378
+ /**
379
+ * When _editorLoading is true the container node will be hidden while starting the create workflow
380
+ */
381
+ async _editorLoadingWatchHandler(v) {
382
+ var _a, _b;
383
+ if (v) {
384
+ (_a = this._container) === null || _a === void 0 ? void 0 : _a.classList.add("display-none");
385
+ await this.startCreate();
386
+ (_b = this._container) === null || _b === void 0 ? void 0 : _b.classList.remove("display-none");
387
+ this._editorLoading = false;
388
+ }
389
+ }
373
390
  //--------------------------------------------------------------------------
374
391
  //
375
392
  // Methods (public)
@@ -390,6 +407,7 @@ const CreateFeature = class {
390
407
  */
391
408
  async submit() {
392
409
  if (this._editor) {
410
+ this._isSubmitBtnClicked = true;
393
411
  this._editor.viewModel.featureFormViewModel.submit();
394
412
  }
395
413
  }
@@ -416,7 +434,9 @@ const CreateFeature = class {
416
434
  */
417
435
  render() {
418
436
  const showSearchWidget = this.showSearchWidget ? '' : 'display-none';
419
- return (index.h(index.Fragment, { key: 'e1427c13c0385279fcb0f122b50b891eac419ec4' }, index.h("div", { key: '039e8d8ff5792765c73cb23df37f37bacc0c9dda', id: "feature-form" }), index.h("div", { key: '94601056ec69000009f4b71b34a38cea28635d99', class: `search-widget ${showSearchWidget}`, id: "search-widget-ref" })));
437
+ const loaderClass = this._editorLoading ? "" : "display-none";
438
+ const featureFormClass = this._editorLoading ? "display-none" : "";
439
+ return (index.h(index.Fragment, { key: '2e790defdd5592fed729853888ee06143c95c84d' }, index.h("calcite-loader", { key: 'a0f1de0064ea80305d4aaf83f78939c0236c955a', class: loaderClass, label: "", scale: "s" }), index.h("div", { key: '1af391d6d7fd0dffa2e8e4b43905f8081a5f9820', class: featureFormClass, id: "feature-form" }), index.h("div", { key: '88d12115c3c2e0d34a5d6fd8895fb60cec6e9b5d', class: `search-widget ${showSearchWidget} ${featureFormClass}`, id: "search-widget-ref" })));
420
440
  }
421
441
  //--------------------------------------------------------------------------
422
442
  //
@@ -452,11 +472,13 @@ const CreateFeature = class {
452
472
  * @protected
453
473
  */
454
474
  async createEditorWidget() {
475
+ var _a;
455
476
  if (this._editor) {
456
477
  this._editor.destroy();
457
478
  }
458
479
  const layerInfos = [];
459
- const container = document.createElement("div");
480
+ this._container = document.createElement("div");
481
+ (_a = this._container) === null || _a === void 0 ? void 0 : _a.classList.add("display-none");
460
482
  const allMapLayers = await mapViewUtils.getAllLayers(this.mapView);
461
483
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
462
484
  allMapLayers.forEach(async (eachLayer) => {
@@ -475,9 +497,9 @@ const CreateFeature = class {
475
497
  visibleElements: {
476
498
  snappingControls: false
477
499
  },
478
- container
500
+ container: this._container
479
501
  });
480
- this.el.appendChild(container);
502
+ this.el.appendChild(this._container);
481
503
  //Add handle to watch if attachments are added/edited
482
504
  const attachmentHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
483
505
  if (state === 'adding-attachment' || state === 'editing-attachment') {
@@ -496,13 +518,14 @@ const CreateFeature = class {
496
518
  const handle = this.reactiveUtils.watch(() => this._editor.viewModel.featureTemplatesViewModel.state, (state) => {
497
519
  if (state === 'ready') {
498
520
  this.progressStatus.emit(0.5);
499
- void this.startCreate();
521
+ this._editorLoading = true;
500
522
  }
501
523
  });
502
524
  this._editor.viewModel.addHandles(handle);
503
525
  //Add handle to watch editor viewmodel state and then show the search widget
504
526
  const formHandle = this.reactiveUtils.watch(() => this._editor.viewModel.state, (state) => {
505
527
  if (state === 'creating-features') {
528
+ this._editorLoading = true;
506
529
  this.showSearchWidget = true;
507
530
  }
508
531
  });
@@ -513,36 +536,39 @@ const CreateFeature = class {
513
536
  * @protected
514
537
  */
515
538
  async startCreate() {
516
- var _a;
517
- if ((_a = this._editor.viewModel.featureTemplatesViewModel.items) === null || _a === void 0 ? void 0 : _a.length) {
518
- const items = this._editor.viewModel.featureTemplatesViewModel.items[0].get("items");
519
- //once the feature template is selected handle the event for formSubmit and sketch complete
520
- //also, hide the headers and footer in the editor as we will be showing our own submit and cancel button
521
- this._editor.viewModel.featureTemplatesViewModel.on('select', () => {
522
- this.progressStatus.emit(0.75);
523
- setTimeout(() => {
524
- //on form submit
525
- this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
526
- //on sketch complete emit the event
527
- this._editor.viewModel.sketchViewModel.on("create", (evt) => {
528
- if (evt.state === "complete") {
529
- this.showSearchWidget = false;
530
- this.progressStatus.emit(1);
531
- this.drawComplete.emit();
532
- }
533
- });
534
- this.hideEditorsElements();
535
- }, 700);
536
- this.hideEditorsElements();
537
- });
538
- //if only one feature template then directly start geometry creation for that
539
- //else allow feature template selection to user
540
- if (items.length === 1) {
541
- this._editor.viewModel.featureTemplatesViewModel.select(items[0]);
539
+ return new Promise((resolve, reject) => {
540
+ var _a;
541
+ if ((_a = this._editor.viewModel.featureTemplatesViewModel.items) === null || _a === void 0 ? void 0 : _a.length) {
542
+ const items = this._editor.viewModel.featureTemplatesViewModel.items[0].get("items");
543
+ //once the feature template is selected handle the event for formSubmit and sketch complete
544
+ //also, hide the headers and footer in the editor as we will be showing our own submit and cancel button
545
+ this._editor.viewModel.featureTemplatesViewModel.on('select', () => {
546
+ this.progressStatus.emit(0.75);
547
+ setTimeout(() => {
548
+ //on form submit
549
+ this._editor.viewModel.featureFormViewModel.on('submit', this.submitted.bind(this));
550
+ //on sketch complete emit the event
551
+ this._editor.viewModel.sketchViewModel.on("create", (evt) => {
552
+ if (evt.state === "complete") {
553
+ this.showSearchWidget = false;
554
+ this.progressStatus.emit(1);
555
+ this.drawComplete.emit();
556
+ }
557
+ });
558
+ this.hideEditorsElements().then(() => {
559
+ resolve({});
560
+ }, e => reject(e));
561
+ }, 700);
562
+ });
563
+ //if only one feature template then directly start geometry creation for that
564
+ //else allow feature template selection to user
565
+ if (items.length === 1) {
566
+ this._editor.viewModel.featureTemplatesViewModel.select(items[0]);
567
+ }
568
+ //hides the header and footer elements in editor widget
569
+ void this.hideEditorsElements();
542
570
  }
543
- //hides the header and footer elements in editor widget
544
- this.hideEditorsElements();
545
- }
571
+ });
546
572
  }
547
573
  /**
548
574
  * Display search widget to search location
@@ -577,7 +603,7 @@ const CreateFeature = class {
577
603
  if (this._editor.viewModel.sketchViewModel.createGraphic && pointGeometry) {
578
604
  this._editor.viewModel.sketchViewModel.createGraphic.set('geometry', pointGeometry);
579
605
  this._editor.viewModel.sketchViewModel.complete();
580
- this.hideEditorsElements();
606
+ void this.hideEditorsElements();
581
607
  }
582
608
  }, 100);
583
609
  }
@@ -636,22 +662,21 @@ const CreateFeature = class {
636
662
  * Hides the elements of editor widget
637
663
  * @protected
638
664
  */
639
- hideEditorsElements() {
665
+ async hideEditorsElements() {
666
+ var _a;
640
667
  if (!this.customizeSubmit) {
641
668
  return;
642
669
  }
643
- setTimeout(() => {
644
- var _a;
645
- //hides the header and footer on the featureForm
646
- (_a = this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')) === null || _a === void 0 ? void 0 : _a.forEach((flowItem) => {
647
- var _a, _b, _c, _d, _e;
648
- const article = (_c = (_b = (_a = flowItem.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('calcite-panel')) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('article');
649
- //hide the header
650
- (_d = article === null || article === void 0 ? void 0 : article.querySelector('header')) === null || _d === void 0 ? void 0 : _d.setAttribute('style', 'display: none');
651
- //hide the footer
652
- (_e = article === null || article === void 0 ? void 0 : article.querySelector('footer')) === null || _e === void 0 ? void 0 : _e.setAttribute('style', 'display: none');
653
- });
654
- }, 700);
670
+ await this.timeout(700);
671
+ //hides the header and footer on the featureForm
672
+ (_a = this.el.querySelector('.esri-editor').querySelectorAll('calcite-flow-item')) === null || _a === void 0 ? void 0 : _a.forEach((flowItem) => {
673
+ var _a, _b, _c, _d, _e;
674
+ const article = (_c = (_b = (_a = flowItem.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('calcite-panel')) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('article');
675
+ //hide the header
676
+ (_d = article === null || article === void 0 ? void 0 : article.querySelector('header')) === null || _d === void 0 ? void 0 : _d.setAttribute('style', 'display: none');
677
+ //hide the footer
678
+ (_e = article === null || article === void 0 ? void 0 : article.querySelector('footer')) === null || _e === void 0 ? void 0 : _e.setAttribute('style', 'display: none');
679
+ });
655
680
  }
656
681
  /**
657
682
  * On creation of feature emit the event that the feature is created
@@ -662,11 +687,13 @@ const CreateFeature = class {
662
687
  var _a;
663
688
  //return if any attribute is invalid , focus will be shifted to the invalid attribute in feature form
664
689
  if (evt.invalid.length) {
690
+ this._isSubmitBtnClicked = false;
665
691
  return;
666
692
  }
667
693
  //Submit only when valid attributes
668
694
  //emit success or fail based on the result
669
- if (evt.valid.length) {
695
+ if (evt.valid.length && this._isSubmitBtnClicked) {
696
+ this._isSubmitBtnClicked = false;
670
697
  try {
671
698
  await this._editor.activeWorkflow.commit();
672
699
  //throw errors if any failures
@@ -685,9 +712,18 @@ const CreateFeature = class {
685
712
  this.success.emit();
686
713
  }
687
714
  }
715
+ /**
716
+ * call setTimeout in Promise wrapper
717
+ * @param delay The time, in milliseconds that the timer should wait before the promise is resolved
718
+ * @protected
719
+ */
720
+ timeout(delay) {
721
+ return new Promise(resolve => setTimeout(resolve, delay));
722
+ }
688
723
  get el() { return index.getElement(this); }
689
724
  static get watchers() { return {
690
- "mapView": ["mapViewWatchHandler"]
725
+ "mapView": ["mapViewWatchHandler"],
726
+ "_editorLoading": ["_editorLoadingWatchHandler"]
691
727
  }; }
692
728
  };
693
729
  CreateFeature.style = CreateFeatureStyle0;
@@ -701,6 +737,10 @@ const CreateRelatedFeature = class {
701
737
  this.success = index.createEvent(this, "success", 7);
702
738
  this.fail = index.createEvent(this, "fail", 7);
703
739
  this.isActionPending = index.createEvent(this, "isActionPending", 7);
740
+ /**
741
+ * boolean: Flag to maintain form submission using submit button
742
+ */
743
+ this._isSubmitBtnClicked = false;
704
744
  this.mapView = undefined;
705
745
  this.table = undefined;
706
746
  this.selectedFeature = undefined;
@@ -737,6 +777,7 @@ const CreateRelatedFeature = class {
737
777
  */
738
778
  async submit() {
739
779
  if (this._editor) {
780
+ this._isSubmitBtnClicked = true;
740
781
  this._editor.viewModel.featureFormViewModel.submit();
741
782
  }
742
783
  }
@@ -774,7 +815,7 @@ const CreateRelatedFeature = class {
774
815
  this.reactiveUtils = reactiveUtils;
775
816
  }
776
817
  render() {
777
- return (index.h(index.Host, { key: '579af77dcac88043b178e711e0b47d7982c1c87f' }));
818
+ return (index.h(index.Host, { key: 'c8516898db79b35b7fba909810afdc56b0602ebd' }));
778
819
  }
779
820
  /**
780
821
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -904,11 +945,13 @@ const CreateRelatedFeature = class {
904
945
  var _a;
905
946
  //return if any attribute is invalid , focus will be shifted to the invalid attribute in feature form
906
947
  if (evt.invalid.length) {
948
+ this._isSubmitBtnClicked = false;
907
949
  return;
908
950
  }
909
951
  //Submit only when valid attributes
910
952
  //emit success or fail based on the result
911
- if (evt.valid.length) {
953
+ if (evt.valid.length && this._isSubmitBtnClicked) {
954
+ this._isSubmitBtnClicked = false;
912
955
  try {
913
956
  await this._editor.activeWorkflow.commit();
914
957
  //throw errors if any failures
@@ -934,7 +977,7 @@ const CreateRelatedFeature = class {
934
977
  };
935
978
  CreateRelatedFeature.style = CreateRelatedFeatureStyle0;
936
979
 
937
- const featureDetailsCss = ":host{display:block}.buttons-container{align-items:center;display:flex;padding:10px;color:var(--calcite-color-text-1) !important;background-color:var(--calcite-color-foreground-1) !important;border-block-start:1px solid var(--calcite-color-border-3);border-block-end:1px solid var(--calcite-color-border-3)}.comment-btn{display:flex;gap:5px;font-size:var(--calcite-font-size--2);align-items:center;padding:0 0.5rem}";
980
+ const featureDetailsCss = ":host{display:block}.buttons-container{align-items:center;display:flex;padding:4px;color:var(--calcite-color-text-1) !important;background-color:var(--calcite-color-foreground-1) !important;border-block-start:1px solid var(--calcite-color-border-3);border-block-end:1px solid var(--calcite-color-border-3)}.comment-btn{display:flex;gap:10px;font-size:var(--calcite-font-size--1);align-items:center;padding:7px 0.75rem}";
938
981
  const FeatureDetailsStyle0 = featureDetailsCss;
939
982
 
940
983
  const FeatureDetails = class {
@@ -959,6 +1002,7 @@ const FeatureDetails = class {
959
1002
  this._isLikeBtnClicked = false;
960
1003
  this._isDislikeBtnClicked = false;
961
1004
  this._relatedFeaturesOIDs = undefined;
1005
+ this._updating = false;
962
1006
  }
963
1007
  //--------------------------------------------------------------------------
964
1008
  //
@@ -1030,12 +1074,12 @@ const FeatureDetails = class {
1030
1074
  var _a, _b, _c, _d, _e;
1031
1075
  //When related features found show comments list of only those features else comments list will be empty
1032
1076
  const commentsListWhereClause = ((_a = this._relatedFeaturesOIDs) === null || _a === void 0 ? void 0 : _a.length) > 0 ? `objectId in(${this._relatedFeaturesOIDs})` : '1=0';
1033
- return (index.h("calcite-panel", { key: 'f8d1d282a6ebdb4d5a64efd96d88329d375b7fe1', "full-height": true }, index.h("info-card", { key: '3cfca85af149ab445973510ff1a9f94e22c5c833', allowEditing: false, graphics: this.graphics, highlightEnabled: false, isLoading: false, isMobile: false, mapView: this.mapView, onSelectionChanged: (e) => { this.featureSelectionChange.emit(e.detail); }, paginationEnabled: false, position: "relative", ref: el => this._infoCard = el }), (this._likeFieldAvailable || this._dislikeFieldAvailable || this._commentsAvailable) &&
1034
- index.h("div", { key: 'a3242d417cef788f0f677bf21c65fb9aaa44f8b2', class: "buttons-container" }, this._commentsAvailable &&
1035
- index.h("div", { key: '9dcfccc0a48b719d14cb08737d654000a27e21cc', class: "comment-btn" }, index.h("span", { key: 'b68cafd0cebfa91c12f32f648ec2f71a51e3b9da' }, this._relatedFeaturesOIDs.length), index.h("calcite-icon", { key: 'f2b9c34ac64a5cb7692f80cd73658f077525eee4', icon: "speech-bubble", scale: 's' })), this._likeFieldAvailable &&
1036
- index.h("calcite-button", { key: '7a4ec79205b3eccceb7d43de2c227d8407c24a26', appearance: "transparent", iconEnd: "thumbs-up", kind: this._isLikeBtnClicked ? "brand" : "neutral", onClick: this.onLikeButtonClick.bind(this), scale: 's' }, (_c = (_b = this._likeCount) !== null && _b !== void 0 ? _b : this._selectedGraphic.attributes[this._likeField]) !== null && _c !== void 0 ? _c : 0), this._dislikeFieldAvailable &&
1037
- index.h("calcite-button", { key: '4634f8aeb114f97c9ceaae8eac5da86afa89f217', appearance: "transparent", iconEnd: "thumbs-down", kind: this._isDislikeBtnClicked ? "brand" : "neutral", onClick: this.onDislikeButtonClick.bind(this), scale: 's' }, (_e = (_d = this._disLikeCount) !== null && _d !== void 0 ? _d : this._selectedGraphic.attributes[this._dislikeField]) !== null && _e !== void 0 ? _e : 0)), this.relatedTableId && this._commentsAvailable &&
1038
- index.h("feature-list", { key: '30559c6f28a741264972677cef1f182f1012f73f', class: "height-full", mapView: this.mapView, onFeatureSelect: (e) => { this.commentSelect.emit(e.detail); }, pageSize: 5, ref: el => this._commentsList = el, selectedLayerId: this.relatedTableId, showErrorWhenNoFeatures: false, showInitialLoading: false, textSize: "small", whereClause: commentsListWhereClause })));
1077
+ return (index.h("calcite-panel", { key: 'e42bbf7e4070b03c43aec1bf47c442b65cd35731', "full-height": true }, index.h("info-card", { key: 'f44099e2f8f87edbc656700e65daeb1bf934d41c', allowEditing: false, graphics: this.graphics, highlightEnabled: false, isLoading: false, isMobile: false, mapView: this.mapView, onSelectionChanged: (e) => { this.featureSelectionChange.emit(e.detail); }, paginationEnabled: false, position: "relative", ref: el => this._infoCard = el }), (this._likeFieldAvailable || this._dislikeFieldAvailable || this._commentsAvailable) &&
1078
+ index.h("div", { key: 'aa65adf8d8b6a059d5e9d0e74a1896eb20c84eaf', class: "buttons-container" }, this._commentsAvailable &&
1079
+ index.h("div", { key: '09dd5da4932a9a0526b413592d25469087eaf4c9', class: "comment-btn" }, index.h("span", { key: '48f7080ace69de3589aa4f3b199eb25e53f61110' }, this._relatedFeaturesOIDs.length), index.h("calcite-icon", { key: 'f524b4d66a0a6427dda6a7a93e9dc362fe7337fc', icon: "speech-bubble", scale: 's' })), this._likeFieldAvailable &&
1080
+ index.h("calcite-button", { key: '278a685b13f7ae2a37cb649a0933006104fa7b9f', appearance: "transparent", iconEnd: "thumbs-up", kind: this._isLikeBtnClicked ? "brand" : "neutral", loading: this._updating, onClick: this.onLikeButtonClick.bind(this), scale: 'm' }, (_c = (_b = this._likeCount) !== null && _b !== void 0 ? _b : this._selectedGraphic.attributes[this._likeField]) !== null && _c !== void 0 ? _c : 0), this._dislikeFieldAvailable &&
1081
+ index.h("calcite-button", { key: '7010b6ef352be7c587d7ca49fe3b8411aeb163c6', appearance: "transparent", iconEnd: "thumbs-down", kind: this._isDislikeBtnClicked ? "brand" : "neutral", loading: this._updating, onClick: this.onDislikeButtonClick.bind(this), scale: 'm' }, (_e = (_d = this._disLikeCount) !== null && _d !== void 0 ? _d : this._selectedGraphic.attributes[this._dislikeField]) !== null && _e !== void 0 ? _e : 0)), this.relatedTableId && this._commentsAvailable &&
1082
+ index.h("feature-list", { key: '526614c384fa627057a18528c1bd4aaf2b9c70d8', class: "height-full", mapView: this.mapView, onFeatureSelect: (e) => { this.commentSelect.emit(e.detail); }, pageSize: 5, ref: el => this._commentsList = el, selectedLayerId: this.relatedTableId, showErrorWhenNoFeatures: false, showInitialLoading: false, textSize: "small", whereClause: commentsListWhereClause })));
1039
1083
  }
1040
1084
  /**
1041
1085
  * Load esri javascript api modules
@@ -1192,7 +1236,6 @@ const FeatureDetails = class {
1192
1236
  * @protected
1193
1237
  */
1194
1238
  onLikeButtonClick() {
1195
- this.loadingStatus.emit(true);
1196
1239
  if (this._isDislikeBtnClicked && this.reportingOptions[this._selectedGraphic.layer.id].dislike) {
1197
1240
  this.onDislikeButtonClick();
1198
1241
  }
@@ -1210,7 +1253,6 @@ const FeatureDetails = class {
1210
1253
  * @protected
1211
1254
  */
1212
1255
  onDislikeButtonClick() {
1213
- this.loadingStatus.emit(true);
1214
1256
  if (this._isLikeBtnClicked && this.reportingOptions[this._selectedGraphic.layer.id].like) {
1215
1257
  this.onLikeButtonClick();
1216
1258
  }
@@ -1232,6 +1274,7 @@ const FeatureDetails = class {
1232
1274
  async updateFeaturesLikeDislikeField(fieldName, buttonClicked) {
1233
1275
  const attributesToUpdate = {};
1234
1276
  const selectedLayer = this._selectedGraphic.layer;
1277
+ this._updating = true;
1235
1278
  //Increment the value if button is clicked or else decrement it
1236
1279
  const selectFeatureAttr = this._selectedGraphic;
1237
1280
  if (buttonClicked) {
@@ -1255,9 +1298,9 @@ const FeatureDetails = class {
1255
1298
  }
1256
1299
  //store the like dislike value for the current selected graphic in local storage
1257
1300
  this.setInLocalStorage();
1258
- this.loadingStatus.emit(false);
1301
+ this._updating = false;
1259
1302
  }, (err) => {
1260
- this.loadingStatus.emit(false);
1303
+ this._updating = false;
1261
1304
  console.log(err);
1262
1305
  });
1263
1306
  }