/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
import a from"./MZWO5JYA.js";import{p as u}from"./IXZEUVT2.js";export default $arcgis.t(([{replace:f},{fieldFormatFromFieldInfo:h},{h:s}])=>{var c=/^\s*expression\//iu,y=/href=(""|'')/giu,N=/(\{([^{\r\n]+)\})/gu,I=/href\s*=\s*(?:"([^"]+)"|'([^']+)')/giu,F=/'/gu,C="relationships/",w=/^(?:mailto:|tel:)/u;function z(e,n){let r=new Map;if(!e)return r;for(let t of e){if(!t.fieldName)continue;let o=d(t.fieldName,n);t.fieldName=o,r.set(o.toLowerCase(),t)}return r}function B(e){let n=[];if(!e)return n;let{fieldInfos:r,content:t}=e;return r&&n.push(...r),!t||!Array.isArray(t)||t.forEach(o=>{if(o.type==="fields"){let i=o?.fieldInfos;i&&n.push(...i)}}),n}function D(e,n){return e?.getEffectivePopupTemplate(n)??void 0}function G(e){if(e!=null)return"sourceLayer"in e&&e.sourceLayer?e.sourceLayer:e.layer??void 0}function L(e=""){return e?e.includes(C):!1}function H(e=""){if(e)return!w.test(e.trim().toLowerCase())}function d(e,n){let r=g(n,e);return r?r.name:e}function J(e,n){return e?.map(r=>d(r,n))}function p(e){return e?c.test(e):!1}function A(e,n){if(!n||!p(n)||!e)return;let r=n.replace(c,"").toLowerCase();return e.find(({name:t})=>t.toLowerCase()===r)}function K(e,n){if(!(!e?.length||!n))return e.find(r=>r.fieldName?.toLowerCase()===n.toLowerCase())}function v(e){let{fieldInfo:n,graphic:r,layer:t}=e;return b({fieldInfo:n,graphic:r})?s(t,{graphic:r}):null}function b({fieldInfo:e,graphic:n}){return!!e?.fieldName&&!p(e.fieldName)&&!L(e.fieldName)&&!n?.popupTemplate}function O({expressionInfos:e,fieldInfo:n,graphic:r,isContentFieldInfos:t,layer:o}){if(!n?.fieldName)return null;let i=A(e,n?.fieldName);if(i)return i.title||null;let a=v({fieldInfo:n,graphic:r,layer:o});if(a){let l=a.getFieldAlias(n.fieldName);return t?n.label||l||n.fieldName:l||n.fieldName}return n.label||n.fieldName}function P(e){let{configurableFieldsContainer:n,fieldInfo:r,isContentFieldInfos:t}=e;if(!r?.fieldName)return null;let o=!n.popupTemplate&&!n.fieldConfigurations?h(r,n.getField(r.fieldName)):n.getFieldConfiguration(r.fieldName)?.fieldFormat;return t&&r.fieldFormat||o}function m(e){return e.trim()}function x(e){return e.replaceAll(y,"")}function E(e,n){return`{${n.get(e.toLowerCase())?.fieldName||e}}`}function M({formattedValues:e,template:n,fieldInfoMap:r}){return m(x(f(f(n,t=>E(t,r)),e)))}function g(e,n){return!(e&&"getField"in e&&typeof e.getField=="function")||!n?null:e.getField(n)??null}function T(e,n){return e.replaceAll(N,(r,t,o)=>{let i=g(n,o);return i?`{${i.name}}`:t})}function V(e,n,r=!1){let t=n[e];if(typeof t=="string"){let o=(r?encodeURIComponent(t):t).replaceAll(F,"%27");n[e]=o}}function $(e,n=!1){let r={...e};return Object.keys(r).forEach(t=>V(t,r,n)),r}function j(e,n,r){n=m(n);let t=n&&!n.startsWith("{");return f(e,$(r,t||!1))}function k(e,n,r){let t=T(e,r);return t&&t.replaceAll(I,(o,i,a)=>j(o,i||a,n))}function _({values:e,globalValues:n,layer:r,text:t,fieldInfoMap:o}){return t?M({formattedValues:n,template:k(t,{...n,...e},r),fieldInfoMap:o}):""}async function Q({type:e,value:n,event:r}){try{return typeof n=="function"?n(r):await n}catch(t){u("error","arcgis-feature",`An error occurred when calling the "${e}" function`,{detail:{error:t,graphic:r.graphic,value:n}});return}}return{a:z,b:B,c:D,d:G,e:L,f:H,g:d,h:J,i:p,j:K,k:v,l:O,m:P,n:M,o:T,p:_,q:Q}},"applications/Components/stringUtils","applications/Components/fieldFormatUtils",a)