@esri/solutions-components 0.10.32 → 0.10.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/cjs/card-manager_3.cjs.entry.js +99 -6
  2. package/dist/cjs/crowdsource-manager.cjs.entry.js +13 -4
  3. package/dist/cjs/feature-list.cjs.entry.js +12 -3
  4. package/dist/cjs/instant-apps-time-filter.cjs.entry.js +2 -2
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/solution-item-icon.cjs.entry.js +4 -1
  7. package/dist/cjs/solutions-components.cjs.js +1 -1
  8. package/dist/collection/assets/t9n/map-card/resources.json +2 -1
  9. package/dist/collection/assets/t9n/map-card/resources_en.json +2 -1
  10. package/dist/collection/components/card-manager/card-manager.js +2 -2
  11. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +36 -4
  12. package/dist/collection/components/feature-list/feature-list.js +12 -3
  13. package/dist/collection/components/layer-table/layer-table.js +36 -2
  14. package/dist/collection/components/map-card/map-card.js +168 -2
  15. package/dist/collection/components/solution-item-icon/item-icons/group16.png +0 -0
  16. package/dist/collection/components/solution-item-icon/solution-item-icon.js +4 -1
  17. package/dist/components/card-manager2.js +2 -2
  18. package/dist/components/crowdsource-manager.js +14 -4
  19. package/dist/components/feature-list2.js +12 -3
  20. package/dist/components/instant-apps-time-filter.js +2 -2
  21. package/dist/components/layer-table2.js +13 -2
  22. package/dist/components/map-card2.js +157 -60
  23. package/dist/components/solution-item-icon2.js +4 -1
  24. package/dist/esm/card-manager_3.entry.js +99 -6
  25. package/dist/esm/crowdsource-manager.entry.js +13 -4
  26. package/dist/esm/feature-list.entry.js +12 -3
  27. package/dist/esm/instant-apps-time-filter.entry.js +2 -2
  28. package/dist/esm/loader.js +1 -1
  29. package/dist/esm/solution-item-icon.entry.js +4 -1
  30. package/dist/esm/solutions-components.js +1 -1
  31. package/dist/solutions-components/assets/t9n/map-card/resources.json +2 -1
  32. package/dist/solutions-components/assets/t9n/map-card/resources_en.json +2 -1
  33. package/dist/solutions-components/item-icons/group16.png +0 -0
  34. package/dist/solutions-components/p-3a513c67.entry.js +6 -0
  35. package/dist/solutions-components/p-4f5913f3.entry.js +6 -0
  36. package/dist/solutions-components/{p-3900240c.entry.js → p-5fc0e134.entry.js} +1 -1
  37. package/dist/solutions-components/p-8d2d66d0.entry.js +6 -0
  38. package/dist/solutions-components/p-cf878a34.entry.js +6 -0
  39. package/dist/solutions-components/solutions-components.esm.js +1 -1
  40. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
  41. package/dist/types/components/feature-list/feature-list.d.ts +4 -0
  42. package/dist/types/components/layer-table/layer-table.d.ts +9 -1
  43. package/dist/types/components/map-card/map-card.d.ts +46 -1
  44. package/dist/types/components.d.ts +48 -0
  45. package/package.json +4 -4
  46. package/dist/solutions-components/p-3bcdf332.entry.js +0 -6
  47. package/dist/solutions-components/p-710bd9ec.entry.js +0 -6
  48. package/dist/solutions-components/p-bd5f3c9e.entry.js +0 -6
  49. package/dist/solutions-components/p-cc4c013e.entry.js +0 -6
