@esri/solutions-components 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (196) hide show
  1. package/dist/assets/t9n/feature-comments/resources.json +3 -0
  2. package/dist/assets/t9n/feature-comments/resources_en.json +3 -0
  3. package/dist/assets/t9n/feature-form-flow-item/resources.json +3 -0
  4. package/dist/assets/t9n/feature-form-flow-item/resources_en.json +3 -0
  5. package/dist/assets/t9n/layer-table/resources.json +2 -1
  6. package/dist/assets/t9n/layer-table/resources_en.json +2 -1
  7. package/dist/assets/t9n/list-flow-item/resources.json +3 -0
  8. package/dist/assets/t9n/list-flow-item/resources_en.json +3 -0
  9. package/dist/assets/t9n/location-flow-item/resources.json +3 -0
  10. package/dist/assets/t9n/location-flow-item/resources_en.json +3 -0
  11. package/dist/assets/t9n/share-item/resources.json +3 -0
  12. package/dist/assets/t9n/share-item/resources_en.json +3 -0
  13. package/dist/cjs/{list-item.cjs.entry.js → arcgis-login.cjs.entry.js} +4 -19
  14. package/dist/cjs/basemap-gallery_7.cjs.entry.js +13 -9
  15. package/dist/cjs/calcite-action_2.cjs.entry.js +61 -392
  16. package/dist/cjs/calcite-alert_3.cjs.entry.js +21 -3
  17. package/dist/cjs/calcite-combobox_6.cjs.entry.js +32 -8
  18. package/dist/cjs/calcite-popover.cjs.entry.js +418 -0
  19. package/dist/cjs/card-manager_3.cjs.entry.js +154 -18
  20. package/dist/cjs/crowdsource-manager.cjs.entry.js +24 -2
  21. package/dist/cjs/crowdsource-reporter.cjs.entry.js +45 -6
  22. package/dist/cjs/{downloadUtils-e3e595e9.js → downloadUtils-9c4fde54.js} +2 -2
  23. package/dist/cjs/feature-comments.cjs.entry.js +60 -0
  24. package/dist/cjs/feature-form-flow-item.cjs.entry.js +60 -0
  25. package/dist/cjs/features-flow-item.cjs.entry.js +60 -0
  26. package/dist/cjs/{index.es-047537b5.js → index.es-d208a6d6.js} +2 -2
  27. package/dist/cjs/list-flow-item.cjs.entry.js +60 -0
  28. package/dist/cjs/loader.cjs.js +1 -1
  29. package/dist/cjs/location-flow-item.cjs.entry.js +60 -0
  30. package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
  31. package/dist/cjs/{mapViewUtils-f7bbc35b.js → mapViewUtils-bab83c90.js} +21 -0
  32. package/dist/cjs/public-notification.cjs.entry.js +2 -2
  33. package/dist/cjs/refine-results-flow-item.cjs.entry.js +60 -0
  34. package/dist/cjs/share-item.cjs.entry.js +60 -0
  35. package/dist/cjs/solutions-components.cjs.js +1 -1
  36. package/dist/collection/collection-manifest.json +8 -1
  37. package/dist/collection/components/{list-item/list-item.js → arcgis-login/arcgis-login.js} +4 -19
  38. package/dist/collection/components/arcgis-login/test/arcgis-login.e2e.js +29 -0
  39. package/dist/collection/components/arcgis-login/test/arcgis-login.spec.js +37 -0
  40. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +118 -2
  41. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +294 -6
  42. package/dist/collection/components/feature-comments/feature-comments.css +19 -0
  43. package/dist/collection/components/feature-comments/feature-comments.js +74 -0
  44. package/dist/collection/components/feature-comments/test/feature-comments.e2e.js +29 -0
  45. package/dist/collection/components/feature-comments/test/feature-comments.spec.js +37 -0
  46. package/dist/collection/components/feature-form-flow-item/feature-form-flow-item.css +19 -0
  47. package/dist/collection/components/feature-form-flow-item/feature-form-flow-item.js +74 -0
  48. package/dist/collection/components/feature-form-flow-item/test/feature-form-flow-item.e2e.js +29 -0
  49. package/dist/collection/components/feature-form-flow-item/test/feature-form-flow-item.spec.js +37 -0
  50. package/dist/collection/components/features-flow-item/features-flow-item.css +19 -0
  51. package/dist/collection/components/features-flow-item/features-flow-item.js +74 -0
  52. package/dist/collection/components/features-flow-item/test/features-flow-item.e2e.js +29 -0
  53. package/dist/collection/components/features-flow-item/test/features-flow-item.spec.js +37 -0
  54. package/dist/collection/components/info-card/info-card.js +21 -2
  55. package/dist/collection/components/layer-table/layer-table.js +199 -10
  56. package/dist/collection/components/list-flow-item/list-flow-item.css +19 -0
  57. package/dist/collection/components/list-flow-item/list-flow-item.js +74 -0
  58. package/dist/collection/components/list-flow-item/test/list-flow-item.e2e.js +29 -0
  59. package/dist/collection/components/list-flow-item/test/list-flow-item.spec.js +37 -0
  60. package/dist/collection/components/location-flow-item/location-flow-item.css +19 -0
  61. package/dist/collection/components/location-flow-item/location-flow-item.js +74 -0
  62. package/dist/collection/components/location-flow-item/test/location-flow-item.e2e.js +29 -0
  63. package/dist/collection/components/location-flow-item/test/location-flow-item.spec.js +37 -0
  64. package/dist/collection/components/map-card/map-card.js +38 -7
  65. package/dist/collection/components/map-layer-picker/map-layer-picker.js +49 -7
  66. package/dist/collection/components/map-picker/map-picker.js +37 -9
  67. package/dist/collection/components/refine-results-flow-item/refine-results-flow-item.css +19 -0
  68. package/dist/collection/components/refine-results-flow-item/refine-results-flow-item.js +74 -0
  69. package/dist/collection/components/refine-results-flow-item/test/refine-results-flow-item.e2e.js +29 -0
  70. package/dist/collection/components/refine-results-flow-item/test/refine-results-flow-item.spec.js +37 -0
  71. package/dist/collection/components/share-item/share-item.css +19 -0
  72. package/dist/collection/components/share-item/share-item.js +74 -0
  73. package/dist/collection/components/share-item/test/share-item.e2e.js +29 -0
  74. package/dist/collection/components/share-item/test/share-item.spec.js +37 -0
  75. package/dist/collection/demos/crowdsource-reporter.html +56 -15
  76. package/dist/collection/utils/interfaces.ts +5 -0
  77. package/dist/collection/utils/queryUtils.js +20 -0
  78. package/dist/collection/utils/queryUtils.ts +26 -0
  79. package/dist/components/arcgis-login.d.ts +11 -0
  80. package/dist/components/arcgis-login.js +75 -0
  81. package/dist/components/calcite-list-item.js +1 -1
  82. package/dist/components/card-manager2.js +7 -1
  83. package/dist/components/crowdsource-manager.js +32 -3
  84. package/dist/components/crowdsource-reporter.js +61 -7
  85. package/dist/components/feature-comments.d.ts +11 -0
  86. package/dist/components/feature-comments.js +75 -0
  87. package/dist/components/feature-form-flow-item.d.ts +11 -0
  88. package/dist/components/feature-form-flow-item.js +75 -0
  89. package/dist/components/features-flow-item.d.ts +11 -0
  90. package/dist/components/features-flow-item.js +75 -0
  91. package/dist/components/info-card2.js +28 -3
  92. package/dist/components/layer-table2.js +138 -10
  93. package/dist/components/list-flow-item.d.ts +11 -0
  94. package/dist/components/list-flow-item.js +75 -0
  95. package/dist/components/list-item.js +425 -55
  96. package/dist/components/location-flow-item.d.ts +11 -0
  97. package/dist/components/location-flow-item.js +75 -0
  98. package/dist/components/map-card2.js +22 -8
  99. package/dist/components/map-layer-picker2.js +32 -7
  100. package/dist/components/map-picker2.js +16 -11
  101. package/dist/components/map-select-tools2.js +1 -1
  102. package/dist/components/public-notification.js +1 -1
  103. package/dist/components/queryUtils.js +21 -1
  104. package/dist/components/refine-results-flow-item.d.ts +11 -0
  105. package/dist/components/refine-results-flow-item.js +75 -0
  106. package/dist/components/refine-selection2.js +2 -2
  107. package/dist/components/{list-item.d.ts → share-item.d.ts} +4 -4
  108. package/dist/components/share-item.js +75 -0
  109. package/dist/esm/{list-item.entry.js → arcgis-login.entry.js} +4 -19
  110. package/dist/esm/basemap-gallery_7.entry.js +13 -9
  111. package/dist/esm/calcite-action_2.entry.js +63 -394
  112. package/dist/esm/calcite-alert_3.entry.js +21 -3
  113. package/dist/esm/calcite-combobox_6.entry.js +32 -8
  114. package/dist/esm/calcite-popover.entry.js +414 -0
  115. package/dist/esm/card-manager_3.entry.js +154 -18
  116. package/dist/esm/crowdsource-manager.entry.js +24 -2
  117. package/dist/esm/crowdsource-reporter.entry.js +45 -6
  118. package/dist/esm/{downloadUtils-8fbd1347.js → downloadUtils-b84a6f55.js} +2 -2
  119. package/dist/esm/feature-comments.entry.js +56 -0
  120. package/dist/esm/feature-form-flow-item.entry.js +56 -0
  121. package/dist/esm/features-flow-item.entry.js +56 -0
  122. package/dist/esm/{index.es-b6705ce7.js → index.es-0d4698c7.js} +2 -2
  123. package/dist/esm/list-flow-item.entry.js +56 -0
  124. package/dist/esm/loader.js +1 -1
  125. package/dist/esm/location-flow-item.entry.js +56 -0
  126. package/dist/esm/map-select-tools_3.entry.js +2 -2
  127. package/dist/esm/{mapViewUtils-1e2befd7.js → mapViewUtils-88f363b6.js} +21 -1
  128. package/dist/esm/public-notification.entry.js +2 -2
  129. package/dist/esm/refine-results-flow-item.entry.js +56 -0
  130. package/dist/esm/share-item.entry.js +56 -0
  131. package/dist/esm/solutions-components.js +1 -1
  132. package/dist/solutions-components/demos/crowdsource-reporter.html +56 -15
  133. package/dist/solutions-components/{p-072680a5.js → p-214d41c3.js} +2 -2
  134. package/dist/solutions-components/p-28657abb.entry.js +11 -0
  135. package/dist/solutions-components/p-31b66bc3.entry.js +6 -0
  136. package/dist/solutions-components/{p-0123207d.entry.js → p-34737944.entry.js} +1 -1
  137. package/dist/solutions-components/{p-13d0424a.entry.js → p-3ced939f.entry.js} +1 -1
  138. package/dist/solutions-components/p-3dfbf45e.entry.js +6 -0
  139. package/dist/solutions-components/{p-092fd5d9.js → p-3ee78186.js} +1 -1
  140. package/dist/solutions-components/{p-7f793144.entry.js → p-4327c361.entry.js} +1 -1
  141. package/dist/solutions-components/p-455f4ed8.entry.js +17 -0
  142. package/dist/solutions-components/p-478fc7cb.entry.js +6 -0
  143. package/dist/solutions-components/p-4aafb627.js +36 -0
  144. package/dist/solutions-components/p-58562dda.entry.js +6 -0
  145. package/dist/solutions-components/{p-f367db61.entry.js → p-81503752.entry.js} +1 -1
  146. package/dist/solutions-components/{p-c90671e1.entry.js → p-9d54d7a0.entry.js} +4 -4
  147. package/dist/solutions-components/p-a5d70d3a.entry.js +6 -0
  148. package/dist/solutions-components/p-bd62df52.entry.js +6 -0
  149. package/dist/solutions-components/{p-ca780ab8.entry.js → p-d6f51bea.entry.js} +2 -2
  150. package/dist/solutions-components/p-e6371690.entry.js +6 -0
  151. package/dist/solutions-components/p-e7aad23d.entry.js +6 -0
  152. package/dist/solutions-components/p-ed95f634.entry.js +6 -0
  153. package/dist/solutions-components/p-fd08afb5.entry.js +6 -0
  154. package/dist/solutions-components/solutions-components.esm.js +1 -1
  155. package/dist/solutions-components/utils/interfaces.ts +5 -0
  156. package/dist/solutions-components/utils/queryUtils.ts +26 -0
  157. package/dist/types/components/{list-item/list-item.d.ts → arcgis-login/arcgis-login.d.ts} +2 -9
  158. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +36 -0
  159. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +73 -0
  160. package/dist/types/components/feature-comments/feature-comments.d.ts +19 -0
  161. package/dist/types/components/feature-form-flow-item/feature-form-flow-item.d.ts +19 -0
  162. package/dist/types/components/features-flow-item/features-flow-item.d.ts +19 -0
  163. package/dist/types/components/info-card/info-card.d.ts +8 -0
  164. package/dist/types/components/layer-table/layer-table.d.ts +77 -2
  165. package/dist/types/components/list-flow-item/list-flow-item.d.ts +19 -0
  166. package/dist/types/components/location-flow-item/location-flow-item.d.ts +19 -0
  167. package/dist/types/components/map-card/map-card.d.ts +12 -0
  168. package/dist/types/components/map-layer-picker/map-layer-picker.d.ts +15 -2
  169. package/dist/types/components/map-picker/map-picker.d.ts +1 -4
  170. package/dist/types/components/refine-results-flow-item/refine-results-flow-item.d.ts +19 -0
  171. package/dist/types/components/share-item/share-item.d.ts +19 -0
  172. package/dist/types/components.d.ts +301 -9
  173. package/dist/types/preact.d.ts +15 -1
  174. package/dist/types/utils/interfaces.d.ts +4 -0
  175. package/dist/types/utils/queryUtils.d.ts +9 -0
  176. package/package.json +1 -1
  177. package/dist/assets/t9n/config-buffer-tools/resources.json +0 -12
  178. package/dist/assets/t9n/config-buffer-tools/resources_en.json +0 -12
  179. package/dist/assets/t9n/config-draw-tools/resources.json +0 -10
  180. package/dist/assets/t9n/config-draw-tools/resources_en.json +0 -10
  181. package/dist/assets/t9n/config-layer-picker/resources.json +0 -3
  182. package/dist/assets/t9n/config-layer-picker/resources_en.json +0 -3
  183. package/dist/assets/t9n/config-pdf-download/resources.json +0 -6
  184. package/dist/assets/t9n/config-pdf-download/resources_en.json +0 -6
  185. package/dist/cjs/calcite-loader.cjs.entry.js +0 -80
  186. package/dist/components/list-item2.js +0 -460
  187. package/dist/esm/calcite-loader.entry.js +0 -76
  188. package/dist/solutions-components/p-11cb7b04.entry.js +0 -6
  189. package/dist/solutions-components/p-45cf4f67.entry.js +0 -6
  190. package/dist/solutions-components/p-4807b2a1.js +0 -36
  191. package/dist/solutions-components/p-557a1912.entry.js +0 -6
  192. package/dist/solutions-components/p-68735975.entry.js +0 -6
  193. package/dist/solutions-components/p-ec830ecb.entry.js +0 -23
  194. /package/dist/assets/t9n/{list-item → arcgis-login}/resources.json +0 -0
  195. /package/dist/assets/t9n/{list-item → arcgis-login}/resources_en.json +0 -0
  196. /package/dist/collection/components/{list-item/list-item.css → arcgis-login/arcgis-login.css} +0 -0
