@vertigis/arcgis-extensions 44.3.1 → 45.0.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.
- package/data/Feature.js +1 -1
- package/data/FeatureSettings.js +1 -1
- package/data/FieldExtension.d.ts +0 -1
- package/data/FieldExtension.js +1 -1
- package/data/Schema.js +1 -1
- package/data/_TableExtension.js +1 -1
- package/docs/html/assets/navigation.js +1 -1
- package/docs/html/assets/search.js +1 -1
- package/docs/html/classes/data_FeatureList.FeatureList.html +4 -3
- package/docs/html/classes/data_FeatureSourceBase.RelationshipCollection.html +4 -3
- package/docs/html/classes/mapping_ArcGISSublayerExtension.ArcGISSublayerRelationshipCollection.html +4 -3
- package/docs/html/classes/mapping_GroupLayerExtension.GroupLayerExtensionCollection.html +4 -3
- package/docs/html/classes/mapping_SubtypeGroupLayerExtension.SubtypeGroupLayerRelationshipCollection.html +4 -3
- package/docs/html/classes/mapping_SubtypeSublayerExtension.SubtypeSublayerRelationshipCollection.html +4 -3
- package/docs/html/classes/mapping__SublayerExtension.SubSublayerExtensionCollection.html +4 -3
- package/docs/html/classes/mapping_support_ArrayWrappedCollection.ArrayWrappedCollection.html +4 -3
- package/docs/html/classes/mapping_support__LayerExtensionCollection.LayerExtensionCollectionBase.html +4 -3
- package/docs/html/classes/mapping_support__SublayerExtensionCollection.SublayerExtensionCollectionBase.html +4 -3
- package/docs/html/classes/support_InitializableCollectionProxy.InitializableCollectionProxy.html +4 -3
- package/docs/html/classes/support_ReadOnlyInitializableCollection.ReadOnlyInitializableCollection.html +4 -3
- package/docs/html/classes/support__ArcGISRelationshipCollection.ArcGISRelationshipCollection.html +4 -3
- package/docs/html/classes/utilities_CollectionProxy.CollectionProxy.html +4 -3
- package/docs/html/classes/utilities_CopyOnWriteCollection.CopyOnWriteCollection.html +4 -3
- package/docs/html/classes/utilities_MapTransformCollection.MapTransformCollection.html +4 -3
- package/docs/html/classes/utilities_ReadOnlyCollection.ReadOnlyCollection.html +4 -3
- package/docs/html/functions/utilities_field.getArcadeExpressionFromField.html +6 -0
- package/docs/html/functions/utilities_field.getRelationshipFromField.html +7 -0
- package/docs/html/functions/utilities_field.isArcadeExpressionField.html +5 -0
- package/docs/html/functions/utilities_field.isRelationshipField.html +5 -0
- package/docs/html/modules/utilities_field.html +5 -1
- package/docs/html/variables/version.version.html +1 -1
- package/mapping/ArcGISSublayerExtension.js +1 -1
- package/mapping/BuildingComponentSublayerExtension.js +1 -1
- package/mapping/CSVLayerExtension.js +1 -1
- package/mapping/FeatureLayerExtensionBase.js +1 -1
- package/mapping/GeoJSONLayerExtension.js +1 -1
- package/mapping/GeoRSSLayerExtension.js +1 -1
- package/mapping/ImageryLayerExtension.js +1 -1
- package/mapping/KMLLayerExtension.js +1 -1
- package/mapping/PointCloudLayerExtension.js +1 -1
- package/mapping/SceneLayerExtension.js +1 -1
- package/mapping/StreamLayerExtension.js +1 -1
- package/mapping/SubtypeGroupLayerExtension.js +1 -1
- package/mapping/SubtypeSublayerExtension.js +1 -1
- package/mapping/WFSLayerExtension.js +1 -1
- package/package.json +1 -1
- package/tasks/geocoding/ArcGISGeocoder.js +1 -1
- package/utilities/CaseInsensitiveObservableMap.js +1 -1
- package/utilities/CollectionProxy.d.ts +5 -0
- package/utilities/CollectionProxy.js +1 -1
- package/utilities/field.d.ts +35 -0
- package/utilities/field.js +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{InvalidOperationError as t}from"../InvalidOperationError.js";import{TaskSettings as r}from"../data/TaskSettings.js";import{supportsAttachmentEditing as i}from"../data/support/attachments.js";import{_isGraphicsLayerJson as s}from"../json/FeatureLayerJson.js";import{layerToJson as a}from"../json/LayerJson.js";import{serializable as n}from"../support/Serializable.js";import{ReadOnlyCollection as o}from"../utilities/ReadOnlyCollection.js";import{isCSVLayer as l,isFeatureLayer as p,isGraphicsLayer as y,isStreamLayer as c}from"../utilities/_layers.js";import{checkArg as u}from"../utilities/checkArg.js";import{parse as d}from"../utilities/number.js";import{LayerExtension as m,LayerExtensionSchema as g,ERR_SCHEMA_READ_ONLY as h}from"./_LayerExtension.js";import{ArrayWrappedCollection as _}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as f}from"./support/PopupTemplateFeatureSettings.js";export class FeatureLayerExtensionBase extends m{get hasFeatures(){return!0}get layer(){return super.layer}get renderer(){return this.layer?.renderer}get canChangeDefinitionExpression(){return!0}get canChangeRenderer(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t,showLabels:r}=a(this.layer),{definitionExpression:i,drawingInfo:s}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),s&&(e.layerDefinition={...e.layerDefinition,drawingInfo:s}),void 0!==r&&(e.showLabels=r),e}async*_getFeatures(e,t){const r=this.layer.createQuery();r.objectIds=e.map((e=>d(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,yield*(await import("../support/_query.js")).executeQuery(r,this,this.layer,t.cancelToken)}_applyLayerProperties(e,t){return u("properties",e).isNotMissing(),u("properties.layerType",e.layerType).satisfies((e=>!e||"ArcGISFeatureLayer"===e||"ArcGISStreamLayer"===e||"CSV"===e)),u("layer",t).isNotMissing().satisfies((e=>p(e)||c(e)||l(e)||y(e))),u("properties",e).satisfies((e=>!s(e))),super._applyLayerProperties(e,t)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISFeatureLayer"}}}}_createSchema(){return new x(this)}_isSupportedLayer(e){return p(e)}_createFeatureSettings(){return new S(this)}_createTaskSettings(){return new b(this)}_capabilities(){const e=i(this.layer);return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:e,supportsStandardizedQueries:this.layer.capabilities?.query?.supportsStandardizedQueriesOnly}:{...super._capabilities(),supportsAttachmentEditing:e}}}let S=class extends f{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.layer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};S=e([n],S);let x=class extends g{_fieldCollection;_typesCollection;constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=this._createTypeCollection()}get types(){return this._typesCollection}get _fields(){return this._fieldCollection}_createFieldCollection(){return new _({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"})}_createTypeCollection(){return new _({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"types"})}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField",typeIdField:"typeIdField"}}};x=e([n],x);export{x as FeatureLayerSchema};let E=class extends x{_setSetting(e,r){if(this._layerBindings.has(e))throw new t(h);super._setSetting(e,r)}_createFieldCollection(){return new o(super._createFieldCollection())}_createTypeCollection(){return new o(super._createTypeCollection())}};E=e([n],E);export{E as FeatureLayerReadOnlySchema};let b=class extends r{_layerExtension;constructor(e,t){super(t),this._layerExtension=e}get enableEditing(){return this._getSetting("enableEditing",this._layerExtension.layer?.editingEnabled??!0)}set enableEditing(e){this._setSetting("enableEditing",e)}};b=e([n],b);
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as t}from"../InvalidOperationError.js";import{TaskSettings as r}from"../data/TaskSettings.js";import{supportsAttachmentEditing as i}from"../data/support/attachments.js";import{_isGraphicsLayerJson as s}from"../json/FeatureLayerJson.js";import{layerToJson as a}from"../json/LayerJson.js";import{serializable as n}from"../support/Serializable.js";import{ReadOnlyCollection as o}from"../utilities/ReadOnlyCollection.js";import{isCSVLayer as l,isFeatureLayer as p,isGraphicsLayer as y,isStreamLayer as c}from"../utilities/_layers.js";import{checkArg as u}from"../utilities/checkArg.js";import{parse as d}from"../utilities/number.js";import{LayerExtension as m,LayerExtensionSchema as g,ERR_SCHEMA_READ_ONLY as h}from"./_LayerExtension.js";import{ArrayWrappedCollection as _}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as f}from"./support/PopupTemplateFeatureSettings.js";export class FeatureLayerExtensionBase extends m{get hasFeatures(){return!0}get layer(){return super.layer}get renderer(){return this.layer?.renderer}get canChangeDefinitionExpression(){return!0}get canChangeRenderer(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t,showLabels:r}=a(this.layer),{definitionExpression:i,drawingInfo:s}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),s&&(e.layerDefinition={...e.layerDefinition,drawingInfo:s}),void 0!==r&&(e.showLabels=r),e}async*_getFeatures(e,t){const r=this.layer.createQuery();r.objectIds=e.map((e=>d(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,yield*(await import("../support/_query.js")).executeQuery(r,this,this.layer,t.cancelToken)}_applyLayerProperties(e,t){return u("properties",e).isNotMissing(),u("properties.layerType",e.layerType).satisfies((e=>!e||"ArcGISFeatureLayer"===e||"ArcGISStreamLayer"===e||"CSV"===e)),u("layer",t).isNotMissing().satisfies((e=>p(e)||c(e)||l(e)||y(e))),u("properties",e).satisfies((e=>!s(e))),super._applyLayerProperties(e,t)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISFeatureLayer"}}}}_createSchema(){return new x(this)}_isSupportedLayer(e){return p(e)}_createFeatureSettings(){return new S(this)}_createTaskSettings(){return new b(this)}_capabilities(){const e=i(this.layer);return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:e,supportsStandardizedQueries:this.layer.capabilities?.query?.supportsStandardizedQueriesOnly}:{...super._capabilities(),supportsAttachmentEditing:e}}}let S=class extends f{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.layer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};S=e([n],S);let x=class extends g{_fieldCollection;_typesCollection;constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=this._createTypeCollection(),this.notifyChange("_fields")}get types(){return this._typesCollection}get _fields(){return this._fieldCollection}_createFieldCollection(){return new _({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"})}_createTypeCollection(){return new _({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"types"})}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField",typeIdField:"typeIdField"}}};x=e([n],x);export{x as FeatureLayerSchema};let E=class extends x{_setSetting(e,r){if(this._layerBindings.has(e))throw new t(h);super._setSetting(e,r)}_createFieldCollection(){return new o(super._createFieldCollection())}_createTypeCollection(){return new o(super._createTypeCollection())}};E=e([n],E);export{E as FeatureLayerReadOnlySchema};let b=class extends r{_layerExtension;constructor(e,t){super(t),this._layerExtension=e}get enableEditing(){return this._getSetting("enableEditing",this._layerExtension.layer?.editingEnabled??!0)}set enableEditing(e){this._setSetting("enableEditing",e)}};b=e([n],b);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{TaskSettings as t}from"../data/TaskSettings.js";import{layerToJson as r}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as n}from"../utilities/ReadOnlyCollection.js";import{isGeoJSONLayer as s}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as l}from"./_LayerExtension.js";import{ArrayWrappedCollection as o}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as p}from"./support/PopupTemplateFeatureSettings.js";let y=class extends a{get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get layer(){return super.layer}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t}=r(this.layer),{definitionExpression:i,drawingInfo:n}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),n&&(e.layerDefinition={...e.layerDefinition,drawingInfo:n}),e}_capabilities(){return{...super._capabilities(),supportsStandardizedQueries:!0}}async _onInitialize(){await super._onInitialize(),this.layer&&!this.layer.displayField&&(this.layer.displayField=this.layer.objectIdField)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"GeoJSON"}}}}_isSupportedLayer(e){return s(e)}_createFeatureSettings(){return new p(this)}_createTaskSettings(){return new u(this)}_createSchema(){return new d(this)}};y=e([i],y);export{y as GeoJSONLayerExtension};let d=class extends l{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new n(new o({parent:e,targetProperty:"layer",arrayProperty:"fields"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField"}}get _fields(){return this._fieldsCollection}};d=e([i],d);let u=class extends t{_layerExtension;constructor(e,t){super(t),this._layerExtension=e}get enableEditing(){return this._getSetting("enableEditing",this._layerExtension.layer?.editingEnabled??!0)}set enableEditing(e){this._setSetting("enableEditing",e)}};u=e([i],u);
|
|
1
|
+
import{__decorate as e}from"tslib";import{TaskSettings as t}from"../data/TaskSettings.js";import{layerToJson as r}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as n}from"../utilities/ReadOnlyCollection.js";import{isGeoJSONLayer as s}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as l}from"./_LayerExtension.js";import{ArrayWrappedCollection as o}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as p}from"./support/PopupTemplateFeatureSettings.js";let y=class extends a{get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get layer(){return super.layer}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t}=r(this.layer),{definitionExpression:i,drawingInfo:n}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),n&&(e.layerDefinition={...e.layerDefinition,drawingInfo:n}),e}_capabilities(){return{...super._capabilities(),supportsStandardizedQueries:!0}}async _onInitialize(){await super._onInitialize(),this.layer&&!this.layer.displayField&&(this.layer.displayField=this.layer.objectIdField)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"GeoJSON"}}}}_isSupportedLayer(e){return s(e)}_createFeatureSettings(){return new p(this)}_createTaskSettings(){return new u(this)}_createSchema(){return new d(this)}};y=e([i],y);export{y as GeoJSONLayerExtension};let d=class extends l{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new n(new o({parent:e,targetProperty:"layer",arrayProperty:"fields"})),this.notifyChange("_fields")}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField"}}get _fields(){return this._fieldsCollection}};d=e([i],d);let u=class extends t{_layerExtension;constructor(e,t){super(t),this._layerExtension=e}get enableEditing(){return this._getSetting("enableEditing",this._layerExtension.layer?.editingEnabled??!0)}set enableEditing(e){this._setSetting("enableEditing",e)}};u=e([i],u);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/config";import r from"@arcgis/core/core/Collection";import i from"@arcgis/core/geometry/SpatialReference";import{jsonToLayer as s}from"../json/LayerJson.js";import{serializable as a}from"../support/Serializable.js";import{ReadOnlyCollection as o}from"../utilities/ReadOnlyCollection.js";import{isGeoRssLayer as n}from"../utilities/_layers.js";import{map as l}from"../utilities/promise.js";import{caseInsensitiveEquals as c}from"../utilities/string.js";import{FeatureCollectionLayerExtension as u}from"./FeatureCollectionLayerExtension.js";import{LayerExtension as p,LayerExtensionSchema as y}from"./_LayerExtension.js";export const DEFAULT_GEO_RSS_UTILITY="https://utility.arcgis.com/sharing/rss";let f=class extends p{get layer(){return super.layer}get _featureLayerExtensions(){return this._featureLayerXCache}_featureLayerXCache=[];get hasFeatures(){return!0}_capabilities(){return Object.freeze({supportsAdd:!1,supportsUpdate:!1,supportsDelete:!1,supportsEditing:!1,supportsQuery:!1,supportsAttachmentEditing:!1,supportsStandardizedQueries:!0})}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"GeoRSS"}}}}_isSupportedLayer(e){return n(e)}_createSchema(){return new m(this)}async _initializeLayer(){t.geoRSSServiceUrl||(t.geoRSSServiceUrl=DEFAULT_GEO_RSS_UTILITY)}async _onInitialize(){await super._onInitialize(),this.layer.featureCollections&&(this._featureLayerXCache=await l(this.layer.featureCollections,(async e=>{const t={layerType:"ArcGISFeatureLayer",featureCollection:{layers:[e]}};return new u({layer:await s(t)})})),this.notifyChange("_featureLayerExtensions"))}};f=e([a],f);export{f as GeoRSSLayerExtension};let m=class extends y{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new _(e),this.notifyChange("_fields")}_getPropertyBindings(){return{spatialReference:{value:i.WGS84}}}get _fields(){return this._fieldsCollection}};m=e([a],m);class _ extends o{layerExtension;get _collection(){if(!this.layerExtension?.layer)return new r;let e=new r;return this.layerExtension._featureLayerExtensions.forEach((t=>{const r=t.layer.fields.filter((t=>!e.some((e=>this._fieldsEqual(t,e)))));e=e.concat(r)})),e}constructor(e){super(),this.layerExtension=e,e.watch("_featureLayerExtensions",(()=>this.emit("after-changes")),!0)}_fieldsEqual(e,t){return!(!c(e.alias,t.alias)||!c(e.name,t.name)||e.type!==t.type)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import t from"@arcgis/core/core/Collection";import{layerToJson as r}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isImageryLayer as s}from"../utilities/_layers.js";import{getAllFieldInfos as l}from"../utilities/esri.js";import{LayerExtension as n,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as p}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as u}from"./support/PopupTemplateFeatureSettings.js";let y=class extends n{get hasFeatures(){return!0}get capabilities(){return this._layerCapabilities?this._layerCapabilities:this._capabilities()}get layer(){return super.layer}includeCatalogItems=!0;get hasRasterAttributeTable(){return this._hasRasterAttributeTable}get canChangeDefinitionExpression(){return!0}_layerCapabilities;_hasRasterAttributeTable;_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t}=r(this.layer),{definitionExpression:i,drawingInfo:a}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),a&&(e.layerDefinition={...e.layerDefinition,drawingInfo:a}),e}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISImageServiceLayer"}},includeCatalogItems:{serializeModes:["initial"],default:!0}}}async _onInitialize(){await super._onInitialize();const e=await this.requestHelper.request(this.layer.url,{query:{f:"json"}});if(!e?.data)throw new Error(`Response to request for url ${this.layer.url} was invalid`);const{data:t}=e;if(t.capabilities){const e=t.capabilities.split(",").map((e=>e.trim()));this._layerCapabilities={supportsAdd:e.includes("Create"),supportsUpdate:e.includes("Update"),supportsDelete:e.includes("Delete"),supportsEditing:e.includes("Editing"),supportsQuery:e.includes("Catalog"),supportsStandardizedQueries:t.useStandardizedQueries,supportsAttachmentEditing:!1}}this._hasRasterAttributeTable=t.hasRasterAttributeTable}async _applyPortalItemProperties(e){if("Image Service"!==e.type)throw new Error(`Cannot create Imagery Layer from Portal item that has type: ${e.type}`);if(e.typeKeywords.includes("Elevation 3D Layer"))throw new Error("Cannot create Imagery Layer from Portal item that references an Elevation layer");e.url&&(this.layer.url=e.url)}_isSupportedLayer(e){return s(e)}_createSchema(){return new c(this)}_createFeatureSettings(){return new d(this)}};y=e([i],y);export{y as ImageryLayerExtension};let d=class extends u{get _defaultOutFields(){const e=l(this.popupTemplate),t=this.featureSource?.schema?.primaryKeyField;if(e&&t){const{layer:e}=this._layerExtension;return super._defaultOutFields.filter((t=>!t.startsWith(`${e?._rasterAttributeTableFieldPrefix}`)))}return["*"]}};d=e([i],d);let c=class extends o{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new a(new p({parent:e,targetProperty:"layer",arrayProperty:"fields"}))}get _fields(){return new a(this._fieldsCollection?.concat(this._rasterFields)??new t)}get _rasterFields(){const{layer:e}=this._layerExtension;return"loaded"!==this._layerExtension.layer?.loadStatus?new t:new t(e?.rasterFields?.filter((t=>t.name.startsWith(e?._rasterAttributeTableFieldPrefix))))}_getPropertyBindings(){return{primaryKeyField:{property:"objectIdField",readonly:!0},spatialReference:{property:"spatialReference",readonly:!0},geometryType:{value:"polygon"}}}};c=e([i],c);
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/core/Collection";import{layerToJson as r}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isImageryLayer as s}from"../utilities/_layers.js";import{getAllFieldInfos as l}from"../utilities/esri.js";import{LayerExtension as n,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as p}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as u}from"./support/PopupTemplateFeatureSettings.js";let y=class extends n{get hasFeatures(){return!0}get capabilities(){return this._layerCapabilities?this._layerCapabilities:this._capabilities()}get layer(){return super.layer}includeCatalogItems=!0;get hasRasterAttributeTable(){return this._hasRasterAttributeTable}get canChangeDefinitionExpression(){return!0}_layerCapabilities;_hasRasterAttributeTable;_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t}=r(this.layer),{definitionExpression:i,drawingInfo:a}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),a&&(e.layerDefinition={...e.layerDefinition,drawingInfo:a}),e}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISImageServiceLayer"}},includeCatalogItems:{serializeModes:["initial"],default:!0}}}async _onInitialize(){await super._onInitialize();const e=await this.requestHelper.request(this.layer.url,{query:{f:"json"}});if(!e?.data)throw new Error(`Response to request for url ${this.layer.url} was invalid`);const{data:t}=e;if(t.capabilities){const e=t.capabilities.split(",").map((e=>e.trim()));this._layerCapabilities={supportsAdd:e.includes("Create"),supportsUpdate:e.includes("Update"),supportsDelete:e.includes("Delete"),supportsEditing:e.includes("Editing"),supportsQuery:e.includes("Catalog"),supportsStandardizedQueries:t.useStandardizedQueries,supportsAttachmentEditing:!1}}this._hasRasterAttributeTable=t.hasRasterAttributeTable}async _applyPortalItemProperties(e){if("Image Service"!==e.type)throw new Error(`Cannot create Imagery Layer from Portal item that has type: ${e.type}`);if(e.typeKeywords.includes("Elevation 3D Layer"))throw new Error("Cannot create Imagery Layer from Portal item that references an Elevation layer");e.url&&(this.layer.url=e.url)}_isSupportedLayer(e){return s(e)}_createSchema(){return new c(this)}_createFeatureSettings(){return new d(this)}};y=e([i],y);export{y as ImageryLayerExtension};let d=class extends u{get _defaultOutFields(){const e=l(this.popupTemplate),t=this.featureSource?.schema?.primaryKeyField;if(e&&t){const{layer:e}=this._layerExtension;return super._defaultOutFields.filter((t=>!t.startsWith(`${e?._rasterAttributeTableFieldPrefix}`)))}return["*"]}};d=e([i],d);let c=class extends o{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new a(new p({parent:e,targetProperty:"layer",arrayProperty:"fields"})),this.notifyChange("_fields")}get _fields(){return new a(this._fieldsCollection?.concat(this._rasterFields)??new t)}get _rasterFields(){const{layer:e}=this._layerExtension;return"loaded"!==this._layerExtension.layer?.loadStatus?new t:new t(e?.rasterFields?.filter((t=>t.name.startsWith(e?._rasterAttributeTableFieldPrefix))))}_getPropertyBindings(){return{primaryKeyField:{property:"objectIdField",readonly:!0},spatialReference:{property:"spatialReference",readonly:!0},geometryType:{value:"polygon"}}}};c=e([i],c);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import r from"@arcgis/core/config";import t from"@arcgis/core/core/Collection";import i from"@arcgis/core/geometry/SpatialReference";import a from"@arcgis/core/layers/support/Field";import{InvalidOperationError as s}from"../InvalidOperationError.js";import{Schema as l}from"../data/Schema.js";import{layerToJson as n}from"../json/LayerJson.js";import{translate as o}from"../locale/language.js";import{serializable as p}from"../support/Serializable.js";import{ReadOnlyCollection as y}from"../utilities/ReadOnlyCollection.js";import{isKMLLayer as c}from"../utilities/_layers.js";import{checkArg as m}from"../utilities/checkArg.js";import{toAbsoluteUri as u}from"../utilities/uri.js";import{KMLSublayerExtension as d}from"./KMLSublayerExtension.js";import{LayerExtension as h}from"./_LayerExtension.js";import{SublayerExtensionCollectionBase as
|
|
1
|
+
import{__decorate as e}from"tslib";import r from"@arcgis/core/config";import t from"@arcgis/core/core/Collection";import i from"@arcgis/core/geometry/SpatialReference";import a from"@arcgis/core/layers/support/Field";import{InvalidOperationError as s}from"../InvalidOperationError.js";import{Schema as l}from"../data/Schema.js";import{layerToJson as n}from"../json/LayerJson.js";import{translate as o}from"../locale/language.js";import{serializable as p}from"../support/Serializable.js";import{ReadOnlyCollection as y}from"../utilities/ReadOnlyCollection.js";import{isKMLLayer as c}from"../utilities/_layers.js";import{checkArg as m}from"../utilities/checkArg.js";import{toAbsoluteUri as u}from"../utilities/uri.js";import{KMLSublayerExtension as d}from"./KMLSublayerExtension.js";import{LayerExtension as h}from"./_LayerExtension.js";import{SublayerExtensionCollectionBase as g}from"./support/_SublayerExtensionCollection.js";export const DEFAULT_KML_UTILITY="https://utility.arcgis.com/sharing/kml";const b="SublayerExtension collection for KMLLayerExtension is readonly";let _=class extends h{get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get hasFeatures(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}get _layerSupportsHideChildren(){return!1}get _graphics(){return this._layerView?this._layerView.allVisiblePoints.concat(this._layerView.allVisiblePolygons).concat(this._layerView.allVisiblePolylines).toArray():[]}_createSublayerExtension(e){return new d(e)}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{visibleFolders:r}=n(this.layer);return e.visibleFolders=r,e}async _applyPortalItemProperties(e){if("KML"!==e.type)throw new Error(`Cannot create KML Layer from Portal item that has type: ${e.type}`);this.layer.url=e.url??u("data",`${e.itemUrl}/`)}_capabilities(){return{...super._capabilities(),supportsStandardizedQueries:!0}}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"KML"}}}}_createSchema(){return new x}_isSupportedLayer(e){return c(e)}async _initializeLayer(){r.kmlServiceUrl||(r.kmlServiceUrl=DEFAULT_KML_UTILITY)}_createSublayerExtensionCollection(){return new w(this)}};_=e([p],_);export{_ as KMLLayerExtension};class w extends g{_layerExtension;constructor(e){super(e,"layer.sublayers"),this._layerExtension=e}add(e,r){if(m("sublayerX",e).isNotMissing(),e.sublayer&&this._parent.layer.sublayers&&!this._parent.layer.sublayers.includes(e.sublayer))throw new s(b);return super.add(e,r)}removeAt(e){throw new s(b)}reorder(e,r){throw new s(b)}reverse(){throw new s(b)}sort(e){throw new s(b)}splice(e,r,...t){throw new s(b)}_createClone(){return new w(this._layerExtension)}_createSublayerExtension(e){return this._parent._createSublayerExtension(e)}}const f="This schema property is read-only.";let x=class extends l{_fieldCollection;constructor(){super(),this._fieldCollection=this._createFieldCollection(),this.notifyChange("_fields")}get spatialReference(){return i.WGS84}set spatialReference(e){throw new s(f)}get primaryKeyField(){return"id"}set primaryKeyField(e){throw new s(f)}get _fields(){return this._fieldCollection}_createFieldCollection(){const e=new t;return e.add(new a({name:"id",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.id"),editable:!1,type:"oid"})),e.add(new a({name:"name",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.name"),editable:!1,type:"string"})),e.add(new a({name:"description",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.description"),editable:!1,type:"string"})),e.add(new a({name:"visibility",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.visibility"),editable:!1,type:"integer"})),e.add(new a({name:"balloonStyleText",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.balloonStyleText"),editable:!1,type:"string"})),e.add(new a({name:"styleUrl",alias:o("gcx.api.mapping.kml-sublayer-extension.schema.styleUrl"),editable:!1,type:"string"})),new y(e)}};x=e([p],x);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/CodedValueDomain";import r from"@arcgis/core/popup/ExpressionInfo";import i from"@arcgis/core/popup/FieldInfo";import{serializable as s}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isPointCloudLayer as n}from"../utilities/_layers.js";import{LayerExtension as l,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as p}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as u}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/CodedValueDomain";import r from"@arcgis/core/popup/ExpressionInfo";import i from"@arcgis/core/popup/FieldInfo";import{serializable as s}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isPointCloudLayer as n}from"../utilities/_layers.js";import{LayerExtension as l,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as p}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as u}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as f}from"./support/layers.js";let d=class extends l{_enableClientSideData;get layer(){return super.layer}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}get hasFeatures(){return!0}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get canChangeOpacity(){return!1}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();return e&&delete e.opacity,e}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}async _postInitialize(){await super._postInitialize(),await this._setDecodedPopupFieldInfos()}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"PointCloudLayer"}},enableClientSideData:{serializeModes:["initial"],default:!0}}}_isSupportedLayer(e){return n(e)}_createSchema(){return new m(this)}_createFeatureSettings(){return new u(this)}_updateClientSideFields(){this.layer&&this._enableClientSideData&&f(this.layer,this.featureSettings.outFields)}async _setDecodedPopupFieldInfos(){const e=this.schema.fields.find((e=>"CLASS_CODE"===e.name));if(e){const r=await this.layer.queryCachedStatistics("CLASS_CODE"),i=r?.labels?.labels;i&&(e.domain=new t({codedValues:i.map((e=>({code:e.value,name:e.label})))}))}if(null==this.featureSettings.popupTemplate.expressionInfos&&(this.featureSettings.popupTemplate.expressionInfos=[]),this.schema.fields.some((e=>"RGB"===e.name))){this.featureSettings.popupTemplate.fieldInfos.find((e=>"RGB"===e.fieldName)).visible=!1,this.featureSettings.popupTemplate.fieldInfos=[...this.featureSettings.popupTemplate.fieldInfos,new i({fieldName:"expression/__gcx-rgb"})],this.featureSettings.popupTemplate.expressionInfos=[...this.featureSettings.popupTemplate.expressionInfos,new r({expression:"var rgb = $feature.RGB; var red = Floor(rgb/65536,0); var green = Floor((rgb-(red*65536))/256,0); var blue = rgb-(red*65536)-(green*256); return 'rgb(' + red + ',' + green + ',' + blue + ')';",name:"__gcx-rgb",returnType:"string",title:"RGB"})]}if(this.schema.fields.some((e=>"RETURNS"===e.name))){this.featureSettings.popupTemplate.fieldInfos.find((e=>"RETURNS"===e.fieldName)).visible=!1,this.featureSettings.popupTemplate.fieldInfos=[...this.featureSettings.popupTemplate.fieldInfos,new i({fieldName:"expression/__gcx-returns"})],this.featureSettings.popupTemplate.expressionInfos=[...this.featureSettings.popupTemplate.expressionInfos,new r({expression:"var returnnumber = $feature.RETURNS % 16; var numberofreturns = Floor($feature.RETURNS / 16); return returnnumber + ' / ' + numberofreturns;",name:"__gcx-returns",returnType:"string",title:"RETURNS"})]}}};d=e([s],d);export{d as PointCloudLayerExtension};let m=class extends o{_fieldCollection;constructor(e){super(e),this._fieldCollection=new a(new p({parent:e,targetProperty:"layer",arrayProperty:"fields"})),this.notifyChange("_fields")}get _fields(){return this._fieldCollection}_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};m=e([s],m);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{serializable as t}from"../support/Serializable.js";import{ReadOnlyCollection as r}from"../utilities/ReadOnlyCollection.js";import{isSceneLayer as i}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as s}from"./_LayerExtension.js";import{ArrayWrappedCollection as l}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as n}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as o}from"./support/layers.js";let p=class extends a{get layer(){return super.layer}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}_enableClientSideData;get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_capabilities(){return Object.freeze({supportsAdd:!1,supportsUpdate:!1,supportsDelete:!1,supportsEditing:!1,supportsQuery:!1,supportsAttachmentEditing:!1,supportsStandardizedQueries:!0})}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0)),this.layer.associatedLayer||this.layer.outFields||(this.layer.outFields=this.layer.fields.map((e=>e.name)),this.layer.outFields&&!this.layer.outFields.includes(this.layer.objectIdField)&&this.layer.outFields.push(this.layer.objectIdField))}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISSceneServiceLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1}}}_isSupportedLayer(e){return i(e)}_createSchema(){return new d(this)}_createFeatureSettings(){return new n(this)}async _applyPortalItemProperties(e){if("Scene Service"!==e.type)throw new Error(`Cannot create Scene Layer from Portal item that has type: ${e.type}`);if(!e.typeKeywords.includes("3DObject")&&!e.typeKeywords.includes("Point"))throw new Error("Cannot create Scene Layer from Portal item that does not reference a Scene layer");this.layer.url=e.url||this.layer.url}_updateClientSideFields(){this.layer&&this._enableClientSideData&&o(this.layer,this.featureSettings.outFields)}};p=e([t],p);export{p as SceneLayerExtension};let d=class extends s{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new r(new l({parent:e,targetProperty:"layer",arrayProperty:"fields"}))}_getPropertyBindings(){return{spatialReference:"spatialReference",geometryType:"geometryType"}}get _fields(){return this._fieldsCollection}};d=e([t],d);
|
|
1
|
+
import{__decorate as e}from"tslib";import{serializable as t}from"../support/Serializable.js";import{ReadOnlyCollection as r}from"../utilities/ReadOnlyCollection.js";import{isSceneLayer as i}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as s}from"./_LayerExtension.js";import{ArrayWrappedCollection as l}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as n}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as o}from"./support/layers.js";let p=class extends a{get layer(){return super.layer}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}_enableClientSideData;get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_capabilities(){return Object.freeze({supportsAdd:!1,supportsUpdate:!1,supportsDelete:!1,supportsEditing:!1,supportsQuery:!1,supportsAttachmentEditing:!1,supportsStandardizedQueries:!0})}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0)),this.layer.associatedLayer||this.layer.outFields||(this.layer.outFields=this.layer.fields.map((e=>e.name)),this.layer.outFields&&!this.layer.outFields.includes(this.layer.objectIdField)&&this.layer.outFields.push(this.layer.objectIdField))}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISSceneServiceLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1}}}_isSupportedLayer(e){return i(e)}_createSchema(){return new d(this)}_createFeatureSettings(){return new n(this)}async _applyPortalItemProperties(e){if("Scene Service"!==e.type)throw new Error(`Cannot create Scene Layer from Portal item that has type: ${e.type}`);if(!e.typeKeywords.includes("3DObject")&&!e.typeKeywords.includes("Point"))throw new Error("Cannot create Scene Layer from Portal item that does not reference a Scene layer");this.layer.url=e.url||this.layer.url}_updateClientSideFields(){this.layer&&this._enableClientSideData&&o(this.layer,this.featureSettings.outFields)}};p=e([t],p);export{p as SceneLayerExtension};let d=class extends s{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new r(new l({parent:e,targetProperty:"layer",arrayProperty:"fields"})),this.notifyChange("_fields")}_getPropertyBindings(){return{spatialReference:"spatialReference",geometryType:"geometryType"}}get _fields(){return this._fieldsCollection}};d=e([t],d);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{applyJsonToLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{applyJsonToLayer as t,layerToJson as r}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isStreamLayer as n}from"../utilities/_layers.js";import{LayerExtension as s,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as l}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as p}from"./support/PopupTemplateFeatureSettings.js";let y=class extends s{get layer(){return super.layer}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}get hasFeatures(){return!0}get renderer(){return this.layer.renderer}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:t}=r(this.layer),{definitionExpression:i,drawingInfo:a}=t??{};return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),a&&(e.layerDefinition={...e.layerDefinition,drawingInfo:a}),e}_capabilities(){return{...super._capabilities(),supportsStandardizedQueries:!0}}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISStreamLayer"}}}}_createSchema(){return new c(this)}_isSupportedLayer(e){return n(e)}_createFeatureSettings(){return new u(this)}async _applyPortalItemProperties(e){if("Stream Service"!==e.type)throw new Error(`Cannot create Stream Layer from Portal item that has type: ${e.type}`);this.layer.url=e.url||this.layer.url;const r=await e.fetchData();r&&Object.keys(r).length>0&&await t(r,this.layer)}};y=e([i],y);export{y as StreamLayerExtension};let c=class extends o{_fieldCollection;constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this.notifyChange("_fields")}get _fields(){return this._fieldCollection}_createFieldCollection(){return new a(new l({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField"}}};c=e([i],c);export{c as StreamLayerSchema};let u=class extends p{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.layer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};u=e([i],u);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/FeatureTemplate.js";import r from"@arcgis/core/layers/support/FeatureType.js";import s from"@arcgis/core/rest/support/AttachmentQuery";import{toAttachment as a}from"../data/Attachment.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as l,deleteAttachments as n,supportsAttachmentEditing as o}from"../data/support/attachments.js";import{applyJsonToLayer as u,layerToJson as p}from"../json/LayerJson.js";import{cancelify as y}from"../support/Cancellable.js";import{serializable as d}from"../support/Serializable.js";import{ArcGISRelationshipCollection as c}from"../support/_ArcGISRelationshipCollection.js";import{ReadOnlyCollection as h}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as m,isSubtypeGroupLayer as f}from"../utilities/_layers.js";import{parse as b}from"../utilities/number.js";import{caseInsensitiveEquals as _}from"../utilities/string.js";import{onCollectionPropertyChange as g}from"../utilities/watch.js";import{SubtypeSublayerExtension as w}from"./SubtypeSublayerExtension.js";import{LayerExtension as S,LayerExtensionReadOnlySchema as F}from"./_LayerExtension.js";import{ArrayWrappedCollection as E}from"./support/ArrayWrappedCollection.js";import{addOutFields as C,getGlobalIdField as j,getReturnServiceEditsOption as x,isGlobalIdUsed as I}from"./support/layers.js";let v=class extends S{attachmentTypes;get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get sublayersAreReadOnly(){return!1}get hasFeatures(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_subtypes;_enableClientSideData;constructor(e){super(e),g(this,"layer.sublayers",this._onSubtypeSublayersChange)}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const t=p(this.layer);return e.layers&&(e.layers=t.layers.map((e=>{const{layerDefinition:t,visibility:r,subtypeCode:s,layerType:a}=e,i={layerType:a,visibility:r,subtypeCode:s};return t?.drawingInfo&&(i.layerDefinition={drawingInfo:t.drawingInfo}),i}))),e}_createRelationships(){return new SubtypeGroupLayerRelationshipCollection(this)}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize(),this._updateSubtypes(),this._addTemplatesToSublayers(),this._addDomainsToFields()}async _postInitialize(){await super._postInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}_capabilities(){const e=o(this.layer);return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:e,supportsStandardizedQueries:this.layer.capabilities?.query?.supportsStandardizedQueriesOnly}:{...super._capabilities(),supportsAttachmentEditing:e}}_createSublayerExtension(e){return new w(e)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"SubtypeGroupLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1},attachmentTypes:["initial"]}}_isSupportedLayer(e){return f(e)}_createSchema(){return new R(this)}async _getAttachments(e){if(!this.layer?.capabilities?.data?.supportsAttachment)return[];const t=+e.primaryKey,r=new s({objectIds:[t]}),i=await this.layer.queryAttachments(r);return i?.[t]?.length?i[t].map((e=>a(e,e.url))):[]}async _addAttachment(e,t){return l(e,this.layer,t,{attachmentTypes:this.attachmentTypes})}async _deleteAttachments(e,t){return n(e,this.layer,t)}async _applyPortalItemProperties(e){if("Feature Service"!==e.type)throw new Error(`Cannot create SubtypeGroupLayer from Portal item that has type: ${e.type}`);let{url:t}=e;t.match(".*MapServer/\\d{1,}/?$")||t.match(".*FeatureServer/\\d{1,}/?$")||(t=`${t}/0`),this.layer.url=t||this.layer.url;const r=await e.fetchData();r&&await u(r,this.layer)}async*_getFeatures(e,t){this.layer||(yield*super._getFeatures(e,t));const r=this.layer.createQuery();r.objectIds=e.map((e=>b(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,yield*(await import("../support/_query.js")).executeQuery(r,this,this.layer,t.cancelToken)}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length||!this.layer)return;const s=await this._applyEdits({addFeatures:r.map((e=>e.toGraphic()))},t);if(!s.addFeatureResults||s.addFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.addFeatureResults.forEach(((e,t)=>{const{objectId:s,globalId:l,error:n}=e,o=r[t];if(n){a=a||new i("Errors encountered when adding features.");const{title:r}=o;a.errors.set(`${r}-${t}`,new Error(`Failed to add feature '${r}'. ${e.error.name} : ${e.error.message}`))}else{const{primaryKeyField:e}=o.schema;o.attributes.set(e,s);const t=j(this.layer);t&&l&&o.attributes.set(t,l)}})),a)throw a}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const s=await this._applyEdits({updateFeatures:Array.from(e).map((e=>e.toGraphic()))},t);if(!s.updateFeatureResults||s.updateFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.updateFeatureResults.forEach(((e,t)=>{if(e.error){a=a||new i("Errors encountered when updating features.");const{primaryKey:s}=r[t];a.errors.set(s,new Error(`Failed to update feature with id ${s}. ${e.error.name} : ${e.error.message}`))}})),a)throw a}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({deleteFeatures:e.map((e=>({objectId:e})))},t);if(!r.deleteFeatureResults)throw new i("Received malformed response from server while saving feature(s).");let s;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){s=s||new i("Errors encountered when deleting features.");const a=e[r];s.errors.set(a,new Error(`Failed to delete feature with id ${a}. ${t.error.name} : ${t.error.message}`))}})),s)throw s}_onSubtypeSublayersChange=e=>{e.removed?.length&&(this.sublayerExtensions.removeMany(this.sublayerExtensions.filter((e=>!e.sublayer))),this._updateSubtypes())};async _applyEdits(e,t={}){const r=I(this.layer,e),s=this.layer.applyEdits(e,{globalIdUsed:r,returnServiceEditsOption:x(this.layer)}),a=await y(s,t.cancelToken);if(!a)throw new i("Received malformed response from server while saving feature(s).");return a}_updateClientSideFields(){this.layer&&this._enableClientSideData&&(C(this.layer,this.featureSettings.outFields),this.allSublayerExtensions.forEach((e=>C(this.layer,e.featureSettings.outFields))))}_updateSubtypes(){if(!this.layer.subtypes)return;const e=[];for(const t of this.layer.sublayers){const s=this.layer.subtypes.find((e=>e.code===t.subtypeCode));s&&e.push(new r({id:s.code,name:s.name,domains:s.domains??{},templates:t.templates}))}this._subtypes=e}_addTemplatesToSublayers(){const e=this.layer.sourceJSON?.templates?.map((e=>t.fromJSON(e)));for(let r=0;r<this.sublayerExtensions.length;r++){const s=this.sublayerExtensions.getItemAt(r);if(null==s.sublayer)continue;const a=this.layer.sourceJSON?.types.filter((e=>e.name===s.title))[0]?.templates;(null==s.sublayer.templates||0===s.sublayer.templates.length||T(s))&&a?s.sublayer.templates=a.map((e=>t.fromJSON(e))):1!==e.length||1===this.sublayerExtensions.length||s.sublayer.templates?T(s)&&(s.sublayer.templates[0].name=s.sublayer.title):s.sublayer.templates=e.map((e=>{const r=t.fromJSON(e.toJSON());r.name=s.title;const a=r.prototype?.attributes;return"number"==typeof a?.[this.layer.subtypeField]&&(a[this.layer.subtypeField]=s.sublayer.subtypeCode),r}))}}_addDomainsToFields(){if(this._subtypes)for(const e of this._subtypes)for(const[t,r]of Object.entries(e.domains)){const e=this.layer.fields.find((e=>_(e.name,t)));e&&!e.domain&&(e.domain=r)}}};v=e([d],v);export{v as SubtypeGroupLayerExtension};let R=class extends F{_fieldCollection;_typesCollection;constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=this._createTypesCollection()}get types(){return this._typesCollection}get _fields(){return this._fieldCollection}_createFieldCollection(){return new h(new E({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"}))}_createTypesCollection(){return new h(new E({parent:this._layerExtension,arrayProperty:"_subtypes"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField",typeIdField:"subtypeField"}}};R=e([d],R);export{R as SubtypeGroupLayerSchema};export class SubtypeGroupLayerRelationshipCollection extends c{get _sourceUrl(){const e=this._source.layer;if(e)return`${e.url}/${e.layerId}`}get _sourceLayerId(){const e=this._source.layer;return e?.layerId}_findRelatedSource(e){if(!this._source.mapExtension||!this._source.layer||!this._sourceUrl)return;const t=this._sourceUrl.slice(0,this._sourceUrl.length-`${this._sourceLayerId}`.length-1),r=this._source.mapExtension.allLayerExtensions.initializedItems.find((r=>(m(r.layer)||f(r.layer))&&r.layer.url===t&&r.layer.layerId===e));return r||this._source.mapExtension.tableExtensions.initializedItems.find((r=>m(r.table)&&r.table.url===t&&r.table.layerId===e))}}function T(e){return 1===e.sublayer?.templates?.length&&"New Feature"===e.sublayer.templates[0].name}
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/FeatureTemplate.js";import r from"@arcgis/core/layers/support/FeatureType.js";import s from"@arcgis/core/rest/support/AttachmentQuery";import{toAttachment as a}from"../data/Attachment.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as l,deleteAttachments as n,supportsAttachmentEditing as o}from"../data/support/attachments.js";import{applyJsonToLayer as u,layerToJson as p}from"../json/LayerJson.js";import{cancelify as y}from"../support/Cancellable.js";import{serializable as d}from"../support/Serializable.js";import{ArcGISRelationshipCollection as c}from"../support/_ArcGISRelationshipCollection.js";import{ReadOnlyCollection as h}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as m,isSubtypeGroupLayer as f}from"../utilities/_layers.js";import{parse as b}from"../utilities/number.js";import{caseInsensitiveEquals as _}from"../utilities/string.js";import{onCollectionPropertyChange as g}from"../utilities/watch.js";import{SubtypeSublayerExtension as w}from"./SubtypeSublayerExtension.js";import{LayerExtension as S,LayerExtensionReadOnlySchema as F}from"./_LayerExtension.js";import{ArrayWrappedCollection as E}from"./support/ArrayWrappedCollection.js";import{addOutFields as C,getGlobalIdField as j,getReturnServiceEditsOption as x,isGlobalIdUsed as I}from"./support/layers.js";let v=class extends S{attachmentTypes;get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get sublayersAreReadOnly(){return!1}get hasFeatures(){return!0}get canChangeDefinitionExpression(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_subtypes;_enableClientSideData;constructor(e){super(e),g(this,"layer.sublayers",this._onSubtypeSublayersChange)}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const t=p(this.layer);return e.layers&&(e.layers=t.layers.map((e=>{const{layerDefinition:t,visibility:r,subtypeCode:s,layerType:a}=e,i={layerType:a,visibility:r,subtypeCode:s};return t?.drawingInfo&&(i.layerDefinition={drawingInfo:t.drawingInfo}),i}))),e}_createRelationships(){return new SubtypeGroupLayerRelationshipCollection(this)}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize(),this._updateSubtypes(),this._addTemplatesToSublayers(),this._addDomainsToFields()}async _postInitialize(){await super._postInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}_capabilities(){const e=o(this.layer);return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:e,supportsStandardizedQueries:this.layer.capabilities?.query?.supportsStandardizedQueriesOnly}:{...super._capabilities(),supportsAttachmentEditing:e}}_createSublayerExtension(e){return new w(e)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"SubtypeGroupLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1},attachmentTypes:["initial"]}}_isSupportedLayer(e){return f(e)}_createSchema(){return new R(this)}async _getAttachments(e){if(!this.layer?.capabilities?.data?.supportsAttachment)return[];const t=+e.primaryKey,r=new s({objectIds:[t]}),i=await this.layer.queryAttachments(r);return i?.[t]?.length?i[t].map((e=>a(e,e.url))):[]}async _addAttachment(e,t){return l(e,this.layer,t,{attachmentTypes:this.attachmentTypes})}async _deleteAttachments(e,t){return n(e,this.layer,t)}async _applyPortalItemProperties(e){if("Feature Service"!==e.type)throw new Error(`Cannot create SubtypeGroupLayer from Portal item that has type: ${e.type}`);let{url:t}=e;t.match(".*MapServer/\\d{1,}/?$")||t.match(".*FeatureServer/\\d{1,}/?$")||(t=`${t}/0`),this.layer.url=t||this.layer.url;const r=await e.fetchData();r&&await u(r,this.layer)}async*_getFeatures(e,t){this.layer||(yield*super._getFeatures(e,t));const r=this.layer.createQuery();r.objectIds=e.map((e=>b(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,yield*(await import("../support/_query.js")).executeQuery(r,this,this.layer,t.cancelToken)}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length||!this.layer)return;const s=await this._applyEdits({addFeatures:r.map((e=>e.toGraphic()))},t);if(!s.addFeatureResults||s.addFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.addFeatureResults.forEach(((e,t)=>{const{objectId:s,globalId:l,error:n}=e,o=r[t];if(n){a=a||new i("Errors encountered when adding features.");const{title:r}=o;a.errors.set(`${r}-${t}`,new Error(`Failed to add feature '${r}'. ${e.error.name} : ${e.error.message}`))}else{const{primaryKeyField:e}=o.schema;o.attributes.set(e,s);const t=j(this.layer);t&&l&&o.attributes.set(t,l)}})),a)throw a}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const s=await this._applyEdits({updateFeatures:Array.from(e).map((e=>e.toGraphic()))},t);if(!s.updateFeatureResults||s.updateFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.updateFeatureResults.forEach(((e,t)=>{if(e.error){a=a||new i("Errors encountered when updating features.");const{primaryKey:s}=r[t];a.errors.set(s,new Error(`Failed to update feature with id ${s}. ${e.error.name} : ${e.error.message}`))}})),a)throw a}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({deleteFeatures:e.map((e=>({objectId:e})))},t);if(!r.deleteFeatureResults)throw new i("Received malformed response from server while saving feature(s).");let s;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){s=s||new i("Errors encountered when deleting features.");const a=e[r];s.errors.set(a,new Error(`Failed to delete feature with id ${a}. ${t.error.name} : ${t.error.message}`))}})),s)throw s}_onSubtypeSublayersChange=e=>{e.removed?.length&&(this.sublayerExtensions.removeMany(this.sublayerExtensions.filter((e=>!e.sublayer))),this._updateSubtypes())};async _applyEdits(e,t={}){const r=I(this.layer,e),s=this.layer.applyEdits(e,{globalIdUsed:r,returnServiceEditsOption:x(this.layer)}),a=await y(s,t.cancelToken);if(!a)throw new i("Received malformed response from server while saving feature(s).");return a}_updateClientSideFields(){this.layer&&this._enableClientSideData&&(C(this.layer,this.featureSettings.outFields),this.allSublayerExtensions.forEach((e=>C(this.layer,e.featureSettings.outFields))))}_updateSubtypes(){if(!this.layer.subtypes)return;const e=[];for(const t of this.layer.sublayers){const s=this.layer.subtypes.find((e=>e.code===t.subtypeCode));s&&e.push(new r({id:s.code,name:s.name,domains:s.domains??{},templates:t.templates}))}this._subtypes=e}_addTemplatesToSublayers(){const e=this.layer.sourceJSON?.templates?.map((e=>t.fromJSON(e)));for(let r=0;r<this.sublayerExtensions.length;r++){const s=this.sublayerExtensions.getItemAt(r);if(null==s.sublayer)continue;const a=this.layer.sourceJSON?.types.filter((e=>e.name===s.title))[0]?.templates;(null==s.sublayer.templates||0===s.sublayer.templates.length||T(s))&&a?s.sublayer.templates=a.map((e=>t.fromJSON(e))):1!==e.length||1===this.sublayerExtensions.length||s.sublayer.templates?T(s)&&(s.sublayer.templates[0].name=s.sublayer.title):s.sublayer.templates=e.map((e=>{const r=t.fromJSON(e.toJSON());r.name=s.title;const a=r.prototype?.attributes;return"number"==typeof a?.[this.layer.subtypeField]&&(a[this.layer.subtypeField]=s.sublayer.subtypeCode),r}))}}_addDomainsToFields(){if(this._subtypes)for(const e of this._subtypes)for(const[t,r]of Object.entries(e.domains)){const e=this.layer.fields.find((e=>_(e.name,t)));e&&!e.domain&&(e.domain=r)}}};v=e([d],v);export{v as SubtypeGroupLayerExtension};let R=class extends F{_fieldCollection;_typesCollection;constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=this._createTypesCollection(),this.notifyChange("_fields")}get types(){return this._typesCollection}get _fields(){return this._fieldCollection}_createFieldCollection(){return new h(new E({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"}))}_createTypesCollection(){return new h(new E({parent:this._layerExtension,arrayProperty:"_subtypes"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField",typeIdField:"subtypeField"}}};R=e([d],R);export{R as SubtypeGroupLayerSchema};export class SubtypeGroupLayerRelationshipCollection extends c{get _sourceUrl(){const e=this._source.layer;if(e)return`${e.url}/${e.layerId}`}get _sourceLayerId(){const e=this._source.layer;return e?.layerId}_findRelatedSource(e){if(!this._source.mapExtension||!this._source.layer||!this._sourceUrl)return;const t=this._sourceUrl.slice(0,this._sourceUrl.length-`${this._sourceLayerId}`.length-1),r=this._source.mapExtension.allLayerExtensions.initializedItems.find((r=>(m(r.layer)||f(r.layer))&&r.layer.url===t&&r.layer.layerId===e));return r||this._source.mapExtension.tableExtensions.initializedItems.find((r=>m(r.table)&&r.table.url===t&&r.table.layerId===e))}}function T(e){return 1===e.sublayer?.templates?.length&&"New Feature"===e.sublayer.templates[0].name}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import t from"@arcgis/core/core/Collection";import r from"@arcgis/core/rest/support/AttachmentQuery";import{InvalidOperationError as s}from"../InvalidOperationError.js";import{toAttachment as a}from"../data/Attachment.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as n,deleteAttachments as o}from"../data/support/attachments.js";import{applyJsonToSublayer as l,jsonToSublayer as u,sublayerToJson as y}from"../json/SublayerJson.js";import{cancelify as p}from"../support/Cancellable.js";import{serializable as d}from"../support/Serializable.js";import{ArcGISRelationshipCollection as c}from"../support/_ArcGISRelationshipCollection.js";import{ReadOnlyCollection as h}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as m,isSubtypeGroupLayer as b,isSubtypeSublayer as f}from"../utilities/layers.js";import{parse as _}from"../utilities/number.js";import{caseInsensitiveEquals as g}from"../utilities/string.js";import{SublayerExtension as w,SublayerSchema as E}from"./_SublayerExtension.js";import{ArrayWrappedCollection as F}from"./support/ArrayWrappedCollection.js";import{ExtensionBaseLayerListSettings as x}from"./support/LayerListSettings.js";import{PopupTemplateFeatureSettings as S}from"./support/PopupTemplateFeatureSettings.js";import{getGlobalIdField as j,getReturnServiceEditsOption as
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/core/Collection";import r from"@arcgis/core/rest/support/AttachmentQuery";import{InvalidOperationError as s}from"../InvalidOperationError.js";import{toAttachment as a}from"../data/Attachment.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as n,deleteAttachments as o}from"../data/support/attachments.js";import{applyJsonToSublayer as l,jsonToSublayer as u,sublayerToJson as y}from"../json/SublayerJson.js";import{cancelify as p}from"../support/Cancellable.js";import{serializable as d}from"../support/Serializable.js";import{ArcGISRelationshipCollection as c}from"../support/_ArcGISRelationshipCollection.js";import{ReadOnlyCollection as h}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as m,isSubtypeGroupLayer as b,isSubtypeSublayer as f}from"../utilities/layers.js";import{parse as _}from"../utilities/number.js";import{caseInsensitiveEquals as g}from"../utilities/string.js";import{SublayerExtension as w,SublayerSchema as E}from"./_SublayerExtension.js";import{ArrayWrappedCollection as F}from"./support/ArrayWrappedCollection.js";import{ExtensionBaseLayerListSettings as x}from"./support/LayerListSettings.js";import{PopupTemplateFeatureSettings as S}from"./support/PopupTemplateFeatureSettings.js";import{getGlobalIdField as j,getReturnServiceEditsOption as C,isGlobalIdUsed as I}from"./support/layers.js";let R=class extends w{get supportsSublayers(){return!1}get layerExtension(){return super.layerExtension}get renderer(){return this.sublayer?.renderer}get hasFeatures(){return!0}get sublayer(){return super.sublayer}get sublayerExtensions(){return super.sublayerExtensions}get attachmentTypes(){return this.layerExtension?.attachmentTypes}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeOpacity(){return!1}async _addAttachment(e,t){return n(e,this.sublayer.layer,t,{attachmentTypes:this.layerExtension?.attachmentTypes})}async _deleteAttachments(e,t){return o(e,this.sublayer.layer,t)}_isSupportedSublayer(e){return f(e)}_createLayerListSettings(e){return new $(e,this)}_createFeatureSettings(){return new z(this)}_createSublayer(e){return u(e,"SubtypeGroupLayer")}_createSchema(){return new v(this)}_createRelationships(){return new SubtypeSublayerRelationshipCollection(this)}async _applySublayerProperties(e,t){return l(e,t)}_capabilities(){return this.layerExtension?.capabilities}async _onInitialize(){const e=(await import("@arcgis/core/layers/support/SubtypeSublayer.js")).default;"layer"in e.prototype||Object.defineProperty(e.prototype,"layer",{get:function(){return this.parent},set:function(e){this.parent=e}}),await super._onInitialize(),await this.relationships.initialize(),this._watchHandles.push(this.watch("layerExtension.attachmentTypes",(()=>this.notifyChange("attachmentTypes")))),this._addDomainsToFields()}async _postInitialize(){await super._postInitialize(),this.layerListSettings.onLayerExtensionInitialized()}_getFeatures(e,t){if(!this.sublayer?.layer)return super._getFeatures(e,t);const r=this.sublayer?.layer.createQuery();r.objectIds=e.map((e=>_(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry;const s=this;return{async*[Symbol.asyncIterator](){yield*(await import("../support/_query.js")).executeQuery(r,s,s.sublayer.layer,t.cancelToken)}}}async _getAttachments(e){if(!this.sublayer?.layer?.capabilities?.data?.supportsAttachment)return[];const t=+e.primaryKey,s=new r({objectIds:[t]}),i=await this.sublayer.layer.queryAttachments(s);return i?.[t]?.length?i[t].map((e=>a(e,e.url))):[]}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length||!this.sublayer?.layer)return;const s=await this._applyEdits({addFeatures:r.map((e=>e.toGraphic()))},t);if(!s.addFeatureResults||s.addFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.addFeatureResults.forEach(((e,t)=>{const{objectId:s,globalId:n,error:o}=e,l=r[t];if(o){a=a||new i("Errors encountered when adding features.");const{title:r}=l;a.errors.set(`${r}-${t}`,new Error(`Failed to add feature '${r}'. ${e.error.name} : ${e.error.message}`))}else{const{primaryKeyField:e}=l.schema;l.attributes.set(e,s);const t=j(this.sublayer.layer);t&&n&&l.attributes.set(t,n)}})),a)throw a}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const s=await this._applyEdits({updateFeatures:Array.from(e).map((e=>e.toGraphic()))},t);if(!s.updateFeatureResults||s.updateFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let a;if(s.updateFeatureResults.forEach(((e,t)=>{if(e.error){a=a||new i("Errors encountered when updating features.");const{primaryKey:s}=r[t];a.errors.set(s,new Error(`Failed to update feature with id ${s}. ${e.error.name} : ${e.error.message}`))}})),a)throw a}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({deleteFeatures:e.map((e=>({objectId:e})))},t);if(!r.deleteFeatureResults)throw new i("Received malformed response from server while saving feature(s).");let s;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){s=s||new i("Errors encountered when deleting features.");const a=e[r];s.errors.set(a,new Error(`Failed to delete feature with id ${a}. ${t.error.name} : ${t.error.message}`))}})),s)throw s}_serializeSublayer(e){return y(e)}async _applyEdits(e,t={}){const r=I(this.sublayer.layer,e),s=this.sublayer.layer.applyEdits(e,{globalIdUsed:r,returnServiceEditsOption:C(this.sublayer.layer)}),a=await p(s,t.cancelToken);if(!a)throw new i("Received malformed response from server while saving feature(s).");return a}_addDomainsToFields(){const e=this.sublayer.parent.subtypes.find((e=>e.code===this.sublayer.subtypeCode));if(e?.domains)for(const[t,r]of Object.entries(e.domains)){const e=this.sublayer.fields.find((e=>g(e.name,t)));e&&!e.domain&&(e.domain=r)}}};R=e([d],R);export{R as SubtypeSublayerExtension};const T="This schema property is read-only.";let v=class extends E{_fieldCollection;_readonlyTypesCollection;_typesCollection;get primaryKeyField(){return this._sublayerExtension.sublayer?.layer?.objectIdField}set primaryKeyField(e){throw new s(T)}get geometryType(){return this._sublayerExtension.sublayer?.layer?.geometryType}set geometryType(e){throw new s(T)}get displayField(){return this._sublayerExtension.sublayer?.layer?.displayField}set displayField(e){throw new s(T)}get typeIdField(){return this._sublayerExtension.sublayer?.layer?.subtypeField}set typeIdField(e){throw new s(T)}get types(){return this._readonlyTypesCollection}constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=new t,this._readonlyTypesCollection=new h(this._typesCollection);const r=()=>this._sublayerExtension.sublayer?.subtypeCode,s=()=>{const e=this._sublayerExtension.layerExtension?._subtypes?.find((e=>e.id===r()));return!!e&&(this._typesCollection.add(e),!0)};if(this._sublayerExtension.layerExtension?._subtypes?.some((e=>e.id===r())))s();else{const e=this._sublayerExtension.watch("layerExtension._subtypes",(()=>{s()&&e.remove()}),!0)}this.notifyChange("_fields")}get _fields(){return this._fieldCollection}_createFieldCollection(){return new h(new F({parent:this._sublayerExtension,targetProperty:"sublayer",arrayProperty:"fields"}))}_getPropertyBindings(){return{primaryKeyField:"parent.objectIdField",geometryType:"parent.geometryType",spatialReference:"parent.spatialReference",displayField:"parent.displayField",typeIdField:"parent.typeIdField"}}};v=e([d],v);export{v as SubtypeSublayerSchema};let z=class extends S{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.sublayer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};z=e([d],z);let $=class extends x{get _layerSupportsHideChildren(){return!1}get _esriLayer(){return this._extension.sublayer}get _listModePath(){return"sublayer.listMode"}get _supportsChildren(){return!1}};$=e([d],$);export class SubtypeSublayerRelationshipCollection extends c{get _sourceUrl(){const e=this._source.sublayer?.layer;if(e)return`${e.url}/${e.layerId}`}get _sourceLayerId(){const e=this._source.sublayer?.layer;return e?.layerId}_findRelatedSource(e){if(!this._source.layerExtension?.mapExtension||!this._source.sublayer||!this._sourceUrl)return;const t=this._sourceUrl.slice(0,this._sourceUrl.length-`${this._sourceLayerId}`.length-1),r=this._source.layerExtension.mapExtension.allLayerExtensions.initializedItems.find((r=>(m(r.layer)||b(r.layer))&&r.layer.url===t&&r.layer.layerId===e));return r||this._source.layerExtension.mapExtension.tableExtensions.initializedItems.find((r=>m(r.table)&&r.table.url===t&&r.table.layerId===e))}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{layerToJson as t}from"../json/LayerJson.js";import{serializable as
|
|
1
|
+
import{__decorate as e}from"tslib";import{layerToJson as t}from"../json/LayerJson.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as r}from"../utilities/ReadOnlyCollection.js";import{isWFSLayer as a}from"../utilities/_layers.js";import{LayerExtension as s,LayerExtensionSchema as n}from"./_LayerExtension.js";import{ArrayWrappedCollection as l}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as o}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as p}from"./support/layers.js";let d=class extends s{get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get layer(){return super.layer}get canChangeLabels(){return!0}get canChangeRenderer(){return!0}get canChangeDefinitionExpression(){return!0}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}_enableClientSideData;get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:i}=t(this.layer),{definitionExpression:r,drawingInfo:a}=i??{};return r&&(e.layerDefinition={...e.layerDefinition,definitionExpression:r}),a&&(e.layerDefinition={...e.layerDefinition,drawingInfo:a}),e}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}_applyPortalItemProperties(e){if("WFS"!==e.type)throw new Error(`Cannot create WFS layer from Portal item that has type: ${e.type}`);this.layer.url=e.url||this.layer.url}_capabilities(){return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:!1,supportsStandardizedQueries:this.layer.capabilities?.query?.supportsStandardizedQueriesOnly}:{...super._capabilities(),supportsStandardizedQueries:!0}}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"WFS"}},enableClientSideData:{serializeModes:["initial"],default:!1}}}_isSupportedLayer(e){return a(e)}_createFeatureSettings(){return new o(this)}_createSchema(){return new y(this)}async*_getFeatures(e,t){const i=this.layer.createQuery();i.objectIds=e,i.where=void 0,i.outFields=t.outFields,i.returnGeometry=t.returnGeometry,yield*(await import("../support/_query.js")).executeQuery(i,this,this.layer,t.cancelToken)}_updateClientSideFields(){this.layer&&this._enableClientSideData&&p(this.layer,this.featureSettings.outFields)}};d=e([i],d);export{d as WFSLayerExtension};let y=class extends n{_fieldsCollection;constructor(e){super(e),this._fieldsCollection=new r(new l({parent:e,targetProperty:"layer",arrayProperty:"fields"})),this.notifyChange("_fields")}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField"}}get _fields(){return this._fieldsCollection}};y=e([i],y);
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e;import{__decorate as t}from"tslib";import s from"@arcgis/core/core/Collection";import i from"@arcgis/core/geometry/SpatialReference";import r from"@arcgis/core/layers/support/Field";import{addressToLocations as a,addressesToLocations as o,locationToAddress as n,suggestLocations as c}from"@arcgis/core/rest/locator";import{InvalidOperationError as l}from"../../InvalidOperationError.js";import{isFeature as d}from"../../ItemType.js";import{Feature as u,SCORE_FIELD as p,SCORE_FIELD_ORIGINAL as h}from"../../data/Feature.js";import{Schema as f}from"../../data/Schema.js";import{DefaultArcGISRequestHelper as g}from"../../support/ArcGISRequestHelper.js";import{cancelify as m}from"../../support/Cancellable.js";import{serializable as
|
|
1
|
+
var e;import{__decorate as t}from"tslib";import s from"@arcgis/core/core/Collection";import i from"@arcgis/core/geometry/SpatialReference";import r from"@arcgis/core/layers/support/Field";import{addressToLocations as a,addressesToLocations as o,locationToAddress as n,suggestLocations as c}from"@arcgis/core/rest/locator";import{InvalidOperationError as l}from"../../InvalidOperationError.js";import{isFeature as d}from"../../ItemType.js";import{Feature as u,SCORE_FIELD as p,SCORE_FIELD_ORIGINAL as h}from"../../data/Feature.js";import{Schema as f}from"../../data/Schema.js";import{DefaultArcGISRequestHelper as g}from"../../support/ArcGISRequestHelper.js";import{cancelify as m}from"../../support/Cancellable.js";import{serializable as y}from"../../support/Serializable.js";import{ReadOnlyCollection as _}from"../../utilities/ReadOnlyCollection.js";import{checkArg as S}from"../../utilities/checkArg.js";import{load as w}from"../../utilities/esri.js";import{getLogger as A}from"../../utilities/log.js";import{toPortalItem as b}from"../../utilities/portal.js";import{ADDRESS_FIELD as R,GeocodeOptions as v,Geocoder as F}from"./Geocoder.js";export{R as ADDRESS_FIELD,p as SCORE_FIELD};const x=A("ArcGISGeocoder"),z="https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer",C="This schema property is read-only.",T="Match_addr";let j=e=class extends F{get requestHelper(){return this._requestHelper||(this._requestHelper=new g),this._requestHelper}set requestHelper(e){this._requestHelper=e}get categories(){return this._categories||(this._categories=new s),this._categories}get url(){return this._url}set url(e){this.updateUrl(e)}countryCode;_categories;_requestHelper;_singleLineAddressField;_maxBatchSize;_url;_magicKeyAddressMap=new Map;static async fromPortalItem(t,s){S("portalItem",t).isNotMissing();const i=b(t);await w(i);const r={...s};return void 0!==r.title&&null!==r.title||(r.title=i.title),r.url=i.url,new e(r)}updateUrl(e){return this._url===e?Promise.resolve():(this._url=e,this.isInitialized?(async()=>{const e=await this._getGeocodeService(this.url);this._updateGeocodeProperties(e)})():Promise.resolve())}async*geocode(e,t){S("address",e).isNotMissing(),await this.initialize();const s={...v.DEFAULTS,...v.fromFeatureSource(this),...t},i="string"==typeof e?this._magicKeyAddressMap?.get(e):void 0,{outFields:r,outSpatialReference:o,maxResults:n,searchArea:c}=s,l={address:this._addressToAttributes(e),categories:this.categories.toArray(),countryCode:this.countryCode,outFields:r,outSpatialReference:o,maxLocations:n,searchExtent:c?.extent,forStorage:void 0,magicKey:i,location:t?.searchPoint},d=a(this.url,l),u=await m(d,t?.cancelToken);yield*u.map((e=>this._candidateToFeature(e,s)))}async count(e,t){S("address",e).isNotMissing(),await this.initialize();const s={...v.DEFAULTS,...v.fromFeatureSource(this),...t},{outFields:i,outSpatialReference:r,maxResults:o,searchArea:n}=s,c={address:this._addressToAttributes(e),categories:this.categories.toArray(),countryCode:this.countryCode,outFields:i,outSpatialReference:r,maxLocations:o,searchExtent:n?n.extent:void 0,forStorage:void 0,magicKey:void 0,location:t?.searchPoint},l=a(this.url,c);return{source:this,count:(await m(l,t?.cancelToken)).length}}async*batchGeocode(e,t){S("addresses",e).isNotMissing(),await this.initialize();const s={...v.DEFAULTS,...v.fromFeatureSource(this),...t};if(!this.capabilities.supportsBatch)throw new l("Batch geocoding is not supported.");if(this._maxBatchSize&&e.length>this._maxBatchSize)throw new l(`Batch geocoding is limited to ${this._maxBatchSize} addresses at a time.`);let i=0;const r={addresses:e.map((e=>this._addressToAttributes(e,i++))),categories:this.categories.toArray(),countryCode:this.countryCode,outSpatialReference:s.outSpatialReference},a=o(this.url,r),n=(await m(a,t?.cancelToken)).map((e=>this._candidateToFeature(e,s)));for(const t of n){const s=t.attributes.get("ResultID");void 0!==s&&s>=0&&t.attributes.set(R,e[s]),t.attributes.delete("ResultID")}yield*n}async suggest(e,t){if(S("searchText",e).isNotMissing(),await this.initialize(),!this.capabilities.supportsSuggest)throw new l("Suggestions are not supported.");const s={text:e,categories:this.categories.toArray(),searchExtent:t?.searchArea?.extent,maxSuggestions:t?.maxResults,countryCode:this.countryCode,location:t?.searchPoint},i=c(this.url,s),r=await m(i,t?.cancelToken);return r.forEach((e=>this._magicKeyAddressMap.set(e.text,e.magicKey))),r.map((e=>e.text))}async reverseGeocode(e,t){S("location",e).isNotMissing(),await this.initialize();const s={...v.DEFAULTS,...v.fromFeatureSource(this),...t};if(!this.capabilities.supportsReverse)throw new l("Reverse geocoding is not supported.");let i;try{const r=n(this.url,{location:e,outSpatialReference:s.outSpatialReference});i=await m(r,t?.cancelToken)}catch(e){if(400===e.details?.httpStatus)return;throw e}const r=this._candidateToFeature(i,s);return r.settings.parent=this.featureSettings,r.schema.parent=this.addressSchema,r}_getSerializableProperties(){return{...super._getSerializableProperties(),url:"initial",categories:{serializeModes:["initial"],deserialize:e=>{this.categories.removeAll(),this.categories.addMany(e)}},countryCode:"initial",requestHelper:{serialize:!1}}}_createSchema(){return new B}_createAddressSchema(){return new B}async _onInitialize(){if(await super._onInitialize(),!this.url)throw new Error("ArcGISGeocoder must be created with a url.");let e;try{e=await this._getGeocodeService(this.url)}catch(t){t instanceof Error&&x.error({message:`Failed to get geocode service from ${this.url}. Using default service: ${z}.`,error:t}),await this.updateUrl(z),e=await this._getGeocodeService(this.url)}this._updateGeocodeProperties(e),this.assignProperties({});const t=i.fromJSON(e.spatialReference);this.schema.initialize({fields:e.candidateFields,spatialReference:t}),this.addressSchema.initialize({fields:e.addressFields,spatialReference:t})}async _getGeocodeService(e){const{data:t}=await this.requestHelper.request(e,{query:{f:"json"}});if(!t)throw new Error(`Response to request for url ${e} was invalid.`);return t}_updateGeocodeProperties(e){if(e.singleLineAddressField&&(this._singleLineAddressField=e.singleLineAddressField.name),e.locatorProperties&&(this._maxBatchSize=e.locatorProperties.MaxBatchSize),e.capabilities){const t=e.capabilities.split(",").map((e=>e.trim()));this._capabilitiesInternal=Object.freeze({supportsAdd:!1,supportsUpdate:!1,supportsDelete:!1,supportsEditing:!1,supportsBatch:t.includes("Geocode"),supportsReverse:t.includes("ReverseGeocode"),supportsSuggest:t.includes("Suggest"),maxResults:void 0,supportsAttachmentEditing:!1})}else this._capabilitiesInternal=Object.freeze({supportsAdd:!1,supportsUpdate:!1,supportsDelete:!1,supportsEditing:!1,supportsBatch:e.currentVersion>=10.1,supportsReverse:!0,supportsSuggest:!1,maxResults:void 0,supportsAttachmentEditing:!1})}_addressToAttributes(e,t){const s={};if("string"==typeof e)if(this._singleLineAddressField)s[this._singleLineAddressField]=e,[...this.defaultAddressValues.entries()].forEach((([e,t])=>{s[e]=t}));else{const t=this.addressSchema.fields.map((e=>e.name)).filter((e=>!this.defaultAddressValues.has(e))).toArray();if(1!==t.length)throw new l("Single line geocoding is not supported.");s[t[0]]=e}else{const t=d(e)?e.toGraphic().attributes:e;for(const e of this.addressSchema.fields.map((e=>e.name)).toArray())e in t?s[e]=t[e]:this.defaultAddressValues.has(e)&&(s[e]=this.defaultAddressValues.get(e));if(0===Object.keys(s).length)throw new l("At least one valid address field is required.")}return void 0!==t&&(s.OBJECTID=t),s}_candidateToFeature(e,t){const s=new u({source:this});if(e.attributes)for(const t of Object.keys(e.attributes))s.attributes.set(t,e.attributes[t]);const{address:i}=e;if("string"!=typeof i||s.attributes.has(T)&&s.attributes.get(T)){if("object"==typeof i&&i)for(const e of Object.keys(i))s.attributes.set(e,i[e])}else i?s.attributes.set(T,i):s.attributes.set(T,Object.values(e.attributes).join(", "));return e.score&&(s.attributes.set(p,e.score),s.attributes.set(h,e.score)),s.geometry=e.location,t.outSpatialReference&&(s.schema.spatialReference=t.outSpatialReference),s}};j=e=t([y],j);export{j as ArcGISGeocoder};let B=class extends f{_spatialReference;_fieldBackingCollection;_fieldCollection;constructor(){super(),this._fieldBackingCollection=new s,this._fieldCollection=new _(this._fieldBackingCollection),this.notifyChange("_fields")}get _fields(){return this._fieldCollection}get spatialReference(){return this._spatialReference}set spatialReference(e){throw new l(C)}get geometryType(){return"point"}set geometryType(e){throw new l(C)}initialize(e){if(e.fields&&(this._fieldBackingCollection.removeAll(),this._fieldBackingCollection.addMany(e.fields.map((e=>r.fromJSON(e))))),e.spatialReference&&(this._spatialReference=e.spatialReference,this.notifyChange("spatialReference")),!this.isModified("displayField")){let e=this.fields.findFieldByName("match_addr");e||(e=this.fields.findFieldByName("address")),e&&(this.displayField=e.name,this.notifyChange("displayField"))}}};B=t([y],B);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ObservableMap as e}from"./ObservableMap.js";import{map as r}from"./iterable.js";export class CaseInsensitiveObservableMap extends e{_originalKeys=new Map;delete(e){return this._originalKeys.delete(e),super.delete(e?.toLocaleLowerCase())}get(e){return super.get(e?.toLocaleLowerCase())}set(e,r){return this._originalKeys.set(e?.toLocaleLowerCase(),e),super.set(e?.toLocaleLowerCase(),r)}has(e){return super.has(e?.toLocaleLowerCase())}keys(){
|
|
1
|
+
import{ObservableMap as e}from"./ObservableMap.js";import{map as r}from"./iterable.js";export class CaseInsensitiveObservableMap extends e{_originalKeys=new Map;delete(e){return this._originalKeys.delete(e),super.delete(e?.toLocaleLowerCase())}get(e){return super.get(e?.toLocaleLowerCase())}set(e,r){return this._originalKeys.set(e?.toLocaleLowerCase(),e),super.set(e?.toLocaleLowerCase(),r)}has(e){return super.has(e?.toLocaleLowerCase())}*keys(){for(const e of super.keys())yield this._originalKeys.get(e)}entries(){return r(super.entries(),(([e,r])=>[this._originalKeys.get(e),r]))}[Symbol.iterator](){return this.entries()}}
|
|
@@ -45,6 +45,7 @@ export declare abstract class CollectionProxy<T> extends CollectionProxy_base {
|
|
|
45
45
|
protected set _collection(collection: Collection<T>);
|
|
46
46
|
private _destroyed;
|
|
47
47
|
private _initialized;
|
|
48
|
+
private _afterChangesHandle;
|
|
48
49
|
private _collectionField;
|
|
49
50
|
/**
|
|
50
51
|
* Initializes a new instance of the
|
|
@@ -54,6 +55,10 @@ export declare abstract class CollectionProxy<T> extends CollectionProxy_base {
|
|
|
54
55
|
* that produces the underlying collection.
|
|
55
56
|
*/
|
|
56
57
|
constructor(collection?: Collection<T>);
|
|
58
|
+
/**
|
|
59
|
+
* @inheritDoc
|
|
60
|
+
*/
|
|
61
|
+
[Symbol.iterator](): IterableIterator<T>;
|
|
57
62
|
/**
|
|
58
63
|
* Adds a single item to the collection.
|
|
59
64
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Observable as t}from"../support/Observable.js";import{onCollectionPropertyChange as e}from"./watch.js";export class CollectionProxy extends t{get length(){return this._collection.length}get declaredClass(){return"esri.core.Collection"}get destroyed(){return this._destroyed}set destroyed(t){this._destroyed=t}get initialized(){return this._initialized}set initialized(t){this._initialized=t}get _collection(){if(void 0===this._collectionField)throw new Error("CollectionProxy requires a backing collection.");return this._collectionField}set _collection(t){this._collectionField=t}_destroyed=!1;_initialized=!0;_collectionField;constructor(t){super(),this._collectionField=t,e(this,"_collectionField",(t=>{this.emit("change",t)})),this.watch("_collectionField.length",(()=>this.notifyChange("length")))}add(t,e){return this._collection.add(t,e),this}addMany(t,e){if(!t)return this;let i=e;if(arguments.length>1)for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e),i++):this.add(t[e],i++);else for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e)):this.add(t[e]);return this}clone(){const t=Object.create(Object.getPrototypeOf(this));return t._collection=this._collection,t}concat(t){return this._collection.concat(t)}destroy(){}every(t){return this._collection.every(t)}filter(t){return this._collection.filter(t)}find(t){return this._collection.find(t)}findIndex(t){return this._collection.findIndex(t)}flatten(t){return this._collection.flatten(t)}forEach(t){return this._collection.forEach(t)}getItemAt(t){return this._collection.getItemAt(t)}includes(t){return this._collection.includes(t)}indexOf(t,e){return this._collection.indexOf(t,e)}join(t){return this._collection.join(t)}lastIndexOf(t,e){return this._collection.lastIndexOf(t,e)}map(t){return this._collection.map(t)}pop(){return this.removeAt(this.length-1)}push(t){return this.add(t,this.length),this.length}reduce(t,e){return this._collection.reduce(t,e)}reduceRight(t,e){return this._collection.reduceRight(t,e)}remove(t){this.removeAt(this.indexOf(t))}removeAll(){for(;this.length;)this.pop()}removeAt(t){return this._collection.removeAt(t)}removeMany(t){if(!t)return;const e=[];for(let i=0;i<t.length;i++){const r="function"==typeof t.getItemAt?t.getItemAt(i):t[i],o=this.indexOf(r);o>=0&&e.push(this.removeAt(o))}return e}reorder(t,e){return this._collection.reorder(t,e)}reverse(){return this._collection.reverse(),this}shift(){return this.removeAt(0)}slice(t,e){return this._collection.slice(t,e)}some(t){return this._collection.some(t)}sort(t){return this._collection.sort(t),this}splice(t,e,...i){const r=[];for(let i=e;i>0;i--)r.push(this.removeAt(t));let o=t;return i.forEach((t=>{this.add(t,o),o++})),r}toArray(){return this._collection.toArray()}unshift(t){return this.add(t,0),this.length}_get(t){throw Error()}_set(t,e){throw Error()}}
|
|
1
|
+
import{Observable as t}from"../support/Observable.js";import{onCollectionPropertyChange as e}from"./watch.js";export class CollectionProxy extends t{get length(){return this._collection.length}get declaredClass(){return"esri.core.Collection"}get destroyed(){return this._destroyed}set destroyed(t){this._destroyed=t}get initialized(){return this._initialized}set initialized(t){this._initialized=t}get _collection(){if(void 0===this._collectionField)throw new Error("CollectionProxy requires a backing collection.");return this._collectionField}set _collection(t){this._collectionField=t}_destroyed=!1;_initialized=!0;_afterChangesHandle;_collectionField;constructor(t){super(),this._collectionField=t,e(this,"_collectionField",(t=>{this.emit("change",t)})),this.watch("_collectionField.length",(()=>this.notifyChange("length"))),this.watch("_collectionField",(t=>{this._afterChangesHandle?.remove(),this._afterChangesHandle=t?.on("after-changes",(t=>this.emit("after-changes",t))),this.emit("after-changes")}),!0),null!=this._collectionField&&(this._afterChangesHandle=this._collectionField.on("after-changes",(t=>this.emit("after-changes",t))))}*[Symbol.iterator](){for(const t of this._collection)yield t}add(t,e){return this._collection.add(t,e),this}addMany(t,e){if(!t)return this;let i=e;if(arguments.length>1)for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e),i++):this.add(t[e],i++);else for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e)):this.add(t[e]);return this}clone(){const t=Object.create(Object.getPrototypeOf(this));return t._collection=this._collection,t}concat(t){return this._collection.concat(t)}destroy(){}every(t){return this._collection.every(t)}filter(t){return this._collection.filter(t)}find(t){return this._collection.find(t)}findIndex(t){return this._collection.findIndex(t)}flatten(t){return this._collection.flatten(t)}forEach(t){return this._collection.forEach(t)}getItemAt(t){return this._collection.getItemAt(t)}includes(t){return this._collection.includes(t)}indexOf(t,e){return this._collection.indexOf(t,e)}join(t){return this._collection.join(t)}lastIndexOf(t,e){return this._collection.lastIndexOf(t,e)}map(t){return this._collection.map(t)}pop(){return this.removeAt(this.length-1)}push(t){return this.add(t,this.length),this.length}reduce(t,e){return this._collection.reduce(t,e)}reduceRight(t,e){return this._collection.reduceRight(t,e)}remove(t){this.removeAt(this.indexOf(t))}removeAll(){for(;this.length;)this.pop()}removeAt(t){return this._collection.removeAt(t)}removeMany(t){if(!t)return;const e=[];for(let i=0;i<t.length;i++){const r="function"==typeof t.getItemAt?t.getItemAt(i):t[i],o=this.indexOf(r);o>=0&&e.push(this.removeAt(o))}return e}reorder(t,e){return this._collection.reorder(t,e)}reverse(){return this._collection.reverse(),this}shift(){return this.removeAt(0)}slice(t,e){return this._collection.slice(t,e)}some(t){return this._collection.some(t)}sort(t){return this._collection.sort(t),this}splice(t,e,...i){const r=[];for(let i=e;i>0;i--)r.push(this.removeAt(t));let o=t;return i.forEach((t=>{this.add(t,o),o++})),r}toArray(){return this._collection.toArray()}unshift(t){return this.add(t,0),this.length}_get(t){throw Error()}_set(t,e){throw Error()}}
|
package/utilities/field.d.ts
CHANGED
|
@@ -6,3 +6,38 @@ export declare const fieldWithRelationshipRegex: RegExp;
|
|
|
6
6
|
* @param fieldType The field type to check.
|
|
7
7
|
*/
|
|
8
8
|
export declare function isNumericFieldType(fieldType: string): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Retrieves the expression name from the given field string if an expression
|
|
11
|
+
* exists.
|
|
12
|
+
*
|
|
13
|
+
* @param fieldWithExpression The field string that possibly contains the
|
|
14
|
+
* expression.
|
|
15
|
+
* @returns The name of the expression or undefined if one can't be found.
|
|
16
|
+
*/
|
|
17
|
+
export declare function getArcadeExpressionFromField(fieldWithExpression: string | undefined): string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Determines if the given field contains an expression.
|
|
20
|
+
*
|
|
21
|
+
* @param fieldWithExpression The field string that possibly contains the
|
|
22
|
+
* expression.
|
|
23
|
+
* @returns True if the field contains an arcade expression, else false.
|
|
24
|
+
*/
|
|
25
|
+
export declare function isArcadeExpressionField(fieldWithExpression: string | undefined): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves the relationship id and attribute from the given field string if a
|
|
28
|
+
* relationship exists.
|
|
29
|
+
*
|
|
30
|
+
* @param fieldWithRelationship The field string that possibly contains the
|
|
31
|
+
* relationship.
|
|
32
|
+
* @returns The id of the relationship and the attribute or undefined for both
|
|
33
|
+
* if one can't be found.
|
|
34
|
+
*/
|
|
35
|
+
export declare function getRelationshipFromField(fieldWithRelationship: string | undefined): [relationshipId: string, attribute: string] | [relationshipId: undefined, attribute: undefined];
|
|
36
|
+
/**
|
|
37
|
+
* Determines if the given field contains a relationship.
|
|
38
|
+
*
|
|
39
|
+
* @param fieldWithRelationship The field string that possibly contains the
|
|
40
|
+
* relationship.
|
|
41
|
+
* @returns True if the field contains a relationship, else false.
|
|
42
|
+
*/
|
|
43
|
+
export declare function isRelationshipField(fieldWithRelationship: string | undefined): boolean;
|
package/utilities/field.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const fieldWithArcadeXRegex=/expression\/(
|
|
1
|
+
const e="expression/";export const fieldWithArcadeXRegex=/expression\/([\w-]+)/i;const i="relationships/";export const fieldWithRelationshipRegex=/relationships\/([\w-]+)\/(\w+)/i;export function isNumericFieldType(e){return"small-integer"===e||"single"===e||"integer"===e||"double"===e||"long"===e}export function getArcadeExpressionFromField(i){if(null==i)return;if(-1===i.toLowerCase().indexOf(e))return;const n=i.match(fieldWithArcadeXRegex);return null!=n?.[1]?n[1]:void 0}export function isArcadeExpressionField(e){return null!=getArcadeExpressionFromField(e)}export function getRelationshipFromField(e){if(null==e)return[void 0,void 0];if(-1===e.toLowerCase().indexOf(i))return[void 0,void 0];const n=e.match(fieldWithRelationshipRegex);return null==n?.[1]?[void 0,void 0]:[n[1],n[2]]}export function isRelationshipField(e){return null!=getRelationshipFromField(e)[0]}
|
package/version.d.ts
CHANGED
package/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version="
|
|
1
|
+
export const version="45.0.0";
|