@esri/solutions-components 0.10.40 → 0.10.42

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. package/dist/cjs/calcite-block_5.cjs.entry.js +75 -65
  2. package/dist/cjs/card-manager_3.cjs.entry.js +11 -12
  3. package/dist/cjs/crowdsource-manager.cjs.entry.js +4 -3
  4. package/dist/cjs/crowdsource-reporter.cjs.entry.js +4 -5
  5. package/dist/cjs/instant-apps-app-guide.cjs.entry.js +1 -1
  6. package/dist/cjs/instant-apps-export.cjs.entry.js +5 -1
  7. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +1 -1
  8. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +2 -2
  9. package/dist/cjs/instant-apps-time-filter.cjs.entry.js +6 -6
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/cjs/solutions-components.cjs.js +1 -1
  12. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +4 -3
  13. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +4 -5
  14. package/dist/collection/components/layer-table/layer-table.js +14 -11
  15. package/dist/collection/components/map-card/map-card.js +9 -5
  16. package/dist/components/crowdsource-manager.js +4 -3
  17. package/dist/components/crowdsource-reporter.js +4 -5
  18. package/dist/components/instant-apps-app-guide.js +1 -1
  19. package/dist/components/instant-apps-export.js +5 -1
  20. package/dist/components/instant-apps-filter-list2.js +75 -66
  21. package/dist/components/instant-apps-landing-page.js +1 -1
  22. package/dist/components/instant-apps-sign-in2.js +2 -2
  23. package/dist/components/instant-apps-time-filter.js +6 -6
  24. package/dist/components/layer-table2.js +8 -9
  25. package/dist/components/map-card2.js +3 -3
  26. package/dist/esm/calcite-block_5.entry.js +75 -65
  27. package/dist/esm/card-manager_3.entry.js +11 -12
  28. package/dist/esm/crowdsource-manager.entry.js +4 -3
  29. package/dist/esm/crowdsource-reporter.entry.js +4 -5
  30. package/dist/esm/instant-apps-app-guide.entry.js +1 -1
  31. package/dist/esm/instant-apps-export.entry.js +5 -1
  32. package/dist/esm/instant-apps-landing-page.entry.js +1 -1
  33. package/dist/esm/instant-apps-sign-in.entry.js +2 -2
  34. package/dist/esm/instant-apps-time-filter.entry.js +6 -6
  35. package/dist/esm/loader.js +1 -1
  36. package/dist/esm/solutions-components.js +1 -1
  37. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-app-guide/instant-apps-app-guide.css +1 -1
  38. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-landing-page/instant-apps-landing-page.css +43 -26
  39. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +6 -0
  40. package/dist/solutions-components/p-442dd59c.entry.js +6 -0
  41. package/dist/solutions-components/p-523dcf4b.entry.js +6 -0
  42. package/dist/solutions-components/{p-6d1922cc.entry.js → p-8b92fe23.entry.js} +1 -1
  43. package/dist/solutions-components/p-8f8c7045.entry.js +6 -0
  44. package/dist/solutions-components/p-953afbb3.entry.js +29 -0
  45. package/dist/solutions-components/p-a1d8aed8.entry.js +6 -0
  46. package/dist/solutions-components/{p-bb8b1ee2.entry.js → p-a2cf9fdc.entry.js} +1 -1
  47. package/dist/solutions-components/p-a7f56b28.entry.js +6 -0
  48. package/dist/solutions-components/p-e4107150.entry.js +6 -0
  49. package/dist/solutions-components/solutions-components.esm.js +1 -1
  50. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +1 -1
  51. package/dist/types/components/layer-table/layer-table.d.ts +2 -2
  52. package/dist/types/components/map-card/map-card.d.ts +1 -1
  53. package/dist/types/components.d.ts +2 -2
  54. package/package.json +4 -4
  55. package/dist/solutions-components/p-5b3c0418.entry.js +0 -6
  56. package/dist/solutions-components/p-750b3277.entry.js +0 -6
  57. package/dist/solutions-components/p-8779ee41.entry.js +0 -6
  58. package/dist/solutions-components/p-ca3cbd29.entry.js +0 -6
  59. package/dist/solutions-components/p-cced387c.entry.js +0 -6
  60. package/dist/solutions-components/p-e1391389.entry.js +0 -29
  61. package/dist/solutions-components/p-e9026f9a.entry.js +0 -6
