{
  "version": 3,
  "sources": ["/cdn/shop/t/7/assets/crystaura-nav.js?maison=nav-v1"],
  "sourcesContent": ["(() => {\n  const DIY_VERSION = \"maison-lune-diy-v2\";\n\n  const translations = new Map([\n    [\"\\u4e3b\\u9875\", \"Home\"],\n    [\"\\u9996\\u9875\", \"Home\"],\n    [\"\\u7522\\u54c1\\u76ee\\u9304\", \"Catalog\"],\n    [\"\\u4ea7\\u54c1\\u76ee\\u5f55\", \"Catalog\"],\n    [\"\\u5546\\u54c1\\u76ee\\u5f55\", \"Catalog\"],\n    [\"\\u76ee\\u5f55\", \"Catalog\"],\n    [\"\\u6240\\u6709\\u4ea7\\u54c1\", \"All Products\"],\n    [\"\\u8054\\u7cfb\\u6211\\u4eec\", \"Contact\"],\n    [\"\\u8054\\u7cfb\", \"Contact\"],\n    [\"\\u5173\\u4e8e\\u6211\\u4eec\", \"About\"],\n    [\"\\u8d2d\\u7269\\u8f66\", \"Cart\"],\n    [\"\\u52a0\\u5165\\u8d2d\\u7269\\u8f66\", \"Add to cart\"],\n    [\"\\u6dfb\\u52a0\\u5230\\u8d2d\\u7269\\u8f66\", \"Add to cart\"],\n    [\"\\u7acb\\u5373\\u8d2d\\u4e70\", \"Buy now\"],\n    [\"\\u8d2d\\u4e70\", \"Buy now\"],\n    [\"\\u7ed3\\u8d26\", \"Check out\"],\n    [\"\\u67e5\\u770b\\u8d2d\\u7269\\u8f66\", \"View cart\"],\n    [\"\\u7ee7\\u7eed\\u8d2d\\u7269\", \"Continue shopping\"],\n    [\"\\u641c\\u7d22\", \"Search\"],\n    [\"\\u83dc\\u5355\", \"Menu\"],\n    [\"\\u7b5b\\u9009\", \"Filter\"],\n    [\"\\u7be9\\u9078\", \"Filter\"],\n    [\"\\u7b5b\\u9009\\u548c\\u6392\\u5e8f\", \"Filter and sort\"],\n    [\"\\u7be9\\u9078\\u8207\\u6392\\u5e8f\", \"Filter and sort\"],\n    [\"\\u6392\\u5e8f\", \"Sort\"],\n    [\"\\u6392\\u5e8f\\u4f9d\\u636e\\uff1a\", \"Sort by:\"],\n    [\"\\u6392\\u5e8f\\u4f9d\\u64da\\uff1a\", \"Sort by:\"],\n    [\"\\u6570\\u91cf\", \"Quantity\"],\n    [\"\\u4ef7\\u683c\", \"Price\"],\n    [\"\\u5c0f\\u8ba1\", \"Subtotal\"],\n    [\"\\u603b\\u8ba1\", \"Total\"],\n    [\"\\u9884\\u8ba1\\u603b\\u8ba1\", \"Estimated total\"],\n    [\"\\u5220\\u9664\", \"Remove\"],\n    [\"\\u66f4\\u65b0\", \"Update\"],\n    [\"\\u552e\\u7f44\", \"Sold out\"],\n    [\"\\u4e0d\\u53ef\\u7528\", \"Unavailable\"],\n    [\"Catalog\", \"Shop\"],\n    [\"All Products\", \"Shop\"],\n    [\"Gallery\", \"Collection\"],\n    [\"DIY\", \"DIY Studio\"],\n    [\"About Us\", \"Our Story\"]\n  ]);\n\n  const replaceExactText = (element) => {\n    const original = element.textContent || \"\";\n    const trimmed = original.trim();\n    const translated = translations.get(trimmed);\n\n    if (!translated || original === translated) return;\n    element.textContent = original.replace(trimmed, translated);\n  };\n\n  const translateAttributes = (element) => {\n    [\"placeholder\", \"aria-label\", \"title\", \"value\"].forEach((name) => {\n      const original = element.getAttribute?.(name);\n      if (!original) return;\n      const translated = translations.get(original.trim());\n      if (translated) element.setAttribute(name, original.replace(original.trim(), translated));\n    });\n  };\n\n  const linkKey = (link) => {\n    const text = (link.textContent || \"\").trim().toLowerCase();\n    const href = link.getAttribute(\"href\") || \"\";\n    let path = href;\n\n    try {\n      path = new URL(href, window.location.origin).pathname.replace(/\\/$/, \"\");\n    } catch (error) {\n      path = href.replace(/\\/$/, \"\");\n    }\n\n    return `${text}|${path}`;\n  };\n\n  const removeDuplicateLinks = (containerSelector) => {\n    document.querySelectorAll(containerSelector).forEach((container) => {\n      const seen = new Set();\n\n      container.querySelectorAll(\"a[href]\").forEach((link) => {\n        const key = linkKey(link);\n        const text = (link.textContent || \"\").trim().toLowerCase();\n        const isDiy = key.includes(\"/pages/diy\") || text === \"diy\";\n\n        if (!isDiy) return;\n\n        if (seen.has(key) || Array.from(seen).some((item) => item.includes(\"/pages/diy\"))) {\n          const removable = link.closest(\"li\") || link;\n          removable.remove();\n          return;\n        }\n\n        seen.add(key);\n      });\n    });\n  };\n\n  const normalizeDiyLinks = () => {\n    document.querySelectorAll(\"a[href]\").forEach((link) => {\n      const rawHref = link.getAttribute(\"href\") || \"\";\n      let url;\n\n      try {\n        url = new URL(rawHref, window.location.origin);\n      } catch (error) {\n        return;\n      }\n\n      if (!url.pathname.replace(/\\/$/, \"\").includes(\"/pages/diy\")) return;\n\n      url.searchParams.set(\"crystaura\", DIY_VERSION);\n      link.setAttribute(\"href\", `${url.pathname}${url.search}${url.hash}`);\n    });\n  };\n\n  const translateStorefrontText = () => {\n    document.querySelectorAll(\".header__heading-link\").forEach((link) => {\n      if (link.querySelector(\"img\")) return;\n\n      link.querySelectorAll(\".h2\").forEach((brandNode) => {\n        if (brandNode.children.length === 0 && brandNode.textContent.trim() !== \"Maison Lune\") {\n          brandNode.textContent = \"Maison Lune\";\n        }\n      });\n    });\n\n    document\n      .querySelectorAll(\n        \"a, button, summary, label, span, p, h1, h2, h3, h4, h5, h6, option, input, textarea\"\n      )\n      .forEach((element) => {\n        translateAttributes(element);\n        if (element.children.length === 0) replaceExactText(element);\n      });\n\n    normalizeDiyLinks();\n    removeDuplicateLinks(\".header__inline-menu, .menu-drawer__navigation, .footer__content-top\");\n  };\n\n  const run = () => window.requestAnimationFrame(translateStorefrontText);\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", run, { once: true });\n  } else {\n    run();\n  }\n\n  document.addEventListener(\"shopify:section:load\", run);\n  document.addEventListener(\"shopify:section:select\", run);\n\n  const observer = new MutationObserver(run);\n  observer.observe(document.documentElement, { childList: true, subtree: true });\n})();\n"],
  "mappings": "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",
  "names": []
}