@@ -16,7 +16,7 @@ import { d as defineCustomElement$h } from './handle.js';
16
16
  import { d as defineCustomElement$g } from './icon.js';
17
17
  import { d as defineCustomElement$f } from './input.js';
18
18
  import { d as defineCustomElement$e } from './list.js';
19
- import { d as defineCustomElement$d } from './list-item2.js';
19
+ import { d as defineCustomElement$d } from './list-item.js';
20
20
  import { d as defineCustomElement$c } from './loader.js';
21
21
  import { d as defineCustomElement$b } from './popover.js';
22
22
  import { d as defineCustomElement$a } from './progress.js';
@@ -38,10 +38,15 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
38
38
  this.__registerHost();
39
39
  this.mapChanged = createEvent(this, "mapChanged", 7);
40
40
  this.beforeMapChanged = createEvent(this, "beforeMapChanged", 7);
41
+ /**
42
+ * boolean: When true the default map provided via url params has been loaded and should no longer override other maps
43
+ */
44
+ this._defaultWebmapHonored = false;
41
45
  /**
42
46
  * string: the id of map currently displayed
43
47
  */
44
48
  this._loadedId = "";
49
+ this.defaultWebmapId = "";
45
50
  this.enableHome = undefined;
46
51
  this.enableLegend = undefined;
