/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
import{n as l}from"./PGOMURMZ.js";var p=(n,o)=>{let e=n;for(;e;){if(e===o)return!0;if(!e.parentNode)return!1;e.parentNode instanceof ShadowRoot?e=e.parentNode.host:e=e.parentNode}return!1},f=(n,o,e)=>{let r=E(o).subscribe;return r(t=>{t.some(s=>p(n,s.target))&&e()})},u={},E=n=>{let o=n.join(","),e=u[o];if(e!==void 0)return e;let r=new Set,t=new MutationObserver(s=>r.forEach(a=>a(s)));globalThis.document&&t.observe(document.documentElement,{attributes:!0,attributeFilter:n,subtree:!0});let i={subscribe:s=>(r.add(s),()=>{r.delete(s),r.size===0&&(t.disconnect(),u[o]=void 0)})};return u[o]=i,i},b=(n,o)=>{let e=n;for(;e;){let r=e.closest?.(o);if(r)return r;let t=e.getRootNode?.();if(t===globalThis.document)return;e=t?.host}};var g=(n,o,e)=>b(n,`[${o}]`)?.getAttribute(o)??e;var v="ar,bg,bs,ca,cs,da,de,el,en,es,et,fi,fr,he,hr,hu,id,it,ja,ko,lt,lv,nl,nb,no,pl,pt-BR,pt-PT,ro,ru,sk,sl,sr,sv,th,tr,uk,vi,zh-CN,zh-HK,zh-TW".split(","),C=new Set(v),c="en",y={pt:"pt-BR",nb:"no",nn:"no",zh:"zh-CN"},N=async(n,o,e="")=>{let r=`${o}/${e}`,t=`${r}${n}.json`;return d[t]??(d[t]=h(n,r)),await d[t]},d={},h=async(n,o)=>{let e=`${o}${n}.json`;try{let r=await fetch(e);if(r.ok)return await r.json()}catch(r){return l("error","intl",`An unknown error occurred while fetching localization strings at ${e}`,{detail:{error:r}}),{}}return n===c?{}:await h(c,o)},w=n=>{let o=g(n,"lang",globalThis.navigator?.language||c);return{lang:o,t9nLocale:m(o)}},m=n=>{let[o,e]=n.split("-"),r=o.toLowerCase(),t=r;return e&&(t=`${r}-${e.toUpperCase()}`),t=y[t]??t,C.has(t)?t:e?m(r):c},k=(n,o,e,r)=>{let t,i=()=>L(n,o(),r).then(s=>{(t?.lang!==s.lang||t.t9nLocale!==s.t9nLocale||t.t9nStrings!==s.t9nStrings)&&e(s),t=s}).catch(s=>{l("error","intl","Error updating component locale state",{detail:{error:s}})});return queueMicrotask(i),f(n,["lang"],i)},L=async(n,o,e=n.localName.split("-").slice(1).join("-"))=>{let{lang:r,t9nLocale:t}=w(n),i=`${o}/${e}/t9n`,a=e===null?{}:await N(t,i,"messages.");return{lang:r,t9nLocale:t,t9nStrings:a}};export{f as a,g as b,C as c,c as d,w as e,m as f,k as g};
