@esri/solutions-components 0.10.33 → 0.10.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. package/dist/cjs/card-manager_3.cjs.entry.js +97 -4
  2. package/dist/cjs/crowdsource-manager.cjs.entry.js +13 -4
  3. package/dist/cjs/instant-apps-time-filter.cjs.entry.js +2 -2
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/solutions-components.cjs.js +1 -1
  6. package/dist/collection/assets/t9n/map-card/resources.json +2 -1
  7. package/dist/collection/assets/t9n/map-card/resources_en.json +2 -1
  8. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +36 -4
  9. package/dist/collection/components/layer-table/layer-table.js +36 -2
  10. package/dist/collection/components/map-card/map-card.js +168 -2
  11. package/dist/components/crowdsource-manager.js +14 -4
  12. package/dist/components/instant-apps-time-filter.js +2 -2
  13. package/dist/components/layer-table2.js +13 -2
  14. package/dist/components/map-card2.js +157 -60
  15. package/dist/esm/card-manager_3.entry.js +97 -4
  16. package/dist/esm/crowdsource-manager.entry.js +13 -4
  17. package/dist/esm/instant-apps-time-filter.entry.js +2 -2
  18. package/dist/esm/loader.js +1 -1
  19. package/dist/esm/solutions-components.js +1 -1
  20. package/dist/solutions-components/assets/t9n/map-card/resources.json +2 -1
  21. package/dist/solutions-components/assets/t9n/map-card/resources_en.json +2 -1
  22. package/dist/solutions-components/p-3a513c67.entry.js +6 -0
  23. package/dist/solutions-components/p-8d2d66d0.entry.js +6 -0
  24. package/dist/solutions-components/p-cf878a34.entry.js +6 -0
  25. package/dist/solutions-components/solutions-components.esm.js +1 -1
  26. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +8 -0
  27. package/dist/types/components/layer-table/layer-table.d.ts +9 -1
  28. package/dist/types/components/map-card/map-card.d.ts +46 -1
  29. package/dist/types/components.d.ts +48 -0
  30. package/package.json +2 -2
  31. package/dist/solutions-components/p-084719d6.entry.js +0 -6
  32. package/dist/solutions-components/p-3bcdf332.entry.js +0 -6
  33. package/dist/solutions-components/p-710bd9ec.entry.js +0 -6
@@ -59,6 +59,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
59
59
  this.__registerHost();
60
60
  this.featureSelectionChange = createEvent(this, "featureSelectionChange", 7);
61
61
  this.toggleFilter = createEvent(this, "toggleFilter", 7);
62
+ this.appLayout = undefined;
62
63
  this.defaultGlobalId = undefined;
63
64
  this.defaultLayerId = undefined;
64
65
  this.defaultOid = undefined;
@@ -262,6 +263,12 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
262
263
  // Watch handlers
263
264
  //
264
265
  //--------------------------------------------------------------------------
266
+ /**
267
+ * Update the url params when the appLayout changes
268
+ */
269
+ appLayoutWatchHandler() {
270
+ this._updateShareUrl();
271
+ }
265
272
  /**
266
273
  * Handle url defaults when defaultOid is set
267
274
  */
@@ -548,8 +555,8 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
548
555
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
549
556
  const showSearch = this._canShowFullTextSearch();
550
557
  this._validateActiveActions();