@@ -35,31 +35,31 @@ let e$a;function has(a){return "function"==typeof e$a[a]?e$a[a]=e$a[a](globalThi
35
35
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
36
36
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
37
37
  */
38
- function o$8(n){return "Int8Array"===n?.constructor?.name}function u$6(n){return "Uint8Array"===n?.constructor?.name}function e$9(n){return "Uint8ClampedArray"===n?.constructor?.name}function c$7(n){return "Int16Array"===n?.constructor?.name}function i$6(n){return "Uint16Array"===n?.constructor?.name}function a$5(n){return "Int32Array"===n?.constructor?.name}function f$5(n){return "Uint32Array"===n?.constructor?.name}function s$6(n){return "Float32Array"===n?.constructor?.name}function m$5(n){return "Float64Array"===n?.constructor?.name}
38
+ function o$8(n){return "Int8Array"===n?.constructor?.name}function u$6(n){return "Uint8Array"===n?.constructor?.name}function e$9(n){return "Uint8ClampedArray"===n?.constructor?.name}function c$6(n){return "Int16Array"===n?.constructor?.name}function i$6(n){return "Uint16Array"===n?.constructor?.name}function a$6(n){return "Int32Array"===n?.constructor?.name}function f$5(n){return "Uint32Array"===n?.constructor?.name}function s$6(n){return "Float32Array"===n?.constructor?.name}function m$5(n){return "Float64Array"===n?.constructor?.name}
39
39
 
40
40
  /*
41
41
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
42
42
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
43
43
  */
44
- function a$4(t){if(!t||"object"!=typeof t||"function"==typeof t)return t;const n=O$2(t);if(null!=n)return n;if(y$4(t))return t.clone();if(m$4(t))return t.map(a$4);if(b$2(t))return t.clone();const e={};for(const r of Object.getOwnPropertyNames(t))e[r]=a$4(t[r]);return e}function y$4(t){return "function"==typeof t.clone}function m$4(t){return "function"==typeof t.map&&"function"==typeof t.forEach}function b$2(t){return "function"==typeof t.notifyChange&&"function"==typeof t.watch}function O$2(t){if(o$8(t)||u$6(t)||e$9(t)||c$7(t)||i$6(t)||a$5(t)||f$5(t)||s$6(t)||m$5(t))return t.slice();if(t instanceof Date)return new Date(t.getTime());if(t instanceof ArrayBuffer){return t.slice(0,t.byteLength)}if(t instanceof Map){const n=new Map;for(const[e,r]of t)n.set(e,a$4(r));return n}if(t instanceof Set){const n=new Set;for(const e of t)n.add(a$4(e));return n}return null}
44
+ function a$5(t){if(!t||"object"!=typeof t||"function"==typeof t)return t;const n=O$2(t);if(null!=n)return n;if(y$4(t))return t.clone();if(m$4(t))return t.map(a$5);if(b$2(t))return t.clone();const e={};for(const r of Object.getOwnPropertyNames(t))e[r]=a$5(t[r]);return e}function y$4(t){return "function"==typeof t.clone}function m$4(t){return "function"==typeof t.map&&"function"==typeof t.forEach}function b$2(t){return "function"==typeof t.notifyChange&&"function"==typeof t.watch}function O$2(t){if(o$8(t)||u$6(t)||e$9(t)||c$6(t)||i$6(t)||a$6(t)||f$5(t)||s$6(t)||m$5(t))return t.slice();if(t instanceof Date)return new Date(t.getTime());if(t instanceof ArrayBuffer){return t.slice(0,t.byteLength)}if(t instanceof Map){const n=new Map;for(const[e,r]of t)n.set(e,a$5(r));return n}if(t instanceof Set){const n=new Set;for(const e of t)n.add(a$5(e));return n}return null}
45
45
 
46
46
  /*
47
47
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
48
48
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
49
49
  */
50
- function n$7(r,n,t=!1){return f$4(r,n,t)}function t$4(r,n){if(null!=n)return n[r]||u$5(r.split("."),!1,n)}function u$5(r,n,t){let e=t;for(const i of r){if(null==e)return;if(!(i in e)){if(!n)return;e[i]={};}e=e[i];}return e}function f$4(n,t,e){return t?Object.keys(t).reduce(((n,i)=>{let u=n[i],l=t[i];return u===l?n:void 0===u?(n[i]=a$4(l),n):(Array.isArray(l)||Array.isArray(n)?(u=u?Array.isArray(u)?n[i]=u.slice():n[i]=[u]:n[i]=[],l&&(Array.isArray(l)||(l=[l]),e?l.forEach((r=>{u.includes(r)||u.push(r);})):n[i]=l.slice())):l&&"object"==typeof l?n[i]=f$4(u,l,e):n.hasOwnProperty(i)&&!t.hasOwnProperty(i)||(n[i]=l),n)}),n||{}):n}
50
+ function n$7(r,n,t=!1){return f$4(r,n,t)}function t$4(r,n){if(null!=n)return n[r]||u$5(r.split("."),!1,n)}function u$5(r,n,t){let e=t;for(const i of r){if(null==e)return;if(!(i in e)){if(!n)return;e[i]={};}e=e[i];}return e}function f$4(n,t,e){return t?Object.keys(t).reduce(((n,i)=>{let u=n[i],l=t[i];return u===l?n:void 0===u?(n[i]=a$5(l),n):(Array.isArray(l)||Array.isArray(n)?(u=u?Array.isArray(u)?n[i]=u.slice():n[i]=[u]:n[i]=[],l&&(Array.isArray(l)||(l=[l]),e?l.forEach((r=>{u.includes(r)||u.push(r);})):n[i]=l.slice())):l&&"object"==typeof l?n[i]=f$4(u,l,e):n.hasOwnProperty(i)&&!t.hasOwnProperty(i)||(n[i]=l),n)}),n||{}):n}
51
51
 
52
52
  /*
53
53
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
54
54
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
55
55
  */
56
- const c$6="20241016";
56
+ const a$4="20241101";
57
57
 
58
58
  /*
59
59
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
60
60
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
61
61
  */
62
- const s$5={apiKey:void 0,applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(n$7(s$5,globalThis.esriConfig,!0),delete s$5.has),!s$5.assetsPath){{const e="4.31.0";s$5.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${c$6}/assets`;}s$5.defaultAssetsPath=s$5.assetsPath;}
62
+ const s$5={apiKey:void 0,applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(n$7(s$5,globalThis.esriConfig,!0),delete s$5.has),!s$5.assetsPath){{const e="4.31.0";s$5.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${a$4}/assets`;}s$5.defaultAssetsPath=s$5.assetsPath;}
63
63
 
64
64
  /*
65
65
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
@@ -83,7 +83,7 @@ function s$4(s,e){return s.replaceAll(/\$\{([^\s:}]*)(?::([^\s:}]+))?\}/g,((s,r)
83
83
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
84
84
  See https://js.arcgis.com/4.31/esri/copyright.txt for details.
85
85
  */
86
- class s$3 extends e$8{constructor(e,t,r){super(e,t,r);}toJSON(){if(null!=this.details)try{return {name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((t,r)=>{if(r&&"object"==typeof r&&"function"==typeof r.toJSON)return r;try{return a$4(r)}catch(s){return "[object]"}})))}}catch(r){throw n$6.getLogger("esri.core.Error").error(r),r}return {name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s$3(e.name,e.message,e.details)}}s$3.prototype.type="error";
86
+ class s$3 extends e$8{constructor(e,t,r){super(e,t,r);}toJSON(){if(null!=this.details)try{return {name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((t,r)=>{if(r&&"object"==typeof r&&"function"==typeof r.toJSON)return r;try{return a$5(r)}catch(s){return "[object]"}})))}}catch(r){throw n$6.getLogger("esri.core.Error").error(r),r}return {name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s$3(e.name,e.message,e.details)}}s$3.prototype.type="error";
87
87
 
88
88
  /*
89
89
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
@@ -423,8 +423,8 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
423
423
  /**
424
424
  * Updates the filter
425
425
  */
