@esri/solutions-components 0.8.23 → 0.8.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) 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-avatar.cjs.entry.js → calcite-avatar_2.cjs.entry.js} +62 -0
  5. package/dist/cjs/calcite-block_5.cjs.entry.js +12 -3
  6. package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +419 -0
  7. package/dist/cjs/{calcite-dropdown_4.cjs.entry.js → calcite-dropdown_2.cjs.entry.js} +12 -435
  8. package/dist/cjs/calcite-flow_6.cjs.entry.js +23 -27
  9. package/dist/cjs/card-manager_3.cjs.entry.js +1 -1
  10. package/dist/cjs/crowdsource-manager.cjs.entry.js +1 -1
  11. package/dist/cjs/crowdsource-reporter.cjs.entry.js +56 -36
  12. package/dist/cjs/feature-list.cjs.entry.js +4 -3
  13. package/dist/cjs/{helpers-9347ad83.js → helpers-618a3f7d.js} +2 -1
  14. package/dist/cjs/instant-apps-create.cjs.entry.js +266 -0
  15. package/dist/cjs/instant-apps-export.cjs.entry.js +31 -16
  16. package/dist/cjs/instant-apps-header.cjs.entry.js +3 -2
  17. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +11 -4
  18. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +1 -1
  19. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +1 -1
  20. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +2 -2
  21. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +1 -1
  22. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +45 -9
  23. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +1 -1
  24. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +1 -1
  25. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +168 -0
  26. package/dist/cjs/{languageSwitcher-395021d6.js → languageSwitcher-b9a1485c.js} +3 -1
  27. package/dist/cjs/loader.cjs.js +1 -1
  28. package/dist/cjs/public-notification.cjs.entry.js +3 -3
  29. package/dist/cjs/resources-fa37e40f.js +26 -0
  30. package/dist/cjs/solutions-components.cjs.js +1 -1
  31. package/dist/collection/collection-manifest.json +3 -1
  32. package/dist/collection/components/arcgis-login/arcgis-login.js +1 -1
  33. package/dist/collection/components/basemap-gallery/basemap-gallery.js +1 -1
  34. package/dist/collection/components/buffer-tools/buffer-tools.js +1 -1
  35. package/dist/collection/components/card-manager/card-manager.js +1 -1
  36. package/dist/collection/components/create-feature/create-feature.js +1 -1
  37. package/dist/collection/components/create-related-feature/create-related-feature.js +1 -1
  38. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +1 -1
  39. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +56 -45
  40. package/dist/collection/components/feature-details/feature-details.js +56 -13
  41. package/dist/collection/components/feature-list/feature-list.js +22 -3
  42. package/dist/collection/components/layer-list/layer-list.js +6 -13
  43. package/dist/collection/components/public-notification/public-notification.js +3 -3
  44. package/dist/collection/demos/crowdsource-reporter.html +22 -15
  45. package/dist/collection/utils/interfaces.ts +1 -0
  46. package/dist/components/arcgis-login.js +1 -1
  47. package/dist/components/basemap-gallery2.js +1 -1
  48. package/dist/components/buffer-tools2.js +1 -1
  49. package/dist/components/calcite-navigation-user.js +1 -99
  50. package/dist/components/card-manager2.js +1 -1
  51. package/dist/components/create-feature2.js +1 -1
  52. package/dist/components/create-related-feature2.js +1 -1
  53. package/dist/components/crowdsource-manager.js +1 -1
  54. package/dist/components/crowdsource-reporter.js +57 -37
  55. package/dist/components/feature-details2.js +16 -12
  56. package/dist/components/feature-list2.js +5 -3
  57. package/dist/components/helpers.js +3 -2
  58. package/dist/components/instant-apps-ckeditor-wrapper2.js +1 -1
  59. package/dist/components/instant-apps-create.js +317 -0
  60. package/dist/components/instant-apps-export.js +32 -16
  61. package/dist/components/instant-apps-filter-list2.js +6 -1
  62. package/dist/components/instant-apps-header2.js +3 -2
  63. package/dist/components/instant-apps-interactive-legend-classic2.js +12 -5
  64. package/dist/components/instant-apps-interactive-legend-legend-element-caption2.js +2 -2
  65. package/dist/components/instant-apps-landing-page.js +91 -16
  66. package/dist/components/instant-apps-language-translator2.js +3 -1
  67. package/dist/components/instant-apps-sign-in.js +11 -0
  68. package/dist/components/instant-apps-sign-in2.js +243 -0
  69. package/dist/components/instant-apps-social-share2.js +8 -2
  70. package/dist/components/layer-list2.js +6 -13
  71. package/dist/{esm/calcite-navigation-user.entry.js → components/navigation-user.js} +46 -9
  72. package/dist/components/public-notification.js +3 -3
  73. package/dist/esm/arcgis-login.entry.js +1 -1
  74. package/dist/esm/basemap-gallery_7.entry.js +1 -1
  75. package/dist/esm/buffer-tools_3.entry.js +1 -1
  76. package/dist/esm/{calcite-avatar.entry.js → calcite-avatar_2.entry.js} +64 -3
  77. package/dist/esm/calcite-block_5.entry.js +12 -3
  78. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
  79. package/dist/esm/calcite-color-picker.entry.js +1 -1
  80. package/dist/esm/calcite-dropdown-group_2.entry.js +414 -0
  81. package/dist/esm/{calcite-dropdown_4.entry.js → calcite-dropdown_2.entry.js} +2 -423
  82. package/dist/esm/calcite-flow_6.entry.js +23 -27
  83. package/dist/esm/card-manager_3.entry.js +1 -1
  84. package/dist/esm/crowdsource-manager.entry.js +1 -1
  85. package/dist/esm/crowdsource-reporter.entry.js +56 -36
  86. package/dist/esm/feature-list.entry.js +4 -3
  87. package/dist/esm/{helpers-a5a81b9d.js → helpers-61b05164.js} +3 -2
  88. package/dist/esm/instant-apps-create.entry.js +262 -0
  89. package/dist/esm/instant-apps-export.entry.js +31 -16
  90. package/dist/esm/instant-apps-header.entry.js +3 -2
  91. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +11 -4
  92. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +1 -1
  93. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +1 -1
  94. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +2 -2
  95. package/dist/esm/instant-apps-interactive-legend.entry.js +1 -1
  96. package/dist/esm/instant-apps-landing-page.entry.js +46 -10
  97. package/dist/esm/instant-apps-language-switcher.entry.js +1 -1
  98. package/dist/esm/instant-apps-language-translator.entry.js +1 -1
  99. package/dist/esm/instant-apps-sign-in.entry.js +164 -0
  100. package/dist/esm/{languageSwitcher-a4a615e4.js → languageSwitcher-d60f03b2.js} +3 -1
  101. package/dist/esm/loader.js +1 -1
  102. package/dist/esm/public-notification.entry.js +3 -3
  103. package/dist/esm/resources-16800cce.js +24 -0
  104. package/dist/esm/solutions-components.js +1 -1
  105. package/dist/esm/{utils-6419e941.js → utils-251cb6de.js} +1 -1
  106. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-create/instant-apps-create.css +150 -0
  107. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-header/instant-apps-header.css +16 -9
  108. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-landing-page/instant-apps-landing-page.css +19 -0
  109. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +98 -0
  110. package/dist/solutions-components/demos/crowdsource-reporter.html +22 -15
  111. package/dist/solutions-components/p-1251dcc6.entry.js +6 -0
  112. package/dist/solutions-components/{p-88495699.entry.js → p-16730f05.entry.js} +1 -1
  113. package/dist/solutions-components/p-1ae3b886.entry.js +17 -0
  114. package/dist/solutions-components/{p-63460d51.entry.js → p-1ff9eb95.entry.js} +1 -1
  115. package/dist/solutions-components/{p-8f6e0ae5.entry.js → p-26eb1225.entry.js} +1 -1
  116. package/dist/solutions-components/{p-3a2e0188.entry.js → p-2c044250.entry.js} +2 -2
  117. package/dist/solutions-components/p-314dc933.entry.js +6 -0
  118. package/dist/solutions-components/p-50741707.entry.js +6 -0
  119. package/dist/solutions-components/p-614ebce7.js +6 -0
  120. package/dist/solutions-components/{p-df73649e.entry.js → p-77cd573b.entry.js} +1 -1
  121. package/dist/solutions-components/{p-c95dcdf7.entry.js → p-7883b885.entry.js} +3 -3
  122. package/dist/solutions-components/p-79e2e203.entry.js +6 -0
  123. package/dist/solutions-components/{p-968a6fd8.entry.js → p-7b17e929.entry.js} +1 -1
  124. package/dist/solutions-components/p-80b3eb6b.entry.js +6 -0
  125. package/dist/solutions-components/p-84913712.js +6 -0
  126. package/dist/solutions-components/p-8c500fd7.entry.js +6 -0
  127. package/dist/solutions-components/{p-fe9d6d06.js → p-9f56c02c.js} +1 -1
  128. package/dist/solutions-components/{p-667c022f.entry.js → p-af4be4ce.entry.js} +1 -1
  129. package/dist/solutions-components/p-bb2e669d.entry.js +6 -0
  130. package/dist/solutions-components/p-c41997d5.js +11 -0
  131. package/dist/solutions-components/p-c512fcfb.entry.js +6 -0
  132. package/dist/solutions-components/{p-21d6360a.entry.js → p-c7f0e7a8.entry.js} +1 -1
  133. package/dist/solutions-components/{p-64da5bb8.entry.js → p-cbf0dada.entry.js} +3 -3
  134. package/dist/solutions-components/{p-9c7d4343.entry.js → p-cd91c3e7.entry.js} +1 -1
  135. package/dist/solutions-components/p-ceba37d3.entry.js +11 -0
  136. package/dist/solutions-components/{p-09b769b7.entry.js → p-d8a15e32.entry.js} +1 -1
  137. package/dist/solutions-components/p-d8da6406.entry.js +6 -0
  138. package/dist/solutions-components/p-da6b3c8a.entry.js +6 -0
  139. package/dist/solutions-components/{p-60f1055e.entry.js → p-e2400b0d.entry.js} +1 -1
  140. package/dist/solutions-components/p-e78be59a.entry.js +6 -0
  141. package/dist/solutions-components/p-f35cc7ae.entry.js +6 -0
  142. package/dist/solutions-components/solutions-components.esm.js +1 -1
  143. package/dist/solutions-components/utils/interfaces.ts +1 -0
  144. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +18 -7
  145. package/dist/types/components/feature-details/feature-details.d.ts +13 -1
  146. package/dist/types/components/feature-list/feature-list.d.ts +4 -0
  147. package/dist/types/components/layer-list/layer-list.d.ts +1 -1
  148. package/dist/types/components.d.ts +25 -2
  149. package/dist/types/preact.d.ts +7 -2
  150. package/dist/types/utils/interfaces.d.ts +1 -0
  151. package/package.json +2 -2
  152. package/dist/cjs/calcite-navigation-user.cjs.entry.js +0 -73
  153. package/dist/solutions-components/p-08a1e120.js +0 -6
  154. package/dist/solutions-components/p-3283660c.entry.js +0 -6
  155. package/dist/solutions-components/p-33647277.entry.js +0 -6
  156. package/dist/solutions-components/p-3af0764f.entry.js +0 -6
  157. package/dist/solutions-components/p-41d288c0.entry.js +0 -6
  158. package/dist/solutions-components/p-599dcc29.js +0 -6
  159. package/dist/solutions-components/p-64b4b579.entry.js +0 -11
  160. package/dist/solutions-components/p-ab96dd27.entry.js +0 -6
  161. package/dist/solutions-components/p-bb0c7be3.entry.js +0 -17
  162. package/dist/solutions-components/p-bb8e3add.entry.js +0 -11
  163. package/dist/solutions-components/p-c36bb8ca.entry.js +0 -6
  164. package/dist/solutions-components/p-cbe166fc.entry.js +0 -6
  165. package/dist/solutions-components/p-eab95aa4.entry.js +0 -6
  166. package/dist/solutions-components/p-f6a1673c.entry.js +0 -6
