@esri/solutions-components 0.6.32 → 0.6.33

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. package/dist/cjs/basemap-gallery_7.cjs.entry.js +14 -2
  2. package/dist/cjs/calcite-combobox_6.cjs.entry.js +1 -1
  3. package/dist/cjs/card-manager_3.cjs.entry.js +19 -11
  4. package/dist/cjs/crowdsource-manager.cjs.entry.js +7 -7
  5. package/dist/cjs/{downloadUtils-84024878.js → downloadUtils-b37689dd.js} +22 -2
  6. package/dist/cjs/{index.es-eb7cf427.js → index.es-83e253dc.js} +2 -2
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
  9. package/dist/cjs/{mapViewUtils-786a219b.js → mapViewUtils-303bf42d.js} +1 -1
  10. package/dist/cjs/public-notification.cjs.entry.js +2 -2
  11. package/dist/cjs/solutions-components.cjs.js +1 -1
  12. package/dist/collection/components/crowdsource-manager/crowdsource-manager.css +8 -0
  13. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +6 -6
  14. package/dist/collection/components/floor-filter/floor-filter.js +2 -1
  15. package/dist/collection/components/layer-table/layer-table.js +13 -7
  16. package/dist/collection/components/map-card/map-card.css +5 -1
  17. package/dist/collection/components/map-card/map-card.js +20 -1
  18. package/dist/collection/components/map-tools/map-tools.js +15 -1
  19. package/dist/collection/utils/downloadUtils.js +20 -0
  20. package/dist/collection/utils/downloadUtils.ts +20 -0
  21. package/dist/collection/utils/queryUtils.js +1 -1
  22. package/dist/collection/utils/queryUtils.ts +1 -1
  23. package/dist/collection/utils/test/downloadUtils.spec.js +79 -5
  24. package/dist/collection/utils/test/downloadUtils.spec.tsx +84 -5
  25. package/dist/components/crowdsource-manager.js +7 -7
  26. package/dist/components/downloadUtils.js +20 -0
  27. package/dist/components/floor-filter2.js +2 -1
  28. package/dist/components/layer-table2.js +13 -7
  29. package/dist/components/map-card2.js +5 -2
  30. package/dist/components/map-tools2.js +14 -1
  31. package/dist/components/queryUtils.js +1 -1
  32. package/dist/esm/basemap-gallery_7.entry.js +14 -2
  33. package/dist/esm/calcite-combobox_6.entry.js +1 -1
  34. package/dist/esm/card-manager_3.entry.js +19 -11
  35. package/dist/esm/crowdsource-manager.entry.js +7 -7
  36. package/dist/esm/{downloadUtils-fa2b3718.js → downloadUtils-ddd7eeb7.js} +22 -2
  37. package/dist/esm/{index.es-cc671fd2.js → index.es-a53707d1.js} +2 -2
  38. package/dist/esm/loader.js +1 -1
  39. package/dist/esm/map-select-tools_3.entry.js +2 -2
  40. package/dist/esm/{mapViewUtils-8bfabd80.js → mapViewUtils-43c930f1.js} +1 -1
  41. package/dist/esm/public-notification.entry.js +2 -2
  42. package/dist/esm/solutions-components.js +1 -1
  43. package/dist/solutions-components/{p-e94c7cf2.js → p-05ba41f9.js} +1 -1
  44. package/dist/solutions-components/{p-ce3b40ca.entry.js → p-4792005c.entry.js} +1 -1
  45. package/dist/solutions-components/{p-86893d46.entry.js → p-50a3a887.entry.js} +1 -1
  46. package/dist/solutions-components/p-65ade5af.entry.js +6 -0
  47. package/dist/solutions-components/p-7b61f856.entry.js +6 -0
  48. package/dist/solutions-components/{p-190c83b9.entry.js → p-978a26b3.entry.js} +1 -1
  49. package/dist/solutions-components/p-a5342c42.entry.js +6 -0
  50. package/dist/solutions-components/{p-37a58e04.js → p-b745143d.js} +3 -3
  51. package/dist/solutions-components/{p-53bc5fc1.js → p-f2194390.js} +1 -1
  52. package/dist/solutions-components/solutions-components.esm.js +1 -1
  53. package/dist/solutions-components/utils/downloadUtils.ts +20 -0
  54. package/dist/solutions-components/utils/queryUtils.ts +1 -1
  55. package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +84 -5
  56. package/dist/types/components/map-card/map-card.d.ts +4 -0
  57. package/dist/types/components/map-tools/map-tools.d.ts +8 -0
  58. package/dist/types/components.d.ts +8 -0
  59. package/package.json +1 -1
  60. package/dist/solutions-components/p-792e171f.entry.js +0 -6
  61. package/dist/solutions-components/p-d44ad6c4.entry.js +0 -6
  62. package/dist/solutions-components/p-f2dcb05a.entry.js +0 -6
@@ -30,7 +30,7 @@ import { d as defineCustomElement$3 } from './map-picker2.js';
30
30
  import { d as defineCustomElement$2 } from './map-search2.js';