426
- async filterUpdate() {
427
- await this._handleFilterUpdate();
426
+ async filterUpdate(active) {
427
+ await this._handleFilterUpdate(active);
428
428
  }
429
429
  /**
430
430
  * Closes the filter
@@ -566,10 +566,10 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
566
566
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
567
567
  const showSearch = this._canShowFullTextSearch();
568
568
  this._validateActiveActions();
569
- return (h(Host, { key: '5cbb5ba55c63eaf278666aac034a01d971d9f12a' }, h("calcite-shell", { key: '8a27d87fc002b72fe478d25885b2ab04261362ca' }, this._getTableControlRow("header"), h("div", { key: '250c356a30389b8cb95628953f3bb3ec5c88361d', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: '9d5dbb084031bdface1dbc3a1dbc2fa33eb163b5', class: "height-full width-full" }, showSearch &&
570
- h("div", { key: '2d45ae4255a1d0e3cf14aa0f6a01915a38626bc7', class: "search-container" }, h("calcite-input", { key: 'c73546fef30db70d01cf8978a5daf9ea4193ddc2', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: '61621afb1e5fa67e25b878320c8497200b8265cd', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '0ef4fe0e4099ec60f4c38e2c421920c9a8fe3c4f', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
569
+ return (h(Host, { key: 'f56462fd5d5afa71052cf2557069bb2fee15aaeb' }, h("calcite-shell", { key: '92ccfa2235269aad6da5f918f79ec8ae100e99ca' }, this._getTableControlRow("header"), h("div", { key: 'e5b8fe5e4236e1a7b7e9d31ad784d9bb52a6918d', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'eca933d832e5b6efddb025211c253bf09e41ab22', class: "height-full width-full" }, showSearch &&
570
+ h("div", { key: 'e819896c4264db3ee95d10194b67da65997b541d', class: "search-container" }, h("calcite-input", { key: 'e979c7962205caf072057332280b9e04ecd233c4', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: 'ee715472a4f819dd1e9328e75022439e9bba1334', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '8085821dea31de1fcbb1119e5791c0dea744e470', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
571
571
  .replace("{{total}}", total)
572
- .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal(), h("delete-dialog", { key: 'e2564b1d08476f762577247ffb41a00e5c41514c', id: "deleteDialogId", ids: this._getIds(), layer: this._layer, locale: this.locale, onDeleteDialogClose: () => this._deleteDialogOpen = false, open: this._deleteDialogOpen, ref: (el) => this._deleteDialog = el })));
572
+ .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal(), h("delete-dialog", { key: '20c9a06c3f0d44433d9442755d25658c249e102c', id: "deleteDialogId", ids: this._getIds(), layer: this._layer, locale: this.locale, onDeleteDialogClose: () => this._deleteDialogOpen = false, open: this._deleteDialogOpen, ref: (el) => this._deleteDialog = el })));
573
573
  }
574
574
  _deleteDialog;
575
575
  /**
@@ -1614,7 +1614,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1614
1614
  * @protected
1615
1615
  */
1616
1616
  _filterModal() {
1617
- return (h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: () => void this._closeFilter(), open: this._filterOpen, widthScale: "s" }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations?.filter?.replace("{{title}}", this._layer?.title)), h("div", { slot: "content" }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), comboboxOverlayPositioning: "fixed", layerExpressions: this._layerExpressions, onFilterListReset: () => void this._handleFilterListReset(), onFilterUpdate: () => void this._handleFilterUpdate(), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1617
+ return (h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: () => void this._closeFilter(), open: this._filterOpen, widthScale: "s" }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations?.filter?.replace("{{title}}", this._layer?.title)), h("div", { slot: "content" }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), comboboxOverlayPositioning: "fixed", layerExpressions: this._layerExpressions, onFilterListReset: () => void this._handleFilterListReset(), onFilterUpdate: () => void this._handleFilterUpdate(this._filterList.filterCount > 0), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1618
1618
  }
1619
1619
  /**
1620
1620
  * Reset the filter active prop
@@ -1629,7 +1629,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1629
1629
  * Check if the layers definitionExpression has been modified
1630
1630
  * @protected
1631
1631
  */
