{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/layers/support/labelFormatUtils.js"],"names":["c","getLogger","f","type","evaluate","m","getAttribute","e","t","field","async","d","a","o","symbol","i","where","l","g","expression","r","$feature","repurposeFeature","repurposeAdapter","toString","error","feature","needsHydrationToEvaluate","replace","slice","attributes","name","y","WhereClause","create","b","testFeature","domain","codedValues","code","range","minValue","n","maxValue"],"mappings":"gHAAA,2MAI+c,MAAMA,EAAE,OAAEC,UAAU,wCAAwCC,EAAE,CAACC,KAAK,SAASC,SAAS,IAAI,MAAMC,EAAE,CAACC,aAAa,CAACC,EAAEC,IAAID,EAAEE,MAAMD,IAAIE,eAAeC,EAAEJ,EAAEK,EAAEC,GAAG,IAAIN,IAAIA,EAAEO,OAAO,OAAOZ,EAAE,MAAMa,EAAER,EAAES,MAAMC,EAAE,eAAEV,GAAGI,EAAEI,QAAQ,gDAAwC,KAAK,IAAIG,EAAE,GAAG,WAAWD,EAAEd,KAAK,CAAC,MAAMI,QAAQ,eAAEU,EAAEE,WAAWN,EAAED,GAAGM,EAAE,CAACf,KAAK,SAAS,SAASiB,GAAG,IAAI,MAAMZ,EAAED,EAAEH,SAAS,CAACiB,SAAS,eAAeD,EAAEb,EAAEe,iBAAiBF,GAAGb,EAAEgB,iBAAiBH,KAAK,GAAG,MAAMZ,EAAE,OAAOA,EAAEgB,WAAW,MAAMZ,GAAGZ,EAAEyB,MAAM,IAAI,OAAE,wBAAwB,oEAAoE,CAACC,QAAQN,EAAED,WAAWF,KAAK,OAAO,MAAMU,yBAAyB,IAAI,MAAM,eAAEV,EAAEE,kBAAkBD,EAAE,CAACf,KAAK,SAASC,SAASG,GAAGU,EAAEE,WAAWS,QAAQ,WAAYpB,IAAI,MAAMY,EAAEZ,EAAEqB,MAAM,GAAG,GAAGhB,EAAE,eAAED,EAAEQ,GAAG,IAAIP,EAAE,OAAOL,EAAE,IAAIO,EAAE,KAA2F,MAAnF,eAAeR,EAAGA,GAAGA,EAAEuB,aAAaf,EAAER,EAAEuB,WAAWjB,EAAEkB,OAAYhB,EAAER,EAAEE,MAAMI,EAAEkB,MAAa,MAAMhB,EAAE,GAAGiB,EAAEjB,EAAEF,MAAO,GAAGE,EAAE,CAAC,IAAIR,EAAE,IAAIA,EAAEI,EAAEsB,YAAYC,OAAOnB,EAAE,IAAI,OAAEH,IAAI,MAAMuB,GAAG,OAAOjC,EAAE,MAAMM,EAAEU,EAAEd,SAASc,EAAEd,SAASgB,IAAI,MAAMR,EAAE,eAAeQ,OAAE,EAAOf,EAAE,OAAOE,EAAE6B,YAAYhB,EAAER,GAAGJ,EAAEY,GAAG,MAAM,OAAOF,EAAE,SAASc,EAAEzB,EAAEC,GAAG,GAAG,MAAMD,EAAE,MAAM,GAAG,MAAMa,EAAEZ,EAAE6B,OAAO,GAAGjB,EAAE,GAAG,eAAeA,EAAEjB,MAAM,gBAAgBiB,EAAEjB,KAAK,CAAC,MAAMK,EAAED,EAAE,IAAI,MAAMA,KAAKa,EAAEkB,YAAY,GAAG/B,EAAEgC,OAAO/B,EAAE,OAAOD,EAAEwB,UAAU,GAAG,UAAUX,EAAEjB,KAAK,CAAC,MAAMK,GAAGD,EAAEK,EAAE,UAAUQ,EAAEA,EAAEoB,MAAM,GAAGpB,EAAEqB,SAASC,EAAE,UAAUtB,EAAEA,EAAEoB,MAAM,GAAGpB,EAAEuB,SAAS,GAAG/B,GAAGJ,GAAGA,GAAGkC,EAAE,OAAOtB,EAAEW,KAAK,IAAIW,EAAEnC,EAAE,MAAM,SAASC,EAAEL,MAAM,sBAAsBK,EAAEL,KAAKuC,EAAE,eAAEA,EAAE,eAAE,eAAe,eAAElC,KAAKkC,EAAE,gBAAGA,IAAIA,GAAG","file":"js/chunk-2d222178.08054e62.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.19/esri/copyright.txt for details.\n*/\nimport e from\"../../core/Logger.js\";import t from\"../../core/Error.js\";import{createLabelExpression as r}from\"../../support/arcadeOnDemand.js\";import{isNumericField as a,getField as n}from\"./fieldUtils.js\";import{formatDate as o,convertDateFormatToIntlOptions as i}from\"../../intl/date.js\";import{formatNumber as l}from\"../../intl/number.js\";import s from\"./FieldsIndex.js\";import{getLabelExpression as u,getSingleFieldArcadeExpression as p}from\"./labelUtils.js\";const c=e.getLogger(\"esri.layers.support.labelFormatUtils\"),f={type:\"simple\",evaluate:()=>null},m={getAttribute:(e,t)=>e.field(t)};async function d(e,a,o){if(!e||!e.symbol)return f;const i=e.where,l=u(e),d=i?await import(\"../../core/sql/WhereClause.js\"):null;let g;if(\"arcade\"===l.type){const e=await r(l.expression,o,a);g={type:\"arcade\",evaluate(r){try{const t=e.evaluate({$feature:\"attributes\"in r?e.repurposeFeature(r):e.repurposeAdapter(r)});if(null!=t)return t.toString()}catch(a){c.error(new t(\"bad-arcade-expression\",\"Encountered an error when evaluating label expression for feature\",{feature:r,expression:l}))}return null},needsHydrationToEvaluate:()=>null==p(l.expression)}}else g={type:\"simple\",evaluate:e=>l.expression.replace(/{[^}]*}/g,(t=>{const r=t.slice(1,-1),o=n(a,r);if(!o)return t;let i=null;if(\"attributes\"in e){e&&e.attributes&&(i=e.attributes[o.name])}else i=e.field(o.name);return null==i?\"\":y(i,o)}))};if(i){let e;try{e=d.WhereClause.create(i,new s(a))}catch(b){return f}const t=g.evaluate;g.evaluate=r=>{const a=\"attributes\"in r?void 0:m;return e.testFeature(r,a)?t(r):null}}return g}function y(e,t){if(null==e)return\"\";const r=t.domain;if(r)if(\"codedValue\"===r.type||\"coded-value\"===r.type){const t=e;for(const e of r.codedValues)if(e.code===t)return e.name}else if(\"range\"===r.type){const t=+e,a=\"range\"in r?r.range[0]:r.minValue,n=\"range\"in r?r.range[1]:r.maxValue;if(a<=t&&t<=n)return r.name}let n=e;return\"date\"===t.type||\"esriFieldTypeDate\"===t.type?n=o(n,i(\"short-date\")):a(t)&&(n=l(+n)),n||\"\"}export{d as createLabelFunction,y as formatField};\n"],"sourceRoot":""}