@esri/solutions-components 0.10.41 → 0.10.43
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/calcite-action-pad_2.cjs.entry.js +1 -1
- package/dist/cjs/calcite-block_5.cjs.entry.js +25 -26
- package/dist/cjs/card-manager_3.cjs.entry.js +11 -12
- package/dist/cjs/{constants-51cf394f.js → constants-bed33322.js} +3 -11
- package/dist/cjs/crowdsource-manager.cjs.entry.js +4 -3
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +114 -52
- package/dist/cjs/{helpers-afcac967.js → helpers-0493759d.js} +1 -1
- package/dist/cjs/instant-apps-app-guide.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-control-panel.cjs.entry.js +1 -1
- package/dist/cjs/instant-apps-create.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-export-views.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-export.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +21 -7
- package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +7 -7
- package/dist/cjs/instant-apps-language-translator.cjs.entry.js +6 -6
- package/dist/cjs/instant-apps-measurement.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-popover.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-sign-in.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-splash.cjs.entry.js +6 -5
- package/dist/cjs/instant-apps-time-filter.cjs.entry.js +2 -2
- package/dist/cjs/{loadModules-8567855e.js → loadModules-df8b13ca.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{locale-4a18a858.js → locale-4b820602.js} +1 -1
- package/dist/cjs/solution-contents_3.cjs.entry.js +1 -1
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/cjs/{utils-fa7ad44b.js → utils-3f10ea6b.js} +2 -2
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +4 -3
- package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +114 -52
- package/dist/collection/components/layer-table/layer-table.js +14 -11
- package/dist/collection/components/map-card/map-card.js +9 -5
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +2 -2
- package/dist/components/crowdsource-manager.js +4 -3
- package/dist/components/crowdsource-reporter.js +114 -52
- package/dist/components/instant-apps-filter-list2.js +25 -26
- package/dist/components/instant-apps-interactive-legend-relationship2.js +19 -5
- package/dist/components/instant-apps-language-switcher.js +3 -3
- package/dist/components/instant-apps-language-translator2.js +4 -12
- package/dist/components/instant-apps-splash.js +4 -3
- package/dist/components/layer-table2.js +8 -9
- package/dist/components/loadModules2.js +1 -1
- package/dist/components/map-card2.js +3 -3
- package/dist/components/solution-spatial-ref2.js +2 -2
- package/dist/components/utils4.js +1 -1
- package/dist/esm/calcite-action-pad_2.entry.js +1 -1
- package/dist/esm/calcite-block_5.entry.js +25 -26
- package/dist/esm/card-manager_3.entry.js +11 -12
- package/dist/esm/{constants-886c7c2c.js → constants-637a40f5.js} +3 -11
- package/dist/esm/crowdsource-manager.entry.js +4 -3
- package/dist/esm/crowdsource-reporter.entry.js +114 -52
- package/dist/esm/{helpers-91087955.js → helpers-91ca0f44.js} +1 -1
- package/dist/esm/instant-apps-app-guide.entry.js +2 -2
- package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +3 -3
- package/dist/esm/instant-apps-control-panel.entry.js +1 -1
- package/dist/esm/instant-apps-create.entry.js +2 -2
- package/dist/esm/instant-apps-export-views.entry.js +2 -2
- package/dist/esm/instant-apps-export.entry.js +2 -2
- package/dist/esm/instant-apps-interactive-legend-classic.entry.js +2 -2
- package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +2 -2
- package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +2 -2
- package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +21 -7
- package/dist/esm/instant-apps-interactive-legend.entry.js +3 -3
- package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +2 -2
- package/dist/esm/instant-apps-language-switcher.entry.js +7 -7
- package/dist/esm/instant-apps-language-translator.entry.js +6 -6
- package/dist/esm/instant-apps-measurement.entry.js +2 -2
- package/dist/esm/instant-apps-popover.entry.js +2 -2
- package/dist/esm/instant-apps-scoreboard.entry.js +2 -2
- package/dist/esm/instant-apps-sign-in.entry.js +2 -2
- package/dist/esm/instant-apps-splash.entry.js +6 -5
- package/dist/esm/instant-apps-time-filter.entry.js +2 -2
- package/dist/esm/{loadModules-03ba7abe.js → loadModules-d5a25252.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-ce177eb8.js → locale-77038bee.js} +1 -1
- package/dist/esm/solution-contents_3.entry.js +1 -1
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/{utils-3fc29543.js → utils-0a78d3c9.js} +2 -2
- package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-splash/instant-apps-splash.css +7 -0
- package/dist/solutions-components/{p-b739f26d.entry.js → p-053effee.entry.js} +1 -1
- package/dist/solutions-components/{p-af573e0d.js → p-09543b4e.js} +1 -1
- package/dist/solutions-components/p-1b1ff60a.entry.js +6 -0
- package/dist/solutions-components/{p-e4107150.entry.js → p-2291bf3f.entry.js} +1 -1
- package/dist/solutions-components/p-2cf41651.entry.js +6 -0
- package/dist/solutions-components/{p-fe3aea1a.entry.js → p-351c7cbf.entry.js} +1 -1
- package/dist/solutions-components/{p-90fc786f.entry.js → p-3d999f0f.entry.js} +1 -1
- package/dist/solutions-components/p-3fe6c230.entry.js +6 -0
- package/dist/solutions-components/p-4695cfab.js +6 -0
- package/dist/solutions-components/{p-43699470.entry.js → p-499489c5.entry.js} +1 -1
- package/dist/solutions-components/{p-5ff711ee.js → p-5104cc98.js} +1 -1
- package/dist/solutions-components/p-5e694bcc.entry.js +29 -0
- package/dist/solutions-components/{p-cbb86cf2.entry.js → p-6a3f2249.entry.js} +1 -1
- package/dist/solutions-components/{p-a7f56b28.entry.js → p-6e5ea1cb.entry.js} +1 -1
- package/dist/solutions-components/{p-9c170b30.entry.js → p-76a1236d.entry.js} +1 -1
- package/dist/solutions-components/{p-1e14b3d0.entry.js → p-78b6d3fe.entry.js} +1 -1
- package/dist/solutions-components/{p-c48be45f.entry.js → p-8a1a0f9b.entry.js} +1 -1
- package/dist/solutions-components/{p-6d1922cc.entry.js → p-8b92fe23.entry.js} +1 -1
- package/dist/solutions-components/{p-5cbf3eed.entry.js → p-8d4a4498.entry.js} +1 -1
- package/dist/solutions-components/{p-4a02fd45.entry.js → p-9d9e0e74.entry.js} +1 -1
- package/dist/solutions-components/p-a1d8aed8.entry.js +6 -0
- package/dist/solutions-components/{p-50fb7f47.js → p-b49e1a78.js} +1 -1
- package/dist/solutions-components/{p-c551ffc5.entry.js → p-c399f2b8.entry.js} +1 -1
- package/dist/solutions-components/p-cb27611e.entry.js +6 -0
- package/dist/solutions-components/{p-4cd4cb85.js → p-d001e961.js} +1 -1
- package/dist/solutions-components/{p-523dcf4b.entry.js → p-d37a68f7.entry.js} +1 -1
- package/dist/solutions-components/{p-a2cf9fdc.entry.js → p-db7d5db8.entry.js} +1 -1
- package/dist/solutions-components/{p-6438d1ea.entry.js → p-e29e57db.entry.js} +1 -1
- package/dist/solutions-components/{p-a5b751e2.entry.js → p-e625aa69.entry.js} +1 -1
- package/dist/solutions-components/{p-2542d5c9.entry.js → p-e9fcc194.entry.js} +1 -1
- package/dist/solutions-components/{p-374ddead.entry.js → p-f4880179.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +44 -18
- package/dist/types/components/layer-table/layer-table.d.ts +2 -2
- package/dist/types/components/map-card/map-card.d.ts +1 -1
- package/dist/types/components.d.ts +2 -2
- package/package.json +7 -7
- package/dist/solutions-components/p-3fc18283.entry.js +0 -6
- package/dist/solutions-components/p-5585dcd3.entry.js +0 -6
- package/dist/solutions-components/p-953afbb3.entry.js +0 -29
- package/dist/solutions-components/p-cced387c.entry.js +0 -6
- package/dist/solutions-components/p-ceb1030b.js +0 -6
- package/dist/solutions-components/p-e9026f9a.entry.js +0 -6
- package/dist/solutions-components/p-f728af86.entry.js +0 -6
@@ -3,4 +3,4 @@
|
|
3
3
|
* Licensed under the Apache License, Version 2.0
|
4
4
|
* http://www.apache.org/licenses/LICENSE-2.0
|
5
5
|
*/
|
6
|
-
import{r as t,c as i,h as s,H as o,g as e}from"./p-4e6eb06e.js";import{l as n}from"./p-4cd4cb85.js";import{b as a}from"./p-5ff711ee.js";import{w as r}from"./p-04674a1e.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";const l="instant-apps-scoreboard",d=`${l}--`,c=`${l}__`,p=r.medium[1],h={BASE:l,itemsContainer:`${c}items-container`,items:`${c}items`,item:`${c}item`,label:`${c}item-label`,value:`${c}item-value`,valuePlaceholder:`${c}item-value-placeholder`,position:{bottom:`${c}position--bottom`,side:`${c}position--side`,left:`${c}position--left`,right:`${c}position--right`},mode:{floating:`${c}mode--floating`,pinned:`${c}mode--pinned`}},b=class{constructor(s){t(this,s),this.scoreboardItemsUpdated=i(this,"scoreboardItemsUpdated",7),this.view=void 0,this.items=void 0,this.position="bottom",this.mode="floating",this.itemLimit=6,this.autoDockEnabled=!0,this.geometry=null,this.state="loading",this.messages=void 0,this.itemIndex=0,this.layers=void 0,this.layerViews=void 0,this.isMobile=!1}scoreboardItemsUpdatedHandler(){this.scoreboardItemsUpdated.emit(this.items)}generateUIDs(){this.itemIndex=0,this.items.forEach(this.generateUID())}async storeLayers(){this.state="calculating",await this.view.map.loadAll();const t=this.items.map((t=>{var i;return null===(i=null==t?void 0:t.layer)||void 0===i?void 0:i.id}));this.layers=this.view.map.allLayers.filter((i=>(i=>(t=>!t.isTable)(i)&&(t=>"feature"===t.type||"scene"===t.type)(i)&&(i=>t.indexOf(i.id)>-1)(i))(i))),this.watchLayerVisibility()}async storeLayerViews(){if(this.layers&&this.layers.length>0){this.layers.forEach((t=>t.outFields=["*"]));const t=[];this.layers.forEach((i=>{const s=this.view.whenLayerView(i);t.push(s)}));const i=(await Promise.allSettled(t)).filter((t=>"fulfilled"==t.status&&t.value)).map((t=>t.value)),s=[];i.forEach((t=>{var i;return s.push(null===(i=this.reactiveUtils)||void 0===i?void 0:i.whenOnce((()=>!t.updating)))})),await Promise.all(s),this.layerViews=new this.Collection([...i])}}calculateScoreboardItemValuesFromGeometry(){this.calculateScoreboardItemValues()}async calculateScoreboardItemValues(){if(this.layers&&0===this.layers.length||this.layerViews&&0===this.layerViews.length)return;this.state="calculating";const t=[...this.items],i=[];this.queryStatDefinitions(t,i);const s=await Promise.all(i);this.handleQueryFeaturesResponses(s,t),this.items.length=0,t.forEach((t=>this.items.push(t))),this.state="complete",this.scoreboardItemsUpdatedHandler(),this.initStationaryWatcher()}async componentWillLoad(){var t;new ResizeObserver((()=>{this.itemIndex=0,this.autoDockEnabled&&(this.isMobile=!!this.checkMobile)})).observe(null===(t=this.el)||void 0===t?void 0:t.parentElement);try{this.state="loading",await this.initMessages()}catch(t){return this.state="disabled",Promise.reject()}finally{if(!this.view||!this.items)return this.state="disabled",Promise.reject();try{return await this.initModules(),Promise.resolve()}catch(t){return this.state="disabled",Promise.reject()}}}async componentDidLoad(){var t;if("disabled"!==this.state)try{await(null===(t=this.reactiveUtils)||void 0===t?void 0:t.whenOnce((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.ready}))),this.generateUIDs(),await this.loadMapResources(),this.storeLayers(),this.initViewUpdateWatcher()}catch(t){this.state="disabled",console.error(`${l}: FAILED TO LOAD MAP RESOURCES`)}}disconnectedCallback(){var t,i,s,o,e,n;this.state="disabled",this.itemIndex=0,null===(t=this.layers)||void 0===t||t.removeAll(),null===(i=this.layers)||void 0===i||i.destroy(),this.layers=null,null===(s=this.layerViews)||void 0===s||s.removeAll(),null===(o=this.layerViews)||void 0===o||o.destroy(),this.layerViews=null,null===(e=this.handles)||void 0===e||e.removeAll(),null===(n=this.handles)||void 0===n||n.destroy(),this.handles=null}async initMessages(){let t;try{return t=(await a(this.el))[0],this.messages=Object.assign(Object.assign({},this.messages),t),Promise.resolve()}catch(t){console.error("FAILED TO LOAD MESSAGES"),Promise.reject()}}async initModules(){try{const[t,i,s,o]=await n(["esri/core/Handles","esri/core/reactiveUtils","esri/core/Collection","esri/intl"]);return this.reactiveUtils=i,this.Collection=s,this.intl=o,this.handles=new t,this.layers=new s,this.layerViews=new s,Promise.resolve()}catch(t){return console.error(t),this.state="disabled",Promise.reject()}}async loadMapResources(){const{map:t}=this.view,i=t;try{return await i.loadAll(),Promise.resolve()}catch(t){return console.error(t),this.state="disabled",Promise.reject()}}generateUID(){return t=>{const i=Math.random(),s=Math.floor(10*Math.random())+11,o=i.toString(s).replace("0.","");t.uid=o}}render(){var t,i;const{state:e}=this,n="disabled"===e,a="loading"===e||"calculating"===e||(null===(t=this.view)||void 0===t?void 0:t.updating)?this.renderProgress():null;return s(o,{key:"5fed5010f728e5d8c4866af3bc38b41ac9b5424f",class:`${this.getPositionClass} ${this.getStyleClass}`},n?null:[a,(null===(i=this.items)||void 0===i?void 0:i.length)>0?this.renderBase():null])}renderBase(){return s("div",{key:"instant-apps-scoreboard-base",class:l},this.renderContent())}renderContent(){const{state:t}=this;return"loading"===t?this.renderLoader():"calculating"===t||"complete"===t?this.renderItemsContainer():null}renderItemsContainer(){const[t,i]=this.renderPreviousNextButtons();return s("div",{class:h.itemsContainer},t,this.renderItems(),i)}renderPreviousNextButtons(){var t,i,o;const e=this.getItemLimit(),n=(null===(t=this.items.filter((t=>t.visible)))||void 0===t?void 0:t.length)<=e,a=0===this.itemIndex,r=this.isEnd,l=!!this.isMobile||"bottom"===this.position,d=l?"start":"center",c={previous:l?"chevron-left":"chevron-up",next:l?"chevron-right":"chevron-down"},p=a||n?"blank":c.previous,h=r||n?"blank":c.next,b={previous:a||n,next:r||n},u="transparent",m=this.isMobile?"s":"l",v={previous:null===(i=this.messages)||void 0===i?void 0:i.previous,next:null===(o=this.messages)||void 0===o?void 0:o.next};return[s("calcite-action",{onClick:this.previousItem.bind(this),icon:p,disabled:b.previous,alignment:d,scale:m,appearance:u,text:v.previous,label:v.previous}),s("calcite-action",{onClick:this.nextItem.bind(this),icon:h,disabled:b.next,alignment:d,scale:m,appearance:u,text:v.next,label:v.next})]}renderItems(){const{items:t}=h,i=this.getItemsToDisplay.map((t=>this.renderItem(t)));return s("ul",{class:t},i)}renderItem(t){const{label:i}=t;return s("li",{class:h.item},s("span",{class:h.label,title:i},i),this.renderValue(t))}renderValue(t){var i,o,e;const{displayValue:n}=t,a="disabled"===this.state,r=void 0===n&&"calculating"===this.state,l=n||(null===(i=this.messages)||void 0===i?void 0:i.NA),d=null===(o=this.layers)||void 0===o?void 0:o.find((i=>{var s;return(null===(s=null==t?void 0:t.layer)||void 0===s?void 0:s.id)===i.id})),c=!(null==d?void 0:d.visible),p=r?this.renderValuePlaceholder():a?"":c?s("calcite-icon",{icon:"view-hide",scale:"l",title:null===(e=this.messages)||void 0===e?void 0:e.layerVisibilityOff}):l;return s("span",{class:h.value},p)}renderValuePlaceholder(){return s("span",{class:h.valuePlaceholder})}renderProgress(){return s("calcite-progress",{key:`${d}calcite-progress`,type:"indeterminate"})}renderLoader(){var t;const i=null===(t=this.messages)||void 0===t?void 0:t.loading;return s("calcite-loader",{key:`${d}calcite-loader`,label:i,text:i,scale:"m"})}get getPositionClass(){const{bottom:t,left:i,right:s,side:o}=h.position;return this.isMobile||"bottom"===this.position?t:`${"left"===this.position?i:s} ${o}`}get getStyleClass(){const{floating:t,pinned:i}=h.mode;return this.isMobile?i:"floating"===this.mode?t:i}get checkMobile(){var t,i;const s=null===(i=null===(t=this.el)||void 0===t?void 0:t.parentElement)||void 0===i?void 0:i.offsetWidth;return!isNaN(s)&&s>0&&s<p}get getItemsToDisplay(){const t=this.getItemLimit();return this.items.filter((t=>t.visible)).slice(this.itemIndex,t+this.itemIndex)}get isEnd(){const t=this.getItemLimit(),i=this.items.slice(this.items.length-t).map((t=>t.uid)),s=this.items.slice(this.itemIndex,this.itemIndex+t).map((t=>t.uid));return i.every(((t,i)=>t===s[i]))}previousItem(){this.itemIndex=this.itemIndex-1}nextItem(){this.itemIndex=this.itemIndex+1}queryStatDefinitions(t,i){const s=(t,i)=>{var s,o,e,n,a;const r=t.createQuery(),l=this.geometry?this.geometry:this.view.extent;r.outStatistics=[i],r.geometry=l;const d=null!==(a=null!==(o=null===(s=null==t?void 0:t.filter)||void 0===s?void 0:s.timeExtent)&&void 0!==o?o:null===(n=null===(e=null==t?void 0:t.featureEffect)||void 0===e?void 0:e.filter)||void 0===n?void 0:n.timeExtent)&&void 0!==a?a:null;return d&&(r.timeExtent=d),r};t.forEach((()=>async t=>{var o;const e=null===(o=this.layerViews)||void 0===o?void 0:o.find((i=>{var s;return i.layer.id===(null===(s=null==t?void 0:t.layer)||void 0===s?void 0:s.id)}));if(!e)return;const n=(t=>{const{field:i,operation:s}=t;return{onStatisticField:i,outStatisticFieldName:`${i}_${s}`,statisticType:s}})(t),a=s(e,n),r=e.queryFeatures(a);i.push(r)})())}handleQueryFeaturesResponses(t,i){t.forEach((()=>(t,s)=>{const o=(t=>{const i=t.features[0],{attributes:s}=i;return Object.values(s)[0]})(t),e=null!==o,n=e?this.intl.formatNumber(o,{notation:"compact",compactDisplay:"short"}):null;i[s].displayValue=e?`${n}`:"",i[s].value=o})())}initStationaryWatcher(){var t,i;const s={once:!0,initial:!0},o=()=>{var t;return null===(t=this.reactiveUtils)||void 0===t?void 0:t.when((()=>{var t;return!(null===(t=this.view)||void 0===t?void 0:t.interacting)}),(()=>this.calculateScoreboardItemValues()),s)},e="stationary-watcher-key";(null===(t=this.handles)||void 0===t?void 0:t.has(e))&&this.handles.remove(e),null===(i=this.handles)||void 0===i||i.add((()=>{var t;return null===(t=this.reactiveUtils)||void 0===t?void 0:t.when((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.stationary}),(()=>o()))})(),e)}initViewUpdateWatcher(){return this.reactiveUtils.watch((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.updating}),(()=>{this.reactiveUtils.when((()=>{var t;return!(null===(t=this.view)||void 0===t?void 0:t.updating)}),(()=>this.calculateScoreboardItemValues()),{once:!0,initial:!0})}),{initial:!0})}watchLayerVisibility(){var t,i;if(!this.layers)return;const s="visbilityWatcherKey";null===(t=this.handles)||void 0===t||t.remove(s);const o=[];this.layers.forEach((t=>{const i=async()=>{const i=await this.view.whenLayerView(t);await this.reactiveUtils.whenOnce((()=>!1===(null==i?void 0:i.updating))),this.calculateScoreboardItemValues()},s=this.reactiveUtils.watch((()=>null==t?void 0:t.visible),(async()=>i()));o.push(s)})),null===(i=this.handles)||void 0===i||i.add([...o],s)}getItemLimit(){return this.itemLimit<2||this.itemLimit>6?6:this.itemLimit}get el(){return e(this)}static get watchers(){return{items:["generateUIDs","storeLayers"],layers:["storeLayerViews"],geometry:["calculateScoreboardItemValuesFromGeometry"],layerViews:["calculateScoreboardItemValues"]}}};b.style=":host{display:block;--instant-apps-scoreboard-background-color:var(--calcite-color-foreground-1);--instant-apps-scoreboard-text-color:var(--calcite-color-text-1);--instant-apps-scoreboard-mobile-position-bottom:0;background-color:var(--instant-apps-scoreboard-background-color);color:var(--instant-apps-scoreboard-text-color)}:host .instant-apps-scoreboard{box-sizing:border-box;border:1px solid var(--calcite-color-border-1);box-shadow:0px 3px 15px rgba(0, 0, 0, 0.2);border-radius:3px}:host .instant-apps-scoreboard calcite-loader{--calcite-loader-padding:1rem}:host .instant-apps-scoreboard__items-container{display:flex}:host .instant-apps-scoreboard__items-container calcite-action{height:100%}:host .instant-apps-scoreboard__items,:host .instant-apps-scoreboard__item{box-sizing:border-box;display:flex}:host .instant-apps-scoreboard__items{list-style-type:none;padding-left:0;margin:0;padding-top:1.75%;padding-bottom:1.75%;width:100%}:host .instant-apps-scoreboard__item{flex-direction:column;justify-content:flex-end;align-items:center;padding:1%}:host .instant-apps-scoreboard__item-label{box-sizing:border-box;line-height:24px;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;word-break:break-word;font-size:1rem;font-weight:400;text-align:center}:host .instant-apps-scoreboard__item-value{display:flex;justify-content:center;align-items:center;min-width:32px;min-height:32px;margin-top:5px;font-size:1.5rem;font-weight:900}:host .instant-apps-scoreboard__item-value-placeholder{display:inline-block;width:32px;height:32px;background-color:var(--calcite-color-foreground-3);border-radius:4px}:host(.instant-apps-scoreboard__position--bottom){bottom:0}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__items{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__item{min-width:10vw;vertical-align:top}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating){left:50%;max-width:calc(100% - 30px);transform:translate(-50%, -15px)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:25vw}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){left:unset;bottom:0;transform:unset;width:100%}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{min-width:unset}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{width:100%;justify-content:space-between}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard{display:flex;justify-content:center;align-items:center;width:10vw;overflow-y:auto}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container{flex-direction:column;height:100%;box-sizing:border-box}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container calcite-action{height:unset;width:100%}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items{flex-direction:column;padding:10px}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__item{padding-top:0.5vh;padding-bottom:0.5vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating){top:15px;left:15px;max-height:calc(100% - 30px)}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:10vw;min-height:35vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned){top:unset;left:unset;transform:unset;height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{justify-content:space-between}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--floating){left:15px}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--floating){left:unset;right:15px}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--pinned){left:0}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--pinned){left:unset;right:0}@media only screen and (min-width: 992px){:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){bottom:var(--instant-apps-scoreboard-mobile-position-bottom)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__item{justify-content:center;min-width:unset;flex-grow:1}}";export{b as instant_apps_scoreboard}
|
6
|
+
import{r as t,c as i,h as s,H as o,g as e}from"./p-4e6eb06e.js";import{l as n}from"./p-d001e961.js";import{b as a}from"./p-5104cc98.js";import{w as r}from"./p-04674a1e.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";const l="instant-apps-scoreboard",d=`${l}--`,c=`${l}__`,p=r.medium[1],h={BASE:l,itemsContainer:`${c}items-container`,items:`${c}items`,item:`${c}item`,label:`${c}item-label`,value:`${c}item-value`,valuePlaceholder:`${c}item-value-placeholder`,position:{bottom:`${c}position--bottom`,side:`${c}position--side`,left:`${c}position--left`,right:`${c}position--right`},mode:{floating:`${c}mode--floating`,pinned:`${c}mode--pinned`}},b=class{constructor(s){t(this,s),this.scoreboardItemsUpdated=i(this,"scoreboardItemsUpdated",7),this.view=void 0,this.items=void 0,this.position="bottom",this.mode="floating",this.itemLimit=6,this.autoDockEnabled=!0,this.geometry=null,this.state="loading",this.messages=void 0,this.itemIndex=0,this.layers=void 0,this.layerViews=void 0,this.isMobile=!1}scoreboardItemsUpdatedHandler(){this.scoreboardItemsUpdated.emit(this.items)}generateUIDs(){this.itemIndex=0,this.items.forEach(this.generateUID())}async storeLayers(){this.state="calculating",await this.view.map.loadAll();const t=this.items.map((t=>{var i;return null===(i=null==t?void 0:t.layer)||void 0===i?void 0:i.id}));this.layers=this.view.map.allLayers.filter((i=>(i=>(t=>!t.isTable)(i)&&(t=>"feature"===t.type||"scene"===t.type)(i)&&(i=>t.indexOf(i.id)>-1)(i))(i))),this.watchLayerVisibility()}async storeLayerViews(){if(this.layers&&this.layers.length>0){this.layers.forEach((t=>t.outFields=["*"]));const t=[];this.layers.forEach((i=>{const s=this.view.whenLayerView(i);t.push(s)}));const i=(await Promise.allSettled(t)).filter((t=>"fulfilled"==t.status&&t.value)).map((t=>t.value)),s=[];i.forEach((t=>{var i;return s.push(null===(i=this.reactiveUtils)||void 0===i?void 0:i.whenOnce((()=>!t.updating)))})),await Promise.all(s),this.layerViews=new this.Collection([...i])}}calculateScoreboardItemValuesFromGeometry(){this.calculateScoreboardItemValues()}async calculateScoreboardItemValues(){if(this.layers&&0===this.layers.length||this.layerViews&&0===this.layerViews.length)return;this.state="calculating";const t=[...this.items],i=[];this.queryStatDefinitions(t,i);const s=await Promise.all(i);this.handleQueryFeaturesResponses(s,t),this.items.length=0,t.forEach((t=>this.items.push(t))),this.state="complete",this.scoreboardItemsUpdatedHandler(),this.initStationaryWatcher()}async componentWillLoad(){var t;new ResizeObserver((()=>{this.itemIndex=0,this.autoDockEnabled&&(this.isMobile=!!this.checkMobile)})).observe(null===(t=this.el)||void 0===t?void 0:t.parentElement);try{this.state="loading",await this.initMessages()}catch(t){return this.state="disabled",Promise.reject()}finally{if(!this.view||!this.items)return this.state="disabled",Promise.reject();try{return await this.initModules(),Promise.resolve()}catch(t){return this.state="disabled",Promise.reject()}}}async componentDidLoad(){var t;if("disabled"!==this.state)try{await(null===(t=this.reactiveUtils)||void 0===t?void 0:t.whenOnce((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.ready}))),this.generateUIDs(),await this.loadMapResources(),this.storeLayers(),this.initViewUpdateWatcher()}catch(t){this.state="disabled",console.error(`${l}: FAILED TO LOAD MAP RESOURCES`)}}disconnectedCallback(){var t,i,s,o,e,n;this.state="disabled",this.itemIndex=0,null===(t=this.layers)||void 0===t||t.removeAll(),null===(i=this.layers)||void 0===i||i.destroy(),this.layers=null,null===(s=this.layerViews)||void 0===s||s.removeAll(),null===(o=this.layerViews)||void 0===o||o.destroy(),this.layerViews=null,null===(e=this.handles)||void 0===e||e.removeAll(),null===(n=this.handles)||void 0===n||n.destroy(),this.handles=null}async initMessages(){let t;try{return t=(await a(this.el))[0],this.messages=Object.assign(Object.assign({},this.messages),t),Promise.resolve()}catch(t){console.error("FAILED TO LOAD MESSAGES"),Promise.reject()}}async initModules(){try{const[t,i,s,o]=await n(["esri/core/Handles","esri/core/reactiveUtils","esri/core/Collection","esri/intl"]);return this.reactiveUtils=i,this.Collection=s,this.intl=o,this.handles=new t,this.layers=new s,this.layerViews=new s,Promise.resolve()}catch(t){return console.error(t),this.state="disabled",Promise.reject()}}async loadMapResources(){const{map:t}=this.view,i=t;try{return await i.loadAll(),Promise.resolve()}catch(t){return console.error(t),this.state="disabled",Promise.reject()}}generateUID(){return t=>{const i=Math.random(),s=Math.floor(10*Math.random())+11,o=i.toString(s).replace("0.","");t.uid=o}}render(){var t,i;const{state:e}=this,n="disabled"===e,a="loading"===e||"calculating"===e||(null===(t=this.view)||void 0===t?void 0:t.updating)?this.renderProgress():null;return s(o,{key:"5fed5010f728e5d8c4866af3bc38b41ac9b5424f",class:`${this.getPositionClass} ${this.getStyleClass}`},n?null:[a,(null===(i=this.items)||void 0===i?void 0:i.length)>0?this.renderBase():null])}renderBase(){return s("div",{key:"instant-apps-scoreboard-base",class:l},this.renderContent())}renderContent(){const{state:t}=this;return"loading"===t?this.renderLoader():"calculating"===t||"complete"===t?this.renderItemsContainer():null}renderItemsContainer(){const[t,i]=this.renderPreviousNextButtons();return s("div",{class:h.itemsContainer},t,this.renderItems(),i)}renderPreviousNextButtons(){var t,i,o;const e=this.getItemLimit(),n=(null===(t=this.items.filter((t=>t.visible)))||void 0===t?void 0:t.length)<=e,a=0===this.itemIndex,r=this.isEnd,l=!!this.isMobile||"bottom"===this.position,d=l?"start":"center",c={previous:l?"chevron-left":"chevron-up",next:l?"chevron-right":"chevron-down"},p=a||n?"blank":c.previous,h=r||n?"blank":c.next,b={previous:a||n,next:r||n},u="transparent",m=this.isMobile?"s":"l",v={previous:null===(i=this.messages)||void 0===i?void 0:i.previous,next:null===(o=this.messages)||void 0===o?void 0:o.next};return[s("calcite-action",{onClick:this.previousItem.bind(this),icon:p,disabled:b.previous,alignment:d,scale:m,appearance:u,text:v.previous,label:v.previous}),s("calcite-action",{onClick:this.nextItem.bind(this),icon:h,disabled:b.next,alignment:d,scale:m,appearance:u,text:v.next,label:v.next})]}renderItems(){const{items:t}=h,i=this.getItemsToDisplay.map((t=>this.renderItem(t)));return s("ul",{class:t},i)}renderItem(t){const{label:i}=t;return s("li",{class:h.item},s("span",{class:h.label,title:i},i),this.renderValue(t))}renderValue(t){var i,o,e;const{displayValue:n}=t,a="disabled"===this.state,r=void 0===n&&"calculating"===this.state,l=n||(null===(i=this.messages)||void 0===i?void 0:i.NA),d=null===(o=this.layers)||void 0===o?void 0:o.find((i=>{var s;return(null===(s=null==t?void 0:t.layer)||void 0===s?void 0:s.id)===i.id})),c=!(null==d?void 0:d.visible),p=r?this.renderValuePlaceholder():a?"":c?s("calcite-icon",{icon:"view-hide",scale:"l",title:null===(e=this.messages)||void 0===e?void 0:e.layerVisibilityOff}):l;return s("span",{class:h.value},p)}renderValuePlaceholder(){return s("span",{class:h.valuePlaceholder})}renderProgress(){return s("calcite-progress",{key:`${d}calcite-progress`,type:"indeterminate"})}renderLoader(){var t;const i=null===(t=this.messages)||void 0===t?void 0:t.loading;return s("calcite-loader",{key:`${d}calcite-loader`,label:i,text:i,scale:"m"})}get getPositionClass(){const{bottom:t,left:i,right:s,side:o}=h.position;return this.isMobile||"bottom"===this.position?t:`${"left"===this.position?i:s} ${o}`}get getStyleClass(){const{floating:t,pinned:i}=h.mode;return this.isMobile?i:"floating"===this.mode?t:i}get checkMobile(){var t,i;const s=null===(i=null===(t=this.el)||void 0===t?void 0:t.parentElement)||void 0===i?void 0:i.offsetWidth;return!isNaN(s)&&s>0&&s<p}get getItemsToDisplay(){const t=this.getItemLimit();return this.items.filter((t=>t.visible)).slice(this.itemIndex,t+this.itemIndex)}get isEnd(){const t=this.getItemLimit(),i=this.items.slice(this.items.length-t).map((t=>t.uid)),s=this.items.slice(this.itemIndex,this.itemIndex+t).map((t=>t.uid));return i.every(((t,i)=>t===s[i]))}previousItem(){this.itemIndex=this.itemIndex-1}nextItem(){this.itemIndex=this.itemIndex+1}queryStatDefinitions(t,i){const s=(t,i)=>{var s,o,e,n,a;const r=t.createQuery(),l=this.geometry?this.geometry:this.view.extent;r.outStatistics=[i],r.geometry=l;const d=null!==(a=null!==(o=null===(s=null==t?void 0:t.filter)||void 0===s?void 0:s.timeExtent)&&void 0!==o?o:null===(n=null===(e=null==t?void 0:t.featureEffect)||void 0===e?void 0:e.filter)||void 0===n?void 0:n.timeExtent)&&void 0!==a?a:null;return d&&(r.timeExtent=d),r};t.forEach((()=>async t=>{var o;const e=null===(o=this.layerViews)||void 0===o?void 0:o.find((i=>{var s;return i.layer.id===(null===(s=null==t?void 0:t.layer)||void 0===s?void 0:s.id)}));if(!e)return;const n=(t=>{const{field:i,operation:s}=t;return{onStatisticField:i,outStatisticFieldName:`${i}_${s}`,statisticType:s}})(t),a=s(e,n),r=e.queryFeatures(a);i.push(r)})())}handleQueryFeaturesResponses(t,i){t.forEach((()=>(t,s)=>{const o=(t=>{const i=t.features[0],{attributes:s}=i;return Object.values(s)[0]})(t),e=null!==o,n=e?this.intl.formatNumber(o,{notation:"compact",compactDisplay:"short"}):null;i[s].displayValue=e?`${n}`:"",i[s].value=o})())}initStationaryWatcher(){var t,i;const s={once:!0,initial:!0},o=()=>{var t;return null===(t=this.reactiveUtils)||void 0===t?void 0:t.when((()=>{var t;return!(null===(t=this.view)||void 0===t?void 0:t.interacting)}),(()=>this.calculateScoreboardItemValues()),s)},e="stationary-watcher-key";(null===(t=this.handles)||void 0===t?void 0:t.has(e))&&this.handles.remove(e),null===(i=this.handles)||void 0===i||i.add((()=>{var t;return null===(t=this.reactiveUtils)||void 0===t?void 0:t.when((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.stationary}),(()=>o()))})(),e)}initViewUpdateWatcher(){return this.reactiveUtils.watch((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.updating}),(()=>{this.reactiveUtils.when((()=>{var t;return!(null===(t=this.view)||void 0===t?void 0:t.updating)}),(()=>this.calculateScoreboardItemValues()),{once:!0,initial:!0})}),{initial:!0})}watchLayerVisibility(){var t,i;if(!this.layers)return;const s="visbilityWatcherKey";null===(t=this.handles)||void 0===t||t.remove(s);const o=[];this.layers.forEach((t=>{const i=async()=>{const i=await this.view.whenLayerView(t);await this.reactiveUtils.whenOnce((()=>!1===(null==i?void 0:i.updating))),this.calculateScoreboardItemValues()},s=this.reactiveUtils.watch((()=>null==t?void 0:t.visible),(async()=>i()));o.push(s)})),null===(i=this.handles)||void 0===i||i.add([...o],s)}getItemLimit(){return this.itemLimit<2||this.itemLimit>6?6:this.itemLimit}get el(){return e(this)}static get watchers(){return{items:["generateUIDs","storeLayers"],layers:["storeLayerViews"],geometry:["calculateScoreboardItemValuesFromGeometry"],layerViews:["calculateScoreboardItemValues"]}}};b.style=":host{display:block;--instant-apps-scoreboard-background-color:var(--calcite-color-foreground-1);--instant-apps-scoreboard-text-color:var(--calcite-color-text-1);--instant-apps-scoreboard-mobile-position-bottom:0;background-color:var(--instant-apps-scoreboard-background-color);color:var(--instant-apps-scoreboard-text-color)}:host .instant-apps-scoreboard{box-sizing:border-box;border:1px solid var(--calcite-color-border-1);box-shadow:0px 3px 15px rgba(0, 0, 0, 0.2);border-radius:3px}:host .instant-apps-scoreboard calcite-loader{--calcite-loader-padding:1rem}:host .instant-apps-scoreboard__items-container{display:flex}:host .instant-apps-scoreboard__items-container calcite-action{height:100%}:host .instant-apps-scoreboard__items,:host .instant-apps-scoreboard__item{box-sizing:border-box;display:flex}:host .instant-apps-scoreboard__items{list-style-type:none;padding-left:0;margin:0;padding-top:1.75%;padding-bottom:1.75%;width:100%}:host .instant-apps-scoreboard__item{flex-direction:column;justify-content:flex-end;align-items:center;padding:1%}:host .instant-apps-scoreboard__item-label{box-sizing:border-box;line-height:24px;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;word-break:break-word;font-size:1rem;font-weight:400;text-align:center}:host .instant-apps-scoreboard__item-value{display:flex;justify-content:center;align-items:center;min-width:32px;min-height:32px;margin-top:5px;font-size:1.5rem;font-weight:900}:host .instant-apps-scoreboard__item-value-placeholder{display:inline-block;width:32px;height:32px;background-color:var(--calcite-color-foreground-3);border-radius:4px}:host(.instant-apps-scoreboard__position--bottom){bottom:0}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__items{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__item{min-width:10vw;vertical-align:top}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating){left:50%;max-width:calc(100% - 30px);transform:translate(-50%, -15px)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:25vw}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){left:unset;bottom:0;transform:unset;width:100%}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{min-width:unset}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{width:100%;justify-content:space-between}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard{display:flex;justify-content:center;align-items:center;width:10vw;overflow-y:auto}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container{flex-direction:column;height:100%;box-sizing:border-box}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container calcite-action{height:unset;width:100%}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items{flex-direction:column;padding:10px}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__item{padding-top:0.5vh;padding-bottom:0.5vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating){top:15px;left:15px;max-height:calc(100% - 30px)}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:10vw;min-height:35vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned){top:unset;left:unset;transform:unset;height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{justify-content:space-between}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--floating){left:15px}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--floating){left:unset;right:15px}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--pinned){left:0}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--pinned){left:unset;right:0}@media only screen and (min-width: 992px){:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){bottom:var(--instant-apps-scoreboard-mobile-position-bottom)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__item{justify-content:center;min-width:unset;flex-grow:1}}";export{b as instant_apps_scoreboard}
|