31
31
  import { d as defineCustomElement$1 } from './map-tools2.js';
32
32
 
33
- const mapCardCss = ":host{display:block;--calcite-label-margin-bottom:0;--calcite-block-padding:0}.map-height{height:calc(100% - 58px)}.box-shadow{box-shadow:none !important}";
33
+ const mapCardCss = ":host{display:block;--calcite-label-margin-bottom:0;--calcite-block-padding:0}.map-height{height:calc(100% - 51px)}.box-shadow{box-shadow:none !important}.visibility-hidden{visibility:hidden}";
34
34
 
35
35
  const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLElement {
36
36
  constructor() {
@@ -48,6 +48,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
48
48
  this.enableSearch = undefined;
49
49
  this.enableBasemap = undefined;
50
50
  this.basemapConfig = undefined;
51
+ this.hidden = undefined;
51
52
  this.mapInfos = [];
52
53
  this.mapView = undefined;
53
54
  this._searchConfiguration = undefined;
@@ -74,7 +75,8 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
74
75
  * Renders the component.
75
76
  */
76
77
  render() {
77
- return (h(Host, null, h("map-picker", { mapInfos: this.mapInfos }), h("div", { class: "map-height", ref: (el) => (this._mapDiv = el) }), h("map-tools", { basemapConfig: this.basemapConfig, class: "box-shadow", 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 })));
78
+ const mapClass = this.hidden ? "visibility-hidden" : "";
79
+ 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", 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 })));
78
80
  }
79
81
  //--------------------------------------------------------------------------
80
82
  //
@@ -147,6 +149,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
147
149
  "enableSearch": [4, "enable-search"],
148
150
  "enableBasemap": [4, "enable-basemap"],
149
151
  "basemapConfig": [16],
152
+ "hidden": [4],
150
153
  "mapInfos": [16],
151
154
  "mapView": [16],
152
155
  "_searchConfiguration": [32],
@@ -31,6 +31,7 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
31
31
  this.layout = "vertical";
32
32
  this.mapView = undefined;
33
33
  this.searchConfiguration = undefined;
34
+ this._hasFloorInfo = false;
34
35
  this._translations = undefined;
35
36
  this._showTools = true;
36
37
  this._showBasemapWidget = false;
@@ -44,6 +45,15 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
44
45
  // Watch handlers
45
46
  //
46
47
  //--------------------------------------------------------------------------
48
+ /**
49
+ * When the mapView loads check if it supports floor awareness
50
+ */
51
+ async mapViewWatchHandler() {
52
+ await this.mapView.when(() => {
53
+ var _a, _b;
54
+ this._hasFloorInfo = (_b = (_a = this.mapView) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.floorInfo;
55
+ });
56
+ }
47
57
  /**
48
58
  * When the _showBasemapWidget property is true display the basemap gallery
49
59
  */
@@ -157,7 +167,7 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
157
167
  this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()) :
158
168
  undefined, this.enableBasemap ?
159
169
  this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()) :
160
- undefined, this.enableFloorFilter ?
170
+ undefined, this.enableFloorFilter && this._hasFloorInfo ?
161
171
  this._getActionGroup("urban-model", false, this._translations.floorFilter, () => this._toggleFloorFilter()) :
162
172
  undefined)), h("basemap-gallery", { basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), h("map-search", { class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, resultGraphicEnabled: true, searchConfiguration: this.searchConfiguration }), h("map-legend", { class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), h("map-fullscreen", { class: fullscreenClass, mapView: this.mapView, ref: (el) => { this._fullscreenElement = el; } }), h("floor-filter", { class: floorFilterClass, enabled: this.enableFloorFilter, mapView: this.mapView, ref: (el) => { this._floorFilterElement = el; } })));
163
173
  }
@@ -251,6 +261,7 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
251
261
  }
252
262
  get el() { return this; }
