@esri/solutions-components 0.8.22 → 0.8.24

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 (206) hide show
  1. package/dist/cjs/arcgis-login.cjs.entry.js +1 -1
  2. package/dist/cjs/basemap-gallery_7.cjs.entry.js +1 -1
  3. package/dist/cjs/buffer-tools_3.cjs.entry.js +1 -1
  4. package/dist/cjs/calcite-alert_4.cjs.entry.js +12 -11
  5. package/dist/cjs/{calcite-avatar.cjs.entry.js → calcite-avatar_2.cjs.entry.js} +62 -0
  6. package/dist/cjs/calcite-block_5.cjs.entry.js +12 -3
  7. package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +419 -0
  8. package/dist/cjs/{calcite-dropdown_4.cjs.entry.js → calcite-dropdown_2.cjs.entry.js} +12 -435
  9. package/dist/cjs/calcite-flow_6.cjs.entry.js +25 -29
  10. package/dist/cjs/card-manager_3.cjs.entry.js +9 -3
  11. package/dist/cjs/crowdsource-manager.cjs.entry.js +12 -4
  12. package/dist/cjs/crowdsource-reporter.cjs.entry.js +57 -37
  13. package/dist/cjs/{downloadUtils-2e36a300.js → downloadUtils-5349717a.js} +2 -1
  14. package/dist/cjs/feature-list.cjs.entry.js +11 -6
  15. package/dist/cjs/{helpers-9347ad83.js → helpers-618a3f7d.js} +2 -1
  16. package/dist/cjs/{index.es-56415e48.js → index.es-aa69b58b.js} +1 -1
  17. package/dist/cjs/instant-apps-create.cjs.entry.js +266 -0
  18. package/dist/cjs/instant-apps-export.cjs.entry.js +31 -16
  19. package/dist/cjs/instant-apps-header.cjs.entry.js +3 -2
  20. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +11 -4
  21. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +1 -1
  22. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +1 -1
  23. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +2 -2
  24. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +1 -1
  25. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +45 -9
  26. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +1 -1
  27. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +1 -1
  28. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +168 -0
  29. package/dist/cjs/{languageSwitcher-395021d6.js → languageSwitcher-b9a1485c.js} +3 -1
  30. package/dist/cjs/loader.cjs.js +1 -1
  31. package/dist/cjs/map-select-tools_3.cjs.entry.js +1 -1
  32. package/dist/cjs/{popupUtils-500c1544.js → popupUtils-3e65296c.js} +17 -2
  33. package/dist/cjs/public-notification.cjs.entry.js +4 -4
  34. package/dist/cjs/resources-fa37e40f.js +26 -0
  35. package/dist/cjs/solutions-components.cjs.js +1 -1
  36. package/dist/collection/collection-manifest.json +3 -1
  37. package/dist/collection/components/arcgis-login/arcgis-login.js +1 -1
  38. package/dist/collection/components/basemap-gallery/basemap-gallery.js +1 -1
  39. package/dist/collection/components/buffer-tools/buffer-tools.js +1 -1
  40. package/dist/collection/components/card-manager/card-manager.js +1 -1
  41. package/dist/collection/components/create-feature/create-feature.js +1 -1
  42. package/dist/collection/components/create-related-feature/create-related-feature.js +1 -1
  43. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +30 -8
  44. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +57 -46
  45. package/dist/collection/components/feature-details/feature-details.css +2 -2
  46. package/dist/collection/components/feature-details/feature-details.js +56 -13
  47. package/dist/collection/components/feature-list/feature-list.css +1 -1
  48. package/dist/collection/components/feature-list/feature-list.js +23 -4
  49. package/dist/collection/components/info-card/info-card.js +7 -27
  50. package/dist/collection/components/layer-list/layer-list.js +7 -14
  51. package/dist/collection/components/layer-table/layer-table.js +7 -1
  52. package/dist/collection/components/public-notification/public-notification.js +3 -3
  53. package/dist/collection/demos/crowdsource-manager.html +10 -2
  54. package/dist/collection/demos/crowdsource-reporter.html +22 -15
  55. package/dist/collection/utils/interfaces.ts +1 -0
  56. package/dist/collection/utils/popupUtils.js +17 -2
  57. package/dist/collection/utils/popupUtils.ts +23 -3
  58. package/dist/components/arcgis-login.js +1 -1
  59. package/dist/components/basemap-gallery2.js +1 -1
  60. package/dist/components/buffer-tools2.js +1 -1
  61. package/dist/components/calcite-navigation-user.js +1 -99
  62. package/dist/components/card-manager2.js +1 -1
  63. package/dist/components/consent-manager.js +1 -1
  64. package/dist/components/create-feature2.js +1 -1
  65. package/dist/components/create-related-feature2.js +1 -1
  66. package/dist/components/crowdsource-manager.js +13 -5
  67. package/dist/components/crowdsource-reporter.js +58 -38
  68. package/dist/components/downloadUtils.js +1 -1
  69. package/dist/components/esri-loader.js +1 -1
  70. package/dist/components/feature-details2.js +17 -13
  71. package/dist/components/feature-list2.js +7 -5
  72. package/dist/components/helpers.js +3 -2
  73. package/dist/components/html2canvas.js +1 -1
  74. package/dist/components/index.es.js +2 -2
  75. package/dist/components/info-card2.js +7 -11
  76. package/dist/components/instant-apps-ckeditor-wrapper2.js +1 -1
  77. package/dist/components/instant-apps-create.js +317 -0
  78. package/dist/components/instant-apps-export.js +32 -16
  79. package/dist/components/instant-apps-filter-list2.js +6 -1
  80. package/dist/components/instant-apps-header2.js +3 -2
  81. package/dist/components/instant-apps-interactive-legend-classic2.js +13 -6
  82. package/dist/components/instant-apps-interactive-legend-legend-element-caption2.js +2 -2
  83. package/dist/components/instant-apps-landing-page.js +91 -16
  84. package/dist/components/instant-apps-language-translator2.js +3 -1
  85. package/dist/components/instant-apps-sign-in.js +11 -0
  86. package/dist/components/instant-apps-sign-in2.js +243 -0
  87. package/dist/components/instant-apps-social-share2.js +8 -2
  88. package/dist/components/layer-list2.js +7 -14
  89. package/dist/components/layer-table2.js +7 -1
  90. package/dist/{esm/calcite-navigation-user.entry.js → components/navigation-user.js} +46 -9
  91. package/dist/components/popupUtils.js +17 -2
  92. package/dist/components/public-notification.js +3 -3
  93. package/dist/components/purify.js +1 -1
  94. package/dist/components/solution-resource.js +1 -1
  95. package/dist/esm/arcgis-login.entry.js +1 -1
  96. package/dist/esm/basemap-gallery_7.entry.js +1 -1
  97. package/dist/esm/buffer-tools_3.entry.js +1 -1
  98. package/dist/esm/calcite-alert_4.entry.js +12 -11
  99. package/dist/esm/{calcite-avatar.entry.js → calcite-avatar_2.entry.js} +64 -3
  100. package/dist/esm/calcite-block_5.entry.js +12 -3
  101. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
  102. package/dist/esm/calcite-color-picker.entry.js +1 -1
  103. package/dist/esm/calcite-dropdown-group_2.entry.js +414 -0
  104. package/dist/esm/{calcite-dropdown_4.entry.js → calcite-dropdown_2.entry.js} +2 -423
  105. package/dist/esm/calcite-flow_6.entry.js +25 -29
  106. package/dist/esm/card-manager_3.entry.js +9 -3
  107. package/dist/esm/crowdsource-manager.entry.js +12 -4
  108. package/dist/esm/crowdsource-reporter.entry.js +57 -37
  109. package/dist/esm/{downloadUtils-aab31bfe.js → downloadUtils-5fa0d437.js} +2 -2
  110. package/dist/esm/feature-list.entry.js +11 -6
  111. package/dist/esm/{helpers-a5a81b9d.js → helpers-61b05164.js} +3 -2
  112. package/dist/esm/{index.es-43ba3006.js → index.es-57c15c9b.js} +1 -1
  113. package/dist/esm/instant-apps-create.entry.js +262 -0
  114. package/dist/esm/instant-apps-export.entry.js +31 -16
  115. package/dist/esm/instant-apps-header.entry.js +3 -2
  116. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +11 -4
  117. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +1 -1
  118. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +1 -1
  119. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +2 -2
  120. package/dist/esm/instant-apps-interactive-legend.entry.js +1 -1
  121. package/dist/esm/instant-apps-landing-page.entry.js +46 -10
  122. package/dist/esm/instant-apps-language-switcher.entry.js +1 -1
  123. package/dist/esm/instant-apps-language-translator.entry.js +1 -1
  124. package/dist/esm/instant-apps-sign-in.entry.js +164 -0
  125. package/dist/esm/{languageSwitcher-a4a615e4.js → languageSwitcher-d60f03b2.js} +3 -1
  126. package/dist/esm/loader.js +1 -1
  127. package/dist/esm/map-select-tools_3.entry.js +1 -1
  128. package/dist/esm/{popupUtils-2cc3c366.js → popupUtils-650b6bba.js} +17 -2
  129. package/dist/esm/public-notification.entry.js +4 -4
  130. package/dist/esm/resources-16800cce.js +24 -0
  131. package/dist/esm/solutions-components.js +1 -1
  132. package/dist/esm/{utils-6419e941.js → utils-251cb6de.js} +1 -1
  133. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-create/instant-apps-create.css +150 -0
  134. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-header/instant-apps-header.css +16 -9
  135. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-landing-page/instant-apps-landing-page.css +19 -0
  136. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +98 -0
  137. package/dist/solutions-components/demos/crowdsource-manager.html +10 -2
  138. package/dist/solutions-components/demos/crowdsource-reporter.html +22 -15
  139. package/dist/solutions-components/p-1251dcc6.entry.js +6 -0
  140. package/dist/solutions-components/p-16730f05.entry.js +6 -0
  141. package/dist/solutions-components/p-1ae3b886.entry.js +17 -0
  142. package/dist/solutions-components/p-1ff9eb95.entry.js +6 -0
  143. package/dist/solutions-components/{p-667caa6b.js → p-24bf45b7.js} +1 -1
  144. package/dist/solutions-components/{p-8f6e0ae5.entry.js → p-26eb1225.entry.js} +1 -1
  145. package/dist/solutions-components/{p-3a2e0188.entry.js → p-2c044250.entry.js} +2 -2
  146. package/dist/solutions-components/p-314dc933.entry.js +6 -0
  147. package/dist/solutions-components/p-50741707.entry.js +6 -0
  148. package/dist/solutions-components/p-614ebce7.js +6 -0
  149. package/dist/solutions-components/{p-37fc92db.js → p-6f69de4d.js} +2 -2
  150. package/dist/solutions-components/{p-8cff32bd.entry.js → p-72317f8e.entry.js} +2 -2
  151. package/dist/solutions-components/{p-df73649e.entry.js → p-77cd573b.entry.js} +1 -1
  152. package/dist/solutions-components/{p-c95dcdf7.entry.js → p-7883b885.entry.js} +3 -3
  153. package/dist/solutions-components/p-79e2e203.entry.js +6 -0
  154. package/dist/solutions-components/{p-968a6fd8.entry.js → p-7b17e929.entry.js} +1 -1
  155. package/dist/solutions-components/p-80b3eb6b.entry.js +6 -0
  156. package/dist/solutions-components/p-84913712.js +6 -0
  157. package/dist/solutions-components/p-8c500fd7.entry.js +6 -0
  158. package/dist/solutions-components/{p-54324eaa.entry.js → p-97e343df.entry.js} +1 -1
  159. package/dist/solutions-components/{p-fe9d6d06.js → p-9f56c02c.js} +1 -1
  160. package/dist/solutions-components/p-a1037b19.js +21 -0
  161. package/dist/solutions-components/{p-667c022f.entry.js → p-af4be4ce.entry.js} +1 -1
  162. package/dist/solutions-components/p-bb2e669d.entry.js +6 -0
  163. package/dist/solutions-components/p-c41997d5.js +11 -0
  164. package/dist/solutions-components/p-c512fcfb.entry.js +6 -0
  165. package/dist/solutions-components/{p-21d6360a.entry.js → p-c7f0e7a8.entry.js} +1 -1
  166. package/dist/solutions-components/{p-f6668347.entry.js → p-cbf0dada.entry.js} +3 -3
  167. package/dist/solutions-components/{p-9c7d4343.entry.js → p-cd91c3e7.entry.js} +1 -1
  168. package/dist/solutions-components/p-ceba37d3.entry.js +11 -0
  169. package/dist/solutions-components/{p-09b769b7.entry.js → p-d8a15e32.entry.js} +1 -1
  170. package/dist/solutions-components/p-d8da6406.entry.js +6 -0
  171. package/dist/solutions-components/p-da6b3c8a.entry.js +6 -0
  172. package/dist/solutions-components/{p-60f1055e.entry.js → p-e2400b0d.entry.js} +1 -1
  173. package/dist/solutions-components/p-e78be59a.entry.js +6 -0
  174. package/dist/solutions-components/p-f35cc7ae.entry.js +6 -0
  175. package/dist/solutions-components/solutions-components.esm.js +1 -1
  176. package/dist/solutions-components/utils/interfaces.ts +1 -0
  177. package/dist/solutions-components/utils/popupUtils.ts +23 -3
  178. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +14 -6
  179. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +18 -7
  180. package/dist/types/components/feature-details/feature-details.d.ts +13 -1
  181. package/dist/types/components/feature-list/feature-list.d.ts +4 -0
  182. package/dist/types/components/info-card/info-card.d.ts +0 -4
  183. package/dist/types/components/layer-list/layer-list.d.ts +1 -1
  184. package/dist/types/components.d.ts +36 -16
  185. package/dist/types/preact.d.ts +10 -4
  186. package/dist/types/utils/interfaces.d.ts +1 -0
  187. package/dist/types/utils/popupUtils.d.ts +4 -0
  188. package/package.json +2 -2
  189. package/dist/cjs/calcite-navigation-user.cjs.entry.js +0 -73
  190. package/dist/solutions-components/p-08a1e120.js +0 -6
  191. package/dist/solutions-components/p-3283660c.entry.js +0 -6
  192. package/dist/solutions-components/p-33647277.entry.js +0 -6
  193. package/dist/solutions-components/p-3af0764f.entry.js +0 -6
  194. package/dist/solutions-components/p-48c99a48.entry.js +0 -6
  195. package/dist/solutions-components/p-599dcc29.js +0 -6
  196. package/dist/solutions-components/p-5a740f6c.entry.js +0 -6
  197. package/dist/solutions-components/p-64779bb2.entry.js +0 -6
  198. package/dist/solutions-components/p-64b4b579.entry.js +0 -11
  199. package/dist/solutions-components/p-88f73319.entry.js +0 -6
  200. package/dist/solutions-components/p-ab96dd27.entry.js +0 -6
  201. package/dist/solutions-components/p-bb0c7be3.entry.js +0 -17
  202. package/dist/solutions-components/p-bb8e3add.entry.js +0 -11
  203. package/dist/solutions-components/p-cbe166fc.entry.js +0 -6
  204. package/dist/solutions-components/p-eab95aa4.entry.js +0 -6
  205. package/dist/solutions-components/p-ebf82ce0.js +0 -21
  206. package/dist/solutions-components/p-f43d6a86.entry.js +0 -6