@@ -41,7 +41,8 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
41
41
  super();
42
42
  this.__registerHost();
43
43
  this.loadingStatus = createEvent(this, "loadingStatus", 7);
44
- this.featureSelect = createEvent(this, "featureSelect", 7);
44
+ this.commentSelect = createEvent(this, "commentSelect", 7);
45
+ this.featureSelectionChange = createEvent(this, "featureSelectionChange", 7);
45
46
  /**
46
47
  * string[]: Valid field types for like and dislike
47
48
  */
@@ -49,6 +50,7 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
49
50
  this.mapView = undefined;
50
51
  this.graphics = undefined;
51
52
  this.reportingOptions = undefined;
53
+ this.layerItemsHash = undefined;
52
54
  this._likeFieldAvailable = false;
53
55
  this._likeCount = 0;
54
56
  this._disLikeCount = 0;
@@ -128,12 +130,12 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
128
130
  var _a, _b, _c, _d, _e;
129
131
  //When related features found show comments list of only those features else comments list will be empty
130
132
  const commentsListWhereClause = ((_a = this._relatedFeaturesOIDs) === null || _a === void 0 ? void 0 : _a.length) > 0 ? `objectId in(${this._relatedFeaturesOIDs})` : '1=0';
131
- return (h("calcite-panel", { key: 'b8d1cc9d4d9040665be3c892f5738a179ab64eaf', "full-height": true }, h("info-card", { key: 'a4c7771bdf84f85b88bd6bf2544e2a1a985fdbbe', allowEditing: false, graphics: this.graphics, highlightEnabled: false, isLoading: false, isMobile: false, mapView: this.mapView, paginationEnabled: false, position: "relative", ref: el => this._infoCard = el }), (this._likeFieldAvailable || this._dislikeFieldAvailable || this._commentsAvailable) &&
132
- h("div", { key: '2d405f3f722eb4fe0de4212ec4ff3e4b8588db40', class: "buttons-container" }, this._commentsAvailable &&
133
- h("div", { key: '9454b0cb93e665de20fafb4ca75e1a6d3198a03a', class: "comment-btn" }, h("span", { key: '8c682aa73f9c28b9db5266cfb5ad970f15535241' }, this._relatedFeaturesOIDs.length), h("calcite-icon", { key: 'd920e63f8d1d447afa732bd336f6a09e18ccbd2a', icon: "speech-bubble", scale: 's' })), this._likeFieldAvailable &&
134
- h("calcite-button", { key: '6b68adcc0b24b1e8d71148182339fa1b6d7922a1', 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 &&
135
- h("calcite-button", { key: '7c365fdaf5a3de12745e4a7b7a79dc8ec5e37cc0', 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 &&
136
- h("feature-list", { key: '7b2b92b001dcdeb51d7ae1c1b39dc263f5ed1934', class: "height-full", mapView: this.mapView, pageSize: 5, ref: el => this._commentsList = el, selectedLayerId: this.relatedTableId, showInitialLoading: false, textSize: "small", whereClause: commentsListWhereClause })));
133
+ return (h("calcite-panel", { key: 'f8d1d282a6ebdb4d5a64efd96d88329d375b7fe1', "full-height": true }, 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) &&
134
+ h("div", { key: 'a3242d417cef788f0f677bf21c65fb9aaa44f8b2', class: "buttons-container" }, this._commentsAvailable &&
135
+ h("div", { key: '9dcfccc0a48b719d14cb08737d654000a27e21cc', class: "comment-btn" }, h("span", { key: 'b68cafd0cebfa91c12f32f648ec2f71a51e3b9da' }, this._relatedFeaturesOIDs.length), h("calcite-icon", { key: 'f2b9c34ac64a5cb7692f80cd73658f077525eee4', icon: "speech-bubble", scale: 's' })), this._likeFieldAvailable &&
136
+ 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 &&
137
+ 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 &&
138
+ 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 })));
137
139
  }
138
140
  /**
139
141
  * Load esri javascript api modules
@@ -170,7 +172,8 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
170
172
  async processComments() {
171
173
  var _a;
172
174
  const selectedLayer = this._selectedGraphic.layer;
173
- const commentsConfigured = this.reportingOptions[selectedLayer.id].comment && ((_a = selectedLayer.relationships) === null || _a === void 0 ? void 0 : _a.length) > 0;
175
+ const commentsConfigured = this.reportingOptions && this.reportingOptions[selectedLayer.id] &&
176
+ this.reportingOptions[selectedLayer.id].comment && ((_a = selectedLayer.relationships) === null || _a === void 0 ? void 0 : _a.length) > 0;
174
177
  if (commentsConfigured) {
175
178
  //Get comments table id from map
176
179
  const relatedTableIdFromRelnship = selectedLayer.relationships[0].relatedTableId;
@@ -235,7 +238,7 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
235
238
  }
236
239
  //Check if selected layer have the configured like and dislike field and it is of integer types
237
240
  selectedLayer.fields.forEach((eachField) => {
238
- if (this._validFieldTypes.indexOf(eachField.type) > -1) {
241
+ if (this._validFieldTypes.indexOf(eachField.type) > -1 && this.layerItemsHash[selectedLayer.id].supportsUpdate) {
239
242
  if (eachField.name === likeField && this.reportingOptions[selectedLayer.id].like) {
240
243
  likeFieldAvailable = true;
241
244
  }
@@ -270,12 +273,12 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
270
273
  //Check if selected layer have the configured like and dislike fields
271
274
  //also, get the current value for like and dislike field from the attributes
272
275
  selectedLayer.fields.forEach((eachField) => {
273
- if (this._validFieldTypes.indexOf(eachField.type) > -1) {
274
- if (eachField.name === this._likeField && this.reportingOptions[this._selectedGraphic.layer.id].like) {
276
+ if (this._validFieldTypes.indexOf(eachField.type) > -1 && this.layerItemsHash[selectedLayer.id].supportsUpdate) {
277
+ if (eachField.name === this._likeField && this.reportingOptions[selectedLayer.id].like) {
275
278
  this._likeFieldAvailable = true;
276
279
  this._likeCount = this._selectedGraphic.attributes[eachField.name];
277
280
  }
278
- else if (eachField.name === this._dislikeField && this.reportingOptions[this._selectedGraphic.layer.id].dislike) {
281
+ else if (eachField.name === this._dislikeField && this.reportingOptions[selectedLayer.id].dislike) {
279
282
  this._dislikeFieldAvailable = true;
280
283
  this._disLikeCount = this._selectedGraphic.attributes[eachField.name];
281
284
  }
@@ -410,6 +413,7 @@ const FeatureDetails = /*@__PURE__*/ proxyCustomElement(class FeatureDetails ext
410
413
  "mapView": [16],
411
414
  "graphics": [16],
412
415
  "reportingOptions": [16],
416
+ "layerItemsHash": [16],
413
417
  "_likeFieldAvailable": [32],
414
418
  "_likeCount": [32],
415
419
  "_disLikeCount": [32],
@@ -43,6 +43,7 @@ const FeatureList = /*@__PURE__*/ proxyCustomElement(class FeatureList extends H
43
43
  this.whereClause = undefined;
44
44
  this.textSize = "large";
45
45
  this.showInitialLoading = true;
46
+ this.showErrorWhenNoFeatures = true;
46
47
  this._featureItems = [];
47
48
  this._featuresCount = 0;
48
49
  this._isLoading = false;
@@ -110,9 +111,9 @@ const FeatureList = /*@__PURE__*/ proxyCustomElement(class FeatureList extends H
110
111
  * Renders the component.
111
112
  */
112
113
  render() {
113
- 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 &&
114
- 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 &&
115
- 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 }))));
114
+ 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 &&
115
+ 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 &&
116
+ 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 }))));
116
117
  }