253
263
  static get watchers() { return {
264
+ "mapView": ["mapViewWatchHandler"],
254
265
  "_showBasemapWidget": ["_showBasemapWidgetWatchHandler"],
255
266
  "_showFloorFilter": ["_showFloorFilterWatchHandler"],
256
267
  "_showFullscreen": ["_showFullscreenWatchHandler"],
@@ -268,6 +279,7 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
268
279
  "layout": [1],
269
280
  "mapView": [16],
270
281
  "searchConfiguration": [16],
282
+ "_hasFloorInfo": [32],
271
283
  "_translations": [32],
272
284
  "_showTools": [32],
273
285
  "_showBasemapWidget": [32],
@@ -276,6 +288,7 @@ const MapTools = /*@__PURE__*/ proxyCustomElement(class MapTools extends HTMLEle
276
288
  "_showLegendWidget": [32],
277
289
  "_showSearchWidget": [32]
278
290
  }, undefined, {
291
+ "mapView": ["mapViewWatchHandler"],
279
292
  "_showBasemapWidget": ["_showBasemapWidgetWatchHandler"],
280
293
  "_showFloorFilter": ["_showFloorFilterWatchHandler"],
281
294
  "_showFullscreen": ["_showFullscreenWatchHandler"],
@@ -27,7 +27,7 @@
27
27
  */
28
28
  async function queryAllIds(layer) {
29
29
  const query = layer.createQuery();
30
- query.where = "1=1";
30
+ query.where = layer.definitionExpression || "1=1";
31
31
  return await layer.queryObjectIds(query);
32
32
  }
33
33
  /**
@@ -177,7 +177,8 @@ const FloorFilter = class {
177
177
  * @protected
178
178
  */
179
179
  _initFloorFilter(view) {
180
- if (view && this.enabled && this.FloorFilter) {
180
+ var _a;
181
+ if (view && this.enabled && this.FloorFilter && ((_a = view === null || view === void 0 ? void 0 : view.map) === null || _a === void 0 ? void 0 : _a.floorInfo)) {
181
182
  if (!this.floorFilterWidget) {
182
183
  this.floorFilterWidget = new this.FloorFilter({
183
184
  container: this._floorFilterElement,
@@ -729,6 +730,7 @@ const MapTools = class {
729
730
  this.layout = "vertical";
730
731
  this.mapView = undefined;
731
732
  this.searchConfiguration = undefined;
733
+ this._hasFloorInfo = false;
732
734
  this._translations = undefined;
733
735
  this._showTools = true;
734
736
  this._showBasemapWidget = false;
@@ -742,6 +744,15 @@ const MapTools = class {
742
744
  // Watch handlers
743
745
  //
744
746
  //--------------------------------------------------------------------------
747
+ /**
748
+ * When the mapView loads check if it supports floor awareness
749
+ */
750
+ async mapViewWatchHandler() {
751
+ await this.mapView.when(() => {
752
+ var _a, _b;
753
+ this._hasFloorInfo = (_b = (_a = this.mapView) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.floorInfo;
754
+ });
755
+ }
745
756
  /**
746
757
  * When the _showBasemapWidget property is true display the basemap gallery
747
758
  */
@@ -855,7 +866,7 @@ const MapTools = class {
855
866
  this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()) :
856
867
  undefined, this.enableBasemap ?
857
868
  this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()) :
858
- undefined, this.enableFloorFilter ?
869
+ undefined, this.enableFloorFilter && this._hasFloorInfo ?
859
870
  this._getActionGroup("urban-model", false, this._translations.floorFilter, () => this._toggleFloorFilter()) :
860
871
  undefined)), h("basemap-gallery", { basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), h("map-search", { class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, resultGraphicEnabled: true, searchConfiguration: this.searchConfiguration }), h("map-legend", { class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), h("map-fullscreen", { class: fullscreenClass, mapView: this.mapView, ref: (el) => { this._fullscreenElement = el; } }), h("floor-filter", { class: floorFilterClass, enabled: this.enableFloorFilter, mapView: this.mapView, ref: (el) => { this._floorFilterElement = el; } })));
861
872
  }
@@ -949,6 +960,7 @@ const MapTools = class {
949
960
  }
950
961
  get el() { return getElement(this); }
951
962
  static get watchers() { return {
963
+ "mapView": ["mapViewWatchHandler"],
952
964
  "_showBasemapWidget": ["_showBasemapWidgetWatchHandler"],
953
965
  "_showFloorFilter": ["_showFloorFilterWatchHandler"],
954
966
  "_showFullscreen": ["_showFullscreenWatchHandler"],
@@ -21,7 +21,7 @@ import { d as debounce } from './debounce-229b1a22.js';
21
21
  import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot-94095778.js';
22
22
  import { i as isActivationKey } from './key-5ab69c42.js';
23
23
  import { g as getLocaleComponentStrings } from './locale-6be4e8f0.js';
24
- import { k as getMapLayerHash, l as getMapTableHash } from './mapViewUtils-8bfabd80.js';
24
+ import { k as getMapLayerHash, l as getMapTableHash } from './mapViewUtils-43c930f1.js';
25
25
  import { s as state } from './publicNotificationStore-f25d1e95.js';
26
26
  import './resources-bb8600a6.js';
27
27
  import './browser-b8a2c2d7.js';
@@ -5,9 +5,9 @@
5
5
  */
6
6
  import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-0740c914.js';
7
7
  import { g as getLocaleComponentStrings } from './locale-6be4e8f0.js';
8
- import { q as queryFeaturesByID, a as getLayerOrTable, g as goToSelection, b as queryAllIds } from './mapViewUtils-8bfabd80.js';
8
+ import { q as queryFeaturesByID, a as getLayerOrTable, g as goToSelection, b as queryAllIds } from './mapViewUtils-43c930f1.js';
9
9
  import { l as loadModules } from './loadModules-687a30c5.js';
10
- import { d as downloadCSV } from './downloadUtils-fa2b3718.js';
10
+ import { d as downloadCSV } from './downloadUtils-ddd7eeb7.js';
11
11
  import './_commonjsHelpers-d5f9d613.js';
12
12
  import './interfaces-7470d906.js';
13
13
  import './clean-url-bce022e6.js';
@@ -411,26 +411,26 @@ const LayerTable = class {
411
411
  func: () => this._selectAll(),
412
412
  label: this._translations.selectAll,
413
413
  disabled: false,
414
- isOverflow: true
414
+ isOverflow: false
415
415
  }, {
416
416
  icon: "compare",
417
417
  func: () => this._switchSelected(),
418
418
  label: this._translations.switchSelected,
419
419
  disabled: false,
420
- isOverflow: true
420
+ isOverflow: false
421
421
  }, {
422
422
  icon: "refresh",
423
423
  func: () => this._refresh(),
424
424
  label: this._translations.refresh,
425
425
  disabled: false,
426
- isOverflow: true
426
+ isOverflow: false
427
427
  },
428
428
  this.enableCSV ? {
429
429
  icon: "export",
430
430
  func: () => void this._exportToCSV(),
431
431
  label: this._translations.exportCSV,
432
432
  disabled: false,
433
- isOverflow: true
433
+ isOverflow: false
434
434
  } : undefined];
435
435
  this._defaultVisibleToolSizeInfos = undefined;
436
436
  }
@@ -474,14 +474,20 @@ const LayerTable = class {
474
474
  prev.push(cur.id);
475
475
  return prev;
476
476
  }, []);
477
+ let forceFinish = false;
477
478
  const controlsThatFit = [...this._defaultVisibleToolSizeInfos].reduce((prev, cur) => {
478
- if (skipControls.indexOf(cur.id) < 0 &&
479
+ if (!forceFinish && skipControls.indexOf(cur.id) < 0 &&
479
480
  (currentTools.indexOf(cur.id) > -1 || (controlsWidth + cur.width) <= toolbarWidth)) {
480
481
  if (currentTools.indexOf(cur.id) < 0) {
481
482
  controlsWidth += cur.width;
482
483
  }
483
484
  prev.push(cur);
484
485
  }
486
+ else if (skipControls.indexOf(cur.id) < 0 && (controlsWidth + cur.width) > toolbarWidth) {
487
+ // exit the first time we evalute this as true...otherwise it will add the next control that will fit
488
+ // and not preserve the overall order of controls
489
+ forceFinish = true;
490
+ }
485
491
  return prev;
486
492
  }, []);
487
493
  this._setControlsThatFit(controlsThatFit, skipControls);
@@ -560,9 +566,9 @@ const LayerTable = class {
560
566
  */
561
567
  _getDropdown(id) {
562
568
  const dropdownItems = this._getDropdownItems();
563
- return (h("calcite-dropdown", { disabled: this._layer === undefined, id: "solutions-more" }, h("calcite-action", { appearance: "solid", id: id, label: "", slot: "trigger", text: "" }, h("calcite-button", { appearance: "transparent", iconEnd: "chevron-down", kind: "neutral" }, this._translations.more)), h("calcite-dropdown-group", { "selection-mode": "none" }, dropdownItems.map(item => {
569
+ return dropdownItems.length > 0 ? (h("calcite-dropdown", { disabled: this._layer === undefined, id: "solutions-more" }, h("calcite-action", { appearance: "solid", id: id, label: "", slot: "trigger", text: "" }, h("calcite-button", { appearance: "transparent", iconEnd: "chevron-down", kind: "neutral" }, this._translations.more)), h("calcite-dropdown-group", { "selection-mode": "none" }, dropdownItems.map(item => {
564
570
  return (h("calcite-dropdown-item", { iconStart: item.icon, onClick: item.func }, item.label));
565
- }))));
571
+ })))) : undefined;
566
572
  }
567
573
  /**
568
574
  * Get a list of toolInfos that should display in the dropdown
@@ -972,7 +978,7 @@ const LayerTable = class {
972
978
  };
973
979
  LayerTable.style = layerTableCss;
974
980
 
975
- const mapCardCss = ":host{display:block;--calcite-label-margin-bottom:0;--calcite-block-padding:0}.map-height{height:calc(100% - 58px)}.box-shadow{box-shadow:none !important}";
981
+ const mapCardCss = ":host{display:block;--calcite-label-margin-bottom:0;--calcite-block-padding:0}.map-height{height:calc(100% - 51px)}.box-shadow{box-shadow:none !important}.visibility-hidden{visibility:hidden}";
976
982
 
977
983
  const MapCard = class {
978
984
  constructor(hostRef) {
@@ -989,6 +995,7 @@ const MapCard = class {
989
995
  this.enableSearch = undefined;
990
996
  this.enableBasemap = undefined;
991
997
  this.basemapConfig = undefined;
998
+ this.hidden = undefined;
992
999
  this.mapInfos = [];
993
1000
  this.mapView = undefined;
994
1001
  this._searchConfiguration = undefined;
@@ -1015,7 +1022,8 @@ const MapCard = class {
1015
1022
  * Renders the component.
1016
1023
  */
1017
1024
  render() {
1018
- return (h(Host, null, h("map-picker", { mapInfos: this.mapInfos }), h("div", { class: "map-height", ref: (el) => (this._mapDiv = el) }), h("map-tools", { basemapConfig: this.basemapConfig, class: "box-shadow", 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 })));
1025
+ const mapClass = this.hidden ? "visibility-hidden" : "";
1026
+ 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", 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 })));
1019
1027
  }
1020
1028
  //--------------------------------------------------------------------------
1021
1029
  //
@@ -8,7 +8,7 @@ import { g as getLocaleComponentStrings } from './locale-6be4e8f0.js';
8
8
  import { E as ELayoutMode } from './interfaces-7470d906.js';
9
9
  import './_commonjsHelpers-d5f9d613.js';
10
10
 
11
- const crowdsourceManagerCss = ":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-ui-foreground-1)}.padding-1-2{padding:0.5rem}.display-flex{display:flex}.width-full{width:100%}.width-1-2{position:relative;width:50%}.width-1-3{position:relative;width:33.33%}.width-2-3{position:relative;width:66.66%}.width-0{width:0}.height-full{height:100%}.height-1-2{position:relative;height:50%}.height-0{height:0}.toggle-node{width:51px;height:51px}.overflow-hidden{overflow:hidden}.flex-column{flex-direction:column}.border{border:1px solid var(--calcite-ui-border-3)}.border-bottom{border-bottom:1px solid var(--calcite-ui-border-3)}.border-sides{border-left:1px solid var(--calcite-ui-border-3);border-right:1px solid var(--calcite-ui-border-3)}.position-relative{position:relative}.height-50{height:50%}.adjusted-height-50{height:calc(50% - 25px)}.adjusted-height-100{height:calc(100% - 50px)}.adjusted-height-100-50{height:calc(100% - 50px)}.display-none{display:none}.height-53{height:53px}.position-absolute-53{position:absolute;top:53px}.display-grid{display:grid}.height-50-px{height:50px}.padding-inline-start-75{padding-inline-start:0.75rem}.align-items-center{align-items:center}.esri-floor-filter__close-levels-button{width:40px !important;height:40px !important}.esri-floor-filter__level-button{width:40px !important;height:40px !important}.esri-floor-filter__browse-button{width:40px !important;height:40px !important}";
11
+ const crowdsourceManagerCss = ":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-ui-foreground-1)}.padding-1-2{padding:0.5rem}.display-flex{display:flex}.width-full{width:100%}.width-1-2{position:relative;width:50%}.width-1-3{position:relative;width:33.33%}.width-2-3{position:relative;width:66.66%}.width-0{width:0}.height-full{height:100%}.height-1-2{position:relative;height:50%}.height-0{height:0}.toggle-node{width:51px;height:51px}.overflow-hidden{overflow:hidden}.flex-column{flex-direction:column}.border{border:1px solid var(--calcite-ui-border-3)}.border-bottom{border-bottom:1px solid var(--calcite-ui-border-3)}.border-sides{border-left:1px solid var(--calcite-ui-border-3);border-right:1px solid var(--calcite-ui-border-3)}.position-relative{position:relative}.height-50{height:50%}.adjusted-height-50{height:calc(50% - 25px)}.adjusted-height-100{height:calc(100% - 50px)}.adjusted-height-100-50{height:calc(100% - 50px)}.display-none{display:none}.height-53{height:53px}.position-absolute-53{position:absolute;top:53px}.display-grid{display:grid}.height-50-px{height:50px}.padding-inline-start-75{padding-inline-start:0.75rem}.align-items-center{align-items:center}.esri-floor-filter__close-levels-button{width:40px !important;height:40px !important}.esri-floor-filter__level-button{width:40px !important;height:40px !important}.esri-floor-filter__browse-button{width:40px !important;height:40px !important}.position-absolute-50{position:absolute;top:50px;bottom:0px;left:0px;right:0px}";
12
12
 
13
13
  const CrowdsourceManager = class {
14
14
  constructor(hostRef) {
@@ -236,11 +236,11 @@ const CrowdsourceManager = class {
236
236
  * @protected
237
237
  */
238
238
  _getMapNode(layoutMode, hideMap) {
239
- var _a, _b, _c;
239
+ var _a;
240
240
  const mapDisplayClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "display-flex height-full width-1-2" :
241
241
  layoutMode === ELayoutMode.GRID && !hideMap ? "" : "display-none";
242
- const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : this._expandPopup ? "height-50-px" : "adjusted-height-50";
243
- return (h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, h("map-card", { basemapConfig: this.basemapConfig, class: "width-full", enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter && ((_b = (_a = this._mapView) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.floorInfo), enableFullscreen: this.enableFullscreen, enableLegend: this.enableLegend, enableSearch: this.enableSearch, mapInfos: (_c = this.mapInfos) === null || _c === void 0 ? void 0 : _c.filter(mapInfo => mapInfo.visible !== false) })));
242
+ const mapContainerClass = this.classicGrid && layoutMode === ELayoutMode.GRID ? "width-full" : "adjusted-height-50";
243
+ return (h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, h("map-card", { basemapConfig: this.basemapConfig, class: "width-full", enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableLegend: this.enableLegend, enableSearch: this.enableSearch, hidden: this._expandPopup, mapInfos: (_a = this.mapInfos) === null || _a === void 0 ? void 0 : _a.filter(mapInfo => mapInfo.visible !== false) })));
244
244
  }
245
245
  /**
246
246
  * Get the expand node for the popup information
@@ -253,7 +253,8 @@ const CrowdsourceManager = class {
253
253
  const id = "expand-popup";
254
254
  const tooltip = this._expandPopup ? this._translations.collapsePopup : this._translations.expandPopup;
255
255
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
256
- return (h("div", { class: "calcite-mode-dark height-full" }, h("calcite-panel", null, h("div", { class: "display-flex align-items-center", slot: "header-content" }, h("calcite-icon", { icon: "information", scale: "s" }), h("div", { class: "padding-inline-start-75" }, this._translations.information)), h("calcite-action", { icon: icon, id: id, onClick: () => this._togglePopup(), slot: "header-actions-end" }), h("calcite-tooltip", { class: themeClass, label: "", placement: "bottom", "reference-element": id }, h("span", null, tooltip)), this._getCardNode())));
256
+ const popupNodeClass = !this._expandPopup ? "height-full" : "position-absolute-50";
257
+ return (h("div", { class: "calcite-mode-dark " + popupNodeClass }, h("calcite-panel", null, h("div", { class: "display-flex align-items-center", slot: "header-content" }, h("calcite-icon", { icon: "information", scale: "s" }), h("div", { class: "padding-inline-start-75" }, this._translations.information)), h("calcite-action", { icon: icon, id: id, onClick: () => this._togglePopup(), slot: "header-actions-end" }), h("calcite-tooltip", { class: themeClass, label: "", placement: "bottom", "reference-element": id }, h("span", null, tooltip)), this._getCardNode())));
257
258
  }
258
259
  /**
259
260
  * Toggle the popup information
@@ -274,9 +275,8 @@ const CrowdsourceManager = class {
274
275
  */
275
276
  _getCardNode() {
276
277
  const cardManagerHeight = !this._expandPopup ? "height-50" : "height-full";
277
- const cardManagerContainer = this._expandPopup ? "width-50 adjusted-height-100-50" : "width-50 height-full";
278
278
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
279
- return (h("div", { class: `${cardManagerContainer} ${themeClass}` }, h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
279
+ return (h("div", { class: `width-50 height-full ${themeClass}` }, h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
280
280
  }
281
281
  /**
282
282
  * Get the table node based for the current layout
@@ -6,7 +6,7 @@
6
6
  import { c as createCommonjsModule, g as getDefaultExportFromCjs } from './_commonjsHelpers-d5f9d613.js';
7
7
  import { a as getAssetPath } from './index-0740c914.js';
8
8
  import { l as loadModules } from './loadModules-687a30c5.js';
9
- import { q as queryFeaturesByID } from './mapViewUtils-8bfabd80.js';
9
+ import { q as queryFeaturesByID } from './mapViewUtils-43c930f1.js';
10
10
  import { _ as __assign$1, r as request, c as cleanUrl } from './clean-url-bce022e6.js';
11
11
 
12
12
  /** @license
@@ -1506,7 +1506,7 @@ function(t){var e=function(t){for(var e=t.length,r=new Uint8Array(e),n=0;n<e;n++
1506
1506
  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1507
1507
  * ====================================================================
1508
1508
  */
1509
- function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):import('./index.es-cc671fd2.js')).catch((function(t){return Promise.reject(new Error("Could not load canvg: "+t))})).then((function(t){return t.default?t.default:t}))}E.API.addSvgAsImage=function(t,r,n,i,o,s,c,u){if(isNaN(r)||isNaN(n))throw a.error("jsPDF.addSvgAsImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addSvgAsImage");if(isNaN(i)||isNaN(o))throw a.error("jsPDF.addSvgAsImage: Invalid measurements",arguments),new Error("Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage");var h=document.createElement("canvas");h.width=i,h.height=o;var l=h.getContext("2d");l.fillStyle="#fff",l.fillRect(0,0,h.width,h.height);var f={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0},d=this;return e().then((function(e){return e.fromString(l,t,f)}),(function(){return Promise.reject(new Error("Could not load canvg."))})).then((function(t){return t.render(f)})).then((function(){d.addImage(h.toDataURL("image/jpeg",1),r,n,i,o,c,u);}))};}(),E.API.putTotalPages=function(t){var e,r=0;parseInt(this.internal.getFont().id.substr(1),10)<15?(e=new RegExp(t,"g"),r=this.internal.getNumberOfPages()):(e=new RegExp(this.pdfEscape16(t,this.internal.getFont()),"g"),r=this.pdfEscape16(this.internal.getNumberOfPages()+"",this.internal.getFont()));for(var n=1;n<=this.internal.getNumberOfPages();n++)for(var i=0;i<this.internal.pages[n].length;i++)this.internal.pages[n][i]=this.internal.pages[n][i].replace(e,r);return this},E.API.viewerPreferences=function(e,r){var n;e=e||{},r=r||!1;var i,a,o,s={HideToolbar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideMenubar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideWindowUI:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},FitWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},CenterWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},DisplayDocTitle:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.4},NonFullScreenPageMode:{defaultValue:"UseNone",value:"UseNone",type:"name",explicitSet:!1,valueSet:["UseNone","UseOutlines","UseThumbs","UseOC"],pdfVersion:1.3},Direction:{defaultValue:"L2R",value:"L2R",type:"name",explicitSet:!1,valueSet:["L2R","R2L"],pdfVersion:1.3},ViewArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},ViewClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintScaling:{defaultValue:"AppDefault",value:"AppDefault",type:"name",explicitSet:!1,valueSet:["AppDefault","None"],pdfVersion:1.6},Duplex:{defaultValue:"",value:"none",type:"name",explicitSet:!1,valueSet:["Simplex","DuplexFlipShortEdge","DuplexFlipLongEdge","none"],pdfVersion:1.7},PickTrayByPDFSize:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.7},PrintPageRange:{defaultValue:"",value:"",type:"array",explicitSet:!1,valueSet:null,pdfVersion:1.7},NumCopies:{defaultValue:1,value:1,type:"integer",explicitSet:!1,valueSet:null,pdfVersion:1.7}},c=Object.keys(s),u=[],h=0,l=0,f=0;function d(t,e){var r,n=!1;for(r=0;r<t.length;r+=1)t[r]===e&&(n=!0);return n}if(void 0===this.internal.viewerpreferences&&(this.internal.viewerpreferences={},this.internal.viewerpreferences.configuration=JSON.parse(JSON.stringify(s)),this.internal.viewerpreferences.isSubscribed=!1),n=this.internal.viewerpreferences.configuration,"reset"===e||!0===r){var p=c.length;for(f=0;f<p;f+=1)n[c[f]].value=n[c[f]].defaultValue,n[c[f]].explicitSet=!1;}if("object"===t(e))for(a in e)if(o=e[a],d(c,a)&&void 0!==o){if("boolean"===n[a].type&&"boolean"==typeof o)n[a].value=o;else if("name"===n[a].type&&d(n[a].valueSet,o))n[a].value=o;else if("integer"===n[a].type&&Number.isInteger(o))n[a].value=o;else if("array"===n[a].type){for(h=0;h<o.length;h+=1)if(i=!0,1===o[h].length&&"number"==typeof o[h][0])u.push(String(o[h]-1));else if(o[h].length>1){for(l=0;l<o[h].length;l+=1)"number"!=typeof o[h][l]&&(i=!1);!0===i&&u.push([o[h][0]-1,o[h][1]-1].join(" "));}n[a].value="["+u.join(" ")+"]";}else n[a].value=n[a].defaultValue;n[a].explicitSet=!0;}return !1===this.internal.viewerpreferences.isSubscribed&&(this.internal.events.subscribe("putCatalog",(function(){var t,e=[];for(t in n)!0===n[t].explicitSet&&("name"===n[t].type?e.push("/"+t+" /"+n[t].value):e.push("/"+t+" "+n[t].value));0!==e.length&&this.internal.write("/ViewerPreferences\n<<\n"+e.join("\n")+"\n>>");})),this.internal.viewerpreferences.isSubscribed=!0),this.internal.viewerpreferences.configuration=n,this},
1509
+ function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):import('./index.es-a53707d1.js')).catch((function(t){return Promise.reject(new Error("Could not load canvg: "+t))})).then((function(t){return t.default?t.default:t}))}E.API.addSvgAsImage=function(t,r,n,i,o,s,c,u){if(isNaN(r)||isNaN(n))throw a.error("jsPDF.addSvgAsImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addSvgAsImage");if(isNaN(i)||isNaN(o))throw a.error("jsPDF.addSvgAsImage: Invalid measurements",arguments),new Error("Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage");var h=document.createElement("canvas");h.width=i,h.height=o;var l=h.getContext("2d");l.fillStyle="#fff",l.fillRect(0,0,h.width,h.height);var f={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0},d=this;return e().then((function(e){return e.fromString(l,t,f)}),(function(){return Promise.reject(new Error("Could not load canvg."))})).then((function(t){return t.render(f)})).then((function(){d.addImage(h.toDataURL("image/jpeg",1),r,n,i,o,c,u);}))};}(),E.API.putTotalPages=function(t){var e,r=0;parseInt(this.internal.getFont().id.substr(1),10)<15?(e=new RegExp(t,"g"),r=this.internal.getNumberOfPages()):(e=new RegExp(this.pdfEscape16(t,this.internal.getFont()),"g"),r=this.pdfEscape16(this.internal.getNumberOfPages()+"",this.internal.getFont()));for(var n=1;n<=this.internal.getNumberOfPages();n++)for(var i=0;i<this.internal.pages[n].length;i++)this.internal.pages[n][i]=this.internal.pages[n][i].replace(e,r);return this},E.API.viewerPreferences=function(e,r){var n;e=e||{},r=r||!1;var i,a,o,s={HideToolbar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideMenubar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideWindowUI:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},FitWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},CenterWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},DisplayDocTitle:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.4},NonFullScreenPageMode:{defaultValue:"UseNone",value:"UseNone",type:"name",explicitSet:!1,valueSet:["UseNone","UseOutlines","UseThumbs","UseOC"],pdfVersion:1.3},Direction:{defaultValue:"L2R",value:"L2R",type:"name",explicitSet:!1,valueSet:["L2R","R2L"],pdfVersion:1.3},ViewArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},ViewClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintScaling:{defaultValue:"AppDefault",value:"AppDefault",type:"name",explicitSet:!1,valueSet:["AppDefault","None"],pdfVersion:1.6},Duplex:{defaultValue:"",value:"none",type:"name",explicitSet:!1,valueSet:["Simplex","DuplexFlipShortEdge","DuplexFlipLongEdge","none"],pdfVersion:1.7},PickTrayByPDFSize:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.7},PrintPageRange:{defaultValue:"",value:"",type:"array",explicitSet:!1,valueSet:null,pdfVersion:1.7},NumCopies:{defaultValue:1,value:1,type:"integer",explicitSet:!1,valueSet:null,pdfVersion:1.7}},c=Object.keys(s),u=[],h=0,l=0,f=0;function d(t,e){var r,n=!1;for(r=0;r<t.length;r+=1)t[r]===e&&(n=!0);return n}if(void 0===this.internal.viewerpreferences&&(this.internal.viewerpreferences={},this.internal.viewerpreferences.configuration=JSON.parse(JSON.stringify(s)),this.internal.viewerpreferences.isSubscribed=!1),n=this.internal.viewerpreferences.configuration,"reset"===e||!0===r){var p=c.length;for(f=0;f<p;f+=1)n[c[f]].value=n[c[f]].defaultValue,n[c[f]].explicitSet=!1;}if("object"===t(e))for(a in e)if(o=e[a],d(c,a)&&void 0!==o){if("boolean"===n[a].type&&"boolean"==typeof o)n[a].value=o;else if("name"===n[a].type&&d(n[a].valueSet,o))n[a].value=o;else if("integer"===n[a].type&&Number.isInteger(o))n[a].value=o;else if("array"===n[a].type){for(h=0;h<o.length;h+=1)if(i=!0,1===o[h].length&&"number"==typeof o[h][0])u.push(String(o[h]-1));else if(o[h].length>1){for(l=0;l<o[h].length;l+=1)"number"!=typeof o[h][l]&&(i=!1);!0===i&&u.push([o[h][0]-1,o[h][1]-1].join(" "));}n[a].value="["+u.join(" ")+"]";}else n[a].value=n[a].defaultValue;n[a].explicitSet=!0;}return !1===this.internal.viewerpreferences.isSubscribed&&(this.internal.events.subscribe("putCatalog",(function(){var t,e=[];for(t in n)!0===n[t].explicitSet&&("name"===n[t].type?e.push("/"+t+" /"+n[t].value):e.push("/"+t+" "+n[t].value));0!==e.length&&this.internal.write("/ViewerPreferences\n<<\n"+e.join("\n")+"\n>>");})),this.internal.viewerpreferences.isSubscribed=!0),this.internal.viewerpreferences.configuration=n,this},
1510
1510
  /** ====================================================================
1511
1511
  * @license
1512
1512
  * jsPDF XMP metadata plugin
@@ -2829,6 +2829,26 @@ function _prepareAttributeValue(attributeValue, attributeType, attributeDomain,
2829
2829
  // e.g., "12/31/1969, 4:00 PM"
2830
2830
  value = value.replace(/\xe2\x80\xaf/g, "");
2831
2831
  break;
2832
+ case "date-only":
2833
+ // Value is a string, e.g., "2020-12-08"
2834
+ if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
2835
+ const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
2836
+ value = intl.formatDateOnly(value, dateFormatIntlOptions);
2837
+ }
2838
+ else {
2839
+ value = intl.formatDateOnly(value);
2840
+ }
2841
+ break;
2842
+ case "time-only":
2843
+ // Value is a string, e.g., "14:51:44.2533333"
2844
+ if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
2845
+ const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
2846
+ value = intl.formatTimeOnly(value, dateFormatIntlOptions);
2847
+ }
2848
+ else {
2849
+ value = intl.formatTimeOnly(value);
2850
+ }
2851
+ break;
2832
2852
  case "double":
2833
2853
  case "integer":
2834
2854
  case "long":
@@ -4,11 +4,11 @@
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
6
  import { a as commonjsGlobal, c as createCommonjsModule, g as getDefaultExportFromCjs } from './_commonjsHelpers-d5f9d613.js';
7
- import { _ as _typeof_1 } from './downloadUtils-fa2b3718.js';
7
+ import { _ as _typeof_1 } from './downloadUtils-ddd7eeb7.js';
8
8
  import './index-0740c914.js';
9
9
  import './loadModules-687a30c5.js';
10
10
  import './locale-6be4e8f0.js';
11
- import './mapViewUtils-8bfabd80.js';
11
+ import './mapViewUtils-43c930f1.js';
12
12
  import './interfaces-7470d906.js';
13
13
  import './clean-url-bce022e6.js';
14
14