@esri/solutions-components 0.11.25 → 0.11.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/cjs/card-manager_3.cjs.entry.js +12 -21
  2. package/dist/cjs/create-feature_4.cjs.entry.js +6 -4
  3. package/dist/cjs/create-related-feature_3.cjs.entry.js +2 -1
  4. package/dist/cjs/crowdsource-manager.cjs.entry.js +1 -1
  5. package/dist/cjs/crowdsource-reporter.cjs.entry.js +1 -1
  6. package/dist/cjs/{downloadUtils-fcae8eb1.js → downloadUtils-da9e19c6.js} +1 -1
  7. package/dist/cjs/feature-list.cjs.entry.js +3 -3
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/map-layer-picker.cjs.entry.js +1 -1
  10. package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
  11. package/dist/cjs/{mapViewUtils-4ea7216c.js → mapViewUtils-8b26c9d0.js} +3 -1
  12. package/dist/cjs/{popupUtils-87b006a6.js → popupUtils-69ad52f5.js} +1 -1
  13. package/dist/cjs/public-notification.cjs.entry.js +2 -2
  14. package/dist/cjs/solutions-components.cjs.js +1 -1
  15. package/dist/collection/components/create-feature/create-feature.js +2 -1
  16. package/dist/collection/components/create-related-feature/create-related-feature.js +1 -0
  17. package/dist/collection/components/edit-card/edit-card.js +1 -0
  18. package/dist/collection/components/layer-table/layer-table.js +10 -21
  19. package/dist/collection/utils/queryUtils.js +3 -1
  20. package/dist/collection/utils/queryUtils.ts +3 -1
  21. package/dist/components/create-feature2.js +2 -1
  22. package/dist/components/create-related-feature2.js +1 -0
  23. package/dist/components/edit-card2.js +1 -0
  24. package/dist/components/layer-table2.js +10 -20
  25. package/dist/components/queryUtils.js +3 -1
  26. package/dist/esm/card-manager_3.entry.js +12 -21
  27. package/dist/esm/create-feature_4.entry.js +6 -4
  28. package/dist/esm/create-related-feature_3.entry.js +2 -1
  29. package/dist/esm/crowdsource-manager.entry.js +1 -1
  30. package/dist/esm/crowdsource-reporter.entry.js +1 -1
  31. package/dist/esm/{downloadUtils-078cd709.js → downloadUtils-0b6677dc.js} +1 -1
  32. package/dist/esm/feature-list.entry.js +3 -3
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/esm/map-layer-picker.entry.js +1 -1
  35. package/dist/esm/map-select-tools_3.entry.js +2 -2
  36. package/dist/esm/{mapViewUtils-9da9be1c.js → mapViewUtils-2682c21a.js} +3 -1
  37. package/dist/esm/{popupUtils-6a965512.js → popupUtils-9233302d.js} +1 -1
  38. package/dist/esm/public-notification.entry.js +2 -2
  39. package/dist/esm/solutions-components.js +1 -1
  40. package/dist/solutions-components/p-3a7bde22.entry.js +6 -0
  41. package/dist/solutions-components/{p-db3391b9.js → p-4084e2d1.js} +1 -1
  42. package/dist/solutions-components/{p-3e16c433.entry.js → p-477dbafa.entry.js} +1 -1
  43. package/dist/solutions-components/{p-a9b81651.entry.js → p-47f13430.entry.js} +1 -1
  44. package/dist/solutions-components/p-5693ce7a.js +36 -0
  45. package/dist/solutions-components/p-61fe842c.entry.js +6 -0
  46. package/dist/solutions-components/p-824775f3.entry.js +6 -0
  47. package/dist/solutions-components/{p-84976ab1.entry.js → p-896b6028.entry.js} +1 -1
  48. package/dist/solutions-components/{p-0bc11bac.entry.js → p-9777c01f.entry.js} +1 -1
  49. package/dist/solutions-components/{p-abcdbba6.entry.js → p-d3e24466.entry.js} +1 -1
  50. package/dist/solutions-components/{p-c117b7f7.entry.js → p-ee8fa795.entry.js} +1 -1
  51. package/dist/solutions-components/{p-bf04c6f4.js → p-f3003b3a.js} +2 -2
  52. package/dist/solutions-components/solutions-components.esm.js +1 -1
  53. package/dist/solutions-components/utils/queryUtils.ts +3 -1
  54. package/dist/solutions-components_commit.txt +6 -6
  55. package/dist/types/components/layer-table/layer-table.d.ts +0 -4
  56. package/package.json +1 -1
  57. package/dist/solutions-components/p-12f91837.entry.js +0 -6
  58. package/dist/solutions-components/p-16c5c285.entry.js +0 -6
  59. package/dist/solutions-components/p-1dc077ec.entry.js +0 -6
  60. package/dist/solutions-components/p-dcd2f00b.js +0 -36
