@esri/solutions-components 0.6.32 → 0.6.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) 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 +34 -20
  4. package/dist/cjs/crowdsource-manager.cjs.entry.js +13 -9
  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 +13 -9
  14. package/dist/collection/components/floor-filter/floor-filter.js +2 -1
  15. package/dist/collection/components/layer-table/layer-table.js +38 -12
  16. package/dist/collection/components/map-card/map-card.css +5 -1
  17. package/dist/collection/components/map-card/map-card.js +44 -5
  18. package/dist/collection/components/map-tools/map-tools.js +15 -1
  19. package/dist/collection/demos/crowdsource-manager.html +5 -4
  20. package/dist/collection/utils/downloadUtils.js +20 -0
  21. package/dist/collection/utils/downloadUtils.ts +20 -0
  22. package/dist/collection/utils/queryUtils.js +1 -1
  23. package/dist/collection/utils/queryUtils.ts +1 -1
  24. package/dist/collection/utils/test/downloadUtils.spec.js +79 -5
  25. package/dist/collection/utils/test/downloadUtils.spec.tsx +84 -5
  26. package/dist/components/crowdsource-manager.js +13 -9
  27. package/dist/components/downloadUtils.js +20 -0
  28. package/dist/components/floor-filter2.js +2 -1
  29. package/dist/components/layer-table2.js +22 -12
  30. package/dist/components/map-card2.js +13 -6
  31. package/dist/components/map-tools2.js +14 -1
  32. package/dist/components/queryUtils.js +1 -1
  33. package/dist/esm/basemap-gallery_7.entry.js +14 -2
  34. package/dist/esm/calcite-combobox_6.entry.js +1 -1
  35. package/dist/esm/card-manager_3.entry.js +34 -20
  36. package/dist/esm/crowdsource-manager.entry.js +13 -9
  37. package/dist/esm/{downloadUtils-fa2b3718.js → downloadUtils-ddd7eeb7.js} +22 -2
  38. package/dist/esm/{index.es-cc671fd2.js → index.es-a53707d1.js} +2 -2
  39. package/dist/esm/loader.js +1 -1
  40. package/dist/esm/map-select-tools_3.entry.js +2 -2
  41. package/dist/esm/{mapViewUtils-8bfabd80.js → mapViewUtils-43c930f1.js} +1 -1
  42. package/dist/esm/polyfills/core-js.js +11 -0
  43. package/dist/esm/polyfills/dom.js +79 -0
  44. package/dist/esm/polyfills/es5-html-element.js +1 -0
  45. package/dist/esm/polyfills/index.js +34 -0
  46. package/dist/esm/polyfills/system.js +6 -0
  47. package/dist/esm/public-notification.entry.js +2 -2
  48. package/dist/esm/solutions-components.js +1 -1
  49. package/dist/solutions-components/demos/crowdsource-manager.html +5 -4
  50. package/dist/solutions-components/{p-e94c7cf2.js → p-05ba41f9.js} +1 -1
  51. package/dist/solutions-components/{p-ce3b40ca.entry.js → p-4792005c.entry.js} +1 -1
  52. package/dist/solutions-components/p-506db776.entry.js +6 -0
  53. package/dist/solutions-components/{p-86893d46.entry.js → p-50a3a887.entry.js} +1 -1
  54. package/dist/solutions-components/p-7b61f856.entry.js +6 -0
  55. package/dist/solutions-components/p-80243d29.entry.js +6 -0
  56. package/dist/solutions-components/{p-190c83b9.entry.js → p-978a26b3.entry.js} +1 -1
  57. package/dist/solutions-components/{p-37a58e04.js → p-b745143d.js} +3 -3
  58. package/dist/solutions-components/{p-53bc5fc1.js → p-f2194390.js} +1 -1
  59. package/dist/solutions-components/solutions-components.esm.js +1 -1
  60. package/dist/solutions-components/utils/downloadUtils.ts +20 -0
  61. package/dist/solutions-components/utils/queryUtils.ts +1 -1
  62. package/dist/solutions-components/utils/test/downloadUtils.spec.tsx +84 -5
  63. package/dist/types/components/layer-table/layer-table.d.ts +4 -0
  64. package/dist/types/components/map-card/map-card.d.ts +8 -0
  65. package/dist/types/components/map-tools/map-tools.d.ts +8 -0
  66. package/dist/types/components.d.ts +24 -0
  67. package/package.json +1 -1
  68. package/dist/solutions-components/p-792e171f.entry.js +0 -6
  69. package/dist/solutions-components/p-d44ad6c4.entry.js +0 -6
  70. package/dist/solutions-components/p-f2dcb05a.entry.js +0 -6
