@vertigis/arcgis-extensions 34.7.0 → 35.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.
Files changed (114) hide show
  1. package/AppConfig.schema.json +8 -4
  2. package/data/ArcGISServiceTableExtension.js +1 -1
  3. package/declarations/arcgis-js-api-extensions/index.d.ts +11 -120
  4. package/docs/html/assets/search.js +1 -1
  5. package/docs/html/classes/data_FeatureStream.FeatureStream.html +1 -1
  6. package/docs/html/classes/mapping_ArcGISSublayerExtension.ArcGISSublayerExtension.html +5 -3
  7. package/docs/html/classes/mapping_ArcGISSublayerExtension.ArcGISSublayerSchema.html +1 -1
  8. package/docs/html/classes/mapping_BuildingComponentSublayerExtension.BuildingComponentSublayerExtension.html +18 -16
  9. package/docs/html/classes/mapping_BuildingComponentSublayerExtension.BuildingComponentSublayerSchema.html +5 -5
  10. package/docs/html/classes/mapping_BuildingGroupSublayerExtension.BuildingGroupSublayerExtension.html +5 -3
  11. package/docs/html/classes/mapping_BuildingGroupSublayerExtension.BuildingGroupSublayerSchema.html +2 -2
  12. package/docs/html/classes/mapping_BuildingSublayerExtension.BuildingSublayerExtension.html +5 -3
  13. package/docs/html/classes/mapping_BuildingSublayerExtension.BuildingSublayerSchema.html +2 -2
  14. package/docs/html/classes/mapping_KMLSublayerExtension.KMLSublayerExtension.html +5 -3
  15. package/docs/html/classes/mapping_MapImageSublayerExtension.MapImageSublayerExtension.html +5 -3
  16. package/docs/html/classes/mapping_TileSublayerExtension.TileSublayerExtension.html +5 -3
  17. package/docs/html/classes/mapping_WMSSublayerExtension.WMSSublayerExtension.html +5 -3
  18. package/docs/html/classes/mapping_WMTSSublayerExtension.WMTSSublayerExtension.html +5 -3
  19. package/docs/html/classes/mapping__SublayerExtension.SubSublayerExtensionCollection.html +6 -6
  20. package/docs/html/classes/mapping__SublayerExtension.SublayerExtension.html +5 -3
  21. package/docs/html/classes/mapping__SublayerExtension.SublayerSchema.html +2 -2
  22. package/docs/html/classes/tasks_identify_BuildingComponentSublayerClientSideIdentifyProvider.BuildingComponentSublayerClientSideIdentifyProvider.html +2 -2
  23. package/docs/html/classes/tasks_identify_BuildingComponentSublayerHitTestIdentifyProvider.BuildingComponentSublayerHitTestIdentifyProvider.html +4 -4
  24. package/docs/html/classes/tasks_identify_CSVLayer3DHitTestIdentifyProvider.CSVLayer3DHitTestIdentifyProvider.html +4 -4
  25. package/docs/html/classes/tasks_identify_ClientSideIdentifyProvider.ClientSideIdentifyProvider.html +2 -2
  26. package/docs/html/classes/tasks_identify_FeatureLayer3DHitTestIdentifyProvider.FeatureLayer3DHitTestIdentifyProvider.html +4 -4
  27. package/docs/html/classes/tasks_identify_FeatureLayerClientSideIdentifyProvider.FeatureLayerClientSideIdentifyProvider.html +2 -2
  28. package/docs/html/classes/tasks_identify_HitTestIdentifyProvider.HitTestIdentifyProvider.html +6 -6
  29. package/docs/html/classes/tasks_identify_PointCloudLayerHitTestIdentifyProvider.PointCloudLayerHitTestIdentifyProvider.html +4 -4
  30. package/docs/html/classes/tasks_identify_SceneLayerClientSideIdentifyProvider.SceneLayerClientSideIdentifyProvider.html +2 -2
  31. package/docs/html/classes/tasks_identify_SceneLayerHitTestIdentifyProvider.SceneLayerHitTestIdentifyProvider.html +3 -3
  32. package/docs/html/classes/tasks_identify_StreamLayerClientSideQueryIdentifyProvider.StreamLayerClientSideQueryIdentifyProvider.html +2 -2
  33. package/docs/html/classes/tasks_query_BuildingComponentSublayerClientSideQueryProvider.BuildingComponentSublayerClientSideQueryProvider.html +6 -3
  34. package/docs/html/classes/tasks_query_ClientSideQueryProvider.ClientSideQueryProvider.html +6 -3
  35. package/docs/html/classes/tasks_query_QueryService.QueryService.html +3 -3
  36. package/docs/html/classes/tasks_query_SceneLayerClientSideQueryProvider.SceneLayerClientSideQueryProvider.html +6 -3
  37. package/docs/html/classes/tasks_query_SceneLayerQueryProvider.SceneLayerQueryProvider.html +2 -2
  38. package/docs/html/classes/tasks_query_StreamLayerClientSideQueryProvider.StreamLayerClientSideQueryProvider.html +4 -4
  39. package/docs/html/classes/utilities_asyncIterable.AsyncQueue.html +1 -1
  40. package/docs/html/classes/utilities_geometry.CoordinateSystemBounds.html +1 -1
  41. package/docs/html/enums/support_esri.WellKnownBasemap.html +1 -1
  42. package/docs/html/interfaces/data__TableExtension.TableExtensionProperties.html +1 -1
  43. package/docs/html/interfaces/data_support_attachments.AttachmentEnabledLayer.html +2 -2
  44. package/docs/html/interfaces/mapping_BuildingComponentSublayerExtension.BuildingComponentSublayerExtensionProperties.html +1 -1
  45. package/docs/html/interfaces/portal_Domain.DomainBase.html +1 -1
  46. package/docs/html/interfaces/portal_ImageServiceLayer.ImageServiceLayer-1.html +17 -17
  47. package/docs/html/interfaces/portal_Item.Item-1.html +48 -48
  48. package/docs/html/interfaces/portal_LayerDefinition.FieldOverride.html +3 -3
  49. package/docs/html/interfaces/portal_LayerDefinition.LayerDefinition-1.html +49 -50
  50. package/docs/html/interfaces/portal_LayerDefinition.LayerDefinitionDefaults.html +8 -8
  51. package/docs/html/interfaces/portal_LayerDefinition.LayerTimeInfo.html +9 -9
  52. package/docs/html/interfaces/portal_LayerDefinition.OrderByClause.html +9 -5
  53. package/docs/html/interfaces/portal_LayerDefinition.TimeInfoExportOptions.html +4 -4
  54. package/docs/html/interfaces/portal_PopupInfo.OrderByFields.html +2 -2
  55. package/docs/html/interfaces/portal_PopupInfo.PopupElement.html +5 -5
  56. package/docs/html/interfaces/portal_PopupInfo.PopupInfo-1.html +8 -8
  57. package/docs/html/interfaces/portal_PopupInfo.RelatedRecordsInfo.html +2 -2
  58. package/docs/html/interfaces/support_esri.AccessorLike.html +4 -4
  59. package/docs/html/interfaces/support_esri.ChangeEvent.html +4 -4
  60. package/docs/html/interfaces/support_esri.LayerWithSublayers.html +1 -1
  61. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatistics.html +1 -1
  62. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatisticsFrequentValues.html +1 -1
  63. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatisticsHistogram.html +1 -1
  64. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatisticsLabel.html +1 -1
  65. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatisticsLabels.html +1 -1
  66. package/docs/html/interfaces/support_esri.PointCloudLayerCachedStatisticsStats.html +1 -1
  67. package/docs/html/interfaces/support_esri.SublayerLike.html +14 -14
  68. package/docs/html/interfaces/utilities_geometry.GeoJSONLineString.html +2 -2
  69. package/docs/html/interfaces/utilities_geometry.GeoJSONMultiLineString.html +2 -2
  70. package/docs/html/interfaces/utilities_geometry.GeoJSONMultiPoint.html +2 -2
  71. package/docs/html/interfaces/utilities_geometry.GeoJSONMultiPolygon.html +2 -2
  72. package/docs/html/interfaces/utilities_geometry.GeoJSONPoint.html +2 -2
  73. package/docs/html/interfaces/utilities_geometry.GeoJSONPolygon.html +2 -2
  74. package/docs/html/interfaces/utilities_geometry.GeographicTransformationJson.html +1 -1
  75. package/docs/html/interfaces/utilities_geometry.GeographicTransformationStepJson.html +3 -3
  76. package/docs/html/interfaces/utilities_geometry.GmlOptions.html +3 -3
  77. package/docs/html/modules/mapping_MapExtension.html +1 -1
  78. package/docs/html/modules/portal_Domain.Domain.html +6 -6
  79. package/docs/html/modules/portal_Domain.DomainType.html +2 -2
  80. package/docs/html/modules/portal_Domain.html +2 -2
  81. package/docs/html/modules/portal_ImageServiceLayer.ImageServiceLayer.html +1 -1
  82. package/docs/html/modules/portal_LayerDefinition.LayerDefinition.html +2 -2
  83. package/docs/html/modules/portal_LayerDefinition.LayerDefinitionCapabilities.html +6 -6
  84. package/docs/html/modules/portal_LayerDefinition.html +2 -2
  85. package/docs/html/modules/portal_PopupInfo.PopupInfo.html +1 -1
  86. package/docs/html/modules/portal_PopupInfo.html +1 -1
  87. package/docs/html/modules/support__query.html +2 -2
  88. package/docs/html/modules/support_esri.html +10 -10
  89. package/docs/html/modules/utilities_esri.html +2 -2
  90. package/docs/html/modules/utilities_geometry.html +25 -25
  91. package/docs/html/modules/version.html +1 -1
  92. package/mapping/BuildingComponentSublayerExtension.d.ts +1 -0
  93. package/mapping/BuildingComponentSublayerExtension.js +1 -1
  94. package/mapping/MapExtension.js +1 -1
  95. package/mapping/_SublayerExtension.d.ts +4 -0
  96. package/mapping/_SublayerExtension.js +1 -1
  97. package/package.json +4 -3
  98. package/portal/Domain.d.ts +1 -1
  99. package/portal/ImageServiceLayer.d.ts +1 -1
  100. package/portal/LayerDefinition.d.ts +7 -4
  101. package/portal/LayerDefinition.js +1 -1
  102. package/portal/MapServiceLayer.js +1 -1
  103. package/portal/PopupInfo.js +1 -1
  104. package/support/esri.d.ts +2 -0
  105. package/tasks/query/ClientSideQueryProvider.d.ts +5 -0
  106. package/tasks/query/ClientSideQueryProvider.js +1 -1
  107. package/tasks/query/QueryService.js +1 -1
  108. package/tasks/query/SceneLayerClientSideQueryProvider.js +1 -1
  109. package/tasks/query/SceneLayerQueryProvider.js +1 -1
  110. package/tasks/query/StreamLayerClientSideQueryProvider.d.ts +4 -0
  111. package/tasks/query/StreamLayerClientSideQueryProvider.js +1 -1
  112. package/utilities/geometry.js +1 -1
  113. package/version.d.ts +1 -1
  114. package/version.js +1 -1