@@ -1,6 +0,0 @@
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 t,c as i,g as e,h as s,F as a,H as h}from"./p-e996c38f.js";import{l as o,g as n}from"./p-404cbf48.js";import{a as c,g as d}from"./p-dcd2f00b.js";import{P as r}from"./p-bf04c6f4.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-80cb7c73.js";import"./p-db3391b9.js";import"./p-4fe489cf.js";import"./p-2bc98cb0.js";import"./p-4f236b5d.js";import"./p-570b13d9.js";import"./p-0668e30d.js";const l=class{constructor(e){t(this,e),this.success=i(this,"success",7),this.fail=i(this,"fail",7),this.drawComplete=i(this,"drawComplete",7),this.editingAttachment=i(this,"editingAttachment",7),this.progressStatus=i(this,"progressStatus",7),this.modeChanged=i(this,"modeChanged",7),this.customizeSubmit=!1,this.enableSearch=!1,this.enableSnapping=!1,this.floorLevel=void 0,this.formElements=void 0,this.isMobile=void 0,this.locale=void 0,this.mapView=void 0,this.searchConfiguration=void 0,this.selectedLayerId=void 0,this.showGuidingMsg=!0,this.showGuidingMsgWhileDrawing=!0,this.submitNewReportsMessage=void 0,this._currentPage="templatePicker",this._editorLoading=!1,this._translations=void 0}get el(){return e(this)}Editor;ExpressionInfo;FeatureLayer;FieldElement;FormTemplate;MapView;Search;_addingAttachment;_calciteNotice;_container;_editor;_isSubmitBtnClicked=!1;_mapViewContainer;reactiveUtils;_search;_searchDiv;_selectedLayer;_updatedMapView;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async mapViewWatchHandler(){await this.mapView.when((async()=>{await this.init()}))}async isMobileHandler(){this.modeChanged.emit()}async _editorLoadingWatchHandler(t){if(t){if(this._container?.classList.add("display-none"),this._selectedLayer?.isTable){const t={layer:this._selectedLayer,template:this._selectedLayer.templates[0]};await this._editor.startCreateFeaturesWorkflowAtFeatureCreation(t),await this.hideEditorsElements()}else await this.startCreate();this._container?.classList.remove("display-none"),this._editorLoading=!1}}async submit(){this._editor&&(this._isSubmitBtnClicked=!0,this._editor.viewModel.featureFormViewModel.submit())}async refresh(t){this._editor&&this._setFloorLevel(t)}success;fail;drawComplete;editingAttachment;progressStatus;modeChanged;async componentWillLoad(){await this._getTranslations(),await this.initModules()}async componentDidLoad(){await this.init()}componentDidRender(){this.isMobile&&(this._mapViewContainer.style.top=`${this._calciteNotice.offsetHeight+this._searchDiv.offsetHeight+80}px`)}disconnectedCallback(){this._editor&&this._editor.destroy()}render(){const t="drawing"===this._currentPage?"":"display-none",i=this._editorLoading?"":"display-none",e=this._editorLoading?"display-none":"",h=this.isMobile?"show-map":"display-none";let o=this._translations.chooseCategoryMsg;return"drawing"===this._currentPage?o=this._translations.provideLocationMsg:"featureForm"===this._currentPage&&(o=this._translations.provideDetailsMsg),s(a,{key:"b480d2d78dbf168d351afb4212dcc6d49cb39c72"},this.showGuidingMsg&&(this.showGuidingMsgWhileDrawing||"drawing"!==this._currentPage)&&s("calcite-notice",{key:"e8cc752d19038993393d2d86cb934ae677cfc96f",class:"notice-msg",icon:"lightbulb",kind:"success",open:!0,ref:t=>this._calciteNotice=t},s("div",{key:"85b53eb990d6566e66d2eecfae6e90ec1b368e0c",slot:"message"},o)),s("calcite-loader",{key:"ee1ece408069e5112165860dd01f4dca526c0b4f",class:i,label:"",scale:"s"}),s("div",{key:"8a978d99246bd98a91e6fc6695f4159342bbf55a",class:e,id:"feature-form"}),this.enableSearch&&s("div",{key:"8678f6645b86202155a64dd7cfcb05f2c805e5f8",class:`search-widget ${t} ${e}`,id:"search-widget-ref",ref:t=>this._searchDiv=t}),s("div",{key:"738f720b5773abeda51eb4abf004e14e0c73c934",class:`${h}`,ref:t=>{this._mapViewContainer=t}}))}async init(){this.mapView&&this.selectedLayerId&&(this._updatedMapView=this.mapView,await(this.isMobile?this.createMobileMapView():this._loadWidgets()))}async initModules(){const[t,i,e,s,a,h,n]=await o(["esri/widgets/Editor","esri/core/reactiveUtils","esri/widgets/Search","esri/form/ExpressionInfo","esri/form/elements/FieldElement","esri/form/FormTemplate","esri/views/MapView"]);this.Editor=t,this.reactiveUtils=i,this.Search=e,this.ExpressionInfo=s,this.FieldElement=a,this.FormTemplate=h,this.MapView=n}async createMobileMapView(){this._mapViewContainer.classList.add("hide-map"),await new this.MapView({map:this.mapView.map,container:this._mapViewContainer,zoom:this.mapView.zoom}).when((t=>{this._updatedMapView=t,this._loadWidgets()}),(t=>{console.log(t)}))}async _loadWidgets(){await this.createEditorWidget(),this.enableSearch&&await this.createSearchWidget()}async createEditorWidget(){this._editor&&this._editor.destroy();const t=[];this._container=document.createElement("div"),this._container?.classList.add("display-none"),this.enableSnapping||this._container.classList.add("hide-editor-toolbar");const i=await c(this._updatedMapView);this._selectedLayer=await d(this.mapView,this.selectedLayerId),this._selectedLayer?.isTable||i.forEach((async i=>{t.push({layer:i,enabled:"feature"===i?.type&&i?.id===this.selectedLayerId,addEnabled:!0,updateEnabled:!1,deleteEnabled:!1})})),this._editor=new this.Editor({view:this._updatedMapView,layerInfos:t,visibleElements:{settingsMenu:this.enableSnapping,snappingControls:this.enableSnapping,createFeaturesSection:!0,editFeaturesSection:!1,flow:!1},container:this._container}),this._mapViewContainer?this.el.insertBefore(this._container,this._mapViewContainer):this.el.appendChild(this._container);const e=this.reactiveUtils.watch((()=>this._editor.viewModel.state),(t=>{"adding-attachment"===t||"editing-attachment"===t?(this._addingAttachment=!0,this.editingAttachment.emit(!0)):this._addingAttachment&&(this.editingAttachment.emit(!1),this._addingAttachment=!1)}));this._editor.viewModel.addHandles(e);const s=this.reactiveUtils.watch((()=>this._editor.viewModel.featureTemplatesViewModel.state),(t=>{"ready"===t&&"create-features"!==this._editor.viewModel?.activeWorkflow?.type&&(this.progressStatus.emit(50),this._editorLoading=!0)}));this._editor.viewModel.addHandles(s);const a=this.reactiveUtils.watch((()=>this._editor.viewModel.featureFormViewModel?.state),(t=>{"ready"===t&&(this._mapViewContainer?.classList?.replace("show-map","hide-map"),this._editor.viewModel.featureFormViewModel.on("submit",this.submitted.bind(this)),setTimeout((()=>{this._setFloorLevel(this.floorLevel)}),50),this._currentPage="featureForm",this.progressStatus.emit(100),this.drawComplete.emit())}));this._editor.viewModel.addHandles(a);const h=this.reactiveUtils.watch((()=>this._editor.viewModel.state),(t=>{"creating-features"===t&&"disabled"===this._editor.viewModel.featureFormViewModel.state&&(this._mapViewContainer?.classList?.replace("hide-map","show-map"),this._selectedLayer&&!this._selectedLayer.isTable&&(this._currentPage="drawing"))}));this._editor.viewModel.addHandles(h)}async startCreate(){return await this.hideEditorsElements(),new Promise(((t,i)=>{if(this._editor.viewModel.featureTemplatesViewModel.items?.length){const e=this._editor.viewModel.featureTemplatesViewModel.items[0].items;this._editor.viewModel.featureTemplatesViewModel.on("select",(()=>{this.progressStatus.emit(75),setTimeout((()=>{this.hideEditorsElements().then((()=>{t({})}),(t=>i(t)))}),700)})),1===e.length&&this._editor.viewModel.featureTemplatesViewModel.select(e[0]);const s=e.length>1;this.hideEditorsElements().then((()=>{s&&t({})}),(t=>s&&i(t)))}}))}async createSearchWidget(){let t={view:this._updatedMapView};this.searchConfiguration&&(t={...this._getSearchConfig(this.searchConfiguration,this._updatedMapView)}),this._search=new this.Search(t),this._search.container="search-widget-ref",this._search.popupEnabled=!1,this._search.resultGraphicEnabled=!1;let i=null;this._search.on("search-complete",(t=>{this._updatedMapView.goTo(t.results[0].results[0].extent),"point"===this._selectedLayer.geometryType&&(i=t.results[0].results[0]?.feature.geometry)}));const e=this.reactiveUtils.watch((()=>this._search.viewModel.state),(t=>{"ready"===t&&setTimeout((()=>{this._editor.viewModel.sketchViewModel.createGraphic&&i&&(this._editor.viewModel.sketchViewModel.createGraphic.set("geometry",i),this._editor.viewModel.sketchViewModel.complete(),this.hideEditorsElements())}),100)}));this._search.viewModel.addHandles(e)}_getSearchConfig(t,i){const e=t.sources;return e?.length>0?(t.includeDefaultSources=!1,e.forEach((t=>{if(t.hasOwnProperty("layer")){const e=t,s=e.layer?.id,a=s?i.map.findLayerById(s):null,h=e?.layer?.url;a?e.layer=a:h&&(e.layer=new this.FeatureLayer(h))}})),e?.forEach((t=>{if(t.hasOwnProperty("locator")){const i=t;"ArcGIS World Geocoding Service"===i?.name&&(i.outFields=i.outFields||["Addr_type","Match_addr","StAddr","City"],i.singleLineFieldName="SingleLine"),i.url=i.url,delete i.url}}))):t={...t,includeDefaultSources:!0},t}async _setFloorLevel(t){if(!t)return;const i=this._selectedLayer;if(i?.floorInfo?.floorField){const e=i.fields.find((t=>t.name===i.floorInfo.floorField));if(e&&!i?.formTemplate)this._editor.viewModel.featureFormViewModel.setValue(e.name,t),e.editable=!1;else if(i.formTemplate&&this.formElements){const e=new this.ExpressionInfo({expression:`"${t}"`,name:"floor-info-test",title:"Floor Info",returnType:"string"}),s=new this.FieldElement({label:i.floorInfo.floorField,editableExpression:"false",fieldName:i.floorInfo.floorField,input:{type:"text-box",maxLength:50,minLength:0},valueExpression:e.name});this._updatedMapView.map.editableLayers.forEach((t=>{const i=this.formElements.orgExpressionInfos,a=[...this.formElements.orgElements];a.push(s);const h=new this.FormTemplate({title:t.formTemplate.title,description:t.formTemplate.description,elements:a,expressionInfos:[e].concat(i)});t.formTemplate=h}))}}}async hideEditorsElements(){this.customizeSubmit&&(await this.timeout(700),this.el.querySelector(".esri-editor")?.querySelectorAll("calcite-flow-item")?.forEach((t=>{const i=t.shadowRoot?.querySelector("calcite-panel")?.shadowRoot?.querySelector("article");i?.querySelector("header")?.setAttribute("style","display: none"),i?.querySelector("footer")?.setAttribute("style","display: none")})))}async submitted(t){if(t.invalid.length)this._isSubmitBtnClicked=!1;else if(this._isSubmitBtnClicked){this._isSubmitBtnClicked=!1;try{await this._editor.activeWorkflow.commit(),this._editor.viewModel.failures?.length&&this._editor.viewModel.failures.some((t=>{if(t.error)throw t.error}))}catch(t){return void this.fail.emit(t)}this.success.emit()}}timeout(t){return new Promise((i=>setTimeout(i,t)))}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"],mapView:["mapViewWatchHandler"],isMobile:["isMobileHandler"],_editorLoading:["_editorLoadingWatchHandler"]}}};l.style=":host{display:block}.hide-editor-toolbar .esri-editor__panel-toolbar{display:none !important}.esri-editor__panel-content{padding-block:0px !important}.esri-editor .esri-item-list__group__header{display:none !important}.esri-editor__panel-content__section .esri-widget__heading{display:none !important}.esri-editor .esri-item-list__filter-container--sticky{padding-block:0px !important;padding-inline:10px !important}.search-widget{width:92% !important;margin:5px 14px 20px 14px}.display-none{display:none !important}.hide-map{height:1%;visibility:hidden}.show-map{padding:10px !important;position:absolute !important;bottom:0;height:auto !important;width:calc(100% - 22px)}.notice-msg{padding:10px;width:calc(100% - 20px)}.esri-editor__panel-content{padding-block:10px !important}@media only screen and (max-width: 600px){.esri-editor__panel-content{padding-block:0 !important;min-height:0 !important}}";const p=class{constructor(e){t(this,e),this.editsComplete=i(this,"editsComplete",7),this.deleteDialog=void 0,this.buttonType="button",this.disabled=!1,this.icon=void 0,this.ids=[],this.layer=void 0,this.locale=void 0,this._confirmDelete=!1,this._deleteEndabled=!1,this._supportsDelete=void 0,this._translations=void 0}get el(){return e(this)}async idsWatchHandler(){this._setDeleteEnabled()}async layerWatchHandler(){this._setDeleteEnabled()}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}editsComplete;async componentWillLoad(){await this._getTranslations()}render(){return s(h,{key:"a8b845e5a7283318d4e313914e8bf992c5405d82"},"button"===this.buttonType?s("calcite-button",{appearance:"outline",disabled:!this._deleteEndabled,id:"solutions-delete",kind:"danger",onClick:()=>this._delete(),width:"full"},this._translations.deleteCount.replace("{{n}}",this.ids.length.toString())):s("calcite-action",{appearance:"solid",disabled:!this._deleteEndabled,id:this.icon,onClick:()=>this._delete(),scale:"s",text:this._translations.delete},s("calcite-button",{appearance:"transparent",iconStart:this.icon,kind:"danger"},this._translations.delete)),this._deleteMessage(),s("calcite-tooltip",{key:"63e746d5066e96a13066cae6d3ad0b23c81437dc",placement:"bottom","reference-element":"button"===this.buttonType?"solutions-delete":this.icon},s("span",{key:"9f6708e8ff0255d6634c69cb66d9544dc5b053ba"},this._translations.delete)))}async componentDidLoad(){this._setDeleteEnabled()}_setDeleteEnabled(){this._supportsDelete=this.layer?.editingEnabled&&this.layer?.capabilities?.operations?.supportsDelete,this._deleteEndabled=!this.disabled||this._supportsDelete&&this.ids.length>0}_delete(){this._confirmDelete=!0}_deleteMessage(){return this.deleteDialog?this.deleteDialog:s("delete-dialog",{id:"solution-delete-dialog",ids:this.ids,layer:this.layer,locale:this.locale,onDeleteDialogClose:()=>this._confirmDelete=!1,open:this._confirmDelete})}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{ids:["idsWatchHandler"],layer:["layerWatchHandler"],locale:["localeWatchHandler"]}}};p.style=":host{display:block}.delete-modal{position:fixed}";const b=class{constructor(e){t(this,e),this.closeEdit=i(this,"closeEdit",7),this.editorInitialized=i(this,"editorInitialized",7),this.editsComplete=i(this,"editsComplete",7),this.refreshGraphics=i(this,"refreshGraphics",7),this.enableEditGeometry=!1,this.enableSnapping=!1,this.graphicIndex=0,this.graphics=void 0,this.locale=void 0,this.mapView=void 0,this.open=!1,this._editorLoading=!1,this._translations=void 0}get el(){return e(this)}_activeWorkflowHandle;_addRelatedRecordHandle;_attachmentHandle;_editHandle;_layerEditHandle;Editor;_editor;_layer;_editContainer;_editControlElements;_editingDisabled;_shouldClose=!1;reactiveUtils;async graphicsWatchHandler(){0===this.graphics.length&&this.open&&await this._closeEdit(!0)}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async openWatchHandler(t){t&&this.graphics?.length>0&&this.graphicIndex>-1&&(this._editorLoading=!0,await this._initEditorWidget(),this.graphicIndex>-1&&this.graphics.length>0&&this.open&&!this._shouldClose&&await this._startUpdate(),this._editorLoading=!1),t||await this._closeEdit(!0)}closeEdit;editorInitialized;editsComplete;refreshGraphics;async featureSelectionChange(){this.open&&await this._closeEdit(!1)}async componentWillLoad(){await this._initModules(),await this._getTranslations()}async componentWillRender(){this.graphics?.length>0&&this.graphics[0]?.layer&&(this._layer=this.graphics[0].layer,this._layerEditHandle&&this._layerEditHandle.remove(),this._layerEditHandle=("subtype-sublayer"===this._layer.type?this._layer.parent:this._layer).on("edits",(()=>{this.editsComplete.emit()})))}render(){const t=this._editorLoading?"display-none":"position-absolute",i=this._editorLoading?"":"display-none";return s(h,{key:"8491a0fbeefc9533ed6898cf4734ec98dddd7f62"},s("div",{key:"a98e923e1d697559c37ce85fbd57fc1688171cb2",class:"position-absolute"},this.graphics?.length>0&&this.graphics[0]&&this.graphics[0].layer.editingEnabled?void 0:s("calcite-notice",{kind:"warning",open:!0,slot:"content-top",width:"full"},s("div",{slot:"message"},this._translations.enableEditing)),s("div",{key:"ac5eed8a614523e1ddaad0eaf3b973faf28fdbf2",class:"position-absolute"},s("div",{key:"63778d7c29d6fd26e0c8a534dc70da4a0e94075d",class:t,id:"feature-form",ref:t=>this._editContainer=t}),s("calcite-loader",{key:"641a987e8860222a1a3b6f64e700a16c03463c81",class:i,label:"",scale:"s"}))))}async _initModules(){const[t,i]=await o(["esri/widgets/Editor","esri/core/reactiveUtils"]);this.Editor=t,this.reactiveUtils=i}async _initEditorWidget(){if(this.mapView&&this.graphics&&this.graphics.length>0&&this.graphics[0]){this._editor&&this._editor.destroy();const t=document.createElement("div"),i=(await c(this.mapView)).map((t=>({layer:t,geometryUpdatesEnabled:this.enableEditGeometry})));this._editor=new this.Editor({view:this.mapView,layerInfos:i,visibleElements:{flow:!0,settingsMenu:this.enableSnapping,snappingControls:this.enableSnapping},container:t}),this._attachmentHandle&&this._activeWorkflowHandle&&(this._attachmentHandle.remove(),this._activeWorkflowHandle.remove()),this._attachmentHandle=this.reactiveUtils.when((()=>"adding-attachment"===this._editor.viewModel.state||"editing-attachment"===this._editor.viewModel.state||"creating-features"===this._editor.viewModel.state),(()=>{this._shouldClose=!1})),this._activeWorkflowHandle=this.reactiveUtils.watch((()=>this._editor.viewModel.activeWorkflow?.activeWorkflow),(t=>{"update-table-record"!==t?.type&&"create-features"!==t?.type||(this._shouldClose=!1),(t?.type||t?.hasPendingEdits||this._editor.activeWorkflow)&&this._editor?.activeWorkflow?.started||(this.open=!1)})),this.enableSnapping||t.classList.add("hide-editor-toolbar"),this._editContainer.appendChild(t),this.editorInitialized.emit(this._editor)}}async _closeEdit(t){this._shouldClose=!0,t&&this._editor?.activeWorkflow?(this._editor.activeWorkflow?.activeWorkflow?.hasPendingEdits&&(await this._editor.activeWorkflow.reset(),await this._editor.cancelWorkflow()),this._editor.destroy()):this.graphicIndex>-1&&this.graphics?.length>0&&this.refreshGraphics.emit(this.graphics),this._shouldClose=!1,this.closeEdit.emit()}async _startUpdate(){await this._editor.startUpdateWorkflowAtFeatureEdit(this.graphics[this.graphicIndex]),this._shouldClose=!0}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{graphics:["graphicsWatchHandler"],locale:["localeWatchHandler"],open:["openWatchHandler"]}}};b.style=":host{display:block}.padding-bottom-1{padding-bottom:1rem}.font-bold{font-weight:var(--calcite-font-weight-bold)}.font-500{font-weight:var(--calcite-font-weight-medium)}.font-italic{font-style:italic}#feature-form{padding-top:0px}.padding-sides-bottom-1{padding:0 1rem 1rem 1rem}.position-relative{position:relative}.esri-editor__prompt--danger{position:relative !important;width:100% !important;background-color:var(--calcite-color-foreground-1) !important}.esri-feature__content-node{background-color:var(--calcite-color-foreground-1) !important}.hide-editor-toolbar .esri-editor__panel-toolbar{display:none !important}.position-absolute{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.esri-editor__panel-content{padding-block:10px !important}";const f=class{constructor(e){t(this,e),this.popupClosed=i(this,"popupClosed",7),this.clearSelection=i(this,"clearSelection",7),this.selectionChanged=i(this,"selectionChanged",7),this.enableEditGeometry=!1,this.enableSnapping=!1,this.graphics=void 0,this.isLoading=!1,this.isMobile=void 0,this.mapView=void 0,this.allowEditing=!0,this.highlightEnabled=!0,this.locale=void 0,this.paginationEnabled=!0,this.position="absolute",this.showCloseBtn=!1,this._alertOpen=!1,this._count="",this._editRecordOpen=!1,this._mobileTitle="",this._showListView=!1,this._translations=void 0,this._navigatedToRelatedFeature=void 0}get el(){return e(this)}Features;_editEnabled;_features;_layer;_popupUtils;_featuresNodeId="features-node"+(new Date).getMilliseconds().toString();reactiveUtils;_relatedFeature;async graphicsWatchHandler(){this._navigatedToRelatedFeature&&this._features&&(this._features.clear(),this._features.close(),this._count="",this._navigatedToRelatedFeature=!1),await this.setGraphics()}async isMobileWatchHandler(){await this._initFeaturesWidget()}async localeWatchHandler(){if(this.el.lang=this.locale,await this._getTranslations(),this._features){const t=[...this.graphics];this.graphics=[],this.graphics=t}}async mapViewWatchHandler(){return await this._initFeaturesWidget()}async getSelectedFeature(){return this._features.selectedFeature}async refresh(){await this.setGraphics()}async back(){this._features.previous(),this._count=this._getCount()}async next(){this._features.next(),this._count=this._getCount()}async toggleListView(){this._showListView=!this._showListView;const t=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=t}async updateCurrentGraphic(t){this._features.selectedFeatureWidget.graphic=t}popupClosed;clearSelection;selectionChanged;async closeEdit(){this._editRecordOpen=!1}async layerSelectionChange(){this._showListView=!1,this._features?.viewModel&&(this._features.viewModel.featureMenuOpen=!1,this._features.close())}async refreshGraphics(t){this._navigatedToRelatedFeature||(this.graphics=[...t.detail])}async componentWillLoad(){await this._initModules(),await this._getTranslations(),this._popupUtils=new r}async componentDidLoad(){this.graphics?.length>0&&await this.setGraphics()}render(){const t=this.isLoading?"":"display-none",i=this.isLoading||this._editRecordOpen?"visibility-hidden":"position-absolute",e=!this.isLoading&&this._editRecordOpen?"position-absolute":"display-none",a=!this.isLoading&&this._editRecordOpen||this._showListView?"display-none":"",o=this._features?.features?.length<2||this._navigatedToRelatedFeature,n=this.isMobile?"display-none":"",c=this._features?.selectedFeature?.getObjectId(),d=parseInt(c?.toString(),10)>-1?[c]:[],r=this._layer?.editingEnabled&&this._layer?.capabilities?.operations?.supportsDelete,l=this._relatedFeature?[this._relatedFeature]:this.graphics,p=this._navigatedToRelatedFeature?0:this._features?.selectedFeatureIndex;return s(h,{key:"b62820abf5a5ce69261a7170dbc102ee8f656907"},s("calcite-shell",{key:"6c26e6c6e0247f96183ab7d300d2591c5beb5b94",style:{position:this.position}},this._getHeader(),s("calcite-loader",{key:"fc153dc30be352de54fd2d197e154cd09a8f39f2",class:t,label:this._translations.fetchingData}),s("div",{key:"8faba972e54dbc4086a5c74187279149c7bbfe6e",class:"esri-widget feature-node "+i,id:this._featuresNodeId}),s("div",{key:"3374bace58475d983d0b6b57c1c45faa6bddef6e",class:`${a} width-100`,slot:"footer"},this.allowEditing&&s("div",{key:"567ed97ca7a9a1d7245caa21ca23effe728b0ac9",class:"display-flex top-border padding-1-2"},s("calcite-button",{key:"caae5c4c5834bf7658bbe12c329ead2f8150f8cd",appearance:"solid",id:"solutions-edit",onClick:()=>this._openEditRecord(),width:"full"},this._translations.edit),this.isMobile&&r?s("delete-button",{class:"padding-inline-start-1 width-100",id:"solutions-delete",ids:d,layer:this._layer,locale:this.locale,onEditsComplete:()=>this._closePopup()}):void 0,s("calcite-tooltip",{key:"57681bf90ac5d7c2a4bc9d3e15e3a93a675fbed1",placement:"bottom","reference-element":"solutions-edit"},s("span",{key:"018a661cd5f88ea5be62acbe762308ef25e7b681"},this._translations.edit)),this.isMobile&&r?s("calcite-tooltip",{placement:"bottom","reference-element":"solutions-delete"},s("span",null,this._translations.delete)):void 0),this.paginationEnabled&&!o&&s("div",{key:"92ba3836a0b5fcd2717966ef6162e10968d43126",class:`display-flex padding-1-2 button-container top-border ${n}`},s("div",{key:"bf23c4f203efcea7c613d77d86efada639fa7c1b"},s("calcite-button",{key:"a416b24f360374e73679df9027b13f7651dbb723",appearance:"transparent",disabled:o,iconFlipRtl:"both",iconStart:"chevron-left",id:"solutions-back",onClick:()=>this._back(),width:"full"}),s("calcite-tooltip",{key:"8849ca323a75d2fd21393a133f49c1ea201178d4",placement:"top","reference-element":"solutions-back"},s("span",{key:"84cd60a8c7a5678d99e2d803ebb705e986591cb5"},this._translations.back))),s("calcite-action",{key:"7d4e9984eda51a7b9d67bcc2bce3b258566bbeee",class:"pagination-action",iconFlipRtl:!0,onClick:()=>this._toggleListView(),scale:"s",text:"",textEnabled:!0},s("span",{key:"a14051ff8801623cc1dda9895f9bf98b5b4b8a36",class:"pagination-count"},this._count)),s("div",{key:"65bd33feeee7e1606548a9b21b9a3d1b78bc8931"},s("calcite-button",{key:"228969faa39e600546e8b9a00c888df4d00a6477",appearance:"transparent",disabled:o,iconFlipRtl:"both",iconStart:"chevron-right",id:"solutions-next",onClick:()=>this._next(),width:"full"}),s("calcite-tooltip",{key:"8f343657583d421b7dbbd79067af998d11c30855",placement:"top","reference-element":"solutions-next"},s("span",{key:"98fc622e0ba9ae3878ac0cbc8c2c119fe5b4b489"},this._translations.next))))),s("edit-card",{key:"c99b429d633117c673a7c8effc7cb689233bce1e",class:e,enableEditGeometry:this.enableEditGeometry,enableSnapping:this.enableSnapping,graphicIndex:p,graphics:l,locale:this.locale,mapView:this.mapView,open:this._editRecordOpen}),s("calcite-alert",{key:"82ac3ceb259b6f87b8bbbb196fcf61de705ed019",icon:"layer-broken",kind:"warning",label:"",onCalciteAlertClose:()=>this._alertClosed(),open:this._alertOpen,placement:"top"},s("div",{key:"f113eb60f51d3b1d9fddf9c58e89c792e41e95b5",slot:"title"},this._translations.editDisabled),s("div",{key:"c010ac376e6e3497d86326bcb1e16976a4a026cd",slot:"message"},this._translations.enableEditing))))}async _initModules(){const[t,i]=await o(["esri/widgets/Features","esri/core/reactiveUtils"]);this.Features=t,this.reactiveUtils=i}async setGraphics(){this._features||await this._initFeaturesWidget(),this.graphics.length>0?(this._layer=this.graphics[0]?.layer,this._editEnabled=this._layer.editingEnabled&&this._layer.capabilities.operations.supportsUpdate,this._mobileTitle=await this._popupUtils.getPopupTitle(this.graphics[0],this.mapView.map),this._features.open({features:this.graphics})):(this._features.clear(),this._features.close()),this._count=this._getCount()}async _initFeaturesWidget(){return void 0!==this.isMobile?await(this.mapView?.when((()=>{this._features?(this._features.view=this.mapView,this._features.visibleElements.actionBar=!1,this._features.visibleElements.closeButton=this.showCloseBtn,this._features.visibleElements.heading=!this.isMobile):(this._features=new this.Features({view:this.mapView,container:this._featuresNodeId,visibleElements:{actionBar:!1,closeButton:this.showCloseBtn,featureMenuHeading:!1,heading:!this.isMobile}}),this._features.viewModel.highlightEnabled=this.highlightEnabled,this.reactiveUtils.watch((()=>this._features.viewModel.featureMenuOpen),(t=>{this._count=this._getCount(),t||(this._showListView=t)})),this.reactiveUtils.watch((()=>this._features.selectedFeatureIndex),(t=>{t>-1&&this.selectionChanged.emit({selectedFeature:[this._features.selectedFeature],selectedFeatureIndex:this._features.selectedFeatureIndex})})),this.reactiveUtils.watch((()=>this._features.selectedDrillInFeature),(t=>{t?(this._relatedFeature=t,this._navigatedToRelatedFeature=!0):(this._relatedFeature=null,this._navigatedToRelatedFeature=!1)})),this.el.querySelector("#"+this._featuresNodeId).addEventListener("calciteFlowItemClose",(()=>{this.clearSelection.emit()})))}))):Promise.resolve()}_getHeader(){return this.isMobile&&!this._editRecordOpen?s("calcite-panel",{class:"border-width-0",slot:"header"},s("calcite-action",{class:"end-border",icon:"chevron-left",iconFlipRtl:!0,onClick:()=>this._closePopup(),scale:"s",slot:"header-actions-start",text:""}),s("span",{class:"font-bold",slot:"header-content"},this._mobileTitle)):void 0}_closePopup(){this.popupClosed.emit()}_alertClosed(){this._alertOpen=!1}_openEditRecord(){this._editEnabled?this._editRecordOpen=!0:this._alertOpen=!0}_back(){this._features.previous(),this._count=this._getCount()}_next(){this._features.next(),this._count=this._getCount()}_getCount(){const t=(this._features?.viewModel.selectedFeatureIndex+1).toString(),i=this._features?.features?.length.toString();return this._translations.indexOfTotal.replace("{{index}}",t).replace("{{total}}",i)}_toggleListView(){this._showListView=!this._showListView;const t=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=t}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{graphics:["graphicsWatchHandler"],isMobile:["isMobileWatchHandler"],locale:["localeWatchHandler"],mapView:["mapViewWatchHandler"]}}};f.style=":host{display:block;--calcite-label-margin-bottom:0}.padding-1-2{padding:0.5rem}.display-none{display:none !important}.display-flex{display:flex}.position-absolute{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.feature-node{position:relative !important}.feature-node .esri-features__footer{display:none !important}.button-container{justify-content:center;align-items:center}.top-border{border-top:1px solid var(--calcite-color-border-1)}.width-100{width:100%}.esri-features__container{padding:0.5rem !important;background-color:var(--calcite-color-foreground-1) !important;height:100% !important}.overflow-hidden{overflow:hidden}.height-40{height:40px}.end-border{border-inline-end:1px solid var(--calcite-color-border-1)}.font-bold{font-weight:bold}.visibility-hidden{visibility:hidden;height:0px}.padding-inline-start-1{padding-inline-start:1rem}.border-width-0{border-width:0px}.pagination-action{position:relative;left:3px}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:bold}";export{l as create_feature,p as delete_button,b as edit_card,f as info_card}
@@ -1,36 +0,0 @@
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{a as t}from"./p-80cb7c73.js";
7
- /** @license
8
- * Copyright 2022 Esri
9
- *
10
- * Licensed under the Apache License, Version 2.0 (the "License");
11
- * you may not use this file except in compliance with the License.
12
- * You may obtain a copy of the License at
13
- *
14
- * http://www.apache.org/licenses/LICENSE-2.0
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */async function n(t,n){let a=[];const s=t?t.map((t=>async function(t,n){const a=n.createQuery();return a.spatialRelationship="intersects",a.geometry=t,n.queryObjectIds(a)}
22
- /** @license
23
- * Copyright 2022 Esri
24
- *
25
- * Licensed under the Apache License, Version 2.0 (the "License");
26
- * you may not use this file except in compliance with the License.
27
- * You may obtain a copy of the License at
28
- *
29
- * http://www.apache.org/licenses/LICENSE-2.0
30
- *
31
- * Unless required by applicable law or agreed to in writing, software
32
- * distributed under the License is distributed on an "AS IS" BASIS,
33
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
34
- * See the License for the specific language governing permissions and
35
- * limitations under the License.
36
- */(t,n))):[Promise.resolve()];return(await Promise.all(s)).forEach((t=>{a=[...a,...t||[]]})),a}async function a(t,n,s,o,e,c){const i=n.capabilities?.query.maxRecordCount;0===t.length&&(t=await n.queryObjectIds());const r=n.createQuery();r.returnGeometry=o,r.objectIds=t.slice(0,i),e&&(r.outSpatialReference=e),c&&(r.outFields=c);const u=await n.queryFeatures(r);s=s.concat(u.features);const f=t.slice(i,t.length);return f.length>0?a(f,n,s,o,e,c):Promise.resolve(s)}async function s(t,n){const a=n.globalIdField;if(!a)return[];const s=n.createQuery();return s.returnGeometry=!1,s.outFields=[n.objectIdField],s.where=t.map((t=>`${a} = '${t}'`)).join(" or "),(await n.queryFeatures(s)).features}async function o(t,n,a,s){const e=n.capabilities.query.maxRecordCount,c=n.createQuery();c.start=t,c.num=e,c.geometry=a;const i=await n.queryFeatures(c);return s[n.id]=s[n.id].concat(i.features),i.exceededTransferLimit?o(t+=e,n,a,s):Promise.resolve(s)}function e(t,n){return[...c(t,"polygon",n),...c(t,"polyline",n),...c(t,"point",n)]}function c(t,n,a){const s=t?.filter((t=>t.type===n))||[];return s.length<=1?s:[a.union(s)]}async function i(t,n){let a;return await t.when((()=>{a=t.map.allLayers.toArray().reduce(((t,n)=>("feature"!==n.type&&"subtype-group"!==n?.type||(t[n.id]={name:n.title,supportsUpdate:void 0}),t)),{})})),u(n,a,t)}async function r(t,n){let a;return await t.when((()=>{a=t.map.allTables.toArray().reduce(((t,n)=>(t[n.id]={name:n.title,supportsUpdate:void 0},t)),{})})),u(n,a,t)}async function u(t,n,a){if(t){const t={},s=Object.keys(n);for(let o=0;o<s.length;o++){const e=s[o],c=await w(a,e);await c.load(),await c.when(),t[e]={name:n[e].name,supportsUpdate:c.editingEnabled&&c.capabilities.operations.supportsUpdate}}return t}return n}async function f(t,n){const a=await w(t,n);return a?await t.whenLayerView(a):void 0}async function w(t,n){let a=[];return await(t?.when((()=>{a=[...t.map.allLayers.toArray(),...t.map.allTables.toArray()].filter((t=>t.id===n))}))),a.length>0?a[0]:void 0}async function y(t){const n=t.map.allLayers.toArray();let a;return await t.when((()=>{a=n.map((n=>t.whenLayerView(n)))})),await Promise.allSettled(a),n}async function p(t){const n=t.map.allTables.toArray();let a;return await t.when((()=>{a=n.map((t=>t.load()))})),await Promise.allSettled(a),n}async function m(t,n,a,s=!1,o=0){return s&&(await b(t,n,a,!1,void 0,o),await new Promise((t=>setTimeout(t,1e3)))),n.highlight(t)}async function l(t){const n=d(t);return Object.keys(n).reduce(((t,a)=>{const s=n[a];return t.push(s.layerView.highlight(s.ids)),t}),[])}function d(n){return n.reduce(((n,a)=>{const s=a.layerView,o=s?.layer.id;return o&&Object.keys(n).indexOf(o)>-1?n[o].ids=[...new Set([...a.selectedIds,...n[o].ids])]:o&&(n[o]={layerView:s,ids:a.selectedIds}),a.workflowType===t.REFINE&&Object.keys(a.refineInfos).forEach((t=>{const s=a.refineInfos[t];Object.keys(n).indexOf(t)>-1&&(n[t].ids=[...new Set([...s.addIds,...n[t].ids])],n[t].ids=n[t].ids.filter((t=>s.removeIds.indexOf(t)<0)))})),n}),{})}async function b(t,n,a,s=!0,o,e=0){const c=await async function(t,n){const a=n.createQuery();return a.objectIds=t,n.queryExtent(a)}(t,n.layer),i={target:c.extent};1===c.count&&"point"===n.layer.geometryType&&e&&(i.scale=e),await a.goTo(i),s&&await async function(t,n,a){n.featureEffect={...a,filter:{objectIds:t}},setTimeout((()=>{n.featureEffect=void 0}),1300)}(t,n,o)}export{y as a,p as b,f as c,i as d,b as e,s as f,w as g,m as h,n as i,e as j,o as k,d as l,l as m,r as n,a as q}