1632
- async _handleFilterUpdate() {
1632
+ async _handleFilterUpdate(active) {
1633
1633
  const defExp = this._layer.definitionExpression;
1634
1634
  if (this._floorExpression) {
1635
1635
  const regEx = new RegExp(`${this._floorField} = ['].+[']`, "gm");
@@ -1637,8 +1637,7 @@ const LayerTable = /*@__PURE__*/ proxyCustomElement(class LayerTable extends HTM
1637
1637
  defExp.replace(regEx, this._floorExpression) : defExp ?
1638
1638
  `${defExp} AND (${this._floorExpression})` : this._floorExpression;
1639
1639
  }
1640
- this._filterActive = this._definitionExpression !== this._layer.definitionExpression &&
1641
- (this._floorExpression ? this._layer.definitionExpression !== this._floorExpression : true);
1640
+ this._filterActive = active;
1642
1641
  this._updateShareUrl();
1643
1642
  await this._searchFullText();
1644
1643
  }
@@ -323,8 +323,8 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
323
323
  /**
324
324
  * updates the filter
325
325
  */
326
- async updateFilterState() {
327
- this._filterActive = this._definitionExpression !== this.selectedLayer.definitionExpression;
326
+ async updateFilterState(active) {
327
+ this._filterActive = active;
328
328
  this._updateShareUrl();
329
329
  }
330
330
  /**
@@ -401,7 +401,7 @@ const MapCard = /*@__PURE__*/ proxyCustomElement(class MapCard extends HTMLEleme
401
401
  const mapHeightClass = this.mapInfos?.length > 1 || this.isMapLayout ? "map-height" : "height-full";
402
402
  const progressClass = this.isMapLayout ? "" : "display-none";
403
403
  this._validateActiveActions();
404
- return (h(Host, { key: '0b617eeb40229e49a32f5e4a557bfa0f88588fae' }, h("div", { key: 'd93aa32cd31279e468e4570af231a3f3788b9897', 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: '0ac01b19752ded5ddf0b06723b30fa669b2f6933', class: progressClass, value: 0 }), h("div", { key: '256bc38d71e3de4ab7ba7328ce12c32fa9ef0d2b', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { key: 'e86f179871e8b315ff8d6ecb87545d9af8222590', 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, locale: this.locale, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
404
+ return (h(Host, { key: '525ee5ce855cf5aa4f8c50e7e88be6c6236046ac' }, h("div", { key: '899898ee0b2ba9048ed24716a339c94d3106a52e', 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: '896569eb6cf65f45cbebb4b36f5b01ada5ed1092', class: progressClass, value: 0 }), h("div", { key: '79cac798541783bdc74e4b13f9df4d7564eb99f4', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { key: '730d48c4ce98af3872bfa6c486e8749e18c24477', 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, locale: this.locale, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
405
405
  }
406
406
  /**
407
407
  * Called each time after the component is loaded
@@ -1514,6 +1514,7 @@ const InstantAppsFilterList = class {
1514
1514
  registerInstance(this, hostRef);
1515
1515
  this.filterListReset = createEvent(this, "filterListReset", 7);
1516
1516
  this.filterUpdate = createEvent(this, "filterUpdate", 7);
1517
+ this.isLayerExpUpdated = false;
1517
1518
  this.layerExpressions = undefined;
1518
1519
  this.autoUpdateUrl = false;
1519
1520
  this.closeBtn = false;
@@ -1534,7 +1535,6 @@ const InstantAppsFilterList = class {
1534
1535
  this.messages = undefined;
1535
1536
  this.baseClass = baseClassLight;
1536
1537
  this.disabled = true;
1537
- this.hasLayerExpression = false;
1538
1538
  this.initDefExpressions = undefined;
1539
1539
  this.initMapImageExpressions = undefined;
1540
1540
  this.initPointCloudFilters = undefined;
@@ -1543,11 +1543,9 @@ const InstantAppsFilterList = class {
1543
1543
  this.handleWhenView();
1544
1544
  }
1545
1545
  watchLayerExpressions() {
1546
- if (!this.hasLayerExpression) {
1547
- this.filterLayerExpressions = structuredClone(this.layerExpressions);
1548
- this.handleLayerExpressionsUpdate();
1549
- this.hasLayerExpression = true;
1550
- }
1546
+ this.resetAllFilters();
1547
+ this.filterLayerExpressions = structuredClone(this.layerExpressions);
1548
+ this.handleLayerExpressionsUpdate();
1551
1549
  }
1552
1550
  getFilterInitState() {
1553
1551
  return Promise.resolve({
@@ -1557,7 +1555,6 @@ const InstantAppsFilterList = class {
1557
1555
  });
1558
1556
  }
1559
1557
  forceReset() {
1560
- this.filterLayerExpressions = structuredClone(this.layerExpressions);
1561
1558
  this.handleResetFilter();
1562
1559
  return this.initExpressions();
1563
1560
  }
@@ -1572,28 +1569,28 @@ const InstantAppsFilterList = class {
1572
1569
  }
1573
1570
  return this.initExpressions();
1574
1571
  }
1572
+ connectedCallback() {
1573
+ var _a;
1574
+ if (this.layerExpressions == null && this.view == null)
1575
+ return;
1576
+ this.isLayerExpUpdated = true;
1577
+ this.filterLayerExpressions = structuredClone(this.layerExpressions);
1578
+ this.disabled = ((_a = this.filterLayerExpressions) === null || _a === void 0 ? void 0 : _a.length) ? undefined : true;
1579
+ this.handleLayerExpressionsUpdate();
1580
+ }
1575
1581
  async componentWillLoad() {
1576
1582
  var _a;
1577
1583
  this.baseClass = getMode(this.el) === 'dark' ? baseClassDark : baseClassLight;
1578
1584
  await this.initializeModules();
1579
1585
  getMessages(this);
1580
- this.hasLayerExpression = this.layerExpressions != null;
1586
+ if (this.isLayerExpUpdated)
1587
+ return;
1588
+ this.isLayerExpUpdated = true;
1581
1589
  this.filterLayerExpressions = this.layerExpressions != null ? structuredClone(this.layerExpressions) : [];
1582
1590
  this.disabled = ((_a = this.filterLayerExpressions) === null || _a === void 0 ? void 0 : _a.length) ? undefined : true;
1583
- this.reactiveUtils.whenOnce(() => this.view).then(() => this.handleLayerExpressionsUpdate());
1584
- }
1585
- componentShouldUpdate(newValue, _oldValue, name) {
1586
- if (name === 'view' && newValue != null) {
1587
- this.handleWhenView();
1588
- }
1589
- else if (name === 'layerExpressions') {
1590
- if (this.hasLayerExpression) {
1591
- this.resetAllFilters();
1592
- }
1593
- this.filterLayerExpressions = structuredClone(this.layerExpressions);
1594
- this.handleLayerExpressionsUpdate();
1595
- this.hasLayerExpression = true;
1596
- }
1591
+ if (this.view == null)
1592
+ return;
1593
+ this.handleLayerExpressionsUpdate();
1597
1594
  }
1598
1595
  componentWillRender() {
1599
1596
  var _a;
@@ -1601,21 +1598,21 @@ const InstantAppsFilterList = class {
1601
1598
  }
1602
1599
  disconnectedCallback() {
1603
1600
  if (this.resetFiltersOnDisconnect) {
1601
+ this.isLayerExpUpdated = false;
1604
1602
  this.filterLayerExpressions = structuredClone(this.layerExpressions);
1605
1603
  this.resetAllFilters();
1606
1604
  }
1607
1605
  }
1608
1606
  async initializeModules() {
1609
- const [intl, geometryJsonUtils, reactiveUtils] = await loadModules(['esri/intl', 'esri/geometry/support/jsonUtils', 'esri/core/reactiveUtils']);
1607
+ const [intl, geometryJsonUtils] = await loadModules(['esri/intl', 'esri/geometry/support/jsonUtils']);
1610
1608
  this.geometryJsonUtils = geometryJsonUtils;
1611
- this.reactiveUtils = reactiveUtils;
1612
1609
  this.locale = intl.getLocale();
1613
1610
  this.intl = intl;
1614
1611
  }
1615
1612
  render() {
1616
1613
  const filterConfig = this.loading ? this.renderLoading() : this.initFilterConfig();
1617
- const footer = this.renderFooter(this.closeBtn, this.resetBtn);
1618
- return (h(Host, { key: '80c4918bd3bdf65d541ed6cf4cf4843ab0f0df01' }, h("calcite-panel", { key: 'f1da101b071420df42da5eb8f5478d0719b40cec', class: this.baseClass, ref: el => (this.panelEl = el) }, h("slot", { key: '8ebdbf20767027459470fa85fe4238e69bc47ab8', slot: "header-content", name: "filter-header-content" }), h("slot", { key: '177f8db80aa842eeb200344cd7b398cd51ca23f3', slot: "header-actions-end", name: "filter-header-actions-end" }), h("div", { key: "filter-container", class: CSS$1.filterContainer }, filterConfig, footer))));
1614
+ const footer = this.renderFooter();
1615
+ return (h(Host, { key: '055d2a02c5118e59462af8759c6bf2f39304fd75' }, h("calcite-panel", { key: '0335c9b28101257551902737ef373543aebee1f6', class: this.baseClass, ref: el => (this.panelEl = el) }, h("slot", { key: '4b471e66583b3f2fd733688d65ce8d3b2acbeb66', slot: "header-content", name: "filter-header-content" }), h("slot", { key: 'f5832075687a6812b902643fd057587b438b38cf', slot: "header-actions-end", name: "filter-header-actions-end" }), h("div", { key: "filter-container", class: CSS$1.filterContainer }, filterConfig, footer))));
1619
1616
  }
1620
1617
  renderLoading() {
1621
1618
  return h("calcite-loader", { label: "Loading filters..." });
@@ -1684,10 +1681,11 @@ const InstantAppsFilterList = class {
1684
1681
  const check = min != null && max != null;
1685
1682
  return check ? (h("label", { class: CSS$1.filterUIItemContainer }, h("span", null, expression === null || expression === void 0 ? void 0 : expression.name), h("div", { class: CSS$1.dateInputContainer }, h("calcite-input-date-picker", { id: expression === null || expression === void 0 ? void 0 : expression.id.toString(), onCalciteInputDatePickerChange: this.handleDatePickerRangeChange.bind(this, expression, layerExpression), min: min, max: max, "overlay-positioning": "fixed", lang: (_c = this.locale) !== null && _c !== void 0 ? _c : 'en', layout: "vertical", value: value, range: true }), h("calcite-action", { onClick: this.handleResetDatePicker.bind(this, expression, layerExpression), icon: "reset", text: (_d = this.messages) === null || _d === void 0 ? void 0 : _d.resetDatePicker, scale: "s" })))) : null;
1686
1683
  }
1687
- renderFooter(closeBtn, resetBtn) {
1684
+ renderFooter() {
1688
1685
  var _a, _b, _c;
1689
1686
  const closeText = this.closeBtnText != null ? this.closeBtnText : (_a = this.messages) === null || _a === void 0 ? void 0 : _a.close;
1690
- return (h("div", { class: CSS$1.footer, slot: "footer" }, resetBtn ? (h("calcite-button", { appearance: "outline", width: "half", disabled: this.disabled, onClick: this.handleResetFilter.bind(this) }, (_b = this.messages) === null || _b === void 0 ? void 0 : _b.resetFilter)) : undefined, closeBtn ? (h("calcite-button", { appearance: "solid", width: "half", kind: "brand", onClick: (_c = this.closeBtnOnClick) === null || _c === void 0 ? void 0 : _c.bind(this) }, closeText)) : undefined));
1687
+ const btnWidth = this.closeBtn && this.resetBtn ? 'half' : 'full';
1688
+ return (h("div", { class: CSS$1.footer, slot: "footer" }, this.resetBtn ? (h("calcite-button", { appearance: "outline", width: btnWidth, disabled: this.disabled, onClick: this.handleResetFilter.bind(this) }, (_b = this.messages) === null || _b === void 0 ? void 0 : _b.resetFilter)) : undefined, this.closeBtn ? (h("calcite-button", { appearance: "solid", width: btnWidth, kind: "brand", onClick: (_c = this.closeBtnOnClick) === null || _c === void 0 ? void 0 : _c.bind(this) }, closeText)) : undefined));
1691
1689
  }
1692
1690
  renderZoomTo(layerExpression) {
1693
1691
  var _a;
@@ -1718,23 +1716,21 @@ const InstantAppsFilterList = class {
1718
1716
  }
1719
1717
  async initExpressions() {
1720
1718
  this.loading = true;
1721
- if (this.filterLayerExpressions == null)
1719
+ if (this.filterLayerExpressions == null || this.view == null)
1722
1720
  return;
1723
- const tmpLE = await this.processExpressions();
1721
+ await this.processExpressions();
1724
1722
  this.loading = false;
1725
- this.filterLayerExpressions = [...tmpLE];
1726
1723
  }
1727
1724
  async processExpressions() {
1728
1725
  var _a;
1729
1726
  if (!this.filterLayerExpressions)
1730
- return [];
1727
+ return;
1731
1728
  for (const layerExpression of this.filterLayerExpressions) {
1732
1729
  for (const expression of layerExpression.expressions || []) {
1733
1730
  expression.active = (_a = expression.active) !== null && _a !== void 0 ? _a : expression.definitionExpression != null;
1734
1731
  await this.setInitExpression(layerExpression, expression);
1735
1732
  }
1736
1733
  }
1737
- return this.filterLayerExpressions;
1738
1734
  }
1739
1735
  handleResetFilter() {
1740
1736
  var _a;
@@ -1804,6 +1800,8 @@ const InstantAppsFilterList = class {
1804
1800
  }
1805
1801
  resetAllFilters() {
1806
1802
  var _a, _b, _c, _d, _e;
1803
+ if (this.initDefExpressions == null)
1804
+ return;
1807
1805
  const allLayersAndTables = (_c = (_b = (_a = this.view) === null || _a === void 0 ? void 0 : _a.map) === null || _b === void 0 ? void 0 : _b.allLayers) === null || _c === void 0 ? void 0 : _c.concat((_e = (_d = this.view) === null || _d === void 0 ? void 0 : _d.map) === null || _e === void 0 ? void 0 : _e.allTables);
1808
1806
  allLayersAndTables === null || allLayersAndTables === void 0 ? void 0 : allLayersAndTables.forEach(layer => {
1809
1807
  var _a, _b;
@@ -1905,18 +1903,19 @@ const InstantAppsFilterList = class {
1905
1903
  }
1906
1904
  return false;
1907
1905
  }
1908
- updateCodedValueExpression(expression, layerField) {
1906
+ async updateCodedValueExpression(layerExpression, expression, layerField) {
1909
1907
  var _a, _b;
1910
1908
  if (!(layerField === null || layerField === void 0 ? void 0 : layerField.domain) || ((_a = layerField === null || layerField === void 0 ? void 0 : layerField.domain) === null || _a === void 0 ? void 0 : _a.type) !== 'coded-value') {
1911
1909
  return false;
1912
1910
  }
1911
+ const layer = this.findFilterLayer(layerExpression);
1912
+ await this.getFeatureAttributes(layer, expression);
1913
1913
  const domain = layerField.domain;
1914
1914
  const codedValuesMap = domain.codedValues.reduce((acc, { code, name }) => {
1915
1915
  acc[code] = name;
1916
1916
  return acc;
1917
1917
  }, {});
1918
1918
  expression.codedValues = codedValuesMap;
1919
- expression.fields = Object.keys(codedValuesMap);
1920
1919
  if ((_b = expression.selectedFields) === null || _b === void 0 ? void 0 : _b.length) {
1921
1920
  const selectedFieldsExpression = expression.selectedFields.map((field) => (typeof field === 'number' ? field : `'${handleSingleQuote(field)}'`)).join(',');
1922
1921
  expression.definitionExpression = `${expression.field} IN (${selectedFieldsExpression})`;
@@ -1985,7 +1984,7 @@ const InstantAppsFilterList = class {
1985
1984
  if (features === null || features === void 0 ? void 0 : features.length) {
1986
1985
  expression.fields = [...new Set(features)];
1987
1986
  if (expression.type === 'string') {
1988
- expression.fields = expression.fields.sort();
1987
+ expression.fields = expression.fields.sort((a, b) => a.localeCompare(b));
1989
1988
  }
1990
1989
  else if (expression.type === 'number') {
1991
1990
  expression.fields = expression.fields.sort((a, b) => a - b);
@@ -2014,8 +2013,15 @@ const InstantAppsFilterList = class {
2014
2013
  expression.fields.push(...features);
2015
2014
  }
2016
2015
  });
2017
- expression.fields = [...new Set(expression.fields)].sort();
2018
- this.filterLayerExpressions = [...this.filterLayerExpressions];
2016
+ if (expression.type === 'string') {
2017
+ expression.fields = [...new Set(expression.fields)].sort((a, b) => a.localeCompare(b));
2018
+ }
2019
+ else if (expression.type === 'number') {
2020
+ expression.fields = [...new Set(expression.fields)].sort((a, b) => a - b);
2021
+ }
2022
+ else {
2023
+ expression.fields = [...new Set(expression.fields)].sort();
2024
+ }
2019
2025
  });
2020
2026
  }
2021
2027
  async queryForFeatures(layer, query, field) {
@@ -2098,13 +2104,14 @@ const InstantAppsFilterList = class {
2098
2104
  case 'number':
2099
2105
  return await this.updateNumberExpression(layerExpression, expression);
2100
2106
  case 'date':
2101
- return this.updateDateExpressionBasedOnDisplayOption(layerExpression, expression);
2107
+ return await this.updateDateExpressionBasedOnDisplayOption(layerExpression, expression);
2102
2108
  case 'coded-value':
2103
- return this.updateCodedValueExpression(expression, layerField);
2109
+ return await this.updateCodedValueExpression(layerExpression, expression, layerField);
2104
2110
  case 'range':
2105
- return this.updateRangeExpressionBasedOnDisplayOption(layerExpression, expression, layerField);
2111
+ return await this.updateRangeExpressionBasedOnDisplayOption(layerExpression, expression, layerField);
2106
2112
  case 'checkbox':
2107
2113
  case null:
2114
+ case undefined:
2108
2115
  return (_a = expression.active) !== null && _a !== void 0 ? _a : false;
2109
2116
  default:
2110
2117
  return false;
@@ -2304,31 +2311,9 @@ const InstantAppsFilterList = class {
2304
2311
  this.handleLayerExpressionsUpdate();
2305
2312
  }
2306
2313
  async handleLayerExpressionsUpdate() {
2307
- if (this.view == null)
2308
- return;
2309
- const map = this.view.map;
2310
- this.initDefExpressions = {};
2311
- this.initPointCloudFilters = {};
2312
- this.initMapImageExpressions = {};
2313
- map.allLayers.concat(map.allTables).forEach(layer => {
2314
- if (!supportedTypes.includes(layer.type))
2315
- return;
2316
- const fl = layer;
2317
- if (fl.type === 'point-cloud') {
2318
- this.initPointCloudFilters[fl.id] = fl.filters;
2319
- }
2320
- else if (fl.type === 'map-image') {
2321
- this.initMapImageExpressions[fl.id] = fl.allSublayers.reduce((acc, sublayer) => {
2322
- acc[sublayer.id] = sublayer.definitionExpression;
2323
- return acc;
2324
- }, {});
2325
- }
2326
- else {
2327
- this.initDefExpressions[fl.id] = fl.definitionExpression;
2328
- }
2329
- });
2330
- this.initExpressions();
2314
+ this.updateInitExpressions();
2331
2315
  this.handleURLParams();
2316
+ this.initExpressions();
2332
2317
  }
2333
2318
  async handleZoomTo(layerExpression) {
2334
2319
  const zoomId = (layerExpression === null || layerExpression === void 0 ? void 0 : layerExpression.sublayerId) ? `#zoom-to-${layerExpression.id}-${layerExpression.sublayerId}` : `#zoom-to-${layerExpression.id}`;
@@ -2499,6 +2484,31 @@ const InstantAppsFilterList = class {
2499
2484
  query.geometry = geometry;
2500
2485
  query.spatialRelationship = 'intersects';
2501
2486
  }
2487
+ updateInitExpressions() {
2488
+ if (this.view == null)
2489
+ return;
2490
+ const map = this.view.map;
2491
+ this.initDefExpressions = {};
2492
+ this.initPointCloudFilters = {};
2493
+ this.initMapImageExpressions = {};
2494
+ map.allLayers.concat(map.allTables).forEach(layer => {
2495
+ if (!supportedTypes.includes(layer.type))
2496
+ return;
2497
+ const fl = layer;
2498
+ if (fl.type === 'point-cloud') {
2499
+ this.initPointCloudFilters[fl.id] = fl.filters;
2500
+ }
2501
+ else if (fl.type === 'map-image') {
2502
+ this.initMapImageExpressions[fl.id] = fl.allSublayers.reduce((acc, sublayer) => {
2503
+ acc[sublayer.id] = sublayer.definitionExpression;
2504
+ return acc;
2505
+ }, {});
2506
+ }
2507
+ else {
2508
+ this.initDefExpressions[fl.id] = fl.definitionExpression;
2509
+ }
2510
+ });
2511
+ }
2502
2512
  get el() { return getElement(this); }
2503
2513
  static get watchers() { return {
2504
2514
  "view": ["watchViewHandler"],
@@ -584,8 +584,8 @@ const LayerTable = class {
584
584
  /**
585
585
  * Updates the filter
586
586
  */
587
- async filterUpdate() {
588
- await this._handleFilterUpdate();
587
+ async filterUpdate(active) {
588
+ await this._handleFilterUpdate(active);
589
589
  }
590
590
  /**
591
591
  * Closes the filter
@@ -727,10 +727,10 @@ const LayerTable = class {
727
727
  const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
728
728
  const showSearch = this._canShowFullTextSearch();
729
729
  this._validateActiveActions();
730
- return (h(Host, { key: '5cbb5ba55c63eaf278666aac034a01d971d9f12a' }, h("calcite-shell", { key: '8a27d87fc002b72fe478d25885b2ab04261362ca' }, this._getTableControlRow("header"), h("div", { key: '250c356a30389b8cb95628953f3bb3ec5c88361d', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: '9d5dbb084031bdface1dbc3a1dbc2fa33eb163b5', class: "height-full width-full" }, showSearch &&
731
- h("div", { key: '2d45ae4255a1d0e3cf14aa0f6a01915a38626bc7', class: "search-container" }, h("calcite-input", { key: 'c73546fef30db70d01cf8978a5daf9ea4193ddc2', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: '61621afb1e5fa67e25b878320c8497200b8265cd', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '0ef4fe0e4099ec60f4c38e2c421920c9a8fe3c4f', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
730
+ return (h(Host, { key: 'f56462fd5d5afa71052cf2557069bb2fee15aaeb' }, h("calcite-shell", { key: '92ccfa2235269aad6da5f918f79ec8ae100e99ca' }, this._getTableControlRow("header"), h("div", { key: 'e5b8fe5e4236e1a7b7e9d31ad784d9bb52a6918d', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'eca933d832e5b6efddb025211c253bf09e41ab22', class: "height-full width-full" }, showSearch &&
731
+ h("div", { key: 'e819896c4264db3ee95d10194b67da65997b541d', class: "search-container" }, h("calcite-input", { key: 'e979c7962205caf072057332280b9e04ecd233c4', class: "search", clearable: true, icon: "search", onCalciteInputChange: (evt) => void this._searchTextChanged(evt), placeholder: this._searchPlaceHolder, title: this._searchPlaceHolder, type: "search" })), h("calcite-loader", { key: 'ee715472a4f819dd1e9328e75022439e9bba1334', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '8085821dea31de1fcbb1119e5791c0dea744e470', class: tableNodeClass, ref: this.onTableNodeCreate }))), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
732
732
  .replace("{{total}}", total)
733
- .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal(), h("delete-dialog", { key: 'e2564b1d08476f762577247ffb41a00e5c41514c', id: "deleteDialogId", ids: this._getIds(), layer: this._layer, locale: this.locale, onDeleteDialogClose: () => this._deleteDialogOpen = false, open: this._deleteDialogOpen, ref: (el) => this._deleteDialog = el })));
733
+ .replace("{{selected}}", selected))) : undefined), this.createFilterModal && this._filterModal(), h("delete-dialog", { key: '20c9a06c3f0d44433d9442755d25658c249e102c', id: "deleteDialogId", ids: this._getIds(), layer: this._layer, locale: this.locale, onDeleteDialogClose: () => this._deleteDialogOpen = false, open: this._deleteDialogOpen, ref: (el) => this._deleteDialog = el })));
734
734
  }
735
735
  _deleteDialog;
736
736
  /**
@@ -1775,7 +1775,7 @@ const LayerTable = class {
1775
1775
  * @protected
1776
1776
  */
1777
1777
  _filterModal() {
1778
- return (h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: () => void this._closeFilter(), open: this._filterOpen, widthScale: "s" }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations?.filter?.replace("{{title}}", this._layer?.title)), h("div", { slot: "content" }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), comboboxOverlayPositioning: "fixed", layerExpressions: this._layerExpressions, onFilterListReset: () => void this._handleFilterListReset(), onFilterUpdate: () => void this._handleFilterUpdate(), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1778
+ return (h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: () => void this._closeFilter(), open: this._filterOpen, widthScale: "s" }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations?.filter?.replace("{{title}}", this._layer?.title)), h("div", { slot: "content" }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), comboboxOverlayPositioning: "fixed", layerExpressions: this._layerExpressions, onFilterListReset: () => void this._handleFilterListReset(), onFilterUpdate: () => void this._handleFilterUpdate(this._filterList.filterCount > 0), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1779
1779
  }
1780
1780
  /**
1781
1781
  * Reset the filter active prop
@@ -1790,7 +1790,7 @@ const LayerTable = class {
1790
1790
  * Check if the layers definitionExpression has been modified
1791
1791
  * @protected
1792
1792
  */
1793
- async _handleFilterUpdate() {
1793
+ async _handleFilterUpdate(active) {
1794
1794
  const defExp = this._layer.definitionExpression;
1795
1795
  if (this._floorExpression) {
1796
1796
  const regEx = new RegExp(`${this._floorField} = ['].+[']`, "gm");
@@ -1798,8 +1798,7 @@ const LayerTable = class {
1798
1798
  defExp.replace(regEx, this._floorExpression) : defExp ?
1799
1799
  `${defExp} AND (${this._floorExpression})` : this._floorExpression;
1800
1800
  }
1801
- this._filterActive = this._definitionExpression !== this._layer.definitionExpression &&
1802
- (this._floorExpression ? this._layer.definitionExpression !== this._floorExpression : true);
1801
+ this._filterActive = active;
1803
1802
  this._updateShareUrl();
1804
1803
  await this._searchFullText();
1805
1804
  }
@@ -2388,8 +2387,8 @@ const MapCard = class {
2388
2387
  /**
2389
2388
  * updates the filter
2390
2389
  */
2391
- async updateFilterState() {
2392
- this._filterActive = this._definitionExpression !== this.selectedLayer.definitionExpression;
2390
+ async updateFilterState(active) {
2391
+ this._filterActive = active;
2393
2392
  this._updateShareUrl();
2394
2393
  }
2395
2394
  /**
@@ -2466,7 +2465,7 @@ const MapCard = class {
2466
2465
  const mapHeightClass = this.mapInfos?.length > 1 || this.isMapLayout ? "map-height" : "height-full";
2467
2466
  const progressClass = this.isMapLayout ? "" : "display-none";
2468
2467
  this._validateActiveActions();
2469
- return (h(Host, { key: '0b617eeb40229e49a32f5e4a557bfa0f88588fae' }, h("div", { key: 'd93aa32cd31279e468e4570af231a3f3788b9897', 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: '0ac01b19752ded5ddf0b06723b30fa669b2f6933', class: progressClass, value: 0 }), h("div", { key: '256bc38d71e3de4ab7ba7328ce12c32fa9ef0d2b', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { key: 'e86f179871e8b315ff8d6ecb87545d9af8222590', 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, locale: this.locale, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
2468
+ return (h(Host, { key: '525ee5ce855cf5aa4f8c50e7e88be6c6236046ac' }, h("div", { key: '899898ee0b2ba9048ed24716a339c94d3106a52e', 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: '896569eb6cf65f45cbebb4b36f5b01ada5ed1092', class: progressClass, value: 0 }), h("div", { key: '79cac798541783bdc74e4b13f9df4d7564eb99f4', class: `${mapHeightClass} ${mapClass}`, ref: (el) => (this._mapDiv = el) }), h("map-tools", { key: '730d48c4ce98af3872bfa6c486e8749e18c24477', 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, locale: this.locale, mapView: this.mapView, mapWidgetsSize: this.mapWidgetsSize, position: this.mapWidgetsPosition, ref: (el) => this._mapTools = el, searchConfiguration: this._searchConfiguration, stackTools: this.stackTools, toolOrder: this.toolOrder })));
2470
2469
  }
2471
2470
  /**
2472
2471
  * Called each time after the component is loaded
@@ -532,9 +532,10 @@ const CrowdsourceManager = class {
532
532
  return (h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: () => void this._closeFilter(), open: this._filterOpen, widthScale: "s" }, h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, this._translations?.filter?.replace("{{title}}", this._layer?.title)), h("div", { slot: "content" }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), comboboxOverlayPositioning: "fixed", layerExpressions: this._layerExpressions, onFilterListReset: () => {
533
533
  this._handleFilterListReset();
534
534
  void this._mapCard.resetFilter();
535
- }, onFilterUpdate: () => {
536
- void this._layerTable?.filterUpdate();
537
- void this._mapCard.updateFilterState();
535
+ }, onFilterUpdate: async () => {
536
+ const active = this._filterList.filterCount > 0;
537
+ await this._layerTable?.filterUpdate(active);
538
+ await this._mapCard.updateFilterState(active);
538
539
  }, ref: (el) => this._filterList = el, view: this._mapView, zoomBtn: false }))));
539
540
  }
540
541
  /**
@@ -460,11 +460,10 @@ const CrowdsourceReporter = class {
460
460
  * Check if the layers definitionExpression has been modified and update the feature list depending on the applied filters
461
461
  * @protected
462
462
  */
463
- async _handleFilterUpdate() {
463
+ async _handleFilterUpdate(active) {
464
464
  this._showLoadingIndicator = true;
465
- //if filter are applied the url params will be generated
466
- //set the filter active state based on the length of applied filters
467
- this._filterActive = this._filterList.urlParams.getAll('filter').length > 0;
465
+ //if filters are applied the url params will be generated
466
+ this._filterActive = active;
468
467
  this._filterUrlParams = this._filterList.urlParams.getAll('filter');
469
468
  await this._featureList.refresh();
470
469
  this._showLoadingIndicator = false;
@@ -856,7 +855,7 @@ const CrowdsourceReporter = class {
856
855
  */
857
856
  getFilterPanel() {
858
857
  const currentLayersExpressions = this.layerExpressions ? this.layerExpressions.filter((exp) => exp.id === this._selectedLayerId) : [];
859
- return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._translations?.filterLayerTitle?.replace("{{title}}", this._selectedLayerName), loading: this._showLoadingIndicator, onCalciteFlowItemBack: this.backFromFilterPanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), h("div", { class: "width-full", slot: "footer" }, h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", disabled: !this._filterActive, onClick: () => { void this._filterList?.forceReset(); }, width: "full" }, this._translations.resetFilter), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromFilterPanel.bind(this), width: "full" }, this._translations.close))), h("calcite-panel", { "full-height": true }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtnOnClick: () => undefined, comboboxOverlayPositioning: "fixed", layerExpressions: currentLayersExpressions, onFilterListReset: () => this._handleFilterListReset(), onFilterUpdate: () => this._handleFilterUpdate(), ref: (el) => this._filterList = el, resetBtn: false, resetFiltersOnDisconnect: false, view: this.mapView, zoomBtn: false }))));
858
+ return (h("calcite-flow-item", { collapsed: this.isMobile && this._sidePanelCollapsed, heading: this._translations?.filterLayerTitle?.replace("{{title}}", this._selectedLayerName), loading: this._showLoadingIndicator, onCalciteFlowItemBack: this.backFromFilterPanel.bind(this) }, this.isMobile && this.getActionToExpandCollapsePanel(), h("div", { class: "width-full", slot: "footer" }, h("div", { class: "width-full", slot: "footer" }, h("calcite-button", { appearance: "solid", class: "footer-top-button footer-button", disabled: !this._filterActive, onClick: () => { void this._filterList?.forceReset(); }, width: "full" }, this._translations.resetFilter), h("calcite-button", { appearance: "outline", class: "footer-button", onClick: this.backFromFilterPanel.bind(this), width: "full" }, this._translations.close))), h("calcite-panel", { "full-height": true }, h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtnOnClick: () => undefined, comboboxOverlayPositioning: "fixed", layerExpressions: currentLayersExpressions, onFilterListReset: () => this._handleFilterListReset(), onFilterUpdate: () => this._handleFilterUpdate(this._filterList.filterCount > 0), ref: (el) => this._filterList = el, resetBtn: false, resetFiltersOnDisconnect: false, view: this.mapView, zoomBtn: false }))));
860
859
  }
861
860
  /**
862
861
  * Returns the calcite-flow item for feature details
@@ -25,7 +25,7 @@ class AppGuideViewModel {
25
25
  }
26
26
  }
27
27
 
28
- const instantAppsAppGuideCss = ":host{--instant-apps-app-guide-width:300px;--instant-apps-app-guide-height:400px;--instant-apps-app-guide-list-item-bubble-size:22px;width:var(--instant-apps-app-guide-width);height:var(--instant-apps-app-guide-height);display:block}:host calcite-panel{max-width:var(--instant-apps-app-guide-width);max-height:var(--instant-apps-app-guide-height);display:flex}:host calcite-carousel{flex:1;overflow:scroll;height:-moz-fit-content;height:fit-content;background-color:var(--calcite-color-foreground-1)}:host [slot=header-content]{display:flex;gap:var(--calcite-spacing-sm);padding-inline-start:0.25rem;font-weight:var(--calcite-font-weight-bold)}:host calcite-carousel-item{flex-grow:1;display:flex;flex-direction:column}:host .instant-apps-app-guide__content-wrapper{padding-block-start:0.5rem;padding-inline:0.5rem;flex-shrink:1;flex-grow:0}:host calcite-icon{--calcite-ui-icon-color:var(--calcite-color-brand)}:host .instant-apps-app-guide__content-list{counter-set:item-counter;margin-inline:0;padding-inline-start:var(--calcite-spacing-xxxl);padding-inline-end:var(--calcite-spacing-lg);position:relative}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item{counter-increment:item-counter;margin-block-start:var(--calcite-spacing-lg);display:flex;align-items:flex-start}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::before{content:counter(item-counter);background-color:var(--calcite-color-text-2);color:var(--calcite-color-text-inverse);line-height:var(--calcite-font-line-height-fixed-xl);width:var(--instant-apps-app-guide-list-item-bubble-size);left:0;border-radius:var(--calcite-corner-radius-pill);display:flex;justify-content:center;font-size:var(--calcite-font-size-sm);position:absolute;max-height:var(--instant-apps-app-guide-list-item-bubble-size)}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::marker{color:var(--calcite-color-transparent)}";
28
+ const instantAppsAppGuideCss = ":host{--instant-apps-app-guide-width:300px;--instant-apps-app-guide-height:400px;--instant-apps-app-guide-list-item-bubble-size:22px;width:var(--instant-apps-app-guide-width);height:var(--instant-apps-app-guide-height);display:block}:host calcite-panel{max-width:var(--instant-apps-app-guide-width);max-height:var(--instant-apps-app-guide-height);display:flex}:host calcite-carousel{flex:1;height:-moz-fit-content;height:fit-content;background-color:var(--calcite-color-foreground-1);overflow:auto}:host [slot=header-content]{display:flex;gap:var(--calcite-spacing-sm);padding-inline-start:0.25rem;font-weight:var(--calcite-font-weight-bold)}:host calcite-carousel-item{flex-grow:1;display:flex;flex-direction:column}:host .instant-apps-app-guide__content-wrapper{padding-block-start:0.5rem;padding-inline:0.5rem;flex-shrink:1;flex-grow:0}:host calcite-icon{--calcite-ui-icon-color:var(--calcite-color-brand)}:host .instant-apps-app-guide__content-list{counter-set:item-counter;margin-inline:0;padding-inline-start:var(--calcite-spacing-xxxl);padding-inline-end:var(--calcite-spacing-lg);position:relative}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item{counter-increment:item-counter;margin-block-start:var(--calcite-spacing-lg);display:flex;align-items:flex-start}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::before{content:counter(item-counter);background-color:var(--calcite-color-text-2);color:var(--calcite-color-text-inverse);line-height:var(--calcite-font-line-height-fixed-xl);width:var(--instant-apps-app-guide-list-item-bubble-size);left:0;border-radius:var(--calcite-corner-radius-pill);display:flex;justify-content:center;font-size:var(--calcite-font-size-sm);position:absolute;max-height:var(--instant-apps-app-guide-list-item-bubble-size)}:host .instant-apps-app-guide__content-list .instant-apps-app-guide__content-list--item::marker{color:var(--calcite-color-transparent)}";
29
29
  const InstantAppsAppGuideStyle0 = instantAppsAppGuideCss;
30
30
 
31
31
  const CSS = {
@@ -935,6 +935,10 @@ const printStyling = `
935
935
  grid-row: 1 / span 2;
936
936
  grid-column: 2;
937
937
  }
938
+
939
+ .instant-apps-export-print__extra-container .esri-feature.esri-widget .esri-widget__heading.esri-feature__title {
940
+ display: block;
941
+ }
938
942
 
939
943
  .instant-apps-export-print__popup-container {
940
944
  height: min-content;
@@ -993,7 +997,7 @@ const printStyling = `
993
997
  }
994
998
 
995
999
  .instant-apps-export-print .esri-widget__heading {
996
- margin: 2pt 7pt;
1000
+ margin: 4pt 7pt;
997
1001
  padding: 0;
998
1002
  color: #323232;
999
1003
  }