@@ -3023,10 +3023,12 @@
3023
3023
  },
3024
3024
  "loadError": {
3025
3025
  "$ref": "#/definitions/esri.Error",
3026
- "description": "The Error object returned if an error occurred while loading.\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#loadError)"
3026
+ "default": "null\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#loadError)",
3027
+ "description": "The Error object returned if an error occurred while loading."
3027
3028
  },
3028
3029
  "loadStatus": {
3029
- "description": "Represents the status of a [load](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#load) operation.\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#loadStatus)",
3030
+ "default": "not-loaded\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#loadStatus)",
3031
+ "description": "Represents the status of a [load](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#load) operation.",
3030
3032
  "enum": [
3031
3033
  "failed",
3032
3034
  "loaded",
@@ -3041,7 +3043,8 @@
3041
3043
  "type": "array"
3042
3044
  },
3043
3045
  "loaded": {
3044
- "description": "Indicates whether the item's resources have loaded from the portal.\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#loaded)",
3046
+ "default": "false\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#loaded)",
3047
+ "description": "Indicates whether the item's resources have loaded from the portal.",
3045
3048
  "type": "boolean"
3046
3049
  },
3047
3050
  "modified": {
@@ -3078,7 +3081,8 @@
3078
3081
  "description": "The portal that contains the item.\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#portal)"
3079
3082
  },
3080
3083
  "screenshots": {
3081
- "description": "An array of string URLs.\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#screenshots)",
3084
+ "default": "null\n\n[Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#screenshots)",
3085
+ "description": "An array of string URLs.",
3082
3086
  "items": {
3083
3087
  "type": "string"
3084
3088
  },
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{toAttachment}from"../data/Attachment.js";import{FeatureSaveError}from"../data/FeatureSaveError.js";import{DefaultArcGISRequestHelper}from"../support/ArcGISRequestHelper.js";import{cancelify}from"../support/Cancellable.js";import{serializable}from"../support/Serializable.js";import{ArcGISRelationshipCollection}from"../support/_ArcGISRelationshipCollection.js";import{executeQuery}from"../support/_query.js";import{ReadOnlyCollection}from"../utilities/ReadOnlyCollection.js";import{Collection}from"../utilities/collection.js";import{isArcGISServiceTableExtension}from"../utilities/extensions.js";import{isFeatureLayer,isMapImageSublayer}from"../utilities/layers.js";import{isNumeric,parse}from"../utilities/number.js";import{toGraphic}from"./Feature.js";import{TableExtension,TableFeatureSettings,TableSchema}from"./_TableExtension.js";import{addAttachment,deleteAttachments,supportsAttachmentEditing as layerSupportsAttachmentEditing}from"./support/attachments.js";const ERR_SCHEMA_READ_ONLY="This schema property is read-only.";let ArcGISServiceTableExtension=class extends TableExtension{get requestHelper(){return this._requestHelper||(this._requestHelper=new DefaultArcGISRequestHelper),this._requestHelper}set requestHelper(e){this._requestHelper=e}get capabilities(){var e,t;const r=layerSupportsAttachmentEditing(this.table);return(null===(t=null===(e=this.table)||void 0===e?void 0:e.capabilities)||void 0===t?void 0:t.operations)?{...this.table.capabilities.operations,supportsAttachmentEditing:r}:{...super.capabilities,supportsAttachmentEditing:r}}get table(){return super.table}async _getAttachments(e){var t,r,i,a;if(!(null===(i=null===(r=null===(t=this.table)||void 0===t?void 0:t.capabilities)||void 0===r?void 0:r.data)||void 0===i?void 0:i.supportsAttachment))return[];const s=`${this._layerUrl}/${e.primaryKey}/attachments`,l=await this.requestHelper.request(s,{query:{f:"json"},ttl:0});return(null===(a=null==l?void 0:l.data)||void 0===a?void 0:a.attachmentInfos)?l.data.attachmentInfos.map((e=>toAttachment(e,s))):[]}async _addAttachment(e,t){return addAttachment(e,this.table,t,{attachmentTypes:this.attachmentTypes})}async _deleteAttachments(e,t){return deleteAttachments(e,this.table,t)}get _layerUrl(){return isNumeric(this.table.layerId)?`${this.table.url}/${this.table.layerId}`:this.table.url}_getFeatures(e,t){const r=this.table.createQuery();return r.objectIds=e.map((e=>parse(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,executeQuery(r,this,this.table,t.cancelToken)}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const i=await this._applyEdits({addFeatures:r.map(toGraphic),updateFeatures:[],deleteFeatures:[]});if(!i.addFeatureResults||i.addFeatureResults.length!==r.length)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let a;if(i.addFeatureResults.forEach(((e,t)=>{if(e.error){a=a||new FeatureSaveError("Errors encountered when adding features.");const{primaryKey:i}=r[t];a.errors.set(i,new Error(`Failed to add feature with id ${i}. ${e.error.description}`))}})),a)throw a}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const i=await this._applyEdits({addFeatures:[],updateFeatures:r.map(toGraphic),deleteFeatures:[]});if(!i.updateFeatureResults||i.updateFeatureResults.length!==r.length)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let a;if(i.updateFeatureResults.forEach(((e,t)=>{if(e.error){a=a||new FeatureSaveError("Errors encountered when updating features.");const{primaryKey:i}=r[t];a.errors.set(i,new Error(`Failed to update feature with id ${i}. ${e.error.description}`))}})),a)throw a}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({addFeatures:[],updateFeatures:[],deleteFeatures:e.map((e=>({globalId:e})))});if(!r.deleteFeatureResults)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let i;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){i=i||new FeatureSaveError("Errors encountered when deleting features.");const a=e[r];i.errors.set(a,new Error(`Failed to delete feature with id ${a}. ${t.error.description}`))}})),i)throw i}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize()}_isSupportedTable(e){return!e.loaded||e.isTable}_createFeatureSettings(){return new ArcGISServiceTableFeatureSettings(this)}_createRelationships(){return new RelationshipCollection(this)}_createSchema(){return new ArcGISServiceTableSchema(this)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,attachmentTypes:["initial"],table:{...this._toPropertyDef(e.table),default:{$tableType:"ArcGISServiceTable"}},requestHelper:{serialize:!1}}}async _applyEdits(e,t={}){const r=this.table.applyEdits(e),i=await cancelify(r,t.cancelToken);if(!i)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");return i}};ArcGISServiceTableExtension=__decorate([serializable],ArcGISServiceTableExtension);export{ArcGISServiceTableExtension};class TypeCollection extends ReadOnlyCollection{constructor(e){if(super(),e.table)this._onTableResolved(e.table);else{this._collection=new Collection;const t=e.watch("table",(()=>{this._onTableResolved(e.table),t.remove()}),!0)}}_onTableResolved(e){this._collection=new Collection(e.types)}}let ArcGISServiceTableSchema=class extends TableSchema{constructor(e){super(e),this._typeCollection=new TypeCollection(e),this._bindSettingToTableProperty("displayField"),this._bindSettingToTableProperty("typeIdField")}get types(){return this._typeCollection}_setSetting(e,t){if(this._tableBindings.has(e))throw new InvalidOperationError(ERR_SCHEMA_READ_ONLY);super._setSetting(e,t)}_createFieldCollection(){return new ReadOnlyCollection(super._createFieldCollection())}};ArcGISServiceTableSchema=__decorate([serializable],ArcGISServiceTableSchema);let ArcGISServiceTableFeatureSettings=class extends TableFeatureSettings{constructor(e){if(super(),this._tableBindings=new Map,this._tableExtension=e,this._bindSettingToTableProperty("popupTemplate"),e.table)this._onTableResolved(e.table);else{const t=e.watch("table",(()=>{this._onTableResolved(e.table),t.remove()}),!0)}}_getSetting(e,t){return this._tableBindings.has(e)&&this._tableExtension.table?this._tableExtension.table[this._tableBindings.get(e)]:super._getSetting(e,t)}_setSetting(e,t){this._tableBindings.has(e)&&this._tableExtension.table?this._tableExtension.table[this._tableBindings.get(e)]=t:super._setSetting(e,t)}_bindSettingToTableProperty(e,t){const r=null!=t?t:e;this._tableBindings.set(e,r),this._tableExtension.watch(`table.${r}`,(()=>this.notifyChange(e)),!0)}_onTableResolved(e){for(const t of this._tableBindings.keys())this.isModified(t)&&(e[t]=this[t],this.reset(t))}};ArcGISServiceTableFeatureSettings=__decorate([serializable],ArcGISServiceTableFeatureSettings);class RelationshipCollection extends ArcGISRelationshipCollection{get _sourceUrl(){if(this._source.table&&this._source.table.url)return isNumeric(this._source.table.layerId)?`${this._source.table.url}/${this._source.table.layerId}`:this._source.table.url}get _sourceLayerId(){var e;return null===(e=this._source.table)||void 0===e?void 0:e.layerId}_findRelatedSource(e){if(!this._source.mapExtension||!this._source.table||!this._source.table.url)return;const t=this._source.mapExtension.tableExtensions.initializedItems.find((t=>isArcGISServiceTableExtension(t)&&t.table.url===this._source.table.url&&t.table.layerId===e));if(t)return t;for(const t of this._source.mapExtension.layerExtensions.initializedItems.toArray()){const r=t.allSublayerExtensions.initializedItems.find((t=>isMapImageSublayer(t.sublayer)&&t.sublayer.layer.url===this._source.table.url&&t.sublayer.id===e));if(r)return r}return this._source.mapExtension.layerExtensions.initializedItems.find((t=>isFeatureLayer(t.layer)&&t.layer.url===this._source.table.url&&t.layer.layerId===e))}}
1
+ import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{toAttachment}from"../data/Attachment.js";import{FeatureSaveError}from"../data/FeatureSaveError.js";import{DefaultArcGISRequestHelper}from"../support/ArcGISRequestHelper.js";import{cancelify}from"../support/Cancellable.js";import{serializable}from"../support/Serializable.js";import{ArcGISRelationshipCollection}from"../support/_ArcGISRelationshipCollection.js";import{executeQuery}from"../support/_query.js";import{ReadOnlyCollection}from"../utilities/ReadOnlyCollection.js";import{Collection}from"../utilities/collection.js";import{isArcGISServiceTableExtension}from"../utilities/extensions.js";import{isFeatureLayer,isMapImageSublayer}from"../utilities/layers.js";import{isNumeric,parse}from"../utilities/number.js";import{toGraphic}from"./Feature.js";import{TableExtension,TableFeatureSettings,TableSchema}from"./_TableExtension.js";import{addAttachment,deleteAttachments,supportsAttachmentEditing as layerSupportsAttachmentEditing}from"./support/attachments.js";const ERR_SCHEMA_READ_ONLY="This schema property is read-only.";let ArcGISServiceTableExtension=class extends TableExtension{get requestHelper(){return this._requestHelper||(this._requestHelper=new DefaultArcGISRequestHelper),this._requestHelper}set requestHelper(e){this._requestHelper=e}get capabilities(){var e,t;const r=layerSupportsAttachmentEditing(this.table);return(null===(t=null===(e=this.table)||void 0===e?void 0:e.capabilities)||void 0===t?void 0:t.operations)?{...this.table.capabilities.operations,supportsAttachmentEditing:r}:{...super.capabilities,supportsAttachmentEditing:r}}get table(){return super.table}async _getAttachments(e){var t,r,a,i;if(!(null===(a=null===(r=null===(t=this.table)||void 0===t?void 0:t.capabilities)||void 0===r?void 0:r.data)||void 0===a?void 0:a.supportsAttachment))return[];const s=`${this._layerUrl}/${e.primaryKey}/attachments`,l=await this.requestHelper.request(s,{query:{f:"json"},ttl:0});return(null===(i=null==l?void 0:l.data)||void 0===i?void 0:i.attachmentInfos)?l.data.attachmentInfos.map((e=>toAttachment(e,s))):[]}async _addAttachment(e,t){return addAttachment(e,this.table,t,{attachmentTypes:this.attachmentTypes})}async _deleteAttachments(e,t){return deleteAttachments(e,this.table,t)}get _layerUrl(){return isNumeric(this.table.layerId)?`${this.table.url}/${this.table.layerId}`:this.table.url}_getFeatures(e,t){const r=this.table.createQuery();return r.objectIds=e.map((e=>parse(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,executeQuery(r,this,this.table,t.cancelToken)}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const a=await this._applyEdits({addFeatures:r.map(toGraphic),updateFeatures:[],deleteFeatures:[]});if(!a.addFeatureResults||a.addFeatureResults.length!==r.length)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let i;if(a.addFeatureResults.forEach(((e,t)=>{if(e.error){i=i||new FeatureSaveError("Errors encountered when adding features.");const{primaryKey:a}=r[t];i.errors.set(a,new Error(`Failed to add feature with id ${a}. ${e.error.message}`))}})),i)throw i}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const a=await this._applyEdits({addFeatures:[],updateFeatures:r.map(toGraphic),deleteFeatures:[]});if(!a.updateFeatureResults||a.updateFeatureResults.length!==r.length)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let i;if(a.updateFeatureResults.forEach(((e,t)=>{if(e.error){i=i||new FeatureSaveError("Errors encountered when updating features.");const{primaryKey:a}=r[t];i.errors.set(a,new Error(`Failed to update feature with id ${a}. ${e.error.message}`))}})),i)throw i}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({addFeatures:[],updateFeatures:[],deleteFeatures:e.map((e=>({globalId:e})))});if(!r.deleteFeatureResults)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");let a;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){a=a||new FeatureSaveError("Errors encountered when deleting features.");const i=e[r];a.errors.set(i,new Error(`Failed to delete feature with id ${i}. ${t.error.message}`))}})),a)throw a}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize()}_isSupportedTable(e){return!e.loaded||e.isTable}_createFeatureSettings(){return new ArcGISServiceTableFeatureSettings(this)}_createRelationships(){return new RelationshipCollection(this)}_createSchema(){return new ArcGISServiceTableSchema(this)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,attachmentTypes:["initial"],table:{...this._toPropertyDef(e.table),default:{$tableType:"ArcGISServiceTable"}},requestHelper:{serialize:!1}}}async _applyEdits(e,t={}){const r=this.table.applyEdits(e),a=await cancelify(r,t.cancelToken);if(!a)throw new FeatureSaveError("Received malformed response from server while saving feature(s).");return a}};ArcGISServiceTableExtension=__decorate([serializable],ArcGISServiceTableExtension);export{ArcGISServiceTableExtension};class TypeCollection extends ReadOnlyCollection{constructor(e){if(super(),e.table)this._onTableResolved(e.table);else{this._collection=new Collection;const t=e.watch("table",(()=>{this._onTableResolved(e.table),t.remove()}),!0)}}_onTableResolved(e){this._collection=new Collection(e.types)}}let ArcGISServiceTableSchema=class extends TableSchema{constructor(e){super(e),this._typeCollection=new TypeCollection(e),this._bindSettingToTableProperty("displayField"),this._bindSettingToTableProperty("typeIdField")}get types(){return this._typeCollection}_setSetting(e,t){if(this._tableBindings.has(e))throw new InvalidOperationError(ERR_SCHEMA_READ_ONLY);super._setSetting(e,t)}_createFieldCollection(){return new ReadOnlyCollection(super._createFieldCollection())}};ArcGISServiceTableSchema=__decorate([serializable],ArcGISServiceTableSchema);let ArcGISServiceTableFeatureSettings=class extends TableFeatureSettings{constructor(e){if(super(),this._tableBindings=new Map,this._tableExtension=e,this._bindSettingToTableProperty("popupTemplate"),e.table)this._onTableResolved(e.table);else{const t=e.watch("table",(()=>{this._onTableResolved(e.table),t.remove()}),!0)}}_getSetting(e,t){return this._tableBindings.has(e)&&this._tableExtension.table?this._tableExtension.table[this._tableBindings.get(e)]:super._getSetting(e,t)}_setSetting(e,t){this._tableBindings.has(e)&&this._tableExtension.table?this._tableExtension.table[this._tableBindings.get(e)]=t:super._setSetting(e,t)}_bindSettingToTableProperty(e,t){const r=null!=t?t:e;this._tableBindings.set(e,r),this._tableExtension.watch(`table.${r}`,(()=>this.notifyChange(e)),!0)}_onTableResolved(e){for(const t of this._tableBindings.keys())this.isModified(t)&&(e[t]=this[t],this.reset(t))}};ArcGISServiceTableFeatureSettings=__decorate([serializable],ArcGISServiceTableFeatureSettings);class RelationshipCollection extends ArcGISRelationshipCollection{get _sourceUrl(){if(this._source.table&&this._source.table.url)return isNumeric(this._source.table.layerId)?`${this._source.table.url}/${this._source.table.layerId}`:this._source.table.url}get _sourceLayerId(){var e;return null===(e=this._source.table)||void 0===e?void 0:e.layerId}_findRelatedSource(e){if(!this._source.mapExtension||!this._source.table||!this._source.table.url)return;const t=this._source.mapExtension.tableExtensions.initializedItems.find((t=>isArcGISServiceTableExtension(t)&&t.table.url===this._source.table.url&&t.table.layerId===e));if(t)return t;for(const t of this._source.mapExtension.layerExtensions.initializedItems.toArray()){const r=t.allSublayerExtensions.initializedItems.find((t=>isMapImageSublayer(t.sublayer)&&t.sublayer.layer.url===this._source.table.url&&t.sublayer.id===e));if(r)return r}return this._source.mapExtension.layerExtensions.initializedItems.find((t=>isFeatureLayer(t.layer)&&t.layer.url===this._source.table.url&&t.layer.layerId===e))}}
@@ -198,29 +198,20 @@ declare namespace __esri {
198
198
  usesGeometry: boolean | number;
199
199
  }
200
200
 
201
- export interface MapView {
202
- container: string | HTMLDivElement;
203
- }
201
+ // ESRI424 - Check if the extended interfaces below are still necessary.
204
202
 
205
203
  export interface SceneLayer {
206
204
  associatedLayer: __esri.FeatureLayer;
207
205
  }
208
206
 
209
- export interface VectorTileLayer {
210
- loadStyle(style: string | Object): Promise<void>;
211
- }
212
-
213
- // Check if these properties exist in ESRI421.
214
207
  export interface WMSLayer {
215
208
  mapUrl: string;
216
209
  }
217
210
 
218
- // Check if these properties exist in ESRI421.
219
211
  export interface WMSLayerProperties {
220
212
  mapUrl?: string;
221
213
  }
222
214
 
223
- // Check if these properties exist in ESRI421.
224
215
  export interface FeatureLayer {
225
216
  mode: number;
226
217
  deleteAttachments(feature: Graphic, attachmentIds: number[]): Promise<FeatureEditResult[]>;
@@ -230,70 +221,24 @@ declare namespace __esri {
230
221
  clone(): this;
231
222
  }
232
223
 
233
- // Check if VectorFieldRenderer extends Renderer in ESRI422.
224
+ // Check if VectorFieldRenderer extends Renderer.
234
225
  export interface VectorFieldRenderer extends Renderer {}
235
226
 
236
- // Check if WMSSublayer extends these in ESRI421.
237
- export interface WMSSublayer extends JSONSupport {}
238
-
239
- export interface SpatialReferenceConstructor {
240
- // Esri marked these as instance properties, but they are static.
241
- WebMercator: SpatialReference;
242
- WGS84: SpatialReference;
243
- }
244
-
245
- // Check if these properties exist in ESRI421.
246
227
  export interface locatorSuggestLocationsParams {
247
- // These properties are not exposed by the type file provided by esri.
248
228
  searchExtent: Extent;
249
229
  maxSuggestions: number;
250
230
  countryCode: string;
251
231
  }
252
232
 
253
- export interface locator {
254
- // This signature is broken in the typings and documentation. It's
255
- // missing the first `url` parameter. Check if this is fixed in ESRI421.
256
- locationToAddress(
257
- url: string,
258
- params: locatorLocationToAddressParams,
259
- requestOptions?: any
260
- ): Promise<supportAddressCandidate>;
261
- }
262
-
263
- export interface query {
264
- // This signature is broken in the typings and documentation. It's
265
- // missing the first `url` parameter. Check if this is fixed in ESRI421.
266
- executeForCount(
267
- url: string,
268
- query: supportQuery | supportQueryProperties,
269
- requestOptions?: any
270
- ): Promise<number>;
271
- }
272
-
273
- export interface imageService {
274
- // This signature is broken in the typings and documentation. It's
275
- // missing the first `url` parameter. Check if this is fixed in ESRI421.
276
- identify(
277
- url: string,
278
- params: supportImageIdentifyParameters,
279
- requestOptions?: any
280
- ): Promise<supportImageIdentifyResult>;
281
- }
282
-
283
- // Check if layer is present in ESRI421.
284
233
  export interface BuildingSublayer {
285
234
  layer: __esri.BuildingSceneLayer;
286
235
  }
287
236
 
288
- // Check if present in ESRI421.
289
237
  export interface BuildingComponentSublayer {
290
238
  fields: __esri.Field[];
291
239
  objectIdField: string;
292
240
  geometryType: __esri.Geometry["type"];
293
- maxScale: number;
294
241
  capabilities: BuildingComponentSublayerCapabilities;
295
- listMode: "show" | "hide" | "hide-children";
296
- associatedLayer?: __esri.FeatureLayer;
297
242
  }
298
243
  export interface BuildingComponentSublayerCapabilities {
299
244
  /**
@@ -302,41 +247,8 @@ declare namespace __esri {
302
247
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#capabilities)
303
248
  */
304
249
  data: BuildingComponentSublayerCapabilitiesData;
305
- /**
306
- * Describes [query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) operations that can be performed on features in the layer.
307
- *
308
- * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#capabilities)
309
- */
310
- query: BuildingComponentSublayerCapabilitiesQuery;
311
- }
312
- export interface BuildingComponentSublayerCapabilitiesQuery {
313
- maxRecordCount: number;
314
- maxRecordCountFactor: number;
315
- standardMaxRecordCount: number;
316
- supportsCacheHint: boolean;
317
- supportsCentroid: boolean;
318
- supportsDisjointSpatialRelationship: boolean;
319
- supportsDistance: boolean;
320
- supportsDistinct: boolean;
321
- supportsExtent: boolean;
322
- supportsFormatPBF: boolean;
323
- supportsGeometryProperties: boolean;
324
- supportsHavingClause: boolean;
325
- supportsHistoricMoment: boolean;
326
- supportsMaxRecordCountFactor: boolean;
327
- supportsOrderBy: boolean;
328
- supportsPagination: boolean;
329
- supportsPercentileStatistics: boolean;
330
- supportsQuantization: boolean;
331
- supportsQuantizationEditMode: boolean;
332
- supportsQueryByOthers: boolean;
333
- supportsQueryGeometry: boolean;
334
- supportsResultType: boolean;
335
- supportsSqlExpression: boolean;
336
- supportsStandardizedQueriesOnly: boolean;
337
- supportsStatistics: boolean;
338
- tileMaxRecordCount: number;
339
250
  }
251
+
340
252
  export interface BuildingComponentSublayerCapabilitiesData {
341
253
  isVersioned: boolean;
342
254
  supportsM: boolean;
@@ -344,36 +256,10 @@ declare namespace __esri {
344
256
  }
345
257
 
346
258
  export interface ImageryLayer {
347
- // This disappeared in 4.19 for some reason. Check to see if they added it back in ESRI421.
259
+ // This disappeared in 4.19 for some reason.
348
260
  rasterAttributeTableFieldPrefix: string;
349
261
  }
350
262
 
351
- export interface Task extends Accessor {
352
- /**
353
- * The [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for data requests. These options can also be controlled through the `requestOptions` method parameter.
354
- *
355
- * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Task.html#requestOptions)
356
- */
357
- requestOptions: any;
358
- /**
359
- * The ArcGIS Server REST service URL (usually of a Feature Service Layer or Map Service Layer) for use in a task.
360
- *
361
- * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Task.html#url)
362
- */
363
- url: string;
364
-
365
- // Geocortex Edit: Typings seem to be missing execute()
366
- // See API Docs: https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-ImageServiceIdentifyTask.html#execute
367
- /**
368
- * Sends a request to the ArcGIS REST image service resource to identify content based on the ImageServiceIdentifyParameters specified in the params argument.
369
- */
370
- execute(
371
- params: ImageIdentifyParameters,
372
- requestOptions?: RequestOptions
373
- ): Promise<ImageIdentifyResult>;
374
- }
375
-
376
- // ESRI421: Check if they've added to their documented properties.
377
263
  export interface StreamLayerView {
378
264
  createQuery(): __esri.supportQuery;
379
265
  view: __esri.MapView | __esri.SceneView;
@@ -403,9 +289,14 @@ declare namespace __esri {
403
289
  view: __esri.MapView | __esri.SceneView;
404
290
  }
405
291
 
292
+ export interface EditsResult {
293
+ addFeatureResults: __esri.FeatureEditResult[];
294
+ deleteFeatureResults: __esri.FeatureEditResult[];
295
+ updateFeatureResults: __esri.FeatureEditResult[];
296
+ }
297
+
406
298
  export interface Symbol3DLayerProperties {
407
- // ESRI421: Check if they've added this to the interface. The type
408
- // property is required for autocasting to work.
299
+ // The type property is required for autocasting to work.
409
300
  type: Symbol3DLayer["type"];
410
301
  }
411
302
  }