551
- return (h(Host, { key: '46394d7e108068600980efd766fbf5d91243f3c9' }, h("calcite-shell", { key: 'd831121a56070552139386033b02ddc2531c29e9' }, this._getTableControlRow("header"), h("div", { key: '591e0b0bba19f1dbe99049a470b5d3c04253a2c2', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'd70244a3c989a5bea8bbbaf33c4ebe9c04fc4515', class: "height-full width-full" }, showSearch &&
552
- h("div", { key: 'fd14c6dab7898e27bd61bbc03878c898d26f042a', class: "search-container" }, 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" })), h("calcite-loader", { key: '74447458a0ac4cee6934e7101a5fee2c180d1330', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '6c2a5ff4a69690fde002005eb9c55047c25ad63d', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
558
+ return (h(Host, { key: 'aa79d91e6c569393334a38f937a493de227a0e5b' }, h("calcite-shell", { key: '4b7460fc764c5a6027ad5aa8da826bd188e5490e' }, this._getTableControlRow("header"), h("div", { key: '66ea361c6c2c3a5d05c4403a5d3dd1dea5a9e70b', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'b213a696294c94504f394b54082f0183b46691ce', class: "height-full width-full" }, showSearch &&
559
+ h("div", { key: '866dd2a69bc9e504b459ca8639d13f5babfa65fa', class: "search-container" }, 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" })), h("calcite-loader", { key: 'a3d2e215cee3e370ef5645b6422c95eef32beedf', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: 'e48c86ee1ebcc23121eab08903e55cc41270c4c8', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
553
560
  .replace("{{total}}", total)
554
561
  .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal()));
555
562
  }
@@ -1158,6 +1165,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1158
1165
  else {
1159
1166
  urlObj.searchParams.delete("oid");
1160
1167
  }
1168
+ urlObj.searchParams.set("applayout", this.appLayout);
1161
1169
  this._shareNode.shareUrl = urlObj.href;
1162
1170
  }
1163
1171
  /**
@@ -1902,6 +1910,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1902
1910
  this._translations = messages[0];
1903
1911
  }
1904
1912
  static get watchers() { return {
1913
+ "appLayout": ["appLayoutWatchHandler"],
1905
1914
  "defaultOid": ["defaultOidWatchHandler"],
1906
1915
  "defaultGlobalId": ["defaultGlobalIdWatchHandler"],
1907
1916
  "enableCSV": ["enableCSVWatchHandler"],
@@ -1917,6 +1926,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1917
1926
  }; }
1918
1927
  static get style() { return LayerTableStyle0; }
1919
1928
  }, [0, "layer-table", {
1929
+ "appLayout": [1, "app-layout"],
1920
1930
  "defaultGlobalId": [16],
1921
1931
  "defaultLayerId": [1, "default-layer-id"],
1922
1932
  "defaultOid": [16],
@@ -1957,6 +1967,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1957
1967
  "closeFilter": [64],
1958
1968
  "refresh": [64]
1959
1969
  }, [[8, "selectionChanged", "selectionChanged"], [8, "layerSelectionChange", "layerSelectionChange"], [8, "editsComplete", "editsComplete"], [8, "facilityChanged", "facilityChanged"], [8, "levelChanged", "levelChanged"], [8, "siteChanged", "siteChanged"], [8, "noLayersFound", "noLayersFound"], [8, "clearSelection", "clearSelection"]], {
1970
+ "appLayout": ["appLayoutWatchHandler"],
1960
1971
  "defaultOid": ["defaultOidWatchHandler"],
1961
1972
  "defaultGlobalId": ["defaultGlobalIdWatchHandler"],
1962
1973
  "enableCSV": ["enableCSVWatchHandler"],
@@ -7,35 +7,36 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
7
7
  import { l as loadModules } from './loadModules.js';
8
8
  import { g as getLocaleComponentStrings } from './locale.js';
9
9
  import { c as getFeatureLayerView, b as goToSelection } from './mapViewUtils.js';
10
- import { d as defineCustomElement$z } from './basemap-gallery2.js';
11
- import { d as defineCustomElement$y } from './action.js';
12
- import { d as defineCustomElement$x } from './action-bar.js';
13
- import { d as defineCustomElement$w } from './action-group.js';
14
- import { d as defineCustomElement$v } from './action-menu.js';
15
- import { d as defineCustomElement$u } from './button.js';
16
- import { d as defineCustomElement$t } from './chip.js';
17
- import { d as defineCustomElement$s } from './combobox.js';
18
- import { d as defineCustomElement$r } from './combobox-item.js';
19
- import { d as defineCustomElement$q } from './dropdown.js';
20
- import { d as defineCustomElement$p } from './dropdown-group.js';
21
- import { d as defineCustomElement$o } from './dropdown-item.js';
22
- import { d as defineCustomElement$n } from './filter2.js';
23
- import { d as defineCustomElement$m } from './handle.js';
24
- import { d as defineCustomElement$l } from './icon.js';
25
- import { d as defineCustomElement$k } from './input.js';
26
- import { d as defineCustomElement$j } from './label2.js';
27
- import { d as defineCustomElement$i } from './list.js';
28
- import { d as defineCustomElement$h } from './list-item.js';
29
- import { d as defineCustomElement$g } from './loader.js';
30
- import { d as defineCustomElement$f } from './notice.js';
31
- import { d as defineCustomElement$e } from './option.js';
32
- import { d as defineCustomElement$d } from './popover.js';
33
- import { d as defineCustomElement$c } from './progress.js';
34
- import { d as defineCustomElement$b } from './scrim.js';
35
- import { d as defineCustomElement$a } from './select.js';
36
- import { d as defineCustomElement$9 } from './stack.js';
37
- import { d as defineCustomElement$8 } from './tooltip.js';
38
- import { d as defineCustomElement$7 } from './floor-filter2.js';
10
+ import { d as defineCustomElement$A } from './basemap-gallery2.js';
11
+ import { d as defineCustomElement$z } from './action.js';
12
+ import { d as defineCustomElement$y } from './action-bar.js';
13
+ import { d as defineCustomElement$x } from './action-group.js';
14
+ import { d as defineCustomElement$w } from './action-menu.js';
15
+ import { d as defineCustomElement$v } from './button.js';
16
+ import { d as defineCustomElement$u } from './chip.js';
17
+ import { d as defineCustomElement$t } from './combobox.js';
18
+ import { d as defineCustomElement$s } from './combobox-item.js';
19
+ import { d as defineCustomElement$r } from './dropdown.js';
20
+ import { d as defineCustomElement$q } from './dropdown-group.js';
21
+ import { d as defineCustomElement$p } from './dropdown-item.js';
22
+ import { d as defineCustomElement$o } from './filter2.js';
23
+ import { d as defineCustomElement$n } from './handle.js';
24
+ import { d as defineCustomElement$m } from './icon.js';
25
+ import { d as defineCustomElement$l } from './input.js';
26
+ import { d as defineCustomElement$k } from './label2.js';
27
+ import { d as defineCustomElement$j } from './list.js';
28
+ import { d as defineCustomElement$i } from './list-item.js';
29
+ import { d as defineCustomElement$h } from './loader.js';
30
+ import { d as defineCustomElement$g } from './notice.js';
31
+ import { d as defineCustomElement$f } from './option.js';
32
+ import { d as defineCustomElement$e } from './popover.js';
33
+ import { d as defineCustomElement$d } from './progress.js';
34
+ import { d as defineCustomElement$c } from './scrim.js';
35
+ import { d as defineCustomElement$b } from './select.js';
36
+ import { d as defineCustomElement$a } from './stack.js';
37
+ import { d as defineCustomElement$9 } from './tooltip.js';
38
+ import { d as defineCustomElement$8 } from './floor-filter2.js';
39
+ import { d as defineCustomElement$7 } from './instant-apps-social-share2.js';
39
40
  import { d as defineCustomElement$6 } from './map-fullscreen2.js';
40
41
  import { d as defineCustomElement$5 } from './map-layer-picker2.js';
41
42
  import { d as defineCustomElement$4 } from './map-legend2.js';
@@ -93,6 +94,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
93
94
  this.beforeMapChanged = createEvent(this, "beforeMapChanged", 7);
94
95
  this.toggleFilter = createEvent(this, "toggleFilter", 7);
95
96
  this.clearSelection = createEvent(this, "clearSelection", 7);
97
+ this.appLayout = undefined;
96
98
  this.appProxies = undefined;
97
99
  this.defaultWebmapId = "";
98
100
  this.defaultLayerId = undefined;
@@ -100,6 +102,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
100
102
  this.enableLegend = undefined;
101
103
  this.enableFloorFilter = undefined;
102
104
  this.enableFullscreen = undefined;
105
+ this.enableShare = false;
103
106
  this.enableSingleExpand = true;
104
107
  this.enableSearch = undefined;
105
108
  this.enableBasemap = undefined;
@@ -117,6 +120,8 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
117
120
  this.theme = undefined;
118
121
  this.toolOrder = undefined;
119
122
  this.isMapLayout = undefined;
123
+ this.shareIncludeEmbed = undefined;
124
+ this.shareIncludeSocial = undefined;
120
125
  this.selectedFeaturesIds = undefined;
121
126
  this.selectedLayer = undefined;
122
127
  this.zoomToScale = undefined;
@@ -200,6 +205,10 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
200
205
  * ResizeObserver: The observer that watches for toolbar size changes
201
206
  */
202
207
  _resizeObserver;
208
+ /**
209
+ * HTMLInstantAppsSocialShareElement: Element to support app sharing to social media
210
+ */
211
+ _shareNode;
203
212
  /**
204
213
  * HTMLCalciteDropdownElement: Dropdown the will support show/hide of table columns
205
214
  */
@@ -229,12 +238,36 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
229
238
  // Watch handlers
230
239
  //
231
240
  //--------------------------------------------------------------------------
241
+ /**
242
+ * Update the url params when the appLayout changes
243
+ */
244
+ appLayoutWatchHandler() {
245
+ this._updateShareUrl();
246
+ }
232
247
  /**
233
248
  * Add/remove home widget
234
249
  */
235
250
  enableHomeWatchHandler() {
236
251
  this._initHome();
237
252
  }
253
+ /**
254
+ * Update the toolbar when the share button is enabled/disabled
255
+ */
256
+ enableShareWatchHandler() {
257
+ // this should be caught by component did render and is when I test locally
258
+ // however have had reported case where it is not somehow on devext so adding explicit check here
259
+ if (this._toolbar) {
260
+ this._updateToolbar();
261
+ }
262
+ }
263
+ /**
264
+ * watch for changes in map view and get the first layer
265
+ */
266
+ async mapViewWatchHandler() {
267
+ if (this.mapView) {
268
+ this._updateShareUrl();
269
+ }
270
+ }
238
271
  /**
239
272
  * watch for changes in layer view and verify if it has editing enabled
240
273
  */
@@ -247,6 +280,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
247
280
  * watch for features ids changes
248
281
  */
249
282
  async selectedFeaturesIdsWatchHandler() {
283
+ this._updateShareUrl();
250
284
  this._validateEnabledActions();
251
285
  }
252
286
  /**
@@ -275,12 +309,14 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
275
309
  */
276
310
  async resetFilter() {
277
311
  this._filterActive = false;
312
+ this._updateShareUrl();
278
313
  }
279
314
  /**
280
315
  * updates the filter
281
316
  */
282
317
  async updateFilterState() {
283
318
  this._filterActive = this._definitionExpression !== this.selectedLayer.definitionExpression;
319
+ this._updateShareUrl();
284
320
  }
285
321
  /**
286
322
  * updates the layer in map layer picker
@@ -356,7 +392,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
356
392
  const mapHeightClass = this.mapInfos?.length > 1 || this.isMapLayout ? "map-height" : "height-full";
357
393
  const progressClass = this.isMapLayout ? "" : "display-none";
358
394
  this._validateActiveActions();
359
- return (h(Host, { key: '94d7399ed75c0e90487d6153a0d28ab6f722ae93' }, h("div", { key: 'e194d8800dd7a865e101d779d032d164f3e5562d', class: `${mapContainerClass} width-full`, ref: (el) => this._toolbar = el }, this._getActionBar(), !this.isMobile && this.isMapLayout && this._getDropdown("more-table-options")), h("calcite-progress", { key: '0abdbf4e8ba5861866aba7791dfdb91a7a5f4daa', class: progressClass, value: 0 }), h("div", { key: '83aa012aeef6ae64e49007d542fd949e7d4602f4', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), 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 })));
395
+ return (h(Host, { key: '790599924cf104116f6961380103aef7c55e6d76' }, 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), h("calcite-progress", { key: '5c82042e0206be05e12d29ba588b26344b1017b8', class: progressClass, value: 0 }), h("div", { key: '0831bc4593f5a7680a8599a9868990734cb013b9', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), 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 })));
360
396
  }
361
397
  /**
362
398
  * Called each time after the component is loaded
@@ -375,6 +411,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
375
411
  this._resizeObserver.observe(this._toolbar);
376
412
  this._observerSet = true;
377
413
  }
414
+ this._updateShareUrl();
378
415
  }
379
416
  //--------------------------------------------------------------------------
380
417
  //
@@ -453,6 +490,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
453
490
  mapView: this.mapView
454
491
  });
455
492
  }
493
+ this._updateShareUrl();
456
494
  }
457
495
  /**
458
496
  * Add/Remove tools from the action bar and dropdown based on available size
@@ -471,7 +509,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
471
509
  prev += cur.width;
472
510
  return prev;
473
511
  }, 0);
474
- const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker"];
512
+ const skipControls = ["solutions-more", "solutions-map-layer-picker-container", "map-picker", "solutions-action-share"];
475
513
  if (controlsWidth > toolbarWidth) {
476
514
  if (this._toolbarSizeInfos.length > 0) {
477
515
  const controlsThatFit = [...this._toolbarSizeInfos].reverse().reduce((prev, cur) => {
@@ -597,6 +635,50 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
597
635
  return (h("calcite-dropdown-group", { class: item.disabled ? "disabled" : "", selectionMode: "none" }, h("calcite-dropdown-item", { disabled: item.loading, iconStart: item.icon, id: "solutions-subset-list", onClick: item.func }, item.loading ? (h("div", { class: "display-flex" }, h("calcite-loader", { inline: true, label: item.label, scale: "m" }), item.label)) : item.label)));
598
636
  })))) : undefined;
599
637
  }
638
+ /**
639
+ * Get an action and tooltip for share
640
+ *
641
+ * @param icon string the name of the icon to display, will also be used in its id
642
+ *
643
+ * @returns VNode The node representing the DOM element that will contain the action
644
+ */
645
+ _getShare(icon) {
646
+ return (h("div", { class: "share-action", id: this._getId(icon) }, h("instant-apps-social-share", { autoUpdateShareUrl: false, class: "instant-app-share", embed: this.shareIncludeEmbed, popoverButtonIconScale: "s", ref: el => {
647
+ this._shareNode = el;
648
+ this._updateShareUrl();
649
+ }, scale: "m", shareButtonColor: "neutral", shareButtonType: "action", socialMedia: this.shareIncludeSocial, view: this.mapView }), this._getToolTip("bottom", icon, this._translations.share)));
650
+ }
651
+ /**
652
+ * Called each time the values that are used for custom url params change
653
+ */
654
+ _updateShareUrl() {
655
+ const url = this._shareNode?.shareUrl;
656
+ if (!url) {
657
+ return;
658
+ }
659
+ const urlObj = new URL(url);
660
+ //set the additional search params
661
+ if (this._loadedId) {
662
+ urlObj.searchParams.set("webmap", this._loadedId);
663
+ }
664
+ else {
665
+ urlObj.searchParams.delete("webmap");
666
+ }
667
+ if (this.selectedLayer?.id) {
668
+ urlObj.searchParams.set("layer", this.selectedLayer.id);
669
+ }
670
+ else {
671
+ urlObj.searchParams.delete("layer");
672
+ }
673
+ if (this.selectedFeaturesIds?.length > 0) {
674
+ urlObj.searchParams.set("oid", this.selectedFeaturesIds.join(","));
675
+ }
676
+ else {
677
+ urlObj.searchParams.delete("oid");
678
+ }
679
+ urlObj.searchParams.set("applayout", this.appLayout);
680
+ this._shareNode.shareUrl = urlObj.href;
681
+ }
600
682
  /**
601
683
  * Open show/hide dropdown
602
684
  * @protected
@@ -872,13 +954,17 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
872
954
  this._translations = messages[0];
873
955
  }
874
956
  static get watchers() { return {
957
+ "appLayout": ["appLayoutWatchHandler"],
875
958
  "enableHome": ["enableHomeWatchHandler"],
959
+ "enableShare": ["enableShareWatchHandler"],
960
+ "mapView": ["mapViewWatchHandler"],
876
961
  "selectedLayer": ["selectedLayerWatchHandler"],
877
962
  "selectedFeaturesIds": ["selectedFeaturesIdsWatchHandler"],
878
963
  "_controlsThatFit": ["_controlsThatFitWatchHandler"]
879
964
  }; }
880
965
  static get style() { return MapCardStyle0; }
881
966
  }, [0, "map-card", {
967
+ "appLayout": [1, "app-layout"],
882
968
  "appProxies": [8, "app-proxies"],
883
969
  "defaultWebmapId": [1, "default-webmap-id"],
884
970
  "defaultLayerId": [1, "default-layer-id"],
@@ -886,6 +972,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
886
972
  "enableLegend": [4, "enable-legend"],
887
973
  "enableFloorFilter": [4, "enable-floor-filter"],
888
974
  "enableFullscreen": [4, "enable-fullscreen"],
975
+ "enableShare": [4, "enable-share"],
889
976
  "enableSingleExpand": [4, "enable-single-expand"],
890
977
  "enableSearch": [4, "enable-search"],
891
978
  "enableBasemap": [4, "enable-basemap"],
@@ -903,6 +990,8 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
903
990
  "theme": [1],
904
991
  "toolOrder": [16],
905
992
  "isMapLayout": [4, "is-map-layout"],
993
+ "shareIncludeEmbed": [4, "share-include-embed"],
994
+ "shareIncludeSocial": [4, "share-include-social"],
906
995
  "selectedFeaturesIds": [16],
907
996
  "selectedLayer": [16],
908
997
  "zoomToScale": [2, "zoom-to-scale"],
@@ -919,7 +1008,10 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
919
1008
  "updateFilterState": [64],
920
1009
  "updateLayer": [64]
921
1010
  }, [[8, "mapInfoChange", "mapInfoChange"], [8, "noLayersFound", "noLayersFound"], [8, "layerSelectionChange", "layerSelectionChange"]], {
1011
+ "appLayout": ["appLayoutWatchHandler"],
922
1012
  "enableHome": ["enableHomeWatchHandler"],
1013
+ "enableShare": ["enableShareWatchHandler"],
1014
+ "mapView": ["mapViewWatchHandler"],
923
1015
  "selectedLayer": ["selectedLayerWatchHandler"],
924
1016
  "selectedFeaturesIds": ["selectedFeaturesIdsWatchHandler"],
925
1017
  "_controlsThatFit": ["_controlsThatFitWatchHandler"]
@@ -928,7 +1020,7 @@ function defineCustomElement() {
928
1020
  if (typeof customElements === "undefined") {
929
1021
  return;
930
1022
  }
931
- const components = ["map-card", "basemap-gallery", "calcite-action", "calcite-action-bar", "calcite-action-group", "calcite-action-menu", "calcite-button", "calcite-chip", "calcite-combobox", "calcite-combobox-item", "calcite-dropdown", "calcite-dropdown-group", "calcite-dropdown-item", "calcite-filter", "calcite-handle", "calcite-icon", "calcite-input", "calcite-label", "calcite-list", "calcite-list-item", "calcite-loader", "calcite-notice", "calcite-option", "calcite-popover", "calcite-progress", "calcite-scrim", "calcite-select", "calcite-stack", "calcite-tooltip", "floor-filter", "map-fullscreen", "map-layer-picker", "map-legend", "map-picker", "map-search", "map-tools"];
1023
+ const components = ["map-card", "basemap-gallery", "calcite-action", "calcite-action-bar", "calcite-action-group", "calcite-action-menu", "calcite-button", "calcite-chip", "calcite-combobox", "calcite-combobox-item", "calcite-dropdown", "calcite-dropdown-group", "calcite-dropdown-item", "calcite-filter", "calcite-handle", "calcite-icon", "calcite-input", "calcite-label", "calcite-list", "calcite-list-item", "calcite-loader", "calcite-notice", "calcite-option", "calcite-popover", "calcite-progress", "calcite-scrim", "calcite-select", "calcite-stack", "calcite-tooltip", "floor-filter", "instant-apps-social-share", "map-fullscreen", "map-layer-picker", "map-legend", "map-picker", "map-search", "map-tools"];
932
1024
  components.forEach(tagName => { switch (tagName) {
933
1025
  case "map-card":
934
1026
  if (!customElements.get(tagName)) {
@@ -937,145 +1029,150 @@ function defineCustomElement() {
937
1029
  break;
938
1030
  case "basemap-gallery":
939
1031
  if (!customElements.get(tagName)) {
940
- defineCustomElement$z();
1032
+ defineCustomElement$A();
941
1033
  }
942
1034
  break;
943
1035
  case "calcite-action":
944
1036
  if (!customElements.get(tagName)) {
945
- defineCustomElement$y();
1037
+ defineCustomElement$z();
946
1038
  }
947
1039
  break;
948
1040
  case "calcite-action-bar":
949
1041
  if (!customElements.get(tagName)) {
950
- defineCustomElement$x();
1042
+ defineCustomElement$y();
951
1043
  }
952
1044
  break;
953
1045
  case "calcite-action-group":
954
1046
  if (!customElements.get(tagName)) {
955
- defineCustomElement$w();
1047
+ defineCustomElement$x();
956
1048
  }
957
1049
  break;
958
1050
  case "calcite-action-menu":
959
1051
  if (!customElements.get(tagName)) {
960
- defineCustomElement$v();
1052
+ defineCustomElement$w();
961
1053
  }
962
1054
  break;
963
1055
  case "calcite-button":
964
1056
  if (!customElements.get(tagName)) {
965
- defineCustomElement$u();
1057
+ defineCustomElement$v();
966
1058
  }
967
1059
  break;
968
1060
  case "calcite-chip":
969
1061
  if (!customElements.get(tagName)) {
970
- defineCustomElement$t();
1062
+ defineCustomElement$u();
971
1063
  }
972
1064
  break;
973
1065
  case "calcite-combobox":
974
1066
  if (!customElements.get(tagName)) {
975
- defineCustomElement$s();
1067
+ defineCustomElement$t();
976
1068
  }
977
1069
  break;
978
1070
  case "calcite-combobox-item":
979
1071
  if (!customElements.get(tagName)) {
980
- defineCustomElement$r();
1072
+ defineCustomElement$s();
981
1073
  }
982
1074
  break;
983
1075
  case "calcite-dropdown":
984
1076
  if (!customElements.get(tagName)) {
985
- defineCustomElement$q();
1077
+ defineCustomElement$r();
986
1078
  }
987
1079
  break;
988
1080
  case "calcite-dropdown-group":
989
1081
  if (!customElements.get(tagName)) {
990
- defineCustomElement$p();
1082
+ defineCustomElement$q();
991
1083
  }
992
1084
  break;
993
1085
  case "calcite-dropdown-item":
994
1086
  if (!customElements.get(tagName)) {
995
- defineCustomElement$o();
1087
+ defineCustomElement$p();
996
1088
  }
997
1089
  break;
998
1090
  case "calcite-filter":
999
1091
  if (!customElements.get(tagName)) {
1000
- defineCustomElement$n();
1092
+ defineCustomElement$o();
1001
1093
  }
1002
1094
  break;
1003
1095
  case "calcite-handle":
1004
1096
  if (!customElements.get(tagName)) {
1005
- defineCustomElement$m();
1097
+ defineCustomElement$n();
1006
1098
  }
1007
1099
  break;
1008
1100
  case "calcite-icon":
1009
1101
  if (!customElements.get(tagName)) {
1010
- defineCustomElement$l();
1102
+ defineCustomElement$m();
1011
1103
  }
1012
1104
  break;
1013
1105
  case "calcite-input":
1014
1106
  if (!customElements.get(tagName)) {
1015
- defineCustomElement$k();
1107
+ defineCustomElement$l();
1016
1108
  }
1017
1109
  break;
1018
1110
  case "calcite-label":
1019
1111
  if (!customElements.get(tagName)) {
1020
- defineCustomElement$j();
1112
+ defineCustomElement$k();
1021
1113
  }
1022
1114
  break;
1023
1115
  case "calcite-list":
1024
1116
  if (!customElements.get(tagName)) {
1025
- defineCustomElement$i();
1117
+ defineCustomElement$j();
1026
1118
  }
1027
1119
  break;
1028
1120
  case "calcite-list-item":
1029
1121
  if (!customElements.get(tagName)) {
1030
- defineCustomElement$h();
1122
+ defineCustomElement$i();
1031
1123
  }
1032
1124
  break;
1033
1125
  case "calcite-loader":
1034
1126
  if (!customElements.get(tagName)) {
1035
- defineCustomElement$g();
1127
+ defineCustomElement$h();
1036
1128
  }
1037
1129
  break;
1038
1130
  case "calcite-notice":
1039
1131
  if (!customElements.get(tagName)) {
1040
- defineCustomElement$f();
1132
+ defineCustomElement$g();
1041
1133
  }
1042
1134
  break;
1043
1135
  case "calcite-option":
1044
1136
  if (!customElements.get(tagName)) {
1045
- defineCustomElement$e();
1137
+ defineCustomElement$f();
1046
1138
  }
1047
1139
  break;
1048
1140
  case "calcite-popover":
1049
1141
  if (!customElements.get(tagName)) {
1050
- defineCustomElement$d();
1142
+ defineCustomElement$e();
1051
1143
  }
1052
1144
  break;
1053
1145
  case "calcite-progress":
1054
1146
  if (!customElements.get(tagName)) {
1055
- defineCustomElement$c();
1147
+ defineCustomElement$d();
1056
1148
  }
1057
1149
  break;
1058
1150
  case "calcite-scrim":
1059
1151
  if (!customElements.get(tagName)) {
1060
- defineCustomElement$b();
1152
+ defineCustomElement$c();
1061
1153
  }
1062
1154
  break;
1063
1155
  case "calcite-select":
1064
1156
  if (!customElements.get(tagName)) {
1065
- defineCustomElement$a();
1157
+ defineCustomElement$b();
1066
1158
  }
1067
1159
  break;
1068
1160
  case "calcite-stack":
1069
1161
  if (!customElements.get(tagName)) {
1070
- defineCustomElement$9();
1162
+ defineCustomElement$a();
1071
1163
  }
1072
1164
  break;
1073
1165
  case "calcite-tooltip":
1074
1166
  if (!customElements.get(tagName)) {
1075
- defineCustomElement$8();
1167
+ defineCustomElement$9();
1076
1168
  }
1077
1169
  break;
1078
1170
  case "floor-filter":
1171
+ if (!customElements.get(tagName)) {
1172
+ defineCustomElement$8();
1173
+ }
1174
+ break;
1175
+ case "instant-apps-social-share":
1079
1176
  if (!customElements.get(tagName)) {
1080
1177
  defineCustomElement$7();
1081
1178
  }