47
52
  this.enableFloorFilter = undefined;
@@ -90,7 +95,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
90
95
  render() {
91
96
  const mapClass = this.hidden ? "visibility-hidden" : "";
92
97
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
93
- return (h(Host, null, h("map-picker", { mapInfos: this.mapInfos }), h("div", { class: `map-height ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { basemapConfig: this.basemapConfig, class: `box-shadow ${themeClass}`, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableLegend: this.enableLegend, enableSearch: this.enableSearch, mapView: this.mapView, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration })));
98
+ return (h(Host, null, h("map-picker", { mapInfos: this.mapInfos, ref: (el) => this._mapPicker = el }), h("div", { class: `map-height ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { basemapConfig: this.basemapConfig, class: `box-shadow ${themeClass}`, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableLegend: this.enableLegend, enableSearch: this.enableSearch, mapView: this.mapView, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration })));
94
99
  }
95
100
  //--------------------------------------------------------------------------
96
101
  //
@@ -124,12 +129,15 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
124
129
  * @protected
125
130
  */
126
131
  async _loadMap(webMapInfo) {
127
- let id = webMapInfo === null || webMapInfo === void 0 ? void 0 : webMapInfo.id;
128
- // on the first render use the first child of the provided mapInfos
129
- this._webMapInfo = (id === "" || !id) && this.mapInfos.length > 0 ?
130
- this.mapInfos[0] : webMapInfo;
131
- id = this._webMapInfo.id;
132
- if (this._loadedId !== id) {
132
+ var _a;
133
+ // on the first render use the default webmap id if provided otherwise use the first child of the provided mapInfos
134
+ const loadDefaultMap = !this._defaultWebmapHonored && this.defaultWebmapId;
135
+ const defaultMap = (_a = this.mapInfos) === null || _a === void 0 ? void 0 : _a.filter(i => i.id === this.defaultWebmapId);
136
+ this._webMapInfo = loadDefaultMap && defaultMap ? defaultMap[0] :
137
+ !(webMapInfo === null || webMapInfo === void 0 ? void 0 : webMapInfo.id) && this.mapInfos.length > 0 ? this.mapInfos[0] : webMapInfo;
138
+ const id = this._webMapInfo.id;
139
+ const isDefaultMap = loadDefaultMap && (webMapInfo === null || webMapInfo === void 0 ? void 0 : webMapInfo.id) === this.defaultWebmapId;
140
+ if ((this._loadedId !== id && !loadDefaultMap) || isDefaultMap) {
133
141
  const webMap = new this.WebMap({
134
142
  portalItem: { id }
135
143
  });
@@ -144,12 +152,17 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
144
152
  await this.mapView.when(() => {
145
153
  this._initHome();
146
154
  this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0 });
155
+ this._defaultWebmapHonored = isDefaultMap ? true : this._defaultWebmapHonored;
147
156
  this.mapChanged.emit({
148
157
  id: id,
149
158
  mapView: this.mapView
150
159
  });
151
160
  });
152
161
  }
162
+ else if (loadDefaultMap) {
163
+ this._defaultWebmapHonored = true;
164
+ this._mapPicker.setMapByID(id);
165
+ }
153
166
  }