@@ -35,6 +35,7 @@ export class FeatureList {
35
35
  this.whereClause = undefined;
36
36
  this.textSize = "large";
37
37
  this.showInitialLoading = true;
38
+ this.showErrorWhenNoFeatures = true;
38
39
  this._featureItems = [];
39
40
  this._featuresCount = 0;
40
41
  this._isLoading = false;
@@ -102,9 +103,9 @@ export class FeatureList {
102
103
  * Renders the component.
103
104
  */
104
105
  render() {
105
- return (h("calcite-panel", { key: '9f702c6d98cc19704e0773e36fd969817ea7262e', "full-height": true, "full-width": true }, this._isLoading && h("calcite-loader", { key: 'e9acf13f3444057b097d6b145c1a6e0118f150ea', label: "", scale: "m" }), this._featureItems.length === 0 && !this._isLoading &&
106
- h("calcite-notice", { key: '8c7fa89e2da7490b04456e51f8534c2515a02399', class: "error-msg", icon: "feature-details", kind: "info", open: true }, h("div", { key: '799d419e9c26b7928f15cb1cf9afa9f47cab0e94', slot: "message" }, this.noFeaturesFoundMsg ? this.noFeaturesFoundMsg : this._translations.featureErrorMsg)), h("calcite-list", { key: '82c60b16ab586ad57f8f98bb08814f688102b166', "selection-appearance": "border", "selection-mode": "none" }, !this._isLoading && this._featureItems.length > 0 && this._featureItems), this._featuresCount > this.pageSize &&
107
- h("div", { key: 'e5b789ea46c6bedfbe83f1323ffb89271c0b76ce', class: "width-full", slot: "footer" }, h("calcite-pagination", { key: '4d30b5364fc4742f278157c5f2c21e75d4ecb0b8', class: "pagination", "full-width": true, onCalcitePaginationChange: this.pageChanged.bind(this), "page-size": this.pageSize, ref: el => this._pagination = el, "start-item": "1", "total-items": this._featuresCount }))));
106
+ return (h("calcite-panel", { key: '6184d07592669fd8884996475b7eeb26e0604790', "full-height": true, "full-width": true }, this._isLoading && h("calcite-loader", { key: '282127215213a28b9cfdf484aaf5730145b6bb55', label: "", scale: "m" }), this.showErrorWhenNoFeatures && this._featureItems.length === 0 && !this._isLoading &&
107
+ h("calcite-notice", { key: '25fcfeb1d19a089b092050515c3d69401bc17dc8', class: "error-msg", icon: "feature-details", kind: "info", open: true }, h("div", { key: '2ac81a338df9d0e0f43c659a24be0c9b7b95d027', slot: "message" }, this.noFeaturesFoundMsg ? this.noFeaturesFoundMsg : this._translations.featureErrorMsg)), h("calcite-list", { key: '70453e8ded4f859076a5f00d8f04152cd78278d8', "selection-appearance": "border", "selection-mode": "none" }, !this._isLoading && this._featureItems.length > 0 && this._featureItems), this._featuresCount > this.pageSize &&
108
+ h("div", { key: 'db1003ace54cd599acefad04e94fe54248327126', class: "width-full", slot: "footer" }, h("calcite-pagination", { key: '67764a051381b0e7ef26dbd16dc9226d7e152c20', class: "pagination", "full-width": true, onCalcitePaginationChange: this.pageChanged.bind(this), "page-size": this.pageSize, ref: el => this._pagination = el, "start-item": "1", "total-items": this._featuresCount }))));
108
109
  }
109
110
  //--------------------------------------------------------------------------
110
111
  //
@@ -280,7 +281,7 @@ export class FeatureList {
280
281
  //use object id if popupTitle is null or undefined
281
282
  popupTitle = popupTitle !== null && popupTitle !== void 0 ? popupTitle : oId;
282
283
  const popupTitleClass = this.textSize === 'small' ? 'feature-list-popup-title-small' : 'feature-list-popup-title';
283
- return (h("calcite-list-item", { onCalciteListItemSelect: (e) => { void this.featureClicked(e, selectedFeature); }, onMouseLeave: () => { void this.clearHighlights(); }, onMouseOver: () => { void this.onFeatureHover(selectedFeature); }, value: oId }, h("div", { class: popupTitleClass, slot: "content-start" }, popupTitle), h("calcite-icon", { icon: "chevron-right", scale: "s", slot: "content-end" })));
284
+ return (h("calcite-list-item", { onCalciteListItemSelect: (e) => { void this.featureClicked(e, selectedFeature); }, onMouseLeave: () => { void this.clearHighlights(); }, onMouseOver: () => { void this.onFeatureHover(selectedFeature); }, value: oId }, h("div", { class: popupTitleClass, slot: "content-start" }, popupTitle), h("calcite-icon", { flipRtl: true, icon: "chevron-right", scale: "s", slot: "content-end" })));
284
285
  }
285
286
  /**
286
287
  * Fetches the component's translations
@@ -485,6 +486,24 @@ export class FeatureList {
485
486
  "attribute": "show-initial-loading",
486
487
  "reflect": false,
487
488
  "defaultValue": "true"
489
+ },
490
+ "showErrorWhenNoFeatures": {
491
+ "type": "boolean",
492
+ "mutable": false,
493
+ "complexType": {
494
+ "original": "boolean",
495
+ "resolved": "boolean",
496
+ "references": {}
497
+ },
498
+ "required": false,
499
+ "optional": true,
500
+ "docs": {
501
+ "tags": [],
502
+ "text": "boolean: If true will show error msg when features are not present"
503
+ },
504
+ "attribute": "show-error-when-no-features",
505
+ "reflect": false,
506
+ "defaultValue": "true"
488
507
  }
489
508
  };
490
509
  }
@@ -32,7 +32,6 @@ export class InfoCard {
32
32
  this.isLoading = false;
33
33
  this.isMobile = undefined;
34
34
  this.mapView = undefined;
35
- this.zoomAndScrollToSelected = undefined;
36
35
  this.allowEditing = true;
37
36
  this.highlightEnabled = true;
38
37
  this.paginationEnabled = true;
@@ -185,8 +184,8 @@ export class InfoCard {
185
184
  const id = (_d = (_c = this._features) === null || _c === void 0 ? void 0 : _c.selectedFeature) === null || _d === void 0 ? void 0 : _d.getObjectId();
186
185
  const ids = parseInt(id === null || id === void 0 ? void 0 : id.toString(), 10) > -1 ? [id] : [];
187
186
  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);
188
- return (h(Host, { key: '7b48c1dbd2c4e384c4bcba62a8cf35e4c62d2edb' }, h("calcite-shell", { key: 'a8387dfb3968ea07182cdd782a5a147bdcb1188a', style: { position: this.position } }, this._getHeader(), h("calcite-loader", { key: '1695d423a19876c6ccde5f4004f21ca26e305350', class: loadingClass, label: this._translations.fetchingData }), h("div", { key: 'd8870e95ba06ed713c5143c5b260ee4059275d81', class: "esri-widget feature-node " + featureNodeClass, id: this._featuresNodeId }), h("div", { key: '84af335caa0f39890801faebc207bf8c794fe1e3', class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
189
- h("div", { key: 'fa91c18424af38067c44e50635b9af55aacc84b8', class: "display-flex top-border padding-1-2" }, h("calcite-button", { key: 'c4565bda374ab4eb2afd2273c62256fae187d151', appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, h("calcite-tooltip", { key: '7175a74e7e1db0939fbbe4a229e7f6df6efb2768', placement: "bottom", "reference-element": "solutions-edit" }, h("span", { key: '6443c4d8274fe6003f5dcbd3b36f35057234c550' }, this._translations.edit)), this.isMobile ? (h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && h("div", { key: 'ff3d3dffd57bf118f7e71ec5a504bbcfda0de229', class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, h("div", { key: '1912bdf3dbad45ba66acf13ef8ad6894ced8caa2' }, h("calcite-button", { key: 'fe1e5032b764b3c0ac8ef619c9d365f8d781d6b3', appearance: 'transparent', disabled: nextBackDisabled, iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), h("calcite-tooltip", { key: 'a9928e72cc3dcebad2544ee5a347a0b70ebdae4b', placement: "top", "reference-element": "solutions-back" }, h("span", { key: '6d8cc94ae72deab6ae19d3314f5b0f7e1833bd3c' }, this._translations.back))), h("calcite-action", { key: '90d7951f0eacd4b77f8ebe3da79a12665a8b9f63', class: 'pagination-action', onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, h("span", { key: '6c36eb43691a79b6a7c0da99663fa22c1d97e572', class: "pagination-count" }, this._count)), h("div", { key: '23758504ca1b4b97c4c488e88e61f0c3cdc10830' }, h("calcite-button", { key: '93efeff6e0cb54edd1817c3410806b009755618f', appearance: "transparent", disabled: nextBackDisabled, iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), h("calcite-tooltip", { key: '17afd49a3b167d9322d944a9d8ae6ffc249d202e', placement: "top", "reference-element": "solutions-next" }, h("span", { key: '0b15e569313961c53700d2ef6eb148b9c0efd778' }, this._translations.next))))), h("edit-card", { key: '2217a66105095ea1e5bd577dc8bf970b3fdeae10', class: editClass, graphicIndex: (_j = this._features) === null || _j === void 0 ? void 0 : _j.selectedFeatureIndex, graphics: this.graphics, mapView: this.mapView, open: this._editRecordOpen }), h("calcite-alert", { key: 'c59bd8d759ef1df763b3bbe513b7146cfa270057', icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, h("div", { key: '3733d543e7483037aa5130f0ca06f8da434eaf7e', slot: "title" }, this._translations.editDisabled), h("div", { key: 'eaace9548fd442015000f836d54e556c9859a3fc', slot: "message" }, this._translations.enableEditing)))));
187
+ return (h(Host, { key: 'ab22ed392db6e8bad11758f39d6bd1738c10a229' }, h("calcite-shell", { key: 'f97bdc21cb5e667b1973353a45297f9536252fcd', style: { position: this.position } }, this._getHeader(), h("calcite-loader", { key: '82b78360be903de1be044406735db84122399f49', class: loadingClass, label: this._translations.fetchingData }), h("div", { key: '168d0310daf7eca08c4891283b8a9865eda102bc', class: "esri-widget feature-node " + featureNodeClass, id: this._featuresNodeId }), h("div", { key: '258b913cfdc4f1269dcc250a473643878d97f8bd', class: `${editButtonClass} width-100`, slot: "footer" }, this.allowEditing &&
188
+ h("div", { key: 'c6fd569640410dd3a106f27f49eb6553c9ea0167', class: "display-flex top-border padding-1-2" }, h("calcite-button", { key: '3dbe007feb1104d53c47298ae1308c776e3ec5cf', appearance: "solid", id: "solutions-edit", onClick: () => this._openEditRecord(), width: "full" }, this._translations.edit), this.isMobile && deleteEnabled ? (h("delete-button", { class: "padding-inline-start-1 width-100", id: "solutions-delete", ids: ids, layer: this._layer, onEditsComplete: () => this._closePopup() })) : undefined, h("calcite-tooltip", { key: '094e52e8d2945125096856a8c5249babdbbd1eec', placement: "bottom", "reference-element": "solutions-edit" }, h("span", { key: 'da9edbf6bdb39ce1a287894287d69f2767bb18de' }, this._translations.edit)), this.isMobile ? (h("calcite-tooltip", { placement: "bottom", "reference-element": "solutions-delete" }, h("span", null, this._translations.delete))) : undefined), this.paginationEnabled && !nextBackDisabled && h("div", { key: '5badbe8009a3a64e3b471ce4e63f4a7d2ae68acc', class: `display-flex padding-1-2 button-container top-border ${nextBackClass}` }, h("div", { key: '17b287e0f0405ead48a9460423e5371e102de38a' }, h("calcite-button", { key: '4277d8e56528475c5cea369811c9c3c8a0cdd5c7', appearance: 'transparent', disabled: nextBackDisabled, iconStart: "chevron-left", id: "solutions-back", onClick: () => this._back(), width: "full" }), h("calcite-tooltip", { key: 'c8ee8c81d9de098290f35075b0c6ac3ee2f46afc', placement: "top", "reference-element": "solutions-back" }, h("span", { key: '3321af9ca1a78efe28249872be05433d9d79f51b' }, this._translations.back))), h("calcite-action", { key: '5ce96bff1e1e1bd77f364d8ceb297e0db7453a29', class: 'pagination-action', onClick: () => this._toggleListView(), scale: "s", text: "", textEnabled: true }, h("span", { key: 'd558026468f5aeb0797efcfa1843f515fed2b451', class: "pagination-count" }, this._count)), h("div", { key: '52fd57812fda98ad244a1f60aa4ec2f31efce78d' }, h("calcite-button", { key: '3582c2ea725fe9eb36f1846fbb06acaedcb3ebe1', appearance: "transparent", disabled: nextBackDisabled, iconStart: "chevron-right", id: "solutions-next", onClick: () => this._next(), width: "full" }), h("calcite-tooltip", { key: '1212e990b6ae4e7979f2a1571b461cf063e55b9d', placement: "top", "reference-element": "solutions-next" }, h("span", { key: '2284b042fdfeebc86441119c404c5905fb84f367' }, this._translations.next))))), 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 }), h("calcite-alert", { key: '1927a41a8c9fbb6373490d554cf8128a93fe8e71', icon: "layer-broken", kind: "warning", label: "", onCalciteAlertClose: () => this._alertClosed(), open: this._alertOpen, placement: "top" }, h("div", { key: '33ba87f5b72019c2795fe12485aa51429115b74d', slot: "title" }, this._translations.editDisabled), h("div", { key: 'd45970a653b416bbdd5e5b97040b23e54eaf98a5', slot: "message" }, this._translations.enableEditing)))));
190
189
  }
191
190
  //--------------------------------------------------------------------------
192
191
  //
@@ -259,13 +258,11 @@ export class InfoCard {
259
258
  this._showListView = isOpen;
260
259
  }
261
260
  });
262
- if (this.zoomAndScrollToSelected) {
263
- this.reactiveUtils.watch(() => this._features.selectedFeatureIndex, (i) => {
264
- if (i > -1) {
265
- this.selectionChanged.emit({ selectedFeature: [this._features.selectedFeature], selectedFeatureIndex: this._features.selectedFeatureIndex });
266
- }
267
- });
268
- }
261
+ this.reactiveUtils.watch(() => this._features.selectedFeatureIndex, (i) => {
262
+ if (i > -1) {
263
+ this.selectionChanged.emit({ selectedFeature: [this._features.selectedFeature], selectedFeatureIndex: this._features.selectedFeatureIndex });
264
+ }
265
+ });
269
266
  }
270
267
  else {
271
268
  this._features.view = this.mapView;
@@ -445,23 +442,6 @@ export class InfoCard {
445
442
  "text": "esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html"
446
443
  }
447
444
  },
448
- "zoomAndScrollToSelected": {
449
- "type": "boolean",
450
- "mutable": false,
451
- "complexType": {
452
- "original": "boolean",
453
- "resolved": "boolean",
454
- "references": {}
455
- },
456
- "required": false,
457
- "optional": false,
458
- "docs": {
459
- "tags": [],
460
- "text": "boolean: When true the selected feature will zoomed to in the map and the row will be scrolled to within the table"
461
- },
462
- "attribute": "zoom-and-scroll-to-selected",
463
- "reflect": false
464
- },
465
445
  "allowEditing": {
466
446
  "type": "boolean",
467
447
  "mutable": false,
@@ -74,9 +74,9 @@ export class LayerList {
74
74
  * Renders the component.
75
75
  */
76
76
  render() {
77
- return (h(Fragment, { key: 'c73bf36c13fed8120273d8a5321dd60fe4d4b5f4' }, this._isLoading && h("calcite-loader", { key: 'e748d9cc7d1855d3a2da34702ba853d35d1a2cde', label: "", scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay &&
78
- h("calcite-notice", { key: '4a06b7694fd91456ee5cdc51d33e4ac633d416b2', class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { key: '63b09f02312aba71826957c5b2c04a7750bdfca1', slot: "title" }, this._translations.error), h("div", { key: '5a19dfe527a6c66a5477a4c6a14f4686cde73bb3', slot: "message" }, this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
79
- h("calcite-list", { key: 'e8a6170a55f4ba6ea35a1397690c3e365b814886', "selection-appearance": "border", "selection-mode": "none" }, this.renderLayerList())));
77
+ return (h(Fragment, { key: '9366302a704c1dbdd7a65aef5c43d0ad84a44b23' }, this._isLoading && h("calcite-loader", { key: '69974a23fd42bc37ef13816efbe6d06e28cb2749', label: "", scale: "m" }), !this._isLoading && this.mapView && this._noLayersToDisplay &&
78
+ h("calcite-notice", { key: 'a93abb55b4db09727b3634cb1935e482c377d662', class: "error-msg", icon: "layers-reference", kind: "danger", open: true }, h("div", { key: 'b9046685353b8894e6c6094cff47fab7a8e07ffa', slot: "title" }, this._translations.error), h("div", { key: '90a052e1d80779a09a32fdd35563a1ce21d582e0', slot: "message" }, this._translations.noLayerToDisplayErrorMsg)), !this._isLoading && this.mapView &&
79
+ h("calcite-list", { key: '709c1b8edd5710a2476ecef638199c2f929b4165', "selection-appearance": "border", "selection-mode": "none" }, this.renderLayerList())));
80
80
  }
81
81
  //--------------------------------------------------------------------------
82
82
  //
@@ -104,10 +104,7 @@ export class LayerList {
104
104
  const allMapLayers = await getAllLayers(this.mapView);
105
105
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
106
106
  allMapLayers.forEach(async (eachLayer) => {
107
- var _a, _b;
108
- //TODO: checking editable condition could be configurable
109
- if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature" && (eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.editingEnabled) && ((_b = (_a = eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.capabilities) === null || _a === void 0 ? void 0 : _a.operations) === null || _b === void 0 ? void 0 : _b.supportsAdd)) {
110
- this._layerItemsHash[eachLayer.id].supportsAdd = true;
107
+ if ((eachLayer === null || eachLayer === void 0 ? void 0 : eachLayer.type) === "feature") {
111
108
  if (this.showFeatureCount) {
112
109
  const q = eachLayer.createQuery();
113
110
  const result = eachLayer.queryFeatureCount(q);
@@ -140,7 +137,7 @@ export class LayerList {
140
137
  this.layersListLoaded.emit(this._mapLayerIds);
141
138
  }
142
139
  /**
143
- * Returns the ids of all OR configured layers that needs to be shown in the list
140
+ * Returns the ids of configured layers that needs to be shown in the list
144
141
  * @param hash each layer item details
145
142
  * @returns array of layer ids
146
143
  */
@@ -148,11 +145,7 @@ export class LayerList {
148
145
  var _a;
149
146
  const configuredLayers = ((_a = this.layers) === null || _a === void 0 ? void 0 : _a.length) > 0 ? this.layers : [];
150
147
  return Object.keys(hash).reduce((prev, cur) => {
151
- let showLayer = true;
152
- if ((configuredLayers === null || configuredLayers === void 0 ? void 0 : configuredLayers.length) > 0) {
153
- showLayer = configuredLayers.indexOf(cur) > -1;
154
- }
155
- if (showLayer) {
148
+ if (configuredLayers.indexOf(cur) > -1) {
156
149
  prev.push(cur);
157
150
  }
158
151
  return prev;
@@ -180,7 +173,7 @@ export class LayerList {
180
173
  getLayerListItem(layerId) {
181
174
  const layerName = this._layerItemsHash[layerId].name;
182
175
  const featureCount = this._layerItemsHash[layerId].formattedFeatureCount;
183
- return (h("calcite-list-item", { onCalciteListItemSelect: () => { this.onLayerItemSelected(layerId); } }, h("div", { class: "layer-name", slot: "content-start" }, layerName), this.showFeatureCount && featureCount !== undefined && featureCount !== "" && h("div", { class: !this.showNextIcon ? "feature-count" : "", slot: "content-end" }, "(" + featureCount + ")"), this.showNextIcon && h("calcite-icon", { icon: "chevron-right", scale: "s", slot: "content-end" })));
176
+ return (h("calcite-list-item", { onCalciteListItemSelect: () => { this.onLayerItemSelected(layerId); } }, h("div", { class: "layer-name", slot: "content-start" }, layerName), this.showFeatureCount && featureCount !== undefined && featureCount !== "" && h("div", { class: !this.showNextIcon ? "feature-count" : "", slot: "content-end" }, "(" + featureCount + ")"), this.showNextIcon && h("calcite-icon", { flipRtl: true, icon: "chevron-right", scale: "s", slot: "content-end" })));
184
177
  }
185
178
  /**On click of layer list item emit the event along with the selected layerId and layerName
186
179
  * @param layerId Layer id
@@ -224,6 +224,12 @@ export class LayerTable {
224
224
  async selectionChanged(evt) {
225
225
  const g = evt.detail.selectedFeature[0];
226
226
  const oid = g.getObjectId();
227
+ //Highlight the current selected feature in the table using rowHighlightIds
228
+ const table = this._table;
229
+ if (table.rowHighlightIds.length) {
230
+ table.rowHighlightIds.removeAll();
231
+ }
232
+ table.rowHighlightIds.add(oid);
227
233
  if (this.zoomAndScrollToSelected) {
228
234
  const i = this._table.viewModel.getObjectIdIndex(oid);
229
235
  this._table.scrollToIndex(i);
@@ -308,7 +314,7 @@ export class LayerTable {
308
314
  const selected = this.selectedIds.length.toString();
309
315
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
310
316
  this._validateActiveActions();
311
- return (h(Host, { key: 'a8110680363000bcec4eb6f0b4a94ee2f677dcca' }, h("calcite-shell", { key: '3c4471daca709db284ede134712933ada2213bdd' }, this._getTableControlRow("header"), h("div", { key: 'fce44e957e4490d6fd9cbcff02beec8cf1a780f4', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'e75572b0f313f99489268f6d63b27b78c8722331', class: "height-full width-full" }, h("calcite-loader", { key: '2a34bd84408d1aff552f2818976e03c487443215', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '0823308992c61fa803cf5a526d903b629327c251', class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
317
+ return (h(Host, { key: '92b88fc87d2c0a0eaaef9587d2324a63665b1cc2' }, h("calcite-shell", { key: 'fcc7190ee18fe6f20ab08a5331a8bcd2c9c83c74' }, this._getTableControlRow("header"), h("div", { key: 'be1a282eb23580b8f713f27fe198bab1c18ba689', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'd5ef6c04334f48c26f01b61f587370c0ee58682f', class: "height-full width-full" }, h("calcite-loader", { key: 'b31c1977446ed6ca47e96a7a47673e03f938265e', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '07ce4a7741dc0197816f04e57c5d32cbc5666f0e', class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
312
318
  .replace("{{total}}", total)
313
319
  .replace("{{selected}}", selected))) : undefined)), this._filterModal()));
314
320
  }
@@ -529,7 +529,7 @@ export class PublicNotification {
529
529
  _getExportPage() {
530
530
  const hasSelections = this._hasSelections(this.showRefineSelection);
531
531
  const displayDuplicatesClass = this._numDuplicates > 0 ? "display-block" : "display-none";
532
- return (h("calcite-panel", null, h("div", null, this._getLabel(this._translations.export, false), hasSelections ? (h("div", null, this._getNotice(this._translations.exportTip, "padding-sides-1"), this._getLabel(this._translations.exportListsLabel), this._getExportSelectionLists(), h("div", { class: "padding-sides-1 " + displayDuplicatesClass }, h("div", { class: "display-flex" }, h("calcite-label", { layout: "inline" }, h("calcite-checkbox", { ref: (el) => { this._removeDuplicates = el; } }), h("div", { class: "display-flex" }, this._translations.removeDuplicate, h("div", { class: "info-message padding-start-1-2" }, h("calcite-input-message", { class: "info-blue margin-top-0", scale: "m" }, ` ${this._translations.numDuplicates.replace("{{n}}", this._numDuplicates.toString())}`)))), h("calcite-icon", { class: "padding-start-1-2 icon", icon: "question", id: "remove-duplicates-icon", scale: "s" })), h("calcite-popover", { closable: true, label: "", referenceElement: "remove-duplicates-icon" }, h("span", { class: "tooltip-message" }, this._translations.duplicatesTip))), h("div", { class: "border-bottom" }), h("div", { class: "padding-top-sides-1" }, h("calcite-segmented-control", { class: "w-100", onCalciteSegmentedControlChange: (evt) => this._exportTypeChange(evt), width: "full" }, h("calcite-segmented-control-item", { checked: this._exportType === EExportType.PDF, class: "w-50 end-border", value: EExportType.PDF }, h("span", { class: "font-weight-500" }, this._translations.pdf)), h("calcite-segmented-control-item", { checked: this._exportType === EExportType.CSV, class: "w-50", value: EExportType.CSV }, h("span", { class: "font-weight-500" }, this._translations.csv)))), h("div", { class: "padding-bottom-1" }, this._getExportOptions()), h("div", { class: "padding-1 display-flex" }, h("calcite-button", { disabled: (!this._downloadActive || this._fetchingData) || (!this._addMap && !this._addResults), loading: this._fetchingData, onClick: () => void this._export(), width: "full" }, h("span", { class: "font-weight-500" }, this._translations.export))))) : (this._getNotice(this._translations.downloadNoLists, "padding-sides-1 padding-bottom-1")))));
532
+ return (h("calcite-panel", null, h("div", null, this._getLabel(this._translations.export, false), hasSelections ? (h("div", null, this._getNotice(this._translations.exportTip, "padding-sides-1"), this._getLabel(this._translations.exportListsLabel), this._getExportSelectionLists(), h("div", { class: "padding-sides-1 " + displayDuplicatesClass }, h("div", { class: "display-flex" }, h("calcite-label", { layout: "inline" }, h("calcite-checkbox", { ref: (el) => { this._removeDuplicates = el; } }), h("div", { class: "display-flex" }, this._translations.removeDuplicate, h("div", { class: "info-message padding-start-1-2" }, h("calcite-input-message", { class: "info-blue margin-top-0", scale: "m" }, ` ${this._translations.numDuplicates.replace("{{n}}", this._numDuplicates.toString())}`)))), h("calcite-icon", { class: "padding-start-1-2 icon", flipRtl: true, icon: "question", id: "remove-duplicates-icon", scale: "s" })), h("calcite-popover", { closable: true, label: "", referenceElement: "remove-duplicates-icon" }, h("span", { class: "tooltip-message" }, this._translations.duplicatesTip))), h("div", { class: "border-bottom" }), h("div", { class: "padding-top-sides-1" }, h("calcite-segmented-control", { class: "w-100", onCalciteSegmentedControlChange: (evt) => this._exportTypeChange(evt), width: "full" }, h("calcite-segmented-control-item", { checked: this._exportType === EExportType.PDF, class: "w-50 end-border", value: EExportType.PDF }, h("span", { class: "font-weight-500" }, this._translations.pdf)), h("calcite-segmented-control-item", { checked: this._exportType === EExportType.CSV, class: "w-50", value: EExportType.CSV }, h("span", { class: "font-weight-500" }, this._translations.csv)))), h("div", { class: "padding-bottom-1" }, this._getExportOptions()), h("div", { class: "padding-1 display-flex" }, h("calcite-button", { disabled: (!this._downloadActive || this._fetchingData) || (!this._addMap && !this._addResults), loading: this._fetchingData, onClick: () => void this._export(), width: "full" }, h("span", { class: "font-weight-500" }, this._translations.export))))) : (this._getNotice(this._translations.downloadNoLists, "padding-sides-1 padding-bottom-1")))));
533
533
  }
534
534
  /**
535
535
  * Store the user selected export type CSV || PDF
@@ -550,7 +550,7 @@ export class PublicNotification {
550
550
  const graphicsOptionsClass = this._addMap ? "display-flex" : "display-none";
551
551
  const title = this._titleValue ? this._titleValue : this.defaultExportTitle ? this.defaultExportTitle : "";
552
552
  const formatOptionsClass = this._addResults ? "" : "display-none";
553
- return (h("div", { class: displayClass }, this._getLabel(this._translations.pdfOptions, true), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addResults, onCalciteCheckboxChange: () => this._addResults = !this._addResults }), this._translations.addResults)), h("div", { class: `padding-top-sides-1 ${formatOptionsClass}` }, h("calcite-label", { class: "label-margin-0" }, this._translations.selectPDFLabelOption)), h("div", { class: `padding-sides-1 ${formatOptionsClass}` }, h("pdf-download", { defaultNumLabelsPerPage: parseInt(this.defaultNumLabelsPerPage.toString(), 10), disabled: !this._downloadActive, ref: (el) => { this._downloadTools = el; } })), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addTitle, onCalciteCheckboxChange: () => this._addTitle = !this._addTitle }), this._translations.title)), h("div", { class: titleOptionsClass }, this._getLabel(this._translations.title, true, ""), h("calcite-input-text", { class: "padding-sides-1", onCalciteInputTextInput: () => this._changeTitle(), placeholder: this._translations.titlePlaceholder, ref: (el) => { this._titleElement = el; }, value: title })), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addMap, onCalciteCheckboxChange: () => this._handleAddMapChange() }), this._translations.includeMap)), h("div", { class: `padding-top-sides-1 ${graphicsOptionsClass}` }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._exportGraphics, onCalciteCheckboxChange: () => this._handleExportGraphicsChange() }), this._translations.listGraphics), h("calcite-icon", { class: "padding-start-1-2 icon", icon: "question", id: "list-graphics-icon", scale: "s" }), h("calcite-popover", { closable: true, label: "", referenceElement: "list-graphics-icon" }, h("span", { class: "tooltip-message" }, this._translations.listGraphicsTip)))));
553
+ return (h("div", { class: displayClass }, this._getLabel(this._translations.pdfOptions, true), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addResults, onCalciteCheckboxChange: () => this._addResults = !this._addResults }), this._translations.addResults)), h("div", { class: `padding-top-sides-1 ${formatOptionsClass}` }, h("calcite-label", { class: "label-margin-0" }, this._translations.selectPDFLabelOption)), h("div", { class: `padding-sides-1 ${formatOptionsClass}` }, h("pdf-download", { defaultNumLabelsPerPage: parseInt(this.defaultNumLabelsPerPage.toString(), 10), disabled: !this._downloadActive, ref: (el) => { this._downloadTools = el; } })), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addTitle, onCalciteCheckboxChange: () => this._addTitle = !this._addTitle }), this._translations.title)), h("div", { class: titleOptionsClass }, this._getLabel(this._translations.title, true, ""), h("calcite-input-text", { class: "padding-sides-1", onCalciteInputTextInput: () => this._changeTitle(), placeholder: this._translations.titlePlaceholder, ref: (el) => { this._titleElement = el; }, value: title })), h("div", { class: "padding-top-sides-1" }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._addMap, onCalciteCheckboxChange: () => this._handleAddMapChange() }), this._translations.includeMap)), h("div", { class: `padding-top-sides-1 ${graphicsOptionsClass}` }, h("calcite-label", { class: "label-margin-0", layout: "inline" }, h("calcite-checkbox", { checked: this._exportGraphics, onCalciteCheckboxChange: () => this._handleExportGraphicsChange() }), this._translations.listGraphics), h("calcite-icon", { class: "padding-start-1-2 icon", flipRtl: true, icon: "question", id: "list-graphics-icon", scale: "s" }), h("calcite-popover", { closable: true, label: "", referenceElement: "list-graphics-icon" }, h("span", { class: "tooltip-message" }, this._translations.listGraphicsTip)))));
554
554
  }
555
555
  /**
556
556
  * Toggle the _addMap state variable and update the graphics on the map
@@ -846,7 +846,7 @@ export class PublicNotification {
846
846
  * @protected
847
847
  */
848
848
  _getAction(enabled, icon, text, onClick, indicator = false, slot = "") {
849
- return (h("calcite-action", { disabled: !enabled, icon: icon, indicator: indicator, onClick: onClick, slot: slot, text: text }));
849
+ return (h("calcite-action", { disabled: !enabled, icon: icon, iconFlipRtl: true, indicator: indicator, onClick: onClick, slot: slot, text: text }));
850
850
  }
851
851
  /**
852
852
  * Store the number of selected features and if it's more than one enable save
@@ -45,11 +45,17 @@
45
45
  // });
46
46
 
47
47
  function infoIconButtonClick(evt) {
48
- }
48
+ console.log('Introduction window button clicked')
49
+ }
50
+
51
+ function coverPageIconButtonClick() {
52
+ console.log('cover page button clicked')
53
+ }
49
54
 
50
55
  function addValues() {
51
56
  const demo = document.getElementById("demo");
52
- demo.addEventListener('infoIconButtonClick', infoIconButtonClick);
57
+ demo.addEventListener('showIntroductionWindow', infoIconButtonClick);
58
+ demo.addEventListener('showCoverPage', coverPageIconButtonClick);
53
59
  let headerSet = false;
54
60
  let custom = [];
55
61
  var vars = window.location.search.substring(1).split('&');
@@ -204,6 +210,8 @@
204
210
  }]
205
211
  ];
206
212
  demo.hideMapOnLoad = false;
213
+ //demo.coverPageEnabled = true;
214
+ demo.introductionWindowEnabled = true;
207
215
  }
208
216
  </script>
209
217
  </head>
@@ -140,10 +140,10 @@
140
140
  //id: "c720e337ff814fe4a83bc244c46f8e43" //15 Layers
141
141
  //id: "f5186c798b9e40dab1078658ddbc28cf" // 30K features
142
142
  //id: "dda88d905a6748a5ab46bea5be795f33" // screening layers
143
- id: "b5bdcb1e5d684dd3b21a2d44b8e4f928" //Popup content + like dislike
143
+ //id: "b5bdcb1e5d684dd3b21a2d44b8e4f928" //Popup content + like dislike
144
144
  //id: "d399ec39959a4aac8617ae4f05dd6785" //Arcade
145
145
  //id: "024e8a5e73a34c5aade9632d651c5750" //Attachments
146
- //id: "ae6d5d1936e84ce7adde44c7a7908846" //like dislike
146
+ id: "ae6d5d1936e84ce7adde44c7a7908846" //like dislike
147
147
  // id: "ce3dec81bf714d3bb71da9691ab686d1" //Filter
148
148
  }
149
149
  const webMap = new WebMap({
@@ -219,7 +219,8 @@
219
219
  like: false,
220
220
  likeField: "Like_field",
221
221
  dislike: false,
222
- dislikeField: "Dislike_field"
222
+ dislikeField: "Dislike_field",
223
+ visible: false
223
224
  },
224
225
  "18cdb191817-layer-5": {
225
226
  reporting: true,
@@ -227,7 +228,8 @@
227
228
  like: true,
228
229
  likeField: "Like_field",
229
230
  dislike: true,
230
- dislikeField: "Dislike_field"
231
+ dislikeField: "Dislike_field",
232
+ visible: false
231
233
  },
232
234
  "18f056682a4-layer-12":{
233
235
  reporting: true,
@@ -235,41 +237,46 @@
235
237
  like: true,
236
238
  likeField: "shrt",
237
239
  dislike: false,
238
- dislikeField: "dislike_field"
240
+ dislikeField: "dislike_field",
241
+ visible: true
239
242
  },
240
- "18f2a1562a8-layer-7": {
243
+ "18f2a1562a5-layer-3": {
241
244
  reporting: true,
242
245
  comment: true,
243
246
  like: true,
244
247
  likeField: "like_field",
245
248
  dislike: true,
246
- dislikeField: "dislike_field"
249
+ dislikeField: "dislike_field",
250
+ visible: true
247
251
  },
248
- "18f2a1562a5-layer-3": {
252
+ "18f2a1562a7-layer-4": {
249
253
  reporting: true,
250
254
  comment: true,
251
255
  like: true,
252
256
  likeField: "like_field",
253
257
  dislike: true,
254
- dislikeField: "dislike_field"
258
+ dislikeField: "dislike_field",
259
+ visible: true
255
260
  },
256
- "18f2a1562a7-layer-4": {
257
- reporting: true,
261
+ "18f2a1562a7-layer-5": {
262
+ reporting: false,
258
263
  comment: true,
259
264
  like: true,
260
265
  likeField: "like_field",
261
266
  dislike: true,
262
- dislikeField: "dislike_field"
267
+ dislikeField: "dislike_field",
268
+ visible: true
263
269
  },
264
- "18f2a1562a7-layer-5": {
270
+ "18f2a1562a8-layer-6": {
265
271
  reporting: true,
266
272
  comment: true,
267
273
  like: true,
268
274
  likeField: "like_field",
269
275
  dislike: true,
270
- dislikeField: "dislike_field"
276
+ dislikeField: "dislike_field",
277
+ visible: true
271
278
  },
272
- "18f2a1562a8-layer-6": {
279
+ "18f2a1562a8-layer-7": {
273
280
  reporting: true,
274
281
  comment: true,
275
282
  like: true,
@@ -589,6 +589,7 @@ export interface IReportingOption {
589
589
  likeField?: string;
590
590
  dislike: boolean;
591
591
  dislikeField?: string;
592
+ visible: boolean;
592
593
  }
593
594
 
594
595
  export interface ISortingInfo {
@@ -18,6 +18,7 @@
18
18
  * See the License for the specific language governing permissions and
19
19
  * limitations under the License.
20
20
  */
21
+ import { _prepareAttributeValue } from "./downloadUtils";
21
22
  import { loadModules } from "./loadModules";
22
23
  export class PopupUtils {
23
24
  /**
@@ -39,6 +40,7 @@ export class PopupUtils {
39
40
  }
40
41
  const layer = graphic.layer;
41
42
  const popupTitle = this._removeTags((_a = layer === null || layer === void 0 ? void 0 : layer.popupTemplate) === null || _a === void 0 ? void 0 : _a.title);
43
+ //resolve arcade expression from the popup title
42
44
  if (popupTitle.includes("{expression/expr") && ((_b = layer === null || layer === void 0 ? void 0 : layer.popupTemplate) === null || _b === void 0 ? void 0 : _b.expressionInfos) != null) {
43
45
  for (let i = 0; i < ((_c = layer.popupTemplate) === null || _c === void 0 ? void 0 : _c.expressionInfos.length); i++) {
44
46
  const info = layer.popupTemplate.expressionInfos[i];
@@ -58,6 +60,17 @@ export class PopupUtils {
58
60
  }
59
61
  }
60
62
  }
63
+ //Format field values
64
+ if (layer.popupTemplate.fieldInfos) {
65
+ layer.fields.forEach((field) => {
66
+ const attributeValue = graphic.attributes[field.name];
67
+ //get the field info from popupTemplate
68
+ const fieldInfo = layer.popupTemplate.fieldInfos.find((fInfo) => fInfo.fieldName.toLowerCase() === field.name.toLowerCase());
69
+ //format the attribute value
70
+ const formattedAttributeValue = _prepareAttributeValue(attributeValue, field.type, field.domain, fieldInfo === null || fieldInfo === void 0 ? void 0 : fieldInfo.format, this.intl);
71
+ attributes[`{${field.name.toUpperCase()}}`] = formattedAttributeValue;
72
+ });
73
+ }
61
74
  return popupTitle === null || popupTitle === void 0 ? void 0 : popupTitle.replace(/{.*?}/g, (placeholder) => {
62
75
  return attributes[placeholder.toUpperCase()] != null ? attributes[placeholder.toUpperCase()] : "";
63
76
  });
@@ -83,9 +96,11 @@ export class PopupUtils {
83
96
  * @protected
84
97
  */
85
98
  async _initModules() {
86
- const [arcade] = await loadModules([
87
- "esri/arcade"
99
+ const [arcade, intl] = await loadModules([
100
+ "esri/arcade",
101
+ "esri/intl"
88
102
  ]);
89
103
  this.arcade = arcade;
104
+ this.intl = intl;
90
105
  }
91
106
  }
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import { _prepareAttributeValue } from "./downloadUtils";
17
18
  import { loadModules } from "./loadModules";
18
19
 
19
20
  export class PopupUtils {
@@ -23,6 +24,11 @@ export class PopupUtils {
23
24
  */
24
25
  arcade: typeof import("esri/arcade");
25
26
 
27
+ /**
28
+ * esri/intl: https://developers.arcgis.com/javascript/latest/api-reference/esri-intl.html
29
+ */
30
+ intl: typeof import("esri/intl");
31
+
26
32
  /**
27
33
  * Get the popup title that honors arcade expressions
28
34
  * @param graphic selected graphic
@@ -47,6 +53,7 @@ export class PopupUtils {
47
53
  }
48
54
  const layer = graphic.layer as __esri.FeatureLayer;
49
55
  const popupTitle = this._removeTags(layer?.popupTemplate?.title as string);
56
+ //resolve arcade expression from the popup title
50
57
  if (popupTitle.includes("{expression/expr") && layer?.popupTemplate?.expressionInfos != null) {
51
58
  for (let i = 0; i < layer.popupTemplate?.expressionInfos.length; i++) {
52
59
  const info = layer.popupTemplate.expressionInfos[i];
@@ -65,7 +72,18 @@ export class PopupUtils {
65
72
  }
66
73
  }
67
74
  }
68
-
75
+ //Format field values
76
+ if (layer.popupTemplate.fieldInfos) {
77
+ layer.fields.forEach((field) => {
78
+ const attributeValue = graphic.attributes[field.name];
79
+ //get the field info from popupTemplate
80
+ const fieldInfo = layer.popupTemplate.fieldInfos.find((fInfo) => fInfo.fieldName.toLowerCase() === field.name.toLowerCase());
81
+ //format the attribute value
82
+ const formattedAttributeValue = _prepareAttributeValue(attributeValue, field.type, field.domain, fieldInfo?.format, this.intl);
83
+ attributes[`{${field.name.toUpperCase()}}`] = formattedAttributeValue;
84
+ })
85
+ }
86
+
69
87
  return popupTitle?.replace(/{.*?}/g, (placeholder: string) => {
70
88
  return attributes[placeholder.toUpperCase()] != null ? (attributes[placeholder.toUpperCase()] as string) : "";
71
89
  });
@@ -93,10 +111,12 @@ export class PopupUtils {
93
111
  * @protected
94
112
  */
95
113
  protected async _initModules(): Promise<void> {
96
- const [arcade] = await loadModules([
97
- "esri/arcade"
114
+ const [arcade, intl] = await loadModules([
115
+ "esri/arcade",
116
+ "esri/intl"
98
117
  ]);
99
118
  this.arcade = arcade;
119
+ this.intl = intl;
100
120
  }
101
121
 
102
122
  }
@@ -50,7 +50,7 @@ const ArcgisLogin$1 = /*@__PURE__*/ proxyCustomElement(class ArcgisLogin extends
50
50
  //
51
51
  //--------------------------------------------------------------------------
52
52
  render() {
53
- return (h(Host, { key: '7ef89062c15023c646a5134818900cc5b5ae2c43' }, h("slot", { key: 'a1698e009dd0e86591c4858f352186079e0299ed' })));
53
+ return (h(Host, { key: 'b71ecf635ef91c3604665890c3eec5c5bc51651c' }, h("slot", { key: '77c4af2284404bc351b1eb93a81b2151f8e8cce1' })));
54
54
  }
55
55
  get el() { return this; }
56
56
  static get style() { return ArcgisLoginStyle0; }
@@ -53,7 +53,7 @@ const BasemapGallery = /*@__PURE__*/ proxyCustomElement(class BasemapGallery ext
53
53
  * StencilJS: Renders the component.
54
54
  */
55
55
  render() {
56
- return (h(Host, { key: '9cef4efc85e1168ca8909f9e7d5cea48bf06b51c' }, h("div", { key: '837779b470b2170285fafeffa705d09f573dbfc6', ref: (el) => { this._basemapElement = el; } })));
56
+ return (h(Host, { key: '7fe5ef48d77de087f17498e2e1f3370a069e8629' }, h("div", { key: 'aca555c687352046a138343cab6f656234069644', ref: (el) => { this._basemapElement = el; } })));
57
57
  }
58
58
  /**
59
59
  * StencilJS: Called once just after the component is fully loaded and the first render() occurs.
@@ -86,7 +86,7 @@ const BufferTools = /*@__PURE__*/ proxyCustomElement(class BufferTools extends H
86
86
  * Renders the component.
87
87
  */
88
88
  render() {
89
- return (h(Host, { key: 'b06e61d0e1cb18f0b7c34f51c74455a8d00c279b' }, this.appearance === "text" ? this._getTextBoxDisplay() : this._getSliderDisplay()));
89
+ return (h(Host, { key: '63b775eca8dd10785df7b58be3a79eaa6cf4c049' }, this.appearance === "text" ? this._getTextBoxDisplay() : this._getSliderDisplay()));
90
90
  }
91
91
  //--------------------------------------------------------------------------
92
92
  //