@esri/solutions-components 0.8.60 → 0.8.62
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/basemap-gallery_7.cjs.entry.js +2 -2
- package/dist/cjs/buffer-tools_3.cjs.entry.js +2 -2
- package/dist/cjs/calcite-action-pad_2.cjs.entry.js +2 -2
- package/dist/cjs/calcite-alert_4.cjs.entry.js +4 -4
- package/dist/cjs/calcite-block_5.cjs.entry.js +4 -4
- package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +2 -2
- package/dist/cjs/calcite-flow_6.cjs.entry.js +2 -2
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +3 -3
- package/dist/cjs/card-manager_3.cjs.entry.js +32 -8
- package/dist/cjs/consent-manager.cjs.entry.js +2 -2
- package/dist/cjs/crowdsource-manager.cjs.entry.js +4 -12
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +2 -2
- package/dist/cjs/{downloadUtils-2e169425.js → downloadUtils-85009d64.js} +6 -3
- package/dist/cjs/feature-list.cjs.entry.js +4 -4
- package/dist/cjs/{helpers-95c28cf3.js → helpers-0104985c.js} +1 -1
- package/dist/cjs/{index.es-301b8d18.js → index.es-cc49d45d.js} +3 -3
- package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +5 -5
- package/dist/cjs/instant-apps-control-panel.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-create.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-export.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-header.cjs.entry.js +2 -2
- package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +3 -3
- package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +5 -5
- package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +6 -6
- package/dist/cjs/instant-apps-language-translator.cjs.entry.js +6 -6
- package/dist/cjs/instant-apps-measurement.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-popover.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-sign-in.cjs.entry.js +4 -4
- package/dist/cjs/instant-apps-splash.cjs.entry.js +4 -4
- package/dist/cjs/{languageSwitcher-f0bb94fa.js → languageSwitcher-dc2dd354.js} +1 -1
- package/dist/cjs/{languageUtil-f22ce913.js → languageUtil-a3e1eafd.js} +1 -1
- package/dist/cjs/layout-manager.cjs.entry.js +2 -2
- package/dist/cjs/{loadModules-36d49819.js → loadModules-8567855e.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{locale-708985a1.js → locale-1d07e942.js} +2 -2
- package/dist/cjs/{locale-f6fd03d2.js → locale-31289fc5.js} +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +3 -3
- package/dist/cjs/{popupUtils-36e57a27.js → popupUtils-fe880b9e.js} +2 -2
- package/dist/cjs/public-notification.cjs.entry.js +3 -3
- package/dist/cjs/solution-configuration.cjs.entry.js +3 -3
- package/dist/cjs/solution-contents_3.cjs.entry.js +3 -3
- package/dist/cjs/{solution-store-d9f3ea44.js → solution-store-4e35404b.js} +10 -0
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/cjs/spatial-ref.cjs.entry.js +2 -2
- package/dist/cjs/store-manager.cjs.entry.js +1 -1
- package/dist/cjs/{utils-31a22d49.js → utils-0ab15745.js} +1 -1
- package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +1 -11
- package/dist/collection/components/layer-table/layer-table.js +29 -5
- package/dist/collection/utils/downloadUtils.js +4 -1
- package/dist/collection/utils/downloadUtils.ts +4 -1
- package/dist/components/crowdsource-manager.js +3 -12
- package/dist/components/downloadUtils.js +4 -1
- package/dist/components/layer-table2.js +29 -5
- package/dist/components/solution-store.js +10 -0
- package/dist/esm/basemap-gallery_7.entry.js +2 -2
- package/dist/esm/buffer-tools_3.entry.js +2 -2
- package/dist/esm/calcite-action-pad_2.entry.js +2 -2
- package/dist/esm/calcite-alert_4.entry.js +4 -4
- package/dist/esm/calcite-block_5.entry.js +4 -4
- package/dist/esm/calcite-dropdown-group_2.entry.js +2 -2
- package/dist/esm/calcite-flow_6.entry.js +2 -2
- package/dist/esm/calcite-shell-panel_14.entry.js +3 -3
- package/dist/esm/card-manager_3.entry.js +32 -8
- package/dist/esm/consent-manager.entry.js +2 -2
- package/dist/esm/crowdsource-manager.entry.js +4 -12
- package/dist/esm/crowdsource-reporter.entry.js +2 -2
- package/dist/esm/{downloadUtils-5fbd8a40.js → downloadUtils-f2c49e23.js} +6 -3
- package/dist/esm/feature-list.entry.js +4 -4
- package/dist/esm/{helpers-3d53560f.js → helpers-3407a4b6.js} +1 -1
- package/dist/esm/{index.es-66571353.js → index.es-680dba03.js} +3 -3
- package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +5 -5
- package/dist/esm/instant-apps-control-panel.entry.js +2 -2
- package/dist/esm/instant-apps-create.entry.js +4 -4
- package/dist/esm/instant-apps-export.entry.js +4 -4
- package/dist/esm/instant-apps-header.entry.js +2 -2
- package/dist/esm/instant-apps-interactive-legend-classic.entry.js +3 -3
- package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +3 -3
- package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +3 -3
- package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +3 -3
- package/dist/esm/instant-apps-interactive-legend.entry.js +5 -5
- package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +4 -4
- package/dist/esm/instant-apps-language-switcher.entry.js +6 -6
- package/dist/esm/instant-apps-language-translator.entry.js +6 -6
- package/dist/esm/instant-apps-measurement.entry.js +4 -4
- package/dist/esm/instant-apps-popover.entry.js +4 -4
- package/dist/esm/instant-apps-scoreboard.entry.js +4 -4
- package/dist/esm/instant-apps-sign-in.entry.js +4 -4
- package/dist/esm/instant-apps-splash.entry.js +4 -4
- package/dist/esm/{languageSwitcher-b665499d.js → languageSwitcher-9db90f1e.js} +1 -1
- package/dist/esm/{languageUtil-a3e6adf6.js → languageUtil-2b6e191a.js} +1 -1
- package/dist/esm/layout-manager.entry.js +2 -2
- package/dist/esm/{loadModules-9c062d08.js → loadModules-03ba7abe.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-28d48640.js → locale-4adfc8cf.js} +1 -1
- package/dist/esm/{locale-b4e7d56f.js → locale-d66155ee.js} +2 -2
- package/dist/esm/map-select-tools_3.entry.js +3 -3
- package/dist/esm/{popupUtils-4a91aa2a.js → popupUtils-21b9dbe5.js} +2 -2
- package/dist/esm/public-notification.entry.js +3 -3
- package/dist/esm/solution-configuration.entry.js +3 -3
- package/dist/esm/solution-contents_3.entry.js +3 -3
- package/dist/esm/{solution-store-1c36ce1d.js → solution-store-840c5489.js} +10 -0
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/spatial-ref.entry.js +2 -2
- package/dist/esm/store-manager.entry.js +1 -1
- package/dist/esm/{utils-5484fcbf.js → utils-efd425d4.js} +1 -1
- package/dist/solutions-components/{p-9e3b0220.entry.js → p-0534b446.entry.js} +1 -1
- package/dist/solutions-components/{p-ce4b6931.entry.js → p-09de2308.entry.js} +1 -1
- package/dist/solutions-components/{p-5cc6eb18.js → p-12f9f81d.js} +1 -1
- package/dist/solutions-components/{p-0cd87dca.entry.js → p-1412173c.entry.js} +1 -1
- package/dist/solutions-components/{p-b7123452.entry.js → p-14900698.entry.js} +1 -1
- package/dist/solutions-components/{p-00291b93.js → p-17946a3f.js} +3 -3
- package/dist/solutions-components/{p-427b4593.js → p-1c64264d.js} +1 -1
- package/dist/solutions-components/{p-7696af8e.entry.js → p-1d285ae1.entry.js} +1 -1
- package/dist/solutions-components/{p-ccd1e256.entry.js → p-2671a80b.entry.js} +1 -1
- package/dist/solutions-components/{p-881ead62.entry.js → p-2a8b04de.entry.js} +1 -1
- package/dist/solutions-components/{p-d2de2b2a.entry.js → p-2e2e975a.entry.js} +1 -1
- package/dist/solutions-components/{p-44fea43a.js → p-2fb21ae5.js} +1 -1
- package/dist/solutions-components/{p-c742acd9.js → p-2fc63144.js} +1 -1
- package/dist/solutions-components/{p-969828ab.entry.js → p-30f0687e.entry.js} +1 -1
- package/dist/solutions-components/p-318eac43.entry.js +6 -0
- package/dist/solutions-components/{p-6e6e6d23.entry.js → p-3ec70ff5.entry.js} +1 -1
- package/dist/solutions-components/{p-bbc7dd5e.entry.js → p-4250f852.entry.js} +1 -1
- package/dist/solutions-components/{p-90864588.entry.js → p-42c2d9d8.entry.js} +1 -1
- package/dist/solutions-components/{p-36e199e0.entry.js → p-4bfec58a.entry.js} +1 -1
- package/dist/solutions-components/{p-ae50581b.entry.js → p-4c8fdf0b.entry.js} +1 -1
- package/dist/solutions-components/{p-65581d83.js → p-4cd4cb85.js} +1 -1
- package/dist/solutions-components/{p-2d6d44b5.entry.js → p-6067b27a.entry.js} +1 -1
- package/dist/solutions-components/{p-986ee365.entry.js → p-62e5aea4.entry.js} +1 -1
- package/dist/solutions-components/{p-c6fd40f9.entry.js → p-6e65d93b.entry.js} +1 -1
- package/dist/solutions-components/{p-d73b90ab.entry.js → p-7058b4fa.entry.js} +1 -1
- package/dist/solutions-components/{p-932d6f29.entry.js → p-72347474.entry.js} +1 -1
- package/dist/solutions-components/{p-91142a26.js → p-75cb415f.js} +1 -1
- package/dist/solutions-components/{p-6c7a990a.entry.js → p-80e42752.entry.js} +1 -1
- package/dist/solutions-components/{p-3e8562b5.entry.js → p-8100a48d.entry.js} +1 -1
- package/dist/solutions-components/{p-b92e9047.entry.js → p-83640661.entry.js} +1 -1
- package/dist/solutions-components/{p-2467b476.entry.js → p-83fdb1d4.entry.js} +1 -1
- package/dist/solutions-components/{p-1c3c83a5.js → p-841863b8.js} +1 -1
- package/dist/solutions-components/{p-a8d62b7d.entry.js → p-967411c5.entry.js} +1 -1
- package/dist/solutions-components/{p-af2c8aa9.js → p-ac122d9e.js} +1 -1
- package/dist/solutions-components/{p-cb4842dd.entry.js → p-b0985f9d.entry.js} +1 -1
- package/dist/solutions-components/{p-dae9d5b3.entry.js → p-bc8b4f68.entry.js} +1 -1
- package/dist/solutions-components/{p-bd871071.entry.js → p-bf0bb8c2.entry.js} +1 -1
- package/dist/solutions-components/{p-ffd41e25.js → p-c0bf1d9f.js} +3 -3
- package/dist/solutions-components/{p-2afdcdfc.js → p-c1936856.js} +1 -1
- package/dist/solutions-components/p-cd8d6e52.entry.js +6 -0
- package/dist/solutions-components/{p-bb7463ed.entry.js → p-d3a2d182.entry.js} +1 -1
- package/dist/solutions-components/{p-e80751f4.entry.js → p-d61bbc4c.entry.js} +1 -1
- package/dist/solutions-components/{p-2961c63c.entry.js → p-d72b4031.entry.js} +1 -1
- package/dist/solutions-components/{p-61f88049.entry.js → p-ddd9d50f.entry.js} +1 -1
- package/dist/solutions-components/{p-295f850a.entry.js → p-df2fc967.entry.js} +1 -1
- package/dist/solutions-components/{p-1e6c6ec4.entry.js → p-e900ec51.entry.js} +1 -1
- package/dist/solutions-components/{p-df56c019.entry.js → p-ed71dfdc.entry.js} +1 -1
- package/dist/solutions-components/{p-219f209e.entry.js → p-ee62f91c.entry.js} +1 -1
- package/dist/solutions-components/{p-e8ed3fa6.entry.js → p-f629ed65.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/downloadUtils.ts +4 -1
- package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +0 -4
- package/dist/types/components/layer-table/layer-table.d.ts +8 -0
- package/package.json +6 -6
- package/dist/solutions-components/p-13404ad7.entry.js +0 -6
- package/dist/solutions-components/p-d300430b.entry.js +0 -6
- package/dist/solutions-components_commit.txt +0 -8
- /package/dist/cjs/{esri-loader-a56cbcbe.js → esri-loader-08dc41bd.js} +0 -0
- /package/dist/esm/{esri-loader-781d738a.js → esri-loader-c6842c6b.js} +0 -0
- /package/dist/solutions-components/{p-6a68306c.js → p-0a24ad5f.js} +0 -0
@@ -142,4 +142,4 @@ function b(e,t,r,s=40){return new Promise((n=>{let a=[];const o=[];e.length>0&&f
|
|
142
142
|
* See the License for the specific language governing permissions and
|
143
143
|
* limitations under the License.
|
144
144
|
*/
|
145
|
-
const _={solutionItemId:"",defaultWkid:void 0,solutionData:{metadata:{},templates:[]},templateEdits:{},featureServices:[],spatialReferenceInfo:{enabled:!1,services:{},spatialReference:void 0}},g=class{static get Store(){return this._instance||(this._instance=new this)}constructor(){this._hasChanges=!1,this._store=e(Object.assign({},_))}getItemInfo(e){let t;return this._store.get("solutionData").templates.some((r=>e==r.itemId&&(t=r,!0))),t}getStoreInfo(e){return this._store.get(e)}async loadSolution(e,t){this._authentication=t;const r=await l(e,t);if(r){const i=f(r,"params.wkid.default");await this._prepareSolutionItemsForEditing(e,r.templates,t);const s=this._getFeatureServices(r.templates),n=this._getSpatialReferenceInfo(s,i);this._store.set("solutionItemId",e),this._store.set("defaultWkid",i),this._store.set("solutionData",r),this._store.set("featureServices",s),this._store.set("spatialReferenceInfo",n)}this._flagStoreHasChanges(!1)}replaceItemThumbnail(e){e.resourceFilePaths.forEach((e=>{e.type===r.Thumbnail&&(e.updateType===t.None?e.updateType=t.Remove:e.updateType!==t.Add&&e.updateType!==t.Update||(e.updateType=t.Obsolete))})),e.resourceFilePaths=e.resourceFilePaths.filter((e=>e.updateType!=t.Obsolete)),e.resourceFilePaths.push({blob:e.thumbnail,filename:e.thumbnail.name,type:r.Thumbnail,updateType:t.Add}),this.setItemInfo(e)}async saveSolution(){const e=this._store.get("solutionItemId"),t=this._store.get("solutionData"),r=this._store.get("spatialReferenceInfo");await this._prepareSolutionItemsForStorage(e,t.templates,this._authentication);const i=this._setSpatialReferenceInfo(r,t.templates);p(t,"params.wkid",i?{label:"Spatial Reference",default:i,valueType:"spatialReference",attributes:{required:"true"}}:{});const s={id:e,text:t};await function(e,t){return new Promise(((r,i)=>{var s;(s={item:e,folderId:void 0,authentication:t,params:{}},h(s).then((function(e){var t,r,i,n=s.folderId?d(s)+"/content/users/"+e+"/"+s.folderId+"/items/"+s.item.id+"/update":d(s)+"/content/users/"+e+"/items/"+s.item.id+"/update";return s.params=m(m({},s.params),(t=s.item,(r=JSON.parse(JSON.stringify(t))).data&&("undefined"!=typeof Blob&&t.data instanceof Blob||"ReadStream"===t.data.constructor.name?r.file=t.data:r.text=t.data,delete r.data),r)),s.params.extent&&(i=s.params.extent,Array.isArray(i)&&Array.isArray(i[0])&&Array.isArray(i[1]))&&(s.params.extent=function(e){return e.join(",")}(s.params.extent)),a(n,s)}))).then((e=>e.success?r(e):i(e)),(e=>i(e)))}))}(s,this._authentication)}setItemInfo(e){const t=this._store.get("solutionData");t.templates.some((r=>e.itemId==r.itemId&&(r=e,this._store.set("solutionData",t),this._flagStoreHasChanges(!0),!0)))}setStoreInfo(e,t){this._store.set(e,t),this._flagStoreHasChanges(!0)}_testAccess(e,t,r,i){switch(e){case"_emptyTheStore":this._emptyTheStore();break;case"_getFeatureServices":return this._getFeatureServices(t);case"_getItemsSharedWithThisGroup":return this._getItemsSharedWithThisGroup(t,r);case"_getResourceFilePaths":return this._getResourceFilePaths(t,r,i);case"_getResourceStorageName":return this._getResourceStorageName(t,r);case"_getSpatialReferenceInfo":return this._getSpatialReferenceInfo(t,r);case"_prepareSolutionItemsForEditing":return this._prepareSolutionItemsForEditing(t,r,i);case"_prepareSolutionItemsForStorage":return this._prepareSolutionItemsForStorage(t,r,i);case"_setSpatialReferenceInfo":return this._setSpatialReferenceInfo(t,r);case"_splitFilename":return this._splitFilename(t)}return null}_emptyTheStore(){this._store.set("solutionItemId",_.solutionItemId),this._store.set("defaultWkid",_.defaultWkid),this._store.set("solutionData",_.solutionData),this._store.set("templateEdits",_.templateEdits),this._store.set("featureServices",_.featureServices),this._store.set("spatialReferenceInfo",_.spatialReferenceInfo)}_flagStoreHasChanges(e){window.dispatchEvent(new CustomEvent("solutionStoreHasChanges",{detail:e,bubbles:!0,cancelable:!1,composed:!0})),this._hasChanges=e}_getCustomizableFeatureServices(e){return e.reduce(((e,t)=>("Feature Service"===t.type&&t.item.typeKeywords.indexOf("View Service")<0&&e.push(t),e)),[])}_getFeatureServices(e){return this._getCustomizableFeatureServices(e).map((e=>({name:e.item.title||e.item.name,enabled:f(e,"properties.service.spatialReference.wkid").toString().startsWith("{{params.wkid||")})))}_getItemsSharedWithThisGroup(e,t){return t.reduce(((t,r)=>(r.itemId!==e.itemId&&"Group"!==r.type&&t.push({id:r.itemId,title:r.item.name||r.item.title,isShared:(r.groups||[]).indexOf(e.itemId)>-1,shareItem:(r.groups||[]).indexOf(e.itemId)>-1,type:r.type,typeKeywords:r.item.typeKeywords}),t)),[])}_getResourceFilePaths(e,r,i){return function(e,t,r=[],i=0){return r.map((r=>{return{url:(s=e,n=t,a=r,c(s)+"content/items/"+n+"/resources/"+a),...w(r,i)};var s,n,a}))}(i,e,r.resources,s).map((e=>(e.updateType=t.None,e)))}_getResourceStorageName(e,t){let i=e;switch(t.type){case r.Data:i=`${i}_info_data`;break;case r.Info:i=`${i}_info`;break;case r.Metadata:i=`${i}_info_metadata`;break;case r.Resource:break;case r.Thumbnail:i=`${i}_info_thumbnail`}let s=t.filename;return t.type==r.Data&&s&&!function(e){const t=e.match(/\.([a-z]+)$/i);return!!t&&"|.json|.xml|.txt|.png|.pbf|.zip|.jpeg|.jpg|.gif|.bmp|.gz|.svg|.svgz|.geodatabase|".indexOf("|"+t[0]+"|")>=0}(s)&&(s+=".zip",i+="z"),i+"/"+(t.folder?t.folder+"/"+s:s)}_getSpatialReferenceInfo(e,t){const r={};return e.forEach((e=>{r[e.name]=e.enabled})),{enabled:void 0!==t,services:r,spatialReference:t||void 0}}async _prepareSolutionItemsForEditing(e,t,i){const s=[];t.forEach((n=>{n.resourceFilePaths=this._getResourceFilePaths(e,n,i.portal),s.push(n.resourceFilePaths.length>0?function(e,t){let i,s;return t.forEach((e=>{e.type===r.Thumbnail&&(i=e.url,s=e.filename)})),i?u(i,s,e):Promise.resolve(null)}(i,n.resourceFilePaths):Promise.resolve()),n.groupDetails="Group"===n.type?this._getItemsSharedWithThisGroup(n,t):[]}));const n=await Promise.all(s);return t.forEach(((e,t)=>{e.thumbnail=n[t]?n[t]:void 0})),Promise.resolve()}async _prepareSolutionItemsForStorage(e,r,i){const s=[],n=[];return r.forEach((r=>{r.resourceFilePaths.forEach((async o=>{const c=this._getResourceStorageName(r.itemId,o);switch(o.updateType){case t.Add:const{prefix:u,suffix:l}=this._splitFilename(c);r.resources.push(c),s.push({itemId:r.itemId,file:o.blob,folder:u,filename:l});break;case t.Update:n.push(new Promise((async t=>{try{await function(e,t,r,i){const s=t.split("/"),n=s.length>1?s.slice(0,s.length-1).join("/"):void 0;return h(o={id:e,prefix:n,name:s[s.length-1],resource:r,authentication:i}).then((function(e){var t=d(o)+"/content/users/"+e+"/items/"+o.id+"/updateResources";return o.params=m({file:o.resource,fileName:o.name,resourcesPrefix:o.prefix,text:o.content},o.params),void 0!==o.private&&(o.params.access=o.private?"private":"inherit"),a(t,o)}));var o}(e,c,o.blob,i)}catch(e){console.log("Unable to update "+c+" for item "+r.itemId+": "+JSON.stringify(e))}t()})));break;case t.Remove:n.push(new Promise((async t=>{try{await function(e,t,r){return h(i={id:e,resource:t,authentication:r}).then((function(e){var t=d(i)+"/content/users/"+e+"/items/"+i.id+"/removeResources";return i.params=m(m({},i.params),{resource:i.resource}),void 0!==i.deleteAll&&(i.params.deleteAll=i.deleteAll),a(t,i)}));var i}(e,c,i),r.resources=r.resources.filter((e=>e!==c))}catch(e){console.log("Unable to remove "+c+" for item "+r.itemId+": "+JSON.stringify(e))}t()})))}return Promise.resolve()})),delete r.resourceFilePaths,delete r.thumbnail,delete r.groupDetails})),Promise.all(n).then((async()=>{var t,r,n;return s.length>0&&await(t=s,r=e,n=i,new Promise((e=>{b(t,r,n).then((t=>{e(t.filter((e=>e.fetchedFromSource&&e.copiedToDestination)).map((e=>e.folder+"/"+e.filename)))}))}))),Promise.resolve()}))}_setSpatialReferenceInfo(e,t){const r="{{params.wkid||",i=this._getCustomizableFeatureServices(t);return e.enabled?(i.forEach((t=>{let i;e.services[t.item.title||t.item.name]?(i=`{{params.wkid||${e.spatialReference}}}`,p(t,"properties.service.spatialReference.wkid",i)):(i=f(t,"properties.service.spatialReference.wkid"),i.toString().startsWith(r)&&(i=i.toString().substring(15,i.length-2),p(t,"properties.service.spatialReference.wkid",i)))})),e.spatialReference):void i.forEach((e=>{const t=f(e,"properties.service.spatialReference.wkid");t.toString().startsWith(r)&&p(e,"properties.service.spatialReference.wkid",t.toString().substring(15,t.length-2))}))}_splitFilename(e){const t=e.split("/");return{prefix:t.length>1?t.slice(0,t.length-1).join("/"):void 0,suffix:t[t.length-1]}}}.Store;export{g as s}
|
145
|
+
const _={solutionItemId:"",defaultWkid:void 0,solutionData:{metadata:{},templates:[]},templateEdits:{},featureServices:[],spatialReferenceInfo:{enabled:!1,services:{},spatialReference:void 0}},g=class{static get Store(){return this._instance||(this._instance=new this)}constructor(){this._hasChanges=!1,this._store=e(Object.assign({},_))}getItemInfo(e){let t;return this._store.get("solutionData").templates.some((r=>e==r.itemId&&(t=r,!0))),t}getStoreInfo(e){return this._store.get(e)}async loadSolution(e,t){this._authentication=t;const r=await l(e,t);if(r){const i=f(r,"params.wkid.default");await this._prepareSolutionItemsForEditing(e,r.templates,t);const s=this._getFeatureServices(r.templates),n=this._getSpatialReferenceInfo(s,i);this._store.set("solutionItemId",e),this._store.set("defaultWkid",i),this._store.set("solutionData",r),this._store.set("featureServices",s),this._store.set("spatialReferenceInfo",n)}this._flagStoreHasChanges(!1)}replaceItemThumbnail(e){e.resourceFilePaths.forEach((e=>{e.type===r.Thumbnail&&(e.updateType===t.None?e.updateType=t.Remove:e.updateType!==t.Add&&e.updateType!==t.Update||(e.updateType=t.Obsolete))})),e.resourceFilePaths=e.resourceFilePaths.filter((e=>e.updateType!=t.Obsolete)),e.resourceFilePaths.push({blob:e.thumbnail,filename:e.thumbnail.name,type:r.Thumbnail,updateType:t.Add}),this.setItemInfo(e)}async saveSolution(){const e=this._store.get("solutionItemId"),t=this._store.get("solutionData"),r=this._store.get("spatialReferenceInfo");await this._prepareSolutionItemsForStorage(e,t.templates,this._authentication);const i=this._setSpatialReferenceInfo(r,t.templates);p(t,"params.wkid",i?{label:"Spatial Reference",default:i,valueType:"spatialReference",attributes:{required:"true"}}:{});const s={id:e,text:t};await function(e,t){return new Promise(((r,i)=>{var s;(s={item:e,folderId:void 0,authentication:t,params:{}},h(s).then((function(e){var t,r,i,n=s.folderId?d(s)+"/content/users/"+e+"/"+s.folderId+"/items/"+s.item.id+"/update":d(s)+"/content/users/"+e+"/items/"+s.item.id+"/update";return s.params=m(m({},s.params),(t=s.item,(r=JSON.parse(JSON.stringify(t))).data&&("undefined"!=typeof Blob&&t.data instanceof Blob||"ReadStream"===t.data.constructor.name?r.file=t.data:r.text=t.data,delete r.data),r)),s.params.extent&&(i=s.params.extent,Array.isArray(i)&&Array.isArray(i[0])&&Array.isArray(i[1]))&&(s.params.extent=function(e){return e.join(",")}(s.params.extent)),s.params.file&&s.params.file.constructor&&"ReadStream"===s.params.file.constructor.name&&(s.params.dataSize=s.dataSize),a(n,s)}))).then((e=>e.success?r(e):i(e)),(e=>i(e)))}))}(s,this._authentication)}setItemInfo(e){const t=this._store.get("solutionData");t.templates.some((r=>e.itemId==r.itemId&&(r=e,this._store.set("solutionData",t),this._flagStoreHasChanges(!0),!0)))}setStoreInfo(e,t){this._store.set(e,t),this._flagStoreHasChanges(!0)}_testAccess(e,t,r,i){switch(e){case"_emptyTheStore":this._emptyTheStore();break;case"_getFeatureServices":return this._getFeatureServices(t);case"_getItemsSharedWithThisGroup":return this._getItemsSharedWithThisGroup(t,r);case"_getResourceFilePaths":return this._getResourceFilePaths(t,r,i);case"_getResourceStorageName":return this._getResourceStorageName(t,r);case"_getSpatialReferenceInfo":return this._getSpatialReferenceInfo(t,r);case"_prepareSolutionItemsForEditing":return this._prepareSolutionItemsForEditing(t,r,i);case"_prepareSolutionItemsForStorage":return this._prepareSolutionItemsForStorage(t,r,i);case"_setSpatialReferenceInfo":return this._setSpatialReferenceInfo(t,r);case"_splitFilename":return this._splitFilename(t)}return null}_emptyTheStore(){this._store.set("solutionItemId",_.solutionItemId),this._store.set("defaultWkid",_.defaultWkid),this._store.set("solutionData",_.solutionData),this._store.set("templateEdits",_.templateEdits),this._store.set("featureServices",_.featureServices),this._store.set("spatialReferenceInfo",_.spatialReferenceInfo)}_flagStoreHasChanges(e){window.dispatchEvent(new CustomEvent("solutionStoreHasChanges",{detail:e,bubbles:!0,cancelable:!1,composed:!0})),this._hasChanges=e}_getCustomizableFeatureServices(e){return e.reduce(((e,t)=>("Feature Service"===t.type&&t.item.typeKeywords.indexOf("View Service")<0&&e.push(t),e)),[])}_getFeatureServices(e){return this._getCustomizableFeatureServices(e).map((e=>({name:e.item.title||e.item.name,enabled:f(e,"properties.service.spatialReference.wkid").toString().startsWith("{{params.wkid||")})))}_getItemsSharedWithThisGroup(e,t){return t.reduce(((t,r)=>(r.itemId!==e.itemId&&"Group"!==r.type&&t.push({id:r.itemId,title:r.item.name||r.item.title,isShared:(r.groups||[]).indexOf(e.itemId)>-1,shareItem:(r.groups||[]).indexOf(e.itemId)>-1,type:r.type,typeKeywords:r.item.typeKeywords}),t)),[])}_getResourceFilePaths(e,r,i){return function(e,t,r=[],i=0){return r.map((r=>{return{url:(s=e,n=t,a=r,c(s)+"content/items/"+n+"/resources/"+a),...w(r,i)};var s,n,a}))}(i,e,r.resources,s).map((e=>(e.updateType=t.None,e)))}_getResourceStorageName(e,t){let i=e;switch(t.type){case r.Data:i=`${i}_info_data`;break;case r.Info:i=`${i}_info`;break;case r.Metadata:i=`${i}_info_metadata`;break;case r.Resource:break;case r.Thumbnail:i=`${i}_info_thumbnail`}let s=t.filename;return t.type==r.Data&&s&&!function(e){const t=e.match(/\.([a-z]+)$/i);return!!t&&"|.json|.xml|.txt|.png|.pbf|.zip|.jpeg|.jpg|.gif|.bmp|.gz|.svg|.svgz|.geodatabase|".indexOf("|"+t[0]+"|")>=0}(s)&&(s+=".zip",i+="z"),i+"/"+(t.folder?t.folder+"/"+s:s)}_getSpatialReferenceInfo(e,t){const r={};return e.forEach((e=>{r[e.name]=e.enabled})),{enabled:void 0!==t,services:r,spatialReference:t||void 0}}async _prepareSolutionItemsForEditing(e,t,i){const s=[];t.forEach((n=>{n.resourceFilePaths=this._getResourceFilePaths(e,n,i.portal),s.push(n.resourceFilePaths.length>0?function(e,t){let i,s;return t.forEach((e=>{e.type===r.Thumbnail&&(i=e.url,s=e.filename)})),i?u(i,s,e):Promise.resolve(null)}(i,n.resourceFilePaths):Promise.resolve()),n.groupDetails="Group"===n.type?this._getItemsSharedWithThisGroup(n,t):[]}));const n=await Promise.all(s);return t.forEach(((e,t)=>{e.thumbnail=n[t]?n[t]:void 0})),Promise.resolve()}async _prepareSolutionItemsForStorage(e,r,i){const s=[],n=[];return r.forEach((r=>{r.resourceFilePaths.forEach((async o=>{const c=this._getResourceStorageName(r.itemId,o);switch(o.updateType){case t.Add:const{prefix:u,suffix:l}=this._splitFilename(c);r.resources.push(c),s.push({itemId:r.itemId,file:o.blob,folder:u,filename:l});break;case t.Update:n.push(new Promise((async t=>{try{await function(e,t,r,i){const s=t.split("/"),n=s.length>1?s.slice(0,s.length-1).join("/"):void 0;return h(o={id:e,prefix:n,name:s[s.length-1],resource:r,authentication:i}).then((function(e){var t=d(o)+"/content/users/"+e+"/items/"+o.id+"/updateResources";return o.params=m({file:o.resource,fileName:o.name,resourcesPrefix:o.prefix,text:o.content},o.params),void 0!==o.private&&(o.params.access=o.private?"private":"inherit"),a(t,o)}));var o}(e,c,o.blob,i)}catch(e){console.log("Unable to update "+c+" for item "+r.itemId+": "+JSON.stringify(e))}t()})));break;case t.Remove:n.push(new Promise((async t=>{try{await function(e,t,r){return h(i={id:e,resource:t,authentication:r}).then((function(e){var t=d(i)+"/content/users/"+e+"/items/"+i.id+"/removeResources";return i.params=m(m({},i.params),{resource:i.resource}),void 0!==i.deleteAll&&(i.params.deleteAll=i.deleteAll),a(t,i)}));var i}(e,c,i),r.resources=r.resources.filter((e=>e!==c))}catch(e){console.log("Unable to remove "+c+" for item "+r.itemId+": "+JSON.stringify(e))}t()})))}return Promise.resolve()})),delete r.resourceFilePaths,delete r.thumbnail,delete r.groupDetails})),Promise.all(n).then((async()=>{var t,r,n;return s.length>0&&await(t=s,r=e,n=i,new Promise((e=>{b(t,r,n).then((t=>{e(t.filter((e=>e.fetchedFromSource&&e.copiedToDestination)).map((e=>e.folder+"/"+e.filename)))}))}))),Promise.resolve()}))}_setSpatialReferenceInfo(e,t){const r="{{params.wkid||",i=this._getCustomizableFeatureServices(t);return e.enabled?(i.forEach((t=>{let i;e.services[t.item.title||t.item.name]?(i=`{{params.wkid||${e.spatialReference}}}`,p(t,"properties.service.spatialReference.wkid",i)):(i=f(t,"properties.service.spatialReference.wkid"),i.toString().startsWith(r)&&(i=i.toString().substring(15,i.length-2),p(t,"properties.service.spatialReference.wkid",i)))})),e.spatialReference):void i.forEach((e=>{const t=f(e,"properties.service.spatialReference.wkid");t.toString().startsWith(r)&&p(e,"properties.service.spatialReference.wkid",t.toString().substring(15,t.length-2))}))}_splitFilename(e){const t=e.split("/");return{prefix:t.length>1?t.slice(0,t.length-1).join("/"):void 0,suffix:t[t.length-1]}}}.Store;export{g as s}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
/*!
|
2
|
+
* Copyright 2022 Esri
|
3
|
+
* Licensed under the Apache License, Version 2.0
|
4
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
5
|
+
*/
|
6
|
+
import{r as i,h as t,H as s,g as e,c as h}from"./p-fa1ceaf9.js";import{g as a,l as o}from"./p-c0bf1d9f.js";import{q as l,g as n,e as d,f as c,i as r,j as v,c as p}from"./p-996c1ac5.js";import{d as u}from"./p-17946a3f.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-c1cf3ebc.js";import"./p-3d7cff5e.js";import"./p-a230b270.js";import"./p-a0300d31.js";const b=class{constructor(t){i(this,t),this.isMobile=void 0,this.layer=void 0,this.mapView=void 0,this.zoomAndScrollToSelected=void 0,this._cardLoading=!1,this._graphics=void 0,this._translations=void 0}async featureSelectionChange(i){const t=i.detail;this._cardLoading=!0;const s=t.length>0?await l(t,this.layer,[],!1,this.mapView.spatialReference):[];this._graphics=s.sort(((i,s)=>t.indexOf(i.getObjectId())-t.indexOf(s.getObjectId()))),this._cardLoading=!1}async layerSelectionChange(i){const t=i.detail[0];this.layer=await n(this.mapView,t)}async componentWillLoad(){await this._getTranslations()}render(){var i,e;const h=(null===(i=this._graphics)||void 0===i?void 0:i.length)>0?"":"display-none",a=(null===(e=this._graphics)||void 0===e?void 0:e.length)>0?"display-none":"";return t(s,{key:"343554e5408de156f1973f6d1e3daa8f1ba90675"},t("div",{key:"1852562a795002314236052351cab7c29d36854e",class:"overflow-auto height-full"},t("calcite-shell",{key:"684f013e4397bc50743526357384f782a88a5cd3",class:"position-relative "+h},t("div",{key:"db6d9f4be5448b5596b22f2a4f49c6baefa88466"},t("info-card",{key:"be5cec81cae7ca00a5b57c8d9590541f78b67fbd",graphics:this._graphics,isLoading:this._cardLoading,isMobile:this.isMobile,mapView:this.mapView}))),t("calcite-shell",{key:"df34e0ae6978298130970c60d21203f52fa32e4b",class:"position-relative "+a},t("div",{key:"9525a95dd21745e211ebf888da44eca6a6c17721",class:"padding-1"},t("calcite-notice",{key:"ade0e0a2f09bbe7b7bda6fdb2ce65ba81121e633",icon:"table",open:!0},t("div",{key:"d6fce2d657e23738720e004177c510c3273017f4",slot:"message"},this._translations.selectFeaturesToStart))))))}async _getTranslations(){const i=await a(this.el);this._translations=i[0]}get el(){return e(this)}};b.style=":host{display:block !important}.display-flex{display:flex}.display-none{display:none}.w-100{width:100%}.padding-bottom-1{padding-bottom:1rem}.padding-1{padding:1rem}.position-relative{position:relative}.focus-margin{margin:1px 1px 0px 1px}.overflow-auto{overflow:auto}.height-full{height:100%}card-manager{display:block}";const f=class{constructor(t){i(this,t),this.featureSelectionChange=h(this,"featureSelectionChange",7),this._ctrlIsPressed=!1,this._defaultFilterHonored=!1,this._defaultGlobalIdHonored=!1,this._defaultOidHonored=!1,this._loaded=!1,this._observerSet=!1,this._shiftIsPressed=!1,this._skipOnChange=!1,this.onTableNodeCreate=i=>{this._tableNode=i},this.defaultGlobalId=void 0,this.defaultLayerId=void 0,this.defaultOid=void 0,this.enableAutoRefresh=void 0,this.enableColumnReorder=!0,this.enableCSV=void 0,this.enableInlineEdit=void 0,this.enableShare=void 0,this.isMobile=void 0,this.mapHidden=void 0,this.mapInfo=void 0,this.mapView=void 0,this.onlyShowUpdatableLayers=void 0,this.selectedIds=[],this.shareIncludeEmbed=void 0,this.shareIncludeSocial=void 0,this.showNewestFirst=void 0,this.zoomAndScrollToSelected=void 0,this.zoomToScale=void 0,this._allIds=[],this._controlsThatFit=void 0,this._csvExporting=!1,this._fetchingData=!1,this._filterActive=!1,this._filterOpen=!1,this._layer=void 0,this._selectAllActive=!1,this._showHideOpen=!1,this._showOnlySelected=!1,this._toolInfos=void 0,this._translations=void 0}async defaultOidWatchHandler(){await this._handleDefaults()}async defaultGlobalIdWatchHandler(){await this._handleDefaults()}enableCSVWatchHandler(){var i;(null===(i=this._toolInfos)||void 0===i?void 0:i.length)>0&&this._initToolInfos()}enableInlineEditWatchHandler(){this._table&&(this._table.editingEnabled=this._editEnabled&&this.enableInlineEdit)}enableShareWatchHandler(){this._toolbar&&this._updateToolbar()}_controlsThatFitWatchHandler(){var i;const t=this._controlsThatFit?this._controlsThatFit.reduce(((i,t)=>(i.push(t.id),i)),[]):[];this._toolInfos=null===(i=this._toolInfos)||void 0===i?void 0:i.map((i=>{if(i&&this._controlsThatFit){const s=this._getId(i.icon);return i.isOverflow=t.indexOf(s)<0,i}}))}mapHiddenWatchHandler(){var i;(null===(i=this._toolInfos)||void 0===i?void 0:i.length)>0&&this._initToolInfos()}isMobileWatchHandler(){this._toolInfos||this.isMobile||this._initToolInfos()}async mapInfoWatchHandler(){this._resetColumnTemplates(),this._initLayerExpressions(),this._initToolInfos(),this._updateToolbar(),await this._sortTable()}async mapViewWatchHandler(){this._mapClickHandle&&this._mapClickHandle.remove(),this.mapView&&(this._floorExpression=void 0,this._updateShareUrl(),this._mapClickHandle=this.reactiveUtils.on((()=>this.mapView),"click",(i=>{this._mapClicked(i)})))}async _layerWatchHandler(){var i;this._fetchingData=!0,await(null===(i=this._layer)||void 0===i?void 0:i.when((async()=>{var i;this._definitionExpression=this._layer.definitionExpression,this._floorField=null===(i=this._layer.floorInfo)||void 0===i?void 0:i.floorField,this._updateFloorDefinitionExpression(),await this._resetTable(),this._initLayerExpressions(),this._updateShareUrl(),this._fetchingData=!1})))}async selectedIdsWatchHandler(){this._updateShareUrl(),this._validateEnabledActions(),this._selectAllActive&&this.selectedIds.length!==this._allIds.length&&(this._selectAllActive=!1),this.selectedIds.length>0&&(this._table.rowHighlightIds.removeAll(),this._table.rowHighlightIds.add(this.selectedIds[0]))}async selectionChanged(i){const t=i.detail.selectedFeature[0],s=t.getObjectId(),e=this._table;if(e.rowHighlightIds.length&&e.rowHighlightIds.removeAll(),e.rowHighlightIds.add(s),this.zoomAndScrollToSelected){const i=this._table.viewModel.getObjectIdIndex(s);this._table.scrollToIndex(i);const e=t.layer;let h;this.mapView.allLayerViews.toArray().some((i=>{if(i.layer.title===e.title&&"feature"===i.layer.type)return h=i,!0})),h&&await d([s],h,this.mapView,!0,void 0,this.zoomToScale)}}async editsComplete(i){const t=i.detail;"delete"!==t&&"add"!==t||(this._allIds=await c(this._layer)),await this._refresh()}async facilityChanged(i){this._floorFacility=i.detail,this._updateFloorDefinitionExpression()}async levelChanged(i){this._floorLevel=i.detail,this._updateFloorDefinitionExpression()}async siteChanged(i){this._floorSite=i.detail,this._updateFloorDefinitionExpression()}noLayersFound(){this._layer=void 0,this._allIds=[],this._clearSelection()}async componentWillLoad(){await this._getTranslations(),await this._initModules(),this._initToolInfos(),this._resizeObserver||(this._resizeObserver=new ResizeObserver((()=>this._onResize())))}render(){const i=this._fetchingData?"display-none":"",e=this._fetchingData?"":"display-none",h=this._allIds.length.toString(),a=this.selectedIds.length.toString(),o=this.isMobile?"height-full":"height-full-adjusted";return this._validateActiveActions(),t(s,{key:"9707f29bc69d0b56ae548b8004af6a0872105a40"},t("calcite-shell",{key:"e44e4b3dc934efec9698f6a9a24c21a1e1755e34"},this._getTableControlRow("header"),t("div",{key:"88e82fe17e8f6c2bf01f0353c30992c108c6b9f1",class:`width-full ${o}`},t("calcite-panel",{key:"463130e64abde593fafa0333daf6dabec116a33a",class:"height-full width-full"},t("calcite-loader",{key:"2aa6e9a0ebf5508253adfb5a6d71340e7de01df2",class:e,label:this._translations.fetchingData,scale:"l"}),t("div",{key:"0d50f1bed585ab19a31d6875fab1f0fbdbc957d3",class:i,ref:this.onTableNodeCreate})),this.isMobile?void 0:t("div",{class:"bottom-left text-color height-19"},this._translations.recordsSelected.replace("{{total}}",h).replace("{{selected}}",a)))),this._filterModal())}async componentDidLoad(){this.isMobile||this._observerSet||(this._resizeObserver.observe(this._toolbar),this._observerSet=!0),document.onclick=i=>this._handleDocumentClick(i),document.onkeydown=i=>this._handleKeyDown(i),document.onkeyup=i=>this._handleKeyUp(i)}componentDidRender(){this._updateToolbar()}async _initModules(){const[i,t,s]=await o(["esri/widgets/FeatureTable","esri/core/reactiveUtils","esri/widgets/FeatureTable/support/TableTemplate"]);this.FeatureTable=i,this.reactiveUtils=t,this.TableTemplate=s}_onResize(){this._updateToolbar()}_getTableControlRow(i){return t("div",{class:"display-flex border-bottom height-51",ref:i=>this._toolbar=i,slot:i},this._getActionBar(),this.isMobile?void 0:this._getDropdown("more-table-options"),this.enableShare&&!this.isMobile?this._getShare("share"):void 0)}_getActionBar(){const i=this.isMobile?"width-full":"",s=this.isMobile?"border-top":"";return t("calcite-action-bar",{class:i,expandDisabled:!0,expanded:!0,id:this._getId("bar"),layout:"horizontal"},t("div",{class:`border-end ${i} ${s}`,id:"solutions-map-layer-picker-container"},t("map-layer-picker",{appearance:"transparent",defaultLayerId:this.defaultLayerId,display:"inline-flex",height:50,isMobile:this.isMobile,mapView:this.mapView,onLayerSelectionChange:i=>{this._layerSelectionChanged(i)},onlyShowUpdatableLayers:this.onlyShowUpdatableLayers,placeholderIcon:"layers",scale:"l",showSingleLayerAsLabel:!0,showTables:!0,type:"dropdown"})),this.isMobile?void 0:this._getActions())}_getActions(){const i=this._getActionItems();return null==i?void 0:i.reduce(((i,s)=>(s&&!s.isOverflow&&i.push(s.isDanger?this._getDangerAction(s.icon,s.label,s.func,s.disabled):s.isSublist?t("calcite-dropdown",{closeOnSelectDisabled:!0,id:this._getId(s.icon),onCalciteDropdownBeforeClose:()=>this._forceShowHide(),ref:i=>this._showHideDropdown=i},this._getAction(s.active,this._showHideOpen?"chevron-down":s.icon,s.indicator,s.label,s.func,s.disabled,s.loading,"trigger"),this._showHideOpen?this._getFieldlist():void 0):this._getAction(s.active,s.icon,s.indicator,s.label,s.func,s.disabled,s.loading)),i)),[])}_getFieldlist(){return this._columnsInfo?t("calcite-dropdown-group",{"selection-mode":"multiple"},Object.keys(this._columnsInfo).map((i=>t("calcite-dropdown-item",{id:i,onClick:i=>{const t=i.target;this._columnsInfo[t.id]=t.selected,t.selected?this._table.showColumn(t.id):this._table.hideColumn(t.id)},selected:this._columnsInfo[i]},i)))):void 0}_validateEnabledActions(){var i;const t=this._featuresSelected(),s=["zoom-to-object","trash","erase","selected-items-filter"];null===(i=this._toolInfos)||void 0===i||i.forEach((i=>{i&&s.indexOf(i.icon)>-1&&(i.disabled=!t)}))}_validateActiveActions(){var i;const t=["filter","list-check-all","selected-items-filter"];null===(i=this._toolInfos)||void 0===i||i.forEach((i=>{i&&t.indexOf(i.icon)>-1&&("filter"===i.icon&&(i.indicator=this._filterActive),"list-check-all"===i.icon&&(i.active=this._selectAllActive),"selected-items-filter"===i.icon&&(i.active=this._showOnlySelected))}))}_initToolInfos(){const i=this._featuresSelected(),t=this._featuresEmpty(),s=this._hasFilterExpressions();this._translations&&(this._toolInfos=[this.mapHidden?void 0:{active:!1,icon:"zoom-to-object",indicator:!1,label:this._translations.zoom,func:()=>this._zoom(),disabled:!i,isOverflow:!1},s?{active:!1,icon:"filter",indicator:!1,label:this._translations.filters,func:()=>this._toggleFilter(),disabled:!1,isOverflow:!1}:void 0,this._deleteEnabled?{active:void 0,icon:"trash",indicator:void 0,label:void 0,func:void 0,disabled:!i,isDanger:!0,isOverflow:!1}:void 0,{active:!1,icon:"erase",indicator:!1,label:this._translations.clearSelection,func:()=>this._clearSelection(),disabled:!i,isOverflow:!1},{active:!1,icon:"selected-items-filter",indicator:!1,label:this._showOnlySelected?this._translations.showAll:this._translations.showSelected,func:()=>this._toggleShowSelected(),disabled:!i,isOverflow:!1},{active:!1,icon:"list-check-all",indicator:!1,func:()=>this._selectAll(),label:this._translations.selectAll,disabled:t,isOverflow:!1},{active:!1,icon:"compare",indicator:!1,func:()=>this._switchSelected(),label:this._translations.switchSelected,disabled:t,isOverflow:!1},{active:!1,icon:"refresh",indicator:!1,func:()=>this._refresh(),label:this._translations.refresh,disabled:!1,isOverflow:!1},this.enableCSV?{active:!1,icon:"export",indicator:!1,func:()=>{this._exportToCSV()},label:this._translations.exportCSV,loading:this._csvExporting,disabled:t,isOverflow:!1}:void 0,{active:!1,icon:this._showHideOpen?"chevron-down":"chevron-right",indicator:!1,func:()=>this._toggleShowHide(),label:this._translations.showHideColumns,disabled:!1,isOverflow:!1,isSublist:!0}],this._defaultVisibleToolSizeInfos=void 0)}_updateFloorDefinitionExpression(){if(this._floorField&&this._floorLevel){const i=`${this._floorField} = '${this._floorLevel}'`,t=this._layer.definitionExpression;this._layer.definitionExpression=(null==t?void 0:t.indexOf(this._floorExpression))>-1?t.replace(this._floorExpression,i):t?`${t} AND (${i})`:i,this._floorExpression=i}}_featuresSelected(){return this.selectedIds.length>0}_featuresEmpty(){return 0===this._allIds.length}_hasFilterExpressions(){var i,t,s;let e;return(null===(t=null===(i=this.mapInfo)||void 0===i?void 0:i.filterConfig)||void 0===t?void 0:t.layerExpressions)&&(null===(s=this._layer)||void 0===s?void 0:s.id)&&(e=this.mapInfo.filterConfig.layerExpressions.filter((i=>i.id===this._layer.id))),(null==e?void 0:e.length)>0}_updateToolbar(){this._timeout&&clearTimeout(this._timeout),!this.isMobile&&this._toolbar&&this._toolInfos&&(this._timeout=setTimeout((()=>{clearTimeout(this._timeout),this._setToolbarSizeInfos();const i=this._toolbar.offsetWidth;let t=this._toolbarSizeInfos.reduce(((i,t)=>i+t.width),0);const s=["solutions-more","solutions-map-layer-picker-container","solutions-action-share"];if(t>i){if(this._toolbarSizeInfos.length>0){const e=[...this._toolbarSizeInfos].reverse().reduce(((e,h)=>(s.indexOf(h.id)<0&&(t>i?t-=h.width:e.push(h)),e)),[]).reverse();this._setControlsThatFit(e,s)}}else if(this._defaultVisibleToolSizeInfos){const e=this._toolbarSizeInfos.reduce(((i,t)=>(i.push(t.id),i)),[]);let h=!1;const a=[...this._defaultVisibleToolSizeInfos].reduce(((a,o)=>(!h&&s.indexOf(o.id)<0&&(e.indexOf(o.id)>-1||t+o.width<=i)?(e.indexOf(o.id)<0&&(t+=o.width),a.push(o)):s.indexOf(o.id)<0&&t+o.width>i&&(h=!0),a)),[]);this._setControlsThatFit(a,s)}}),250))}_setControlsThatFit(i,t){let s=JSON.stringify(i)!==JSON.stringify(this._controlsThatFit);document.getElementById("solutions-action-bar").childNodes.forEach((i=>{t.indexOf(i.id)<0&&!s&&(s=this._controlsThatFit.map((i=>i.id)).indexOf(i.id)<0)})),s&&(this._controlsThatFit=[...i])}_setToolbarSizeInfos(){let i=!1;this._toolbarSizeInfos=[],this._toolbar.childNodes.forEach(((t,s)=>{0===s?t.childNodes.forEach((t=>{this._toolbarSizeInfos.push({id:t.id,width:t.offsetWidth}),i||(i=t.offsetWidth>0)})):t.referenceElement||(this._toolbarSizeInfos.push({id:t.id,width:t.offsetWidth}),i||(i=t.offsetWidth>0))})),i&&!this._defaultVisibleToolSizeInfos&&(this._defaultVisibleToolSizeInfos=[...this._toolbarSizeInfos])}_getActionItems(){var i;return null===(i=this._toolInfos)||void 0===i?void 0:i.filter((i=>i&&!i.isOverflow))}_getDropdown(i){const s=this._getDropdownItems();return s.length>0?t("calcite-dropdown",{closeOnSelectDisabled:!0,disabled:void 0===this._layer,id:"solutions-more",onCalciteDropdownBeforeClose:()=>this._forceShowHide(),ref:i=>this._moreDropdown=i},t("calcite-action",{appearance:"solid",id:i,label:"",onClick:()=>this._closeShowHide(),slot:"trigger",text:""},t("calcite-button",{appearance:"transparent",iconEnd:"chevron-down",kind:"neutral"},this._translations.more)),t("calcite-dropdown-group",{"selection-mode":"none"},s.map((i=>t("calcite-dropdown-group",{class:i.disabled?"disabled":"",selectionMode:i.disabled?"none":"single"},t("calcite-dropdown-item",{disabled:i.loading,iconStart:i.isSublist&&this._showHideOpen?"chevron-down":i.loading?"":i.icon,id:"solutions-subset-list",onClick:i.func},i.loading?t("div",{class:"display-flex"},t("calcite-loader",{inline:!0,label:i.label,scale:"m"}),i.label):i.label))))),this._showHideOpen?this._getFieldlist():void 0):void 0}_getDropdownItems(){var i;return null===(i=this._toolInfos)||void 0===i?void 0:i.filter((i=>i&&i.isOverflow))}_getAction(i,s,e,h,a,o,l,n){const d=void 0===this._layer||o;return t("div",{class:"display-flex",id:this._getId(s),slot:n},t("calcite-action",{active:i,appearance:"solid",disabled:d,icon:s,id:s,indicator:e,label:h,loading:l,onClick:a,text:h,textEnabled:!0}),this._getToolTip("bottom",s,h))}_getShare(i){return t("div",{class:"share-action",id:this._getId(i)},t("instant-apps-social-share",{autoUpdateShareUrl:!1,class:"instant-app-share",embed:this.shareIncludeEmbed,popoverButtonIconScale:"s",ref:i=>this._shareNode=i,scale:"m",shareButtonColor:"neutral",shareButtonType:"action",socialMedia:this.shareIncludeSocial,view:this.mapView}),this._getToolTip("bottom",i,this._translations.share))}_updateShareUrl(){var i,t,s,e;const h=null===(i=this._shareNode)||void 0===i?void 0:i.shareUrl;if(!h)return;const a=new URL(h);(null===(t=this.mapInfo)||void 0===t?void 0:t.id)?a.searchParams.set("webmap",this.mapInfo.id):a.searchParams.delete("webmap"),(null===(s=this._layer)||void 0===s?void 0:s.id)?a.searchParams.set("layer",this._layer.id):a.searchParams.delete("layer"),(null===(e=this.selectedIds)||void 0===e?void 0:e.length)>0?a.searchParams.set("oid",this.selectedIds.join(",")):a.searchParams.delete("oid"),this._shareNode.shareUrl=a.href}_getToolTip(i,s,e){return document.getElementById(s)?t("calcite-tooltip",{placement:i,"reference-element":s},t("span",null,e)):void 0}_getId(i){return`solutions-action-${i}`}_getDangerAction(i,s,e,h){const a=void 0===this._layer||h;return t("div",{class:"display-flex",id:this._getId(i)},"trash"===i?t("delete-button",{buttonType:"action",class:"display-flex",disabled:a,icon:i,ids:this._getIds(),layer:this._layer}):t("calcite-action",{appearance:"solid",disabled:a,id:i,onClick:e,text:""},t("calcite-button",{appearance:"transparent",iconStart:i,kind:"danger"},s)),this._getToolTip("bottom",i,s))}_getIds(){return this._table.highlightIds.toArray()}async _getTable(i,t){this._layer&&(await this._layer.when((()=>{this._table=new this.FeatureTable({autoRefreshEnabled:this.enableAutoRefresh,layer:this._layer,view:this.mapView,columnReorderingEnabled:this.enableColumnReorder,editingEnabled:this._editEnabled&&this.enableInlineEdit,highlightEnabled:!0,multiSortEnabled:!1,visibleElements:{header:!1,menu:!1},tableTemplate:{columnTemplates:t},container:i})})),await this._table.when((()=>{this._table.highlightIds.on("change",(i=>{this._handleOnChange(i)}))})))}async _handleOnChange(i){const t=[...this._table.highlightIds.toArray()];if(this._skipOnChange)this._skipOnChange=!1;else{if(this._ctrlIsPressed||this._shiftIsPressed){if(this._ctrlIsPressed)this.selectedIds=t.reverse();else if(this._shiftIsPressed)if(this._skipOnChange=!0,this._previousCurrentId=this._currentId,this._currentId=[...t].reverse()[0],1===t.length)this._skipOnChange=!1;else if(this._previousCurrentId!==this._currentId){const i=this._table.activeSortOrders.reduce(((i,t)=>(i.push(`${t.fieldName} ${t.direction}`),i)),[]),s=await r(0,this._layer,[],i);let e=!1;const h=this._table.viewModel.getObjectIdIndex(this._previousCurrentId),a=this._table.viewModel.getObjectIdIndex(this._currentId);this._skipOnChange=(h<a?h:a)+1!==(a>h?a:h);const o=s.reduce(((i,t)=>{const s=t;return s===this._currentId||s===this._previousCurrentId?(e=!e,i.indexOf(s)<0&&i.push(s)):e&&i.indexOf(s)<0&&i.push(s),i}),[]),l=h<a?o.reverse():o;this.selectedIds=[...new Set([...l,...this.selectedIds])],this._table.highlightIds.addMany(this.selectedIds.filter((i=>t.indexOf(i)<0)))}}else if(this.selectedIds.length>0){this._skipOnChange=!0;const s=this.selectedIds.length>1&&1===i.removed.length?i.removed:t.filter((i=>this.selectedIds.indexOf(i)<0));this._clearSelection(),this.selectedIds=[...s],s.length>0?this._table.highlightIds.add(s[0]):this._skipOnChange=!1}else this.selectedIds=t.reverse();this._finishOnChange()}this._currentId=[...this._table.highlightIds.toArray()].reverse()[0]}_finishOnChange(){this._showOnlySelected&&(this._featuresSelected()?this._table.filterBySelection():this._toggleShowSelected()),this.featureSelectionChange.emit(this.selectedIds)}_resetColumnTemplates(){var i,t;const s=this._getColumnTemplates(null===(i=this._layer)||void 0===i?void 0:i.id,null===(t=this._layer)||void 0===t?void 0:t.fields),e=null==s?void 0:s.some(((i,t)=>{var s;return JSON.stringify(null===(s=this._table)||void 0===s?void 0:s.tableTemplate.columnTemplates[t])!==JSON.stringify(i)}));if(this._table&&s&&(e||!this._columnsInfo)){this._table.tableTemplate=new this.TableTemplate({columnTemplates:s});const i=s.map((i=>i.fieldName));this._initColumnsInfo(i)}}async _resetTable(){var i;if(this._loaded=!1,this._clearSelection(),this._allIds=await c(this._layer),this._table)this._table.view=this.mapView,this._table.layer=this._layer;else{const t=this._getColumnTemplates(this._layer.id,null===(i=this._layer)||void 0===i?void 0:i.fields);await this._getTable(this._tableNode,t)}await this._initLayerRefresh(),this._checkEditEnabled(),this._table.editingEnabled=this._editEnabled&&this.enableInlineEdit,await this._table.when(),setTimeout((()=>{this._loaded||(console.log(`table.state: ${this._table.state}`),this.finishLoading())}),1e3),await this.reactiveUtils.once((()=>"loaded"===this._table.state)).then((async()=>{await this.finishLoading()}))}async finishLoading(){try{this._loaded=!0,this._table.highlightIds.removeAll(),this._table.clearSelectionFilter(),this._resetColumnTemplates(),this._showOnlySelected=!1,await this._handleDefaults(),await this._sortTable(),this._initToolInfos(),this._updateToolbar()}catch(i){console.log(i)}}async _initLayerRefresh(){this._refreshHandle&&this._refreshHandle.remove(),this._refreshHandle=this._layer.on("refresh",(i=>{i.dataChanged&&(this._skipOnChange=!0,this._updateAllIds())}))}async _updateAllIds(){this._allIds=await c(this._layer),this.selectedIds=this.selectedIds.filter((i=>this._allIds.indexOf(i)>-1)),await this._refresh()}async _handleDefaults(){var i,t;if(!this._defaultOidHonored&&(null===(i=this.defaultOid)||void 0===i?void 0:i.length)>0&&this.defaultOid[0]>-1&&this._table&&(await this._selectDefaultFeature(this.defaultOid),this._defaultOidHonored=!0,this.defaultOid=void 0,this._showOnlySelected=!1,this._toggleShowSelected()),!this._defaultGlobalIdHonored&&(null===(t=this.defaultGlobalId)||void 0===t?void 0:t.length)>0&&this._table){const i=await v(this.defaultGlobalId,this._layer),t=(null==i?void 0:i.length)>0?i.map((i=>i.getObjectId())):void 0;t&&await this._selectDefaultFeature(t),this._defaultGlobalIdHonored=!0,this.defaultGlobalId=void 0,this._showOnlySelected=!1,this._toggleShowSelected()}}_initColumnsInfo(i){var t,s;const e=null===(t=this._table)||void 0===t?void 0:t.columns.reduce(((t,s)=>((!i||(null==i?void 0:i.indexOf(s.name))>-1)&&(t[s.name]=!s.hidden),t)),{}),h=null===(s=this._table)||void 0===s?void 0:s.columns.map((i=>i.name));(i?i.filter((i=>h.indexOf(i)<0)):[]).forEach((i=>{e[i]=!0})),this._columnsInfo=i?i.reduce(((i,t)=>(i[t]=e[t],i)),{}):e}async _selectDefaultFeature(i){i.length>0&&this._table.highlightIds.addMany(i)}_checkEditEnabled(){this._editEnabled=this._layer.editingEnabled&&this._layer.capabilities.operations.supportsUpdate,this._deleteEnabled=this._layer.editingEnabled&&this._layer.capabilities.operations.supportsDelete}async _sortTable(){var i,t,s,e,h,a;let o,l=null===(i=this._layer)||void 0===i?void 0:i.objectIdField,n="desc";(null===(e=null===(s=null===(t=this.mapInfo)||void 0===t?void 0:t.layerOptions)||void 0===s?void 0:s.layers)||void 0===e?void 0:e.length)>0&&(null===(h=this._layer)||void 0===h?void 0:h.id)&&(o=this.mapInfo.layerOptions.layers.filter((i=>i.id===this._layer.id)),o&&o.length>0&&(o=o[0],o.sortField&&(null===(a=o.fields)||void 0===a?void 0:a.includes(o.sortField))&&(l=o.sortField),n=(null==o?void 0:o.sortOrder)?o.sortOrder:"desc")),this._table&&this._layer&&(await this._table.when(),await this._layer.when((()=>{this._table.sortColumn(l,n)})))}_forceShowHide(){this._showHideDropdown&&(this._showHideDropdown.open=this._showHideOpen),this._moreDropdown&&(this._moreDropdown.open=this._showHideOpen)}_toggleShowHide(){this._showHideOpen=!this._showHideOpen}_closeShowHide(){this._showHideOpen=!1}_handleDocumentClick(i){var t;const s=null===(t=i.target)||void 0===t?void 0:t.id;this._showHideOpen&&Object.keys(this._columnsInfo).indexOf(s)<0&&"solutions-subset-list"!==s&&"chevron-right"!==s&&(this._closeShowHide(),this._moreDropdown&&(this._moreDropdown.open=!1),this._showHideDropdown&&(this._showHideDropdown.open=!1))}_handleKeyDown(i){this._ctrlIsPressed=i.ctrlKey,this._shiftIsPressed=i.shiftKey}_handleKeyUp(i){this._ctrlIsPressed=i.ctrlKey,this._shiftIsPressed=i.shiftKey}_filterModal(){var i,s,e;return t("calcite-modal",{"aria-labelledby":"modal-title",class:"modal",kind:"brand",onCalciteModalClose:()=>{this._closeFilter()},open:this._filterOpen,widthScale:"s"},t("div",{class:"display-flex align-center",id:"modal-title",slot:"header"},null===(s=null===(i=this._translations)||void 0===i?void 0:i.filter)||void 0===s?void 0:s.replace("{{title}}",null===(e=this._layer)||void 0===e?void 0:e.title)),t("div",{slot:"content"},t("instant-apps-filter-list",{autoUpdateUrl:!1,closeBtn:!0,closeBtnOnClick:async()=>this._closeFilter(),comboboxOverlayPositioning:"fixed",layerExpressions:this._layerExpressions,onFilterListReset:()=>this._handleFilterListReset(),onFilterUpdate:()=>this._handleFilterUpdate(),ref:i=>this._filterList=i,view:this.mapView,zoomBtn:!1})))}_handleFilterListReset(){this._filterActive=!1,this._updateShareUrl()}_handleFilterUpdate(){const i=this._layer.definitionExpression;if(this._floorExpression){const t=new RegExp(`${this._floorField} = ['].+[']`,"gm");this._layer.definitionExpression=i&&this._floorField&&i.indexOf(`${this._floorField} = '`)>-1?i.replace(t,this._floorExpression):i?`${i} AND (${this._floorExpression})`:this._floorExpression}this._filterActive=this._definitionExpression!==this._layer.definitionExpression&&(!this._floorExpression||this._layer.definitionExpression!==this._floorExpression),this._updateShareUrl()}async _closeFilter(){this._filterOpen&&(this._allIds=await c(this._layer),this._filterOpen=!1)}async _mapClicked(i){const t={include:this._layer},s=await this.mapView.hitTest(i.screenPoint,t);s.results.length>0?(s.results.forEach((i=>{const t=i.graphic.getObjectId();this._table.highlightIds.indexOf(t)<0&&this._table.highlightIds.add(t)})),this._showOnlySelected&&this._table.filterBySelection()):this._clearSelection()}_selectAll(){const i=this._allIds;this._table.highlightIds.removeAll(),this._skipOnChange=!0,this._table.highlightIds.addMany(i),this.selectedIds=i,this._finishOnChange(),this._selectAllActive=!0}_toggleShowSelected(){this._showOnlySelected=!this._showOnlySelected,this._showOnlySelected?this._table.filterBySelection():this._table.clearSelectionFilter()}_clearSelection(){var i,t;this.selectedIds=[],null===(i=this._table)||void 0===i||i.highlightIds.removeAll(),null===(t=this._table)||void 0===t||t.rowHighlightIds.removeAll(),this._finishOnChange()}_toggleFilter(){this._filterOpen=!this._filterOpen}_initLayerExpressions(){var i,t;const s=null===(t=null===(i=this.mapInfo)||void 0===i?void 0:i.filterConfig)||void 0===t?void 0:t.layerExpressions;this._layerExpressions=s?s.filter((i=>{var t;return i.id===(null===(t=this._layer)||void 0===t?void 0:t.id)})):[],this._filterList.layerExpressions=this._layerExpressions,this._filterActive=this._layerExpressions.filter((i=>i.expressions.filter((i=>i.active)).length>0)).length>0}_switchSelected(){const i=[...this.selectedIds];this._table.highlightIds.removeAll();const t=this._allIds.reduce(((t,s)=>(i.indexOf(s)<0&&t.push(s),t)),[]).sort(((i,t)=>i-t));this._skipOnChange=!0,this._table.highlightIds.addMany(t),this.selectedIds=t,this._finishOnChange()}async _exportToCSV(){const i={},t=this._table.highlightIds.toArray();i[this._layer.id]={selectionSetNames:[this._layer.title],ids:t,layer:this._layer};const s=this._table.columns.toArray().reduce(((i,t)=>(t.hidden||i.push(t.name.toLocaleLowerCase()),i)),[]);this._updateToolInfoLoading("export",!0),this._csvExporting=!0,await u(null,i,!1,!1,!0,s,!0,!0),this._updateToolInfoLoading("export",!1),this._csvExporting=!1}_updateToolInfoLoading(i,t){this._toolInfos.some((s=>{if((null==s?void 0:s.icon)===i)return s.loading=t,!0}))}async _refresh(){await this._table.refresh(),this.featureSelectionChange.emit(this.selectedIds)}async _zoom(){if(this._layer){const i=await p(this.mapView,this._layer.id);await d(this.selectedIds,i,this.mapView,!0,void 0,this.zoomToScale)}}async _layerSelectionChanged(i){var t;const s=i.detail[0];if(s!==(null===(t=this._layer)||void 0===t?void 0:t.id)||this._featuresEmpty()){this._fetchingData=!0;const i=await n(this.mapView,s);await i.when((()=>{this._layer=i}))}this._fetchingData=!1}_getColumnTemplates(i,t){var s,e;let h;null===(e=null===(s=this.mapInfo)||void 0===s?void 0:s.layerOptions)||void 0===e||e.layers.some((t=>{if(t.id===i)return h=t,!0}));const a=(null==h?void 0:h.fields)&&(null==h?void 0:h.fieldOrder)?h.fieldOrder.filter((i=>h.fields.indexOf(i)>-1)):void 0;let o;return t&&(o=h&&(null==h?void 0:h.fields)?t.reduce(((i,t)=>{if(h.fields.indexOf(t.name)>-1){const s={type:"field",fieldName:t.name,label:t.alias,menuConfig:this._getMenuConfig(t.name)};i.push(s)}return i}),[]).sort(this._sortFields.bind(this,null==h?void 0:h.fieldOrder)):t.map((i=>({type:"field",fieldName:i.name,label:i.alias,menuConfig:this._getMenuConfig(i.name)})))),a?null==o?void 0:o.sort(this._sortFields.bind(this,a)):o}_sortFields(i,t,s){return(null==i?void 0:i.indexOf(t.fieldName))-i.indexOf(s.fieldName)}_getMenuConfig(i){return{items:[{label:this._translations.hideField,icon:"view-hide",autoCloseMenu:!0,clickFunction:()=>{this._handleHideClick(i)}}]}}_handleHideClick(i){this._columnsInfo[i]=!1,this._table.hideColumn(i),this._table.tableTemplate.columnTemplates.forEach((t=>{t.fieldName===i&&(t.visible=!1)}))}async _getTranslations(){const i=await a(this.el);this._translations=i[0]}get el(){return e(this)}static get watchers(){return{defaultOid:["defaultOidWatchHandler"],defaultGlobalId:["defaultGlobalIdWatchHandler"],enableCSV:["enableCSVWatchHandler"],enableInlineEdit:["enableInlineEditWatchHandler"],enableShare:["enableShareWatchHandler"],_controlsThatFit:["_controlsThatFitWatchHandler"],mapHidden:["mapHiddenWatchHandler"],isMobile:["isMobileWatchHandler"],mapInfo:["mapInfoWatchHandler"],mapView:["mapViewWatchHandler"],_layer:["_layerWatchHandler"],selectedIds:["selectedIdsWatchHandler"]}}};f.style=':host{display:block}.height-full{height:100%}.height-full-adjusted{height:calc(100% - 20px)}.width-full{width:100%}.display-flex{display:flex}.table-border{border:1px solid var(--calcite-color-border-2)}.border-end{border-inline-end:1px solid var(--calcite-color-border-2)}.border-bottom{border-bottom:1px solid var(--calcite-color-border-2)}.padding-5{padding:5px}.padding-end-1{padding-inline-end:1rem}.height-51{height:51px}.height-50-px{height:50px}.bottom-left{position:absolute;left:0;bottom:0;padding-left:5px}html[dir="rtl"] .bottom-left{position:absolute;right:0;bottom:0;padding-right:5px}.height-19{height:19px}.background{background-color:var(--calcite-color-background)}.text-color{color:var(--calcite-color-text-1)}.align-center{align-items:center}.danger-color{color:var(--calcite-color-status-danger)}.esri-feature-table vaadin-grid{border:none !important}vaadin-grid-cell-content{font-size:14px !important;color:var(--calcite-color-text-3) !important}.share-action{position:absolute;right:0}html[dir="rtl"] .share-action{left:0}.disabled{cursor:default !important;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled);pointer-events:none}.instant-app-share{height:50px !important;display:inline-flex}.border-top{border-top:1px solid var(--calcite-color-border-2)}.modal{--calcite-modal-content-padding:0}.esri-feature-table__table-container{height:100%}';const m=class{constructor(t){i(this,t),this.mapChanged=h(this,"mapChanged",7),this.beforeMapChanged=h(this,"beforeMapChanged",7),this._defaultWebmapHonored=!1,this._loadedId="",this.appProxies=void 0,this.defaultWebmapId="",this.enableHome=void 0,this.enableLegend=void 0,this.enableFloorFilter=void 0,this.enableFullscreen=void 0,this.enableSingleExpand=!0,this.enableSearch=void 0,this.enableBasemap=void 0,this.basemapConfig=void 0,this.hidden=void 0,this.homeZoomIndex=3,this.homeZoomPosition="top-left",this.homeZoomToolsSize="m",this.mapInfos=[],this.mapWidgetsIndex=0,this.mapWidgetsPosition="top-right",this.mapWidgetsSize="m",this.mapView=void 0,this.stackTools=!0,this.theme=void 0,this.toolOrder=void 0,this._searchConfiguration=void 0,this._webMapInfo=void 0}enableHomeWatchHandler(){this._initHome()}async mapInfoChange(i){await this._loadMap(i.detail)}async componentWillLoad(){await this._initModules()}render(){var i,e;const h=this.hidden?"visibility-hidden-1":"",a="dark"===this.theme?"calcite-mode-dark":"calcite-mode-light",o=(null===(i=this.mapInfos)||void 0===i?void 0:i.length)>1?"":"display-none",l=(null===(e=this.mapInfos)||void 0===e?void 0:e.length)>1?"map-height":"height-full";return t(s,{key:"4f5c0cd408f92856ceb2ba281a02856064ef6a5a"},t("map-picker",{key:"f69742384dc5ba13bbf257592cc8c35de77590f0",class:o,mapInfos:this.mapInfos,ref:i=>this._mapPicker=i}),t("div",{key:"3ddddf3f674d49ae59fe627af1c67ec59718c9a3",class:`${l} ${h}`,ref:i=>this._mapDiv=i}),t("map-tools",{key:"6cb9518e74af0594ab6b657f0caec3598c250cb2",basemapConfig:this.basemapConfig,class:`box-shadow ${a}`,enableBasemap:this.enableBasemap,enableFloorFilter:this.enableFloorFilter,enableFullscreen:this.enableFullscreen,enableHome:this.enableHome,enableLegend:this.enableLegend,enableSearch:this.enableSearch,enableSingleExpand:this.enableSingleExpand,homeZoomToolsSize:this.homeZoomToolsSize,mapView:this.mapView,mapWidgetsSize:this.mapWidgetsSize,position:this.mapWidgetsPosition,ref:i=>this._mapTools=i,searchConfiguration:this._searchConfiguration,stackTools:this.stackTools,toolOrder:this.toolOrder}))}async _initModules(){const[i,t,s,e]=await o(["esri/WebMap","esri/views/MapView","esri/widgets/Home","esri/config"]);this.WebMap=i,this.MapView=t,this.Home=s,this.esriConfig=e}async _loadMap(i){var t;const s=!this._defaultWebmapHonored&&this.defaultWebmapId,e=null===(t=this.mapInfos)||void 0===t?void 0:t.filter((i=>i.id===this.defaultWebmapId)),h=JSON.stringify(i)!==JSON.stringify(this._webMapInfo);this._webMapInfo=s&&e?e[0]:!(null==i?void 0:i.id)&&this.mapInfos.length>0?this.mapInfos[0]:i;const a=this._webMapInfo.id,o=s&&(null==i?void 0:i.id)===this.defaultWebmapId;if(this._loadedId!==a&&!s||o){const i=new this.WebMap({portalItem:{id:a}});this.appProxies&&(await i.load(),await(l=i,n=this.esriConfig,d=this.appProxies,d&&d.forEach((i=>{l.allLayers.forEach((t=>{t&&t.url===i.sourceUrl&&(t.url=i.proxyUrl,t.portalItem&&t.portalItem.when((()=>{t.portalItem.url=i.proxyUrl})),n.request?.interceptors?.push({urls:i.sourceUrl,before:t=>{t.url&&t.url===i.sourceUrl&&(t.url=i.proxyUrl)}}))}))})),l)),this.mapView=new this.MapView({container:this._mapDiv,map:i,resizeAlign:"center"}),this._loadedId=a,this._searchConfiguration=this._webMapInfo.searchConfiguration,this.beforeMapChanged.emit(),await this.mapView.when((()=>{this._initHome(),this.mapView.ui.add(this._mapTools,{position:this.mapWidgetsPosition,index:this.mapWidgetsIndex}),this._defaultWebmapHonored=!!o||this._defaultWebmapHonored,this.mapChanged.emit({id:a,mapView:this.mapView})}))}else s?(this._defaultWebmapHonored=!0,this._mapPicker.setMapByID(a)):h&&(this._searchConfiguration=this._webMapInfo.searchConfiguration,this.beforeMapChanged.emit(),this.mapChanged.emit({id:a,mapView:this.mapView}));var l,n,d}_initHome(){if(this.enableHome){this._homeWidget=new this.Home({view:this.mapView}),this.mapView.ui.add(this._homeWidget,{position:this.homeZoomPosition,index:this.homeZoomIndex});const i="s"===this.homeZoomToolsSize?"32px":"m"===this.homeZoomToolsSize?"40px":"48px";this._homeWidget.domNode.style.height=i,this._homeWidget.domNode.style.width=i}else this._homeWidget&&this.mapView.ui.remove(this._homeWidget)}get el(){return e(this)}static get watchers(){return{enableHome:["enableHomeWatchHandler"]}}};m.style=":host{display:block;--calcite-label-margin-bottom:0;--calcite-block-padding:0}.map-height{height:calc(100% - 51px)}.height-full{height:100%}.box-shadow{box-shadow:none !important}.visibility-hidden-1{visibility:hidden;height:1px;}.display-none{display:none}";export{b as card_manager,f as layer_table,m as map_card}
|
@@ -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 e,F as a,g as h}from"./p-fa1ceaf9.js";import{l as o,g as l}from"./p-ffd41e25.js";import{g as c,a as n,b as r,c as d,h as u,d as p,q as f}from"./p-996c1ac5.js";import"./p-6a68306c.js";import"./p-d4056c1c.js";import"./p-c1cf3ebc.js";const m=class{constructor(s){t(this,s),this.togglePanel=i(this,"togglePanel",7),this.center=void 0,this.defaultWebmap="",this.description=void 0,this.enableAnonymousAccess=void 0,this.enableAnonymousComments=void 0,this.enableComments=void 0,this.enableHome=!0,this.enableLogin=void 0,this.enableNewReports=void 0,this.enableSearch=!0,this.enableZoom=!0,this.isMobile=void 0,this.layerExpressions=[],this.layerId=void 0,this.level=void 0,this.loginTitle=void 0,this.mapInfos=[],this.mapView=void 0,this.objectId=void 0,this.reportButtonText=void 0,this.reportingOptions=void 0,this.reportsHeader=void 0,this.reportSubmittedMessage=void 0,this.searchConfiguration=void 0,this.showComments=void 0,this.theme="light",this.zoomToScale=void 0,this._featureCreationFailedErrorMsg=void 0,this._filterActive=!1,this._filterOpen=!1,this._flowItems=[],this._hasValidLayers=!1,this._loadingFeatureDetails=void 0,this._mapInfo=void 0,this._reportSubmitted=!1,this._selectedLayerName=void 0,this._showSubmitCancelButton=!1,this._showLoadingIndicator=!1,this._sidePanelCollapsed=!1,this._translations=void 0,this._updatedProgressBarStatus=.25,this._updatedSorting=void 0,this._updatedSortOption="sortNewest",this._commentSubmitted=!1,this._addingCommentFailed=!1}async isMobileWatchHandler(){this._sidePanelCollapsed=!1}async mapViewWatchHandler(){await this.mapView.when((async()=>{await this.setMapView()}))}async componentWillLoad(){var t;this._urlParamsLoaded=!1,await this._initModules(),await this._getTranslations(),await(null===(t=this.mapView)||void 0===t?void 0:t.when((async()=>{this._layers=this.reportingOptions?Object.keys(this.reportingOptions).filter((t=>this.reportingOptions[t].visible)):[],await this.setMapView()})))}render(){const t="dark"===this.theme?"calcite-mode-dark":"calcite-mode-light";return s(e,{key:"e512e2693a586f8a6da7bcfa171feb60da26aee3"},this._reportSubmitted&&s("calcite-alert",{key:"e5805ba948f1dc43eba2a78716af452cf71a8222","auto-close":!0,class:t+" report-submitted-msg",icon:"check-circle",kind:"success",label:"",onCalciteAlertClose:()=>{this._reportSubmitted=!1},open:!0,placement:"top"},s("div",{key:"95b9accf1f09186c09c81cfb02a8939c4869ae8d",slot:"message"},this.reportSubmittedMessage?this.reportSubmittedMessage:this._translations.submitMsg)),this._featureCreationFailedErrorMsg&&s("calcite-alert",{key:"cab7f0e0f0d882612b4fa6f00799be9870aea6c5","auto-close":!0,class:t,icon:"x-octagon",kind:"danger",label:"",onCalciteAlertClose:()=>{this._featureCreationFailedErrorMsg=""},open:!0,placement:"top"},s("div",{key:"b9453672d85e26cf7bdeae0923cd36020d259d49",slot:"title"},this._translations.error),s("div",{key:"5084315857bc88b8f80aaa411ac3fd5e4493e918",slot:"message"},this._featureCreationFailedErrorMsg)),this._commentSubmitted&&s("calcite-alert",{key:"62b7d9818913c3331ca9c8e4ed23c7f0c48a7946","auto-close":!0,class:"report-submitted "+t,icon:"check-circle",kind:"success",label:"",onCalciteAlertClose:()=>{this._commentSubmitted=!1},open:!0,placement:"top"},s("div",{key:"5f18444fd375657db0c2a403cb453ead75536181",slot:"message"},this._translations.commentSubmittedMsg)),this._addingCommentFailed&&s("calcite-alert",{key:"732f08960095fc9fefcc79fc8df387a5a4c3f781","auto-close":!0,class:t,icon:"x-octagon",kind:"danger",label:"",onCalciteAlertClose:()=>{this._addingCommentFailed=!1},open:!0,placement:"top"},s("div",{key:"16415430cf33ce53c0d49cab19dce2c3e34257d6",slot:"title"},this._translations.error),s("div",{key:"83e5918e00902bd49512165f4aa62813cecb4619",slot:"message"},this._translations.addingCommentFailedMsg)),s("div",{key:"3e9dadd880319708e64e717ba7e7adaddf97b935"},s("calcite-shell",{key:"c72664d361b3904bc191668207c3ad31ff1f98c9","content-behind":!0},this._getReporter())),this.filterModal())}async _initModules(){const[t]=await o(["esri/core/reactiveUtils"]);this.reactiveUtils=t}async setSelectedLayer(t,i){this._selectedLayerId=t,this._selectedLayer=await c(this.mapView,t),this._selectedLayerName=i,this._validLayers.forEach((i=>{i.set("visible",!t||i.id===t)}))}_getLayersConfig(t){return this.reportingOptions&&this.reportingOptions[t]?this.reportingOptions[t]:null}_getReporter(){const t=[];return this._flowItems.forEach((i=>{switch(i){case"layer-list":t.push(this.getLayerListFlowItem());break;case"feature-list":t.push(this.getFeatureListFlowItem(this._selectedLayerId,this._selectedLayerName));break;case"feature-details":t.push(this.getFeatureDetailsFlowItem());break;case"reporting-layer-list":t.push(this.getChooseCategoryFlowItem());break;case"feature-create":t.push(this.getFeatureCreateFlowItem());break;case"comment-details":t.push(this.getCommentDetailsFlowItem());break;case"add-comment":t.push(this.getAddCommentFlowItem())}})),s("calcite-panel",{class:"width-full "+("dark"===this.theme?"calcite-mode-dark":"calcite-mode-light")},this.mapView?s("calcite-flow",null,(null==t?void 0:t.length)>0&&t):s("calcite-loader",{label:"",scale:"m"}))}filterModal(){var t,i;const e=this.layerExpressions?this.layerExpressions.filter((t=>t.id===this._selectedLayerId)):[];return e.length>0&&s("calcite-modal",{"aria-labelledby":"modal-title",class:"modal",kind:"brand",onCalciteModalClose:()=>{this._closeFilter()},open:this._filterOpen,widthScale:"s"},s("div",{class:"display-flex align-center",id:"modal-title",slot:"header"},null===(i=null===(t=this._translations)||void 0===t?void 0:t.filterLayerTitle)||void 0===i?void 0:i.replace("{{title}}",this._selectedLayerName)),s("div",{slot:"content"},s("instant-apps-filter-list",{autoUpdateUrl:!1,closeBtn:!0,closeBtnOnClick:()=>{this._closeFilter()},comboboxOverlayPositioning:"fixed",layerExpressions:e,onFilterListReset:()=>this._handleFilterListReset(),onFilterUpdate:()=>this._handleFilterUpdate(),ref:t=>this._filterList=t,view:this.mapView,zoomBtn:!1})))}_closeFilter(){this._filterOpen&&(this._filterOpen=!1)}_toggleFilter(){this._filterOpen=!this._filterOpen}async sortOptionClick(t,i,s){this._updatedSorting={field:t,order:i},this._updatedSortOption=s}_toggleSort(){const t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField;return s("calcite-popover",{autoClose:!0,label:"",offsetDistance:0,placement:this.isMobile?"leading-start":"auto",pointerDisabled:!0,referenceElement:"sort-popover"},s("calcite-list",{"selection-mode":"single"},s("calcite-list-item",{label:this._translations.sortNewest,onCalciteListItemSelect:()=>{this.sortOptionClick(this._selectedLayer.objectIdField,"desc","sortNewest")},selected:"sortNewest"===this._updatedSortOption,value:"sortNewest"}),s("calcite-list-item",{label:this._translations.sortOldest,onCalciteListItemSelect:()=>{this.sortOptionClick(this._selectedLayer.objectIdField,"asc","sortOldest")},selected:"sortOldest"===this._updatedSortOption,value:"sortOldest"}),t&&s(a,null,s("calcite-list-item",{label:this._translations.sortHighestVoted,onCalciteListItemSelect:()=>{this.sortOptionClick(this.reportingOptions[this._selectedLayerId].likeField,"desc","sortHighestVoted")},selected:"sortHighestVoted"===this._updatedSortOption,value:"sortHighestVoted"}),s("calcite-list-item",{label:this._translations.sortLowestVoted,onCalciteListItemSelect:()=>{this.sortOptionClick(this.reportingOptions[this._selectedLayerId].likeField,"asc","sortLowestVoted")},selected:"sortLowestVoted"===this._updatedSortOption,value:"sortLowestVoted"}))))}_handleFilterListReset(){this._filterActive=!1,this._featureList.refresh()}_handleFilterUpdate(){this._filterActive=this._filterList.urlParams.getAll("filter").length>0,this._featureList.refresh()}getLayerListFlowItem(){var t;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this.reportsHeader},this.isMobile&&this.getActionToExpandCollapsePanel(),this._hasValidLayers&&this.enableNewReports&&s("calcite-button",{appearance:"solid",onClick:this.navigateToChooseCategory.bind(this),slot:"footer",width:"full"},this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText),s("calcite-panel",{"full-height":!0,"full-width":!0},s("layer-list",{class:"height-full",layers:(null===(t=this._editableLayerIds)||void 0===t?void 0:t.length)>0?this._editableLayerIds:this._layers,mapView:this.mapView,onLayerSelect:this.displayFeaturesList.bind(this),onLayersListLoaded:this.layerListLoaded.bind(this),ref:t=>this._layerList=t,showFeatureCount:!0,showNextIcon:!0})))}getChooseCategoryFlowItem(){const t=this.reportingOptions?Object.keys(this.reportingOptions).filter((t=>this.reportingOptions[t].visible&&this.reportingOptions[t].reporting&&this._layerItemsHash[t]&&this._layerItemsHash[t].supportsAdd)):[];return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("calcite-panel",{"full-height":!0,"full-width":!0},s("div",{class:"progress-bar"},s("calcite-progress",{type:"determinate",value:this._updatedProgressBarStatus})),s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.chooseCategoryMsg)),s("layer-list",{class:"height-full",layers:t,mapView:this.mapView,onLayerSelect:this.navigateToCreateFeature.bind(this),showFeatureCount:!1,showNextIcon:!1})))}getFeatureCreateFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,onCalciteFlowItemBack:this.backFromCreateFeaturePanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),this._showSubmitCancelButton&&s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",onClick:this.onCreateFeatureSubmitButtonClick.bind(this),width:"full"},this._translations.submit),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromCreateFeaturePanel.bind(this),width:"full"},this._translations.cancel)),s("calcite-panel",{"full-height":!0,"full-width":!0},s("div",{class:"progress-bar"},s("calcite-progress",{type:"determinate",value:this._updatedProgressBarStatus})),s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.featureEditFormInfoMsg)),s("create-feature",{customizeSubmit:!0,mapView:this.mapView,onDrawComplete:this.onFormReady.bind(this),onEditingAttachment:this.showSubmitCancelButton.bind(this),onFail:this.createFeatureFailed.bind(this),onProgressStatus:this.updatedProgressStatus.bind(this),onSuccess:this.onReportSubmitted.bind(this),ref:t=>this._createFeature=t,searchConfiguration:this.searchConfiguration,selectedLayerId:this._selectedLayerId})))}updatedProgressStatus(t){this._updatedProgressBarStatus=t.detail}onFormReady(){this.updateFormState(!0),this._showSubmitCancelButton=!0}showSubmitCancelButton(t){this._showSubmitCancelButton=!t.detail}onCreateFeatureSubmitButtonClick(){this._createFeature&&this._createFeature.submit()}backFromCreateFeaturePanel(){this._createFeature&&this._createFeature.close(),this.isFormOpen&&this.updateFormState(!1),this.backFromSelectedPanel()}onCreateRelatedFeatureSubmitButtonClick(){this._createRelatedFeature&&this._createRelatedFeature.submit()}backFromCreateRelatedFeaturePanel(){this._createRelatedFeature&&(this._createRelatedFeature.close(),this._showSubmitCancelButton=!1),this.isFormOpen&&this.updateFormState(!1),this.backFromSelectedPanel()}createFeatureFailed(t){console.error(t.detail),this._featureCreationFailedErrorMsg=t.detail.message}onReportSubmitted(){this.isFormOpen&&this.updateFormState(!1),this._reportSubmitted=!0,this.navigateToHomePage()}addCommentFailed(t){console.error(t.detail),this._addingCommentFailed=!0}async onCommentSubmitted(){this._commentSubmitted=!0,this.backFromSelectedPanel(),this._showLoadingIndicator=!0,await this._featureDetails.refresh(this._currentFeature),setTimeout((()=>{this._showLoadingIndicator=!1}),300)}async navigateToHomePage(){this._createFeature&&this._createFeature.close(),this._layerList&&this._layerList.refresh(),await this.setSelectedFeatures([]),1===this._editableLayerIds.length?(await this._featureList.refresh(),this._flowItems=["feature-list"]):this._flowItems=["layer-list"]}async navigateToCreateFeature(t){t.detail.layerId&&t.detail.layerName&&this.setSelectedLayer(t.detail.layerId,t.detail.layerName),this._showSubmitCancelButton=!1,this._flowItems=[...this._flowItems,"feature-create"]}navigateToChooseCategory(){this._flowItems=[...this._flowItems,"reporting-layer-list"]}async layerListLoaded(t){const i=t.detail,s=await n(this.mapView),e=[];this._validLayers=[],s.forEach((t=>{var s;i.includes(t.id)&&(this._validLayers.push(t),(null===(s=this._getLayersConfig(t.id))||void 0===s?void 0:s.reporting)&&this._layerItemsHash[t.id]&&this._layerItemsHash[t.id].supportsAdd&&e.push(t.id))})),this.handleMapClick(),this._hasValidLayers=e.length>0,this._urlParamsLoaded||(this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams())}displayFeaturesList(t){this._updatedSorting={field:"",order:"desc"},this._filterActive=!1,this._updatedSortOption="sortNewest",this.setSelectedLayer(t.detail.layerId,t.detail.layerName),this._flowItems=[...this._flowItems,"feature-list"]}backFromSelectedPanel(){this._updatedProgressBarStatus=.25;const t=[...this._flowItems];"comment-details"!==t[t.length-1]&&"add-comment"!==t[t.length-1]&&this.clearHighlights(),t.pop(),1!==t.length||"layer-list"!==t[0]?this._flowItems=[...t]:this.navigateToHomePage()}toggleSidePanel(){this._sidePanelCollapsed=!this._sidePanelCollapsed,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this.isFormOpen})}updateFormState(t){this.isFormOpen=t,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this.isFormOpen})}async onFeatureSelectFromList(t){this._showLoadingIndicator=!0,await this.setSelectedFeatures([t.detail]),this._flowItems=[...this._flowItems,"feature-details"]}async getRelatedTable(){const t=this._currentFeature.layer.relationships[0].relatedTableId,i=(await r(this.mapView)).filter((i=>t===i.layerId));this._relatedTable=i[0]}async updatingFeatureDetails(t){this._showLoadingIndicator=t}async selectionChanged(t){this.updatingFeatureDetails(!0),await this.setCurrentFeature(t.detail.selectedFeature[0]),this.highlightOnMap(t.detail.selectedFeature[0]),this._selectedFeatureIndex=t.detail.selectedFeatureIndex,await this._featureDetails.refresh(t.detail.selectedFeature[0])}async onCommentSelectFromList(t){this._selectedRelatedFeature=[t.detail],this._flowItems=[...this._flowItems,"comment-details"]}getFeatureListFlowItem(t,i){var e,a;const h=null===(e=this.layerExpressions)||void 0===e?void 0:e.filter((t=>t.id===this._selectedLayerId)),o=(null===(a=this._getLayersConfig(this._selectedLayerId))||void 0===a?void 0:a.reporting)&&this._layerItemsHash[this._selectedLayerId].supportsAdd,l=(null==h?void 0:h.length)>0;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:i,loading:this._showLoadingIndicator,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this._toggleSort(),s("calcite-action",{icon:"sort-ascending-arrow",id:"sort-popover",slot:"header-actions-end",text:this._translations.sort,title:this._translations.sort}),l&&s("calcite-action",{icon:"filter",indicator:this._filterActive,onClick:this._toggleFilter.bind(this),slot:"header-actions-end",text:this._translations.filter,title:this._translations.filter}),this.isMobile&&this.getActionToExpandCollapsePanel(),this.enableNewReports&&o&&s("calcite-button",{appearance:"solid",onClick:this.navigateToCreateFeature.bind(this),slot:"footer",width:"full"},this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText),s("calcite-panel",{"full-height":!0},s("feature-list",{class:"height-full",highlightOnHover:!0,mapView:this.mapView,noFeaturesFoundMsg:this._translations.featureErrorMsg,onFeatureSelect:this.onFeatureSelectFromList.bind(this),pageSize:30,ref:t=>this._featureList=t,selectedLayerId:t,sortingInfo:this._updatedSorting})))}getFeatureDetailsFlowItem(){var t;const i=(null===(t=this._getLayersConfig(this._selectedLayerId))||void 0===t?void 0:t.comment)&&this._selectedLayer.relationships.length>0;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,loading:this._showLoadingIndicator,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("instant-apps-social-share",{autoUpdateShareUrl:!1,class:"share-node",embed:!1,popoverButtonIconScale:"s",ref:t=>this._shareNode=t,removePopoverOffset:!0,scale:"m",shareButtonColor:"neutral",shareButtonType:"action",slot:"header-actions-end",socialMedia:!0,view:this.mapView}),this._selectedFeature.length>1&&this.getFeaturesPagination(),s("calcite-panel",null,s("feature-details",{class:"full-height",graphics:this._selectedFeature,layerItemsHash:this._layerItemsHash,mapView:this.mapView,onCommentSelect:this.onCommentSelectFromList.bind(this),onFeatureSelectionChange:this.selectionChanged.bind(this),onLoadingStatus:t=>{this.updatingFeatureDetails(t.detail)},ref:t=>this._featureDetails=t,reportingOptions:this.reportingOptions}),i&&s("calcite-button",{appearance:"solid",onClick:()=>this._flowItems=[...this._flowItems,"add-comment"],slot:"footer",width:"full"},this._translations.comment)))}getFeaturesPagination(){return s("div",{class:"feature-pagination"},s("div",null,s("calcite-button",{appearance:"transparent",disabled:!1,iconStart:"chevron-left",id:"solutions-back",onClick:()=>{this._featureDetails.back()},scale:"s",width:"full"}),s("calcite-tooltip",{label:"",placement:"top","reference-element":"solutions-back"},s("span",null,this._translations.back))),s("calcite-button",{appearance:"transparent",onClick:()=>{this._featureDetails.toggleListView()},scale:"s"},s("span",{class:"pagination-count"},this._getCount())),s("div",null,s("calcite-button",{appearance:"transparent",disabled:!1,iconStart:"chevron-right",id:"solutions-next",onClick:()=>{this._featureDetails.next()},scale:"s",width:"full"}),s("calcite-tooltip",{placement:"top","reference-element":"solutions-next"},s("span",null,this._translations.next))))}getCommentDetailsFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._relatedTable.title,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("calcite-panel",{"full-height":!0},s("info-card",{allowEditing:!1,graphics:this._selectedRelatedFeature,highlightEnabled:!1,isLoading:!1,isMobile:!1,mapView:this.mapView,paginationEnabled:!1})))}getAddCommentFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._relatedTable.title,onCalciteFlowItemBack:this.backFromCreateRelatedFeaturePanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("div",{class:"width-full",slot:"footer"},this._showSubmitCancelButton&&s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",onClick:this.onCreateRelatedFeatureSubmitButtonClick.bind(this),width:"full"},this._translations.submit),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromCreateRelatedFeaturePanel.bind(this),width:"full"},this._translations.cancel))),s("calcite-panel",null,s("create-related-feature",{customizeSubmit:!0,mapView:this.mapView,onFail:this.addCommentFailed.bind(this),onFormReady:this.onFormReady.bind(this),onIsActionPending:this.showSubmitCancelButton.bind(this),onSuccess:this.onCommentSubmitted.bind(this),ref:t=>this._createRelatedFeature=t,selectedFeature:this._currentFeature,table:this._relatedTable})))}async setSelectedFeatures(t){this._selectedFeature=t,await this.setCurrentFeature(this._selectedFeature.length?this._selectedFeature[0]:null)}async setCurrentFeature(t){var i;if(this._currentFeature=t,t&&t.layer){const s=t.layer;this.setSelectedLayer(s.id,s.title),this._currentFeatureId=t.attributes[s.objectIdField],(null===(i=this._getLayersConfig(s.id))||void 0===i?void 0:i.comment)&&s.relationships.length>0&&await this.getRelatedTable()}else this._editableLayerIds.length>1&&this.setSelectedLayer("",""),this._currentFeatureId="";this._updateShareURL()}async highlightOnMap(t){if(this.clearHighlights(),t&&t.geometry&&t.layer){const i=await d(this.mapView,t.layer.id);i.highlightOptions=null,this._highlightHandle=await u([t.getObjectId()],i,this.mapView,!0,this.zoomToScale)}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return s("calcite-action",{icon:this._sidePanelCollapsed?"chevrons-up":"chevrons-down",onClick:this.toggleSidePanel.bind(this),slot:"header-actions-end",text:this._sidePanelCollapsed?this._translations.expand:this._translations.collapse})}async setMapView(){var t;await this.getLayersToShowInList(),1===(null===(t=this._editableLayerIds)||void 0===t?void 0:t.length)?await this.renderFeaturesList():this._flowItems=["layer-list"],this.mapView.popupEnabled=!1,this._defaultCenter&&this._defaultLevel&&(await this.mapView.goTo({center:this._defaultCenter,zoom:this._defaultLevel}),this._defaultCenter=void 0,this._defaultLevel=void 0)}handleMapClick(){this._mapClickHandle&&this._mapClickHandle.remove(),this._mapClickHandle=this.reactiveUtils.on((()=>this.mapView),"click",this.onMapClick.bind(this))}async onMapClick(t){this.mapView.popupEnabled=!1;const i=await this.mapView.hitTest(t);if(i.results.length>0){const t=[];i.results.forEach((function(i){"graphic"===i.type&&t.push(i.graphic)}));const s=t.filter((t=>this._validLayers.includes(t.layer))),e=t.filter((t=>{var i;return!this._validLayers.includes(t.layer)&&(null===(i=null==t?void 0:t.layer)||void 0===i?void 0:i.id)}));if(s.length>0&&(await this.setSelectedFeatures(s),this._flowItems.length&&this._flowItems.includes("feature-details")?(this._flowItems=[...this._flowItems.slice(0,this._flowItems.indexOf("feature-details")+1)],await this.highlightOnMap(t[0])):this._flowItems=[...this._flowItems,"feature-details"]),e.length>0){this.mapView.popupEnabled=!0;const t={features:e,updateLocationEnabled:!0};await this.mapView.openPopup(t)}}}_getCount(){const t=(this._selectedFeatureIndex+1).toString(),i=this._selectedFeature.length.toString();return this._translations.indexOfTotal.replace("{{index}}",t).replace("{{total}}",i)}async _getTranslations(){const t=await l(this.el);this._translations=t[0]}reduceToConfiguredLayers(t){return Object.keys(t).reduce(((i,s)=>{var e;return(this.reportingOptions?null===(e=this._getLayersConfig(s))||void 0===e?void 0:e.visible:t[s].supportsAdd)&&i.push(s),i}),[])}async getLayersToShowInList(){const t=await p(this.mapView,!0);(await n(this.mapView)).forEach((i=>{var s,e;"feature"===(null==i?void 0:i.type)&&(null==i?void 0:i.editingEnabled)&&(null===(e=null===(s=null==i?void 0:i.capabilities)||void 0===s?void 0:s.operations)||void 0===e?void 0:e.supportsAdd)&&(t[i.id].supportsAdd=!0)})),this._editableLayerIds=this.reduceToConfiguredLayers(t),this._layerItemsHash=t}async renderFeaturesList(){this._flowItems=["feature-list"];const t={detail:this._editableLayerIds};await this.layerListLoaded(t),this.setSelectedLayer(this._validLayers[0].id,this._validLayers[0].title)}_updateShareURL(){var t,i;const s=null===(t=this._shareNode)||void 0===t?void 0:t.shareUrl;if(!s)return;const e=new URL(s);this._selectedLayerId?e.searchParams.set("layerid",this._selectedLayerId):e.searchParams.delete("layerid"),(null===(i=this._selectedFeature)||void 0===i?void 0:i.length)?e.searchParams.set("oid",this._currentFeatureId):e.searchParams.delete("oid"),this._shareNode.shareUrl=e.href}async loadFeatureFromURLParams(){if(this.center&&this.level&&await this.mapView.goTo({center:this.center.split(";").map(Number),zoom:this.level}),this.layerId&&this.objectId){const t=await c(this.mapView,this.layerId);if(t){const i=await f([Number(this.objectId)],t,[],!0,this.mapView.spatialReference);i.length&&(await this.setSelectedFeatures(i),this._flowItems=this._flowItems.length&&"feature-details"!==this._flowItems[this._flowItems.length-1]?[...this._flowItems,"feature-details"]:[...this._flowItems])}}}get el(){return h(this)}static get watchers(){return{isMobile:["isMobileWatchHandler"],mapView:["mapViewWatchHandler"]}}};m.style=":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-color-foreground-1)}.width-full{width:100% !important}.width-0{width:0}.height-full{height:100% !important}.height-0{height:0}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--calcite-color-border-3)}.notice-msg{padding:10px;width:calc(100% - 20px)}.progress-bar{padding:12px}.footer-top-button{padding-bottom:7px}.footer-button{height:35px}.feature-pagination{background-color:var(--calcite-color-foreground-1) !important;border-block-end:1px solid var(--calcite-color-border-3);display:flex;justify-content:center;padding:5px 0}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:bold}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}";export{m as crowdsource_reporter}
|
6
|
+
import{r as t,c as i,h as s,H as e,F as a,g as h}from"./p-fa1ceaf9.js";import{l as o,g as l}from"./p-c0bf1d9f.js";import{g as c,a as n,b as r,c as d,h as u,d as p,q as f}from"./p-996c1ac5.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-c1cf3ebc.js";const m=class{constructor(s){t(this,s),this.togglePanel=i(this,"togglePanel",7),this.center=void 0,this.defaultWebmap="",this.description=void 0,this.enableAnonymousAccess=void 0,this.enableAnonymousComments=void 0,this.enableComments=void 0,this.enableHome=!0,this.enableLogin=void 0,this.enableNewReports=void 0,this.enableSearch=!0,this.enableZoom=!0,this.isMobile=void 0,this.layerExpressions=[],this.layerId=void 0,this.level=void 0,this.loginTitle=void 0,this.mapInfos=[],this.mapView=void 0,this.objectId=void 0,this.reportButtonText=void 0,this.reportingOptions=void 0,this.reportsHeader=void 0,this.reportSubmittedMessage=void 0,this.searchConfiguration=void 0,this.showComments=void 0,this.theme="light",this.zoomToScale=void 0,this._featureCreationFailedErrorMsg=void 0,this._filterActive=!1,this._filterOpen=!1,this._flowItems=[],this._hasValidLayers=!1,this._loadingFeatureDetails=void 0,this._mapInfo=void 0,this._reportSubmitted=!1,this._selectedLayerName=void 0,this._showSubmitCancelButton=!1,this._showLoadingIndicator=!1,this._sidePanelCollapsed=!1,this._translations=void 0,this._updatedProgressBarStatus=.25,this._updatedSorting=void 0,this._updatedSortOption="sortNewest",this._commentSubmitted=!1,this._addingCommentFailed=!1}async isMobileWatchHandler(){this._sidePanelCollapsed=!1}async mapViewWatchHandler(){await this.mapView.when((async()=>{await this.setMapView()}))}async componentWillLoad(){var t;this._urlParamsLoaded=!1,await this._initModules(),await this._getTranslations(),await(null===(t=this.mapView)||void 0===t?void 0:t.when((async()=>{this._layers=this.reportingOptions?Object.keys(this.reportingOptions).filter((t=>this.reportingOptions[t].visible)):[],await this.setMapView()})))}render(){const t="dark"===this.theme?"calcite-mode-dark":"calcite-mode-light";return s(e,{key:"e512e2693a586f8a6da7bcfa171feb60da26aee3"},this._reportSubmitted&&s("calcite-alert",{key:"e5805ba948f1dc43eba2a78716af452cf71a8222","auto-close":!0,class:t+" report-submitted-msg",icon:"check-circle",kind:"success",label:"",onCalciteAlertClose:()=>{this._reportSubmitted=!1},open:!0,placement:"top"},s("div",{key:"95b9accf1f09186c09c81cfb02a8939c4869ae8d",slot:"message"},this.reportSubmittedMessage?this.reportSubmittedMessage:this._translations.submitMsg)),this._featureCreationFailedErrorMsg&&s("calcite-alert",{key:"cab7f0e0f0d882612b4fa6f00799be9870aea6c5","auto-close":!0,class:t,icon:"x-octagon",kind:"danger",label:"",onCalciteAlertClose:()=>{this._featureCreationFailedErrorMsg=""},open:!0,placement:"top"},s("div",{key:"b9453672d85e26cf7bdeae0923cd36020d259d49",slot:"title"},this._translations.error),s("div",{key:"5084315857bc88b8f80aaa411ac3fd5e4493e918",slot:"message"},this._featureCreationFailedErrorMsg)),this._commentSubmitted&&s("calcite-alert",{key:"62b7d9818913c3331ca9c8e4ed23c7f0c48a7946","auto-close":!0,class:"report-submitted "+t,icon:"check-circle",kind:"success",label:"",onCalciteAlertClose:()=>{this._commentSubmitted=!1},open:!0,placement:"top"},s("div",{key:"5f18444fd375657db0c2a403cb453ead75536181",slot:"message"},this._translations.commentSubmittedMsg)),this._addingCommentFailed&&s("calcite-alert",{key:"732f08960095fc9fefcc79fc8df387a5a4c3f781","auto-close":!0,class:t,icon:"x-octagon",kind:"danger",label:"",onCalciteAlertClose:()=>{this._addingCommentFailed=!1},open:!0,placement:"top"},s("div",{key:"16415430cf33ce53c0d49cab19dce2c3e34257d6",slot:"title"},this._translations.error),s("div",{key:"83e5918e00902bd49512165f4aa62813cecb4619",slot:"message"},this._translations.addingCommentFailedMsg)),s("div",{key:"3e9dadd880319708e64e717ba7e7adaddf97b935"},s("calcite-shell",{key:"c72664d361b3904bc191668207c3ad31ff1f98c9","content-behind":!0},this._getReporter())),this.filterModal())}async _initModules(){const[t]=await o(["esri/core/reactiveUtils"]);this.reactiveUtils=t}async setSelectedLayer(t,i){this._selectedLayerId=t,this._selectedLayer=await c(this.mapView,t),this._selectedLayerName=i,this._validLayers.forEach((i=>{i.set("visible",!t||i.id===t)}))}_getLayersConfig(t){return this.reportingOptions&&this.reportingOptions[t]?this.reportingOptions[t]:null}_getReporter(){const t=[];return this._flowItems.forEach((i=>{switch(i){case"layer-list":t.push(this.getLayerListFlowItem());break;case"feature-list":t.push(this.getFeatureListFlowItem(this._selectedLayerId,this._selectedLayerName));break;case"feature-details":t.push(this.getFeatureDetailsFlowItem());break;case"reporting-layer-list":t.push(this.getChooseCategoryFlowItem());break;case"feature-create":t.push(this.getFeatureCreateFlowItem());break;case"comment-details":t.push(this.getCommentDetailsFlowItem());break;case"add-comment":t.push(this.getAddCommentFlowItem())}})),s("calcite-panel",{class:"width-full "+("dark"===this.theme?"calcite-mode-dark":"calcite-mode-light")},this.mapView?s("calcite-flow",null,(null==t?void 0:t.length)>0&&t):s("calcite-loader",{label:"",scale:"m"}))}filterModal(){var t,i;const e=this.layerExpressions?this.layerExpressions.filter((t=>t.id===this._selectedLayerId)):[];return e.length>0&&s("calcite-modal",{"aria-labelledby":"modal-title",class:"modal",kind:"brand",onCalciteModalClose:()=>{this._closeFilter()},open:this._filterOpen,widthScale:"s"},s("div",{class:"display-flex align-center",id:"modal-title",slot:"header"},null===(i=null===(t=this._translations)||void 0===t?void 0:t.filterLayerTitle)||void 0===i?void 0:i.replace("{{title}}",this._selectedLayerName)),s("div",{slot:"content"},s("instant-apps-filter-list",{autoUpdateUrl:!1,closeBtn:!0,closeBtnOnClick:()=>{this._closeFilter()},comboboxOverlayPositioning:"fixed",layerExpressions:e,onFilterListReset:()=>this._handleFilterListReset(),onFilterUpdate:()=>this._handleFilterUpdate(),ref:t=>this._filterList=t,view:this.mapView,zoomBtn:!1})))}_closeFilter(){this._filterOpen&&(this._filterOpen=!1)}_toggleFilter(){this._filterOpen=!this._filterOpen}async sortOptionClick(t,i,s){this._updatedSorting={field:t,order:i},this._updatedSortOption=s}_toggleSort(){const t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField;return s("calcite-popover",{autoClose:!0,label:"",offsetDistance:0,placement:this.isMobile?"leading-start":"auto",pointerDisabled:!0,referenceElement:"sort-popover"},s("calcite-list",{"selection-mode":"single"},s("calcite-list-item",{label:this._translations.sortNewest,onCalciteListItemSelect:()=>{this.sortOptionClick(this._selectedLayer.objectIdField,"desc","sortNewest")},selected:"sortNewest"===this._updatedSortOption,value:"sortNewest"}),s("calcite-list-item",{label:this._translations.sortOldest,onCalciteListItemSelect:()=>{this.sortOptionClick(this._selectedLayer.objectIdField,"asc","sortOldest")},selected:"sortOldest"===this._updatedSortOption,value:"sortOldest"}),t&&s(a,null,s("calcite-list-item",{label:this._translations.sortHighestVoted,onCalciteListItemSelect:()=>{this.sortOptionClick(this.reportingOptions[this._selectedLayerId].likeField,"desc","sortHighestVoted")},selected:"sortHighestVoted"===this._updatedSortOption,value:"sortHighestVoted"}),s("calcite-list-item",{label:this._translations.sortLowestVoted,onCalciteListItemSelect:()=>{this.sortOptionClick(this.reportingOptions[this._selectedLayerId].likeField,"asc","sortLowestVoted")},selected:"sortLowestVoted"===this._updatedSortOption,value:"sortLowestVoted"}))))}_handleFilterListReset(){this._filterActive=!1,this._featureList.refresh()}_handleFilterUpdate(){this._filterActive=this._filterList.urlParams.getAll("filter").length>0,this._featureList.refresh()}getLayerListFlowItem(){var t;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this.reportsHeader},this.isMobile&&this.getActionToExpandCollapsePanel(),this._hasValidLayers&&this.enableNewReports&&s("calcite-button",{appearance:"solid",onClick:this.navigateToChooseCategory.bind(this),slot:"footer",width:"full"},this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText),s("calcite-panel",{"full-height":!0,"full-width":!0},s("layer-list",{class:"height-full",layers:(null===(t=this._editableLayerIds)||void 0===t?void 0:t.length)>0?this._editableLayerIds:this._layers,mapView:this.mapView,onLayerSelect:this.displayFeaturesList.bind(this),onLayersListLoaded:this.layerListLoaded.bind(this),ref:t=>this._layerList=t,showFeatureCount:!0,showNextIcon:!0})))}getChooseCategoryFlowItem(){const t=this.reportingOptions?Object.keys(this.reportingOptions).filter((t=>this.reportingOptions[t].visible&&this.reportingOptions[t].reporting&&this._layerItemsHash[t]&&this._layerItemsHash[t].supportsAdd)):[];return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("calcite-panel",{"full-height":!0,"full-width":!0},s("div",{class:"progress-bar"},s("calcite-progress",{type:"determinate",value:this._updatedProgressBarStatus})),s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.chooseCategoryMsg)),s("layer-list",{class:"height-full",layers:t,mapView:this.mapView,onLayerSelect:this.navigateToCreateFeature.bind(this),showFeatureCount:!1,showNextIcon:!1})))}getFeatureCreateFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,onCalciteFlowItemBack:this.backFromCreateFeaturePanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),this._showSubmitCancelButton&&s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",onClick:this.onCreateFeatureSubmitButtonClick.bind(this),width:"full"},this._translations.submit),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromCreateFeaturePanel.bind(this),width:"full"},this._translations.cancel)),s("calcite-panel",{"full-height":!0,"full-width":!0},s("div",{class:"progress-bar"},s("calcite-progress",{type:"determinate",value:this._updatedProgressBarStatus})),s("calcite-notice",{class:"notice-msg",icon:"lightbulb",kind:"success",open:!0},s("div",{slot:"message"},this._translations.featureEditFormInfoMsg)),s("create-feature",{customizeSubmit:!0,mapView:this.mapView,onDrawComplete:this.onFormReady.bind(this),onEditingAttachment:this.showSubmitCancelButton.bind(this),onFail:this.createFeatureFailed.bind(this),onProgressStatus:this.updatedProgressStatus.bind(this),onSuccess:this.onReportSubmitted.bind(this),ref:t=>this._createFeature=t,searchConfiguration:this.searchConfiguration,selectedLayerId:this._selectedLayerId})))}updatedProgressStatus(t){this._updatedProgressBarStatus=t.detail}onFormReady(){this.updateFormState(!0),this._showSubmitCancelButton=!0}showSubmitCancelButton(t){this._showSubmitCancelButton=!t.detail}onCreateFeatureSubmitButtonClick(){this._createFeature&&this._createFeature.submit()}backFromCreateFeaturePanel(){this._createFeature&&this._createFeature.close(),this.isFormOpen&&this.updateFormState(!1),this.backFromSelectedPanel()}onCreateRelatedFeatureSubmitButtonClick(){this._createRelatedFeature&&this._createRelatedFeature.submit()}backFromCreateRelatedFeaturePanel(){this._createRelatedFeature&&(this._createRelatedFeature.close(),this._showSubmitCancelButton=!1),this.isFormOpen&&this.updateFormState(!1),this.backFromSelectedPanel()}createFeatureFailed(t){console.error(t.detail),this._featureCreationFailedErrorMsg=t.detail.message}onReportSubmitted(){this.isFormOpen&&this.updateFormState(!1),this._reportSubmitted=!0,this.navigateToHomePage()}addCommentFailed(t){console.error(t.detail),this._addingCommentFailed=!0}async onCommentSubmitted(){this._commentSubmitted=!0,this.backFromSelectedPanel(),this._showLoadingIndicator=!0,await this._featureDetails.refresh(this._currentFeature),setTimeout((()=>{this._showLoadingIndicator=!1}),300)}async navigateToHomePage(){this._createFeature&&this._createFeature.close(),this._layerList&&this._layerList.refresh(),await this.setSelectedFeatures([]),1===this._editableLayerIds.length?(await this._featureList.refresh(),this._flowItems=["feature-list"]):this._flowItems=["layer-list"]}async navigateToCreateFeature(t){t.detail.layerId&&t.detail.layerName&&this.setSelectedLayer(t.detail.layerId,t.detail.layerName),this._showSubmitCancelButton=!1,this._flowItems=[...this._flowItems,"feature-create"]}navigateToChooseCategory(){this._flowItems=[...this._flowItems,"reporting-layer-list"]}async layerListLoaded(t){const i=t.detail,s=await n(this.mapView),e=[];this._validLayers=[],s.forEach((t=>{var s;i.includes(t.id)&&(this._validLayers.push(t),(null===(s=this._getLayersConfig(t.id))||void 0===s?void 0:s.reporting)&&this._layerItemsHash[t.id]&&this._layerItemsHash[t.id].supportsAdd&&e.push(t.id))})),this.handleMapClick(),this._hasValidLayers=e.length>0,this._urlParamsLoaded||(this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams())}displayFeaturesList(t){this._updatedSorting={field:"",order:"desc"},this._filterActive=!1,this._updatedSortOption="sortNewest",this.setSelectedLayer(t.detail.layerId,t.detail.layerName),this._flowItems=[...this._flowItems,"feature-list"]}backFromSelectedPanel(){this._updatedProgressBarStatus=.25;const t=[...this._flowItems];"comment-details"!==t[t.length-1]&&"add-comment"!==t[t.length-1]&&this.clearHighlights(),t.pop(),1!==t.length||"layer-list"!==t[0]?this._flowItems=[...t]:this.navigateToHomePage()}toggleSidePanel(){this._sidePanelCollapsed=!this._sidePanelCollapsed,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this.isFormOpen})}updateFormState(t){this.isFormOpen=t,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this.isFormOpen})}async onFeatureSelectFromList(t){this._showLoadingIndicator=!0,await this.setSelectedFeatures([t.detail]),this._flowItems=[...this._flowItems,"feature-details"]}async getRelatedTable(){const t=this._currentFeature.layer.relationships[0].relatedTableId,i=(await r(this.mapView)).filter((i=>t===i.layerId));this._relatedTable=i[0]}async updatingFeatureDetails(t){this._showLoadingIndicator=t}async selectionChanged(t){this.updatingFeatureDetails(!0),await this.setCurrentFeature(t.detail.selectedFeature[0]),this.highlightOnMap(t.detail.selectedFeature[0]),this._selectedFeatureIndex=t.detail.selectedFeatureIndex,await this._featureDetails.refresh(t.detail.selectedFeature[0])}async onCommentSelectFromList(t){this._selectedRelatedFeature=[t.detail],this._flowItems=[...this._flowItems,"comment-details"]}getFeatureListFlowItem(t,i){var e,a;const h=null===(e=this.layerExpressions)||void 0===e?void 0:e.filter((t=>t.id===this._selectedLayerId)),o=(null===(a=this._getLayersConfig(this._selectedLayerId))||void 0===a?void 0:a.reporting)&&this._layerItemsHash[this._selectedLayerId].supportsAdd,l=(null==h?void 0:h.length)>0;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:i,loading:this._showLoadingIndicator,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this._toggleSort(),s("calcite-action",{icon:"sort-ascending-arrow",id:"sort-popover",slot:"header-actions-end",text:this._translations.sort,title:this._translations.sort}),l&&s("calcite-action",{icon:"filter",indicator:this._filterActive,onClick:this._toggleFilter.bind(this),slot:"header-actions-end",text:this._translations.filter,title:this._translations.filter}),this.isMobile&&this.getActionToExpandCollapsePanel(),this.enableNewReports&&o&&s("calcite-button",{appearance:"solid",onClick:this.navigateToCreateFeature.bind(this),slot:"footer",width:"full"},this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText),s("calcite-panel",{"full-height":!0},s("feature-list",{class:"height-full",highlightOnHover:!0,mapView:this.mapView,noFeaturesFoundMsg:this._translations.featureErrorMsg,onFeatureSelect:this.onFeatureSelectFromList.bind(this),pageSize:30,ref:t=>this._featureList=t,selectedLayerId:t,sortingInfo:this._updatedSorting})))}getFeatureDetailsFlowItem(){var t;const i=(null===(t=this._getLayersConfig(this._selectedLayerId))||void 0===t?void 0:t.comment)&&this._selectedLayer.relationships.length>0;return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._selectedLayerName,loading:this._showLoadingIndicator,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("instant-apps-social-share",{autoUpdateShareUrl:!1,class:"share-node",embed:!1,popoverButtonIconScale:"s",ref:t=>this._shareNode=t,removePopoverOffset:!0,scale:"m",shareButtonColor:"neutral",shareButtonType:"action",slot:"header-actions-end",socialMedia:!0,view:this.mapView}),this._selectedFeature.length>1&&this.getFeaturesPagination(),s("calcite-panel",null,s("feature-details",{class:"full-height",graphics:this._selectedFeature,layerItemsHash:this._layerItemsHash,mapView:this.mapView,onCommentSelect:this.onCommentSelectFromList.bind(this),onFeatureSelectionChange:this.selectionChanged.bind(this),onLoadingStatus:t=>{this.updatingFeatureDetails(t.detail)},ref:t=>this._featureDetails=t,reportingOptions:this.reportingOptions}),i&&s("calcite-button",{appearance:"solid",onClick:()=>this._flowItems=[...this._flowItems,"add-comment"],slot:"footer",width:"full"},this._translations.comment)))}getFeaturesPagination(){return s("div",{class:"feature-pagination"},s("div",null,s("calcite-button",{appearance:"transparent",disabled:!1,iconStart:"chevron-left",id:"solutions-back",onClick:()=>{this._featureDetails.back()},scale:"s",width:"full"}),s("calcite-tooltip",{label:"",placement:"top","reference-element":"solutions-back"},s("span",null,this._translations.back))),s("calcite-button",{appearance:"transparent",onClick:()=>{this._featureDetails.toggleListView()},scale:"s"},s("span",{class:"pagination-count"},this._getCount())),s("div",null,s("calcite-button",{appearance:"transparent",disabled:!1,iconStart:"chevron-right",id:"solutions-next",onClick:()=>{this._featureDetails.next()},scale:"s",width:"full"}),s("calcite-tooltip",{placement:"top","reference-element":"solutions-next"},s("span",null,this._translations.next))))}getCommentDetailsFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._relatedTable.title,onCalciteFlowItemBack:this.backFromSelectedPanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("calcite-panel",{"full-height":!0},s("info-card",{allowEditing:!1,graphics:this._selectedRelatedFeature,highlightEnabled:!1,isLoading:!1,isMobile:!1,mapView:this.mapView,paginationEnabled:!1})))}getAddCommentFlowItem(){return s("calcite-flow-item",{collapsed:this.isMobile&&this._sidePanelCollapsed,heading:this._relatedTable.title,onCalciteFlowItemBack:this.backFromCreateRelatedFeaturePanel.bind(this)},this.isMobile&&this.getActionToExpandCollapsePanel(),s("div",{class:"width-full",slot:"footer"},this._showSubmitCancelButton&&s("div",{class:"width-full",slot:"footer"},s("calcite-button",{appearance:"solid",class:"footer-top-button footer-button",onClick:this.onCreateRelatedFeatureSubmitButtonClick.bind(this),width:"full"},this._translations.submit),s("calcite-button",{appearance:"outline",class:"footer-button",onClick:this.backFromCreateRelatedFeaturePanel.bind(this),width:"full"},this._translations.cancel))),s("calcite-panel",null,s("create-related-feature",{customizeSubmit:!0,mapView:this.mapView,onFail:this.addCommentFailed.bind(this),onFormReady:this.onFormReady.bind(this),onIsActionPending:this.showSubmitCancelButton.bind(this),onSuccess:this.onCommentSubmitted.bind(this),ref:t=>this._createRelatedFeature=t,selectedFeature:this._currentFeature,table:this._relatedTable})))}async setSelectedFeatures(t){this._selectedFeature=t,await this.setCurrentFeature(this._selectedFeature.length?this._selectedFeature[0]:null)}async setCurrentFeature(t){var i;if(this._currentFeature=t,t&&t.layer){const s=t.layer;this.setSelectedLayer(s.id,s.title),this._currentFeatureId=t.attributes[s.objectIdField],(null===(i=this._getLayersConfig(s.id))||void 0===i?void 0:i.comment)&&s.relationships.length>0&&await this.getRelatedTable()}else this._editableLayerIds.length>1&&this.setSelectedLayer("",""),this._currentFeatureId="";this._updateShareURL()}async highlightOnMap(t){if(this.clearHighlights(),t&&t.geometry&&t.layer){const i=await d(this.mapView,t.layer.id);i.highlightOptions=null,this._highlightHandle=await u([t.getObjectId()],i,this.mapView,!0,this.zoomToScale)}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return s("calcite-action",{icon:this._sidePanelCollapsed?"chevrons-up":"chevrons-down",onClick:this.toggleSidePanel.bind(this),slot:"header-actions-end",text:this._sidePanelCollapsed?this._translations.expand:this._translations.collapse})}async setMapView(){var t;await this.getLayersToShowInList(),1===(null===(t=this._editableLayerIds)||void 0===t?void 0:t.length)?await this.renderFeaturesList():this._flowItems=["layer-list"],this.mapView.popupEnabled=!1,this._defaultCenter&&this._defaultLevel&&(await this.mapView.goTo({center:this._defaultCenter,zoom:this._defaultLevel}),this._defaultCenter=void 0,this._defaultLevel=void 0)}handleMapClick(){this._mapClickHandle&&this._mapClickHandle.remove(),this._mapClickHandle=this.reactiveUtils.on((()=>this.mapView),"click",this.onMapClick.bind(this))}async onMapClick(t){this.mapView.popupEnabled=!1;const i=await this.mapView.hitTest(t);if(i.results.length>0){const t=[];i.results.forEach((function(i){"graphic"===i.type&&t.push(i.graphic)}));const s=t.filter((t=>this._validLayers.includes(t.layer))),e=t.filter((t=>{var i;return!this._validLayers.includes(t.layer)&&(null===(i=null==t?void 0:t.layer)||void 0===i?void 0:i.id)}));if(s.length>0&&(await this.setSelectedFeatures(s),this._flowItems.length&&this._flowItems.includes("feature-details")?(this._flowItems=[...this._flowItems.slice(0,this._flowItems.indexOf("feature-details")+1)],await this.highlightOnMap(t[0])):this._flowItems=[...this._flowItems,"feature-details"]),e.length>0){this.mapView.popupEnabled=!0;const t={features:e,updateLocationEnabled:!0};await this.mapView.openPopup(t)}}}_getCount(){const t=(this._selectedFeatureIndex+1).toString(),i=this._selectedFeature.length.toString();return this._translations.indexOfTotal.replace("{{index}}",t).replace("{{total}}",i)}async _getTranslations(){const t=await l(this.el);this._translations=t[0]}reduceToConfiguredLayers(t){return Object.keys(t).reduce(((i,s)=>{var e;return(this.reportingOptions?null===(e=this._getLayersConfig(s))||void 0===e?void 0:e.visible:t[s].supportsAdd)&&i.push(s),i}),[])}async getLayersToShowInList(){const t=await p(this.mapView,!0);(await n(this.mapView)).forEach((i=>{var s,e;"feature"===(null==i?void 0:i.type)&&(null==i?void 0:i.editingEnabled)&&(null===(e=null===(s=null==i?void 0:i.capabilities)||void 0===s?void 0:s.operations)||void 0===e?void 0:e.supportsAdd)&&(t[i.id].supportsAdd=!0)})),this._editableLayerIds=this.reduceToConfiguredLayers(t),this._layerItemsHash=t}async renderFeaturesList(){this._flowItems=["feature-list"];const t={detail:this._editableLayerIds};await this.layerListLoaded(t),this.setSelectedLayer(this._validLayers[0].id,this._validLayers[0].title)}_updateShareURL(){var t,i;const s=null===(t=this._shareNode)||void 0===t?void 0:t.shareUrl;if(!s)return;const e=new URL(s);this._selectedLayerId?e.searchParams.set("layerid",this._selectedLayerId):e.searchParams.delete("layerid"),(null===(i=this._selectedFeature)||void 0===i?void 0:i.length)?e.searchParams.set("oid",this._currentFeatureId):e.searchParams.delete("oid"),this._shareNode.shareUrl=e.href}async loadFeatureFromURLParams(){if(this.center&&this.level&&await this.mapView.goTo({center:this.center.split(";").map(Number),zoom:this.level}),this.layerId&&this.objectId){const t=await c(this.mapView,this.layerId);if(t){const i=await f([Number(this.objectId)],t,[],!0,this.mapView.spatialReference);i.length&&(await this.setSelectedFeatures(i),this._flowItems=this._flowItems.length&&"feature-details"!==this._flowItems[this._flowItems.length-1]?[...this._flowItems,"feature-details"]:[...this._flowItems])}}}get el(){return h(this)}static get watchers(){return{isMobile:["isMobileWatchHandler"],mapView:["mapViewWatchHandler"]}}};m.style=":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-color-foreground-1)}.width-full{width:100% !important}.width-0{width:0}.height-full{height:100% !important}.height-0{height:0}.overflow-hidden{overflow:hidden}.border{border:1px solid var(--calcite-color-border-3)}.notice-msg{padding:10px;width:calc(100% - 20px)}.progress-bar{padding:12px}.footer-top-button{padding-bottom:7px}.footer-button{height:35px}.feature-pagination{background-color:var(--calcite-color-foreground-1) !important;border-block-end:1px solid var(--calcite-color-border-3);display:flex;justify-content:center;padding:5px 0}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:bold}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}";export{m as crowdsource_reporter}
|
@@ -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 e,f as t,h as i,g as n,c as s}from"./p-fa1ceaf9.js";import{g as a,m as l,s as o,i as c,a as d,z as r,n as p,l as h,o as v,u as g,p as u,q as f}from"./p-1c3c83a5.js";import{l as m}from"./p-65581d83.js";import"./p-8c6d9b5a.js";import"./p-6a68306c.js";import"./p-d4056c1c.js";const y=class{constructor(t){e(this,t),this.legendvm=void 0,this.featureCount=void 0,this.activeLayerInfo=void 0,this.messages=void 0,this.isChild=!1,this.expanded=!0}layerCaptionElementExpandUpdatedEmitted(){var e;this.expanded=!!(null===(e=this.layerCaption)||void 0===e?void 0:e.expanded)}async componentWillLoad(){new MutationObserver((()=>{t(this.el)})).observe(this.el,{attributes:!0})}render(){return i("div",{key:"347429a5b44b2cbb215713a0ffa5cc9533adac89",style:{borderLeft:"1px solid var(--calcite-color-border-3)"},class:"esri-legend__service esri-legend__group-layer"},i("instant-apps-interactive-legend-layer-element-caption",{key:"cf6409b157fe2a5baffd2577666a134a58ef7321",ref:e=>this.layerCaption=e,class:a(this.el),legendvm:this.legendvm,"feature-count":this.featureCount,activeLayerInfo:this.activeLayerInfo,messages:this.messages,isChild:this.isChild}),i("div",{key:"4c8700da38ae2ede931e9c397f1d23c22288f72e",class:"esri-legend__group-content "+(!1===this.expanded?"hide":"show")},i("slot",{key:"584858e5a6c140166588e73f372af42758bccaa7",name:"content"})))}get el(){return n(this)}};y.style=".sc-instant-apps-interactive-legend-group-legend-element-h{display:block}.sc-instant-apps-interactive-legend-group-legend-element-h .esri-legend__service.sc-instant-apps-interactive-legend-group-legend-element{margin:0;padding:0}.sc-instant-apps-interactive-legend-group-legend-element-h .hide.sc-instant-apps-interactive-legend-group-legend-element{display:none}";const _=class{constructor(t){e(this,t),this.legendvm=void 0,this.featureCount=void 0,this.activeLayerInfo=void 0,this.messages=void 0,this.isChild=void 0,this.expanded=!0}layerCaptionElementExpandUpdatedEmitted(){this.expanded=this.layerCaption.expanded}componentWillLoad(){new MutationObserver((()=>{t(this.el)})).observe(this.el,{attributes:!0})}render(){var e,t;return i("div",{key:"56adcd33aa0f6b227c5082ad717faee2a33af287",style:{borderLeft:"1px solid var(--calcite-color-border-3)"},class:"esri-legend__service"+(this.activeLayerInfo.parent?" esri-legend__group-layer-child":""),tabIndex:0},i("instant-apps-interactive-legend-layer-element-caption",{key:"b07bd777b0b5cf9e2b179fafda9035cfdf744744",ref:e=>this.layerCaption=e,legendvm:this.legendvm,"feature-count":this.featureCount,activeLayerInfo:this.activeLayerInfo,messages:this.messages,isChild:!!this.isChild,class:a(this.el)}),i("div",{key:"d6d93b431e5c431c99a277aaa904721c80432aa1",id:`${null===(t=null===(e=this.activeLayerInfo)||void 0===e?void 0:e.layer)||void 0===t?void 0:t.id}-legend-layer`,class:"esri-legend__layer"+(!1===this.expanded?" hide":" show")},i("slot",{key:"8d52728f213df6f2bcf5d580ecd5fa945caf439e",name:"content"})))}get el(){return n(this)}};_.style=".sc-instant-apps-interactive-legend-layer-element-h{display:block}.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__service.sc-instant-apps-interactive-legend-layer-element{padding:0}.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-body.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-table.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__group-layer-child.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-child-table.sc-instant-apps-interactive-legend-layer-element{margin:0;overflow:hidden}.sc-instant-apps-interactive-legend-layer-element-h .hide.sc-instant-apps-interactive-legend-layer-element{display:none}";const b=class{constructor(t){e(this,t),this.activeLayerInfo=void 0,this.isSizeRamp=void 0,this.isChild=void 0,this.isColorRamp=void 0,this.isRelationshipRamp=void 0,this.isInteractive=void 0,this.zoomTo=void 0,this.legendElement=void 0,this.titleText=void 0,this.legendvm=void 0,this.legendElementIndex=void 0,this.messages=void 0,this.expanded=!0}legendLayerExpandUpdatedEmitted(){this.expanded=this.legendLayerCaption.expanded}render(){var e,t,n,s,a,c,d,r,p;const h=this.isChild?"esri-legend__layer-child-table":"esri-legend__layer-table",v=1===(null===(t=null===(e=this.legendElement)||void 0===e?void 0:e.infos)||void 0===t?void 0:t.length)&&!(null===(a=null===(s=null===(n=this.activeLayerInfo)||void 0===n?void 0:n.layer)||void 0===s?void 0:s.renderer)||void 0===a?void 0:a.field),g=!this.isSizeRamp&&this.isChild||this.isColorRamp?"":" esri-legend__layer-table--size-ramp",u=this.isInteractive?"":" instant-apps-interactive-legend__non-interactive",f=l(this.activeLayerInfo)?" instant-apps-interactive-legend__nested-unique-symbol":"";let m=!(!v||this.expanded||this.zoomTo)||this.expanded;return this.isRelationshipRamp&&(m=o.get("relationshipRampExpandStates")[this.activeLayerInfo.layer.id]),i("div",{key:"5c99e93f4795be0085f06b69b401e54730d41030",class:`${h}${g}${u}${f}`},i("div",{key:"56a99ba823ffb4263ca5b38ce3f2e619fff3932e",id:`${null===(d=null===(c=this.activeLayerInfo)||void 0===c?void 0:c.layer)||void 0===d?void 0:d.id}-legend-element-caption`,class:this.isRelationshipRamp||!this.titleText&&!this.zoomTo&&v?"hide":"show"},i("instant-apps-interactive-legend-legend-element-caption",{key:"c138a76da1ac241049f1f74fc78dd3a26be5859f",ref:e=>this.legendLayerCaption=e,legendvm:this.legendvm,activeLayerInfo:this.activeLayerInfo,layer:this.activeLayerInfo.layer,titleText:this.titleText,legendElement:this.legendElement,legendElementIndex:this.legendElementIndex,zoomTo:this.zoomTo,isInteractive:this.isInteractive,messages:this.messages})),i("div",{key:"content",id:`${null===(p=null===(r=this.activeLayerInfo)||void 0===r?void 0:r.layer)||void 0===p?void 0:p.id}-legend-element-content-${this.legendElementIndex}`,class:!1===m?"hide":"show"},i("slot",{key:"d4b29e3591f026b880c4b859a47bcbc3e3b11ced",name:"content"})))}};b.style=".sc-instant-apps-interactive-legend-legend-element-h{display:block}.sc-instant-apps-interactive-legend-legend-element-h .esri-legend__layer-table.sc-instant-apps-interactive-legend-legend-element,.sc-instant-apps-interactive-legend-legend-element-h .instant-apps-interactive-legend__nested-unique-symbol.sc-instant-apps-interactive-legend-legend-element{margin:0}.sc-instant-apps-interactive-legend-legend-element-h .hide.sc-instant-apps-interactive-legend-legend-element{display:none}";const L=class{constructor(t){e(this,t),this.showAllSelectedEvent=s(this,"showAllSelected",7),this.legendLayerExpandUpdatedEvent=s(this,"legendLayerExpandUpdated",7),this.legendvm=void 0,this.activeLayerInfo=void 0,this.layer=void 0,this.titleText=void 0,this.legendElementIndex=void 0,this.zoomTo=void 0,this.isInteractive=void 0,this.legendElement=void 0,this.expanded=!0,this.messages=void 0}render(){var e,t,n,s;const a=l(this.activeLayerInfo),o=p(this.activeLayerInfo),{expanded:c}=this;return a&&!this.titleText?null:i("div",{class:"esri-legend__layer-caption"},i("calcite-action",{onClick:this.toggleExpanded(),icon:!1===c?"chevron-up":"chevron-down",appearance:"transparent",text:!1===c?null===(e=this.messages)||void 0===e?void 0:e.expand:null===(t=this.messages)||void 0===t?void 0:t.collapse,label:!1===c?null===(n=this.messages)||void 0===n?void 0:n.expand:null===(s=this.messages)||void 0===s?void 0:s.collapse,scale:"s"}),this.isInteractive||o?this.renderLegendElementCaptionControls():null,this.titleText?i("span",{class:"instant-apps-interactive-legend__legend-layer-caption-text",title:this.titleText},this.titleText):null)}renderLegendElementCaptionControls(){var e,t,n,s,a,l,o,d,r,p;const h=this.titleText?"":" instant-apps-interactive-legend__layer-caption-btn-container--no-text",v=(null===(s=null===(n=null===(e=c.data)||void 0===e?void 0:e[null===(t=this.layer)||void 0===t?void 0:t.id])||void 0===n?void 0:n.categories)||void 0===s?void 0:s.size)>1?i("calcite-button",{key:"show-all-button",id:"showAll",onClick:this.handleShowAll(),"icon-start":"list-check-all",appearance:"outline",round:!0,label:null===(a=this.messages)||void 0===a?void 0:a.showAll}):null,g=i("calcite-button",{key:"zoom-to-button",id:"zoomTo",onClick:this.handleZoomTo(),"icon-start":"magnifying-glass-plus",appearance:"outline",round:!0,label:null===(l=this.messages)||void 0===l?void 0:l.zoomTo});return i("div",{key:"layer-caption-btn-container",class:`instant-apps-interactive-legend__layer-caption-btn-container${h}`},v,i("calcite-tooltip",{"reference-element":"showAll",placement:"top",label:null===(o=this.messages)||void 0===o?void 0:o.showAll},null===(d=this.messages)||void 0===d?void 0:d.showAll),this.zoomTo?[g,i("calcite-tooltip",{"reference-element":"zoomTo",placement:"top",label:null===(r=this.messages)||void 0===r?void 0:r.zoomTo},null===(p=this.messages)||void 0===p?void 0:p.zoomTo)]:null)}toggleExpanded(){return()=>{var e,t;this.expanded=!this.expanded,this.legendLayerExpandUpdatedEvent.emit(),(null===(t=null===(e=this.activeLayerInfo)||void 0===e?void 0:e.legendElements)||void 0===t?void 0:t.filter((e=>"relationship-ramp"===e.type))).length>0&&o.set("relationshipRampExpandStates",Object.assign(Object.assign({},c.relationshipRampExpandStates),{[this.activeLayerInfo.layer.id]:this.expanded}))}}handleZoomTo(){return()=>{const e=h(this.layer),t=d(e,this.legendElement);r(e,this.legendvm.view,t)}}handleShowAll(){return()=>{var e,t;const i=null===(e=c.data)||void 0===e?void 0:e[null===(t=this.layer)||void 0===t?void 0:t.id];d(i,this.legendElement)?(()=>{const e=v(i,this.legendElement.title);g({intLegendLayerData:e,layerId:this.layer.id})})():((()=>{const e=u(i);g({intLegendLayerData:e,layerId:this.layer.id})})(),this.showAllSelectedEvent.emit())}}get el(){return n(this)}};L.style=".sc-instant-apps-interactive-legend-legend-element-caption-h{display:block;--instant-apps-interactive-legend-heading-font-size:1rem;--instant-apps-interactive-legend-heading-font-weight:normal;--instant-apps-interactive-legend-caption-font-weight:normal;--instant-apps-interactive-legend-secondary-color:var(--calcite-color-text-1);--instant-apps-interactive-legend-field-name-font-size:1rem;--instant-apps-interactive-legend-total-feature-count-font-size:0.875rem;--instant-apps-interactive-legend-info-font-size:0.875rem;--instant-apps-interactive-legend-info-item-background--selected:#c7ebff;--instant-apps-interactive-legend-info-item-color--selected:var(--calcite-color-text-2);--instant-apps-interactive-legend-secondary-background-color:var(--calcite-color-background);--instant-apps-interactive-legend-ui-padding:15px 10px}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption{display:flex;align-items:center;font-size:var(--instant-apps-interactive-legend-field-name-font-size);background-color:var(--instant-apps-interactive-legend-secondary-background-color);color:var(--instant-apps-interactive-legend-secondary-color)}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption calcite-action.sc-instant-apps-interactive-legend-legend-element-caption{margin-left:20px}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__legend-layer-caption-text.sc-instant-apps-interactive-legend-legend-element-caption{display:inline-block;margin-left:5px;margin-bottom:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:normal}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__layer-caption-btn-container.sc-instant-apps-interactive-legend-legend-element-caption{white-space:nowrap}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__layer-caption-btn-container.sc-instant-apps-interactive-legend-legend-element-caption calcite-button.sc-instant-apps-interactive-legend-legend-element-caption{margin:2px}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption{font-weight:var(--instant-apps-interactive-legend-caption-font-weight);padding:var(--instant-apps-interactive-legend-ui-padding)}html[dir=rtl] .sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption calcite-action.sc-instant-apps-interactive-legend-legend-element-caption{margin-left:unset;margin-right:20px}";const $=".esri-relationship-ramp--diamond__middle-column--ramp svg g",k=class{constructor(t){e(this,t),this.cellNodeCounter=0,this.filterMode=void 0,this.activeLayerInfo=void 0,this.legendElement=void 0,this.messages=void 0}applyInteractivity(){this.applyRelationshipRampInteractivity()}showAllSelectedEmitted(){const e=0===c.data[this.activeLayerInfo.layer.id].queryExpressions.length,t=this.relationshipRamp.querySelector($).children,i=t?Array.from(t):null;e&&(null==i||i.forEach((e=>{e.removeAttribute("stroke"),e.removeAttribute("stroke-width"),e.removeAttribute("stroke-opacity"),e.classList.remove("esri-interactive-legend--selected-cell")})))}async componentWillLoad(){const[e]=await m(["esri/symbols/support/symbolUtils"]);this.symbolUtils=e}render(){var e,t;return i("div",{key:"a3427fc452afc75183a7249568914149089a7539",ref:e=>{if(!(null==e?void 0:e.querySelector("relationshipStyles"))){const t=document.createElement("style");t.id="relationshipStyles",t.innerHTML="\n rect:hover {\n cursor: pointer;\n opacity: 0.8;\n }\n ",null==e||e.appendChild(t)}}},i("span",{key:"e4cd263043d0adb199588487438596b4fdb2e51f",class:"instant-apps-interactive-legend-relationship__instructional-text"},null===(t=null===(e=this.messages)||void 0===e?void 0:e.relationship)||void 0===t?void 0:t.instructionalText),this.renderRelationshipRamp())}renderRelationshipRamp(){var e;const t=(null===(e=this.activeLayerInfo)||void 0===e?void 0:e.layer).renderer,n=this.symbolUtils.renderRelationshipRampPreviewHTML(t);return i("div",{ref:e=>{this.relationshipRamp=e,this.applyRelationshipRampInteractivity()},key:"relationship-ramp-diamond",innerHTML:`${null==n?void 0:n.outerHTML}`})}applyRelationshipRampInteractivity(){if(!(this.relationshipRamp&&this.activeLayerInfo&&this.legendElement&&c.data))return;let e=setInterval((()=>{const t=this.relationshipRamp.querySelector($);t&&(clearInterval(e),this.setupRelationshipDrawingStyle(t.children))}),10)}setupRelationshipDrawingStyle(e){const t=e?Array.from(e):null;if(!t)return;t.map(((e,t)=>{var i,n;const s=(null===(n=null===(i=this.activeLayerInfo)||void 0===i?void 0:i.layer)||void 0===n?void 0:n.renderer).uniqueValueInfos;if(s[t]){const i=s[t].symbol.color;s.forEach(((t,n)=>{const s=t.symbol.color;i.r===s.r&&i.g===s.g&&i.b===s.b&&i.a===s.a&&this.setCellAttributes(e,n)})),e.classList.add("esri-interactive-legend__svg-rect-element")}}));const i=this.reorderCellNodes(t);this.attachFeatureIndexes(i),this.applyEventHandlers()}setCellAttributes(e,t){const i=this.activeLayerInfo.layer.renderer.uniqueValueInfos,n=this.generateIndexPattern(t);i[n]&&(e.setAttribute("data-color",`${i[n].symbol.color}`),e.setAttribute("data-cell-index",`${n}`),e.setAttribute("tabindex","0"))}generateIndexPattern(e){const{focus:t,numClasses:i}=this.legendElement;return"HL"===t?e:2===i?this.twoClasses(e,t):3===i?this.threeClasses(e,t):4===i?this.fourClasses(e,t):null}twoClasses(e,t){return"HH"===t||null===t?0===e||2===e?e+1:1===e||3===e?e-1:null:"LH"===t?0===e?e+3:1===e?e+1:2===e?e-1:3===e?e-3:4===e?e+0:null:"LL"===t?0===e||1===e?e+2:2===e||3===e?e-2:null:void 0}threeClasses(e,t){return"HH"===t||null===t?0===e||3===e||6===e?e+2:2===e||5===e||8===e?e-2:e:"LH"===t?0===e?e+8:1===e?e+6:2===e?e+4:3===e?e+2:5===e?e-2:6===e?e-4:7===e?e-6:8===e?e-8:e:"LL"===t?0===e||1===e||2===e?e+6:6===e||7===e||8===e?e-6:e:void 0}fourClasses(e,t){return"HH"===t||null===t?0===e||4===e||8===e||12===e?e+3:1===e||5===e||9===e||13===e?e+1:2===e||6===e||10===e||14===e?e-1:3===e||7===e||11===e||15===e?e-3:null:"LH"===t?0===e?e+15:1===e?e+13:2===e?e+11:3===e?e+9:4===e?e+7:5===e?e+5:6===e?e+3:7===e?e+1:8===e?e-1:9===e?e-3:10===e?e-5:11===e?e-7:12===e?e-9:13===e?e-11:14===e?e-13:15===e?e-15:null:"LL"===t?0===e||1===e||2===e||3===e?e+12:4===e||5===e||6===e||7===e?e+4:8===e||9===e||10===e||11===e?e-4:12===e||13===e||14===e||15===e?e-12:null:void 0}reorderCellNodes(e){const t=[];for(;this.cellNodeCounter<=e.length-1;)e.map((e=>{parseInt(e.getAttribute("data-cell-index"))===this.cellNodeCounter&&t.push(e)})),this.cellNodeCounter++;return this.cellNodeCounter=0,t}attachFeatureIndexes(e){const{focus:t,numClasses:i}=this.legendElement;"HH"===t||null===t?this.relationshipFocusIsHighHigh(e,i):"LL"===t?this.relationshipFocusIsLowLow(e,i):"LH"===t?this.relationshipFocusIsLowHigh(e,i):"HL"===t&&this.relationshipFocusIsHighLow(e,i),this.cellNodeCounter=0}relationshipFocusIsHighHigh(e,t){for(let i=t-1;i>=0;i--)for(let n=t-1;n>=0;n--)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsLowLow(e,t){for(let i=0;i<t;i++)for(let n=0;n<t;n++)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsLowHigh(e,t){for(let i=0;i<t;i++)for(let n=t-1;n>=0;n--)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsHighLow(e,t){for(let i=t-1;i>=0;i--)for(let n=0;n<t;n++)this.setDataAttributes(e,n,i,t),this.cellNodeCounter++}setDataAttributes(e,t,i,n){const s=e[this.cellNodeCounter];2===n?this.twoClassAttributes(s,t,i):3===n?this.threeClassAttributes(s,t,i):this.fourClassAttributes(s,t,i)}twoClassAttributes(e,t,i){const{legendElement:n}=this;"HL"===n.focus?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i)}threeClassAttributes(e,t,i){const{legendElement:n}=this;1===this.cellNodeCounter||3===this.cellNodeCounter||5===this.cellNodeCounter||7===this.cellNodeCounter?"HL"===n.focus?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):"HL"!==n.focus?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}fourClassAttributes(e,t,i){const{legendElement:n}=this,{focus:s}=n;1===this.cellNodeCounter||2===this.cellNodeCounter||4===this.cellNodeCounter||5===this.cellNodeCounter||7===this.cellNodeCounter||8===this.cellNodeCounter||10===this.cellNodeCounter||11===this.cellNodeCounter||13===this.cellNodeCounter||14===this.cellNodeCounter?"HL"===s?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):"HL"!==s?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}setDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${t}`),e.setAttribute("data-feature-j",`${i}`),this.setDataCellFocus(e,t,i)}swapDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${i}`),e.setAttribute("data-feature-j",`${t}`),this.setDataCellFocus(e,i,t)}setDataCellFocus(e,t,i){const{numClasses:n}=this.legendElement;2===n?this.setDataCellFocusForTwoClasses(e,t,i):3===n?this.setDataCellFocusForThreeClasses(e,t,i):4===n&&this.setDataCellFocusForFourClasses(e,t,i)}setDataCellFocusForTwoClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","HL"):1===t&&1===i&&e.setAttribute("data-cell-focus","HH")}setDataCellFocusForThreeClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LM"):0===t&&2===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","ML"):1===t&&1===i?e.setAttribute("data-cell-focus","MM"):1===t&&2===i?e.setAttribute("data-cell-focus","MH"):2===t&&0===i?e.setAttribute("data-cell-focus","HL"):2===t&&1===i?e.setAttribute("data-cell-focus","HM"):2===t&&2===i&&e.setAttribute("data-cell-focus","HH")}setDataCellFocusForFourClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LM1"):0===t&&2===i?e.setAttribute("data-cell-focus","LM2"):0===t&&3===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","M1L"):1===t&&1===i?e.setAttribute("data-cell-focus","M1M1"):1===t&&2===i?e.setAttribute("data-cell-focus","M1M2"):1===t&&3===i?e.setAttribute("data-cell-focus","M1H"):2===t&&0===i?e.setAttribute("data-cell-focus","M2L"):2===t&&1===i?e.setAttribute("data-cell-focus","M2M1"):2===t&&2===i?e.setAttribute("data-cell-focus","M2M2"):2===t&&3===i?e.setAttribute("data-cell-focus","M2H"):3===t&&0===i?e.setAttribute("data-cell-focus","HL"):3===t&&1===i?e.setAttribute("data-cell-focus","HM1"):3===t&&2===i?e.setAttribute("data-cell-focus","HM2"):3===t&&3===i&&e.setAttribute("data-cell-focus","HH")}applyEventHandlers(){const e=document.querySelectorAll(".esri-interactive-legend__svg-rect-element");Array.from(e).map((e=>{const t=e.getAttribute("data-feature-i"),i=e.getAttribute("data-feature-j"),n=e.getAttribute("data-cell-focus");e.onclick=()=>{this.handleFilter(t,i,n),this.handleSelectedElement(e)},e.onkeydown=s=>{const{key:a}=s;("Enter"===a||"Space"===a)&&(this.handleFilter(t,i,n),this.handleSelectedElement(e))}}))}async handleFilter(e,t,i){var n,s,a,l,o;const d=this.activeLayerInfo.layer,{authoringInfo:r}=d.renderer,{field1:p,field2:h}=r,{queryExpressions:v,fLayerView:g}=c.data[this.activeLayerInfo.layer.id];if("relationship-ramp"===this.legendElement.type&&r&&p&&h){const c=this.generateExpressionParams(p,h,r,e,t,i),d=this.generateExpressionForRelationship(c);0===v.length?v[0]=d:-1===v.indexOf(d)?v.push(d):v.splice(v.indexOf(d),1);const u=v.join(" OR "),y=null!==(s=null===(n=null==g?void 0:g.filter)||void 0===n?void 0:n.timeExtent)&&void 0!==s?s:null,[_,b]=await m(["esri/layers/support/FeatureFilter","esri/layers/support/FeatureEffect"]);if("filter"===(null===(a=this.filterMode)||void 0===a?void 0:a.type))g.filter=new _({where:u,timeExtent:(null===(l=null==g?void 0:g.filter)||void 0===l?void 0:l.timeExtent)?g.filter.timeExtent:null});else if(null===(o=this.filterMode)||void 0===o?void 0:o.effect){const{includedEffect:e,excludedEffect:t}=this.filterMode.effect,i=await f(t,g,"excludedEffect"),n=await f(e,g,"includedEffect");g.featureEffect=new b({filter:new _({where:u,timeExtent:y}),includedEffect:n,excludedEffect:i})}}}generateExpressionParams(e,t,i,n,s,a){const l=[],o=e.field,c=t.field,d=e.classBreakInfos,r=t.classBreakInfos,p=i.field1.hasOwnProperty("normalizationField")?i.field1.normalizationField:null,h=i.field2.hasOwnProperty("normalizationField")?i.field2.normalizationField:null;return d.forEach(((e,t)=>{const i=[];r.forEach(((e,n)=>{i.push([d[t],r[n]])})),l.push(i)})),{data:l,i:n,j:s,field1:p?`(${o}/${p})`:`${o}`,field2:h?`(${c}/${h})`:`${c}`,focus:a}}generateExpressionForRelationship(e){const{focus:t,field1:i,field2:n,data:s,i:a,j:l}=e;return"LL"===t?`${i} >= ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} >= ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:"LM"===t||"LM1"===t||"LM2"===t||"LH"===t?`${i} >= ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} > ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:"ML"===t||"M1L"===t||"M2L"===t||"HL"===t?`${i} > ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} >= ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:`${i} > ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} > ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`}handleSelectedElement(e){const t=e.classList;t.contains("esri-interactive-legend--selected-cell")?(e.removeAttribute("stroke"),e.removeAttribute("stroke-width"),e.removeAttribute("stroke-opacity"),t.remove("esri-interactive-legend--selected-cell")):(t.add("esri-interactive-legend--selected-cell"),e.setAttribute("stroke","black"),e.setAttribute("stroke-width","3px"),e.setAttribute("stroke-opacity","1"))}};k.style=".sc-instant-apps-interactive-legend-relationship-h{display:block}.sc-instant-apps-interactive-legend-relationship-h .instant-apps-interactive-legend-relationship__instructional-text.sc-instant-apps-interactive-legend-relationship{display:inline-block;width:100%;text-align:center;margin-bottom:10px;background-color:#d2e9f9}.calcite-mode-dark .sc-instant-apps-interactive-legend-relationship-h .instant-apps-interactive-legend-relationship__instructional-text.sc-instant-apps-interactive-legend-relationship{background-color:var(--calcite-color-brand);color:#151515}";export{y as instant_apps_interactive_legend_group_legend_element,_ as instant_apps_interactive_legend_layer_element,b as instant_apps_interactive_legend_legend_element,L as instant_apps_interactive_legend_legend_element_caption,k as instant_apps_interactive_legend_relationship}
|
6
|
+
import{r as e,f as t,h as i,g as n,c as s}from"./p-fa1ceaf9.js";import{g as a,m as l,s as o,i as c,a as d,z as r,n as p,l as h,o as v,u as g,p as u,q as f}from"./p-841863b8.js";import{l as m}from"./p-4cd4cb85.js";import"./p-8c6d9b5a.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";const y=class{constructor(t){e(this,t),this.legendvm=void 0,this.featureCount=void 0,this.activeLayerInfo=void 0,this.messages=void 0,this.isChild=!1,this.expanded=!0}layerCaptionElementExpandUpdatedEmitted(){var e;this.expanded=!!(null===(e=this.layerCaption)||void 0===e?void 0:e.expanded)}async componentWillLoad(){new MutationObserver((()=>{t(this.el)})).observe(this.el,{attributes:!0})}render(){return i("div",{key:"347429a5b44b2cbb215713a0ffa5cc9533adac89",style:{borderLeft:"1px solid var(--calcite-color-border-3)"},class:"esri-legend__service esri-legend__group-layer"},i("instant-apps-interactive-legend-layer-element-caption",{key:"cf6409b157fe2a5baffd2577666a134a58ef7321",ref:e=>this.layerCaption=e,class:a(this.el),legendvm:this.legendvm,"feature-count":this.featureCount,activeLayerInfo:this.activeLayerInfo,messages:this.messages,isChild:this.isChild}),i("div",{key:"4c8700da38ae2ede931e9c397f1d23c22288f72e",class:"esri-legend__group-content "+(!1===this.expanded?"hide":"show")},i("slot",{key:"584858e5a6c140166588e73f372af42758bccaa7",name:"content"})))}get el(){return n(this)}};y.style=".sc-instant-apps-interactive-legend-group-legend-element-h{display:block}.sc-instant-apps-interactive-legend-group-legend-element-h .esri-legend__service.sc-instant-apps-interactive-legend-group-legend-element{margin:0;padding:0}.sc-instant-apps-interactive-legend-group-legend-element-h .hide.sc-instant-apps-interactive-legend-group-legend-element{display:none}";const b=class{constructor(t){e(this,t),this.legendvm=void 0,this.featureCount=void 0,this.activeLayerInfo=void 0,this.messages=void 0,this.isChild=void 0,this.expanded=!0}layerCaptionElementExpandUpdatedEmitted(){this.expanded=this.layerCaption.expanded}componentWillLoad(){new MutationObserver((()=>{t(this.el)})).observe(this.el,{attributes:!0})}render(){var e,t;return i("div",{key:"56adcd33aa0f6b227c5082ad717faee2a33af287",style:{borderLeft:"1px solid var(--calcite-color-border-3)"},class:"esri-legend__service"+(this.activeLayerInfo.parent?" esri-legend__group-layer-child":""),tabIndex:0},i("instant-apps-interactive-legend-layer-element-caption",{key:"b07bd777b0b5cf9e2b179fafda9035cfdf744744",ref:e=>this.layerCaption=e,legendvm:this.legendvm,"feature-count":this.featureCount,activeLayerInfo:this.activeLayerInfo,messages:this.messages,isChild:!!this.isChild,class:a(this.el)}),i("div",{key:"d6d93b431e5c431c99a277aaa904721c80432aa1",id:`${null===(t=null===(e=this.activeLayerInfo)||void 0===e?void 0:e.layer)||void 0===t?void 0:t.id}-legend-layer`,class:"esri-legend__layer"+(!1===this.expanded?" hide":" show")},i("slot",{key:"8d52728f213df6f2bcf5d580ecd5fa945caf439e",name:"content"})))}get el(){return n(this)}};b.style=".sc-instant-apps-interactive-legend-layer-element-h{display:block}.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__service.sc-instant-apps-interactive-legend-layer-element{padding:0}.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-body.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-table.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__group-layer-child.sc-instant-apps-interactive-legend-layer-element,.sc-instant-apps-interactive-legend-layer-element-h .esri-legend__layer-child-table.sc-instant-apps-interactive-legend-layer-element{margin:0;overflow:hidden}.sc-instant-apps-interactive-legend-layer-element-h .hide.sc-instant-apps-interactive-legend-layer-element{display:none}";const _=class{constructor(t){e(this,t),this.activeLayerInfo=void 0,this.isSizeRamp=void 0,this.isChild=void 0,this.isColorRamp=void 0,this.isRelationshipRamp=void 0,this.isInteractive=void 0,this.zoomTo=void 0,this.legendElement=void 0,this.titleText=void 0,this.legendvm=void 0,this.legendElementIndex=void 0,this.messages=void 0,this.expanded=!0}legendLayerExpandUpdatedEmitted(){this.expanded=this.legendLayerCaption.expanded}render(){var e,t,n,s,a,c,d,r,p;const h=this.isChild?"esri-legend__layer-child-table":"esri-legend__layer-table",v=1===(null===(t=null===(e=this.legendElement)||void 0===e?void 0:e.infos)||void 0===t?void 0:t.length)&&!(null===(a=null===(s=null===(n=this.activeLayerInfo)||void 0===n?void 0:n.layer)||void 0===s?void 0:s.renderer)||void 0===a?void 0:a.field),g=!this.isSizeRamp&&this.isChild||this.isColorRamp?"":" esri-legend__layer-table--size-ramp",u=this.isInteractive?"":" instant-apps-interactive-legend__non-interactive",f=l(this.activeLayerInfo)?" instant-apps-interactive-legend__nested-unique-symbol":"";let m=!(!v||this.expanded||this.zoomTo)||this.expanded;return this.isRelationshipRamp&&(m=o.get("relationshipRampExpandStates")[this.activeLayerInfo.layer.id]),i("div",{key:"5c99e93f4795be0085f06b69b401e54730d41030",class:`${h}${g}${u}${f}`},i("div",{key:"56a99ba823ffb4263ca5b38ce3f2e619fff3932e",id:`${null===(d=null===(c=this.activeLayerInfo)||void 0===c?void 0:c.layer)||void 0===d?void 0:d.id}-legend-element-caption`,class:this.isRelationshipRamp||!this.titleText&&!this.zoomTo&&v?"hide":"show"},i("instant-apps-interactive-legend-legend-element-caption",{key:"c138a76da1ac241049f1f74fc78dd3a26be5859f",ref:e=>this.legendLayerCaption=e,legendvm:this.legendvm,activeLayerInfo:this.activeLayerInfo,layer:this.activeLayerInfo.layer,titleText:this.titleText,legendElement:this.legendElement,legendElementIndex:this.legendElementIndex,zoomTo:this.zoomTo,isInteractive:this.isInteractive,messages:this.messages})),i("div",{key:"content",id:`${null===(p=null===(r=this.activeLayerInfo)||void 0===r?void 0:r.layer)||void 0===p?void 0:p.id}-legend-element-content-${this.legendElementIndex}`,class:!1===m?"hide":"show"},i("slot",{key:"d4b29e3591f026b880c4b859a47bcbc3e3b11ced",name:"content"})))}};_.style=".sc-instant-apps-interactive-legend-legend-element-h{display:block}.sc-instant-apps-interactive-legend-legend-element-h .esri-legend__layer-table.sc-instant-apps-interactive-legend-legend-element,.sc-instant-apps-interactive-legend-legend-element-h .instant-apps-interactive-legend__nested-unique-symbol.sc-instant-apps-interactive-legend-legend-element{margin:0}.sc-instant-apps-interactive-legend-legend-element-h .hide.sc-instant-apps-interactive-legend-legend-element{display:none}";const L=class{constructor(t){e(this,t),this.showAllSelectedEvent=s(this,"showAllSelected",7),this.legendLayerExpandUpdatedEvent=s(this,"legendLayerExpandUpdated",7),this.legendvm=void 0,this.activeLayerInfo=void 0,this.layer=void 0,this.titleText=void 0,this.legendElementIndex=void 0,this.zoomTo=void 0,this.isInteractive=void 0,this.legendElement=void 0,this.expanded=!0,this.messages=void 0}render(){var e,t,n,s;const a=l(this.activeLayerInfo),o=p(this.activeLayerInfo),{expanded:c}=this;return a&&!this.titleText?null:i("div",{class:"esri-legend__layer-caption"},i("calcite-action",{onClick:this.toggleExpanded(),icon:!1===c?"chevron-up":"chevron-down",appearance:"transparent",text:!1===c?null===(e=this.messages)||void 0===e?void 0:e.expand:null===(t=this.messages)||void 0===t?void 0:t.collapse,label:!1===c?null===(n=this.messages)||void 0===n?void 0:n.expand:null===(s=this.messages)||void 0===s?void 0:s.collapse,scale:"s"}),this.isInteractive||o?this.renderLegendElementCaptionControls():null,this.titleText?i("span",{class:"instant-apps-interactive-legend__legend-layer-caption-text",title:this.titleText},this.titleText):null)}renderLegendElementCaptionControls(){var e,t,n,s,a,l,o,d,r,p;const h=this.titleText?"":" instant-apps-interactive-legend__layer-caption-btn-container--no-text",v=(null===(s=null===(n=null===(e=c.data)||void 0===e?void 0:e[null===(t=this.layer)||void 0===t?void 0:t.id])||void 0===n?void 0:n.categories)||void 0===s?void 0:s.size)>1?i("calcite-button",{key:"show-all-button",id:"showAll",onClick:this.handleShowAll(),"icon-start":"list-check-all",appearance:"outline",round:!0,label:null===(a=this.messages)||void 0===a?void 0:a.showAll}):null,g=i("calcite-button",{key:"zoom-to-button",id:"zoomTo",onClick:this.handleZoomTo(),"icon-start":"magnifying-glass-plus",appearance:"outline",round:!0,label:null===(l=this.messages)||void 0===l?void 0:l.zoomTo});return i("div",{key:"layer-caption-btn-container",class:`instant-apps-interactive-legend__layer-caption-btn-container${h}`},v,i("calcite-tooltip",{"reference-element":"showAll",placement:"top",label:null===(o=this.messages)||void 0===o?void 0:o.showAll},null===(d=this.messages)||void 0===d?void 0:d.showAll),this.zoomTo?[g,i("calcite-tooltip",{"reference-element":"zoomTo",placement:"top",label:null===(r=this.messages)||void 0===r?void 0:r.zoomTo},null===(p=this.messages)||void 0===p?void 0:p.zoomTo)]:null)}toggleExpanded(){return()=>{var e,t;this.expanded=!this.expanded,this.legendLayerExpandUpdatedEvent.emit(),(null===(t=null===(e=this.activeLayerInfo)||void 0===e?void 0:e.legendElements)||void 0===t?void 0:t.filter((e=>"relationship-ramp"===e.type))).length>0&&o.set("relationshipRampExpandStates",Object.assign(Object.assign({},c.relationshipRampExpandStates),{[this.activeLayerInfo.layer.id]:this.expanded}))}}handleZoomTo(){return()=>{const e=h(this.layer),t=d(e,this.legendElement);r(e,this.legendvm.view,t)}}handleShowAll(){return()=>{var e,t;const i=null===(e=c.data)||void 0===e?void 0:e[null===(t=this.layer)||void 0===t?void 0:t.id];d(i,this.legendElement)?(()=>{const e=v(i,this.legendElement.title);g({intLegendLayerData:e,layerId:this.layer.id})})():((()=>{const e=u(i);g({intLegendLayerData:e,layerId:this.layer.id})})(),this.showAllSelectedEvent.emit())}}get el(){return n(this)}};L.style=".sc-instant-apps-interactive-legend-legend-element-caption-h{display:block;--instant-apps-interactive-legend-heading-font-size:1rem;--instant-apps-interactive-legend-heading-font-weight:normal;--instant-apps-interactive-legend-caption-font-weight:normal;--instant-apps-interactive-legend-secondary-color:var(--calcite-color-text-1);--instant-apps-interactive-legend-field-name-font-size:1rem;--instant-apps-interactive-legend-total-feature-count-font-size:0.875rem;--instant-apps-interactive-legend-info-font-size:0.875rem;--instant-apps-interactive-legend-info-item-background--selected:#c7ebff;--instant-apps-interactive-legend-info-item-color--selected:var(--calcite-color-text-2);--instant-apps-interactive-legend-secondary-background-color:var(--calcite-color-background);--instant-apps-interactive-legend-ui-padding:15px 10px}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption{display:flex;align-items:center;font-size:var(--instant-apps-interactive-legend-field-name-font-size);background-color:var(--instant-apps-interactive-legend-secondary-background-color);color:var(--instant-apps-interactive-legend-secondary-color)}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption calcite-action.sc-instant-apps-interactive-legend-legend-element-caption{margin-left:20px}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__legend-layer-caption-text.sc-instant-apps-interactive-legend-legend-element-caption{display:inline-block;margin-left:5px;margin-bottom:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:normal}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__layer-caption-btn-container.sc-instant-apps-interactive-legend-legend-element-caption{white-space:nowrap}.sc-instant-apps-interactive-legend-legend-element-caption-h .instant-apps-interactive-legend__layer-caption-btn-container.sc-instant-apps-interactive-legend-legend-element-caption calcite-button.sc-instant-apps-interactive-legend-legend-element-caption{margin:2px}.sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption{font-weight:var(--instant-apps-interactive-legend-caption-font-weight);padding:var(--instant-apps-interactive-legend-ui-padding)}html[dir=rtl] .sc-instant-apps-interactive-legend-legend-element-caption-h .esri-legend__layer-caption.sc-instant-apps-interactive-legend-legend-element-caption calcite-action.sc-instant-apps-interactive-legend-legend-element-caption{margin-left:unset;margin-right:20px}";const $=".esri-relationship-ramp--diamond__middle-column--ramp svg g",k=class{constructor(t){e(this,t),this.cellNodeCounter=0,this.filterMode=void 0,this.activeLayerInfo=void 0,this.legendElement=void 0,this.messages=void 0}applyInteractivity(){this.applyRelationshipRampInteractivity()}showAllSelectedEmitted(){const e=0===c.data[this.activeLayerInfo.layer.id].queryExpressions.length,t=this.relationshipRamp.querySelector($).children,i=t?Array.from(t):null;e&&(null==i||i.forEach((e=>{e.removeAttribute("stroke"),e.removeAttribute("stroke-width"),e.removeAttribute("stroke-opacity"),e.classList.remove("esri-interactive-legend--selected-cell")})))}async componentWillLoad(){const[e]=await m(["esri/symbols/support/symbolUtils"]);this.symbolUtils=e}render(){var e,t;return i("div",{key:"a3427fc452afc75183a7249568914149089a7539",ref:e=>{if(!(null==e?void 0:e.querySelector("relationshipStyles"))){const t=document.createElement("style");t.id="relationshipStyles",t.innerHTML="\n rect:hover {\n cursor: pointer;\n opacity: 0.8;\n }\n ",null==e||e.appendChild(t)}}},i("span",{key:"e4cd263043d0adb199588487438596b4fdb2e51f",class:"instant-apps-interactive-legend-relationship__instructional-text"},null===(t=null===(e=this.messages)||void 0===e?void 0:e.relationship)||void 0===t?void 0:t.instructionalText),this.renderRelationshipRamp())}renderRelationshipRamp(){var e;const t=(null===(e=this.activeLayerInfo)||void 0===e?void 0:e.layer).renderer,n=this.symbolUtils.renderRelationshipRampPreviewHTML(t);return i("div",{ref:e=>{this.relationshipRamp=e,this.applyRelationshipRampInteractivity()},key:"relationship-ramp-diamond",innerHTML:`${null==n?void 0:n.outerHTML}`})}applyRelationshipRampInteractivity(){if(!(this.relationshipRamp&&this.activeLayerInfo&&this.legendElement&&c.data))return;let e=setInterval((()=>{const t=this.relationshipRamp.querySelector($);t&&(clearInterval(e),this.setupRelationshipDrawingStyle(t.children))}),10)}setupRelationshipDrawingStyle(e){const t=e?Array.from(e):null;if(!t)return;t.map(((e,t)=>{var i,n;const s=(null===(n=null===(i=this.activeLayerInfo)||void 0===i?void 0:i.layer)||void 0===n?void 0:n.renderer).uniqueValueInfos;if(s[t]){const i=s[t].symbol.color;s.forEach(((t,n)=>{const s=t.symbol.color;i.r===s.r&&i.g===s.g&&i.b===s.b&&i.a===s.a&&this.setCellAttributes(e,n)})),e.classList.add("esri-interactive-legend__svg-rect-element")}}));const i=this.reorderCellNodes(t);this.attachFeatureIndexes(i),this.applyEventHandlers()}setCellAttributes(e,t){const i=this.activeLayerInfo.layer.renderer.uniqueValueInfos,n=this.generateIndexPattern(t);i[n]&&(e.setAttribute("data-color",`${i[n].symbol.color}`),e.setAttribute("data-cell-index",`${n}`),e.setAttribute("tabindex","0"))}generateIndexPattern(e){const{focus:t,numClasses:i}=this.legendElement;return"HL"===t?e:2===i?this.twoClasses(e,t):3===i?this.threeClasses(e,t):4===i?this.fourClasses(e,t):null}twoClasses(e,t){return"HH"===t||null===t?0===e||2===e?e+1:1===e||3===e?e-1:null:"LH"===t?0===e?e+3:1===e?e+1:2===e?e-1:3===e?e-3:4===e?e+0:null:"LL"===t?0===e||1===e?e+2:2===e||3===e?e-2:null:void 0}threeClasses(e,t){return"HH"===t||null===t?0===e||3===e||6===e?e+2:2===e||5===e||8===e?e-2:e:"LH"===t?0===e?e+8:1===e?e+6:2===e?e+4:3===e?e+2:5===e?e-2:6===e?e-4:7===e?e-6:8===e?e-8:e:"LL"===t?0===e||1===e||2===e?e+6:6===e||7===e||8===e?e-6:e:void 0}fourClasses(e,t){return"HH"===t||null===t?0===e||4===e||8===e||12===e?e+3:1===e||5===e||9===e||13===e?e+1:2===e||6===e||10===e||14===e?e-1:3===e||7===e||11===e||15===e?e-3:null:"LH"===t?0===e?e+15:1===e?e+13:2===e?e+11:3===e?e+9:4===e?e+7:5===e?e+5:6===e?e+3:7===e?e+1:8===e?e-1:9===e?e-3:10===e?e-5:11===e?e-7:12===e?e-9:13===e?e-11:14===e?e-13:15===e?e-15:null:"LL"===t?0===e||1===e||2===e||3===e?e+12:4===e||5===e||6===e||7===e?e+4:8===e||9===e||10===e||11===e?e-4:12===e||13===e||14===e||15===e?e-12:null:void 0}reorderCellNodes(e){const t=[];for(;this.cellNodeCounter<=e.length-1;)e.map((e=>{parseInt(e.getAttribute("data-cell-index"))===this.cellNodeCounter&&t.push(e)})),this.cellNodeCounter++;return this.cellNodeCounter=0,t}attachFeatureIndexes(e){const{focus:t,numClasses:i}=this.legendElement;"HH"===t||null===t?this.relationshipFocusIsHighHigh(e,i):"LL"===t?this.relationshipFocusIsLowLow(e,i):"LH"===t?this.relationshipFocusIsLowHigh(e,i):"HL"===t&&this.relationshipFocusIsHighLow(e,i),this.cellNodeCounter=0}relationshipFocusIsHighHigh(e,t){for(let i=t-1;i>=0;i--)for(let n=t-1;n>=0;n--)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsLowLow(e,t){for(let i=0;i<t;i++)for(let n=0;n<t;n++)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsLowHigh(e,t){for(let i=0;i<t;i++)for(let n=t-1;n>=0;n--)this.setDataAttributes(e,i,n,t),this.cellNodeCounter++}relationshipFocusIsHighLow(e,t){for(let i=t-1;i>=0;i--)for(let n=0;n<t;n++)this.setDataAttributes(e,n,i,t),this.cellNodeCounter++}setDataAttributes(e,t,i,n){const s=e[this.cellNodeCounter];2===n?this.twoClassAttributes(s,t,i):3===n?this.threeClassAttributes(s,t,i):this.fourClassAttributes(s,t,i)}twoClassAttributes(e,t,i){const{legendElement:n}=this;"HL"===n.focus?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i)}threeClassAttributes(e,t,i){const{legendElement:n}=this;1===this.cellNodeCounter||3===this.cellNodeCounter||5===this.cellNodeCounter||7===this.cellNodeCounter?"HL"===n.focus?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):"HL"!==n.focus?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}fourClassAttributes(e,t,i){const{legendElement:n}=this,{focus:s}=n;1===this.cellNodeCounter||2===this.cellNodeCounter||4===this.cellNodeCounter||5===this.cellNodeCounter||7===this.cellNodeCounter||8===this.cellNodeCounter||10===this.cellNodeCounter||11===this.cellNodeCounter||13===this.cellNodeCounter||14===this.cellNodeCounter?"HL"===s?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):"HL"!==s?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}setDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${t}`),e.setAttribute("data-feature-j",`${i}`),this.setDataCellFocus(e,t,i)}swapDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${i}`),e.setAttribute("data-feature-j",`${t}`),this.setDataCellFocus(e,i,t)}setDataCellFocus(e,t,i){const{numClasses:n}=this.legendElement;2===n?this.setDataCellFocusForTwoClasses(e,t,i):3===n?this.setDataCellFocusForThreeClasses(e,t,i):4===n&&this.setDataCellFocusForFourClasses(e,t,i)}setDataCellFocusForTwoClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","HL"):1===t&&1===i&&e.setAttribute("data-cell-focus","HH")}setDataCellFocusForThreeClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LM"):0===t&&2===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","ML"):1===t&&1===i?e.setAttribute("data-cell-focus","MM"):1===t&&2===i?e.setAttribute("data-cell-focus","MH"):2===t&&0===i?e.setAttribute("data-cell-focus","HL"):2===t&&1===i?e.setAttribute("data-cell-focus","HM"):2===t&&2===i&&e.setAttribute("data-cell-focus","HH")}setDataCellFocusForFourClasses(e,t,i){0===t&&0===i?e.setAttribute("data-cell-focus","LL"):0===t&&1===i?e.setAttribute("data-cell-focus","LM1"):0===t&&2===i?e.setAttribute("data-cell-focus","LM2"):0===t&&3===i?e.setAttribute("data-cell-focus","LH"):1===t&&0===i?e.setAttribute("data-cell-focus","M1L"):1===t&&1===i?e.setAttribute("data-cell-focus","M1M1"):1===t&&2===i?e.setAttribute("data-cell-focus","M1M2"):1===t&&3===i?e.setAttribute("data-cell-focus","M1H"):2===t&&0===i?e.setAttribute("data-cell-focus","M2L"):2===t&&1===i?e.setAttribute("data-cell-focus","M2M1"):2===t&&2===i?e.setAttribute("data-cell-focus","M2M2"):2===t&&3===i?e.setAttribute("data-cell-focus","M2H"):3===t&&0===i?e.setAttribute("data-cell-focus","HL"):3===t&&1===i?e.setAttribute("data-cell-focus","HM1"):3===t&&2===i?e.setAttribute("data-cell-focus","HM2"):3===t&&3===i&&e.setAttribute("data-cell-focus","HH")}applyEventHandlers(){const e=document.querySelectorAll(".esri-interactive-legend__svg-rect-element");Array.from(e).map((e=>{const t=e.getAttribute("data-feature-i"),i=e.getAttribute("data-feature-j"),n=e.getAttribute("data-cell-focus");e.onclick=()=>{this.handleFilter(t,i,n),this.handleSelectedElement(e)},e.onkeydown=s=>{const{key:a}=s;("Enter"===a||"Space"===a)&&(this.handleFilter(t,i,n),this.handleSelectedElement(e))}}))}async handleFilter(e,t,i){var n,s,a,l,o;const d=this.activeLayerInfo.layer,{authoringInfo:r}=d.renderer,{field1:p,field2:h}=r,{queryExpressions:v,fLayerView:g}=c.data[this.activeLayerInfo.layer.id];if("relationship-ramp"===this.legendElement.type&&r&&p&&h){const c=this.generateExpressionParams(p,h,r,e,t,i),d=this.generateExpressionForRelationship(c);0===v.length?v[0]=d:-1===v.indexOf(d)?v.push(d):v.splice(v.indexOf(d),1);const u=v.join(" OR "),y=null!==(s=null===(n=null==g?void 0:g.filter)||void 0===n?void 0:n.timeExtent)&&void 0!==s?s:null,[b,_]=await m(["esri/layers/support/FeatureFilter","esri/layers/support/FeatureEffect"]);if("filter"===(null===(a=this.filterMode)||void 0===a?void 0:a.type))g.filter=new b({where:u,timeExtent:(null===(l=null==g?void 0:g.filter)||void 0===l?void 0:l.timeExtent)?g.filter.timeExtent:null});else if(null===(o=this.filterMode)||void 0===o?void 0:o.effect){const{includedEffect:e,excludedEffect:t}=this.filterMode.effect,i=await f(t,g,"excludedEffect"),n=await f(e,g,"includedEffect");g.featureEffect=new _({filter:new b({where:u,timeExtent:y}),includedEffect:n,excludedEffect:i})}}}generateExpressionParams(e,t,i,n,s,a){const l=[],o=e.field,c=t.field,d=e.classBreakInfos,r=t.classBreakInfos,p=i.field1.hasOwnProperty("normalizationField")?i.field1.normalizationField:null,h=i.field2.hasOwnProperty("normalizationField")?i.field2.normalizationField:null;return d.forEach(((e,t)=>{const i=[];r.forEach(((e,n)=>{i.push([d[t],r[n]])})),l.push(i)})),{data:l,i:n,j:s,field1:p?`(${o}/${p})`:`${o}`,field2:h?`(${c}/${h})`:`${c}`,focus:a}}generateExpressionForRelationship(e){const{focus:t,field1:i,field2:n,data:s,i:a,j:l}=e;return"LL"===t?`${i} >= ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} >= ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:"LM"===t||"LM1"===t||"LM2"===t||"LH"===t?`${i} >= ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} > ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:"ML"===t||"M1L"===t||"M2L"===t||"HL"===t?`${i} > ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} >= ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`:`${i} > ${s[a][l][0].minValue} AND ${i} <= ${s[a][l][0].maxValue} AND ${n} > ${s[a][l][1].minValue} AND ${n} <= ${s[a][l][1].maxValue}`}handleSelectedElement(e){const t=e.classList;t.contains("esri-interactive-legend--selected-cell")?(e.removeAttribute("stroke"),e.removeAttribute("stroke-width"),e.removeAttribute("stroke-opacity"),t.remove("esri-interactive-legend--selected-cell")):(t.add("esri-interactive-legend--selected-cell"),e.setAttribute("stroke","black"),e.setAttribute("stroke-width","3px"),e.setAttribute("stroke-opacity","1"))}};k.style=".sc-instant-apps-interactive-legend-relationship-h{display:block}.sc-instant-apps-interactive-legend-relationship-h .instant-apps-interactive-legend-relationship__instructional-text.sc-instant-apps-interactive-legend-relationship{display:inline-block;width:100%;text-align:center;margin-bottom:10px;background-color:#d2e9f9}.calcite-mode-dark .sc-instant-apps-interactive-legend-relationship-h .instant-apps-interactive-legend-relationship__instructional-text.sc-instant-apps-interactive-legend-relationship{background-color:var(--calcite-color-brand);color:#151515}";export{y as instant_apps_interactive_legend_group_legend_element,b as instant_apps_interactive_legend_layer_element,_ as instant_apps_interactive_legend_legend_element,L as instant_apps_interactive_legend_legend_element_caption,k as instant_apps_interactive_legend_relationship}
|
@@ -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,h as o,H as e,g as s}from"./p-fa1ceaf9.js";import{l as n}from"./p-
|
6
|
+
import{r as t,h as o,H as e,g as s}from"./p-fa1ceaf9.js";import{l as n}from"./p-4cd4cb85.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";const a="components",i=`[slot="${a}"]`,r=class{constructor(o){t(this,o),this.components=[],this.view=void 0}async componentWillLoad(){const[t]=await n(["esri/widgets/Expand"]);this.Expand=t,this._handleComponents()}componentWillUpdate(){this._handleComponents()}render(){return o(e,{key:"b4eb66870fea801441c2c4410fce060a7785b66a"},o("slot",{key:"9fadbc49629b92b3ae909da5171f2f0ae87e2daf",name:a}))}_handleComponents(){const t=this._getComponentsNode();t&&(this._resetUI(t),this._attachComponents(t))}_attachComponents(t){this.components.forEach(this._attachmentComponent(t))}_attachmentComponent(t){return(o,e)=>{let s=o.content;o.isExpand&&(s=this._getExpand(o),o.expandIconClass&&(s.expandIconClass=o.expandIconClass),o.expandIcon&&(s.expandIcon=o.expandIcon),o.collapseTooltip&&(s.collapseTooltip=o.collapseTooltip),o.expandTooltip&&(s.expandTooltip=o.expandTooltip)),s.container||(s.container=document.createElement("div")),null==t||t.appendChild(s.container),e!==this.components.length-1&&(s.container.style="border-bottom: 1px solid var(--calcite-color-border-3)")}}_getExpand(t){const{view:o}=this,{content:e}=t;return new this.Expand({content:e,view:o,expanded:!1,mode:"floating",group:"instant-apps-control-panel"})}_getComponentsNode(){return this.el.querySelector(i)}_resetUI(t){if(t.children.length>0){const{firstChild:o}=t;for(;o;)t.removeChild(o)}}get el(){return s(this)}};r.style=":host{display:block}";export{r as instant_apps_control_panel}
|
@@ -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,h as i,g as o}from"./p-fa1ceaf9.js";import{g as n}from"./p-
|
6
|
+
import{r as t,h as i,g as o}from"./p-fa1ceaf9.js";import{g as n}from"./p-1c64264d.js";import"./p-4cd4cb85.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";const e=class{constructor(i){t(this,i),this.popoverTitle=void 0,this.subtitle=void 0,this.content=void 0,this.imgSrc=void 0,this.imgAlt=void 0,this.mediaSrc=void 0,this.index=void 0,this.referenceElement=void 0,this.parent=void 0,this.placement="trailing-start",this.refId=void 0,this.pagination=!1,this.disableAction=!1,this.popoverAction=void 0,this.messages=void 0,this.messageOverrides=void 0}async componentDidLoad(){n(this,this.messageOverrides)}componentDidUpdate(){this.popoverEl.referenceElement=this.referenceElement}render(){var t,o,n,e,a;return i("calcite-popover",{key:"11ee827bbe4001af1b881bbc05728dbff4c2869c",ref:t=>this.popoverEl=t,heading:this.popoverTitle,"auto-close":!0,placement:this.placement,messageOverrides:{close:null===(t=this.messages)||void 0===t?void 0:t.close},"trigger-disabled":!0,"ref-id":this.refId,closable:!0,referenceElement:this.referenceElement,label:this.popoverTitle},i("div",{key:"cec04f88bebd5c920a2449836880dcef516cd3a7",class:"instant-apps-popover__content"+(this.disableAction?" instant-apps-popover--action-disabled":"")},this.disableAction?null:i("calcite-action",{key:"popover-action",class:"instant-apps-popover__action",onClick:this.popoverAction,icon:"rtl"===document.dir?"chevron-right":"chevron-left",compact:!0,"text-enabled":!0,text:(null===(o=this.messageOverrides)||void 0===o?void 0:o.popoverAction)?this.messageOverrides.popoverAction:this.messages.back}),i("section",{key:"b388401688d359725090de56366d264f5b2e05fb"},i("span",{key:"a6fede03a223acdb9770947d81511fbee85c4f8e",id:"subtitle"},this.subtitle),i("p",{key:"c3ccf7e549eaeb61234d5ee53784b054f188788a"},this.content),this.imgSrc?i("img",{key:`iac-popover-img-${this.refId}`,class:"instant-apps-popover__img",src:this.imgSrc,alt:this.imgAlt?this.imgAlt:""}):null),this.pagination?i("div",{key:`iac-popover-footer-${this.index}`,class:"instant-apps-popover__footer"},i("span",null,this.index+1," ",null===(n=this.messages)||void 0===n?void 0:n.of," ",null===(a=null===(e=this.parent)||void 0===e?void 0:e.instantAppsPopovers)||void 0===a?void 0:a.size),this.renderPagination()):null))}renderPagination(){var t,o;const{index:n,messages:e,parent:a}=this,s=n===(null===(o=null===(t=this.parent)||void 0===t?void 0:t.instantAppsPopovers)||void 0===o?void 0:o.size)-1;return i("div",{key:"pagination-button-container",class:"instant-apps-popover__button-container"},0===n?null:i("calcite-button",{key:"prev",onClick:()=>null==a?void 0:a.previous(),appearance:"outline",kind:"neutral"},null==e?void 0:e.back),i("calcite-button",{key:"next",onClick:()=>{s?null==a||a.done():null==a||a.next()}},s?null==e?void 0:e.done:null==e?void 0:e.next))}get el(){return o(this)}};e.style=":host{display:block}.instant-apps-popover__content{display:flex;flex-direction:column;padding:0 5% 5% 5%;max-width:35vw;font-family:var(--calcite-sans-family);font-size:0.875rem}.instant-apps-popover__content .instant-apps-popover__action{align-self:flex-start;--calcite-color-foreground-2:transparent}.instant-apps-popover__content span{display:inline-block;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1);margin:0 0 10px 0;font-family:var(--calcite-sans-family)}.instant-apps-popover__content p{line-height:19.12px;margin:0;margin-bottom:10px;font-family:var(--calcite-sans-family)}.instant-apps-popover__content .instant-apps-popover__footer{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.instant-apps-popover__content .instant-apps-popover__footer span{margin-bottom:0;font-weight:normal;font-size:0.875rem;font-family:var(--calcite-sans-family)}.instant-apps-popover__content .instant-apps-popover__footer calcite-button:first-child{--calcite-color-foreground-3:transparent}.instant-apps-popover__content .instant-apps-popover__footer calcite-button:last-child{margin-left:5px}.instant-apps-popover__content .instant-apps-popover__img{width:100%;margin-bottom:10px}.instant-apps-popover__content.instant-apps-popover--action-disabled{padding:5%}.instant-apps-popover__content.instant-apps-popover--action-disabled #subtitle{margin:0 0 10px 0}";export{e as instant_apps_popover}
|
@@ -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 e,h as a,H as s,g as i}from"./p-fa1ceaf9.js";import{g as n}from"./p-
|
6
|
+
import{r as t,c as e,h as a,H as s,g as i}from"./p-fa1ceaf9.js";import{g as n}from"./p-ac122d9e.js";import{S as h}from"./p-a230b270.js";import{w as o}from"./p-04674a1e.js";import{g as r}from"./p-a42ff7fe.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";const d={base:"instant-apps-header--standard",headerContainer:"instant-apps-header__header-container",headerContent:"instant-apps-header__header-content",flipRtl:"instant-apps-header--rtl",logoScale:"instant-apps-header__logo-scale--",logoHeight:"instant-apps-header__logo-height--",standardHeight:"instant-apps-header__standard-height",actionsEndContainer:"instant-apps-header__actions-end-container",alignment:{center:"instant-apps-header__header-content--center",right:"instant-apps-header__header-content--right"}},p=class{constructor(a){t(this,a),this.infoIsOpenChanged=e(this,"infoIsOpenChanged",6),this._sanitizer=new h({whiteList:{h1:["style"],h2:["style"],h3:["style"],h4:["style"],h5:["style"],h6:["style"],img:["style","src","width","height"],pre:["style"],p:["id","class","style"],div:["id","class","style","role"],span:["id","class","style","role"],figure:["class","style"],header:["id","class","style","role"]}},!0),this.dir=void 0,this.titleText=void 0,this.titleTextLink=void 0,this.backgroundColor=void 0,this.textColor=void 0,this.logoImage=void 0,this.logoScale="m",this.logoImageAltText=void 0,this.logoLink=void 0,this.infoButton=!1,this.infoIsOpen=!1,this.infoTitleText=void 0,this.customHeaderHtml=void 0,this.headerAlignment="left",this.customHeaderCss=void 0,this.fontFamily="var(--calcite-sans-family);",this.mobileWidthBreakpoint=o.medium[1],this.initialScale="m"}sanitizeCustomHeaderHtml(){this.customHeaderHtml=this._sanitizer.sanitize(this.customHeaderHtml)}componentWillLoad(){this.dir=n(this.el),this.handleMobileBreakpoints(),this.dir=n(this.el),this.customHeaderHtml=this._sanitizer.sanitize(this.customHeaderHtml)}render(){var t,e,i,n;const h="undefined"===this.logoImage||"undefined"===(null===(e=null===(t=this.logoImage)||void 0===t?void 0:t.split("?"))||void 0===e?void 0:e[0])||""===(null===(n=null===(i=this.logoImage)||void 0===i?void 0:i.split("?"))||void 0===n?void 0:n[0])||!this.logoImage,o=this.renderLogo(h),p=this.renderTitle(),l="right"===this.headerAlignment||"center"===this.headerAlignment?d.headerContent.concat(" ",d.alignment[this.headerAlignment]):d.headerContent,c=r(this.fontFamily);return a(s,{key:"f93285efa9fe03f2cdedfe0e870f7cb44802e151"},this.customHeaderHtml?[a("style",null,this.customHeaderCss),a("div",{id:"customHeader",innerHTML:this.customHeaderHtml})]:a("header",{class:`${d.base}${"rtl"===this.dir?` ${d.flipRtl}`:""}${this.logoImage&&!h?` ${d.logoHeight}${this.logoScale}`:` ${d.standardHeight}`}`,style:{backgroundColor:this.backgroundColor,fontFamily:c}},a("div",{class:d.headerContainer},a("span",{class:l},o,p,this.infoButton?a("calcite-button",{style:{"--calcite-color-text-1":this.textColor},id:"infoButton",alignment:"start",appearance:"transparent",kind:"neutral","icon-start":"information-f",scale:"s",label:this.infoTitleText,title:this.infoTitleText,onClick:this.toggleInfo.bind(this)}):null),a("div",{class:d.actionsEndContainer},a("slot",{name:"actions-end"})))))}renderLogo(t){return t?"":this.logoImage&&this.logoLink?a("a",{href:`${this.logoLink}`,target:"_blank"},a("img",{class:`${d.logoScale}${this.logoScale}`,src:`${this.logoImage}`,alt:`${this.logoImageAltText}`})):this.logoImage?a("img",{class:`${d.logoScale}${this.logoScale}`,src:`${this.logoImage}`,alt:this.logoImageAltText}):""}renderTitle(){return this.titleText&&this.titleTextLink?a("a",{style:{color:this.textColor},href:`${this.titleTextLink}`,rel:"noopener noreferrer",target:"_blank"},a("h1",{style:{color:this.textColor}},this.titleText)):a("h1",{style:{color:this.textColor}},this.titleText)}toggleInfo(){this.infoIsOpen=!this.infoIsOpen,this.infoIsOpenChanged.emit(this.infoIsOpen)}mqlCallback(){return t=>{const{matches:e}=t;this.logoScale=e?"s":this.initialScale}}handleMobileBreakpoints(){this.initialScale=this.logoScale;const t=window.matchMedia(`(max-width: ${this.mobileWidthBreakpoint}px)`);t.matches&&(this.logoScale="s"),t.addEventListener("change",this.mqlCallback())}get el(){return i(this)}static get watchers(){return{customHeaderHtml:["sanitizeCustomHeaderHtml"]}}};p.style=":host{--instant-apps-header-height:auto;--instant-apps-header-min-height:50px;--instant-apps-header-title-text-link-decoration:underline;--instant-apps-header-height--logo-scale--s:55px;--instant-apps-header-logo-width--logo-scale--s:35px;--instant-apps-header-logo-height--logo-scale--s:35px;--instant-apps-header-height--logo-scale--m:70px;--instant-apps-header-logo-width--logo-scale--m:50px;--instant-apps-header-logo-height--logo-scale--m:50px;--instant-apps-header-height--logo-scale--l:80px;--instant-apps-header-logo-width--logo-scale--l:60px;--instant-apps-header-logo-height--logo-scale--l:60px;--instant-apps-header-actions-end-height:auto;width:100%}:host .image.image_resized img{width:100%}:host .instant-apps-header--standard{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;width:100%;height:var(--instant-apps-header-height);background-color:var(--calcite-color-foreground-1);color:var(--calcite-color-text-1);font-family:var(--calcite-sans-family);min-height:var(--instant-apps-header-min-height)}:host .instant-apps-header--standard .instant-apps-header__header-container{display:flex;align-items:center;width:100%;height:inherit}:host .instant-apps-header--standard .instant-apps-header__header-container slot{display:flex;height:inherit}:host .instant-apps-header--standard .instant-apps-header__header-container ::slotted(*){display:flex;min-height:var(--instant-apps-header-min-height);height:var(--instant-apps-header-height)}:host .instant-apps-header--standard .instant-apps-header__header-container ::slotted(*) calcite-button{height:100%}:host .instant-apps-header--standard .instant-apps-header__header-content{box-sizing:border-box;display:flex;align-items:center;width:100%;min-width:0;height:inherit;padding:5px 10px}:host .instant-apps-header--standard .instant-apps-header__header-content a{display:flex;align-items:center;-webkit-text-decoration:var(--instant-apps-header-title-text-link-decoration);text-decoration:var(--instant-apps-header-title-text-link-decoration)}:host .instant-apps-header--standard .instant-apps-header__header-content a img{padding-right:0}:host .instant-apps-header--standard .instant-apps-header__header-content img{margin:10px}:host .instant-apps-header--standard .instant-apps-header__header-content h1{margin:0;font-size:1.25rem;color:var(--calcite-color-text-1);font-weight:430;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .instant-apps-header--standard .instant-apps-header__header-content #infoButton{margin-inline-start:10px}:host .instant-apps-header--standard .instant-apps-header__header-content--center{justify-content:center}:host .instant-apps-header--standard .instant-apps-header__header-content--right{justify-content:end}:host .instant-apps-header__logo-height--s{height:var(--instant-apps-header-height--logo-scale--s)}:host .instant-apps-header__logo-height--s .instant-apps-header__header-content h1{font-size:1.125rem}:host .instant-apps-header__logo-scale--s{width:var(--instant-apps-header-logo-width--logo-scale--s);height:var(--instant-apps-header-logo-height--logo-scale--s)}:host .instant-apps-header__logo-height--m{height:var(--instant-apps-header-height--logo-scale--m)}:host .instant-apps-header__logo-scale--m{width:var(--instant-apps-header-logo-width--logo-scale--m);height:var(--instant-apps-header-logo-height--logo-scale--m)}:host .instant-apps-header__logo-height--l{height:var(--instant-apps-header-height--logo-scale--l)}:host .instant-apps-header__logo-height--l .instant-apps-header__header-content h1{font-size:1.375rem}:host .instant-apps-header__logo-scale--l{width:var(--instant-apps-header-logo-width--logo-scale--l);height:var(--instant-apps-header-logo-height--logo-scale--l)}:host .instant-apps-header__actions-end-container{height:var(--instant-apps-header-actions-end-height);display:flex}:host .instant-apps-header__sign-in-container{height:inherit;display:flex;align-items:center}:host .instant-apps-header__sign-in-container calcite-dropdown,:host .instant-apps-header__sign-in-container calcite-navigation-user{height:100%}:host .instant-apps-header__sign-in-container calcite-button{margin:0 10px}:host .instant-apps-header__sign-in-container calcite-dropdown-group{min-width:140px}";export{p as instant_apps_header}
|
@@ -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 e,c as t,h as a,H as i,g as c}from"./p-fa1ceaf9.js";import{g as o}from"./p-
|
6
|
+
import{r as e,c as t,h as a,H as i,g as c}from"./p-fa1ceaf9.js";import{g as o}from"./p-c0bf1d9f.js";import{E as n}from"./p-c1cf3ebc.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";const r=class{constructor(a){e(this,a),this.layoutChanged=t(this,"layoutChanged",7),this._layoutMode=n.GRID,this._translations=void 0}async componentWillLoad(){await this._getTranslations()}render(){return a(i,{key:"10b8c1f7ee9503c4bd7cb1bbbd8b58cb5009336f"},a("div",{key:"39ae898c19e24746bfa5f7510006e368f37fe7d5",class:"display-flex"},a("div",{key:"0080f9562ab26665e26a8447e4484d76e4861f9f",class:"display-flex action-center"},a("calcite-icon",{key:"cc941eede331c518fe0944e2bf4b46b0c9799f0c",class:"icon icon-color",icon:"information",id:"app-information-icon",scale:"s"}),a("calcite-popover",{key:"d92ccbe95f58f15964fd8b5d0d1446216ef780a7",closable:!0,label:"",referenceElement:"app-information-icon"},a("span",{key:"37d306563b80589652c25809233063c60035397b",class:"tooltip-message"},this._translations.appInfo))),a("div",{key:"e33a33071990cd0edb32e1c76505ddcc834ae932",class:"header-text"},this._translations.layout),this._getAction("grid-background",n.GRID,this._translations.grid),this._getAction("vertical-background",n.VERTICAL,this._translations.vertical),this._getAction("horizontal-background",n.HORIZONTAL,this._translations.horizontal)))}_getAction(e,t,i){return a("div",null,a("calcite-action",{alignment:"center",appearance:"transparent",compact:!1,id:e,indicator:t===this._layoutMode,onClick:()=>{this._setLayoutMode(t)},text:""},a("div",{class:e+" img-background"})),a("calcite-tooltip",{label:"",placement:"bottom","reference-element":e},a("span",null,i)))}_setLayoutMode(e){this._layoutMode=e,this.layoutChanged.emit(this._layoutMode)}async _getTranslations(){const e=await o(this.el);this._translations=e[0]}get el(){return c(this)}};r.style=":host{display:block}.action-center{-webkit-box-align:center;-webkit-align-items:center;-ms-grid-row-align:center;align-items:center;align-content:center;justify-content:center}.display-flex{display:flex}.icon-color{--calcite-color-icon-color:var(--calcite-color-brand)}.icon{cursor:pointer}.tooltip-message{padding:5px 8px;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-color-text-2)}.header-text{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);padding-inline:0.75rem;padding-block:0.875rem;line-height:1.25rem}.img-background{background-repeat:no-repeat;background-size:100% 100%;width:38px;height:26px}.grid-background{background-image:url('../../assets/data/images/grid.png')}.horizontal-background{background-image:url('../../assets/data/images/horizontal.png')}.vertical-background{background-image:url('../../assets/data/images/vertical.png')}";export{r as layout_manager}
|
@@ -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 o,h as i,H as e,g as a}from"./p-fa1ceaf9.js";import{g as l}from"./p-
|
6
|
+
import{r as t,c as o,h as i,H as e,g as a}from"./p-fa1ceaf9.js";import{g as l}from"./p-1c64264d.js";import"./p-4cd4cb85.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";const c=class{constructor(i){t(this,i),this.measureActive=o(this,"measureActive",7),this.messages=void 0,this.view=void 0,this.areaUnit=void 0,this.linearUnit=void 0,this.coordinateFormat=void 0,this.activeToolType=void 0,this.closable=!1}async componentWillLoad(){l(this)}componentDidLoad(){}render(){var t;return i(e,{key:"7a579ade6dca5d875e5dac86e1ef23778babd570"},i("calcite-panel",{key:"91593087bbf31b2ec252d802962e8ece7246c7d6",heading:null===(t=null==this?void 0:this.messages)||void 0===t?void 0:t.label,closable:this.closable},i("div",{key:"628cb313218c45b1375ab96d1d9b349f07d02a75"},this.renderActionPad()),this.renderMeasureToolPanel()))}renderMeasureToolPanel(){const{view:t,coordinateFormat:o,areaUnit:e,linearUnit:a,activeToolType:l}=this;return i("calcite-panel",{class:"instant-apps-measurement__content"},i("instant-apps-measurement-tool",{ref:t=>{this.measureTool=t},view:t,measureConfiguration:{coordinateFormat:o,areaUnit:e,linearUnit:a,activeToolType:l}}))}renderActionPad(){const{messages:t,activeToolType:o}=this;return i("calcite-action-pad",{"expand-disabled":!0,layout:"horizontal",position:"end"},i("calcite-action",{class:"distance"===o?"active-tool":"",text:null==t?void 0:t.line,icon:"measure",scale:"m","data-value":"distance",onClick:this._handleToolClick.bind(this)},i("calcite-tooltip",{"close-on-click":!0,placement:"bottom",slot:"tooltip"},null==t?void 0:t.line)),i("calcite-action",{class:"area"===o?"active-tool":"",text:null==t?void 0:t.area,scale:"m",icon:"measure-area","data-value":"area",onClick:this._handleToolClick.bind(this)},i("calcite-tooltip",{"close-on-click":!0,placement:"bottom",slot:"tooltip"},null==t?void 0:t.area)),i("calcite-action",{class:"point"===o?"active-tool":"",text:null==t?void 0:t.point,scale:"m",icon:"pin-plus","data-value":"point",onClick:this._handleToolClick.bind(this)},i("calcite-tooltip",{"close-on-click":!0,placement:"bottom",slot:"tooltip"},null==t?void 0:t.point)),i("calcite-action",{text:null==t?void 0:t.clear,scale:"m",icon:"trash","data-value":"clear",onClick:this._handleToolClick.bind(this)},i("calcite-tooltip",{"close-on-click":!0,placement:"bottom",slot:"tooltip"},null==t?void 0:t.clear)))}_handleToolClick(t){var o,i,e,a;if(!(null==this?void 0:this.measureTool))return;const l=null===(o=null==t?void 0:t.target)||void 0===o?void 0:o.dataset.value;this.measureTool.activeTool=l;const c=document.getElementsByClassName("active-tool");for(let t=0;t<(null==c?void 0:c.length);t++)null===(e=null===(i=c[t])||void 0===i?void 0:i.classList)||void 0===e||e.remove("active-tool");null===(a=null==t?void 0:t.target)||void 0===a||a.classList.add("active-tool"),this.measureActive.emit(void 0!==l&&"clear"!==l)}get el(){return a(this)}};c.style=".sc-instant-apps-measurement-h .sc-instant-apps-measurement.sc-instant-apps-measurement{background:var(--calcite-color-foreground-1)}.sc-instant-apps-measurement-h .active-tool.sc-instant-apps-measurement{--calcite-color-foreground-1:#c7eaff}";export{c as instant_apps_measurement}
|