@vertigis/arcgis-extensions 47.3.0 → 47.4.0

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.
@@ -1 +1 @@
1
- import e from"@arcgis/core/core/Collection";import{InvalidOperationError as i}from"../../InvalidOperationError.js";import{isLayerExtension as t}from"../../ItemType.js";import{InitializableCollectionProxy as s}from"../../support/InitializableCollectionProxy.js";import{checkArg as r}from"../../utilities/checkArg.js";import{layersAreEquivalent as n}from"../../utilities/layers.js";import{getLogger as a}from"../../utilities/log.js";import{onCollectionPropertyChange as o}from"../../utilities/watch.js";import{LayerExtension as l}from"../_LayerExtension.js";export class LayerExtensionCollectionBase extends s{_parent;get _collection(){return this._layers.map((e=>this._forLayer(e))).concat(this._uninitializedLayerExtensions)}get _layers(){let i=this._parent.get(this._layersProperty);return i||(this._tempLayers||(this._tempLayers=new e),i=this._tempLayers),i}_layersProperty;_tempLayers;_layerExtensionMap=new WeakMap;_uninitializedLayerExtensions=new e;constructor(e,i){super(),this._parent=e,this._layersProperty=i,o(this._parent,this._layersProperty,(e=>{try{const i={added:(e.added||[]).map((e=>this._forLayer(e))),moved:(e.moved||[]).map((e=>this._forLayer(e))),removed:(e.removed||[]).map((e=>this._forLayer(e)))};this.emit("change",i)}catch(e){e instanceof Error&&a("geocortex.api.support.LayerExtensionCollection").error(e.message)}})),this._parent.watch(`${this._layersProperty}.length`,(()=>this.notifyChange("length")))}emit(e,i){const t=super.emit(e,i);return"change"===e&&this._mapExtension&&this._mapExtension.allLayerExtensions.emit(e,i),t}clone(){const e=super.clone();return e._layerExtensionMap=this._layerExtensionMap,e}findById(e){return r("id",e).isNotMissing(),this.find((i=>i.id===e))}findByLayerId(e){return r("id",e).isNotMissing(),this.find((i=>i.layer.id===e))}forLayer(e){if(r("layer",e).isNotMissing(),this._layers.includes(e))return this._forLayer(e)}add(e,i){if(r("layerX",e).isNotMissing(),this._register(e),e.layer)this._layers.includes(e.layer)?void 0!==i&&this._layers.reorder(e.layer,i):this._layers.add(e.layer,i);else if(!e.isInitialized){const t=e.watch("layer",(()=>{e.layer&&(this._forLayer(e.layer),this._layers.includes(e.layer)||this._layers.add(e.layer,i)),t.remove()}),!0)}return this}removeAt(e){const i=this.getItemAt(e);if(void 0!==i){if(this._uninitializedLayerExtensions.includes(i)){this._uninitializedLayerExtensions.remove(i);const e={added:[],moved:[],removed:[i],target:this};this.emit("change",e)}else this._layers.remove(i.layer);return this._onRemoved(i),i}}reorder(e,t){if(this._uninitializedLayerExtensions.includes(e)){if(this._uninitializedLayerExtensions.some((e=>e.isInitialized)))throw new i("Unable to reorder a mix of initialized / uninitialized layers.");this._uninitializedLayerExtensions.reorder(e,t)}if(e?.layer&&this._layers.includes(e.layer))return this._layers.reorder(e.layer,t),e}sort(e){return this._layers.sort(((i,t)=>e(this._forLayer(i),this._forLayer(t)))),this}onParentInitialized(){this._tempLayers?.length&&(this.addMany(this._tempLayers.map((e=>this._forLayer(e)))),this._tempLayers=void 0)}onMapExtensionChanged(){for(const e of this.toArray())e._setMapExtension(this._mapExtension)}_forLayer(e){const i=this._mapExtension?._deferredProperties?.layerExtensions?.map((e=>t(e)?e:l.create(e)));i?.length&&(this._mapExtension._deferredProperties.layerExtensions=i);const s=[...this._uninitializedLayerExtensions.toArray(),...i??[]];for(const e of s)e.layer||e._resolveLayer(this._layers),e.layer&&(this._layerExtensionMap.set(e.layer,e),this._uninitializedLayerExtensions.remove(e),this._mapExtension&&!e.mapExtension&&e._setMapExtension(this._mapExtension));if(!this._layerExtensionMap.has(e)){const i=this._uninitializedLayerExtensions.find((i=>n(e,i._deferredLayerProperties)));if(i)return i;const t=("map"===this._mapExtension?.viewMode?this._mapExtension?._scene:this._mapExtension?._map)?.allLayers.find((i=>n(i,e))),s=this._layerExtensionMap.get(t),r={layer:e};s&&(r.layerListSettings=s.layerListSettings.toJSON());const a=l.create(r);this._register(a)}return this._layerExtensionMap.get(e)}_register(e){if(r("layerX",e).isNotMissing(),e._setMapExtension(this._mapExtension),e.layer||e._resolveLayer(this._layers),e.layer){const i=this._layerExtensionMap.get(e.layer);if(e===i)return;if(this._layerExtensionMap.set(e.layer,e),i&&(this._onRemoved(i),this._layers.includes(e.layer))){const t={added:[e],moved:[],removed:[i],target:this};this.emit("change",t)}}else{this._uninitializedLayerExtensions.add(e);const i={added:[e],moved:[],removed:[],target:this};this.emit("change",i)}this._onAdded(e)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.layer}_onAdded(e){}_onRemoved(e){e._setMapExtension(void 0)}}
1
+ import e from"@arcgis/core/core/Collection";import{InvalidOperationError as i}from"../../InvalidOperationError.js";import{InitializableCollectionProxy as t}from"../../support/InitializableCollectionProxy.js";import{checkArg as s}from"../../utilities/checkArg.js";import{layersAreEquivalent as r}from"../../utilities/layers.js";import{getLogger as n}from"../../utilities/log.js";import{onCollectionPropertyChange as a}from"../../utilities/watch.js";import{LayerExtension as o}from"../_LayerExtension.js";export class LayerExtensionCollectionBase extends t{_parent;get _collection(){return this._layers.map((e=>this._forLayer(e))).concat(this._uninitializedLayerExtensions)}get _layers(){let i=this._parent.get(this._layersProperty);return i||(this._tempLayers||(this._tempLayers=new e),i=this._tempLayers),i}_layerExtensionMap=new WeakMap;_uninitializedLayerExtensions=new e;_layersProperty;_tempLayers;constructor(e,i){super(),this._parent=e,this._layersProperty=i,a(this._parent,this._layersProperty,(e=>{try{const i={added:(e.added||[]).map((e=>this._forLayer(e))),moved:(e.moved||[]).map((e=>this._forLayer(e))),removed:(e.removed||[]).map((e=>this._forLayer(e)))};this.emit("change",i)}catch(e){e instanceof Error&&n("geocortex.api.support.LayerExtensionCollection").error(e.message)}})),this._parent.watch(`${this._layersProperty}.length`,(()=>this.notifyChange("length")))}emit(e,i){const t=super.emit(e,i);return"change"===e&&this._mapExtension&&this._mapExtension.allLayerExtensions.emit(e,i),t}clone(){const e=super.clone();return e._layerExtensionMap=this._layerExtensionMap,e}findById(e){return s("id",e).isNotMissing(),this.find((i=>i.id===e))}findByLayerId(e){return s("id",e).isNotMissing(),this.find((i=>i.layer.id===e))}forLayer(e){if(s("layer",e).isNotMissing(),this._layers.includes(e))return this._forLayer(e)}add(e,i){if(s("layerX",e).isNotMissing(),this._register(e),e.layer)this._layers.includes(e.layer)?void 0!==i&&this._layers.reorder(e.layer,i):this._layers.add(e.layer,i);else if(!e.isInitialized){const t=e.watch("layer",(()=>{e.layer&&(this._forLayer(e.layer),this._layers.includes(e.layer)||this._layers.add(e.layer,i)),t.remove()}),!0)}return this}removeAt(e){const i=this.getItemAt(e);if(void 0!==i){if(this._uninitializedLayerExtensions.includes(i)){this._uninitializedLayerExtensions.remove(i);const e={added:[],moved:[],removed:[i],target:this};this.emit("change",e)}else this._layers.remove(i.layer);return this._onRemoved(i),i}}reorder(e,t){if(this._uninitializedLayerExtensions.includes(e)){if(this._uninitializedLayerExtensions.some((e=>e.isInitialized)))throw new i("Unable to reorder a mix of initialized / uninitialized layers.");this._uninitializedLayerExtensions.reorder(e,t)}if(e?.layer&&this._layers.includes(e.layer))return this._layers.reorder(e.layer,t),e}sort(e){return this._layers.sort(((i,t)=>e(this._forLayer(i),this._forLayer(t)))),this}onParentInitialized(){this._tempLayers?.length&&(this.addMany(this._tempLayers.map((e=>this._forLayer(e)))),this._tempLayers=void 0)}onMapExtensionChanged(){for(const e of this.toArray())e._setMapExtension(this._mapExtension)}_forLayer(e){for(const e of this._uninitializedLayerExtensions)e.layer||e._resolveLayer(this._layers),e.layer&&(this._layerExtensionMap.set(e.layer,e),this._uninitializedLayerExtensions.remove(e),this._mapExtension&&!e.mapExtension&&e._setMapExtension(this._mapExtension));if(!this._layerExtensionMap.has(e)){const i=this._uninitializedLayerExtensions.find((i=>r(e,i._deferredLayerProperties)));if(i)return i;const t=("map"===this._mapExtension?.viewMode?this._mapExtension?._scene:this._mapExtension?._map)?.allLayers.find((i=>r(i,e))),s=this._layerExtensionMap.get(t),n={layer:e};s&&(n.layerListSettings=s.layerListSettings.toJSON());const a=o.create(n);this._register(a)}return this._layerExtensionMap.get(e)}_register(e){if(s("layerX",e).isNotMissing(),e._setMapExtension(this._mapExtension),e.layer||e._resolveLayer(this._layers),e.layer){const i=this._layerExtensionMap.get(e.layer);if(e===i)return;if(this._layerExtensionMap.set(e.layer,e),i&&(this._onRemoved(i),this._layers.includes(e.layer))){const t={added:[e],moved:[],removed:[i],target:this};this.emit("change",t)}}else{this._uninitializedLayerExtensions.add(e);const i={added:[e],moved:[],removed:[],target:this};this.emit("change",i)}this._onAdded(e)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.layer}_onAdded(e){}_onRemoved(e){e._setMapExtension(void 0)}}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vertigis/arcgis-extensions",
3
3
  "license": "SEE LICENSE IN LICENSE",
4
- "version": "47.3.0",
4
+ "version": "47.4.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://dev.azure.com/vertigis/Studio/_git/arcgis-extensions-ts"
package/version.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * The current version of the Geocortex ArcGIS Extensions API.
3
3
  */
4
- export declare const version = "47.3.0";
4
+ export declare const version = "47.4.0";
package/version.js CHANGED
@@ -1 +1 @@
1
- export const version="47.3.0";
1
+ export const version="47.4.0";