@@ -128,9 +128,9 @@ const CardManager = class {
128
128
  const messageClass = this._graphics?.length > 0 || this._showCreateFeatureComponent ? "display-none" : "";
129
129
  const isTable = this.layer?.isTable;
130
130
  const heading = isTable ? this._translations.createRecord : this._translations.createFeature;
131
- const guideMsg = this.customInfoText || this.selectingFeatureFromMap ? this._translations.selectFeaturesFromMapToStart : this._translations.selectFeaturesToStart;
131
+ const guideMsg = this.customInfoText ? this.customInfoText : this.selectingFeatureFromMap ? this._translations.selectFeaturesFromMapToStart : this._translations.selectFeaturesToStart;
132
132
  const showCreateFeatureOrRecordBtn = this.enableCreateFeatures && this.layer?.capabilities?.operations?.supportsAdd;
133
- return (index.h(index.Host, { key: '7bcc2cfc05bfb95ef444b2036c0fd709f816bfe8' }, index.h("div", { key: '088e91d3084a43cab7da6e2985784a9675f30bfb', class: "overflow-auto height-full" }, index.h("calcite-shell", { key: '4ce541bdadc42cc2625756af104e144e61ca0593', class: "position-relative " + featuresClass }, index.h("div", { key: 'f3fd57ce5a0122df70d36a72e7d8c7ace4ffed0c', class: "position-static z-index-500" }, index.h("info-card", { key: 'ed1f8e88937d905928e97f1149acdc42fc557d7c', enableEditGeometry: this.enableEditGeometry, graphics: this._graphics, isLoading: this._cardLoading, isMobile: this.isMobile, mapView: this.mapView }))), index.h("calcite-shell", { key: '21cd22e9d40954324ab68ae0f44305541a78faa4', class: "position-relative " + messageClass }, index.h("calcite-flow-item", { key: '2206f7bf57133e6249e84eed06363485dc540e89' }, index.h("calcite-panel", { key: 'a6a43c3eefcc1b03006dc14f39c9ba692620cf51' }, index.h("div", { key: 'f58c54e68a59e09ce8d51b010876e6f0261d920a', class: "padding-1" }, index.h("calcite-notice", { key: '5e57dcae6e804c3954a693d972a47171e07419a5', icon: this.selectingFeatureFromMap ? "map" : "table", iconFlipRtl: true, open: true }, index.h("div", { key: '9391598f800576d7f8dd2ca5778d8a9d493df5cc', slot: "message" }, guideMsg))), !this.isMobile && showCreateFeatureOrRecordBtn && index.h("calcite-button", { key: 'f30040df430858472437acef88f216040e4f3a4f', disabled: !this.layer, onClick: () => this._createFeatureBtnClicked(), slot: "footer", width: "full" }, isTable ? this._translations.createRecord : this._translations.createFeature)))), index.h("calcite-shell", { key: '6d14a7483427aa478f53e4ee54664ef2aae999fb', class: "position-relative " + createFeatureClass }, index.h("calcite-flow-item", { key: 'cace557395071006fcf0fc723f1808cad19f1099' }, index.h("calcite-panel", { key: '3eaa505ebf1d552775970c4f5b7dfc8f321c3f93', heading: heading }, index.h("calcite-action", { key: '68a09bb37ea2b6d827de48b13e1a41c74f5c34c6', class: "back-button hydrated", icon: "chevron-left", onClick: this._backFromCreateFeature.bind(this), scale: "s", slot: "header-actions-start", text: "" }), this.getEditorComponent(), this._showSubmitBtn && index.h("calcite-button", { key: '3e326f1e523fe3245365a4dad69372b52a969ae3', appearance: "solid", class: "footer-top-button footer-button", onClick: () => void this._createFeature.submit(), slot: "footer", width: "full" }, this._translations.create)))))));
133
+ return (index.h(index.Host, { key: '7360aa9c48dd0c3e4a14fe0833b99c301388f93c' }, index.h("div", { key: '9d610f0c4728c238eceb790e97a4e06b77f1a2d1', class: "overflow-auto height-full" }, index.h("calcite-shell", { key: '4b6a02205a971c7ff61aab567b2f2a3c5d288f8d', class: "position-relative " + featuresClass }, index.h("div", { key: '96ee8ce138265dd4b562ac0a33b79a0db4497842', class: "position-static z-index-500" }, index.h("info-card", { key: '7db359bc1016281fd01b737dc5c424fe78995422', enableEditGeometry: this.enableEditGeometry, graphics: this._graphics, isLoading: this._cardLoading, isMobile: this.isMobile, mapView: this.mapView }))), index.h("calcite-shell", { key: 'afc8d06e9aa3213a9ca10c929497ed4618a28e91', class: "position-relative " + messageClass }, index.h("calcite-flow-item", { key: '46db92a6e259eefea3293310e3e2f43d7639db97' }, index.h("calcite-panel", { key: 'd2bc23ae7bcf2b7b7b48a35efc0697e0d1f9e23e' }, index.h("div", { key: '8f7fd13f9ec99beec1d7231dda03eba403a70a69', class: "padding-1" }, index.h("calcite-notice", { key: '2fbe94292c1dd91ee1691b8e3d295225ff5b534b', icon: this.selectingFeatureFromMap ? "map" : "table", iconFlipRtl: true, open: true }, index.h("div", { key: '9f91099e4bfa0675c5b098a73b2f132b80ee76b0', slot: "message" }, guideMsg))), !this.isMobile && showCreateFeatureOrRecordBtn && index.h("calcite-button", { key: 'c1b04e776f3750712992d736e09726cc26eae5db', disabled: !this.layer, onClick: () => this._createFeatureBtnClicked(), slot: "footer", width: "full" }, isTable ? this._translations.createRecord : this._translations.createFeature)))), index.h("calcite-shell", { key: 'a71d4b0abd1ec1a4ed14a2cb3dcb10a075f54bf0', class: "position-relative " + createFeatureClass }, index.h("calcite-flow-item", { key: '85047b527f5995a912b527325f287c3596caf630' }, index.h("calcite-panel", { key: 'd335be81502e0feb803ee9ad4e501d4c85f184f5', heading: heading }, index.h("calcite-action", { key: 'b179c3185dbada3bd052d38b98b75cf29240655c', class: "back-button hydrated", icon: "chevron-left", onClick: this._backFromCreateFeature.bind(this), scale: "s", slot: "header-actions-start", text: "" }), this.getEditorComponent(), this._showSubmitBtn && index.h("calcite-button", { key: 'f3b6655e3effdb6b09e64acd651a09d6028a6df9', appearance: "solid", class: "footer-top-button footer-button", onClick: () => void this._createFeature.submit(), slot: "footer", width: "full" }, this._translations.create)))))));
134
134
  }
135
135
  /**
136
136
  * Returns the editor component for adding feature
@@ -213,6 +213,7 @@ const LayerTable = class {
213
213
  index.registerInstance(this, hostRef);
214
214
  this.featureSelectionChange = index.createEvent(this, "featureSelectionChange", 7);
215
215
  this.toggleFilter = index.createEvent(this, "toggleFilter", 7);
216
+ this.appLayout = undefined;
216
217
  this.defaultGlobalId = undefined;
217
218
  this.defaultLayerId = undefined;
218
219
  this.defaultOid = undefined;
@@ -416,6 +417,12 @@ const LayerTable = class {
416
417
  // Watch handlers
417
418
  //
418
419
  //--------------------------------------------------------------------------
420
+ /**
421
+ * Update the url params when the appLayout changes
422
+ */
423
+ appLayoutWatchHandler() {
424
+ this._updateShareUrl();
425
+ }
419
426
  /**
420
427
  * Handle url defaults when defaultOid is set
421
428
  */
