class o {
  constructor() {
    var r, i;
    this.lang = n("lang", (r = document == null ? void 0 : document.documentElement) == null ? void 0 : r.getAttribute("lang")), this.dir = n("dir", (i = document == null ? void 0 : document.documentElement) == null ? void 0 : i.getAttribute("dir")), new MutationObserver(() => {
      document.dispatchEvent(
        new CustomEvent("localeChanged", {
          detail: {
            lang: this.lang = n("lang", document.documentElement.lang),
            dir: this.dir = n("dir", document.documentElement.dir)
          }
        })
      );
    }).observe(document.documentElement, {
      attributes: !0,
      attributeFilter: ["dir", "lang"]
    });
  }
  // MessageFormat configurations, if any
  // Other page level settings, if any
}
function n(e, t) {
  return e === "lang" ? t && t.includes("-") && t.length >= 5 ? t.toLowerCase() : "en-us" : e === "dir" ? t && /^(ltr|rtl)$/i.test(t) ? t.toLowerCase() : "ltr" : (console.warn("Invalid validation type!"), "");
}
const d = /* @__PURE__ */ function() {
  let e;
  return function() {
    return e || (e = new o()), e;
  };
}();
export {
  d as g
};