117
118
  //--------------------------------------------------------------------------
118
119
  //
@@ -317,6 +318,7 @@ const FeatureList = /*@__PURE__*/ proxyCustomElement(class FeatureList extends H
317
318
  "whereClause": [1, "where-clause"],
318
319
  "textSize": [1, "text-size"],
319
320
  "showInitialLoading": [4, "show-initial-loading"],
321
+ "showErrorWhenNoFeatures": [4, "show-error-when-no-features"],
320
322
  "_featureItems": [32],
321
323
  "_featuresCount": [32],
322
324
  "_isLoading": [32],
@@ -157,7 +157,8 @@ async function handleFilter(data, info, infoIndex, filterMode, parentLegendEleme
157
157
  const [FeatureFilter, FeatureEffect] = await loadModules(['esri/layers/support/FeatureFilter', 'esri/layers/support/FeatureEffect']);
158
158
  const { queryExpressions, fLayerView } = data;
159
159
  generateQueryExpressions(data, info, infoIndex, parentLegendElementInfo);
160
- const where = queryExpressions.join(' OR ');
160
+ const sep = queryExpressions.every(expression => expression && expression.includes('<>')) ? ' AND ' : ' OR ';
161
+ const where = queryExpressions.join(sep);
161
162
  const timeExtent = (_b = (_a = fLayerView === null || fLayerView === void 0 ? void 0 : fLayerView.filter) === null || _a === void 0 ? void 0 : _a.timeExtent) !== null && _b !== void 0 ? _b : null;
162
163
  const { type } = filterMode;
163
164
  if (type === 'filter') {
@@ -800,4 +801,4 @@ function getExistingFilter(fLayerView) {
800
801
  return (fLayerView === null || fLayerView === void 0 ? void 0 : fLayerView.filter) || ((_a = fLayerView === null || fLayerView === void 0 ? void 0 : fLayerView.featureEffect) === null || _a === void 0 ? void 0 : _a.filter);
801
802
  }
802
803
 
803
- export { generateData as a, getParentLegendElementInfoData as b, getCategoryData as c, checkNoneSelected as d, handleFeatureCount as e, createInteractiveLegendDataForLayer as f, getTheme as g, handleFilterChange as h, handleFilter as i, getIntLegendLayerData as j, getCategoriesArray as k, checkNestedUniqueSymbol as l, calculateTotalFeatureCountForNestedSymbols as m, checkRelationshipRamp as n, calculateTotalCount as o, getNestedInfoData as p, checkNestedUniqueSymbolLegendElement as q, showAll as r, showAllNestedUniqueSymbol as s, updateStore as u, validateInteractivity as v, zoomTo as z };
804
+ export { getParentLegendElementInfoData as a, getCategoryData as b, checkNoneSelected as c, handleFeatureCount as d, generateData as e, createInteractiveLegendDataForLayer as f, getTheme as g, handleFilterChange as h, handleFilter as i, getIntLegendLayerData as j, getCategoriesArray as k, checkNestedUniqueSymbol as l, calculateTotalFeatureCountForNestedSymbols as m, checkRelationshipRamp as n, calculateTotalCount as o, getNestedInfoData as p, checkNestedUniqueSymbolLegendElement as q, showAll as r, showAllNestedUniqueSymbol as s, updateStore as u, validateInteractivity as v, zoomTo as z };
@@ -120,7 +120,7 @@ const InstantAppsCkeditorWrapper = /*@__PURE__*/ proxyCustomElement(class Instan
120
120
  static get style() { return InstantAppsCkeditorWrapperStyle0; }
121
121
  }, [0, "instant-apps-ckeditor-wrapper", {
122
122
  "value": [1025],
123
- "editorInstance": [1040],
123
+ "editorInstance": [1032, "editor-instance"],
124
124
  "config": [16]
125
125
  }, undefined, {
126
126
  "value": ["updateValue"]
@@ -0,0 +1,317 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
7
+ import { g as getMessages } from './locale3.js';
8
+ import { l as loadModules } from './loadModules2.js';
9
+ import { g as getMode } from './mode.js';
10
+ import { d as defineCustomElement$5 } from './action.js';
11
+ import { d as defineCustomElement$4 } from './icon.js';
12
+ import { d as defineCustomElement$3 } from './loader.js';
13
+ import { d as defineCustomElement$2 } from './popover.js';
14
+
15
+ /**
16
+ * Product Glyphs
17
+ * SVGs and product colors located at:
18
+ * https://github.com/ArcGIS/esri-product-logos
19
+ */
20
+ const glyphs = {
21
+ 'instant-apps': {
22
+ path: 'M11.206 4.805v-1.38a2.231 2.231 0 0 1 2.23-2.231h13.168a2.231 2.231 0 0 1 2.231 2.23v11.15a2.231 2.231 0 0 1-2.23 2.231h-1.398V5.555a.75.75 0 0 0-.75-.75zM30.94 27.204l-5.447-4.41a.211.211 0 0 0-.344.164v2.225H8.197a1.344 1.344 0 0 1-1.344-1.344V11.665a.75.75 0 0 1 .75-.75h9.872a.75.75 0 0 1 .75.75l-.003 7.534a2.422 2.422 0 0 1-.798 1.796l-.945.855h4.3a1.075 1.075 0 0 0 1.074-1.075v-10.54a2.231 2.231 0 0 0-2.23-2.23H5.354a2.148 2.148 0 0 0-2.13 2.23v16.507a2.231 2.231 0 0 0 2.23 2.231l19.695-.003v2.725a.211.211 0 0 0 .344.164l5.447-4.41a.158.158 0 0 0 0-.245z',
23
+ fill: '#83a238',
24
+ },
25
+ 'map-viewer': {
26
+ path: 'M21.647 13.706A1.647 1.647 0 1 1 20 15.353a1.647 1.647 0 0 1 1.647-1.647zM19 19.083A1.917 1.917 0 1 1 17.082 21 1.917 1.917 0 0 1 19 19.082zm7.684 3.393a2.433 2.433 0 0 1-.64 1.776l-.01.012c-1.045 1.134-3.215 1.8-5.738 1.8-3.815 0-5.054-1.485-8.586-1.828a6.765 6.765 0 0 1 .566-4.07c.98-1.674 2.445-1.568 3.41-2.724.967-1.157.033-3.384 1.397-4.748 1.539-1.538 3.44-.12 4.57-2.542.877-1.884 1.84-2.98 3.68-3.35a.39.39 0 0 1 .047.07c.132.695 1.097 11.68 1.304 15.604zM6.208 8.864A3.054 3.054 0 0 1 8.115 6.17s2.425-.88 3.09-1.029a2.637 2.637 0 0 1 .314-.01 4.967 4.967 0 0 1 1.157.157l.404.095a7.26 7.26 0 0 0-.238 3.294c.188 1.354.657 2.399-.066 4.361-1.003 2.721-2.901 2.585-3.857 4.562-1.285 2.657.21 6.226-2.182 6.835l.004.002.003.003c-.801.114-1.363.22-1.663.272zm21.549-5.09a.055.055 0 0 0-.022-.037.058.058 0 0 0-.037-.01l-7.37 1.025-8.771-2.742a.227.227 0 0 0-.162.01L3.594 5.566a.054.054 0 0 0-.032.045L1.58 29a41.592 41.592 0 0 1 9.115-1.285c2.765.094 6.646 2.287 10.29 2.177 3.51-.108 8.582-2.382 9.564-2.836a.054.054 0 0 0 .03-.056z',
27
+ fill: '#3DB8FF',
28
+ },
29
+ 'story-maps': {
30
+ path: 'M25.5 0C23.015 0 21 .953 21 3.433v8.517a1.467 1.467 0 0 0 .43 1.038l3.837 3.827a.33.33 0 0 0 .466 0l3.836-3.827A1.467 1.467 0 0 0 30 11.95V3.433C30 .953 27.985 0 25.5 0zm0 8.1a2.6 2.6 0 1 1 2.6-2.599A2.599 2.599 0 0 1 25.5 8.1zm-7.856.453c.294-.153.312-.457.312-.788v-2.31a.104.104 0 0 0-.129-.1 6.128 6.128 0 0 0-2.248 1.19.14.14 0 0 1-.167.008c-3.437-2.283-8.543-1.52-12.131-.988-.432.064-1.762.34-2.164.424A.146.146 0 0 0 1 6.133V26.69a.147.147 0 0 0 .05.11.134.134 0 0 0 .116.035A36.394 36.394 0 0 1 9.5 25.781c3.283.054 4.403.96 4.967 1.513l.915.897a.164.164 0 0 0 .23 0l.916-.897a5.98 5.98 0 0 1 3.972-1.47 25.341 25.341 0 0 1 5.715.516c.718.109 1.46.22 2.186.312l1.251.16a.308.308 0 0 0 .348-.305v-7.375a.161.161 0 0 0-.303-.077l-.107.2a7.218 7.218 0 0 1-6.902 3.766 10.455 10.455 0 0 0-5.688.796V9.454a.89.89 0 0 1 .332-.693 2.058 2.058 0 0 1 .312-.208zM14 23.817c-3.071-1.38-5.998-.808-9.447-.293l-.253.036a.263.263 0 0 1-.3-.259V8.525a.098.098 0 0 1 .084-.097l.804-.115c2.518-.372 6.303-1.048 8.708.515a.89.89 0 0 1 .404.746z',
31
+ fill: '#4fbaa9',
32
+ },
33
+ 'dashboards': {
34
+ path: 'M25.819 28H23.18a.181.181 0 0 1-.181-.181V13.18a.181.181 0 0 1 .181-.181h2.638a.181.181 0 0 1 .181.181V27.82a.181.181 0 0 1-.181.181zM21 27.816v-9.631a.184.184 0 0 0-.184-.185h-2.631a.184.184 0 0 0-.185.184v9.631a.184.184 0 0 0 .184.185h2.631a.184.184 0 0 0 .185-.184zm9.82.184a.18.18 0 0 0 .18-.18v-7.64a.18.18 0 0 0-.18-.18h-2.64a.18.18 0 0 0-.18.18v7.64a.18.18 0 0 0 .18.18zM7 9.267v10.475c.706.033 3.538-1.718 4.274-4.7.679-2.751 3.485-2.864 4.443-2.94 1.766-.14 3.588-.607 4.566-2.798A.216.216 0 0 0 20.085 9H7.267A.267.267 0 0 0 7 9.267zm18.997-1.053A4.411 4.411 0 0 0 21.63 4H2.684A.684.684 0 0 0 2 4.684V21.81A3.19 3.19 0 0 0 5.19 25h9.565a.245.245 0 0 0 .245-.245v-2.362a.393.393 0 0 0-.393-.393H6.38A1.385 1.385 0 0 1 5 20.619V7.349A.348.348 0 0 1 5.348 7h16.324A1.346 1.346 0 0 1 23 8.363v1.28a.357.357 0 0 0 .357.357h2.599a.046.046 0 0 0 .046-.046z',
35
+ fill: '#ee9e01',
36
+ },
37
+ 'experience-builder': {
38
+ path: 'M30.85 12.82l-2.85 5v7.44A1.78 1.78 0 0 1 26.22 27H25V7.75a.76.76 0 0 0-.75-.75H12V1.31a.28.28 0 0 1 .42-.25L17.51 4h8.71A1.78 1.78 0 0 1 28 5.78v4.42l2.54 1.47a.83.83 0 0 1 .31 1.15zM12 18h8v-6h-8zm7.62 5H7.75a.76.76 0 0 1-.75-.75V4H5.78A1.78 1.78 0 0 0 4 5.78V13l-2.89 5a.85.85 0 0 0 .31 1.15L4 20.59v4.61A1.78 1.78 0 0 0 5.78 27h8.62l5.18 3a.28.28 0 0 0 .42-.24v-6.39a.38.38 0 0 0-.38-.37z',
39
+ fill: '#09b8ca',
40
+ },
41
+ // extra glyphs
42
+ 'geoBIM': {
43
+ path: 'M17.802 21.398l6.2 2.557-5.14 2.133a.772.772 0 0 1-1.06-.717zM9.311 7.868a.604.604 0 0 1-.003-1.122L16 4.169l8.12 3.148-8.119 3.184zm-3.5 1.541l8.387 3.413v12.554a.772.772 0 0 1-1.06.717l-6.297-2.736a1.639 1.639 0 0 1-1.03-1.521zM3.844 6.03a1.316 1.316 0 0 0-.827 1.22v17.395a1.316 1.316 0 0 0 .827 1.221L16 30.888l12.983-5.317v-2.423l-7.156-3.023 7.156-2.963v-1.95l-5.101-2.2-3.867 1.516L24 16.123l-6.199 2.505v-5.711l.073-.122 11.108-4.487v-1.95l-12.47-5.047a1.384 1.384 0 0 0-1.027 0z',
44
+ fill: '#11ad1d',
45
+ },
46
+ 'notebooks': {
47
+ path: 'M2.941 25A.906.906 0 0 1 2 24.135v-.271A.906.906 0 0 1 2.941 23h3.118a.906.906 0 0 1 .941.864v.271a.906.906 0 0 1-.941.865zm3.118-8A.906.906 0 0 0 7 16.135v-.271A.906.906 0 0 0 6.059 15H2.941a.906.906 0 0 0-.941.864v.271a.906.906 0 0 0 .941.865zm0-8A.906.906 0 0 0 7 8.135v-.271A.906.906 0 0 0 6.059 7H2.941A.906.906 0 0 0 2 7.864v.271A.906.906 0 0 0 2.941 9zm9.44 16h-3.726a.773.773 0 0 1-.773-.774V6.171A.172.172 0 0 1 11.172 6H15.5a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5H5.342A1.345 1.345 0 0 0 4 4.343V5h2.059A2.904 2.904 0 0 1 9 7.858v.277A2.907 2.907 0 0 1 6.059 11H4v2h2.059A2.907 2.907 0 0 1 9 15.864v.271A2.907 2.907 0 0 1 6.059 19H4v2h2.059A2.907 2.907 0 0 1 9 23.864v.271A2.907 2.907 0 0 1 6.059 27H4v1.405a.595.595 0 0 0 .595.595H15.5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zM20 3.5v2a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 .5.5v18a.5.5 0 0 1-.5.5h-4a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-25a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.499.5z',
48
+ fill: '#6e6e6e',
49
+ },
50
+ 'sites': {
51
+ path: 'M2.656 29A.656.656 0 0 1 2 28.344V6.185A3.189 3.189 0 0 1 5.185 3H29.72a.281.281 0 0 1 .281.281v22.53A3.194 3.194 0 0 1 26.81 29zm2.838-3h21.211a.295.295 0 0 0 .296-.295V13.494a.493.493 0 0 0-.493-.494H5v12.506a.494.494 0 0 0 .494.494zM23 9.91a.09.09 0 0 0 .09.09h3.82a.09.09 0 0 0 .09-.09V6.026A.026.026 0 0 0 26.974 6h-3.948a.026.026 0 0 0-.026.026zM6.633 6A1.597 1.597 0 0 0 5 7.595V10h14.523A.477.477 0 0 0 20 9.523V6.477A.477.477 0 0 0 19.523 6zM16 22v-5h7v5zm-7-2v-3h3v3z',
52
+ fill: '#7842ed',
53
+ },
54
+ 'webAppBuilder': {
55
+ path: 'M15.044 19.974a.188.188 0 0 1-.192-.001l-3.762-2.35a.188.188 0 0 1-.09-.16v-4.098a.188.188 0 0 1 .096-.163l3.761-2.178a.188.188 0 0 1 .182-.001l3.863 2.179a.188.188 0 0 1 .098.165v4.095a.187.187 0 0 1-.092.161zm15.13-1.04a.052.052 0 0 0 .099.022 8.048 8.048 0 0 0 .67-3.147 7.155 7.155 0 0 0-3.507-6.213L17.59 3.768a4.054 4.054 0 0 0-1.968-.627 3.95 3.95 0 0 0-1.894.485c-.607.334-1.132.67-1.278.754a2.951 2.951 0 0 0-1.39 2.506v1.078a.2.2 0 0 0 .307.167l1.365-.87a4.988 4.988 0 0 1 2.319-.792 4.62 4.62 0 0 1 2.219.792s8.442 5.017 9.392 5.576a7.045 7.045 0 0 1 3.513 6.084zM9.546 23.55l.947-.547a.2.2 0 0 0 0-.345l-1.369-.79a4.326 4.326 0 0 1-2.13-3.842V7.286a7.16 7.16 0 0 1 3.63-6.083l.081-.05a.025.025 0 0 0-.012-.045l-.25-.005a8.333 8.333 0 0 0-3.887.994A7.102 7.102 0 0 0 3.069 8.31v10.786a3.96 3.96 0 0 0 1.89 3.362c.894.545 1.605.974 1.81 1.092a2.787 2.787 0 0 0 2.777 0zm4.383 6.37l9.997-5.773a3.959 3.959 0 0 0 1.967-3.32c.021-.929.034-1.604.034-1.806a2.786 2.786 0 0 0-1.39-2.406l-1.123-.57a.2.2 0 0 0-.289.177v1.604a4.45 4.45 0 0 1-2.218 3.842l-3.708 2.14a3.366 3.366 0 0 1-.256.135L11.6 27.128a6.427 6.427 0 0 1-3.343.938 7.137 7.137 0 0 1-3.513-1.038c-.09-.052-.38-.226-.797-.479a.094.094 0 0 0-.134.12 7.182 7.182 0 0 0 2.942 3.25 7.241 7.241 0 0 0 3.587 1.028 7.243 7.243 0 0 0 3.587-1.028z',
56
+ fill: '#09b8ca',
57
+ },
58
+ 'urban': {
59
+ path: 'M32 14l-4 .003a1 1 0 0 0-1 1V21a1 1 0 0 1-1 1h-2V5.451l-7.598-3.335A1 1 0 0 0 15 3.03V25a1 1 0 0 1-1 1h-2V11.24h-.02L7.5 9l-4.48 2.24H3V20H0v4h5a1 1 0 0 0 1-1V12.717L7.5 12l1.5.717V28a2 2 0 0 0 2 2h5a2 2 0 0 0 2-2V6.094l3 1.317V24a2 2 0 0 0 2 2h5.02A1.977 1.977 0 0 0 30 24.024V17h2z',
60
+ fill: '#3DB8FF',
61
+ },
62
+ };
63
+ /**
64
+ * Format glyphs as SVGs
65
+ */
66
+ const productGlyphs = new Map();
67
+ Object.keys(glyphs).forEach(glyph => {
68
+ productGlyphs[glyph] = `<svg viewBox="0 0 32 32" width="32" height="32" fill="${glyphs[glyph].fill}"><path d="${glyphs[glyph].path}"/></svg>`;
69
+ });
70
+ function getProductGlyph(name) {
71
+ return productGlyphs[name] || '';
72
+ }
73
+
74
+ const instantAppsCreateCss = ":host{display:block;--instant-apps-create-action-background:var(--calcite-color-foreground-1);--instant-apps-create-action-background-hover:var(--calcite-color-foreground-2);--instant-apps-create-action-background-press:var(--calcite-color-foreground-3);--instant-apps-create-action-height:100%;--instant-apps-create-action-width:fit-content;--instant-apps-create-action-icon-color:var(--calcite-color-text-3);--instant-apps-create-action-icon-hover-color:var(--calcite-color-text-1);--instant-apps-create-background:var(--calcite-color-foreground-1);--instant-apps-create-text-color:var(--calcite-color-text-1);--instant-apps-create-popover-width:450px}.instant-apps-create{height:100%}.instant-apps-create *{box-sizing:border-box}.instant-apps-create__popover-container,.instant-apps-create__inline-container{padding:1rem 1.5rem;background:var(--instant-apps-create-background);--calcite-color-text-1:var(--instant-apps-create-text-color)}.instant-apps-create__popover-container{width:var(--instant-apps-create-popover-width)}.instant-apps-create calcite-popover{--calcite-color-foreground-1:var(--instant-apps-create-background)}.instant-apps-create calcite-button:last-of-type{margin-top:0.5rem}.instant-apps-create__header h3{margin:0;font-weight:var(--calcite-font-weight-medium)}.instant-apps-create__header p{margin:0;padding:0 0 0.5rem 0;font-weight:var(--calcite-font-weight-normal)}.instant-apps-create__options{display:flex;justify-content:space-between;align-items:center;flex-direction:column}.instant-apps-create__option{display:flex;color:inherit;text-decoration:inherit;height:-moz-fit-content;height:fit-content;margin-bottom:0.5rem;cursor:pointer;--calcite-color-text-link:var(--calcite-color-text-1);align-items:stretch;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);outline-offset:0;outline-color:transparent;transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out}.instant-apps-create__option:first-of-type{margin-top:0.5rem}.instant-apps-create__option:last-of-type{margin-bottom:0}.instant-apps-create__option:hover{outline:1px solid var(--calcite-color-border-1);outline-offset:2px}.instant-apps-create__option-icon{display:flex;background:var(--calcite-color-foreground-2);color:var(--calcite-color-text-1);font-size:1.25rem;background-color:var(--calcite-color-background);justify-content:center;align-items:center;flex:1 1 auto;max-width:5rem;min-width:5rem;height:auto}.instant-apps-create__option-icon svg{display:block;overflow-clip-margin:content-box;overflow:hidden}.instant-apps-create__option-text{min-height:2rem;font-size:0.75rem;color:var(--calcite-color-text-2);padding:0.75rem 0 0 0.75rem}.instant-apps-create__option-text-wrapper{display:flex;align-items:center}.instant-apps-create__option-text h3{margin:0;font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.instant-apps-create__option-text calcite-icon{margin-left:0.25rem;color:rgb(126, 126, 126);--tw-translate-x:0px;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0;transition-property:all;transition-duration:150ms;transition-timing-function:ease-in-out;transition-delay:0s}a:hover .instant-apps-create__option-text calcite-icon{opacity:1;--tw-translate-x:0.5rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.instant-apps-create__option-text p{margin:0;font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-3);line-height:1.35;min-height:3rem}";
75
+ const InstantAppsCreateStyle0 = instantAppsCreateCss;
76
+
77
+ const CSS = {
78
+ baseDark: 'instant-apps-create calcite-mode-dark',
79
+ baseLight: 'instant-apps-create calcite-mode-light',
80
+ inlineContainer: 'instant-apps-create__inline-container',
81
+ popoverContainer: 'instant-apps-create__popover-container',
82
+ hidden: 'instant-apps-create__visually-hidden',
83
+ header: 'instant-apps-create__header',
84
+ options: 'instant-apps-create__options',
85
+ option: 'instant-apps-create__option',
86
+ optionIcon: 'instant-apps-create__option-icon',
87
+ optionText: 'instant-apps-create__option-text',
88
+ optionTextWrapper: 'instant-apps-create__option-text-wrapper',
89
+ optionTitle: 'instant-apps-create__option-title',
90
+ optionSubtitle: 'instant-apps-create__option-subtitle',
91
+ optionLink: 'instant-apps-create__option-link',
92
+ };
93
+ const InstantAppsCreate$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsCreate extends HTMLElement {
94
+ constructor() {
95
+ super();
96
+ this.__registerHost();
97
+ this.__attachShadow();
98
+ this.popoverIcon = 'grid';
99
+ this.mode = 'inline';
100
+ this.popoverPositioning = 'absolute';
101
+ this.popoverPlacement = 'auto';
102
+ this.showHeader = true;
103
+ this.content = undefined;
104
+ this.options = ['instant-apps', 'map-viewer', 'story-maps', 'experience-builder', 'dashboards'];
105
+ this.portal = undefined;
106
+ this.baseClass = CSS.baseLight;
107
+ this.messages = {};
108
+ this.CreateOptionsLookup = undefined;
109
+ }
110
+ contentChanged() {
111
+ Object.keys(this.CreateOptionsLookup).forEach(key => {
112
+ this.CreateOptionsLookup[key].href = this.hrefLookup(key);
113
+ });
114
+ }
115
+ componentWillLoad() {
116
+ this.baseClass = getMode(this.el) === 'dark' ? CSS.baseDark : CSS.baseLight;
117
+ this.initializeModules();
118
+ return getMessages(this).then(() => {
119
+ this.initializePredefinedOptions();
120
+ });
121
+ }
122
+ disconnectedCallback() {
123
+ var _a, _b;
124
+ (_a = this.handles) === null || _a === void 0 ? void 0 : _a.removeAll();
125
+ (_b = this.handles) === null || _b === void 0 ? void 0 : _b.destroy();
126
+ this.handles = null;
127
+ }
128
+ render() {
129
+ const mode = this.mode === 'popover' ? this.renderPopover() : this.renderPanel();
130
+ return (h(Host, null, h("div", { class: this.baseClass }, mode)));
131
+ }
132
+ async initializeModules() {
133
+ const [Handles] = await loadModules(['esri/core/Handles']);
134
+ this.handles = new Handles();
135
+ return Promise.resolve();
136
+ }
137
+ initializePredefinedOptions() {
138
+ const { instantApps, instantAppsDesc, mapViewer, mapViewerDesc, arcgisStoryMaps, storyMapsDesc, experienceBuilder, experienceBuilderDesc, dashboards, dashboardsDesc } = this.messages;
139
+ this.CreateOptionsLookup = {
140
+ 'instant-apps': {
141
+ title: instantApps,
142
+ subtitle: instantAppsDesc,
143
+ img: getProductGlyph('instant-apps'),
144
+ href: this.hrefLookup('instant-apps'),
145
+ },
146
+ 'map-viewer': {
147
+ title: mapViewer,
148
+ subtitle: mapViewerDesc,
149
+ img: getProductGlyph('map-viewer'),
150
+ href: this.hrefLookup('map-viewer'),
151
+ },
152
+ 'story-maps': {
153
+ title: arcgisStoryMaps,
154
+ subtitle: storyMapsDesc,
155
+ img: getProductGlyph('story-maps'),
156
+ href: this.hrefLookup('story-maps'),
157
+ },
158
+ 'experience-builder': {
159
+ title: experienceBuilder,
160
+ subtitle: experienceBuilderDesc,
161
+ img: getProductGlyph('experience-builder'),
162
+ href: this.hrefLookup('experience-builder'),
163
+ },
164
+ 'dashboards': {
165
+ title: dashboards,
166
+ subtitle: dashboardsDesc,
167
+ img: getProductGlyph('dashboards'),
168
+ href: this.hrefLookup('dashboards'),
169
+ },
170
+ };
171
+ }
172
+ hrefLookup(predefined) {
173
+ var _a, _b;
174
+ const portalUrl = this.getBaseUrl(this.portal);
175
+ const env = this._getEnvironment(portalUrl);
176
+ const contentParam = this.contentHref();
177
+ switch (predefined) {
178
+ case 'instant-apps':
179
+ return `${portalUrl}/apps/instantgallery/index.html?${contentParam}`;
180
+ case 'dashboards':
181
+ return `${portalUrl}/apps/dashboards/new#id=${(_b = (_a = this.content) === null || _a === void 0 ? void 0 : _a.portalItem) === null || _b === void 0 ? void 0 : _b.id}`;
182
+ case 'map-viewer':
183
+ return `${portalUrl}/apps/mapviewer/index.html?${contentParam}`;
184
+ case 'story-maps':
185
+ return `https://storymaps${env === 'prod' ? '' : env}.arcgis.com/stories/new?${contentParam}`;
186
+ case 'experience-builder':
187
+ return `https://experience${env === 'prod' ? '' : env}.arcgis.com/builder/page/template/?${contentParam}`;
188
+ }
189
+ return '';
190
+ }
191
+ contentHref() {
192
+ var _a, _b, _c, _d, _e;
193
+ if (((_b = (_a = this === null || this === void 0 ? void 0 : this.content) === null || _a === void 0 ? void 0 : _a.portalItem) === null || _b === void 0 ? void 0 : _b.type) === 'Web Map') {
194
+ return `webmap=${this.content.portalItem.id}`;
195
+ }
196
+ else if (((_d = (_c = this === null || this === void 0 ? void 0 : this.content) === null || _c === void 0 ? void 0 : _c.portalItem) === null || _d === void 0 ? void 0 : _d.type) === 'Web Scene') {
197
+ return `webscene=${this.content.portalItem.id}`;
198
+ }
199
+ else if (typeof ((_e = this === null || this === void 0 ? void 0 : this.content) === null || _e === void 0 ? void 0 : _e.fetchMembers) === 'function') {
200
+ return `group=${this.content.id}`;
201
+ }
202
+ else {
203
+ return '';
204
+ }
205
+ }
206
+ // getBaseUrl
207
+ getBaseUrl(portal) {
208
+ if (!portal) {
209
+ return '';
210
+ }
211
+ const { customBaseUrl, portalHostname, urlKey } = portal;
212
+ const { protocol } = location;
213
+ const url = urlKey ? `${urlKey}.${customBaseUrl}` : portalHostname;
214
+ return `${protocol}//${url}`;
215
+ }
216
+ _getEnvironment(url) {
217
+ var _a;
218
+ let hostname = null;
219
+ try {
220
+ hostname = (_a = new URL(url)) === null || _a === void 0 ? void 0 : _a.hostname;
221
+ }
222
+ catch (e) { }
223
+ if (hostname == null || hostname.indexOf('arcgis.com') === -1) {
224
+ return 'dev';
225
+ }
226
+ else {
227
+ return (hostname.indexOf('devext') !== -1 && 'dev') || (hostname.indexOf('qaext') !== -1 && 'qa') || 'prod';
228
+ }
229
+ }
230
+ renderPopover() {
231
+ var _a, _b;
232
+ const panel = this.renderPanel();
233
+ return [
234
+ h("calcite-popover", { referenceElement: "create-popover-btn", overlayPositioning: this.popoverPositioning, placement: this.popoverPlacement, autoClose: true, ref: (el) => (this.popoverEl = el) }, panel),
235
+ h("calcite-action", { id: "create-popover-btn", alignment: "center", icon: this.popoverIcon, title: (_a = this.messages) === null || _a === void 0 ? void 0 : _a.create, text: (_b = this.messages) === null || _b === void 0 ? void 0 : _b.create }),
236
+ ];
237
+ }
238
+ renderPanel() {
239
+ const header = this.showHeader ? this.renderHeader() : null;
240
+ const options = this.renderOptions();
241
+ const panelClass = this.mode === 'inline' ? CSS.inlineContainer : CSS.popoverContainer;
242
+ return (h("div", { class: panelClass }, header, options));
243
+ }
244
+ renderHeader() {
245
+ const { create, createSubheading } = this.messages;
246
+ return (h("div", { class: CSS.header }, h("h3", null, create), h("p", null, createSubheading)));
247
+ }
248
+ renderOptions() {
249
+ return h("nav", null, this.options.map(option => this.renderOption(option)));
250
+ }
251
+ renderOption(option) {
252
+ var _a;
253
+ if (typeof option === 'string') {
254
+ option = (_a = this === null || this === void 0 ? void 0 : this.CreateOptionsLookup) === null || _a === void 0 ? void 0 : _a[option];
255
+ }
256
+ const { title, subtitle, img, href } = option || {};
257
+ return (h("a", { class: CSS.option, href: href, target: "_blank" }, h("span", { class: CSS.optionIcon, innerHTML: img }), h("span", { class: CSS.optionText }, h("span", { class: CSS.optionTextWrapper }, h("h3", { class: CSS.optionTitle }, title), h("calcite-icon", { scale: "s", icon: "launch" })), h("p", { class: CSS.optionSubtitle }, subtitle))));
258
+ }
259
+ get el() { return this; }
260
+ static get watchers() { return {
261
+ "content": ["contentChanged"]
262
+ }; }
263
+ static get style() { return InstantAppsCreateStyle0; }
264
+ }, [1, "instant-apps-create", {
265
+ "popoverIcon": [1, "popover-icon"],
266
+ "mode": [513],
267
+ "popoverPositioning": [1, "popover-positioning"],
268
+ "popoverPlacement": [1, "popover-placement"],
269
+ "showHeader": [4, "show-header"],
270
+ "content": [16],
271
+ "options": [16],
272
+ "portal": [16],
273
+ "baseClass": [32],
274
+ "messages": [32],
275
+ "CreateOptionsLookup": [32]
276
+ }, undefined, {
277
+ "content": ["contentChanged"]
278
+ }]);
279
+ function defineCustomElement$1() {
280
+ if (typeof customElements === "undefined") {
281
+ return;
282
+ }
283
+ const components = ["instant-apps-create", "calcite-action", "calcite-icon", "calcite-loader", "calcite-popover"];
284
+ components.forEach(tagName => { switch (tagName) {
285
+ case "instant-apps-create":
286
+ if (!customElements.get(tagName)) {
287
+ customElements.define(tagName, InstantAppsCreate$1);
288
+ }
289
+ break;
290
+ case "calcite-action":
291
+ if (!customElements.get(tagName)) {
292
+ defineCustomElement$5();
293
+ }
294
+ break;
295
+ case "calcite-icon":
296
+ if (!customElements.get(tagName)) {
297
+ defineCustomElement$4();
298
+ }
299
+ break;
300
+ case "calcite-loader":
301
+ if (!customElements.get(tagName)) {
302
+ defineCustomElement$3();
303
+ }
304
+ break;
305
+ case "calcite-popover":
306
+ if (!customElements.get(tagName)) {
307
+ defineCustomElement$2();
308
+ }
309
+ break;
310
+ } });
311
+ }
312
+ defineCustomElement$1();
313
+
314
+ const InstantAppsCreate = InstantAppsCreate$1;
315
+ const defineCustomElement = defineCustomElement$1;
316
+
317
+ export { InstantAppsCreate, defineCustomElement };
@@ -4,8 +4,8 @@
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
6
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
7
- import { g as getMessages } from './locale3.js';
8
7
  import { l as loadModules } from './loadModules2.js';
8
+ import { g as getMessages } from './locale3.js';
9
9
  import { g as getMode } from './mode.js';
10
10
  import { d as defineCustomElement$b } from './action.js';
11
11
  import { d as defineCustomElement$a } from './button.js';
@@ -392,23 +392,22 @@ const InstantAppsExport$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsEx
392
392
  this.updateLegend();
393
393
  }
394
394
  }
395
- componentWillLoad() {
395
+ watchView() {
396
+ this.handleIncludePopup();
397
+ }
398
+ async componentWillLoad() {
396
399
  this.baseClass = getMode(this.el) === 'dark' ? CSS.baseDark : CSS.baseLight;
397
400
  getMessages(this);
398
- this.initializeModules();
401
+ await this.initializeModules();
399
402
  }
400
403
  componentDidLoad() {
401
404
  this.printContainerEl.prepend(this.printEl);
402
- }
403
- disconnectedCallback() {
404
- var _a, _b;
405
- (_a = this.handles) === null || _a === void 0 ? void 0 : _a.removeAll();
406
- (_b = this.handles) === null || _b === void 0 ? void 0 : _b.destroy();
407
- this.handles = null;
405
+ this.handleIncludePopup();
408
406
  }
409
407
  async initializeModules() {
410
- const [Handles] = await loadModules(['esri/core/Handles']);
408
+ const [Handles, reactiveUtils] = await loadModules(['esri/core/Handles', 'esri/core/reactiveUtils']);
411
409
  this.handles = new Handles();
410
+ this.reactiveUtils = reactiveUtils;
412
411
  return Promise.resolve();
413
412
  }
414
413
  render() {
@@ -610,12 +609,27 @@ const InstantAppsExport$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsEx
610
609
  }
611
610
  }
612
611
  handleWidgetCreation() {
613
- this.handleLegendCreation();
614
- this.handleCompassCreation();
612
+ if (this.includeMap) {
613
+ this.handleLegendCreation();
614
+ this.handleCompassCreation();
615
+ }
616
+ }
617
+ handleIncludePopup() {
618
+ var _a, _b;
619
+ if (this.showIncludePopup) {
620
+ const handleId = 'includePopup';
621
+ (_a = this.handles) === null || _a === void 0 ? void 0 : _a.remove(handleId);
622
+ (_b = this.reactiveUtils) === null || _b === void 0 ? void 0 : _b.whenOnce(() => { var _a; return (_a = this.view) === null || _a === void 0 ? void 0 : _a.ready; }).then(() => {
623
+ var _a;
624
+ (_a = this.handles) === null || _a === void 0 ? void 0 : _a.add(this.reactiveUtils.watch(() => { var _a, _b; return (_b = (_a = this.view) === null || _a === void 0 ? void 0 : _a.popup) === null || _b === void 0 ? void 0 : _b.visible; }, (visible) => {
625
+ this.includePopup = visible;
626
+ }), handleId);
627
+ });
628
+ }
615
629
  }
616
630
  handleLegendCreation() {
617
631
  var _a, _b, _c, _d, _e;
618
- if (this.includeMap && this.view != null && this.showIncludeLegend && this.legendContainerEl != null) {
632
+ if (this.view != null && this.showIncludeLegend && this.legendContainerEl != null) {
619
633
  const map = this.view.map;
620
634
  const legendMap = (_b = (_a = this.legend) === null || _a === void 0 ? void 0 : _a.view) === null || _b === void 0 ? void 0 : _b.map;
621
635
  const checkId = ((_c = map === null || map === void 0 ? void 0 : map.portalItem) === null || _c === void 0 ? void 0 : _c.id) != null && ((_d = map === null || map === void 0 ? void 0 : map.portalItem) === null || _d === void 0 ? void 0 : _d.id) === ((_e = legendMap === null || legendMap === void 0 ? void 0 : legendMap.portalItem) === null || _e === void 0 ? void 0 : _e.id);
@@ -649,7 +663,7 @@ const InstantAppsExport$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsEx
649
663
  }
650
664
  handleCompassCreation() {
651
665
  var _a, _b, _c, _d;
652
- if (this.includeMap && this.view != null && this.compassContainerEl != null) {
666
+ if (this.view != null && this.compassContainerEl != null) {
653
667
  const map = this.view.map;
654
668
  const compassMap = (_b = (_a = this.compass) === null || _a === void 0 ? void 0 : _a.view) === null || _b === void 0 ? void 0 : _b.map;
655
669
  const checkId = ((_c = map === null || map === void 0 ? void 0 : map.portalItem) === null || _c === void 0 ? void 0 : _c.id) === ((_d = compassMap === null || compassMap === void 0 ? void 0 : compassMap.portalItem) === null || _d === void 0 ? void 0 : _d.id);
@@ -890,7 +904,8 @@ const InstantAppsExport$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsEx
890
904
  }
891
905
  get el() { return this; }
892
906
  static get watchers() { return {
893
- "includeMap": ["watchIncludeMap"]
907
+ "includeMap": ["watchIncludeMap"],
908
+ "view": ["watchView"]
894
909
  }; }
895
910
  static get style() { return InstantAppsExportStyle0; }
896
911
  }, [1, "instant-apps-export", {
@@ -920,7 +935,8 @@ const InstantAppsExport$1 = /*@__PURE__*/ proxyCustomElement(class InstantAppsEx
920
935
  "exportIsLoading": [32],
921
936
  "messages": [32]
922
937
  }, undefined, {
923
- "includeMap": ["watchIncludeMap"]
938
+ "includeMap": ["watchIncludeMap"],
939
+ "view": ["watchView"]
924
940
  }]);
925
941
  function defineCustomElement$1() {
926
942
  if (typeof customElements === "undefined") {
@@ -614,7 +614,12 @@ const InstantAppsFilterList = /*@__PURE__*/ proxyCustomElement(class InstantApps
614
614
  update = this.updateCodedValueExpression(expression, layerField);
615
615
  }
616
616
  else if (type === 'range') {
617
- update = this.updateRangeExpression(expression, layerField);
617
+ if (expression.displayOption === 'drop-down') {
618
+ update = await this.updateStringExpression(layerExpression, expression);
619
+ }
620
+ else {
621
+ update = this.updateRangeExpression(expression, layerField);
622
+ }
618
623
  }
619
624
  else if (expression.active && (type === 'checkbox' || type == null)) {
620
625
  update = true;