/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{b as n}from"./VU3OQQKP.js";import{F as m,G as r,H as o,h as t,i as p}from"./46DQNAMV.js";import"./OR4HXHSY.js";export default $arcgis.t(([l,h])=>{var d=t`.display-block{display:block}`,s=class extends o{constructor(){super(...arguments),this._basemapElement=m()}static{this.properties={mapView:0,basemapConfig:0,basemapWidget:0}}static{this.styles=d}willUpdate(a){a.has("basemapConfig")&&this.basemapConfigWatchHandler(),a.has("mapView")&&this.mapViewWatchHandler()}async basemapConfigWatchHandler(){if(this.basemapWidget?.source){let a=this.basemapWidget?.source;a.query=this.basemapConfig?.basemapGroupId?`id:${this.basemapConfig.basemapGroupId}`:null,await a.refresh()}}async mapViewWatchHandler(){this.mapView!==void 0&&await this.mapView.when(()=>{this._initBaseMapGallery(this.mapView)})}render(){return p`<div class="display-block" ${r(this._basemapElement)}></div>`}loaded(){this.mapView&&this.mapViewWatchHandler()}async _initBaseMapGallery(a){if(a){let e=new h({query:this.basemapConfig?.basemapGroupId?`id:${this.basemapConfig.basemapGroupId}`:null,filterFunction:this.basemapConfig?i=>i?.portalItem?.id&&this.basemapConfig?!this.basemapConfig.basemapIdsToFilter.includes(i?.portalItem?.id):!0:()=>!0});await e.refresh(),this.basemapWidget?(this.basemapWidget.view=a,this.basemapWidget.source=e):this.basemapWidget=new l({container:this._basemapElement.value,view:a,source:e})}}};n("map-basemap-gallery",s);return s},"widgets/BasemapGallery","widgets/BasemapGallery/support/PortalBasemapsSource")