154
167
  /**
155
168
  * Add/remove the home widget base on enableHome prop
@@ -173,6 +186,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
173
186
  }; }
174
187
  static get style() { return mapCardCss; }
175
188
  }, [0, "map-card", {
189
+ "defaultWebmapId": [1, "default-webmap-id"],
176
190
  "enableHome": [4, "enable-home"],
177
191
  "enableLegend": [4, "enable-legend"],
178
192
  "enableFloorFilter": [4, "enable-floor-filter"],
@@ -30,7 +30,17 @@ const MapLayerPicker = /*@__PURE__*/ proxyCustomElement(class MapLayerPicker ext
30
30
  this.__registerHost();
31
31
  this.noLayersFound = createEvent(this, "noLayersFound", 7);
32
32
  this.layerSelectionChange = createEvent(this, "layerSelectionChange", 7);
33
+ //--------------------------------------------------------------------------
34
+ //
35
+ // Properties (protected)
36
+ //
37
+ //--------------------------------------------------------------------------
38
+ /**
39
+ * boolean: When true the default layer has been loaded once and should no longer be used
40
+ */
41
+ this.defaultLayerHonored = false;
33
42
  this.appearance = "transparent";
43
+ this.defaultLayerId = "";
34
44
  this.enabledLayerIds = [];
35
45
  this.enabledTableIds = [];
36
46
  this.mapView = undefined;
@@ -52,7 +62,6 @@ const MapLayerPicker = /*@__PURE__*/ proxyCustomElement(class MapLayerPicker ext
52
62
  //--------------------------------------------------------------------------
53
63
  /**
54
64
  * Called each time the mapView prop is changed.
55
- *
56
65
  */
57
66
  async mapViewWatchHandler() {
58
67
  await this._setLayers();
@@ -174,21 +183,36 @@ const MapLayerPicker = /*@__PURE__*/ proxyCustomElement(class MapLayerPicker ext
174
183
  const item = itemType === "layer" ? this._layerNameHash[id] : this._tableNameHash[id];
175
184
  const disabled = this.onlyShowUpdatableLayers ? !item.supportsUpdate : false;
176
185
  const name = item.name;
177
- return this.type === "combobox" ? (h("calcite-combobox-item", { disabled: disabled, textLabel: name, value: id })) :
178
- this.type === "select" ? (h("calcite-option", { disabled: disabled, label: name, value: id })) :
179
- (h("calcite-dropdown-item", { disabled: disabled, onClick: disabled ? undefined : () => void this._setSelectedLayer(id) }, name));
186
+ const selected = this.selectedIds.indexOf(id) > -1;
187
+ return this.type === "combobox" ? (h("calcite-combobox-item", { disabled: disabled, selected: selected, textLabel: name, value: id })) :
188
+ this.type === "select" ? (h("calcite-option", { disabled: disabled, label: name, selected: selected, value: id })) : (h("calcite-dropdown-item", { disabled: disabled, onClick: disabled ? undefined : () => void this._setSelectedLayer(id), selected: selected }, name));
180
189
  }
181
190
  /**
182
191
  * Store the layer name based on the user selection
183
192
  */
184
193
  _setSelectedLayer(id) {
185
- const item = Object.keys(this._layerNameHash).indexOf(id) > -1 ?
186
- this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ?
187
- this._tableNameHash[id] : undefined;
194
+ let item;
195
+ const hasDefaultLayer = this.defaultLayerId && !this.defaultLayerHonored;
196
+ if (hasDefaultLayer) {
197
+ item = this._getLayerFromHash(this.defaultLayerId);
198
+ this.defaultLayerHonored = item !== undefined;
199
+ id = this.defaultLayerHonored ? this.defaultLayerId : id;
200
+ }
201
+ item = item ? item : this._getLayerFromHash(id);
188
202
  this.selectedName = item === null || item === void 0 ? void 0 : item.name;
189
203
  this.selectedIds = [id];
190
204
  this.layerSelectionChange.emit(this.selectedIds);
191
205
  }
206
+ /**
207
+ * Fetch layer hash info for the given id
208
+ *
209
+ * @returns ILayerHashInfo for the id
210
+ */
211
+ _getLayerFromHash(id) {
212
+ return Object.keys(this._layerNameHash).indexOf(id) > -1 ?
213
+ this._layerNameHash[id] : Object.keys(this._tableNameHash).indexOf(id) > -1 ?
214
+ this._tableNameHash[id] : undefined;
215
+ }
192
216
  /**
193
217
  * Fetch the ids of the layers from the map
194
218
  *
@@ -281,6 +305,7 @@ const MapLayerPicker = /*@__PURE__*/ proxyCustomElement(class MapLayerPicker ext
281
305
  static get style() { return mapLayerPickerCss; }
282
306
  }, [0, "map-layer-picker", {
283
307
  "appearance": [1],
308
+ "defaultLayerId": [1, "default-layer-id"],
284
309
  "enabledLayerIds": [16],
285
310
  "enabledTableIds": [16],
286
311
  "mapView": [16],
@@ -15,7 +15,7 @@ import { d as defineCustomElement$b } from './handle.js';
15
15
  import { d as defineCustomElement$a } from './icon.js';
16
16
  import { d as defineCustomElement$9 } from './input.js';
17
17
  import { d as defineCustomElement$8 } from './list.js';
18
- import { d as defineCustomElement$7 } from './list-item2.js';
18
+ import { d as defineCustomElement$7 } from './list-item.js';
19
19
  import { d as defineCustomElement$6 } from './loader.js';
20
20
  import { d as defineCustomElement$5 } from './popover.js';
21
21
  import { d as defineCustomElement$4 } from './progress.js';
@@ -64,6 +64,18 @@ const MapPicker = /*@__PURE__*/ proxyCustomElement(class MapPicker extends HTMLE
64
64
  }
65
65
  //--------------------------------------------------------------------------
66
66
  //
67
+ // Methods (public)
68
+ //
69
+ //--------------------------------------------------------------------------
70
+ async setMapByID(id) {
71
+ var _a;
72
+ const mapInfos = (_a = this.mapInfos) === null || _a === void 0 ? void 0 : _a.filter(i => i.id === id);
73
+ if (id && (mapInfos === null || mapInfos === void 0 ? void 0 : mapInfos.length) > 0) {
74
+ this._webMapSelected(mapInfos[0]);
75
+ }
76
+ }
77
+ //--------------------------------------------------------------------------
78
+ //
67
79
  // Functions (lifecycle)
68
80
  //
69
81
  //--------------------------------------------------------------------------
@@ -81,14 +93,6 @@ const MapPicker = /*@__PURE__*/ proxyCustomElement(class MapPicker extends HTMLE
81
93
  render() {
82
94
  return (h(Host, null, this._getToolbar(), this._getMapNameList(this._mapListExpanded)));
83
95
  }
84
- /**
85
- * Called after each render
86
- */
87
- async componentDidRender() {
88
- if (this._mapListExpanded) {
89
- await this._list.setFocus();
90
- }
91
- }
92
96
  /**
93
97
  * Called once after the component has loaded
94
98
  */
@@ -138,7 +142,7 @@ const MapPicker = /*@__PURE__*/ proxyCustomElement(class MapPicker extends HTMLE
138
142
  */
139
143
  _getMapNameList(show) {
140
144
  const listClass = show ? "map-list" : "display-none";
141
- return (h("div", { class: listClass }, h("calcite-list", { id: "mapList", ref: (el) => this._list = el, selectionAppearance: "border" }, this.mapInfos.map(mapInfo => {
145
+ return (h("div", { class: listClass }, h("calcite-list", { id: "mapList", ref: (el) => this._list = el, selectionAppearance: "border", selectionMode: "single" }, this.mapInfos.map(mapInfo => {
142
146
  return (h("calcite-list-item", { label: mapInfo.name, onClick: () => this._webMapSelected(mapInfo), selected: mapInfo.id === this._loadedId, value: mapInfo.id }));
143
147
  }))));
144
148
  }
@@ -185,7 +189,8 @@ const MapPicker = /*@__PURE__*/ proxyCustomElement(class MapPicker extends HTMLE
185
189
  "mapInfos": [16],
186
190
  "_mapListExpanded": [32],
187
191
  "_translations": [32],
188
- "_webMapInfo": [32]
192
+ "_webMapInfo": [32],
193
+ "setMapByID": [64]
189
194
  }, undefined, {
190
195
  "_webMapInfo": ["_webMapInfoWatchHandler"],
191
196
  "mapInfos": ["mapInfosWatchHandler"]
@@ -6,7 +6,7 @@
6
6
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
7
7
  import { l as loadModules } from './loadModules.js';
8
8
  import { b as goToSelection, h as highlightFeatures, e as getFeatureLayerView } from './mapViewUtils.js';
9
- import { c as queryObjectIds, g as getQueryGeoms, d as queryFeaturesByGeometry } from './queryUtils.js';
9
+ import { d as queryObjectIds, g as getQueryGeoms, e as queryFeaturesByGeometry } from './queryUtils.js';
10
10
  import { E as EWorkflowType } from './interfaces.js';
11
11
  import { s as state } from './publicNotificationStore.js';
12
12
  import { a as getComponentClosestLanguage, g as getLocaleComponentStrings } from './locale.js';
@@ -32,7 +32,7 @@ import { d as defineCustomElement$q } from './input-message.js';
32
32
  import { d as defineCustomElement$p } from './input-text.js';
33
33
  import { d as defineCustomElement$o } from './label2.js';
34
34
  import { d as defineCustomElement$n } from './list.js';
35
- import { d as defineCustomElement$m } from './list-item2.js';
35
+ import { d as defineCustomElement$m } from './list-item.js';
36
36
  import { d as defineCustomElement$l } from './loader.js';
37
37
  import { d as defineCustomElement$k } from './notice.js';
38
38
  import { d as defineCustomElement$j } from './option.js';
@@ -80,6 +80,26 @@ async function queryFeaturesByID(ids, layer, graphics, returnGeometry, outSpatia
80
80
  queryFeaturesByID(remainingIds, layer, graphics, returnGeometry, outSpatialReference) :
81
81
  Promise.resolve(graphics);
82
82
  }
83
+ /**
84
+ * Query the layer for features that have the provided globalId
85
+ *
86
+ * @param globalId globalId to be used to query for a feature in a layer
87
+ * @param layer the layer to retrieve features from
88
+ *
89
+ * @returns Promise with the featureSet from the layer that match the provided globalId
90
+ */
91
+ async function queryFeaturesByGlobalID(globalIds, layer) {
92
+ const globalIdField = layer.globalIdField;
93
+ if (!globalIdField) {
94
+ return [];
95
+ }
96
+ const q = layer.createQuery();
97
+ q.returnGeometry = false;
98
+ q.outFields = [layer.objectIdField];
99
+ q.where = globalIds.map(g => `${globalIdField} = '${g}'`).join(" or ");
100
+ const result = await layer.queryFeatures(q);
101
+ return result.features;
102
+ }
83
103
  /**
84
104
  * Query the layer for features that intersect the provided geometry
85
105
  *
@@ -159,4 +179,4 @@ async function _intersectQuery(geometry, layer) {
159
179
  return layer.queryObjectIds(q);
160
180
  }
161
181
 
162
- export { queryExtent as a, queryAllIds as b, queryObjectIds as c, queryFeaturesByGeometry as d, getQueryGeoms as g, queryFeaturesByID as q };
182
+ export { queryExtent as a, queryAllIds as b, queryFeaturesByGlobalID as c, queryObjectIds as d, queryFeaturesByGeometry as e, getQueryGeoms as g, queryFeaturesByID as q };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface RefineResultsFlowItem extends Components.RefineResultsFlowItem, HTMLElement {}
4
+ export const RefineResultsFlowItem: {
5
+ prototype: RefineResultsFlowItem;
6
+ new (): RefineResultsFlowItem;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,75 @@
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
+
8
+ const refineResultsFlowItemCss = ":host{display:block}";
9
+
10
+ const RefineResultsFlowItem$1 = /*@__PURE__*/ proxyCustomElement(class RefineResultsFlowItem extends HTMLElement {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ }
16
+ //--------------------------------------------------------------------------
17
+ //
18
+ // Properties (public)
19
+ //
20
+ //--------------------------------------------------------------------------
21
+ //--------------------------------------------------------------------------
22
+ //
23
+ // State (internal)
24
+ //
25
+ //--------------------------------------------------------------------------
26
+ //--------------------------------------------------------------------------
27
+ //
28
+ // Properties (protected)
29
+ //
30
+ //--------------------------------------------------------------------------
31
+ //--------------------------------------------------------------------------
32
+ //
33
+ // Watch handlers
34
+ //
35
+ //--------------------------------------------------------------------------
36
+ //--------------------------------------------------------------------------
37
+ //
38
+ // Methods (public)
39
+ //
40
+ //--------------------------------------------------------------------------
41
+ //--------------------------------------------------------------------------
42
+ //
43
+ // Events (public)
44
+ //
45
+ //--------------------------------------------------------------------------
46
+ //--------------------------------------------------------------------------
47
+ //
48
+ // Functions (lifecycle)
49
+ //
50
+ //--------------------------------------------------------------------------
51
+ render() {
52
+ return (h(Host, null, h("slot", null)));
53
+ }
54
+ get el() { return this; }
55
+ static get style() { return refineResultsFlowItemCss; }
56
+ }, [1, "refine-results-flow-item"]);
57
+ function defineCustomElement$1() {
58
+ if (typeof customElements === "undefined") {
59
+ return;
60
+ }
61
+ const components = ["refine-results-flow-item"];
62
+ components.forEach(tagName => { switch (tagName) {
63
+ case "refine-results-flow-item":
64
+ if (!customElements.get(tagName)) {
65
+ customElements.define(tagName, RefineResultsFlowItem$1);
66
+ }
67
+ break;
68
+ } });
69
+ }
70
+ defineCustomElement$1();
71
+
72
+ const RefineResultsFlowItem = RefineResultsFlowItem$1;
73
+ const defineCustomElement = defineCustomElement$1;
74
+
75
+ export { RefineResultsFlowItem, defineCustomElement };
@@ -6,7 +6,7 @@
6
6
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
7
7
  import { e as ESelectionMode, b as EDrawMode, E as EWorkflowType } from './interfaces.js';
8
8
  import { e as getFeatureLayerView, f as getIdSets, i as highlightAllFeatures } from './mapViewUtils.js';
9
- import { d as queryFeaturesByGeometry } from './queryUtils.js';
9
+ import { e as queryFeaturesByGeometry } from './queryUtils.js';
10
10
  import { s as state } from './publicNotificationStore.js';
11
11
  import { g as getLocaleComponentStrings } from './locale.js';
12
12
  import { d as defineCustomElement$s } from './action.js';
@@ -23,7 +23,7 @@ import { d as defineCustomElement$i } from './icon.js';
23
23
  import { d as defineCustomElement$h } from './input.js';
24
24
  import { d as defineCustomElement$g } from './label2.js';
25
25
  import { d as defineCustomElement$f } from './list.js';
26
- import { d as defineCustomElement$e } from './list-item2.js';
26
+ import { d as defineCustomElement$e } from './list-item.js';
27
27
  import { d as defineCustomElement$d } from './loader.js';
28
28
  import { d as defineCustomElement$c } from './notice.js';
29
29
  import { d as defineCustomElement$b } from './option.js';
@@ -1,9 +1,9 @@
1
1
  import type { Components, JSX } from "../types/components";
2
2
 
3
- interface ListItem extends Components.ListItem, HTMLElement {}
4
- export const ListItem: {
5
- prototype: ListItem;
6
- new (): ListItem;
3
+ interface ShareItem extends Components.ShareItem, HTMLElement {}
4
+ export const ShareItem: {
5
+ prototype: ShareItem;
6
+ new (): ShareItem;
7
7
  };
8
8
  /**
9
9
  * Used to define this component and all nested components recursively.
@@ -0,0 +1,75 @@
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
+
8
+ const shareItemCss = ":host{display:block}";
9
+
10
+ const ShareItem$1 = /*@__PURE__*/ proxyCustomElement(class ShareItem extends HTMLElement {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ }
16
+ //--------------------------------------------------------------------------
17
+ //
18
+ // Properties (public)
19
+ //
20
+ //--------------------------------------------------------------------------
21
+ //--------------------------------------------------------------------------
22
+ //
23
+ // State (internal)
24
+ //
25
+ //--------------------------------------------------------------------------
26
+ //--------------------------------------------------------------------------
27
+ //
28
+ // Properties (protected)
29
+ //
30
+ //--------------------------------------------------------------------------
31
+ //--------------------------------------------------------------------------
32
+ //
33
+ // Watch handlers
34
+ //
35
+ //--------------------------------------------------------------------------
36
+ //--------------------------------------------------------------------------
37
+ //
38
+ // Methods (public)
39
+ //
40
+ //--------------------------------------------------------------------------
41
+ //--------------------------------------------------------------------------
42
+ //
43
+ // Events (public)
44
+ //
45
+ //--------------------------------------------------------------------------
46
+ //--------------------------------------------------------------------------
47
+ //
48
+ // Functions (lifecycle)
49
+ //
50
+ //--------------------------------------------------------------------------
51
+ render() {
52
+ return (h(Host, null, h("slot", null)));
53
+ }
54
+ get el() { return this; }
55
+ static get style() { return shareItemCss; }
56
+ }, [1, "share-item"]);
57
+ function defineCustomElement$1() {
58
+ if (typeof customElements === "undefined") {
59
+ return;
60
+ }
61
+ const components = ["share-item"];
62
+ components.forEach(tagName => { switch (tagName) {
63
+ case "share-item":
64
+ if (!customElements.get(tagName)) {
65
+ customElements.define(tagName, ShareItem$1);
66
+ }
67
+ break;
68
+ } });
69
+ }
70
+ defineCustomElement$1();
71
+
72
+ const ShareItem = ShareItem$1;
73
+ const defineCustomElement = defineCustomElement$1;
74
+
75
+ export { ShareItem, defineCustomElement };
@@ -5,9 +5,9 @@
5
5
  */
6
6
  import { r as registerInstance, h, H as Host, g as getElement } from './index-b05b3079.js';
7
7
 
8
- const listItemCss = ":host{display:block}";
8
+ const arcgisLoginCss = ":host{display:block}";
9
9
 
10
- const ListItem = class {
10
+ const ArcgisLogin = class {
11
11
  constructor(hostRef) {
12
12
  registerInstance(this, hostRef);
13
13
  }
@@ -49,23 +49,8 @@ const ListItem = class {
49
49
  render() {
50
50
  return (h(Host, null, h("slot", null)));
51
51
  }
52
- //--------------------------------------------------------------------------
53
- //
54
- // Functions (protected)
55
- //
56
- //--------------------------------------------------------------------------
57
- /**
58
- * Fetches the component's translations
59
- *
60
- * @returns Promise when complete
61
- * @protected
62
- */
63
- async _getTranslations() {
64
- // const messages = await getLocaleComponentStrings(this.el);
65
- // this._translations = messages[0] as typeof BufferTools_T9n;
66
- }
67
52
  get el() { return getElement(this); }
68
53
  };
69
- ListItem.style = listItemCss;
54
+ ArcgisLogin.style = arcgisLoginCss;
70
55
 
71
- export { ListItem as list_item };
56
+ export { ArcgisLogin as arcgis_login };
@@ -444,6 +444,18 @@ const MapPicker = class {
444
444
  }
445
445
  //--------------------------------------------------------------------------
446
446
  //
447
+ // Methods (public)
448
+ //
449
+ //--------------------------------------------------------------------------
450
+ async setMapByID(id) {
451
+ var _a;
452
+ const mapInfos = (_a = this.mapInfos) === null || _a === void 0 ? void 0 : _a.filter(i => i.id === id);
453
+ if (id && (mapInfos === null || mapInfos === void 0 ? void 0 : mapInfos.length) > 0) {
454
+ this._webMapSelected(mapInfos[0]);
455
+ }
456
+ }
457
+ //--------------------------------------------------------------------------
458
+ //
447
459
  // Functions (lifecycle)
448
460
  //
449
461
  //--------------------------------------------------------------------------
@@ -461,14 +473,6 @@ const MapPicker = class {
461
473
  render() {
462
474
  return (h(Host, null, this._getToolbar(), this._getMapNameList(this._mapListExpanded)));
463
475
  }
464
- /**
465
- * Called after each render
466
- */
467
- async componentDidRender() {
468
- if (this._mapListExpanded) {
469
- await this._list.setFocus();
470
- }
471
- }
472
476
  /**
473
477
  * Called once after the component has loaded
474
478
  */
@@ -518,7 +522,7 @@ const MapPicker = class {
518
522
  */
519
523
  _getMapNameList(show) {
520
524
  const listClass = show ? "map-list" : "display-none";
521
- return (h("div", { class: listClass }, h("calcite-list", { id: "mapList", ref: (el) => this._list = el, selectionAppearance: "border" }, this.mapInfos.map(mapInfo => {
525
+ return (h("div", { class: listClass }, h("calcite-list", { id: "mapList", ref: (el) => this._list = el, selectionAppearance: "border", selectionMode: "single" }, this.mapInfos.map(mapInfo => {
522
526
  return (h("calcite-list-item", { label: mapInfo.name, onClick: () => this._webMapSelected(mapInfo), selected: mapInfo.id === this._loadedId, value: mapInfo.id }));
523
527
  }))));
524
528
  }