@@ -181,7 +181,8 @@ const FloorFilter = class {
181
181
  * @protected
182
182
  */
183
183
  _initFloorFilter(view) {
184
- if (view && this.enabled && this.FloorFilter) {
184
+ var _a;
185
+ if (view && this.enabled && this.FloorFilter && ((_a = view === null || view === void 0 ? void 0 : view.map) === null || _a === void 0 ? void 0 : _a.floorInfo)) {
185
186
  if (!this.floorFilterWidget) {
186
187
  this.floorFilterWidget = new this.FloorFilter({
187
188
  container: this._floorFilterElement,
@@ -733,6 +734,7 @@ const MapTools = class {
733
734
  this.layout = "vertical";
734
735
  this.mapView = undefined;
735
736
  this.searchConfiguration = undefined;
737
+ this._hasFloorInfo = false;
736
738
  this._translations = undefined;
737
739
  this._showTools = true;
738
740
  this._showBasemapWidget = false;
@@ -746,6 +748,15 @@ const MapTools = class {
746
748
  // Watch handlers
747
749
  //
748
750
  //--------------------------------------------------------------------------
751
+ /**
752
+ * When the mapView loads check if it supports floor awareness
753
+ */
754
+ async mapViewWatchHandler() {
755
+ await this.mapView.when(() => {
756
+ var _a, _b;
757
+ this._hasFloorInfo = (_b = (_a = this.mapView) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.floorInfo;
758
+ });
759
+ }
749
760
  /**
750
761
  * When the _showBasemapWidget property is true display the basemap gallery
751
762
  */
@@ -859,7 +870,7 @@ const MapTools = class {
859
870
  this._getActionGroup(fullscreenIcon, false, fullscreenTip, () => this._expand()) :
860
871
  undefined, this.enableBasemap ?
861
872
  this._getActionGroup("basemap", false, this._translations.basemap, () => this._toggleBasemapPicker()) :
862
- undefined, this.enableFloorFilter ?
873
+ undefined, this.enableFloorFilter && this._hasFloorInfo ?
863
874
  this._getActionGroup("urban-model", false, this._translations.floorFilter, () => this._toggleFloorFilter()) :
864
875
  undefined)), index.h("basemap-gallery", { basemapConfig: this.basemapConfig, class: basemapClass, mapView: this.mapView, ref: (el) => { this._basemapElement = el; } }), index.h("map-search", { class: searchClass, mapView: this.mapView, ref: (el) => { this._searchElement = el; }, resultGraphicEnabled: true, searchConfiguration: this.searchConfiguration }), index.h("map-legend", { class: legendClass, mapView: this.mapView, ref: (el) => { this._legendElement = el; } }), index.h("map-fullscreen", { class: fullscreenClass, mapView: this.mapView, ref: (el) => { this._fullscreenElement = el; } }), index.h("floor-filter", { class: floorFilterClass, enabled: this.enableFloorFilter, mapView: this.mapView, ref: (el) => { this._floorFilterElement = el; } })));
865
876
  }
@@ -953,6 +964,7 @@ const MapTools = class {
953
964
  }
954
965
  get el() { return index.getElement(this); }
955
966
  static get watchers() { return {
967
+ "mapView": ["mapViewWatchHandler"],
956
968
  "_showBasemapWidget": ["_showBasemapWidgetWatchHandler"],
957
969
  "_showFloorFilter": ["_showFloorFilterWatchHandler"],
958
970
  "_showFullscreen": ["_showFullscreenWatchHandler"],
@@ -25,7 +25,7 @@ const debounce = require('./debounce-30afab47.js');
25
25
  const conditionalSlot = require('./conditionalSlot-b6c29b8c.js');
26
26
  const key = require('./key-29076628.js');
27
27
  const locale$1 = require('./locale-d50f3250.js');
28
- const mapViewUtils = require('./mapViewUtils-786a219b.js');
28
+ const mapViewUtils = require('./mapViewUtils-303bf42d.js');
29
29
  const publicNotificationStore = require('./publicNotificationStore-9c812ef4.js');
30
30
  require('./resources-d8917c46.js');
31
31
  require('./browser-09760f9f.js');
@@ -9,9 +9,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  const index = require('./index-1ffa261f.js');
11
11
  const locale = require('./locale-d50f3250.js');
12
- const mapViewUtils = require('./mapViewUtils-786a219b.js');
12
+ const mapViewUtils = require('./mapViewUtils-303bf42d.js');
13
13
  const loadModules = require('./loadModules-03328b9d.js');
14
- const downloadUtils = require('./downloadUtils-84024878.js');
14
+ const downloadUtils = require('./downloadUtils-b37689dd.js');
15
15
  require('./_commonjsHelpers-384729db.js');
16
16
  require('./interfaces-000be6de.js');
17
17
  require('./clean-url-d5326abb.js');
@@ -132,6 +132,7 @@ const LayerTable = class {
132
132
  this.enableAutoRefresh = undefined;
133
133
  this.enableCSV = undefined;
134
134
  this.enableInlineEdit = undefined;
135
+ this.enableZoom = undefined;
135
136
  this.mapInfo = undefined;
136
137
  this.mapView = undefined;
137
138
  this.onlyShowUpdatableLayers = undefined;
@@ -378,13 +379,15 @@ const LayerTable = class {
378
379
  _initToolInfos() {
379
380
  var _a;
380
381
  const featuresSelected = this._selectedIndexes.length > 0;
381
- this._toolInfos = [{
382
+ const featuresEmpty = this._allIds.length === 0;
383
+ this._toolInfos = [this.enableZoom ? {
382
384
  icon: "zoom-to-object",
383
385
  label: this._translations.zoom,
384
386
  func: () => this._zoom(),
385
387
  disabled: !featuresSelected,
386
388
  isOverflow: false
387
- }, ((_a = this.mapInfo) === null || _a === void 0 ? void 0 : _a.filters) ? {
389
+ } : undefined,
390
+ ((_a = this.mapInfo) === null || _a === void 0 ? void 0 : _a.filters) ? {
388
391
  icon: "filter",
389
392
  label: this._translations.filters,
390
393
  func: () => this._filter(),
@@ -414,27 +417,27 @@ const LayerTable = class {
414
417
  icon: "list-check-all",
415
418
  func: () => this._selectAll(),
416
419
  label: this._translations.selectAll,
417
- disabled: false,
418
- isOverflow: true
420
+ disabled: featuresEmpty,
421
+ isOverflow: false
419
422
  }, {
420
423
  icon: "compare",
421
424
  func: () => this._switchSelected(),
422
425
  label: this._translations.switchSelected,
423
- disabled: false,
424
- isOverflow: true
426
+ disabled: featuresEmpty,
427
+ isOverflow: false
425
428
  }, {
426
429
  icon: "refresh",
427
430
  func: () => this._refresh(),
428
431
  label: this._translations.refresh,
429
432
  disabled: false,
430
- isOverflow: true
433
+ isOverflow: false
431
434
  },
432
435
  this.enableCSV ? {
433
436
  icon: "export",
434
437
  func: () => void this._exportToCSV(),
435
438
  label: this._translations.exportCSV,
436
- disabled: false,
437
- isOverflow: true
439
+ disabled: featuresEmpty,
440
+ isOverflow: false
438
441
  } : undefined];
439
442
  this._defaultVisibleToolSizeInfos = undefined;
440
443
  }
@@ -478,14 +481,20 @@ const LayerTable = class {
478
481
  prev.push(cur.id);
479
482
  return prev;
480
483
  }, []);
484
+ let forceFinish = false;
481
485
  const controlsThatFit = [...this._defaultVisibleToolSizeInfos].reduce((prev, cur) => {
482
- if (skipControls.indexOf(cur.id) < 0 &&
486
+ if (!forceFinish && skipControls.indexOf(cur.id) < 0 &&
483
487
  (currentTools.indexOf(cur.id) > -1 || (controlsWidth + cur.width) <= toolbarWidth)) {
484
488
  if (currentTools.indexOf(cur.id) < 0) {
485
489
  controlsWidth += cur.width;
486
490
  }
487
491
  prev.push(cur);
488
492
  }
493
+ else if (skipControls.indexOf(cur.id) < 0 && (controlsWidth + cur.width) > toolbarWidth) {
494
+ // exit the first time we evalute this as true...otherwise it will add the next control that will fit
495
+ // and not preserve the overall order of controls
496
+ forceFinish = true;
497
+ }
489
498
  return prev;
490
499
  }, []);
491
500
  this._setControlsThatFit(controlsThatFit, skipControls);
@@ -564,9 +573,9 @@ const LayerTable = class {
564
573
  */
565
574
  _getDropdown(id) {
566
575
  const dropdownItems = this._getDropdownItems();
567
- return (index.h("calcite-dropdown", { disabled: this._layer === undefined, id: "solutions-more" }, index.h("calcite-action", { appearance: "solid", id: id, label: "", slot: "trigger", text: "" }, index.h("calcite-button", { appearance: "transparent", iconEnd: "chevron-down", kind: "neutral" }, this._translations.more)), index.h("calcite-dropdown-group", { "selection-mode": "none" }, dropdownItems.map(item => {
576
+ return dropdownItems.length > 0 ? (index.h("calcite-dropdown", { disabled: this._layer === undefined, id: "solutions-more" }, index.h("calcite-action", { appearance: "solid", id: id, label: "", slot: "trigger", text: "" }, index.h("calcite-button", { appearance: "transparent", iconEnd: "chevron-down", kind: "neutral" }, this._translations.more)), index.h("calcite-dropdown-group", { "selection-mode": "none" }, dropdownItems.map(item => {
568
577
  return (index.h("calcite-dropdown-item", { iconStart: item.icon, onClick: item.func }, item.label));
569
- }))));
578
+ })))) : undefined;
570
579
  }
571
580
  /**
572
581
  * Get a list of toolInfos that should display in the dropdown
@@ -976,7 +985,7 @@ const LayerTable = class {
976
985
  };
977
986
  LayerTable.style = layerTableCss;
978
987
 
979
- 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}";
988
+ 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}";
980
989
 
981
990
  const MapCard = class {
982
991
  constructor(hostRef) {
@@ -987,12 +996,14 @@ const MapCard = class {
987
996
  * string: the id of map currently displayed
988
997
  */
989
998
  this._loadedId = "";
999
+ this.enableHome = undefined;
990
1000
  this.enableLegend = undefined;
991
1001
  this.enableFloorFilter = undefined;
992
1002
  this.enableFullscreen = undefined;
993
1003
  this.enableSearch = undefined;
994
1004
  this.enableBasemap = undefined;
995
1005
  this.basemapConfig = undefined;
1006
+ this.hidden = undefined;
996
1007
  this.mapInfos = [];
997
1008
  this.mapView = undefined;
998
1009
  this._searchConfiguration = undefined;
@@ -1019,7 +1030,8 @@ const MapCard = class {
1019
1030
  * Renders the component.
1020
1031
  */
1021
1032
  render() {
1022
- return (index.h(index.Host, null, index.h("map-picker", { mapInfos: this.mapInfos }), index.h("div", { class: "map-height", ref: (el) => (this._mapDiv = el) }), index.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 })));
1033
+ const mapClass = this.hidden ? "visibility-hidden" : "";
1034
+ return (index.h(index.Host, null, index.h("map-picker", { mapInfos: this.mapInfos }), index.h("div", { class: `map-height ${mapClass}`, ref: (el) => (this._mapDiv = el) }), index.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 })));
1023
1035
  }
1024
1036
  //--------------------------------------------------------------------------
1025
1037
  //
@@ -1071,10 +1083,12 @@ const MapCard = class {
1071
1083
  this._searchConfiguration = this._webMapInfo.searchConfiguration;
1072
1084
  this.beforeMapChanged.emit();
1073
1085
  await this.mapView.when(() => {
1074
- const home = new this.Home({
1075
- view: this.mapView
1076
- });
1077
- this.mapView.ui.add(home, { position: "top-left", index: 3 });
1086
+ if (this.enableHome) {
1087
+ const home = new this.Home({
1088
+ view: this.mapView
1089
+ });
1090
+ this.mapView.ui.add(home, { position: "top-left", index: 3 });
1091
+ }
1078
1092
  this.mapView.ui.add(this._mapTools, { position: "top-right", index: 0 });
1079
1093
  this.mapChanged.emit({
1080
1094
  id: id,
@@ -12,7 +12,7 @@ const locale = require('./locale-d50f3250.js');
12
12
  const interfaces = require('./interfaces-000be6de.js');
13
13
  require('./_commonjsHelpers-384729db.js');
14
14
 
15
- 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}";
15
+ 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}";
16
16
 
17
17
  const CrowdsourceManager = class {
18
18
  constructor(hostRef) {
@@ -23,7 +23,7 @@ const CrowdsourceManager = class {
23
23
  */
24
24
  this._shouldSetMapView = false;
25
25
  this.classicGrid = false;
26
- this.enableAutoRefresh = true;
26
+ this.enableAutoRefresh = false;
27
27
  this.enableCSV = true;
28
28
  this.enableFloorFilter = true;
29
29
  this.enableFullscreen = true;
@@ -240,11 +240,11 @@ const CrowdsourceManager = class {
240
240
  * @protected
241
241
  */
242
242
  _getMapNode(layoutMode, hideMap) {
243
- var _a, _b, _c;
243
+ var _a;
244
244
  const mapDisplayClass = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ? "display-flex height-full width-1-2" :
245
245
  layoutMode === interfaces.ELayoutMode.GRID && !hideMap ? "" : "display-none";
246
- const mapContainerClass = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ? "width-full" : this._expandPopup ? "height-50-px" : "adjusted-height-50";
247
- return (index.h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, index.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) })));
246
+ const mapContainerClass = this.classicGrid && layoutMode === interfaces.ELayoutMode.GRID ? "width-full" : "adjusted-height-50";
247
+ return (index.h("div", { class: `${mapContainerClass} overflow-hidden ${mapDisplayClass}` }, index.h("map-card", { basemapConfig: this.basemapConfig, class: "width-full", enableBasemap: this.enableBasemap, enableFloorFilter: this.enableFloorFilter, enableFullscreen: this.enableFullscreen, enableHome: this.enableHome, 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) })));
248
248
  }
249
249
  /**
250
250
  * Get the expand node for the popup information
@@ -257,7 +257,8 @@ const CrowdsourceManager = class {
257
257
  const id = "expand-popup";
258
258
  const tooltip = this._expandPopup ? this._translations.collapsePopup : this._translations.expandPopup;
259
259
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
260
- return (index.h("div", { class: "calcite-mode-dark height-full" }, index.h("calcite-panel", null, index.h("div", { class: "display-flex align-items-center", slot: "header-content" }, index.h("calcite-icon", { icon: "information", scale: "s" }), index.h("div", { class: "padding-inline-start-75" }, this._translations.information)), index.h("calcite-action", { icon: icon, id: id, onClick: () => this._togglePopup(), slot: "header-actions-end" }), index.h("calcite-tooltip", { class: themeClass, label: "", placement: "bottom", "reference-element": id }, index.h("span", null, tooltip)), this._getCardNode())));
260
+ const popupNodeClass = !this._expandPopup ? "height-full" : "position-absolute-50";
261
+ return (index.h("div", { class: "calcite-mode-dark " + popupNodeClass }, index.h("calcite-panel", null, index.h("div", { class: "display-flex align-items-center", slot: "header-content" }, index.h("calcite-icon", { icon: "information", scale: "s" }), index.h("div", { class: "padding-inline-start-75" }, this._translations.information)), index.h("calcite-action", { icon: icon, id: id, onClick: () => this._togglePopup(), slot: "header-actions-end" }), index.h("calcite-tooltip", { class: themeClass, label: "", placement: "bottom", "reference-element": id }, index.h("span", null, tooltip)), this._getCardNode())));
261
262
  }
262
263
  /**
263
264
  * Toggle the popup information
@@ -278,9 +279,8 @@ const CrowdsourceManager = class {
278
279
  */
279
280
  _getCardNode() {
280
281
  const cardManagerHeight = !this._expandPopup ? "height-50" : "height-full";
281
- const cardManagerContainer = this._expandPopup ? "width-50 adjusted-height-100-50" : "width-50 height-full";
282
282
  const themeClass = this.theme === "dark" ? "calcite-mode-dark" : "calcite-mode-light";
283
- return (index.h("div", { class: `${cardManagerContainer} ${themeClass}` }, index.h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
283
+ return (index.h("div", { class: `width-50 height-full ${themeClass}` }, index.h("card-manager", { class: `${cardManagerHeight} width-full`, mapView: this === null || this === void 0 ? void 0 : this._mapView, zoomAndScrollToSelected: this.zoomAndScrollToSelected })));
284
284
  }
285
285
  /**
286
286
  * Get the table node based for the current layout
@@ -300,7 +300,7 @@ const CrowdsourceManager = class {
300
300
  const toggleSlot = this.classicGrid && layoutMode !== interfaces.ELayoutMode.VERTICAL ? "footer" :
301
301
  this.classicGrid && layoutMode === interfaces.ELayoutMode.VERTICAL ? "panel-end" :
302
302
  layoutMode === interfaces.ELayoutMode.HORIZONTAL ? "header" : "panel-start";
303
- return (index.h("calcite-shell", { class: tableSizeClass + " border-bottom" }, index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip))), index.h("div", { class: "width-full height-full position-relative" }, index.h("layer-table", { enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableInlineEdit: this.enableInlineEdit, mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
303
+ return (index.h("calcite-shell", { class: tableSizeClass + " border-bottom" }, index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip))), index.h("div", { class: "width-full height-full position-relative" }, index.h("layer-table", { enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableInlineEdit: this.enableInlineEdit, enableZoom: this.enableZoom, mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
304
304
  }
305
305
  /**
306
306
  * Open/Close the appropriate panel.
@@ -334,8 +334,12 @@ const CrowdsourceManager = class {
334
334
  * @protected
335
335
  */
336
336
  _setMapView() {
337
+ var _a, _b;
337
338
  this._mapInfo = this._getMapInfo(this._mapChange.id);
338
339
  this._mapView = this._mapChange.mapView;
340
+ if (!this.enableZoom && ((_b = (_a = this._mapView) === null || _a === void 0 ? void 0 : _a.ui) === null || _b === void 0 ? void 0 : _b.components.indexOf("zoom")) > -1) {
341
+ this._mapView.ui.components = this._mapView.ui.components.filter(c => c !== "zoom");
342
+ }
339
343
  this._mapView.popupEnabled = false;
340
344
  }
341
345
  /**
@@ -8,7 +8,7 @@
8
8
  const _commonjsHelpers = require('./_commonjsHelpers-384729db.js');
9
9
  const index = require('./index-1ffa261f.js');
10
10
  const loadModules = require('./loadModules-03328b9d.js');
11
- const mapViewUtils = require('./mapViewUtils-786a219b.js');
11
+ const mapViewUtils = require('./mapViewUtils-303bf42d.js');
12
12
  const cleanUrl = require('./clean-url-d5326abb.js');
13
13
 
14
14
  /** @license
@@ -1508,7 +1508,7 @@ function(t){var e=function(t){for(var e=t.length,r=new Uint8Array(e),n=0;n<e;n++
1508
1508
  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1509
1509
  * ====================================================================
1510
1510
  */
1511
- function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-eb7cf427.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},
1511
+ function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-83e253dc.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},
1512
1512
  /** ====================================================================
1513
1513
  * @license
1514
1514
  * jsPDF XMP metadata plugin
@@ -2831,6 +2831,26 @@ function _prepareAttributeValue(attributeValue, attributeType, attributeDomain,
2831
2831
  // e.g., "12/31/1969, 4:00 PM"
2832
2832
  value = value.replace(/\xe2\x80\xaf/g, "");
2833
2833
  break;
2834
+ case "date-only":
2835
+ // Value is a string, e.g., "2020-12-08"
2836
+ if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
2837
+ const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
2838
+ value = intl.formatDateOnly(value, dateFormatIntlOptions);
2839
+ }
2840
+ else {
2841
+ value = intl.formatDateOnly(value);
2842
+ }
2843
+ break;
2844
+ case "time-only":
2845
+ // Value is a string, e.g., "14:51:44.2533333"
2846
+ if (attributeFormat === null || attributeFormat === void 0 ? void 0 : attributeFormat.dateFormat) {
2847
+ const dateFormatIntlOptions = intl.convertDateFormatToIntlOptions(attributeFormat.dateFormat);
2848
+ value = intl.formatTimeOnly(value, dateFormatIntlOptions);
2849
+ }
2850
+ else {
2851
+ value = intl.formatTimeOnly(value);
2852
+ }
2853
+ break;
2834
2854
  case "double":
2835
2855
  case "integer":
2836
2856
  case "long":
@@ -6,11 +6,11 @@
6
6
  'use strict';
7
7
 
8
8
  const _commonjsHelpers = require('./_commonjsHelpers-384729db.js');
9
- const downloadUtils = require('./downloadUtils-84024878.js');
9
+ const downloadUtils = require('./downloadUtils-b37689dd.js');
10
10
  require('./index-1ffa261f.js');
11
11
  require('./loadModules-03328b9d.js');
12
12
  require('./locale-d50f3250.js');
13
- require('./mapViewUtils-786a219b.js');
13
+ require('./mapViewUtils-303bf42d.js');
14
14
  require('./interfaces-000be6de.js');
15
15
  require('./clean-url-d5326abb.js');
16
16