@@ -702,8 +709,8 @@ const LayerTable = class {
702
709
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
703
710
  const showSearch = this._canShowFullTextSearch();
704
711
  this._validateActiveActions();
705
- return (index.h(index.Host, { key: '46394d7e108068600980efd766fbf5d91243f3c9' }, index.h("calcite-shell", { key: 'd831121a56070552139386033b02ddc2531c29e9' }, this._getTableControlRow("header"), index.h("div", { key: '591e0b0bba19f1dbe99049a470b5d3c04253a2c2', class: `width-full ${tableHeightClass}` }, index.h("calcite-panel", { key: 'd70244a3c989a5bea8bbbaf33c4ebe9c04fc4515', class: "height-full width-full" }, showSearch &&
706
- index.h("div", { key: 'fd14c6dab7898e27bd61bbc03878c898d26f042a', class: "search-container" }, index.h("calcite-input", { key: '9675cc22233456446be8a6b9fc24842fbb3f88e2', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), index.h("calcite-loader", { key: '74447458a0ac4cee6934e7101a5fee2c180d1330', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), index.h("div", { key: '6c2a5ff4a69690fde002005eb9c55047c25ad63d', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (index.h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
712
+ return (index.h(index.Host, { key: 'aa79d91e6c569393334a38f937a493de227a0e5b' }, index.h("calcite-shell", { key: '4b7460fc764c5a6027ad5aa8da826bd188e5490e' }, this._getTableControlRow("header"), index.h("div", { key: '66ea361c6c2c3a5d05c4403a5d3dd1dea5a9e70b', class: `width-full ${tableHeightClass}` }, index.h("calcite-panel", { key: 'b213a696294c94504f394b54082f0183b46691ce', class: "height-full width-full" }, showSearch &&
713
+ index.h("div", { key: '866dd2a69bc9e504b459ca8639d13f5babfa65fa', class: "search-container" }, index.h("calcite-input", { key: '26f80276d08106981ef8c769fd4334528a37d881', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), index.h("calcite-loader", { key: 'a3d2e215cee3e370ef5645b6422c95eef32beedf', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), index.h("div", { key: 'e48c86ee1ebcc23121eab08903e55cc41270c4c8', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (index.h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
707
714
  .replace("{{total}}", total)
708
715
  .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal()));
709
716
  }
@@ -1312,6 +1319,7 @@ const LayerTable = class {
1312
1319
  else {
1313
1320
  urlObj.searchParams.delete("oid");
1314
1321
  }
1322
+ urlObj.searchParams.set("applayout", this.appLayout);
1315
1323
  this._shareNode.shareUrl = urlObj.href;
1316
1324
  }
1317
1325
  /**
@@ -2056,6 +2064,7 @@ const LayerTable = class {
2056
2064
  this._translations = messages[0];
2057
2065
  }
2058
2066
  static get watchers() { return {
2067
+ "appLayout": ["appLayoutWatchHandler"],
2059
2068
  "defaultOid": ["defaultOidWatchHandler"],
2060
2069
  "defaultGlobalId": ["defaultGlobalIdWatchHandler"],
2061
2070
  "enableCSV": ["enableCSVWatchHandler"],
@@ -2121,6 +2130,7 @@ const MapCard = class {
2121
2130
  this.beforeMapChanged = index.createEvent(this, "beforeMapChanged", 7);
2122
2131
  this.toggleFilter = index.createEvent(this, "toggleFilter", 7);
2123
2132
  this.clearSelection = index.createEvent(this, "clearSelection", 7);
2133
+ this.appLayout = undefined;
2124
2134
  this.appProxies = undefined;
2125
2135
  this.defaultWebmapId = "";
2126
2136
  this.defaultLayerId = undefined;
@@ -2128,6 +2138,7 @@ const MapCard = class {
2128
2138
  this.enableLegend = undefined;
2129
2139
  this.enableFloorFilter = undefined;
2130
2140
  this.enableFullscreen = undefined;
2141
+ this.enableShare = false;
2131
2142
  this.enableSingleExpand = true;
2132
2143
  this.enableSearch = undefined;
2133
2144
  this.enableBasemap = undefined;
@@ -2145,6 +2156,8 @@ const MapCard = class {
2145
2156
  this.theme = undefined;
2146
2157
  this.toolOrder = undefined;
2147
2158
  this.isMapLayout = undefined;
2159
+ this.shareIncludeEmbed = undefined;
2160
+ this.shareIncludeSocial = undefined;
2148
2161
  this.selectedFeaturesIds = undefined;
2149
2162
  this.selectedLayer = undefined;
2150
2163
  this.zoomToScale = undefined;
@@ -2228,6 +2241,10 @@ const MapCard = class {
2228
2241
  * ResizeObserver: The observer that watches for toolbar size changes
2229
2242
  */
2230
2243
  _resizeObserver;
2244
+ /**
2245
+ * HTMLInstantAppsSocialShareElement: Element to support app sharing to social media
2246
+ */
2247
+ _shareNode;
2231
2248
  /**
2232
2249
  * HTMLCalciteDropdownElement: Dropdown the will support show/hide of table columns
2233
2250
  */
@@ -2257,12 +2274,36 @@ const MapCard = class {
2257
2274
  // Watch handlers
2258
2275
  //
2259
2276
  //--------------------------------------------------------------------------
2277
+ /**
2278
+ * Update the url params when the appLayout changes
2279
+ */
2280
+ appLayoutWatchHandler() {
2281
+ this._updateShareUrl();
2282
+ }
2260
2283
  /**
2261
2284
  * Add/remove home widget
2262
2285
  */
2263
2286
  enableHomeWatchHandler() {
2264
2287
  this._initHome();
2265
2288
  }
2289
+ /**
2290
+ * Update the toolbar when the share button is enabled/disabled
2291
+ */
2292
+ enableShareWatchHandler() {
2293
+ // this should be caught by component did render and is when I test locally
2294
+ // however have had reported case where it is not somehow on devext so adding explicit check here
2295
+ if (this._toolbar) {
2296
+ this._updateToolbar();
2297
+ }
2298
+ }
2299
+ /**
2300
+ * watch for changes in map view and get the first layer
2301
+ */
2302
+ async mapViewWatchHandler() {
2303
+ if (this.mapView) {
2304
+ this._updateShareUrl();
2305
+ }
2306
+ }
2266
2307
  /**
2267
2308
  * watch for changes in layer view and verify if it has editing enabled
2268
2309
  */
@@ -2275,6 +2316,7 @@ const MapCard = class {
2275
2316
  * watch for features ids changes
2276
2317
  */
2277
2318
  async selectedFeaturesIdsWatchHandler() {
2319
+ this._updateShareUrl();
2278
2320
  this._validateEnabledActions();
2279
2321
  }
2280
2322
  /**
@@ -2303,12 +2345,14 @@ const MapCard = class {
2303
2345
  */
2304
2346
  async resetFilter() {
2305
2347
  this._filterActive = false;
2348
+ this._updateShareUrl();
2306
2349
  }
2307
2350
  /**
2308
2351
  * updates the filter
2309
2352
  */
2310
2353
  async updateFilterState() {
2311
2354
  this._filterActive = this._definitionExpression !== this.selectedLayer.definitionExpression;
2355
+ this._updateShareUrl();
2312
2356
  }
2313
2357
  /**
2314
2358
  * updates the layer in map layer picker
@@ -2384,7 +2428,7 @@ const MapCard = class {
2384
2428
  const mapHeightClass = this.mapInfos?.length > 1 || this.isMapLayout ? "map-height" : "height-full";
2385
2429
  const progressClass = this.isMapLayout ? "" : "display-none";
2386
2430
  this._validateActiveActions();
2387
- return (index.h(index.Host, { key: '94d7399ed75c0e90487d6153a0d28ab6f722ae93' }, index.h("div", { key: 'e194d8800dd7a865e101d779d032d164f3e5562d', class: `${mapContainerClass} width-full`, ref: (el) => this._toolbar = el }, this._getActionBar(), !this.isMobile && this.isMapLayout && this._getDropdown("more-table-options")), index.h("calcite-progress", { key: '0abdbf4e8ba5861866aba7791dfdb91a7a5f4daa', class: progressClass, value: 0 }), index.h("div", { key: '83aa012aeef6ae64e49007d542fd949e7d4602f4', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), index.h("map-tools", { key: '229cc18b36885cad12d44c13e1fe37a97403b9d8', basemapConfig: this.basemapConfig, class: `box-shadow ${themeClass}`, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, enableLegend: this.enableLegend, enableSearch: this.enableSearch, enableSingleExpand: this.enableSingleExpand, homeZoomToolsSize: this.homeZoomToolsSize, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
2431
+ return (index.h(index.Host, { key: '790599924cf104116f6961380103aef7c55e6d76' }, index.h("div", { key: '5467a5d4e3998807fdf243ada3088dba8e69941f', class: `${mapContainerClass} width-full`, ref: (el) => this._toolbar = el }, this._getActionBar(), !this.isMobile && this.isMapLayout && this._getDropdown("more-table-options"), this.enableShare && !this.isMobile && this.isMapLayout ? this._getShare("share") : undefined), index.h("calcite-progress", { key: '5c82042e0206be05e12d29ba588b26344b1017b8', class: progressClass, value: 0 }), index.h("div", { key: '0831bc4593f5a7680a8599a9868990734cb013b9', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), index.h("map-tools", { key: '5bbf14428cc845d8b889e72d707672250f820686', basemapConfig: this.basemapConfig, class: `box-shadow ${themeClass}`, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, enableLegend: this.enableLegend, enableSearch: this.enableSearch, enableSingleExpand: this.enableSingleExpand, homeZoomToolsSize: this.homeZoomToolsSize, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
2388
2432
  }
2389
2433
  /**
2390
2434
  * Called each time after the component is loaded
@@ -2403,6 +2447,7 @@ const MapCard = class {
2403
2447
  this._resizeObserver.observe(this._toolbar);
2404
2448
  this._observerSet = true;
2405
2449
  }
2450
+ this._updateShareUrl();
2406
2451
  }
2407
2452
  //--------------------------------------------------------------------------
2408
2453
  //
@@ -2481,6 +2526,7 @@ const MapCard = class {
2481
2526
  mapView: this.mapView
2482
2527
  });
2483
2528
  }
2529
+ this._updateShareUrl();
2484
2530
  }
2485
2531
  /**
2486
2532
  * Add/Remove tools from the action bar and dropdown based on available size
@@ -2499,7 +2545,7 @@ const MapCard = class {
2499
2545
  prev += cur.width;
2500
2546
  return prev;
2501
2547
  }, 0);
2502
- const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker"];
2548
+ const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker", "solutions-action-share"];
2503
2549
  if (controlsWidth > toolbarWidth) {
2504
2550
  if (this._toolbarSizeInfos.length > 0) {
2505
2551
  const controlsThatFit = [...this._toolbarSizeInfos].reverse().reduce((prev, cur) => {
@@ -2625,6 +2671,50 @@ const MapCard = class {
2625
2671
  return (index.h("calcite-dropdown-group", { class: item.disabled ? "disabled" : "", selectionMode: "none" }, index.h("calcite-dropdown-item", { disabled: item.loading, iconStart: item.icon, id: "solutions-subset-list", onClick: item.func }, item.loading ? (index.h("div", { class: "display-flex" }, index.h("calcite-loader", { inline: true, label: item.label, scale: "m" }), item.label)) : item.label)));
2626
2672
  })))) : undefined;
2627
2673
  }
2674
+ /**
2675
+ * Get an action and tooltip for share
2676
+ *
2677
+ * @param icon string the name of the icon to display, will also be used in its id
2678
+ *
2679
+ * @returns VNode The node representing the DOM element that will contain the action
2680
+ */
2681
+ _getShare(icon) {
2682
+ return (index.h("div", { class: "share-action", id: this._getId(icon) }, index.h("instant-apps-social-share", { autoUpdateShareUrl: false, class: "instant-app-share", embed: this.shareIncludeEmbed, popoverButtonIconScale: "s", ref: el => {
2683
+ this._shareNode = el;
2684
+ this._updateShareUrl();
2685
+ }, scale: "m", shareButtonColor: "neutral", shareButtonType: "action", socialMedia: this.shareIncludeSocial, view: this.mapView }), this._getToolTip("bottom", icon, this._translations.share)));
2686
+ }
2687
+ /**
2688
+ * Called each time the values that are used for custom url params change
2689
+ */
2690
+ _updateShareUrl() {
2691
+ const url = this._shareNode?.shareUrl;
2692
+ if (!url) {
2693
+ return;
2694
+ }
2695
+ const urlObj = new URL(url);
2696
+ //set the additional search params
2697
+ if (this._loadedId) {
2698
+ urlObj.searchParams.set("webmap", this._loadedId);
2699
+ }
2700
+ else {
2701
+ urlObj.searchParams.delete("webmap");
2702
+ }
2703
+ if (this.selectedLayer?.id) {
2704
+ urlObj.searchParams.set("layer", this.selectedLayer.id);
2705
+ }
2706
+ else {
2707
+ urlObj.searchParams.delete("layer");
2708
+ }
2709
+ if (this.selectedFeaturesIds?.length > 0) {
2710
+ urlObj.searchParams.set("oid", this.selectedFeaturesIds.join(","));
2711
+ }
2712
+ else {
2713
+ urlObj.searchParams.delete("oid");
2714
+ }
2715
+ urlObj.searchParams.set("applayout", this.appLayout);
2716
+ this._shareNode.shareUrl = urlObj.href;
2717
+ }
2628
2718
  /**
2629
2719
  * Open show/hide dropdown
2630
2720
  * @protected
@@ -2900,7 +2990,10 @@ const MapCard = class {
2900
2990
  this._translations = messages[0];
2901
2991
  }
2902
2992
  static get watchers() { return {
2993
+ "appLayout": ["appLayoutWatchHandler"],
2903
2994
  "enableHome": ["enableHomeWatchHandler"],
2995
+ "enableShare": ["enableShareWatchHandler"],
2996
+ "mapView": ["mapViewWatchHandler"],
2904
2997
  "selectedLayer": ["selectedLayerWatchHandler"],
2905
2998
  "selectedFeaturesIds": ["selectedFeaturesIdsWatchHandler"],
2906
2999
  "_controlsThatFit": ["_controlsThatFitWatchHandler"]
@@ -27,6 +27,7 @@ const CrowdsourceManager = class {
27
27
  this.basemapConfig = undefined;
28
28
  this.coverPageEnabled = undefined;
29
29
  this.customInfoText = undefined;
30
+ this.defaultAppLayout = undefined;
30
31
  this.defaultCenter = "";
31
32
  this.defaultGlobalId = "";
32
33
  this.defaultLayer = "";
@@ -82,6 +83,10 @@ const CrowdsourceManager = class {
82
83
  // Properties (protected)
83
84
  //
84
85
  //--------------------------------------------------------------------------
86
+ /**
87
+ * boolean: When true the default appLayout has been applied and should no longer override
88
+ */
89
+ _defaultAppLayoutHonored = false;
85
90
  /**
86
91
  * boolean: When true the map view will be set after render due to popup obstructing the view
87
92
  * MapView.when is not fired when mapView is not currently visible
@@ -231,7 +236,7 @@ const CrowdsourceManager = class {
231
236
  render() {
232
237
  // only avoid border when we have a header color that is not white
233
238
  const borderClass = this.popupHeaderColor && this.popupHeaderColor !== "#FFFFFF" ? "border-width-0" : "";
234
- return (index.h(index.Host, { key: '797519a81cbac4330519ad114ca127efb4284b84' }, index.h("calcite-shell", { key: '253b4a3610a1b448e7db95dbdba9bfe931911d85', class: "position-relative" }, index.h("calcite-panel", { key: 'ed07e564d0ec7749121201f0e5fc64885d7794f9', class: `width-full height-full ${borderClass}`, loading: this._isLoading }, this._getBody(this._layoutMode, this._panelOpen, this._hideTable)), this._getFooter()), this._filterModal()));
239
+ return (index.h(index.Host, { key: 'ddb8bb35d74ab89ffd62d7bd0468b5a757fa5ba1' }, index.h("calcite-shell", { key: '74d941a3b1d4149a57c88cea263a2fd7e2b4f840', class: "position-relative" }, index.h("calcite-panel", { key: '3ff44942eab43c6f3a1cd92c918c0e2bae3d500a', class: `width-full height-full ${borderClass}`, loading: this._isLoading }, this._getBody(this._layoutMode, this._panelOpen, this._hideTable)), this._getFooter()), this._filterModal()));
235
240
  }
236
241
  /**
237
242
  * Called after each render
@@ -250,7 +255,11 @@ const CrowdsourceManager = class {
250
255
  */
251
256
  async componentDidLoad() {
252
257
  this._resizeObserver.observe(this.el);
253
- if (this.hideMapOnLoad && !this.appLayout) {
258
+ if (!this._defaultAppLayoutHonored && this.defaultAppLayout) {
259
+ this._defaultAppLayoutHonored = true;
260
+ this.appLayout = this.defaultAppLayout;
261
+ }
262
+ else if (this.hideMapOnLoad && !this.appLayout) {
254
263
  this.appLayout = 'tableView';
255
264
  }
256
265
  else if (!this.appLayout) {
@@ -426,7 +435,7 @@ const CrowdsourceManager = class {
426
435
  const isTableLayout = this.appLayout === 'tableView';
427
436
  const mapContainerClass = (isMapLayout || isTableLayout) ? "position-absolute-0" : this._layoutMode === interfaces.ELayoutMode.HORIZONTAL && (!this._isPortraitMobile || panelOpen) ? "" : "adjusted-height-50";
428
437
  const hasMapAndLayer = this.defaultWebmap && this.defaultLayer;
429
- return (index.h("div", { class: `${mapContainerClass} overflow-hidden`, id: "card-mapView" }, index.h("map-card", { appProxies: this.appProxies, basemapConfig: this.basemapConfig, class: "width-full", defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultWebmapId: this.defaultWebmap, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, enableLegend: this.enableLegend, enableSearch: this.enableSearch, enableSingleExpand: true, hidden: !this._isPortraitMobile && isTableLayout, homeZoomIndex: 3, homeZoomPosition: "top-left", homeZoomToolsSize: "s", isMapLayout: isMapLayout, isMobile: this._isMobile, mapInfo: this._mapInfo, mapInfos: this.mapInfos?.filter(mapInfo => mapInfo.visible !== false), mapWidgetsIndex: 0, mapWidgetsPosition: "top-right", mapWidgetsSize: "m", onToggleFilter: this._toggleFilter.bind(this), onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._mapCard = el, selectedFeaturesIds: this._layerTable?.selectedIds, selectedLayer: this._layer, stackTools: true, theme: this.theme, toolOrder: ["legend", "search", "fullscreen", "basemap", "floorfilter"], zoomToScale: this.zoomToScale })));
438
+ return (index.h("div", { class: `${mapContainerClass} overflow-hidden`, id: "card-mapView" }, index.h("map-card", { appLayout: this.appLayout, appProxies: this.appProxies, basemapConfig: this.basemapConfig, class: "width-full", defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultWebmapId: this.defaultWebmap, enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, enableLegend: this.enableLegend, enableSearch: this.enableSearch, enableShare: this.enableShare, enableSingleExpand: true, hidden: !this._isPortraitMobile && isTableLayout, homeZoomIndex: 3, homeZoomPosition: "top-left", homeZoomToolsSize: "s", isMapLayout: isMapLayout, isMobile: this._isMobile, mapInfo: this._mapInfo, mapInfos: this.mapInfos?.filter(mapInfo => mapInfo.visible !== false), mapWidgetsIndex: 0, mapWidgetsPosition: "top-right", mapWidgetsSize: "m", onToggleFilter: this._toggleFilter.bind(this), onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._mapCard = el, selectedFeaturesIds: this._layerTable?.selectedIds, selectedLayer: this._layer, shareIncludeEmbed: this.shareIncludeEmbed, shareIncludeSocial: this.shareIncludeSocial, stackTools: true, theme: this.theme, toolOrder: ["legend", "search", "fullscreen", "basemap", "floorfilter"], zoomToScale: this.zoomToScale })));
430
439
  }
431
440
  /**
432
441
  * Get the expand node for the popup information
@@ -488,7 +497,7 @@ const CrowdsourceManager = class {
488
497
  this.defaultGlobalId?.indexOf(",") > -1 ? this.defaultGlobalId.split(",") : [this.defaultGlobalId];
489
498
  const defaultOid = !this.defaultOid ? undefined :
490
499
  this.defaultOid?.indexOf(",") > -1 ? this.defaultOid.split(",").map(o => parseInt(o, 10)) : [parseInt(this.defaultOid, 10)];
491
- return (index.h("calcite-shell", { class: `${tableSizeClass} border-bottom` }, !this._isMobile ? (index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, this.getActions(layoutMode, panelOpen))) : undefined, index.h("div", { class: `width-full height-full position-relative z-index-0 ${tableClass}` }, index.h("layer-table", { createFilterModal: false, defaultGlobalId: hasMapAndLayer ? globalId : undefined, defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultOid: hasMapAndLayer && !globalId ? defaultOid : undefined, enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableColumnReorder: this.enableColumnReorder, enableInlineEdit: this?._mapInfo?.enableInlineEdit, enableShare: this.enableShare, isMobile: this._isPortraitMobile, mapHidden: isTableLayout, mapInfo: this._mapInfo, mapView: this?._mapView, onToggleFilter: this._toggleFilter.bind(this), onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._layerTable = el, shareIncludeEmbed: this.shareIncludeEmbed, shareIncludeSocial: this.shareIncludeSocial, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected, zoomToScale: this.zoomToScale })), index.h("div", { class: mapClass, id: "full-map-view" })));
500
+ return (index.h("calcite-shell", { class: `${tableSizeClass} border-bottom` }, !this._isMobile ? (index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, this.getActions(layoutMode, panelOpen))) : undefined, index.h("div", { class: `width-full height-full position-relative z-index-0 ${tableClass}` }, index.h("layer-table", { appLayout: this.appLayout, createFilterModal: false, defaultGlobalId: hasMapAndLayer ? globalId : undefined, defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultOid: hasMapAndLayer && !globalId ? defaultOid : undefined, enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableColumnReorder: this.enableColumnReorder, enableInlineEdit: this?._mapInfo?.enableInlineEdit, enableShare: this.enableShare, isMobile: this._isPortraitMobile, mapHidden: isTableLayout, mapInfo: this._mapInfo, mapView: this?._mapView, onToggleFilter: this._toggleFilter.bind(this), onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._layerTable = el, shareIncludeEmbed: this.shareIncludeEmbed, shareIncludeSocial: this.shareIncludeSocial, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected, zoomToScale: this.zoomToScale })), index.h("div", { class: mapClass, id: "full-map-view" })));
492
501
  }
493
502
  /**
494
503
  * Returns the Actions for table's node
@@ -79,6 +79,10 @@ const FeatureList = class {
79
79
  * __esri.Handle: Highlight handle of the selections
80
80
  */
81
81
  _highlightHandle;
82
+ /**
83
+ * __esri.Collection: Highlight options for the selected layer
84
+ */
85
+ _highlights;
82
86
  /**
83
87
  * HTMLCalcitePaginationElement: Calcite pagination element instance
84
88
  */
@@ -179,9 +183,9 @@ const FeatureList = class {
179
183
  * Renders the component.
180
184
  */
181
185
  render() {
182
- return (index.h("calcite-panel", { key: 'fc2cc60231efb7fc4a05d3ade0bad6a3dd649b8e', "full-height": true, "full-width": true }, this._isLoading && index.h("calcite-loader", { key: '43c8176c2aaf0cc7f36a9f1ff477f53890cfcf2d', label: "", scale: "m" }), this.showErrorWhenNoFeatures && this._featureItems.length === 0 && !this._isLoading &&
183
- index.h("calcite-notice", { key: 'dff1bb7207397ded8a557b61e9185ea788520441', class: "error-msg", icon: "feature-details", kind: "info", open: true }, index.h("div", { key: 'c1dd4e7fb8398c4317270b50eba7e6270fd7051b', slot: "message" }, this.noFeaturesFoundMsg ? this.noFeaturesFoundMsg : this._translations.featureErrorMsg)), index.h("calcite-list", { key: '49019c011e8667d193f566826644b0693b0fb6f9', "selection-appearance": "border", "selection-mode": "none" }, !this._isLoading && this._featureItems.length > 0 && this._featureItems), this._featuresCount > this.pageSize &&
184
- index.h("div", { key: '12e767a001c4dffec7e771d12b772fb43bbf9b0f', class: "width-full", slot: "footer" }, index.h("calcite-pagination", { key: 'd6a8a9eac72fe7217eda926f46baedcb4e6d5859', 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 }))));
186
+ return (index.h("calcite-panel", { key: '381f7da40e715848d4601810aacedbe3a7a46d6d', "full-height": true, "full-width": true }, this._isLoading && index.h("calcite-loader", { key: '62d128eee1b0a987fe24764b8cfbff148dcf9084', label: "", scale: "m" }), this.showErrorWhenNoFeatures && this._featureItems.length === 0 && !this._isLoading &&
187
+ index.h("calcite-notice", { key: '975aef0b4c33676fc2be4aa85a51641d0b203cd4', class: "error-msg", icon: "feature-details", kind: "info", open: true }, index.h("div", { key: 'c002eb4d59d8bab086d91266ca4a0ca56a185db3', slot: "message" }, this.noFeaturesFoundMsg ? this.noFeaturesFoundMsg : this._translations.featureErrorMsg)), index.h("calcite-list", { key: '50f0c269f30e9619561ea61f462fb964f91a93a9', "selection-appearance": "border", "selection-mode": "none" }, !this._isLoading && this._featureItems.length > 0 && this._featureItems), this._featuresCount > this.pageSize &&
188
+ index.h("div", { key: '97f837035b89d3045efd2771c0ef77d12fbb333b', class: "width-full", slot: "footer" }, index.h("calcite-pagination", { key: 'd88adbe6499b358395bd7bf5917c3d0c1506d8b1', 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 }))));
185
189
  }
186
190
  //--------------------------------------------------------------------------
187
191
  //
@@ -300,7 +304,12 @@ const FeatureList = class {
300
304
  if (this.highlightOnHover) {
301
305
  const oId = selectedFeature.getObjectId();
302
306
  const selectedLayerView = await mapViewUtils.getFeatureLayerView(this.mapView, this.selectedLayerId);
307
+ // this is a workaround added for https://github.com/Esri/solutions-components/issues/920
308
+ if (this._highlights) {
309
+ selectedLayerView.highlights = JSON.parse(this._highlights);
310
+ }
303
311
  selectedLayerView.highlightOptions = { color: new this.Color("#FFFF00") };
312
+ this._highlights = JSON.stringify(selectedLayerView.highlights);
304
313
  this._highlightHandle = selectedLayerView.highlight([oId]);
305
314
  }
306
315
  }
@@ -31,7 +31,7 @@ const { state, onChange } = index.createStore({
31
31
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
32
32
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
33
33
  */
34
- let e$a;function has(a){return "function"==typeof e$a[a]?e$a[a]=e$a[a](globalThis):e$a[a]}e$a=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},has.add=(a,d,o,i)=>{(i||void 0===e$a[a])&&(e$a[a]=d),o&&has(a);},has.cache=e$a,has.add("big-integer-warning-enabled",!0),has.add("esri-deprecation-warnings",!0),has.add("esri-tests-disable-screenshots",!1),has.add("esri-tests-use-full-window",!1),has.add("esri-tests-post-to-influx",!0),has.add("esri-cim-animations-enable-status","enabled"),has.add("esri-cim-animations-spotlight",!1),has.add("esri-cim-animations-freeze-time",!1),(()=>{has.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(has.add("host-browser",e),has.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),has.add("dom",e),has("host-browser")){const e=navigator,a=e.userAgent,d=e.appVersion,o=parseFloat(d);if(has.add("wp",parseFloat(a.split("Windows Phone")[1])||void 0),has.add("msapp",parseFloat(a.split("MSAppHost/")[1])||void 0),has.add("khtml",d.includes("Konqueror")?o:void 0),has.add("edge",parseFloat(a.split("Edge/")[1])||void 0),has.add("opr",parseFloat(a.split("OPR/")[1])||void 0),has.add("webkit",!has("wp")&&!has("edge")&&parseFloat(a.split("WebKit/")[1])||void 0),has.add("chrome",!has("edge")&&!has("opr")&&parseFloat(a.split("Chrome/")[1])||void 0),has.add("android",!has("wp")&&parseFloat(a.split("Android ")[1])||void 0),has.add("safari",!d.includes("Safari")||has("wp")||has("chrome")||has("android")||has("edge")||has("opr")?void 0:parseFloat(d.split("Version/")[1])),has.add("mac",d.includes("Macintosh")),!has("wp")&&/(iPhone|iPod|iPad)/.test(a)){const e=RegExp.$1.replace(/P/,"p"),d=/OS ([\d_]+)/.test(a)?RegExp.$1:"1",o=parseFloat(d.replace(/_/,".").replaceAll("_",""));has.add(e,o),has.add("ios",o);}has("webkit")||(!a.includes("Gecko")||has("wp")||has("khtml")||has("edge")||has.add("mozilla",o),has("mozilla")&&has.add("ff",parseFloat(a.split("Firefox/")[1]||a.split("Minefield/")[1])||void 0));}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,a=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),d=/iPhone/i.test(e);a&&has.add("esri-mobile",a),d&&has.add("esri-iPhone",d),has.add("esri-geolocation",!!navigator.geolocation);}has.add("esri-wasm","WebAssembly"in globalThis),has.add("esri-performance-mode-frames-between-render",20),has.add("esri-force-performance-mode",!1),has.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,a=!1===globalThis.crossOriginIsolated;return e&&!a})),has.add("wasm-simd",(()=>{const e=[0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11];return WebAssembly.validate(new Uint8Array(e))})),has.add("esri-atomics","Atomics"in globalThis),has.add("esri-workers","Worker"in globalThis),has.add("web-feat:cache","caches"in globalThis),has.add("esri-workers-arraybuffer-transfer",!has("safari")||Number(has("safari"))>=12),has.add("workers-pool-size",8),has.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),has.add("featurelayer-simplify-payload-size-factors",[1,1,4]),has.add("featurelayer-fast-triangulation-enabled",!0),has.add("featurelayer-animation-enabled",!0),has.add("featurelayer-snapshot-enabled",!0),has.add("featurelayer-snapshot-point-min-threshold",8e4),has.add("featurelayer-snapshot-point-max-threshold",4e5),has.add("featurelayer-snapshot-point-coverage",.1),has.add("featurelayer-query-max-depth",4),has.add("featurelayer-query-pausing-enabled",!1),has.add("featurelayer-advanced-symbols",!1),has.add("featurelayer-pbf",!0),has.add("featurelayer-pbf-statistics",!1),has.add("feature-layers-workers",!0),has.add("feature-polyline-generalization-factor",1),has.add("mapview-transitions-duration",200),has.add("mapview-essential-goto-duration",200),has.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),has.add("mapserver-pbf-version-support",10.81),has.add("mapservice-popup-identify-max-tolerance",20),has("host-webworker")||has("host-browser")&&(has.add("esri-csp-restrictions",(()=>{try{new Function;}catch{return !0}return !1})),has.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{has.add("esri-image-decode",!0,!0,!0);})).catch((()=>{has.add("esri-image-decode",!1,!0,!0);}))}return !1})),has.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})));})();
34
+ let e$a;function has(a){return "function"==typeof e$a[a]?e$a[a]=e$a[a](globalThis):e$a[a]}e$a=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},has.add=(a,d,o,i)=>{(i||void 0===e$a[a])&&(e$a[a]=d),o&&has(a);},has.cache=e$a,has.add("big-integer-warning-enabled",!0),has.add("esri-deprecation-warnings",!0),has.add("esri-tests-disable-screenshots",!1),has.add("esri-tests-use-full-window",!1),has.add("esri-tests-post-to-influx",!0),has.add("esri-cim-animations-enable-status","enabled"),has.add("esri-cim-animations-spotlight",!1),has.add("esri-cim-animations-freeze-time",!1),has.add("enable-feature:multiple-highlights",!1),(()=>{has.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(has.add("host-browser",e),has.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),has.add("dom",e),has("host-browser")){const e=navigator,a=e.userAgent,d=e.appVersion,o=parseFloat(d);if(has.add("wp",parseFloat(a.split("Windows Phone")[1])||void 0),has.add("msapp",parseFloat(a.split("MSAppHost/")[1])||void 0),has.add("khtml",d.includes("Konqueror")?o:void 0),has.add("edge",parseFloat(a.split("Edge/")[1])||void 0),has.add("opr",parseFloat(a.split("OPR/")[1])||void 0),has.add("webkit",!has("wp")&&!has("edge")&&parseFloat(a.split("WebKit/")[1])||void 0),has.add("chrome",!has("edge")&&!has("opr")&&parseFloat(a.split("Chrome/")[1])||void 0),has.add("android",!has("wp")&&parseFloat(a.split("Android ")[1])||void 0),has.add("safari",!d.includes("Safari")||has("wp")||has("chrome")||has("android")||has("edge")||has("opr")?void 0:parseFloat(d.split("Version/")[1])),has.add("mac",d.includes("Macintosh")),!has("wp")&&/(iPhone|iPod|iPad)/.test(a)){const e=RegExp.$1.replace(/P/,"p"),d=/OS ([\d_]+)/.test(a)?RegExp.$1:"1",o=parseFloat(d.replace(/_/,".").replaceAll("_",""));has.add(e,o),has.add("ios",o);}has("webkit")||(!a.includes("Gecko")||has("wp")||has("khtml")||has("edge")||has.add("mozilla",o),has("mozilla")&&has.add("ff",parseFloat(a.split("Firefox/")[1]||a.split("Minefield/")[1])||void 0));}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,a=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),d=/iPhone/i.test(e);a&&has.add("esri-mobile",a),d&&has.add("esri-iPhone",d),has.add("esri-geolocation",!!navigator.geolocation);}has.add("esri-wasm","WebAssembly"in globalThis),has.add("esri-performance-mode-frames-between-render",20),has.add("esri-force-performance-mode",!1),has.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,a=!1===globalThis.crossOriginIsolated;return e&&!a})),has.add("wasm-simd",(()=>{const e=[0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11];return WebAssembly.validate(new Uint8Array(e))})),has.add("esri-atomics","Atomics"in globalThis),has.add("esri-workers","Worker"in globalThis),has.add("web-feat:cache","caches"in globalThis),has.add("esri-workers-arraybuffer-transfer",!has("safari")||Number(has("safari"))>=12),has.add("workers-pool-size",8),has.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),has.add("featurelayer-simplify-payload-size-factors",[1,1,4]),has.add("featurelayer-fast-triangulation-enabled",!0),has.add("featurelayer-animation-enabled",!0),has.add("featurelayer-snapshot-enabled",!0),has.add("featurelayer-snapshot-point-min-threshold",8e4),has.add("featurelayer-snapshot-point-max-threshold",4e5),has.add("featurelayer-snapshot-point-coverage",.1),has.add("featurelayer-query-max-depth",4),has.add("featurelayer-query-pausing-enabled",!1),has.add("featurelayer-advanced-symbols",!1),has.add("featurelayer-pbf",!0),has.add("featurelayer-pbf-statistics",!1),has.add("feature-layers-workers",!0),has.add("feature-polyline-generalization-factor",1),has.add("mapview-transitions-duration",200),has.add("mapview-essential-goto-duration",200),has.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),has.add("mapserver-pbf-version-support",10.81),has.add("mapservice-popup-identify-max-tolerance",20),has("host-webworker")||has("host-browser")&&(has.add("esri-csp-restrictions",(()=>{try{new Function;}catch{return !0}return !1})),has.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{has.add("esri-image-decode",!0,!0,!0);})).catch((()=>{has.add("esri-image-decode",!1,!0,!0);}))}return !1})),has.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})));})();
35
35
 
36
36
  /*
37
37
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
@@ -55,7 +55,7 @@ function n$7(r,n,t=!1){return f$4(r,n,t)}function t$4(r,n){if(null!=n)return n[r
55
55
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
56
56
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
57
57
  */
58
- const c$6="20241007";
58
+ const c$6="20241016";
59
59
 
60
60
  /*
61
61
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.