diff --git a/.gitignore b/.gitignore index 40b878db..b612063d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,6 @@ -node_modules/ \ No newline at end of file +node_modules/ +materialYouNewTab-main/ +old_styles.scss +old_index.html +ignore_app.js +ignore_languages.js \ No newline at end of file diff --git a/dist/Material-symbols-outlined.woff2 b/dist/Material-symbols-outlined.woff2 new file mode 100644 index 00000000..b929747d Binary files /dev/null and b/dist/Material-symbols-outlined.woff2 differ diff --git a/dist/app.js b/dist/app.js index 6fe91c13..65363fa5 100644 --- a/dist/app.js +++ b/dist/app.js @@ -1,281 +1,281 @@ -(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function t(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=t(i);fetch(i.href,a)}})();const _={en:{feedback:"Feedback",resetsettings:"Reset Settings",shortcutsText:"Shortcuts",enableShortcutsText:"Enable/disable shortcuts",editShortcutsText:"Edit Shortcuts",editShortcutsList:"Edit Shortcuts",shortcutsInfoText:"Choose which shortcuts get shown",adaptiveIconText:"Adaptive Icon Shapes",adaptiveIconInfoText:"Shortcut Icons will always be round",ai_tools_button:"AI-Tools",enable_ai_tools:"Enable/disable AI Tools shortcuts",digitalclocktittle:"Digital Clock",digitalclockinfo:"Enable/disable the Digital Clock",timeformattittle:"Use 12h Format",timeformatinfo:"Use 12 hour time format",fahrenheitCelsiusCheckbox:"Switch to Fahrenheit",fahrenheitCelsiusText:"Refresh the page to see the updates",search_suggestions_button:"Search Suggestions",search_suggestions_text:"Enable/disable Search Suggestions",useproxytitletext:"Proxy Bypass",useproxyText:"If search suggestions isn't working",ProxyText:"CORS Bypass Proxy",ProxySubtext:"Add your own CORS Bypass Proxy",HostproxyButton:"Host Your Own Proxy",saveproxy:"Save",UserLocText:"Enter your location",UserLocSubtext:"If the weather location isn't correct",userLoc:"Your location (City/Latitude,Longitude)",InputOptionsButton:"Input Options",saveLoc:"Save",WeatherApiText:"Enter your own WeatherAPI key",WeatherApiSubtext:"If the weather functionality isn't working",userAPI:"Your weatherAPI key",LearnMoreButton:"Learn More",saveAPI:"Save",days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],humidityText:"Humidity",feelsLike:"Feels",location:"Earth",conditionText:"Hello! How are you today?",enterBtn:"Search",searchPlaceholder:"Your query...",searchWithHint:"Search With",ai_tools:"AI Tools",userText:"Double tap to edit"},pt:{feedback:"Feedback",resetsettings:"Redefinir Configurações",shortcutsText:"Atalhos",enableShortcutsText:"Ativar/desativar atalhos",editShortcutsText:"Editar Atalhos",editShortcutsList:"Editar Atalhos",shortcutsInfoText:"Escolha quais atalhos serão exibidos",adaptiveIconText:"Formas de Ícone Adaptativo",adaptiveIconInfoText:"Os ícones de atalhos serão sempre redondos",ai_tools_button:"Ferramentas de IA",enable_ai_tools:"Ativar/desativar atalhos de ferramentas de IA",digitalclocktittle:"Relógio Digital",digitalclockinfo:"Ativar/desativar o Relógio Digital",timeformattittle:"Usar Formato de 12h",timeformatinfo:"Usar formato de hora de 12 horas",fahrenheitCelsiusCheckbox:"Alternar para Fahrenheit",fahrenheitCelsiusText:"Atualize a página para ver as atualizações",search_suggestions_button:"Sugestões de Pesquisa",search_suggestions_text:"Ativar/desativar Sugestões de Pesquisa",useproxytitletext:"Bypass de Proxy",useproxyText:"Se as sugestões de pesquisa não estiverem funcionando",ProxyText:"Proxy de Bypass CORS",ProxySubtext:"Adicione seu próprio Proxy de Bypass CORS",HostproxyButton:"Hospede Seu Próprio Proxy",saveproxy:"Salvar",UserLocText:"Insira sua localização",UserLocSubtext:"Se a localização do clima não estiver correta",userLoc:"Sua localização (Cidade/Aletitude,Longitude)",InputOptionsButton:"Opções de Entrada",saveLoc:"Salvar",WeatherApiText:"Insira sua própria chave da API de Clima",WeatherApiSubtext:"Se a funcionalidade do clima não estiver funcionando",userAPI:"Sua chave da WeatherAPI",LearnMoreButton:"Saiba Mais",saveAPI:"Salvar API",days:["Domingo","Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],humidityText:"Umidade",feelsLike:"Sensação de",location:"Terra",conditionText:"Olá! Como você está hoje?",enterBtn:"Entrar",searchPlaceholder:"Digite sua consulta...",searchWithHint:"Pesquisar Com",ai_tools:"Ferramentas de IA",userText:"Toque duas vezes para editar"},zh:{feedback:"反馈",resetsettings:"重置设置",shortcutsText:"快捷方式",enableShortcutsText:"启用/禁用快捷方式",editShortcutsText:"编辑快捷方式",editShortcutsList:"编辑快捷方式",shortcutsInfoText:"选择要显示的快捷方式",adaptiveIconText:"自适应图标形状",adaptiveIconInfoText:"快捷方式图标将始终为圆形",ai_tools_button:"AI工具",enable_ai_tools:"启用/禁用AI工具快捷方式",digitalclocktittle:"数字时钟",digitalclockinfo:"启用/禁用数字时钟",timeformattittle:"使用12小时格式",timeformatinfo:"使用12小时制时间格式",fahrenheitCelsiusCheckbox:"切换到华氏温度",fahrenheitCelsiusText:"刷新页面以查看更新",search_suggestions_button:"搜索建议",search_suggestions_text:"启用/禁用搜索建议",useproxytitletext:"代理绕过",useproxyText:"如果搜索建议无法正常工作",ProxyText:"CORS绕过代理",ProxySubtext:"添加您自己的CORS绕过代理",HostproxyButton:"托管您自己的代理",saveproxy:"保存",UserLocText:"输入您的位置",UserLocSubtext:"如果天气位置不正确",userLoc:"您的位置(城市/纬度,经度)",InputOptionsButton:"输入选项",saveLoc:"保存",WeatherApiText:"输入您自己的天气API密钥",WeatherApiSubtext:"如果天气功能无法正常工作",userAPI:"您的天气API密钥",LearnMoreButton:"了解更多",saveAPI:"保存API",days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],humidityText:"湿度",feelsLike:"体感温度",location:"地球",conditionText:"你好!今天怎么样?",enterBtn:"输入",searchPlaceholder:"输入搜索内容...",searchWithHint:"搜索引擎",ai_tools:"AI工具",userText:"双击可编辑"},hi:{feedback:"प्रतिक्रिया",resetsettings:"सेटिंग्स रीसेट करें",shortcutsText:"शॉर्टकट्स",enableShortcutsText:"शॉर्टकट्स सक्षम/अक्षम करें",editShortcutsText:"शॉर्टकट्स संपादित करें",editShortcutsList:"शॉर्टकट्स संपादित करें",shortcutsInfoText:"कौन से शॉर्टकट्स दिखाए जाएँ, चुनें",adaptiveIconText:"अनुकूल आइकन आकृतियाँ",adaptiveIconInfoText:"शॉर्टकट आइकन हमेशा गोल होंगे",ai_tools_button:"AI-उपकरण",enable_ai_tools:"AI उपकरणों के शॉर्टकट्स सक्षम/अक्षम करें",digitalclocktittle:"डिजिटल घड़ी",digitalclockinfo:"डिजिटल घड़ी को सक्षम/अक्षम करें",timeformattittle:"12 घंटे का प्रारूप उपयोग करें",timeformatinfo:"12 घंटे का समय प्रारूप उपयोग करें",fahrenheitCelsiusCheckbox:"तापमान फारेनहाइट में बदलें",fahrenheitCelsiusText:"बदलाव के लिए पृष्ठ को रीफ्रेश करें",search_suggestions_button:"खोज सुझाव",search_suggestions_text:"खोज सुझाव सक्षम/अक्षम करें",useproxytitletext:"प्रॉक्सी बायपास",useproxyText:"यदि खोज सुझाव काम नहीं कर रहे हैं",ProxyText:"CORS बायपास प्रॉक्सी",ProxySubtext:"अपना CORS बायपास प्रॉक्सी जोड़ें",HostproxyButton:"अपना प्रॉक्सी संचालित करें",saveproxy:"दर्ज करें",UserLocText:"अपना स्थान दर्ज करें",UserLocSubtext:"यदि मौसम स्थान सटीक नहीं है",userLoc:"आपका स्थान (शहर/अक्षांश,देशांतर)",InputOptionsButton:"इनपुट विकल्प",saveLoc:"दर्ज करें",WeatherApiText:"अपनी खुद की WeatherAPI कुंजी दर्ज करें",WeatherApiSubtext:"यदि मौसम सुविधा काम नहीं कर रही है",userAPI:"आपकी WeatherAPI कुंजी",LearnMoreButton:"और जानें",saveAPI:"दर्ज करें",days:["रवि","सोम","मंगल","बुध","गुरु","शुक्र","शनि"],months:["जनवरी","फ़रवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्टूबर","नवंबर","दिसंबर"],humidityText:"नमी",feelsLike:"महसूस",location:"पृथ्वी",conditionText:"नमस्ते! आप आज कैसे हैं?",enterBtn:"सर्च करें",searchPlaceholder:"यहाँ लिखें...",searchWithHint:"खोज माध्यम",ai_tools:"AI उपकरण",userText:"यहाँ अपना टेक्स्ट लिखें"},cs:{feedback:"Zpětná vazba",resetsettings:"Resetovat nastavení",shortcutsText:"Zkratky",enableShortcutsText:"Povolí/zakáže zkratky",editShortcutsText:"Upravit zkratky",editShortcutsList:"Upravit zkratky",shortcutsInfoText:"Vyberte, které zkratky se mají zobrazit",adaptiveIconText:"Adaptivní tvary ikon",adaptiveIconInfoText:"Ikony zkratek budou vždy kulaté",ai_tools_button:"AI nástroje",enable_ai_tools:"Povolí/zakáže zkratky AI nástrojů",digitalclocktittle:"Digitální hodiny",digitalclockinfo:"Povolí/zakáže digitální hodiny",timeformattittle:"Použít 12hodinový formát",timeformatinfo:"Použije 12hodinový formát času",fahrenheitCelsiusCheckbox:"Přepnout na stupně Fahrenheita",fahrenheitCelsiusText:"Změny se projeví po obnovení stránky",search_suggestions_button:"Návrhy vyhledávání",search_suggestions_text:"Povolí/zakáže návrhy vyhledávání",useproxytitletext:"Obcházení proxy",useproxyText:"Pokud nefungují návrhy vyhledávání",ProxyText:"Proxy pro obcházení CORS",ProxySubtext:"Přidejte vlastní proxy pro obcházení CORS",HostproxyButton:"Provozování vlastní proxy",saveproxy:"Uložit",UserLocText:"Zadejte svou polohu",UserLocSubtext:"Pokud není poloha počasí správná",userLoc:"Vaše poloha (město / zeměpisná šířka, zeměpisná délka)",InputOptionsButton:"Co lze zadat",saveLoc:"Uložit",WeatherApiText:"Zadejte svůj klíč k WeatherAPI",WeatherApiSubtext:"Pokud nefunguje funkce počasí",userAPI:"Váš klíč k WeatherAPI",LearnMoreButton:"Zjistit více",saveAPI:"Uložit",days:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota"],months:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],humidityText:"Vlhkost",feelsLike:"Pocitová teplota",location:"Země",conditionText:"Dobrý den! Jak se máte?",enterBtn:"Vyhledat",searchPlaceholder:"Zadejte hledaný výraz...",searchWithHint:"Vyhledávat prostřednictvím",ai_tools:"AI nástroje",userText:"Upravíte dvojklikem"},it:{feedback:"Feedback",resetsettings:"Reimposta Impostazioni",shortcutsText:"Scorciatoie",enableShortcutsText:"Abilita/disabilita scorciatoie",editShortcutsText:"Modifica Scorciatoie",editShortcutsList:"Modifica Scorciatoie",shortcutsInfoText:"Scegli quali scorciatoie mostrare",adaptiveIconText:"Forme di Icona Adattiva",adaptiveIconInfoText:"Le icone delle scorciatoie saranno sempre rotonde",ai_tools_button:"Strumenti AI",enable_ai_tools:"Abilita/disabilita scorciatoie Strumenti AI",digitalclocktittle:"Orologio Digitale",digitalclockinfo:"Abilita/disabilita Orologio Digitale",timeformattittle:"Usa formato 12h",timeformatinfo:"Usa formato orario a 12 ore",fahrenheitCelciusCheckbox:"Passa a Fahrenheit",fahrenheitCelciusText:"Ricarica la pagina per vedere gli aggiornamenti",search_suggestions_button:"Suggerimenti di Ricerca",search_suggestions_text:"Abilita/disabilita Suggerimenti di Ricerca",useproxytitletext:"Bypass Proxy",useproxyText:"Se i suggerimenti di ricerca non funzionano",ProxyText:"Proxy di Bypass CORS",ProxySubtext:"Aggiungi il tuo Proxy di Bypass CORS",HostproxyButton:"Hosta il Tuo Proxy",saveproxy:"Invia",UserLocText:"Inserisci la tua posizione",UserLocSubtext:"Se la posizione meteo non è corretta",userLoc:"La tua posizione (Città/Latitudine,Longitudine)",InputOptionsButton:"Opzioni di Inserimento",saveLoc:"Invia",WeatherApiText:"Inserisci la tua chiave WeatherAPI",WeatherApiSubtext:"Se la funzionalità meteo non funziona",userAPI:"La tua chiave WeatherAPI",LearnMoreButton:"Scopri di più",saveAPI:"Invia",days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],humidityText:"Umidità",feelsLike:"Percepito",location:"Terra",conditionText:"Ciao! Come stai oggi?",enterBtn:"Invia",searchPlaceholder:"Cerca...",searchWithHint:"Cerca con",ai_tools:"Strumenti AI",userText:"Clicca per modificare"},tr:{feedback:"Geri Bildirim",resetsettings:"Ayarları Sıfırla",shortcutsText:"Kısayollar",enableShortcutsText:"Kısayolları etkinleştir/devre dışı bırak",editShortcutsText:"Kısayolları Düzenle",editShortcutsList:"Kısayolları Düzenle",shortcutsInfoText:"Hangi kısayolların gösterileceğini seçin",adaptiveIconText:"Uyarlanabilir İkon Şekilleri",adaptiveIconInfoText:"Kısayol İkonları her zaman yuvarlak olacak",ai_tools_button:"AI Araçları",enable_ai_tools:"AI Araçları kısayollarını etkinleştir/devre dışı bırak",digitalclocktittle:"Dijital Saat",digitalclockinfo:"Dijital Saati etkinleştir/devre dışı bırak",timeformattittle:"12 saat Formatını Kullanın",timeformatinfo:"12 saat zaman formatını kullanın",fahrenheitCelsiusCheckbox:"Fahrenheit'a geç",fahrenheitCelsiusText:"Güncellemeleri görmek için sayfayı yenileyin",search_suggestions_button:"Arama Önerileri",search_suggestions_text:"Arama Önerilerini etkinleştir/devre dışı bırak",useproxytitletext:"Proxy Atlatma",useproxyText:"Eğer arama önerileri çalışmıyorsa",ProxyText:"CORS Atlatma Proxy",ProxySubtext:"Kendi CORS Atlatma Proxy'nizi ekleyin",HostproxyButton:"Kendi Proxy'nizi Barındırın",saveproxy:"Gönder",UserLocText:"Konumunuzu girin",UserLocSubtext:"Hava durumu konumu doğru değilse",userLoc:"Konumunuz (Şehir/Enlem,Boylam)",InputOptionsButton:"Girdi Seçenekleri",saveLoc:"Gönder",WeatherApiText:"Kendi Hava Durumu API anahtarınızı girin",WeatherApiSubtext:"Hava durumu işlevi çalışmıyorsa",userAPI:"Hava Durumu API anahtarınız",LearnMoreButton:"Daha Fazla Bilgi Edinin",saveAPI:"API'yi Kaydet",days:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],humidityText:"Nem",feelsLike:"Hissedilen",location:"Dünya",conditionText:"Merhaba! Bugün nasılsın?",enterBtn:"Gönder",searchPlaceholder:"Aramanız...",searchWithHint:"ile Ara",ai_tools:"AI Araçları",userText:"Düzenlemek için çift dokunun"},bn:{feedback:"প্রতিক্রিয়া",resetsettings:"সেটিংস রিসেট করুন",shortcutsText:"শর্টকাট",enableShortcutsText:"শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন",editShortcutsText:"শর্টকাট সম্পাদনা করুন",editShortcutsList:"শর্টকাট সম্পাদনা তালিকা",shortcutsInfoText:"যেসব শর্টকাট প্রদর্শিত হবে তা নির্বাচন করুন",adaptiveIconText:"অ্যাডাপ্টিভ আইকন আকার",adaptiveIconInfoText:"শর্টকাট আইকন সর্বদা গোলাকার থাকবে",ai_tools_button:"AI সরঞ্জাম",enable_ai_tools:"AI সরঞ্জাম শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন",digitalclocktittle:"ডিজিটাল ঘড়ি",digitalclockinfo:"ডিজিটাল ঘড়ি সক্রিয়/নিষ্ক্রিয় করুন",timeformattittle:"১২ ঘণ্টার ফরম্যাট ব্যবহার করুন",timeformatinfo:"১২ ঘণ্টার সময় ফরম্যাট ব্যবহার করুন",fahrenheitCelsiusCheckbox:"ফারেনহাইটে পরিবর্তন করুন",fahrenheitCelsiusText:"আপডেট দেখতে পৃষ্ঠা রিফ্রেশ করুন",search_suggestions_button:"অনুসন্ধানের পরামর্শ",search_suggestions_text:"অনুসন্ধানের পরামর্শ সক্রিয়/নিষ্ক্রিয় করুন",useproxytitletext:"প্রক্সি বাইপাস",useproxyText:"যদি অনুসন্ধানের পরামর্শ কাজ না করে",ProxyText:"CORS বাইপাস প্রক্সি",ProxySubtext:"আপনার নিজের CORS বাইপাস প্রক্সি যোগ করুন",HostproxyButton:"আপনার নিজের প্রক্সি হোস্ট করুন",saveproxy:"প্রবেশ করুন",UserLocText:"আপনার অবস্থান লিখুন",UserLocSubtext:"যদি আবহাওয়ার অবস্থান সঠিক না হয়",userLoc:"আপনার অবস্থান (শহর/অক্ষাংশ,দ্রাঘিমাংশ)",InputOptionsButton:"ইনপুট অপশন",saveLoc:"প্রবেশ করুন",WeatherApiText:"আপনার নিজস্ব WeatherAPI কী লিখুন",WeatherApiSubtext:"যদি আবহাওয়া ফিচার কাজ না করে",userAPI:"আপনার WeatherAPI কী",LearnMoreButton:"আরও জানুন",saveAPI:"প্রবেশ করুন",days:["রবি","সোম","মঙ্গল","বুধ","বৃহস্পতি","শুক্র","শনি"],months:["জানুয়ারি","ফেব্রুয়ারি","মার্চ","এপ্রিল","মে","জুন","জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর"],humidityText:"আর্দ্রতা",feelsLike:"অনুভূত হয়",location:"পৃথিবী",conditionText:"হ্যালো! আপনি আজ কেমন আছেন?",enterBtn:"প্রবেশ করুন",searchPlaceholder:"আপনার প্রশ্ন লিখুন...",searchWithHint:"অনুসন্ধান করুন",ai_tools:"AI সরঞ্জাম",userText:"সম্পাদনা করতে ডবল ট্যাপ করুন"},ru:{feedback:"Обратная связь",resetsettings:"Сброс настроек",shortcutsText:"Ярлыки",enableShortcutsText:"Включить/Отключить ярлыки",editShortcutsText:"Редактировать ярлыки",editShortcutsList:"Редактировать ярлыки",shortcutsInfoText:"Выберите, какие ярлыки будут отображаться",adaptiveIconText:"Адаптивные формы значков",adaptiveIconInfoText:"Ярлыки всегда будут круглыми",ai_tools_button:"Инструменты ИИ",enable_ai_tools:"Включить/Отключить ярлыки инструментов ИИ",digitalclocktittle:"Цифровые часы",digitalclockinfo:"Включить/Отключить цифровые часы",timeformattittle:"12-часовой формат",timeformatinfo:"Использовать 12-часовой формат времени",fahrenheitCelsiusCheckbox:"Переключить на Фаренгейт",fahrenheitCelsiusText:"Обновите страницу, чтобы увидеть изменения",search_suggestions_button:"Поисковые подсказки",search_suggestions_text:"Включить/Отключить поисковые подсказки",useproxytitletext:"Использовать прокси",useproxyText:"Если поисковые подсказки не работают",ProxyText:"CORS обход прокси",ProxySubtext:"Добавьте свой CORS-прокси",HostproxyButton:"Разместить свой прокси",saveproxy:"Применить",UserLocText:"Введите ваше местоположение",UserLocSubtext:"Если местоположение для погоды неверно",userLoc:"Ваше местоположение (Город/Широта,Долгота)",InputOptionsButton:"Опции ввода",saveLoc:"Применить",WeatherApiText:"Введите свой ключ WeatherAPI",WeatherApiSubtext:"Если функция погоды не работает",userAPI:"Ваш ключ WeatherAPI",LearnMoreButton:"Узнать больше",saveAPI:"Применить",days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],humidityText:"Влажность",feelsLike:"Ощущается как",location:"Земля",conditionText:"Привет! Как ты сегодня?",enterBtn:"Ввод",searchPlaceholder:"Ваш запрос...",searchWithHint:"Искать с помощью",ai_tools:"Инструменты ИИ",userText:"Дважды нажмите для редактирования"}};function Ci(o){_[o]?(document.getElementById("feedbackbtntext").innerText=_[o].feedback,document.getElementById("resetsettingstext").innerText=_[o].resetsettings,document.getElementById("shortcutsText").innerText=_[o].shortcutsText,document.getElementById("enableShortcutsText").innerText=_[o].enableShortcutsText,document.getElementById("editShortcutsText").innerText=_[o].editShortcutsText,document.getElementById("editShortcutsList").innerText=_[o].editShortcutsList,document.getElementById("shortcutsInfoText").innerText=_[o].shortcutsInfoText,document.getElementById("adaptiveIconText").innerText=_[o].adaptiveIconText,document.getElementById("adaptiveIconInfoText").innerText=_[o].adaptiveIconInfoText,document.getElementById("ai_tools_button").innerText=_[o].ai_tools_button,document.getElementById("enable_ai_tools").innerText=_[o].enable_ai_tools,document.getElementById("fahrenheitCelsiusCheckbox").innerText=_[o].fahrenheitCelsiusCheckbox,document.getElementById("fahrenheitCelsiusText").innerText=_[o].fahrenheitCelsiusText,document.getElementById("search_suggestions_button").innerText=_[o].search_suggestions_button,document.getElementById("search_suggestions_text").innerText=_[o].search_suggestions_text,document.getElementById("digitalclocktittle").innerText=_[o].digitalclocktittle,document.getElementById("digitalclockinfo").innerText=_[o].digitalclockinfo,document.getElementById("timeformattittle").innerText=_[o].timeformattittle,document.getElementById("timeformatinfo").innerText=_[o].timeformatinfo,document.getElementById("useproxytitletext").innerText=_[o].useproxytitletext,document.getElementById("useproxyText").innerText=_[o].useproxyText,document.getElementById("ProxySubtext").innerText=_[o].ProxySubtext,document.getElementById("HostproxyButton").innerText=_[o].HostproxyButton,document.getElementById("saveproxy").innerText=_[o].saveproxy,document.getElementById("UserLocSubtext").innerText=_[o].UserLocSubtext,document.getElementById("userLoc").placeholder=_[o].userLoc,document.getElementById("InputOptionsButton").innerText=_[o].InputOptionsButton,document.getElementById("saveLoc").innerText=_[o].saveLoc,document.getElementById("WeatherApiSubtext").innerText=_[o].WeatherApiSubtext,document.getElementById("userAPI").placeholder=_[o].userAPI,document.getElementById("LearnMoreButton").innerText=_[o].LearnMoreButton,document.getElementById("saveAPI").innerText=_[o].saveAPI,document.getElementById("conditionText").innerText=_[o].conditionText,document.getElementById("enterBtn").innerText=_[o].enterBtn,document.getElementById("searchQ").placeholder=_[o].searchPlaceholder,document.getElementById("searchWithHint").innerText=_[o].searchWithHint,document.getElementById("ai_tools").innerText=_[o].ai_tools,document.getElementById("userTextt").placeholder=_[o].userText,document.getElementById("humidityLevel").innerText=_[o].humidityText,document.getElementById("feelsLike").innerText=_[o].feelsLike,document.getElementById("location").innerText=_[o].location,Pa("selectedLanguage",o)):console.error("Language not found")}document.getElementById("languageSelector").addEventListener("change",o=>{Ci(o.target.value),location.reload()});window.onload=function(){const o=Ma("selectedLanguage")||"en";o&&(document.getElementById("languageSelector").value=o),Ci(o)};function Pa(o,e){localStorage.setItem(o,e)}function Ma(o){return localStorage.getItem(o)}function n(o,e,t,r){var i=arguments.length,a=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")a=Reflect.decorate(o,e,t,r);else for(var d=o.length-1;d>=0;d--)(s=o[d])&&(a=(i<3?s(a):i>3?s(e,t,a):s(e,t))||a);return i>3&&a&&Object.defineProperty(e,t,a),a}/** +(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))o(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const n of a.addedNodes)n.tagName==="LINK"&&n.rel==="modulepreload"&&o(n)}).observe(document,{childList:!0,subtree:!0});function t(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function o(i){if(i.ep)return;i.ep=!0;const a=t(i);fetch(i.href,a)}})();function l(r,e,t,o){var i=arguments.length,a=i<3?e:o===null?o=Object.getOwnPropertyDescriptor(e,t):o,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")a=Reflect.decorate(r,e,t,o);else for(var s=r.length-1;s>=0;s--)(n=r[s])&&(a=(i<3?n(a):i>3?n(e,t,a):n(e,t))||a);return i>3&&a&&Object.defineProperty(e,t,a),a}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const w=o=>(e,t)=>{t!==void 0?t.addInitializer(()=>{customElements.define(o,e)}):customElements.define(o,e)};/** + */const S=r=>(e,t)=>{t!==void 0?t.addInitializer(()=>{customElements.define(r,e)}):customElements.define(r,e)};/** * @license * Copyright 2019 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const er=globalThis,Bo=er.ShadowRoot&&(er.ShadyCSS===void 0||er.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Oo=Symbol(),Zo=new WeakMap;let Ei=class{constructor(e,t,r){if(this._$cssResult$=!0,r!==Oo)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(Bo&&e===void 0){const r=t!==void 0&&t.length===1;r&&(e=Zo.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),r&&Zo.set(t,e))}return e}toString(){return this.cssText}};const Da=o=>new Ei(typeof o=="string"?o:o+"",void 0,Oo),x=(o,...e)=>{const t=o.length===1?o[0]:e.reduce((r,i,a)=>r+(s=>{if(s._$cssResult$===!0)return s.cssText;if(typeof s=="number")return s;throw Error("Value passed to 'css' function must be a 'css' function result: "+s+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[a+1],o[0]);return new Ei(t,o,Oo)},Fa=(o,e)=>{if(Bo)o.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(const t of e){const r=document.createElement("style"),i=er.litNonce;i!==void 0&&r.setAttribute("nonce",i),r.textContent=t.cssText,o.appendChild(r)}},Qo=Bo?o=>o:o=>o instanceof CSSStyleSheet?(e=>{let t="";for(const r of e.cssRules)t+=r.cssText;return Da(t)})(o):o;/** + */const xo=globalThis,hi=xo.ShadowRoot&&(xo.ShadyCSS===void 0||xo.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,ui=Symbol(),Fi=new WeakMap;let wa=class{constructor(e,t,o){if(this._$cssResult$=!0,o!==ui)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(hi&&e===void 0){const o=t!==void 0&&t.length===1;o&&(e=Fi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),o&&Fi.set(t,e))}return e}toString(){return this.cssText}};const Dn=r=>new wa(typeof r=="string"?r:r+"",void 0,ui),_=(r,...e)=>{const t=r.length===1?r[0]:e.reduce((o,i,a)=>o+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+r[a+1],r[0]);return new wa(t,r,ui)},Mn=(r,e)=>{if(hi)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(const t of e){const o=document.createElement("style"),i=xo.litNonce;i!==void 0&&o.setAttribute("nonce",i),o.textContent=t.cssText,r.appendChild(o)}},Ni=hi?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(const o of e.cssRules)t+=o.cssText;return Dn(t)})(r):r;/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const{is:Na,defineProperty:Ua,getOwnPropertyDescriptor:Ha,getOwnPropertyNames:qa,getOwnPropertySymbols:Va,getPrototypeOf:Wa}=Object,Ne=globalThis,Jo=Ne.trustedTypes,Ka=Jo?Jo.emptyScript:"",xr=Ne.reactiveElementPolyfillSupport,bt=(o,e)=>o,rr={toAttribute(o,e){switch(e){case Boolean:o=o?Ka:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,e){let t=o;switch(e){case Boolean:t=o!==null;break;case Number:t=o===null?null:Number(o);break;case Object:case Array:try{t=JSON.parse(o)}catch{t=null}}return t}},Po=(o,e)=>!Na(o,e),ei={attribute:!0,type:String,converter:rr,reflect:!1,hasChanged:Po};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Ne.litPropertyMetadata??(Ne.litPropertyMetadata=new WeakMap);class nt extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??(this.l=[])).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=ei){if(t.state&&(t.attribute=!1),this._$Ei(),this.elementProperties.set(e,t),!t.noAccessor){const r=Symbol(),i=this.getPropertyDescriptor(e,r,t);i!==void 0&&Ua(this.prototype,e,i)}}static getPropertyDescriptor(e,t,r){const{get:i,set:a}=Ha(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get(){return i==null?void 0:i.call(this)},set(s){const d=i==null?void 0:i.call(this);a.call(this,s),this.requestUpdate(e,d,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??ei}static _$Ei(){if(this.hasOwnProperty(bt("elementProperties")))return;const e=Wa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(bt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(bt("properties"))){const t=this.properties,r=[...qa(t),...Va(t)];for(const i of r)this.createProperty(i,t[i])}const e=this[Symbol.metadata];if(e!==null){const t=litPropertyMetadata.get(e);if(t!==void 0)for(const[r,i]of t)this.elementProperties.set(r,i)}this._$Eh=new Map;for(const[t,r]of this.elementProperties){const i=this._$Eu(t,r);i!==void 0&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const r=new Set(e.flat(1/0).reverse());for(const i of r)t.unshift(Qo(i))}else e!==void 0&&t.push(Qo(e));return t}static _$Eu(e,t){const r=t.attribute;return r===!1?void 0:typeof r=="string"?r:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var e;this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),(e=this.constructor.l)==null||e.forEach(t=>t(this))}addController(e){var t;(this._$EO??(this._$EO=new Set)).add(e),this.renderRoot!==void 0&&this.isConnected&&((t=e.hostConnected)==null||t.call(e))}removeController(e){var t;(t=this._$EO)==null||t.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const r of t.keys())this.hasOwnProperty(r)&&(e.set(r,this[r]),delete this[r]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Fa(e,this.constructor.elementStyles),e}connectedCallback(){var e;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(e=this._$EO)==null||e.forEach(t=>{var r;return(r=t.hostConnected)==null?void 0:r.call(t)})}enableUpdating(e){}disconnectedCallback(){var e;(e=this._$EO)==null||e.forEach(t=>{var r;return(r=t.hostDisconnected)==null?void 0:r.call(t)})}attributeChangedCallback(e,t,r){this._$AK(e,r)}_$EC(e,t){var a;const r=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,r);if(i!==void 0&&r.reflect===!0){const s=(((a=r.converter)==null?void 0:a.toAttribute)!==void 0?r.converter:rr).toAttribute(t,r.type);this._$Em=e,s==null?this.removeAttribute(i):this.setAttribute(i,s),this._$Em=null}}_$AK(e,t){var a;const r=this.constructor,i=r._$Eh.get(e);if(i!==void 0&&this._$Em!==i){const s=r.getPropertyOptions(i),d=typeof s.converter=="function"?{fromAttribute:s.converter}:((a=s.converter)==null?void 0:a.fromAttribute)!==void 0?s.converter:rr;this._$Em=i,this[i]=d.fromAttribute(t,s.type),this._$Em=null}}requestUpdate(e,t,r){if(e!==void 0){if(r??(r=this.constructor.getPropertyOptions(e)),!(r.hasChanged??Po)(this[e],t))return;this.P(e,t,r)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(e,t,r){this._$AL.has(e)||this._$AL.set(e,t),r.reflect===!0&&this._$Em!==e&&(this._$Ej??(this._$Ej=new Set)).add(e)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var r;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[a,s]of this._$Ep)this[a]=s;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[a,s]of i)s.wrapped!==!0||this._$AL.has(a)||this[a]===void 0||this.P(a,this[a],s)}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),(r=this._$EO)==null||r.forEach(i=>{var a;return(a=i.hostUpdate)==null?void 0:a.call(i)}),this.update(t)):this._$EU()}catch(i){throw e=!1,this._$EU(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){var t;(t=this._$EO)==null||t.forEach(r=>{var i;return(i=r.hostUpdated)==null?void 0:i.call(r)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Ej&&(this._$Ej=this._$Ej.forEach(t=>this._$EC(t,this[t]))),this._$EU()}updated(e){}firstUpdated(e){}}nt.elementStyles=[],nt.shadowRootOptions={mode:"open"},nt[bt("elementProperties")]=new Map,nt[bt("finalized")]=new Map,xr==null||xr({ReactiveElement:nt}),(Ne.reactiveElementVersions??(Ne.reactiveElementVersions=[])).push("2.0.4");/** + */const{is:Fn,defineProperty:Nn,getOwnPropertyDescriptor:Un,getOwnPropertyNames:qn,getOwnPropertySymbols:Hn,getPrototypeOf:Vn}=Object,Ke=globalThis,Ui=Ke.trustedTypes,Kn=Ui?Ui.emptyScript:"",Zo=Ke.reactiveElementPolyfillSupport,Et=(r,e)=>r,wo={toAttribute(r,e){switch(e){case Boolean:r=r?Kn:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,e){let t=r;switch(e){case Boolean:t=r!==null;break;case Number:t=r===null?null:Number(r);break;case Object:case Array:try{t=JSON.parse(r)}catch{t=null}}return t}},pi=(r,e)=>!Fn(r,e),qi={attribute:!0,type:String,converter:wo,reflect:!1,hasChanged:pi};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Ke.litPropertyMetadata??(Ke.litPropertyMetadata=new WeakMap);class pt extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??(this.l=[])).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=qi){if(t.state&&(t.attribute=!1),this._$Ei(),this.elementProperties.set(e,t),!t.noAccessor){const o=Symbol(),i=this.getPropertyDescriptor(e,o,t);i!==void 0&&Nn(this.prototype,e,i)}}static getPropertyDescriptor(e,t,o){const{get:i,set:a}=Un(this.prototype,e)??{get(){return this[t]},set(n){this[t]=n}};return{get(){return i==null?void 0:i.call(this)},set(n){const s=i==null?void 0:i.call(this);a.call(this,n),this.requestUpdate(e,s,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??qi}static _$Ei(){if(this.hasOwnProperty(Et("elementProperties")))return;const e=Vn(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Et("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Et("properties"))){const t=this.properties,o=[...qn(t),...Hn(t)];for(const i of o)this.createProperty(i,t[i])}const e=this[Symbol.metadata];if(e!==null){const t=litPropertyMetadata.get(e);if(t!==void 0)for(const[o,i]of t)this.elementProperties.set(o,i)}this._$Eh=new Map;for(const[t,o]of this.elementProperties){const i=this._$Eu(t,o);i!==void 0&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const o=new Set(e.flat(1/0).reverse());for(const i of o)t.unshift(Ni(i))}else e!==void 0&&t.push(Ni(e));return t}static _$Eu(e,t){const o=t.attribute;return o===!1?void 0:typeof o=="string"?o:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var e;this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),(e=this.constructor.l)==null||e.forEach(t=>t(this))}addController(e){var t;(this._$EO??(this._$EO=new Set)).add(e),this.renderRoot!==void 0&&this.isConnected&&((t=e.hostConnected)==null||t.call(e))}removeController(e){var t;(t=this._$EO)==null||t.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const o of t.keys())this.hasOwnProperty(o)&&(e.set(o,this[o]),delete this[o]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Mn(e,this.constructor.elementStyles),e}connectedCallback(){var e;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(e=this._$EO)==null||e.forEach(t=>{var o;return(o=t.hostConnected)==null?void 0:o.call(t)})}enableUpdating(e){}disconnectedCallback(){var e;(e=this._$EO)==null||e.forEach(t=>{var o;return(o=t.hostDisconnected)==null?void 0:o.call(t)})}attributeChangedCallback(e,t,o){this._$AK(e,o)}_$EC(e,t){var a;const o=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,o);if(i!==void 0&&o.reflect===!0){const n=(((a=o.converter)==null?void 0:a.toAttribute)!==void 0?o.converter:wo).toAttribute(t,o.type);this._$Em=e,n==null?this.removeAttribute(i):this.setAttribute(i,n),this._$Em=null}}_$AK(e,t){var a;const o=this.constructor,i=o._$Eh.get(e);if(i!==void 0&&this._$Em!==i){const n=o.getPropertyOptions(i),s=typeof n.converter=="function"?{fromAttribute:n.converter}:((a=n.converter)==null?void 0:a.fromAttribute)!==void 0?n.converter:wo;this._$Em=i,this[i]=s.fromAttribute(t,n.type),this._$Em=null}}requestUpdate(e,t,o){if(e!==void 0){if(o??(o=this.constructor.getPropertyOptions(e)),!(o.hasChanged??pi)(this[e],t))return;this.P(e,t,o)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(e,t,o){this._$AL.has(e)||this._$AL.set(e,t),o.reflect===!0&&this._$Em!==e&&(this._$Ej??(this._$Ej=new Set)).add(e)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var o;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[a,n]of this._$Ep)this[a]=n;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[a,n]of i)n.wrapped!==!0||this._$AL.has(a)||this[a]===void 0||this.P(a,this[a],n)}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),(o=this._$EO)==null||o.forEach(i=>{var a;return(a=i.hostUpdate)==null?void 0:a.call(i)}),this.update(t)):this._$EU()}catch(i){throw e=!1,this._$EU(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){var t;(t=this._$EO)==null||t.forEach(o=>{var i;return(i=o.hostUpdated)==null?void 0:i.call(o)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Ej&&(this._$Ej=this._$Ej.forEach(t=>this._$EC(t,this[t]))),this._$EU()}updated(e){}firstUpdated(e){}}pt.elementStyles=[],pt.shadowRootOptions={mode:"open"},pt[Et("elementProperties")]=new Map,pt[Et("finalized")]=new Map,Zo==null||Zo({ReactiveElement:pt}),(Ke.reactiveElementVersions??(Ke.reactiveElementVersions=[])).push("2.0.4");/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const ja={attribute:!0,type:String,converter:rr,reflect:!1,hasChanged:Po},Ga=(o=ja,e,t)=>{const{kind:r,metadata:i}=t;let a=globalThis.litPropertyMetadata.get(i);if(a===void 0&&globalThis.litPropertyMetadata.set(i,a=new Map),a.set(t.name,o),r==="accessor"){const{name:s}=t;return{set(d){const c=e.get.call(this);e.set.call(this,d),this.requestUpdate(s,c,o)},init(d){return d!==void 0&&this.P(s,void 0,o),d}}}if(r==="setter"){const{name:s}=t;return function(d){const c=this[s];e.call(this,d),this.requestUpdate(s,c,o)}}throw Error("Unsupported decorator location: "+r)};function l(o){return(e,t)=>typeof t=="object"?Ga(o,e,t):((r,i,a)=>{const s=i.hasOwnProperty(a);return i.constructor.createProperty(a,s?{...r,wrapped:!0}:r),s?Object.getOwnPropertyDescriptor(i,a):void 0})(o,e,t)}/** + */const Wn={attribute:!0,type:String,converter:wo,reflect:!1,hasChanged:pi},jn=(r=Wn,e,t)=>{const{kind:o,metadata:i}=t;let a=globalThis.litPropertyMetadata.get(i);if(a===void 0&&globalThis.litPropertyMetadata.set(i,a=new Map),a.set(t.name,r),o==="accessor"){const{name:n}=t;return{set(s){const d=e.get.call(this);e.set.call(this,s),this.requestUpdate(n,d,r)},init(s){return s!==void 0&&this.P(n,void 0,r),s}}}if(o==="setter"){const{name:n}=t;return function(s){const d=this[n];e.call(this,s),this.requestUpdate(n,d,r)}}throw Error("Unsupported decorator location: "+o)};function c(r){return(e,t)=>typeof t=="object"?jn(r,e,t):((o,i,a)=>{const n=i.hasOwnProperty(a);return i.constructor.createProperty(a,n?{...o,wrapped:!0}:o),n?Object.getOwnPropertyDescriptor(i,a):void 0})(r,e,t)}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function z(o){return l({...o,state:!0,attribute:!1})}/** + */function M(r){return c({...r,state:!0,attribute:!1})}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const Ct=(o,e,t)=>(t.configurable=!0,t.enumerable=!0,Reflect.decorate&&typeof e!="object"&&Object.defineProperty(o,e,t),t);/** + */const Ot=(r,e,t)=>(t.configurable=!0,t.enumerable=!0,Reflect.decorate&&typeof e!="object"&&Object.defineProperty(r,e,t),t);/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function E(o,e){return(t,r,i)=>{const a=s=>{var d;return((d=s.renderRoot)==null?void 0:d.querySelector(o))??null};return Ct(t,r,{get(){return a(this)}})}}/** + */function B(r,e){return(t,o,i)=>{const a=n=>{var s;return((s=n.renderRoot)==null?void 0:s.querySelector(r))??null};return Ot(t,o,{get(){return a(this)}})}}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */let Xa;function Ya(o){return(e,t)=>Ct(e,t,{get(){return(this.renderRoot??Xa??(Xa=document.createDocumentFragment())).querySelectorAll(o)}})}/** + */let Gn;function Xn(r){return(e,t)=>Ot(e,t,{get(){return(this.renderRoot??Gn??(Gn=document.createDocumentFragment())).querySelectorAll(r)}})}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function Ii(o){return(e,t)=>Ct(e,t,{async get(){var r;return await this.updateComplete,((r=this.renderRoot)==null?void 0:r.querySelector(o))??null}})}/** + */function ka(r){return(e,t)=>Ot(e,t,{async get(){var o;return await this.updateComplete,((o=this.renderRoot)==null?void 0:o.querySelector(r))??null}})}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function ee(o){return(e,t)=>{const{slot:r,selector:i}=o??{},a="slot"+(r?`[name=${r}]`:":not([name])");return Ct(e,t,{get(){var c;const s=(c=this.renderRoot)==null?void 0:c.querySelector(a),d=(s==null?void 0:s.assignedElements(o))??[];return i===void 0?d:d.filter(f=>f.matches(i))}})}}/** + */function oe(r){return(e,t)=>{const{slot:o,selector:i}=r??{},a="slot"+(o?`[name=${o}]`:":not([name])");return Ot(e,t,{get(){var d;const n=(d=this.renderRoot)==null?void 0:d.querySelector(a),s=(n==null?void 0:n.assignedElements(r))??[];return i===void 0?s:s.filter(h=>h.matches(i))}})}}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function Mo(o){return(e,t)=>{const{slot:r}=o??{},i="slot"+(r?`[name=${r}]`:":not([name])");return Ct(e,t,{get(){var s;const a=(s=this.renderRoot)==null?void 0:s.querySelector(i);return(a==null?void 0:a.assignedNodes(o))??[]}})}}/** + */function vi(r){return(e,t)=>{const{slot:o}=r??{},i="slot"+(o?`[name=${o}]`:":not([name])");return Ot(e,t,{get(){var n;const a=(n=this.renderRoot)==null?void 0:n.querySelector(i);return(a==null?void 0:a.assignedNodes(r))??[]}})}}/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const yt=globalThis,or=yt.trustedTypes,ti=or?or.createPolicy("lit-html",{createHTML:o=>o}):void 0,Ti="$lit$",Fe=`lit$${Math.random().toFixed(9).slice(2)}$`,Si="?"+Fe,Za=`<${Si}>`,Qe=document,gt=()=>Qe.createComment(""),xt=o=>o===null||typeof o!="object"&&typeof o!="function",Do=Array.isArray,Qa=o=>Do(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",_r=`[ -\f\r]`,vt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ri=/-->/g,oi=/>/g,Ye=RegExp(`>|${_r}(?:([^\\s"'>=/]+)(${_r}*=${_r}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),ii=/'/g,ai=/"/g,Ai=/^(?:script|style|textarea|title)$/i,Ja=o=>(e,...t)=>({_$litType$:o,strings:e,values:t}),p=Ja(1),ye=Symbol.for("lit-noChange"),h=Symbol.for("lit-nothing"),ni=new WeakMap,Ze=Qe.createTreeWalker(Qe,129);function $i(o,e){if(!Do(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return ti!==void 0?ti.createHTML(e):e}const en=(o,e)=>{const t=o.length-1,r=[];let i,a=e===2?"":e===3?"":"",s=vt;for(let d=0;d"?(s=i??vt,u=-1):v[1]===void 0?u=-2:(u=s.lastIndex-v[2].length,f=v[1],s=v[3]===void 0?Ye:v[3]==='"'?ai:ii):s===ai||s===ii?s=Ye:s===ri||s===oi?s=vt:(s=Ye,i=void 0);const g=s===Ye&&o[d+1].startsWith("/>")?" ":"";a+=s===vt?c+Za:u>=0?(r.push(f),c.slice(0,u)+Ti+c.slice(u)+Fe+g):c+Fe+(u===-2?d:g)}return[$i(o,a+(o[t]||"")+(e===2?"":e===3?"":"")),r]};class _t{constructor({strings:e,_$litType$:t},r){let i;this.parts=[];let a=0,s=0;const d=e.length-1,c=this.parts,[f,v]=en(e,t);if(this.el=_t.createElement(f,r),Ze.currentNode=this.el.content,t===2||t===3){const u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(i=Ze.nextNode())!==null&&c.length0){i.textContent=or?or.emptyScript:"";for(let g=0;g2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=h}_$AI(e,t=this,r,i){const a=this.strings;let s=!1;if(a===void 0)e=dt(this,e,t,0),s=!xt(e)||e!==this._$AH&&e!==ye,s&&(this._$AH=e);else{const d=e;let c,f;for(e=a[0],c=0;c{const r=(t==null?void 0:t.renderBefore)??e;let i=r._$litPart$;if(i===void 0){const a=(t==null?void 0:t.renderBefore)??null;r._$litPart$=i=new Et(e.insertBefore(gt(),a),a,void 0,t??{})}return i._$AI(o),i};/** + */const It=globalThis,ko=It.trustedTypes,Hi=ko?ko.createPolicy("lit-html",{createHTML:r=>r}):void 0,Ca="$lit$",qe=`lit$${Math.random().toFixed(9).slice(2)}$`,Ea="?"+qe,Yn=`<${Ea}>`,ot=document,$t=()=>ot.createComment(""),Lt=r=>r===null||typeof r!="object"&&typeof r!="function",mi=Array.isArray,Zn=r=>mi(r)||typeof(r==null?void 0:r[Symbol.iterator])=="function",Qo=`[ +\f\r]`,kt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Vi=/-->/g,Ki=/>/g,Je=RegExp(`>|${Qo}(?:([^\\s"'>=/]+)(${Qo}*=${Qo}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Wi=/'/g,ji=/"/g,Ia=/^(?:script|style|textarea|title)$/i,Qn=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),m=Qn(1),ge=Symbol.for("lit-noChange"),p=Symbol.for("lit-nothing"),Gi=new WeakMap,et=ot.createTreeWalker(ot,129);function Sa(r,e){if(!mi(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return Hi!==void 0?Hi.createHTML(e):e}const Jn=(r,e)=>{const t=r.length-1,o=[];let i,a=e===2?"":e===3?"":"",n=kt;for(let s=0;s"?(n=i??kt,u=-1):v[1]===void 0?u=-2:(u=n.lastIndex-v[2].length,h=v[1],n=v[3]===void 0?Je:v[3]==='"'?ji:Wi):n===ji||n===Wi?n=Je:n===Vi||n===Ki?n=kt:(n=Je,i=void 0);const y=n===Je&&r[s+1].startsWith("/>")?" ":"";a+=n===kt?d+Yn:u>=0?(o.push(h),d.slice(0,u)+Ca+d.slice(u)+qe+y):d+qe+(u===-2?s:y)}return[Sa(r,a+(r[t]||"")+(e===2?"":e===3?"":"")),o]};class zt{constructor({strings:e,_$litType$:t},o){let i;this.parts=[];let a=0,n=0;const s=e.length-1,d=this.parts,[h,v]=Jn(e,t);if(this.el=zt.createElement(h,o),et.currentNode=this.el.content,t===2||t===3){const u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(i=et.nextNode())!==null&&d.length0){i.textContent=ko?ko.emptyScript:"";for(let y=0;y2||o[0]!==""||o[1]!==""?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=p}_$AI(e,t=this,o,i){const a=this.strings;let n=!1;if(a===void 0)e=gt(this,e,t,0),n=!Lt(e)||e!==this._$AH&&e!==ge,n&&(this._$AH=e);else{const s=e;let d,h;for(e=a[0],d=0;d{const o=(t==null?void 0:t.renderBefore)??e;let i=o._$litPart$;if(i===void 0){const a=(t==null?void 0:t.renderBefore)??null;o._$litPart$=i=new Pt(e.insertBefore($t(),a),a,void 0,t??{})}return i._$AI(r),i};/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */class C extends nt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t;const e=super.createRenderRoot();return(t=this.renderOptions).renderBefore??(t.renderBefore=e.firstChild),e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=Fo(t,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),(e=this._$Do)==null||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._$Do)==null||e.setConnected(!1)}render(){return ye}}var ki;C._$litElement$=!0,C.finalized=!0,(ki=globalThis.litElementHydrateSupport)==null||ki.call(globalThis,{LitElement:C});const kr=globalThis.litElementPolyfillSupport;kr==null||kr({LitElement:C});(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.1.1");/** + */class $ extends pt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t;const e=super.createRenderRoot();return(t=this.renderOptions).renderBefore??(t.renderBefore=e.firstChild),e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=fi(t,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),(e=this._$Do)==null||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._$Do)==null||e.setConnected(!1)}render(){return ge}}var _a;$._$litElement$=!0,$.finalized=!0,(_a=globalThis.litElementHydrateSupport)==null||_a.call(globalThis,{LitElement:$});const er=globalThis.litElementPolyfillSupport;er==null||er({LitElement:$});(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.1.1");/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const sn=!1;/** + */const al=!1;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ln extends C{connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){return p``}}/** + */class nl extends ${connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){return m``}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const dn=x`:host,.shadow,.shadow::before,.shadow::after{border-radius:inherit;inset:0;position:absolute;transition-duration:inherit;transition-property:inherit;transition-timing-function:inherit}:host{display:flex;pointer-events:none;transition-property:box-shadow,opacity}.shadow::before,.shadow::after{content:"";transition-property:box-shadow,opacity;--_level: var(--md-elevation-level, 0);--_shadow-color: var(--md-elevation-shadow-color, var(--md-sys-color-shadow, #000))}.shadow::before{box-shadow:0px calc(1px*(clamp(0,var(--_level),1) + clamp(0,var(--_level) - 3,1) + 2*clamp(0,var(--_level) - 4,1))) calc(1px*(2*clamp(0,var(--_level),1) + clamp(0,var(--_level) - 2,1) + clamp(0,var(--_level) - 4,1))) 0px var(--_shadow-color);opacity:.3}.shadow::after{box-shadow:0px calc(1px*(clamp(0,var(--_level),1) + clamp(0,var(--_level) - 1,1) + 2*clamp(0,var(--_level) - 2,3))) calc(1px*(3*clamp(0,var(--_level),2) + 2*clamp(0,var(--_level) - 2,3))) calc(1px*(clamp(0,var(--_level),4) + 2*clamp(0,var(--_level) - 4,1))) var(--_shadow-color);opacity:.15} + */const ll=_`:host,.shadow,.shadow::before,.shadow::after{border-radius:inherit;inset:0;position:absolute;transition-duration:inherit;transition-property:inherit;transition-timing-function:inherit}:host{display:flex;pointer-events:none;transition-property:box-shadow,opacity}.shadow::before,.shadow::after{content:"";transition-property:box-shadow,opacity;--_level: var(--md-elevation-level, 0);--_shadow-color: var(--md-elevation-shadow-color, var(--md-sys-color-shadow, #000))}.shadow::before{box-shadow:0px calc(1px*(clamp(0,var(--_level),1) + clamp(0,var(--_level) - 3,1) + 2*clamp(0,var(--_level) - 4,1))) calc(1px*(2*clamp(0,var(--_level),1) + clamp(0,var(--_level) - 2,1) + clamp(0,var(--_level) - 4,1))) 0px var(--_shadow-color);opacity:.3}.shadow::after{box-shadow:0px calc(1px*(clamp(0,var(--_level),1) + clamp(0,var(--_level) - 1,1) + 2*clamp(0,var(--_level) - 2,3))) calc(1px*(3*clamp(0,var(--_level),2) + 2*clamp(0,var(--_level) - 2,3))) calc(1px*(clamp(0,var(--_level),4) + 2*clamp(0,var(--_level) - 4,1))) var(--_shadow-color);opacity:.15} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Rr=class extends ln{};Rr.styles=[dn];Rr=n([w("md-elevation")],Rr);/** + */let ur=class extends nl{};ur.styles=[ll];ur=l([S("md-elevation")],ur);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Li=Symbol("attachableController");let tr;tr=new MutationObserver(o=>{var e;for(const t of o)(e=t.target[Li])==null||e.hostConnected()});class zi{get htmlFor(){return this.host.getAttribute("for")}set htmlFor(e){e===null?this.host.removeAttribute("for"):this.host.setAttribute("for",e)}get control(){return this.host.hasAttribute("for")?!this.htmlFor||!this.host.isConnected?null:this.host.getRootNode().querySelector(`#${this.htmlFor}`):this.currentControl||this.host.parentElement}set control(e){e?this.attach(e):this.detach()}constructor(e,t){this.host=e,this.onControlChange=t,this.currentControl=null,e.addController(this),e[Li]=this,tr==null||tr.observe(e,{attributeFilter:["for"]})}attach(e){e!==this.currentControl&&(this.setCurrentControl(e),this.host.removeAttribute("for"))}detach(){this.setCurrentControl(null),this.host.setAttribute("for","")}hostConnected(){this.setCurrentControl(this.control)}hostDisconnected(){this.setCurrentControl(null)}setCurrentControl(e){this.onControlChange(this.currentControl,e),this.currentControl=e}}/** + */const Aa=Symbol("attachableController");let _o;_o=new MutationObserver(r=>{var e;for(const t of r)(e=t.target[Aa])==null||e.hostConnected()});class Ta{get htmlFor(){return this.host.getAttribute("for")}set htmlFor(e){e===null?this.host.removeAttribute("for"):this.host.setAttribute("for",e)}get control(){return this.host.hasAttribute("for")?!this.htmlFor||!this.host.isConnected?null:this.host.getRootNode().querySelector(`#${this.htmlFor}`):this.currentControl||this.host.parentElement}set control(e){e?this.attach(e):this.detach()}constructor(e,t){this.host=e,this.onControlChange=t,this.currentControl=null,e.addController(this),e[Aa]=this,_o==null||_o.observe(e,{attributeFilter:["for"]})}attach(e){e!==this.currentControl&&(this.setCurrentControl(e),this.host.removeAttribute("for"))}detach(){this.setCurrentControl(null),this.host.setAttribute("for","")}hostConnected(){this.setCurrentControl(this.control)}hostDisconnected(){this.setCurrentControl(null)}setCurrentControl(e){this.onControlChange(this.currentControl,e),this.currentControl=e}}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const cn=["focusin","focusout","pointerdown"];class No extends C{constructor(){super(...arguments),this.visible=!1,this.inward=!1,this.attachableController=new zi(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}handleEvent(e){var t;if(!e[si]){switch(e.type){default:return;case"focusin":this.visible=((t=this.control)==null?void 0:t.matches(":focus-visible"))??!1;break;case"focusout":case"pointerdown":this.visible=!1;break}e[si]=!0}}onControlChange(e,t){for(const r of cn)e==null||e.removeEventListener(r,this),t==null||t.addEventListener(r,this)}update(e){e.has("visible")&&this.dispatchEvent(new Event("visibility-changed")),super.update(e)}}n([l({type:Boolean,reflect:!0})],No.prototype,"visible",void 0);n([l({type:Boolean,reflect:!0})],No.prototype,"inward",void 0);const si=Symbol("handledByFocusRing");/** + */const sl=["focusin","focusout","pointerdown"];class bi extends ${constructor(){super(...arguments),this.visible=!1,this.inward=!1,this.attachableController=new Ta(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}handleEvent(e){var t;if(!e[Xi]){switch(e.type){default:return;case"focusin":this.visible=((t=this.control)==null?void 0:t.matches(":focus-visible"))??!1;break;case"focusout":case"pointerdown":this.visible=!1;break}e[Xi]=!0}}onControlChange(e,t){for(const o of sl)e==null||e.removeEventListener(o,this),t==null||t.addEventListener(o,this)}update(e){e.has("visible")&&this.dispatchEvent(new Event("visibility-changed")),super.update(e)}}l([c({type:Boolean,reflect:!0})],bi.prototype,"visible",void 0);l([c({type:Boolean,reflect:!0})],bi.prototype,"inward",void 0);const Xi=Symbol("handledByFocusRing");/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const hn=x`:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}} + */const dl=_`:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Br=class extends No{};Br.styles=[hn];Br=n([w("md-focus-ring")],Br);/** + */let pr=class extends bi{};pr.styles=[dl];pr=l([S("md-focus-ring")],pr);/** * @license * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const De={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Uo=o=>(...e)=>({_$litDirective$:o,values:e});let Ho=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,r){this._$Ct=e,this._$AM=t,this._$Ci=r}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};/** + */const Ue={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gi=r=>(...e)=>({_$litDirective$:r,values:e});let yi=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,o){this._$Ct=e,this._$AM=t,this._$Ci=o}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};/** * @license * Copyright 2018 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const U=Uo(class extends Ho{constructor(o){var e;if(super(o),o.type!==De.ATTRIBUTE||o.name!=="class"||((e=o.strings)==null?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(o){return" "+Object.keys(o).filter(e=>o[e]).join(" ")+" "}update(o,[e]){var r,i;if(this.st===void 0){this.st=new Set,o.strings!==void 0&&(this.nt=new Set(o.strings.join(" ").split(/\s/).filter(a=>a!=="")));for(const a in e)e[a]&&!((r=this.nt)!=null&&r.has(a))&&this.st.add(a);return this.render(e)}const t=o.element.classList;for(const a of this.st)a in e||(t.remove(a),this.st.delete(a));for(const a in e){const s=!!e[a];s===this.st.has(a)||(i=this.nt)!=null&&i.has(a)||(s?(t.add(a),this.st.add(a)):(t.remove(a),this.st.delete(a)))}return ye}});/** + */const U=gi(class extends yi{constructor(r){var e;if(super(r),r.type!==Ue.ATTRIBUTE||r.name!=="class"||((e=r.strings)==null?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(r){return" "+Object.keys(r).filter(e=>r[e]).join(" ")+" "}update(r,[e]){var o,i;if(this.st===void 0){this.st=new Set,r.strings!==void 0&&(this.nt=new Set(r.strings.join(" ").split(/\s/).filter(a=>a!=="")));for(const a in e)e[a]&&!((o=this.nt)!=null&&o.has(a))&&this.st.add(a);return this.render(e)}const t=r.element.classList;for(const a of this.st)a in e||(t.remove(a),this.st.delete(a));for(const a in e){const n=!!e[a];n===this.st.has(a)||(i=this.nt)!=null&&i.has(a)||(n?(t.add(a),this.st.add(a)):(t.remove(a),this.st.delete(a)))}return ge}});/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ke={STANDARD:"cubic-bezier(0.2, 0, 0, 1)",STANDARD_ACCELERATE:"cubic-bezier(.3,0,1,1)",STANDARD_DECELERATE:"cubic-bezier(0,0,0,1)",EMPHASIZED:"cubic-bezier(.3,0,0,1)",EMPHASIZED_ACCELERATE:"cubic-bezier(.3,0,.8,.15)",EMPHASIZED_DECELERATE:"cubic-bezier(.05,.7,.1,1)"};function pn(){let o=null;return{start(){return o==null||o.abort(),o=new AbortController,o.signal},finish(){o=null}}}/** + */const we={STANDARD:"cubic-bezier(0.2, 0, 0, 1)",STANDARD_ACCELERATE:"cubic-bezier(.3,0,1,1)",STANDARD_DECELERATE:"cubic-bezier(0,0,0,1)",EMPHASIZED:"cubic-bezier(.3,0,0,1)",EMPHASIZED_ACCELERATE:"cubic-bezier(.3,0,.8,.15)",EMPHASIZED_DECELERATE:"cubic-bezier(.05,.7,.1,1)"};function cl(){let r=null;return{start(){return r==null||r.abort(),r=new AbortController,r.signal},finish(){r=null}}}/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const un=450,li=225,vn=.2,mn=10,fn=75,bn=.35,yn="::after",gn="forwards";var oe;(function(o){o[o.INACTIVE=0]="INACTIVE",o[o.TOUCH_DELAY=1]="TOUCH_DELAY",o[o.HOLDING=2]="HOLDING",o[o.WAITING_FOR_CLICK=3]="WAITING_FOR_CLICK"})(oe||(oe={}));const xn=["click","contextmenu","pointercancel","pointerdown","pointerenter","pointerleave","pointerup"],_n=150,Cr=window.matchMedia("(forced-colors: active)");class It extends C{constructor(){super(...arguments),this.disabled=!1,this.hovered=!1,this.pressed=!1,this.rippleSize="",this.rippleScale="",this.initialSize=0,this.state=oe.INACTIVE,this.checkBoundsAfterContextMenu=!1,this.attachableController=new zi(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){const e={hovered:this.hovered,pressed:this.pressed};return p`
`}update(e){e.has("disabled")&&this.disabled&&(this.hovered=!1,this.pressed=!1),super.update(e)}handlePointerenter(e){this.shouldReactToEvent(e)&&(this.hovered=!0)}handlePointerleave(e){this.shouldReactToEvent(e)&&(this.hovered=!1,this.state!==oe.INACTIVE&&this.endPressAnimation())}handlePointerup(e){if(this.shouldReactToEvent(e)){if(this.state===oe.HOLDING){this.state=oe.WAITING_FOR_CLICK;return}if(this.state===oe.TOUCH_DELAY){this.state=oe.WAITING_FOR_CLICK,this.startPressAnimation(this.rippleStartEvent);return}}}async handlePointerdown(e){if(this.shouldReactToEvent(e)){if(this.rippleStartEvent=e,!this.isTouch(e)){this.state=oe.WAITING_FOR_CLICK,this.startPressAnimation(e);return}this.checkBoundsAfterContextMenu&&!this.inBounds(e)||(this.checkBoundsAfterContextMenu=!1,this.state=oe.TOUCH_DELAY,await new Promise(t=>{setTimeout(t,_n)}),this.state===oe.TOUCH_DELAY&&(this.state=oe.HOLDING,this.startPressAnimation(e)))}}handleClick(){if(!this.disabled){if(this.state===oe.WAITING_FOR_CLICK){this.endPressAnimation();return}this.state===oe.INACTIVE&&(this.startPressAnimation(),this.endPressAnimation())}}handlePointercancel(e){this.shouldReactToEvent(e)&&this.endPressAnimation()}handleContextmenu(){this.disabled||(this.checkBoundsAfterContextMenu=!0,this.endPressAnimation())}determineRippleSize(){const{height:e,width:t}=this.getBoundingClientRect(),r=Math.max(e,t),i=Math.max(bn*r,fn),a=Math.floor(r*vn),d=Math.sqrt(t**2+e**2)+mn;this.initialSize=a,this.rippleScale=`${(d+i)/a}`,this.rippleSize=`${a}px`}getNormalizedPointerEventCoords(e){const{scrollX:t,scrollY:r}=window,{left:i,top:a}=this.getBoundingClientRect(),s=t+i,d=r+a,{pageX:c,pageY:f}=e;return{x:c-s,y:f-d}}getTranslationCoordinates(e){const{height:t,width:r}=this.getBoundingClientRect(),i={x:(r-this.initialSize)/2,y:(t-this.initialSize)/2};let a;return e instanceof PointerEvent?a=this.getNormalizedPointerEventCoords(e):a={x:r/2,y:t/2},a={x:a.x-this.initialSize/2,y:a.y-this.initialSize/2},{startPoint:a,endPoint:i}}startPressAnimation(e){var s;if(!this.mdRoot)return;this.pressed=!0,(s=this.growAnimation)==null||s.cancel(),this.determineRippleSize();const{startPoint:t,endPoint:r}=this.getTranslationCoordinates(e),i=`${t.x}px, ${t.y}px`,a=`${r.x}px, ${r.y}px`;this.growAnimation=this.mdRoot.animate({top:[0,0],left:[0,0],height:[this.rippleSize,this.rippleSize],width:[this.rippleSize,this.rippleSize],transform:[`translate(${i}) scale(1)`,`translate(${a}) scale(${this.rippleScale})`]},{pseudoElement:yn,duration:un,easing:ke.STANDARD,fill:gn})}async endPressAnimation(){this.rippleStartEvent=void 0,this.state=oe.INACTIVE;const e=this.growAnimation;let t=1/0;if(typeof(e==null?void 0:e.currentTime)=="number"?t=e.currentTime:e!=null&&e.currentTime&&(t=e.currentTime.to("ms").value),t>=li){this.pressed=!1;return}await new Promise(r=>{setTimeout(r,li-t)}),this.growAnimation===e&&(this.pressed=!1)}shouldReactToEvent(e){if(this.disabled||!e.isPrimary||this.rippleStartEvent&&this.rippleStartEvent.pointerId!==e.pointerId)return!1;if(e.type==="pointerenter"||e.type==="pointerleave")return!this.isTouch(e);const t=e.buttons===1;return this.isTouch(e)||t}inBounds({x:e,y:t}){const{top:r,left:i,bottom:a,right:s}=this.getBoundingClientRect();return e>=i&&e<=s&&t>=r&&t<=a}isTouch({pointerType:e}){return e==="touch"}async handleEvent(e){if(!(Cr!=null&&Cr.matches))switch(e.type){case"click":this.handleClick();break;case"contextmenu":this.handleContextmenu();break;case"pointercancel":this.handlePointercancel(e);break;case"pointerdown":await this.handlePointerdown(e);break;case"pointerenter":this.handlePointerenter(e);break;case"pointerleave":this.handlePointerleave(e);break;case"pointerup":this.handlePointerup(e);break}}onControlChange(e,t){for(const r of xn)e==null||e.removeEventListener(r,this),t==null||t.addEventListener(r,this)}}n([l({type:Boolean,reflect:!0})],It.prototype,"disabled",void 0);n([z()],It.prototype,"hovered",void 0);n([z()],It.prototype,"pressed",void 0);n([E(".surface")],It.prototype,"mdRoot",void 0);/** + */const hl=450,Yi=225,ul=.2,pl=10,vl=75,ml=.35,fl="::after",bl="forwards";var ae;(function(r){r[r.INACTIVE=0]="INACTIVE",r[r.TOUCH_DELAY=1]="TOUCH_DELAY",r[r.HOLDING=2]="HOLDING",r[r.WAITING_FOR_CLICK=3]="WAITING_FOR_CLICK"})(ae||(ae={}));const gl=["click","contextmenu","pointercancel","pointerdown","pointerenter","pointerleave","pointerup"],yl=150,tr=window.matchMedia("(forced-colors: active)");class Dt extends ${constructor(){super(...arguments),this.disabled=!1,this.hovered=!1,this.pressed=!1,this.rippleSize="",this.rippleScale="",this.initialSize=0,this.state=ae.INACTIVE,this.checkBoundsAfterContextMenu=!1,this.attachableController=new Ta(this,this.onControlChange.bind(this))}get htmlFor(){return this.attachableController.htmlFor}set htmlFor(e){this.attachableController.htmlFor=e}get control(){return this.attachableController.control}set control(e){this.attachableController.control=e}attach(e){this.attachableController.attach(e)}detach(){this.attachableController.detach()}connectedCallback(){super.connectedCallback(),this.setAttribute("aria-hidden","true")}render(){const e={hovered:this.hovered,pressed:this.pressed};return m`
`}update(e){e.has("disabled")&&this.disabled&&(this.hovered=!1,this.pressed=!1),super.update(e)}handlePointerenter(e){this.shouldReactToEvent(e)&&(this.hovered=!0)}handlePointerleave(e){this.shouldReactToEvent(e)&&(this.hovered=!1,this.state!==ae.INACTIVE&&this.endPressAnimation())}handlePointerup(e){if(this.shouldReactToEvent(e)){if(this.state===ae.HOLDING){this.state=ae.WAITING_FOR_CLICK;return}if(this.state===ae.TOUCH_DELAY){this.state=ae.WAITING_FOR_CLICK,this.startPressAnimation(this.rippleStartEvent);return}}}async handlePointerdown(e){if(this.shouldReactToEvent(e)){if(this.rippleStartEvent=e,!this.isTouch(e)){this.state=ae.WAITING_FOR_CLICK,this.startPressAnimation(e);return}this.checkBoundsAfterContextMenu&&!this.inBounds(e)||(this.checkBoundsAfterContextMenu=!1,this.state=ae.TOUCH_DELAY,await new Promise(t=>{setTimeout(t,yl)}),this.state===ae.TOUCH_DELAY&&(this.state=ae.HOLDING,this.startPressAnimation(e)))}}handleClick(){if(!this.disabled){if(this.state===ae.WAITING_FOR_CLICK){this.endPressAnimation();return}this.state===ae.INACTIVE&&(this.startPressAnimation(),this.endPressAnimation())}}handlePointercancel(e){this.shouldReactToEvent(e)&&this.endPressAnimation()}handleContextmenu(){this.disabled||(this.checkBoundsAfterContextMenu=!0,this.endPressAnimation())}determineRippleSize(){const{height:e,width:t}=this.getBoundingClientRect(),o=Math.max(e,t),i=Math.max(ml*o,vl),a=Math.floor(o*ul),s=Math.sqrt(t**2+e**2)+pl;this.initialSize=a,this.rippleScale=`${(s+i)/a}`,this.rippleSize=`${a}px`}getNormalizedPointerEventCoords(e){const{scrollX:t,scrollY:o}=window,{left:i,top:a}=this.getBoundingClientRect(),n=t+i,s=o+a,{pageX:d,pageY:h}=e;return{x:d-n,y:h-s}}getTranslationCoordinates(e){const{height:t,width:o}=this.getBoundingClientRect(),i={x:(o-this.initialSize)/2,y:(t-this.initialSize)/2};let a;return e instanceof PointerEvent?a=this.getNormalizedPointerEventCoords(e):a={x:o/2,y:t/2},a={x:a.x-this.initialSize/2,y:a.y-this.initialSize/2},{startPoint:a,endPoint:i}}startPressAnimation(e){var n;if(!this.mdRoot)return;this.pressed=!0,(n=this.growAnimation)==null||n.cancel(),this.determineRippleSize();const{startPoint:t,endPoint:o}=this.getTranslationCoordinates(e),i=`${t.x}px, ${t.y}px`,a=`${o.x}px, ${o.y}px`;this.growAnimation=this.mdRoot.animate({top:[0,0],left:[0,0],height:[this.rippleSize,this.rippleSize],width:[this.rippleSize,this.rippleSize],transform:[`translate(${i}) scale(1)`,`translate(${a}) scale(${this.rippleScale})`]},{pseudoElement:fl,duration:hl,easing:we.STANDARD,fill:bl})}async endPressAnimation(){this.rippleStartEvent=void 0,this.state=ae.INACTIVE;const e=this.growAnimation;let t=1/0;if(typeof(e==null?void 0:e.currentTime)=="number"?t=e.currentTime:e!=null&&e.currentTime&&(t=e.currentTime.to("ms").value),t>=Yi){this.pressed=!1;return}await new Promise(o=>{setTimeout(o,Yi-t)}),this.growAnimation===e&&(this.pressed=!1)}shouldReactToEvent(e){if(this.disabled||!e.isPrimary||this.rippleStartEvent&&this.rippleStartEvent.pointerId!==e.pointerId)return!1;if(e.type==="pointerenter"||e.type==="pointerleave")return!this.isTouch(e);const t=e.buttons===1;return this.isTouch(e)||t}inBounds({x:e,y:t}){const{top:o,left:i,bottom:a,right:n}=this.getBoundingClientRect();return e>=i&&e<=n&&t>=o&&t<=a}isTouch({pointerType:e}){return e==="touch"}async handleEvent(e){if(!(tr!=null&&tr.matches))switch(e.type){case"click":this.handleClick();break;case"contextmenu":this.handleContextmenu();break;case"pointercancel":this.handlePointercancel(e);break;case"pointerdown":await this.handlePointerdown(e);break;case"pointerenter":this.handlePointerenter(e);break;case"pointerleave":this.handlePointerleave(e);break;case"pointerup":this.handlePointerup(e);break}}onControlChange(e,t){for(const o of gl)e==null||e.removeEventListener(o,this),t==null||t.addEventListener(o,this)}}l([c({type:Boolean,reflect:!0})],Dt.prototype,"disabled",void 0);l([M()],Dt.prototype,"hovered",void 0);l([M()],Dt.prototype,"pressed",void 0);l([B(".surface")],Dt.prototype,"mdRoot",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const wn=x`:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:"";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms} + */const xl=_`:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:"";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Or=class extends It{};Or.styles=[wn];Or=n([w("md-ripple")],Or);/** + */let vr=class extends Dt{};vr.styles=[xl];vr=l([S("md-ripple")],vr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ri=["role","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaCurrent","ariaDisabled","ariaExpanded","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabel","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText"],kn=Ri.map(Bi);function Er(o){return kn.includes(o)}function Bi(o){return o.replace("aria","aria-").replace(/Elements?/g,"").toLowerCase()}/** + */const $a=["role","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaCurrent","ariaDisabled","ariaExpanded","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabel","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText"],_l=$a.map(La);function or(r){return _l.includes(r)}function La(r){return r.replace("aria","aria-").replace(/Elements?/g,"").toLowerCase()}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Mt=Symbol("privateIgnoreAttributeChangesFor");function ne(o){var e;class t extends o{constructor(){super(...arguments),this[e]=new Set}attributeChangedCallback(i,a,s){if(!Er(i)){super.attributeChangedCallback(i,a,s);return}if(this[Mt].has(i))return;this[Mt].add(i),this.removeAttribute(i),this[Mt].delete(i);const d=Mr(i);s===null?delete this.dataset[d]:this.dataset[d]=s,this.requestUpdate(Mr(i),a)}getAttribute(i){return Er(i)?super.getAttribute(Pr(i)):super.getAttribute(i)}removeAttribute(i){super.removeAttribute(i),Er(i)&&(super.removeAttribute(Pr(i)),this.requestUpdate())}}return e=Mt,Cn(t),t}function Cn(o){for(const e of Ri){const t=Bi(e),r=Pr(t),i=Mr(t);o.createProperty(e,{attribute:t,noAccessor:!0}),o.createProperty(Symbol(r),{attribute:r,noAccessor:!0}),Object.defineProperty(o.prototype,e,{configurable:!0,enumerable:!0,get(){return this.dataset[i]??null},set(a){const s=this.dataset[i]??null;a!==s&&(a===null?delete this.dataset[i]:this.dataset[i]=a,this.requestUpdate(e,s))}})}}function Pr(o){return`data-${o}`}function Mr(o){return o.replace(/-\w/,e=>e[1].toUpperCase())}/** + */const to=Symbol("privateIgnoreAttributeChangesFor");function se(r){var e;class t extends r{constructor(){super(...arguments),this[e]=new Set}attributeChangedCallback(i,a,n){if(!or(i)){super.attributeChangedCallback(i,a,n);return}if(this[to].has(i))return;this[to].add(i),this.removeAttribute(i),this[to].delete(i);const s=fr(i);n===null?delete this.dataset[s]:this.dataset[s]=n,this.requestUpdate(fr(i),a)}getAttribute(i){return or(i)?super.getAttribute(mr(i)):super.getAttribute(i)}removeAttribute(i){super.removeAttribute(i),or(i)&&(super.removeAttribute(mr(i)),this.requestUpdate())}}return e=to,wl(t),t}function wl(r){for(const e of $a){const t=La(e),o=mr(t),i=fr(t);r.createProperty(e,{attribute:t,noAccessor:!0}),r.createProperty(Symbol(o),{attribute:o,noAccessor:!0}),Object.defineProperty(r.prototype,e,{configurable:!0,enumerable:!0,get(){return this.dataset[i]??null},set(a){const n=this.dataset[i]??null;a!==n&&(a===null?delete this.dataset[i]:this.dataset[i]=a,this.requestUpdate(e,n))}})}}function mr(r){return`data-${r}`}function fr(r){return r.replace(/-\w/,e=>e[1].toUpperCase())}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Y=Symbol("internals"),Ir=Symbol("privateInternals");function qe(o){class e extends o{get[Y](){return this[Ir]||(this[Ir]=this.attachInternals()),this[Ir]}}return e}/** + */const J=Symbol("internals"),rr=Symbol("privateInternals");function Xe(r){class e extends r{get[J](){return this[rr]||(this[rr]=this.attachInternals()),this[rr]}}return e}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Oi(o){o.addInitializer(e=>{const t=e;t.addEventListener("click",async r=>{const{type:i,[Y]:a}=t,{form:s}=a;if(!(!s||i==="button")&&(await new Promise(d=>{setTimeout(d)}),!r.defaultPrevented)){if(i==="reset"){s.reset();return}s.addEventListener("submit",d=>{Object.defineProperty(d,"submitter",{configurable:!0,enumerable:!0,get:()=>t})},{capture:!0,once:!0}),a.setFormValue(t.value),s.requestSubmit()}})})}/** + */function za(r){r.addInitializer(e=>{const t=e;t.addEventListener("click",async o=>{const{type:i,[J]:a}=t,{form:n}=a;if(!(!n||i==="button")&&(await new Promise(s=>{setTimeout(s)}),!o.defaultPrevented)){if(i==="reset"){n.reset();return}n.addEventListener("submit",s=>{Object.defineProperty(s,"submitter",{configurable:!0,enumerable:!0,get:()=>t})},{capture:!0,once:!0}),a.setFormValue(t.value),n.requestSubmit()}})})}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function hr(o){const e=new MouseEvent("click",{bubbles:!0});return o.dispatchEvent(e),e}function Tt(o){return o.currentTarget!==o.target||o.composedPath()[0]!==o.target||o.target.disabled?!1:!En(o)}function En(o){const e=Dr;return e&&(o.preventDefault(),o.stopImmediatePropagation()),In(),e}let Dr=!1;async function In(){Dr=!0,await null,Dr=!1}/** + */function Bo(r){const e=new MouseEvent("click",{bubbles:!0});return r.dispatchEvent(e),e}function Mt(r){return r.currentTarget!==r.target||r.composedPath()[0]!==r.target||r.target.disabled?!1:!kl(r)}function kl(r){const e=br;return e&&(r.preventDefault(),r.stopImmediatePropagation()),Cl(),e}let br=!1;async function Cl(){br=!0,await null,br=!1}/** * @license * Copyright 2019 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Tn=ne(qe(C));class j extends Tn{get name(){return this.getAttribute("name")??""}set name(e){this.setAttribute("name",e)}get form(){return this[Y].form}constructor(){super(),this.disabled=!1,this.softDisabled=!1,this.href="",this.target="",this.trailingIcon=!1,this.hasIcon=!1,this.type="submit",this.value="",this.addEventListener("click",this.handleClick.bind(this))}focus(){var e;(e=this.buttonElement)==null||e.focus()}blur(){var e;(e=this.buttonElement)==null||e.blur()}render(){var i;const e=!this.href&&(this.disabled||this.softDisabled),t=this.href?this.renderLink():this.renderButton(),r=this.href?"link":"button";return p` + */const El=se(Xe($));class G extends El{get name(){return this.getAttribute("name")??""}set name(e){this.setAttribute("name",e)}get form(){return this[J].form}constructor(){super(),this.disabled=!1,this.softDisabled=!1,this.href="",this.target="",this.trailingIcon=!1,this.hasIcon=!1,this.type="submit",this.value="",this.addEventListener("click",this.handleClick.bind(this))}focus(){var e;(e=this.buttonElement)==null||e.focus()}blur(){var e;(e=this.buttonElement)==null||e.blur()}render(){var i;const e=!this.href&&(this.disabled||this.softDisabled),t=this.href?this.renderLink():this.renderButton(),o=this.href?"link":"button";return m` ${(i=this.renderElevationOrOutline)==null?void 0:i.call(this)}
- + ${t} - `}renderButton(){const{ariaLabel:e,ariaHasPopup:t,ariaExpanded:r}=this;return p``}renderLink(){const{ariaLabel:e,ariaHasPopup:t,ariaExpanded:r}=this;return p``}renderLink(){const{ariaLabel:e,ariaHasPopup:t,ariaExpanded:o}=this;return m`${this.renderContent()} - `}renderContent(){const e=p``}renderContent(){const e=m``;return p` + @slotchange="${this.handleSlotChange}">`;return m` - ${this.trailingIcon?h:e} + ${this.trailingIcon?p:e} - ${this.trailingIcon?e:h} - `}handleClick(e){if(!this.href&&this.softDisabled){e.stopImmediatePropagation(),e.preventDefault();return}!Tt(e)||!this.buttonElement||(this.focus(),hr(this.buttonElement))}handleSlotChange(){this.hasIcon=this.assignedIcons.length>0}}Oi(j);j.formAssociated=!0;j.shadowRootOptions={mode:"open",delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],j.prototype,"disabled",void 0);n([l({type:Boolean,attribute:"soft-disabled",reflect:!0})],j.prototype,"softDisabled",void 0);n([l()],j.prototype,"href",void 0);n([l()],j.prototype,"target",void 0);n([l({type:Boolean,attribute:"trailing-icon",reflect:!0})],j.prototype,"trailingIcon",void 0);n([l({type:Boolean,attribute:"has-icon",reflect:!0})],j.prototype,"hasIcon",void 0);n([l()],j.prototype,"type",void 0);n([l({reflect:!0})],j.prototype,"value",void 0);n([E(".button")],j.prototype,"buttonElement",void 0);n([ee({slot:"icon",flatten:!0})],j.prototype,"assignedIcons",void 0);/** + ${this.trailingIcon?e:p} + `}handleClick(e){if(!this.href&&this.softDisabled){e.stopImmediatePropagation(),e.preventDefault();return}!Mt(e)||!this.buttonElement||(this.focus(),Bo(this.buttonElement))}handleSlotChange(){this.hasIcon=this.assignedIcons.length>0}}za(G);G.formAssociated=!0;G.shadowRootOptions={mode:"open",delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],G.prototype,"disabled",void 0);l([c({type:Boolean,attribute:"soft-disabled",reflect:!0})],G.prototype,"softDisabled",void 0);l([c()],G.prototype,"href",void 0);l([c()],G.prototype,"target",void 0);l([c({type:Boolean,attribute:"trailing-icon",reflect:!0})],G.prototype,"trailingIcon",void 0);l([c({type:Boolean,attribute:"has-icon",reflect:!0})],G.prototype,"hasIcon",void 0);l([c()],G.prototype,"type",void 0);l([c({reflect:!0})],G.prototype,"value",void 0);l([B(".button")],G.prototype,"buttonElement",void 0);l([oe({slot:"icon",flatten:!0})],G.prototype,"assignedIcons",void 0);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Sn extends j{renderElevationOrOutline(){return p``}}/** + */class Il extends G{renderElevationOrOutline(){return m``}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const An=x`:host{--_container-color: var(--md-elevated-button-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_container-elevation: var(--md-elevated-button-container-elevation, 1);--_container-height: var(--md-elevated-button-container-height, 40px);--_container-shadow-color: var(--md-elevated-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-elevated-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-elevated-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-elevated-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-elevated-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-elevated-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-elevated-button-focus-container-elevation, 1);--_focus-label-text-color: var(--md-elevated-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-container-elevation: var(--md-elevated-button-hover-container-elevation, 2);--_hover-label-text-color: var(--md-elevated-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-elevated-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-elevated-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-elevated-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-elevated-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-elevated-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-elevated-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-elevated-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-elevated-button-pressed-container-elevation, 1);--_pressed-label-text-color: var(--md-elevated-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-elevated-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-elevated-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-elevated-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-elevated-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-elevated-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-elevated-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-elevated-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-elevated-button-icon-size, 18px);--_pressed-icon-color: var(--md-elevated-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-elevated-button-container-shape-start-start, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-elevated-button-container-shape-start-end, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-elevated-button-container-shape-end-end, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-elevated-button-container-shape-end-start, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-elevated-button-leading-space, 24px);--_trailing-space: var(--md-elevated-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-elevated-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-elevated-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-elevated-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-elevated-button-with-trailing-icon-trailing-space, 16px)} + */const Sl=_`:host{--_container-color: var(--md-elevated-button-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_container-elevation: var(--md-elevated-button-container-elevation, 1);--_container-height: var(--md-elevated-button-container-height, 40px);--_container-shadow-color: var(--md-elevated-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-elevated-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-elevated-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-elevated-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-elevated-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-elevated-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-elevated-button-focus-container-elevation, 1);--_focus-label-text-color: var(--md-elevated-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-container-elevation: var(--md-elevated-button-hover-container-elevation, 2);--_hover-label-text-color: var(--md-elevated-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-elevated-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-elevated-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-elevated-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-elevated-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-elevated-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-elevated-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-elevated-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-elevated-button-pressed-container-elevation, 1);--_pressed-label-text-color: var(--md-elevated-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-elevated-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-elevated-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-elevated-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-elevated-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-elevated-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-elevated-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-elevated-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-elevated-button-icon-size, 18px);--_pressed-icon-color: var(--md-elevated-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-elevated-button-container-shape-start-start, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-elevated-button-container-shape-start-end, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-elevated-button-container-shape-end-end, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-elevated-button-container-shape-end-start, var(--md-elevated-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-elevated-button-leading-space, 24px);--_trailing-space: var(--md-elevated-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-elevated-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-elevated-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-elevated-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-elevated-button-with-trailing-icon-trailing-space, 16px)} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const qo=x`md-elevation{transition-duration:280ms}:host(:is([disabled],[soft-disabled])) md-elevation{transition:none}md-elevation{--md-elevation-level: var(--_container-elevation);--md-elevation-shadow-color: var(--_container-shadow-color)}:host(:focus-within) md-elevation{--md-elevation-level: var(--_focus-container-elevation)}:host(:hover) md-elevation{--md-elevation-level: var(--_hover-container-elevation)}:host(:active) md-elevation{--md-elevation-level: var(--_pressed-container-elevation)}:host(:is([disabled],[soft-disabled])) md-elevation{--md-elevation-level: var(--_disabled-container-elevation)} + */const xi=_`md-elevation{transition-duration:280ms}:host(:is([disabled],[soft-disabled])) md-elevation{transition:none}md-elevation{--md-elevation-level: var(--_container-elevation);--md-elevation-shadow-color: var(--_container-shadow-color)}:host(:focus-within) md-elevation{--md-elevation-level: var(--_focus-container-elevation)}:host(:hover) md-elevation{--md-elevation-level: var(--_hover-container-elevation)}:host(:active) md-elevation{--md-elevation-level: var(--_pressed-container-elevation)}:host(:is([disabled],[soft-disabled])) md-elevation{--md-elevation-level: var(--_disabled-container-elevation)} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const St=x`:host{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end);box-sizing:border-box;cursor:pointer;display:inline-flex;gap:8px;min-height:var(--_container-height);outline:none;padding-block:calc((var(--_container-height) - max(var(--_label-text-line-height),var(--_icon-size)))/2);padding-inline-start:var(--_leading-space);padding-inline-end:var(--_trailing-space);place-content:center;place-items:center;position:relative;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);text-overflow:ellipsis;text-wrap:nowrap;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);vertical-align:top;--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}:host(:is([disabled],[soft-disabled])){cursor:default;pointer-events:none}.button{border-radius:inherit;cursor:inherit;display:inline-flex;align-items:center;justify-content:center;border:none;outline:none;-webkit-appearance:none;vertical-align:middle;background:rgba(0,0,0,0);text-decoration:none;min-width:calc(64px - var(--_leading-space) - var(--_trailing-space));width:100%;z-index:0;height:100%;font:inherit;color:var(--_label-text-color);padding:0;gap:inherit;text-transform:inherit}.button::-moz-focus-inner{padding:0;border:0}:host(:hover) .button{color:var(--_hover-label-text-color)}:host(:focus-within) .button{color:var(--_focus-label-text-color)}:host(:active) .button{color:var(--_pressed-label-text-color)}.background{background-color:var(--_container-color);border-radius:inherit;inset:0;position:absolute}.label{overflow:hidden}:is(.button,.label,.label slot),.label ::slotted(*){text-overflow:inherit}:host(:is([disabled],[soft-disabled])) .label{color:var(--_disabled-label-text-color);opacity:var(--_disabled-label-text-opacity)}:host(:is([disabled],[soft-disabled])) .background{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}@media(forced-colors: active){.background{border:1px solid CanvasText}:host(:is([disabled],[soft-disabled])){--_disabled-icon-color: GrayText;--_disabled-icon-opacity: 1;--_disabled-container-opacity: 1;--_disabled-label-text-color: GrayText;--_disabled-label-text-opacity: 1}}:host([has-icon]:not([trailing-icon])){padding-inline-start:var(--_with-leading-icon-leading-space);padding-inline-end:var(--_with-leading-icon-trailing-space)}:host([has-icon][trailing-icon]){padding-inline-start:var(--_with-trailing-icon-leading-space);padding-inline-end:var(--_with-trailing-icon-trailing-space)}::slotted([slot=icon]){display:inline-flex;position:relative;writing-mode:horizontal-tb;fill:currentColor;flex-shrink:0;color:var(--_icon-color);font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size)}:host(:hover) ::slotted([slot=icon]){color:var(--_hover-icon-color)}:host(:focus-within) ::slotted([slot=icon]){color:var(--_focus-icon-color)}:host(:active) ::slotted([slot=icon]){color:var(--_pressed-icon-color)}:host(:is([disabled],[soft-disabled])) ::slotted([slot=icon]){color:var(--_disabled-icon-color);opacity:var(--_disabled-icon-opacity)}.touch{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) 0}:host([touch-target=none]) .touch{display:none} + */const Ft=_`:host{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end);box-sizing:border-box;cursor:pointer;display:inline-flex;gap:8px;min-height:var(--_container-height);outline:none;padding-block:calc((var(--_container-height) - max(var(--_label-text-line-height),var(--_icon-size)))/2);padding-inline-start:var(--_leading-space);padding-inline-end:var(--_trailing-space);place-content:center;place-items:center;position:relative;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);text-overflow:ellipsis;text-wrap:nowrap;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);vertical-align:top;--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}:host(:is([disabled],[soft-disabled])){cursor:default;pointer-events:none}.button{border-radius:inherit;cursor:inherit;display:inline-flex;align-items:center;justify-content:center;border:none;outline:none;-webkit-appearance:none;vertical-align:middle;background:rgba(0,0,0,0);text-decoration:none;min-width:calc(64px - var(--_leading-space) - var(--_trailing-space));width:100%;z-index:0;height:100%;font:inherit;color:var(--_label-text-color);padding:0;gap:inherit;text-transform:inherit}.button::-moz-focus-inner{padding:0;border:0}:host(:hover) .button{color:var(--_hover-label-text-color)}:host(:focus-within) .button{color:var(--_focus-label-text-color)}:host(:active) .button{color:var(--_pressed-label-text-color)}.background{background-color:var(--_container-color);border-radius:inherit;inset:0;position:absolute}.label{overflow:hidden}:is(.button,.label,.label slot),.label ::slotted(*){text-overflow:inherit}:host(:is([disabled],[soft-disabled])) .label{color:var(--_disabled-label-text-color);opacity:var(--_disabled-label-text-opacity)}:host(:is([disabled],[soft-disabled])) .background{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}@media(forced-colors: active){.background{border:1px solid CanvasText}:host(:is([disabled],[soft-disabled])){--_disabled-icon-color: GrayText;--_disabled-icon-opacity: 1;--_disabled-container-opacity: 1;--_disabled-label-text-color: GrayText;--_disabled-label-text-opacity: 1}}:host([has-icon]:not([trailing-icon])){padding-inline-start:var(--_with-leading-icon-leading-space);padding-inline-end:var(--_with-leading-icon-trailing-space)}:host([has-icon][trailing-icon]){padding-inline-start:var(--_with-trailing-icon-leading-space);padding-inline-end:var(--_with-trailing-icon-trailing-space)}::slotted([slot=icon]){display:inline-flex;position:relative;writing-mode:horizontal-tb;fill:currentColor;flex-shrink:0;color:var(--_icon-color);font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size)}:host(:hover) ::slotted([slot=icon]){color:var(--_hover-icon-color)}:host(:focus-within) ::slotted([slot=icon]){color:var(--_focus-icon-color)}:host(:active) ::slotted([slot=icon]){color:var(--_pressed-icon-color)}:host(:is([disabled],[soft-disabled])) ::slotted([slot=icon]){color:var(--_disabled-icon-color);opacity:var(--_disabled-icon-opacity)}.touch{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) 0}:host([touch-target=none]) .touch{display:none} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Fr=class extends Sn{};Fr.styles=[St,qo,An];Fr=n([w("md-elevated-button")],Fr);/** + */let gr=class extends Il{};gr.styles=[Ft,xi,Sl];gr=l([S("md-elevated-button")],gr);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class $n extends j{renderElevationOrOutline(){return p``}}/** + */class Al extends G{renderElevationOrOutline(){return m``}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ln=x`:host{--_container-color: var(--md-filled-button-container-color, var(--md-sys-color-primary, #6750a4));--_container-elevation: var(--md-filled-button-container-elevation, 0);--_container-height: var(--md-filled-button-container-height, 40px);--_container-shadow-color: var(--md-filled-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-filled-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-filled-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-filled-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-filled-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-filled-button-focus-container-elevation, 0);--_focus-label-text-color: var(--md-filled-button-focus-label-text-color, var(--md-sys-color-on-primary, #fff));--_hover-container-elevation: var(--md-filled-button-hover-container-elevation, 1);--_hover-label-text-color: var(--md-filled-button-hover-label-text-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-color: var(--md-filled-button-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-opacity: var(--md-filled-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filled-button-label-text-color, var(--md-sys-color-on-primary, #fff));--_label-text-font: var(--md-filled-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filled-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filled-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-filled-button-pressed-container-elevation, 0);--_pressed-label-text-color: var(--md-filled-button-pressed-label-text-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-color: var(--md-filled-button-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-opacity: var(--md-filled-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-filled-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-button-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-icon-color: var(--md-filled-button-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-color: var(--md-filled-button-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-size: var(--md-filled-button-icon-size, 18px);--_pressed-icon-color: var(--md-filled-button-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_container-shape-start-start: var(--md-filled-button-container-shape-start-start, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-button-container-shape-start-end, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-button-container-shape-end-end, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-button-container-shape-end-start, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-filled-button-leading-space, 24px);--_trailing-space: var(--md-filled-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-filled-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-filled-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-filled-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-filled-button-with-trailing-icon-trailing-space, 16px)} + */const Tl=_`:host{--_container-color: var(--md-filled-button-container-color, var(--md-sys-color-primary, #6750a4));--_container-elevation: var(--md-filled-button-container-elevation, 0);--_container-height: var(--md-filled-button-container-height, 40px);--_container-shadow-color: var(--md-filled-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-filled-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-filled-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-filled-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-filled-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-filled-button-focus-container-elevation, 0);--_focus-label-text-color: var(--md-filled-button-focus-label-text-color, var(--md-sys-color-on-primary, #fff));--_hover-container-elevation: var(--md-filled-button-hover-container-elevation, 1);--_hover-label-text-color: var(--md-filled-button-hover-label-text-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-color: var(--md-filled-button-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-opacity: var(--md-filled-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filled-button-label-text-color, var(--md-sys-color-on-primary, #fff));--_label-text-font: var(--md-filled-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filled-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filled-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-filled-button-pressed-container-elevation, 0);--_pressed-label-text-color: var(--md-filled-button-pressed-label-text-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-color: var(--md-filled-button-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-opacity: var(--md-filled-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-filled-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-button-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-icon-color: var(--md-filled-button-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-color: var(--md-filled-button-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-size: var(--md-filled-button-icon-size, 18px);--_pressed-icon-color: var(--md-filled-button-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_container-shape-start-start: var(--md-filled-button-container-shape-start-start, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-button-container-shape-start-end, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-button-container-shape-end-end, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-button-container-shape-end-start, var(--md-filled-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-filled-button-leading-space, 24px);--_trailing-space: var(--md-filled-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-filled-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-filled-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-filled-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-filled-button-with-trailing-icon-trailing-space, 16px)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Nr=class extends $n{};Nr.styles=[St,qo,Ln];Nr=n([w("md-filled-button")],Nr);/** + */let yr=class extends Al{};yr.styles=[Ft,xi,Tl];yr=l([S("md-filled-button")],yr);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class zn extends j{renderElevationOrOutline(){return p``}}/** + */class $l extends G{renderElevationOrOutline(){return m``}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Rn=x`:host{--_container-color: var(--md-filled-tonal-button-container-color, var(--md-sys-color-secondary-container, #e8def8));--_container-elevation: var(--md-filled-tonal-button-container-elevation, 0);--_container-height: var(--md-filled-tonal-button-container-height, 40px);--_container-shadow-color: var(--md-filled-tonal-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-filled-tonal-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-filled-tonal-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-filled-tonal-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-filled-tonal-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-tonal-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-filled-tonal-button-focus-container-elevation, 0);--_focus-label-text-color: var(--md-filled-tonal-button-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-container-elevation: var(--md-filled-tonal-button-hover-container-elevation, 1);--_hover-label-text-color: var(--md-filled-tonal-button-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-color: var(--md-filled-tonal-button-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-opacity: var(--md-filled-tonal-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filled-tonal-button-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_label-text-font: var(--md-filled-tonal-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-tonal-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filled-tonal-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filled-tonal-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-filled-tonal-button-pressed-container-elevation, 0);--_pressed-label-text-color: var(--md-filled-tonal-button-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-color: var(--md-filled-tonal-button-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filled-tonal-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-filled-tonal-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-tonal-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-tonal-button-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-icon-color: var(--md-filled-tonal-button-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-color: var(--md-filled-tonal-button-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-size: var(--md-filled-tonal-button-icon-size, 18px);--_pressed-icon-color: var(--md-filled-tonal-button-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_container-shape-start-start: var(--md-filled-tonal-button-container-shape-start-start, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-tonal-button-container-shape-start-end, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-tonal-button-container-shape-end-end, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-tonal-button-container-shape-end-start, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-filled-tonal-button-leading-space, 24px);--_trailing-space: var(--md-filled-tonal-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-filled-tonal-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-filled-tonal-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-filled-tonal-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-filled-tonal-button-with-trailing-icon-trailing-space, 16px)} + */const Ll=_`:host{--_container-color: var(--md-filled-tonal-button-container-color, var(--md-sys-color-secondary-container, #e8def8));--_container-elevation: var(--md-filled-tonal-button-container-elevation, 0);--_container-height: var(--md-filled-tonal-button-container-height, 40px);--_container-shadow-color: var(--md-filled-tonal-button-container-shadow-color, var(--md-sys-color-shadow, #000));--_disabled-container-color: var(--md-filled-tonal-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-elevation: var(--md-filled-tonal-button-disabled-container-elevation, 0);--_disabled-container-opacity: var(--md-filled-tonal-button-disabled-container-opacity, 0.12);--_disabled-label-text-color: var(--md-filled-tonal-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-tonal-button-disabled-label-text-opacity, 0.38);--_focus-container-elevation: var(--md-filled-tonal-button-focus-container-elevation, 0);--_focus-label-text-color: var(--md-filled-tonal-button-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-container-elevation: var(--md-filled-tonal-button-hover-container-elevation, 1);--_hover-label-text-color: var(--md-filled-tonal-button-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-color: var(--md-filled-tonal-button-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-opacity: var(--md-filled-tonal-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filled-tonal-button-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_label-text-font: var(--md-filled-tonal-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-tonal-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filled-tonal-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filled-tonal-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-container-elevation: var(--md-filled-tonal-button-pressed-container-elevation, 0);--_pressed-label-text-color: var(--md-filled-tonal-button-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-color: var(--md-filled-tonal-button-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filled-tonal-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-filled-tonal-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-tonal-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-tonal-button-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-icon-color: var(--md-filled-tonal-button-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-color: var(--md-filled-tonal-button-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-size: var(--md-filled-tonal-button-icon-size, 18px);--_pressed-icon-color: var(--md-filled-tonal-button-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_container-shape-start-start: var(--md-filled-tonal-button-container-shape-start-start, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-tonal-button-container-shape-start-end, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-tonal-button-container-shape-end-end, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-tonal-button-container-shape-end-start, var(--md-filled-tonal-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-filled-tonal-button-leading-space, 24px);--_trailing-space: var(--md-filled-tonal-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-filled-tonal-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-filled-tonal-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-filled-tonal-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-filled-tonal-button-with-trailing-icon-trailing-space, 16px)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Ur=class extends zn{};Ur.styles=[St,qo,Rn];Ur=n([w("md-filled-tonal-button")],Ur);/** + */let xr=class extends $l{};xr.styles=[Ft,xi,Ll];xr=l([S("md-filled-tonal-button")],xr);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Bn extends j{renderElevationOrOutline(){return p`
`}}/** + */class zl extends G{renderElevationOrOutline(){return m`
`}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const On=x`:host{--_container-height: var(--md-outlined-button-container-height, 40px);--_disabled-label-text-color: var(--md-outlined-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-button-disabled-label-text-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-button-disabled-outline-opacity, 0.12);--_focus-label-text-color: var(--md-outlined-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-outlined-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-outlined-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-outlined-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-outlined-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-outlined-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-button-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-button-outline-width, 1px);--_pressed-label-text-color: var(--md-outlined-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-outline-color: var(--md-outlined-button-pressed-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-color: var(--md-outlined-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-outlined-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-outlined-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-outlined-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-outlined-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-outlined-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-outlined-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-outlined-button-icon-size, 18px);--_pressed-icon-color: var(--md-outlined-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-outlined-button-container-shape-start-start, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-outlined-button-container-shape-start-end, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-outlined-button-container-shape-end-end, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-outlined-button-container-shape-end-start, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-outlined-button-leading-space, 24px);--_trailing-space: var(--md-outlined-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-outlined-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-outlined-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-outlined-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-outlined-button-with-trailing-icon-trailing-space, 16px);--_container-color: none;--_disabled-container-color: none;--_disabled-container-opacity: 0}.outline{inset:0;border-style:solid;position:absolute;box-sizing:border-box;border-color:var(--_outline-color);border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}:host(:active) .outline{border-color:var(--_pressed-outline-color)}:host(:is([disabled],[soft-disabled])) .outline{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])) .background{border-color:GrayText}:host(:is([disabled],[soft-disabled])) .outline{opacity:1}}.outline,md-ripple{border-width:var(--_outline-width)}md-ripple{inline-size:calc(100% - 2*var(--_outline-width));block-size:calc(100% - 2*var(--_outline-width));border-style:solid;border-color:rgba(0,0,0,0)} + */const Bl=_`:host{--_container-height: var(--md-outlined-button-container-height, 40px);--_disabled-label-text-color: var(--md-outlined-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-button-disabled-label-text-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-button-disabled-outline-opacity, 0.12);--_focus-label-text-color: var(--md-outlined-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-outlined-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-outlined-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-outlined-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-outlined-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-outlined-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-button-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-button-outline-width, 1px);--_pressed-label-text-color: var(--md-outlined-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-outline-color: var(--md-outlined-button-pressed-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-color: var(--md-outlined-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-outlined-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-outlined-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-outlined-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-outlined-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-outlined-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-outlined-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-outlined-button-icon-size, 18px);--_pressed-icon-color: var(--md-outlined-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-outlined-button-container-shape-start-start, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-outlined-button-container-shape-start-end, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-outlined-button-container-shape-end-end, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-outlined-button-container-shape-end-start, var(--md-outlined-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-outlined-button-leading-space, 24px);--_trailing-space: var(--md-outlined-button-trailing-space, 24px);--_with-leading-icon-leading-space: var(--md-outlined-button-with-leading-icon-leading-space, 16px);--_with-leading-icon-trailing-space: var(--md-outlined-button-with-leading-icon-trailing-space, 24px);--_with-trailing-icon-leading-space: var(--md-outlined-button-with-trailing-icon-leading-space, 24px);--_with-trailing-icon-trailing-space: var(--md-outlined-button-with-trailing-icon-trailing-space, 16px);--_container-color: none;--_disabled-container-color: none;--_disabled-container-opacity: 0}.outline{inset:0;border-style:solid;position:absolute;box-sizing:border-box;border-color:var(--_outline-color);border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}:host(:active) .outline{border-color:var(--_pressed-outline-color)}:host(:is([disabled],[soft-disabled])) .outline{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])) .background{border-color:GrayText}:host(:is([disabled],[soft-disabled])) .outline{opacity:1}}.outline,md-ripple{border-width:var(--_outline-width)}md-ripple{inline-size:calc(100% - 2*var(--_outline-width));block-size:calc(100% - 2*var(--_outline-width));border-style:solid;border-color:rgba(0,0,0,0)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Hr=class extends Bn{};Hr.styles=[St,On];Hr=n([w("md-outlined-button")],Hr);/** + */let _r=class extends zl{};_r.styles=[Ft,Bl];_r=l([S("md-outlined-button")],_r);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Pn extends j{}/** + */class Rl extends G{}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Mn=x`:host{--_container-height: var(--md-text-button-container-height, 40px);--_disabled-label-text-color: var(--md-text-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-text-button-disabled-label-text-opacity, 0.38);--_focus-label-text-color: var(--md-text-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-text-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-text-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-text-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-text-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-text-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-text-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-text-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-text-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-text-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-text-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-text-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-text-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-text-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-text-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-text-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-text-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-text-button-icon-size, 18px);--_pressed-icon-color: var(--md-text-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-text-button-container-shape-start-start, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-text-button-container-shape-start-end, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-text-button-container-shape-end-end, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-text-button-container-shape-end-start, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-text-button-leading-space, 12px);--_trailing-space: var(--md-text-button-trailing-space, 12px);--_with-leading-icon-leading-space: var(--md-text-button-with-leading-icon-leading-space, 12px);--_with-leading-icon-trailing-space: var(--md-text-button-with-leading-icon-trailing-space, 16px);--_with-trailing-icon-leading-space: var(--md-text-button-with-trailing-icon-leading-space, 16px);--_with-trailing-icon-trailing-space: var(--md-text-button-with-trailing-icon-trailing-space, 12px);--_container-color: none;--_disabled-container-color: none;--_disabled-container-opacity: 0} + */const Ol=_`:host{--_container-height: var(--md-text-button-container-height, 40px);--_disabled-label-text-color: var(--md-text-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-text-button-disabled-label-text-opacity, 0.38);--_focus-label-text-color: var(--md-text-button-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-text-button-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-text-button-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-text-button-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-text-button-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-text-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-text-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-text-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-text-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-text-button-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-text-button-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-text-button-pressed-state-layer-opacity, 0.12);--_disabled-icon-color: var(--md-text-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-text-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-text-button-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-icon-color: var(--md-text-button-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-color: var(--md-text-button-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-text-button-icon-size, 18px);--_pressed-icon-color: var(--md-text-button-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-text-button-container-shape-start-start, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-text-button-container-shape-start-end, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-text-button-container-shape-end-end, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-text-button-container-shape-end-start, var(--md-text-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_leading-space: var(--md-text-button-leading-space, 12px);--_trailing-space: var(--md-text-button-trailing-space, 12px);--_with-leading-icon-leading-space: var(--md-text-button-with-leading-icon-leading-space, 12px);--_with-leading-icon-trailing-space: var(--md-text-button-with-leading-icon-trailing-space, 16px);--_with-trailing-icon-leading-space: var(--md-text-button-with-trailing-icon-leading-space, 16px);--_with-trailing-icon-trailing-space: var(--md-text-button-with-trailing-icon-trailing-space, 12px);--_container-color: none;--_disabled-container-color: none;--_disabled-container-opacity: 0} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let qr=class extends Pn{};qr.styles=[St,Mn];qr=n([w("md-text-button")],qr);/** + */let wr=class extends Rl{};wr.styles=[Ft,Ol];wr=l([S("md-text-button")],wr);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Ue(o,e){e.bubbles&&(!o.shadowRoot||e.composed)&&e.stopPropagation();const t=Reflect.construct(e.constructor,[e.type,e]),r=o.dispatchEvent(t);return r||e.preventDefault(),r}/** + */function je(r,e){e.bubbles&&(!r.shadowRoot||e.composed)&&e.stopPropagation();const t=Reflect.construct(e.constructor,[e.type,e]),o=r.dispatchEvent(t);return o||e.preventDefault(),o}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Je=Symbol("createValidator"),et=Symbol("getValidityAnchor"),Tr=Symbol("privateValidator"),ze=Symbol("privateSyncValidity"),Dt=Symbol("privateCustomValidationMessage");function At(o){var e;class t extends o{constructor(){super(...arguments),this[e]=""}get validity(){return this[ze](),this[Y].validity}get validationMessage(){return this[ze](),this[Y].validationMessage}get willValidate(){return this[ze](),this[Y].willValidate}checkValidity(){return this[ze](),this[Y].checkValidity()}reportValidity(){return this[ze](),this[Y].reportValidity()}setCustomValidity(i){this[Dt]=i,this[ze]()}requestUpdate(i,a,s){super.requestUpdate(i,a,s),this[ze]()}firstUpdated(i){super.firstUpdated(i),this[ze]()}[(e=Dt,ze)](){this[Tr]||(this[Tr]=this[Je]());const{validity:i,validationMessage:a}=this[Tr].getValidity(),s=!!this[Dt],d=this[Dt]||a;this[Y].setValidity({...i,customError:s},d,this[et]()??void 0)}[Je](){throw new Error("Implement [createValidator]")}[et](){throw new Error("Implement [getValidityAnchor]")}}return t}/** + */const rt=Symbol("createValidator"),it=Symbol("getValidityAnchor"),ir=Symbol("privateValidator"),ze=Symbol("privateSyncValidity"),oo=Symbol("privateCustomValidationMessage");function Nt(r){var e;class t extends r{constructor(){super(...arguments),this[e]=""}get validity(){return this[ze](),this[J].validity}get validationMessage(){return this[ze](),this[J].validationMessage}get willValidate(){return this[ze](),this[J].willValidate}checkValidity(){return this[ze](),this[J].checkValidity()}reportValidity(){return this[ze](),this[J].reportValidity()}setCustomValidity(i){this[oo]=i,this[ze]()}requestUpdate(i,a,n){super.requestUpdate(i,a,n),this[ze]()}firstUpdated(i){super.firstUpdated(i),this[ze]()}[(e=oo,ze)](){this[ir]||(this[ir]=this[rt]());const{validity:i,validationMessage:a}=this[ir].getValidity(),n=!!this[oo],s=this[oo]||a;this[J].setValidity({...i,customError:n},s,this[it]()??void 0)}[rt](){throw new Error("Implement [createValidator]")}[it](){throw new Error("Implement [getValidityAnchor]")}}return t}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Re=Symbol("getFormValue"),wt=Symbol("getFormState");function ct(o){class e extends o{get form(){return this[Y].form}get labels(){return this[Y].labels}get name(){return this.getAttribute("name")??""}set name(r){this.setAttribute("name",r)}get disabled(){return this.hasAttribute("disabled")}set disabled(r){this.toggleAttribute("disabled",r)}attributeChangedCallback(r,i,a){if(r==="name"||r==="disabled"){const s=r==="disabled"?i!==null:i;this.requestUpdate(r,s);return}super.attributeChangedCallback(r,i,a)}requestUpdate(r,i,a){super.requestUpdate(r,i,a),this[Y].setFormValue(this[Re](),this[wt]())}[Re](){throw new Error("Implement [getFormValue]")}[wt](){return this[Re]()}formDisabledCallback(r){this.disabled=r}}return e.formAssociated=!0,n([l({noAccessor:!0})],e.prototype,"name",null),n([l({type:Boolean,noAccessor:!0})],e.prototype,"disabled",null),e}/** + */const Be=Symbol("getFormValue"),Bt=Symbol("getFormState");function yt(r){class e extends r{get form(){return this[J].form}get labels(){return this[J].labels}get name(){return this.getAttribute("name")??""}set name(o){this.setAttribute("name",o)}get disabled(){return this.hasAttribute("disabled")}set disabled(o){this.toggleAttribute("disabled",o)}attributeChangedCallback(o,i,a){if(o==="name"||o==="disabled"){const n=o==="disabled"?i!==null:i;this.requestUpdate(o,n);return}super.attributeChangedCallback(o,i,a)}requestUpdate(o,i,a){super.requestUpdate(o,i,a),this[J].setFormValue(this[Be](),this[Bt]())}[Be](){throw new Error("Implement [getFormValue]")}[Bt](){return this[Be]()}formDisabledCallback(o){this.disabled=o}}return e.formAssociated=!0,l([c({noAccessor:!0})],e.prototype,"name",null),l([c({type:Boolean,noAccessor:!0})],e.prototype,"disabled",null),e}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class pr{constructor(e){this.getCurrentState=e,this.currentValidity={validity:{},validationMessage:""}}getValidity(){const e=this.getCurrentState();if(!(!this.prevState||!this.equals(this.prevState,e)))return this.currentValidity;const{validity:r,validationMessage:i}=this.computeValidity(e);return this.prevState=this.copy(e),this.currentValidity={validationMessage:i,validity:{badInput:r.badInput,customError:r.customError,patternMismatch:r.patternMismatch,rangeOverflow:r.rangeOverflow,rangeUnderflow:r.rangeUnderflow,stepMismatch:r.stepMismatch,tooLong:r.tooLong,tooShort:r.tooShort,typeMismatch:r.typeMismatch,valueMissing:r.valueMissing}},this.currentValidity}}/** + */class Ro{constructor(e){this.getCurrentState=e,this.currentValidity={validity:{},validationMessage:""}}getValidity(){const e=this.getCurrentState();if(!(!this.prevState||!this.equals(this.prevState,e)))return this.currentValidity;const{validity:o,validationMessage:i}=this.computeValidity(e);return this.prevState=this.copy(e),this.currentValidity={validationMessage:i,validity:{badInput:o.badInput,customError:o.customError,patternMismatch:o.patternMismatch,rangeOverflow:o.rangeOverflow,rangeUnderflow:o.rangeUnderflow,stepMismatch:o.stepMismatch,tooLong:o.tooLong,tooShort:o.tooShort,typeMismatch:o.typeMismatch,valueMissing:o.valueMissing}},this.currentValidity}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Pi extends pr{computeValidity(e){return this.checkboxControl||(this.checkboxControl=document.createElement("input"),this.checkboxControl.type="checkbox"),this.checkboxControl.checked=e.checked,this.checkboxControl.required=e.required,{validity:this.checkboxControl.validity,validationMessage:this.checkboxControl.validationMessage}}equals(e,t){return e.checked===t.checked&&e.required===t.required}copy({checked:e,required:t}){return{checked:e,required:t}}}/** + */class Ba extends Ro{computeValidity(e){return this.checkboxControl||(this.checkboxControl=document.createElement("input"),this.checkboxControl.type="checkbox"),this.checkboxControl.checked=e.checked,this.checkboxControl.required=e.required,{validity:this.checkboxControl.validity,validationMessage:this.checkboxControl.validationMessage}}equals(e,t){return e.checked===t.checked&&e.required===t.required}copy({checked:e,required:t}){return{checked:e,required:t}}}/** * @license * Copyright 2019 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Dn=ne(At(ct(qe(C))));class Ae extends Dn{constructor(){super(),this.checked=!1,this.indeterminate=!1,this.required=!1,this.value="on",this.prevChecked=!1,this.prevDisabled=!1,this.prevIndeterminate=!1,this.addEventListener("click",e=>{!Tt(e)||!this.input||(this.focus(),hr(this.input))})}update(e){(e.has("checked")||e.has("disabled")||e.has("indeterminate"))&&(this.prevChecked=e.get("checked")??this.checked,this.prevDisabled=e.get("disabled")??this.disabled,this.prevIndeterminate=e.get("indeterminate")??this.indeterminate),super.update(e)}render(){const e=!this.prevChecked&&!this.prevIndeterminate,t=this.prevChecked&&!this.prevIndeterminate,r=this.prevIndeterminate,i=this.checked&&!this.indeterminate,a=this.indeterminate,s=U({disabled:this.disabled,selected:i||a,unselected:!i&&!a,checked:i,indeterminate:a,"prev-unselected":e,"prev-checked":t,"prev-indeterminate":r,"prev-disabled":this.prevDisabled}),{ariaLabel:d,ariaInvalid:c}=this;return p` -
+ */const Pl=se(Nt(yt(Xe($))));class Te extends Pl{constructor(){super(),this.checked=!1,this.indeterminate=!1,this.required=!1,this.value="on",this.prevChecked=!1,this.prevDisabled=!1,this.prevIndeterminate=!1,this.addEventListener("click",e=>{!Mt(e)||!this.input||(this.focus(),Bo(this.input))})}update(e){(e.has("checked")||e.has("disabled")||e.has("indeterminate"))&&(this.prevChecked=e.get("checked")??this.checked,this.prevDisabled=e.get("disabled")??this.disabled,this.prevIndeterminate=e.get("indeterminate")??this.indeterminate),super.update(e)}render(){const e=!this.prevChecked&&!this.prevIndeterminate,t=this.prevChecked&&!this.prevIndeterminate,o=this.prevIndeterminate,i=this.checked&&!this.indeterminate,a=this.indeterminate,n=U({disabled:this.disabled,selected:i||a,unselected:!i&&!a,checked:i,indeterminate:a,"prev-unselected":e,"prev-checked":t,"prev-indeterminate":o,"prev-disabled":this.prevDisabled}),{ariaLabel:s,ariaInvalid:d}=this;return m` +
- `}handleInput(e){const t=e.target;this.checked=t.checked,this.indeterminate=t.indeterminate}handleChange(e){Ue(this,e)}[Re](){return!this.checked||this.indeterminate?null:this.value}[wt](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(e){this.checked=e==="true"}[Je](){return new Pi(()=>this)}[et](){return this.input}}Ae.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean})],Ae.prototype,"checked",void 0);n([l({type:Boolean})],Ae.prototype,"indeterminate",void 0);n([l({type:Boolean})],Ae.prototype,"required",void 0);n([l()],Ae.prototype,"value",void 0);n([z()],Ae.prototype,"prevChecked",void 0);n([z()],Ae.prototype,"prevDisabled",void 0);n([z()],Ae.prototype,"prevIndeterminate",void 0);n([E("input")],Ae.prototype,"input",void 0);/** + `}handleInput(e){const t=e.target;this.checked=t.checked,this.indeterminate=t.indeterminate}handleChange(e){je(this,e)}[Be](){return!this.checked||this.indeterminate?null:this.value}[Bt](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(e){this.checked=e==="true"}[rt](){return new Ba(()=>this)}[it](){return this.input}}Te.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean})],Te.prototype,"checked",void 0);l([c({type:Boolean})],Te.prototype,"indeterminate",void 0);l([c({type:Boolean})],Te.prototype,"required",void 0);l([c()],Te.prototype,"value",void 0);l([M()],Te.prototype,"prevChecked",void 0);l([M()],Te.prototype,"prevDisabled",void 0);l([M()],Te.prototype,"prevIndeterminate",void 0);l([B("input")],Te.prototype,"input",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Fn=x`:host{border-start-start-radius:var(--md-checkbox-container-shape-start-start, var(--md-checkbox-container-shape, 2px));border-start-end-radius:var(--md-checkbox-container-shape-start-end, var(--md-checkbox-container-shape, 2px));border-end-end-radius:var(--md-checkbox-container-shape-end-end, var(--md-checkbox-container-shape, 2px));border-end-start-radius:var(--md-checkbox-container-shape-end-start, var(--md-checkbox-container-shape, 2px));display:inline-flex;height:var(--md-checkbox-container-size, 18px);position:relative;vertical-align:top;width:var(--md-checkbox-container-size, 18px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-checkbox-container-size, 18px))/2)}md-focus-ring{height:44px;inset:unset;width:44px}input{appearance:none;height:48px;margin:0;opacity:0;outline:none;position:absolute;width:48px;z-index:1;cursor:inherit}:host([touch-target=none]) input{height:100%;width:100%}.container{border-radius:inherit;display:flex;height:100%;place-content:center;place-items:center;position:relative;width:100%}.outline,.background,.icon{inset:0;position:absolute}.outline,.background{border-radius:inherit}.outline{border-color:var(--md-checkbox-outline-color, var(--md-sys-color-on-surface-variant, #49454f));border-style:solid;border-width:var(--md-checkbox-outline-width, 2px);box-sizing:border-box}.background{background-color:var(--md-checkbox-selected-container-color, var(--md-sys-color-primary, #6750a4))}.background,.icon{opacity:0;transition-duration:150ms,50ms;transition-property:transform,opacity;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15),linear;transform:scale(0.6)}:where(.selected) :is(.background,.icon){opacity:1;transition-duration:350ms,50ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1),linear;transform:scale(1)}md-ripple{border-radius:var(--md-checkbox-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-checkbox-state-layer-size, 40px);inset:unset;width:var(--md-checkbox-state-layer-size, 40px);--md-ripple-hover-color: var(--md-checkbox-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-checkbox-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-checkbox-pressed-state-layer-opacity, 0.12)}.selected md-ripple{--md-ripple-hover-color: var(--md-checkbox-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-checkbox-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-checkbox-selected-pressed-state-layer-opacity, 0.12)}.icon{fill:var(--md-checkbox-selected-icon-color, var(--md-sys-color-on-primary, #fff));height:var(--md-checkbox-icon-size, 18px);width:var(--md-checkbox-icon-size, 18px)}.mark.short{height:2px;transition-property:transform,height;width:2px}.mark.long{height:2px;transition-property:transform,width;width:10px}.mark{animation-duration:150ms;animation-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15);transition-duration:150ms;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15)}.selected .mark{animation-duration:350ms;animation-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1);transition-duration:350ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1)}.checked .mark,.prev-checked.unselected .mark{transform:scaleY(-1) translate(7px, -14px) rotate(45deg)}.checked .mark.short,.prev-checked.unselected .mark.short{height:5.6568542495px}.checked .mark.long,.prev-checked.unselected .mark.long{width:11.313708499px}.indeterminate .mark,.prev-indeterminate.unselected .mark{transform:scaleY(-1) translate(4px, -10px) rotate(0deg)}.prev-unselected .mark{transition-property:none}.prev-unselected.checked .mark.long{animation-name:prev-unselected-to-checked}@keyframes prev-unselected-to-checked{from{width:0}}:where(:hover) .outline{border-color:var(--md-checkbox-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-hover-outline-width, 2px)}:where(:hover) .background{background:var(--md-checkbox-selected-hover-container-color, var(--md-sys-color-primary, #6750a4))}:where(:hover) .icon{fill:var(--md-checkbox-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:focus-within) .outline{border-color:var(--md-checkbox-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-focus-outline-width, 2px)}:where(:focus-within) .background{background:var(--md-checkbox-selected-focus-container-color, var(--md-sys-color-primary, #6750a4))}:where(:focus-within) .icon{fill:var(--md-checkbox-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:active) .outline{border-color:var(--md-checkbox-pressed-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-pressed-outline-width, 2px)}:where(:active) .background{background:var(--md-checkbox-selected-pressed-container-color, var(--md-sys-color-primary, #6750a4))}:where(:active) .icon{fill:var(--md-checkbox-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff))}:where(.disabled,.prev-disabled) :is(.background,.icon,.mark){animation-duration:0s;transition-duration:0s}:where(.disabled) .outline{border-color:var(--md-checkbox-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-disabled-outline-width, 2px);opacity:var(--md-checkbox-disabled-container-opacity, 0.38)}:where(.selected.disabled) .outline{visibility:hidden}:where(.selected.disabled) .background{background:var(--md-checkbox-selected-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-checkbox-selected-disabled-container-opacity, 0.38)}:where(.disabled) .icon{fill:var(--md-checkbox-selected-disabled-icon-color, var(--md-sys-color-surface, #fef7ff))}@media(forced-colors: active){.background{background-color:CanvasText}.selected.disabled .background{background-color:GrayText;opacity:1}.outline{border-color:CanvasText}.disabled .outline{border-color:GrayText;opacity:1}.icon{fill:Canvas}} + */const Dl=_`:host{border-start-start-radius:var(--md-checkbox-container-shape-start-start, var(--md-checkbox-container-shape, 2px));border-start-end-radius:var(--md-checkbox-container-shape-start-end, var(--md-checkbox-container-shape, 2px));border-end-end-radius:var(--md-checkbox-container-shape-end-end, var(--md-checkbox-container-shape, 2px));border-end-start-radius:var(--md-checkbox-container-shape-end-start, var(--md-checkbox-container-shape, 2px));display:inline-flex;height:var(--md-checkbox-container-size, 18px);position:relative;vertical-align:top;width:var(--md-checkbox-container-size, 18px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-checkbox-container-size, 18px))/2)}md-focus-ring{height:44px;inset:unset;width:44px}input{appearance:none;height:48px;margin:0;opacity:0;outline:none;position:absolute;width:48px;z-index:1;cursor:inherit}:host([touch-target=none]) input{height:100%;width:100%}.container{border-radius:inherit;display:flex;height:100%;place-content:center;place-items:center;position:relative;width:100%}.outline,.background,.icon{inset:0;position:absolute}.outline,.background{border-radius:inherit}.outline{border-color:var(--md-checkbox-outline-color, var(--md-sys-color-on-surface-variant, #49454f));border-style:solid;border-width:var(--md-checkbox-outline-width, 2px);box-sizing:border-box}.background{background-color:var(--md-checkbox-selected-container-color, var(--md-sys-color-primary, #6750a4))}.background,.icon{opacity:0;transition-duration:150ms,50ms;transition-property:transform,opacity;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15),linear;transform:scale(0.6)}:where(.selected) :is(.background,.icon){opacity:1;transition-duration:350ms,50ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1),linear;transform:scale(1)}md-ripple{border-radius:var(--md-checkbox-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-checkbox-state-layer-size, 40px);inset:unset;width:var(--md-checkbox-state-layer-size, 40px);--md-ripple-hover-color: var(--md-checkbox-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-checkbox-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-checkbox-pressed-state-layer-opacity, 0.12)}.selected md-ripple{--md-ripple-hover-color: var(--md-checkbox-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-checkbox-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-checkbox-selected-pressed-state-layer-opacity, 0.12)}.icon{fill:var(--md-checkbox-selected-icon-color, var(--md-sys-color-on-primary, #fff));height:var(--md-checkbox-icon-size, 18px);width:var(--md-checkbox-icon-size, 18px)}.mark.short{height:2px;transition-property:transform,height;width:2px}.mark.long{height:2px;transition-property:transform,width;width:10px}.mark{animation-duration:150ms;animation-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15);transition-duration:150ms;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15)}.selected .mark{animation-duration:350ms;animation-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1);transition-duration:350ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1)}.checked .mark,.prev-checked.unselected .mark{transform:scaleY(-1) translate(7px, -14px) rotate(45deg)}.checked .mark.short,.prev-checked.unselected .mark.short{height:5.6568542495px}.checked .mark.long,.prev-checked.unselected .mark.long{width:11.313708499px}.indeterminate .mark,.prev-indeterminate.unselected .mark{transform:scaleY(-1) translate(4px, -10px) rotate(0deg)}.prev-unselected .mark{transition-property:none}.prev-unselected.checked .mark.long{animation-name:prev-unselected-to-checked}@keyframes prev-unselected-to-checked{from{width:0}}:where(:hover) .outline{border-color:var(--md-checkbox-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-hover-outline-width, 2px)}:where(:hover) .background{background:var(--md-checkbox-selected-hover-container-color, var(--md-sys-color-primary, #6750a4))}:where(:hover) .icon{fill:var(--md-checkbox-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:focus-within) .outline{border-color:var(--md-checkbox-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-focus-outline-width, 2px)}:where(:focus-within) .background{background:var(--md-checkbox-selected-focus-container-color, var(--md-sys-color-primary, #6750a4))}:where(:focus-within) .icon{fill:var(--md-checkbox-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:active) .outline{border-color:var(--md-checkbox-pressed-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-pressed-outline-width, 2px)}:where(:active) .background{background:var(--md-checkbox-selected-pressed-container-color, var(--md-sys-color-primary, #6750a4))}:where(:active) .icon{fill:var(--md-checkbox-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff))}:where(.disabled,.prev-disabled) :is(.background,.icon,.mark){animation-duration:0s;transition-duration:0s}:where(.disabled) .outline{border-color:var(--md-checkbox-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-disabled-outline-width, 2px);opacity:var(--md-checkbox-disabled-container-opacity, 0.38)}:where(.selected.disabled) .outline{visibility:hidden}:where(.selected.disabled) .background{background:var(--md-checkbox-selected-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-checkbox-selected-disabled-container-opacity, 0.38)}:where(.disabled) .icon{fill:var(--md-checkbox-selected-disabled-icon-color, var(--md-sys-color-surface, #fef7ff))}@media(forced-colors: active){.background{background-color:CanvasText}.selected.disabled .background{background-color:GrayText;opacity:1}.outline{border-color:CanvasText}.disabled .outline{border-color:GrayText;opacity:1}.icon{fill:Canvas}} `;/** * @license * Copyright 2018 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Vr=class extends Ae{};Vr.styles=[Fn];Vr=n([w("md-checkbox")],Vr);/** + */let kr=class extends Te{};kr.styles=[Dl];kr=l([S("md-checkbox")],kr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Nn=ne(C);class Be extends Nn{get rippleDisabled(){return this.disabled||this.softDisabled}constructor(){super(),this.disabled=!1,this.softDisabled=!1,this.alwaysFocusable=!1,this.label="",this.hasIcon=!1,this.addEventListener("click",this.handleClick.bind(this))}focus(e){this.disabled&&!this.alwaysFocusable||super.focus(e)}render(){return p` + */const Ml=se($);class Pe extends Ml{get rippleDisabled(){return this.disabled||this.softDisabled}constructor(){super(),this.disabled=!1,this.softDisabled=!1,this.alwaysFocusable=!1,this.label="",this.hasIcon=!1,this.addEventListener("click",this.handleClick.bind(this))}focus(e){this.disabled&&!this.alwaysFocusable||super.focus(e)}render(){return m`
${this.renderContainerContent()}
- `}updated(e){e.has("disabled")&&e.get("disabled")!==void 0&&this.dispatchEvent(new Event("update-focus",{bubbles:!0}))}getContainerClasses(){return{disabled:this.disabled||this.softDisabled,"has-icon":this.hasIcon}}renderContainerContent(){return p` + `}updated(e){e.has("disabled")&&e.get("disabled")!==void 0&&this.dispatchEvent(new Event("update-focus",{bubbles:!0}))}getContainerClasses(){return{disabled:this.disabled||this.softDisabled,"has-icon":this.hasIcon}}renderContainerContent(){return m` ${this.renderOutline()} ${this.renderPrimaryAction(this.renderPrimaryContent())} - `}renderOutline(){return p``}renderLeadingIcon(){return p``}renderPrimaryContent(){return p` + `}renderOutline(){return m``}renderLeadingIcon(){return m``}renderPrimaryContent(){return m` - ${this.label?this.label:p``} + ${this.label?this.label:m``} - `}handleIconChange(e){const t=e.target;this.hasIcon=t.assignedElements({flatten:!0}).length>0}handleClick(e){if(this.softDisabled||this.disabled&&this.alwaysFocusable){e.stopImmediatePropagation(),e.preventDefault();return}}}Be.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],Be.prototype,"disabled",void 0);n([l({type:Boolean,attribute:"soft-disabled",reflect:!0})],Be.prototype,"softDisabled",void 0);n([l({type:Boolean,attribute:"always-focusable"})],Be.prototype,"alwaysFocusable",void 0);n([l()],Be.prototype,"label",void 0);n([l({type:Boolean,reflect:!0,attribute:"has-icon"})],Be.prototype,"hasIcon",void 0);/** + `}handleIconChange(e){const t=e.target;this.hasIcon=t.assignedElements({flatten:!0}).length>0}handleClick(e){if(this.softDisabled||this.disabled&&this.alwaysFocusable){e.stopImmediatePropagation(),e.preventDefault();return}}}Pe.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],Pe.prototype,"disabled",void 0);l([c({type:Boolean,attribute:"soft-disabled",reflect:!0})],Pe.prototype,"softDisabled",void 0);l([c({type:Boolean,attribute:"always-focusable"})],Pe.prototype,"alwaysFocusable",void 0);l([c()],Pe.prototype,"label",void 0);l([c({type:Boolean,reflect:!0,attribute:"has-icon"})],Pe.prototype,"hasIcon",void 0);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class $t extends Be{constructor(){super(...arguments),this.elevated=!1,this.href="",this.target=""}get primaryId(){return this.href?"link":"button"}get rippleDisabled(){return!this.href&&(this.disabled||this.softDisabled)}getContainerClasses(){return{...super.getContainerClasses(),disabled:!this.href&&(this.disabled||this.softDisabled),elevated:this.elevated,link:!!this.href}}renderPrimaryAction(e){const{ariaLabel:t}=this;return this.href?p` + */class Ut extends Pe{constructor(){super(...arguments),this.elevated=!1,this.href="",this.target=""}get primaryId(){return this.href?"link":"button"}get rippleDisabled(){return!this.href&&(this.disabled||this.softDisabled)}getContainerClasses(){return{...super.getContainerClasses(),disabled:!this.href&&(this.disabled||this.softDisabled),elevated:this.elevated,link:!!this.href}}renderPrimaryAction(e){const{ariaLabel:t}=this;return this.href?m` ${e} - `:p` + `:m` - `}renderOutline(){return this.elevated?p``:super.renderOutline()}}n([l({type:Boolean})],$t.prototype,"elevated",void 0);n([l()],$t.prototype,"href",void 0);n([l()],$t.prototype,"target",void 0);/** + `}renderOutline(){return this.elevated?m``:super.renderOutline()}}l([c({type:Boolean})],Ut.prototype,"elevated",void 0);l([c()],Ut.prototype,"href",void 0);l([c()],Ut.prototype,"target",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Un=x`:host{--_container-height: var(--md-assist-chip-container-height, 32px);--_disabled-label-text-color: var(--md-assist-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-assist-chip-disabled-label-text-opacity, 0.38);--_elevated-container-color: var(--md-assist-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_elevated-container-elevation: var(--md-assist-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-assist-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-assist-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-assist-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-assist-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-assist-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-assist-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-assist-chip-elevated-pressed-container-elevation, 1);--_focus-label-text-color: var(--md-assist-chip-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-assist-chip-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-color: var(--md-assist-chip-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-assist-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-assist-chip-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-assist-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-assist-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-assist-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-assist-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-assist-chip-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-assist-chip-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-opacity: var(--md-assist-chip-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-assist-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-assist-chip-disabled-outline-opacity, 0.12);--_focus-outline-color: var(--md-assist-chip-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_outline-color: var(--md-assist-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-assist-chip-outline-width, 1px);--_disabled-leading-icon-color: var(--md-assist-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-assist-chip-disabled-leading-icon-opacity, 0.38);--_focus-leading-icon-color: var(--md-assist-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-assist-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-assist-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-assist-chip-icon-size, 18px);--_pressed-leading-icon-color: var(--md-assist-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-assist-chip-container-shape-start-start, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-assist-chip-container-shape-start-end, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-assist-chip-container-shape-end-end, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-assist-chip-container-shape-end-start, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-assist-chip-leading-space, 16px);--_trailing-space: var(--md-assist-chip-trailing-space, 16px);--_icon-label-space: var(--md-assist-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-assist-chip-with-leading-icon-leading-space, 8px)}@media(forced-colors: active){.link .outline{border-color:ActiveText}} + */const Fl=_`:host{--_container-height: var(--md-assist-chip-container-height, 32px);--_disabled-label-text-color: var(--md-assist-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-assist-chip-disabled-label-text-opacity, 0.38);--_elevated-container-color: var(--md-assist-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_elevated-container-elevation: var(--md-assist-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-assist-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-assist-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-assist-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-assist-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-assist-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-assist-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-assist-chip-elevated-pressed-container-elevation, 1);--_focus-label-text-color: var(--md-assist-chip-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-assist-chip-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-color: var(--md-assist-chip-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-assist-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-assist-chip-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-assist-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-assist-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-assist-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-assist-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-assist-chip-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-assist-chip-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-opacity: var(--md-assist-chip-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-assist-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-assist-chip-disabled-outline-opacity, 0.12);--_focus-outline-color: var(--md-assist-chip-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_outline-color: var(--md-assist-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-assist-chip-outline-width, 1px);--_disabled-leading-icon-color: var(--md-assist-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-assist-chip-disabled-leading-icon-opacity, 0.38);--_focus-leading-icon-color: var(--md-assist-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-assist-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-assist-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-assist-chip-icon-size, 18px);--_pressed-leading-icon-color: var(--md-assist-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-assist-chip-container-shape-start-start, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-assist-chip-container-shape-start-end, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-assist-chip-container-shape-end-end, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-assist-chip-container-shape-end-start, var(--md-assist-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-assist-chip-leading-space, 16px);--_trailing-space: var(--md-assist-chip-trailing-space, 16px);--_icon-label-space: var(--md-assist-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-assist-chip-with-leading-icon-leading-space, 8px)}@media(forced-colors: active){.link .outline{border-color:ActiveText}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Vo=x`.elevated{--md-elevation-level: var(--_elevated-container-elevation);--md-elevation-shadow-color: var(--_elevated-container-shadow-color)}.elevated::before{background:var(--_elevated-container-color)}.elevated:hover{--md-elevation-level: var(--_elevated-hover-container-elevation)}.elevated:focus-within{--md-elevation-level: var(--_elevated-focus-container-elevation)}.elevated:active{--md-elevation-level: var(--_elevated-pressed-container-elevation)}.elevated.disabled{--md-elevation-level: var(--_elevated-disabled-container-elevation)}.elevated.disabled::before{background:var(--_elevated-disabled-container-color);opacity:var(--_elevated-disabled-container-opacity)}@media(forced-colors: active){.elevated md-elevation{border:1px solid CanvasText}.elevated.disabled md-elevation{border-color:GrayText}} + */const _i=_`.elevated{--md-elevation-level: var(--_elevated-container-elevation);--md-elevation-shadow-color: var(--_elevated-container-shadow-color)}.elevated::before{background:var(--_elevated-container-color)}.elevated:hover{--md-elevation-level: var(--_elevated-hover-container-elevation)}.elevated:focus-within{--md-elevation-level: var(--_elevated-focus-container-elevation)}.elevated:active{--md-elevation-level: var(--_elevated-pressed-container-elevation)}.elevated.disabled{--md-elevation-level: var(--_elevated-disabled-container-elevation)}.elevated.disabled::before{background:var(--_elevated-disabled-container-color);opacity:var(--_elevated-disabled-container-opacity)}@media(forced-colors: active){.elevated md-elevation{border:1px solid CanvasText}.elevated.disabled md-elevation{border-color:GrayText}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ur=x`:host{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end);display:inline-flex;height:var(--_container-height);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}:host(:is([disabled],[soft-disabled])){pointer-events:none}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) 0}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}.container{border-radius:inherit;box-sizing:border-box;display:flex;height:100%;position:relative;width:100%}.container::before{border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.container:not(.disabled){cursor:pointer}.container.disabled{pointer-events:none}.cell{display:flex}.action{align-items:baseline;appearance:none;background:none;border:none;border-radius:inherit;display:flex;outline:none;padding:0;position:relative;text-decoration:none}.primary.action{min-width:0;padding-inline-start:var(--_leading-space);padding-inline-end:var(--_trailing-space)}.has-icon .primary.action{padding-inline-start:var(--_with-leading-icon-leading-space)}.touch{height:48px;inset:50% 0 0;position:absolute;transform:translateY(-50%);width:100%}:host([touch-target=none]) .touch{display:none}.outline{border:var(--_outline-width) solid var(--_outline-color);border-radius:inherit;inset:0;pointer-events:none;position:absolute}:where(:focus) .outline{border-color:var(--_focus-outline-color)}:where(.disabled) .outline{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}md-ripple{border-radius:inherit}.label,.icon,.touch{z-index:1}.label{align-items:center;color:var(--_label-text-color);display:flex;font-family:var(--_label-text-font);font-size:var(--_label-text-size);font-weight:var(--_label-text-weight);height:100%;line-height:var(--_label-text-line-height);overflow:hidden;user-select:none}.label-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(:hover) .label{color:var(--_hover-label-text-color)}:where(:focus) .label{color:var(--_focus-label-text-color)}:where(:active) .label{color:var(--_pressed-label-text-color)}:where(.disabled) .label{color:var(--_disabled-label-text-color);opacity:var(--_disabled-label-text-opacity)}.icon{align-self:center;display:flex;fill:currentColor;position:relative}.icon ::slotted(:first-child){font-size:var(--_icon-size);height:var(--_icon-size);width:var(--_icon-size)}.leading.icon{color:var(--_leading-icon-color)}.leading.icon ::slotted(*),.leading.icon svg{margin-inline-end:var(--_icon-label-space)}:where(:hover) .leading.icon{color:var(--_hover-leading-icon-color)}:where(:focus) .leading.icon{color:var(--_focus-leading-icon-color)}:where(:active) .leading.icon{color:var(--_pressed-leading-icon-color)}:where(.disabled) .leading.icon{color:var(--_disabled-leading-icon-color);opacity:var(--_disabled-leading-icon-opacity)}@media(forced-colors: active){:where(.disabled) :is(.label,.outline,.leading.icon){color:GrayText;opacity:1}}a,button{text-transform:inherit}a,button:not(:disabled,[aria-disabled=true]){cursor:inherit} + */const Oo=_`:host{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end);display:inline-flex;height:var(--_container-height);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}:host(:is([disabled],[soft-disabled])){pointer-events:none}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) 0}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}.container{border-radius:inherit;box-sizing:border-box;display:flex;height:100%;position:relative;width:100%}.container::before{border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.container:not(.disabled){cursor:pointer}.container.disabled{pointer-events:none}.cell{display:flex}.action{align-items:baseline;appearance:none;background:none;border:none;border-radius:inherit;display:flex;outline:none;padding:0;position:relative;text-decoration:none}.primary.action{min-width:0;padding-inline-start:var(--_leading-space);padding-inline-end:var(--_trailing-space)}.has-icon .primary.action{padding-inline-start:var(--_with-leading-icon-leading-space)}.touch{height:48px;inset:50% 0 0;position:absolute;transform:translateY(-50%);width:100%}:host([touch-target=none]) .touch{display:none}.outline{border:var(--_outline-width) solid var(--_outline-color);border-radius:inherit;inset:0;pointer-events:none;position:absolute}:where(:focus) .outline{border-color:var(--_focus-outline-color)}:where(.disabled) .outline{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}md-ripple{border-radius:inherit}.label,.icon,.touch{z-index:1}.label{align-items:center;color:var(--_label-text-color);display:flex;font-family:var(--_label-text-font);font-size:var(--_label-text-size);font-weight:var(--_label-text-weight);height:100%;line-height:var(--_label-text-line-height);overflow:hidden;user-select:none}.label-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(:hover) .label{color:var(--_hover-label-text-color)}:where(:focus) .label{color:var(--_focus-label-text-color)}:where(:active) .label{color:var(--_pressed-label-text-color)}:where(.disabled) .label{color:var(--_disabled-label-text-color);opacity:var(--_disabled-label-text-opacity)}.icon{align-self:center;display:flex;fill:currentColor;position:relative}.icon ::slotted(:first-child){font-size:var(--_icon-size);height:var(--_icon-size);width:var(--_icon-size)}.leading.icon{color:var(--_leading-icon-color)}.leading.icon ::slotted(*),.leading.icon svg{margin-inline-end:var(--_icon-label-space)}:where(:hover) .leading.icon{color:var(--_hover-leading-icon-color)}:where(:focus) .leading.icon{color:var(--_focus-leading-icon-color)}:where(:active) .leading.icon{color:var(--_pressed-leading-icon-color)}:where(.disabled) .leading.icon{color:var(--_disabled-leading-icon-color);opacity:var(--_disabled-leading-icon-opacity)}@media(forced-colors: active){:where(.disabled) :is(.label,.outline,.leading.icon){color:GrayText;opacity:1}}a,button{text-transform:inherit}a,button:not(:disabled,[aria-disabled=true]){cursor:inherit} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Wr=class extends $t{};Wr.styles=[ur,Vo,Un];Wr=n([w("md-assist-chip")],Wr);/** + */let Cr=class extends Ut{};Cr.styles=[Oo,_i,Fl];Cr=l([S("md-assist-chip")],Cr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Mi extends C{get chips(){return this.childElements.filter(e=>e instanceof Be)}constructor(){super(),this.internals=this.attachInternals(),this.addEventListener("focusin",this.updateTabIndices.bind(this)),this.addEventListener("update-focus",this.updateTabIndices.bind(this)),this.addEventListener("keydown",this.handleKeyDown.bind(this)),this.internals.role="toolbar"}render(){return p``}handleKeyDown(e){const t=e.key==="ArrowLeft",r=e.key==="ArrowRight",i=e.key==="Home",a=e.key==="End";if(!t&&!r&&!i&&!a)return;const{chips:s}=this;if(s.length<2)return;if(e.preventDefault(),i||a){const m=i?0:s.length-1;s[m].focus({trailing:a}),this.updateTabIndices();return}const c=getComputedStyle(this).direction==="rtl"?t:r,f=s.find(m=>m.matches(":focus-within"));if(!f){(c?s[0]:s[s.length-1]).focus({trailing:!c}),this.updateTabIndices();return}const v=s.indexOf(f);let u=c?v+1:v-1;for(;u!==v;){u>=s.length?u=0:u<0&&(u=s.length-1);const m=s[u];if(m.disabled&&!m.alwaysFocusable){c?u++:u--;continue}m.focus({trailing:!c}),this.updateTabIndices();break}}updateTabIndices(){const{chips:e}=this;let t;for(const r of e){const i=r.alwaysFocusable||!r.disabled;if(r.matches(":focus-within")&&i){t=r;continue}i&&!t&&(t=r),r.tabIndex=-1}t&&(t.tabIndex=0)}}n([ee()],Mi.prototype,"childElements",void 0);/** + */class Ra extends ${get chips(){return this.childElements.filter(e=>e instanceof Pe)}constructor(){super(),this.internals=this.attachInternals(),this.addEventListener("focusin",this.updateTabIndices.bind(this)),this.addEventListener("update-focus",this.updateTabIndices.bind(this)),this.addEventListener("keydown",this.handleKeyDown.bind(this)),this.internals.role="toolbar"}render(){return m``}handleKeyDown(e){const t=e.key==="ArrowLeft",o=e.key==="ArrowRight",i=e.key==="Home",a=e.key==="End";if(!t&&!o&&!i&&!a)return;const{chips:n}=this;if(n.length<2)return;if(e.preventDefault(),i||a){const f=i?0:n.length-1;n[f].focus({trailing:a}),this.updateTabIndices();return}const d=getComputedStyle(this).direction==="rtl"?t:o,h=n.find(f=>f.matches(":focus-within"));if(!h){(d?n[0]:n[n.length-1]).focus({trailing:!d}),this.updateTabIndices();return}const v=n.indexOf(h);let u=d?v+1:v-1;for(;u!==v;){u>=n.length?u=0:u<0&&(u=n.length-1);const f=n[u];if(f.disabled&&!f.alwaysFocusable){d?u++:u--;continue}f.focus({trailing:!d}),this.updateTabIndices();break}}updateTabIndices(){const{chips:e}=this;let t;for(const o of e){const i=o.alwaysFocusable||!o.disabled;if(o.matches(":focus-within")&&i){t=o;continue}i&&!t&&(t=o),o.tabIndex=-1}t&&(t.tabIndex=0)}}l([oe()],Ra.prototype,"childElements",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Hn=x`:host{display:flex;flex-wrap:wrap;gap:8px} + */const Nl=_`:host{display:flex;flex-wrap:wrap;gap:8px} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Kr=class extends Mi{};Kr.styles=[Hn];Kr=n([w("md-chip-set")],Kr);/** + */let Er=class extends Ra{};Er.styles=[Nl];Er=l([S("md-chip-set")],Er);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ft="aria-label-remove";class Di extends Be{get ariaLabelRemove(){if(this.hasAttribute(Ft))return this.getAttribute(Ft);const{ariaLabel:e}=this;return e||this.label?`Remove ${e||this.label}`:null}set ariaLabelRemove(e){const t=this.ariaLabelRemove;e!==t&&(e===null?this.removeAttribute(Ft):this.setAttribute(Ft,e),this.requestUpdate())}constructor(){super(),this.handleTrailingActionFocus=this.handleTrailingActionFocus.bind(this),this.addEventListener("keydown",this.handleKeyDown.bind(this))}focus(e){if((this.alwaysFocusable||!this.disabled)&&(e!=null&&e.trailing)&&this.trailingAction){this.trailingAction.focus(e);return}super.focus(e)}renderContainerContent(){return p` + */const ro="aria-label-remove";class Oa extends Pe{get ariaLabelRemove(){if(this.hasAttribute(ro))return this.getAttribute(ro);const{ariaLabel:e}=this;return e||this.label?`Remove ${e||this.label}`:null}set ariaLabelRemove(e){const t=this.ariaLabelRemove;e!==t&&(e===null?this.removeAttribute(ro):this.setAttribute(ro,e),this.requestUpdate())}constructor(){super(),this.handleTrailingActionFocus=this.handleTrailingActionFocus.bind(this),this.addEventListener("keydown",this.handleKeyDown.bind(this))}focus(e){if((this.alwaysFocusable||!this.disabled)&&(e!=null&&e.trailing)&&this.trailingAction){this.trailingAction.focus(e);return}super.focus(e)}renderContainerContent(){return m` ${super.renderContainerContent()} ${this.renderTrailingAction(this.handleTrailingActionFocus)} - `}handleKeyDown(e){var f,v;const t=e.key==="ArrowLeft",r=e.key==="ArrowRight";if(!t&&!r||!this.primaryAction||!this.trailingAction)return;const a=getComputedStyle(this).direction==="rtl"?t:r,s=(f=this.primaryAction)==null?void 0:f.matches(":focus-within"),d=(v=this.trailingAction)==null?void 0:v.matches(":focus-within");if(a&&d||!a&&s)return;e.preventDefault(),e.stopPropagation(),(a?this.trailingAction:this.primaryAction).focus()}handleTrailingActionFocus(){const{primaryAction:e,trailingAction:t}=this;!e||!t||(e.tabIndex=-1,t.addEventListener("focusout",()=>{e.tabIndex=0},{once:!0}))}}/** + `}handleKeyDown(e){var h,v;const t=e.key==="ArrowLeft",o=e.key==="ArrowRight";if(!t&&!o||!this.primaryAction||!this.trailingAction)return;const a=getComputedStyle(this).direction==="rtl"?t:o,n=(h=this.primaryAction)==null?void 0:h.matches(":focus-within"),s=(v=this.trailingAction)==null?void 0:v.matches(":focus-within");if(a&&s||!a&&n)return;e.preventDefault(),e.stopPropagation(),(a?this.trailingAction:this.primaryAction).focus()}handleTrailingActionFocus(){const{primaryAction:e,trailingAction:t}=this;!e||!t||(e.tabIndex=-1,t.addEventListener("focusout",()=>{e.tabIndex=0},{once:!0}))}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Fi({ariaLabel:o,disabled:e,focusListener:t,tabbable:r=!1}){return p` + */function Pa({ariaLabel:r,disabled:e,focusListener:t,tabbable:o=!1}){return m` - `}function qn(o){this.disabled||this.softDisabled||(o.stopPropagation(),!this.dispatchEvent(new Event("remove",{cancelable:!0})))||this.remove()}/** + `}function Ul(r){this.disabled||this.softDisabled||(r.stopPropagation(),!this.dispatchEvent(new Event("remove",{cancelable:!0})))||this.remove()}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class rt extends Di{constructor(){super(...arguments),this.elevated=!1,this.removable=!1,this.selected=!1,this.hasSelectedIcon=!1}get primaryId(){return"button"}getContainerClasses(){return{...super.getContainerClasses(),elevated:this.elevated,selected:this.selected,"has-trailing":this.removable,"has-icon":this.hasIcon||this.selected}}renderPrimaryAction(e){const{ariaLabel:t}=this;return p` + */class nt extends Oa{constructor(){super(...arguments),this.elevated=!1,this.removable=!1,this.selected=!1,this.hasSelectedIcon=!1}get primaryId(){return"button"}getContainerClasses(){return{...super.getContainerClasses(),elevated:this.elevated,selected:this.selected,"has-trailing":this.removable,"has-icon":this.hasIcon||this.selected}}renderPrimaryAction(e){const{ariaLabel:t}=this;return m` - `}renderLeadingIcon(){return this.selected?p` + `}renderLeadingIcon(){return this.selected?m` - `:super.renderLeadingIcon()}renderTrailingAction(e){return this.removable?Fi({focusListener:e,ariaLabel:this.ariaLabelRemove,disabled:this.disabled||this.softDisabled}):h}renderOutline(){return this.elevated?p``:super.renderOutline()}handleClickOnChild(e){if(this.disabled||this.softDisabled)return;const t=this.selected;if(this.selected=!this.selected,!Ue(this,e)){this.selected=t;return}}}n([l({type:Boolean})],rt.prototype,"elevated",void 0);n([l({type:Boolean})],rt.prototype,"removable",void 0);n([l({type:Boolean,reflect:!0})],rt.prototype,"selected",void 0);n([l({type:Boolean,reflect:!0,attribute:"has-selected-icon"})],rt.prototype,"hasSelectedIcon",void 0);n([E(".primary.action")],rt.prototype,"primaryAction",void 0);n([E(".trailing.action")],rt.prototype,"trailingAction",void 0);/** + `:super.renderLeadingIcon()}renderTrailingAction(e){return this.removable?Pa({focusListener:e,ariaLabel:this.ariaLabelRemove,disabled:this.disabled||this.softDisabled}):p}renderOutline(){return this.elevated?m``:super.renderOutline()}handleClickOnChild(e){if(this.disabled||this.softDisabled)return;const t=this.selected;if(this.selected=!this.selected,!je(this,e)){this.selected=t;return}}}l([c({type:Boolean})],nt.prototype,"elevated",void 0);l([c({type:Boolean})],nt.prototype,"removable",void 0);l([c({type:Boolean,reflect:!0})],nt.prototype,"selected",void 0);l([c({type:Boolean,reflect:!0,attribute:"has-selected-icon"})],nt.prototype,"hasSelectedIcon",void 0);l([B(".primary.action")],nt.prototype,"primaryAction",void 0);l([B(".trailing.action")],nt.prototype,"trailingAction",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Vn=x`:host{--_container-height: var(--md-filter-chip-container-height, 32px);--_disabled-label-text-color: var(--md-filter-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filter-chip-disabled-label-text-opacity, 0.38);--_elevated-container-elevation: var(--md-filter-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-filter-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-filter-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-filter-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-filter-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-filter-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-filter-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-filter-chip-elevated-pressed-container-elevation, 1);--_elevated-selected-container-color: var(--md-filter-chip-elevated-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_label-text-font: var(--md-filter-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filter-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filter-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filter-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_selected-focus-label-text-color: var(--md-filter-chip-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-filter-chip-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-filter-chip-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-opacity: var(--md-filter-chip-selected-hover-state-layer-opacity, 0.08);--_selected-label-text-color: var(--md-filter-chip-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-filter-chip-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-filter-chip-selected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_selected-pressed-state-layer-opacity: var(--md-filter-chip-selected-pressed-state-layer-opacity, 0.12);--_elevated-container-color: var(--md-filter-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_disabled-outline-color: var(--md-filter-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-filter-chip-disabled-outline-opacity, 0.12);--_disabled-selected-container-color: var(--md-filter-chip-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-filter-chip-disabled-selected-container-opacity, 0.12);--_focus-outline-color: var(--md-filter-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-filter-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-filter-chip-outline-width, 1px);--_selected-container-color: var(--md-filter-chip-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-outline-width: var(--md-filter-chip-selected-outline-width, 0px);--_focus-label-text-color: var(--md-filter-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-filter-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filter-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-filter-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filter-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-label-text-color: var(--md-filter-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-filter-chip-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filter-chip-pressed-state-layer-opacity, 0.12);--_icon-size: var(--md-filter-chip-icon-size, 18px);--_disabled-leading-icon-color: var(--md-filter-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-filter-chip-disabled-leading-icon-opacity, 0.38);--_selected-focus-leading-icon-color: var(--md-filter-chip-selected-focus-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-leading-icon-color: var(--md-filter-chip-selected-hover-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-leading-icon-color: var(--md-filter-chip-selected-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-leading-icon-color: var(--md-filter-chip-selected-pressed-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-leading-icon-color: var(--md-filter-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-filter-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-filter-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-filter-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_disabled-trailing-icon-color: var(--md-filter-chip-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-filter-chip-disabled-trailing-icon-opacity, 0.38);--_selected-focus-trailing-icon-color: var(--md-filter-chip-selected-focus-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-trailing-icon-color: var(--md-filter-chip-selected-hover-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-trailing-icon-color: var(--md-filter-chip-selected-pressed-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-trailing-icon-color: var(--md-filter-chip-selected-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-trailing-icon-color: var(--md-filter-chip-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-filter-chip-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-trailing-icon-color: var(--md-filter-chip-pressed-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-color: var(--md-filter-chip-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-filter-chip-container-shape-start-start, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-filter-chip-container-shape-start-end, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-filter-chip-container-shape-end-end, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-filter-chip-container-shape-end-start, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-filter-chip-leading-space, 16px);--_trailing-space: var(--md-filter-chip-trailing-space, 16px);--_icon-label-space: var(--md-filter-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-filter-chip-with-leading-icon-leading-space, 8px);--_with-trailing-icon-trailing-space: var(--md-filter-chip-with-trailing-icon-trailing-space, 8px)}.selected.elevated::before{background:var(--_elevated-selected-container-color)}.checkmark{height:var(--_icon-size);width:var(--_icon-size)}.disabled .checkmark{opacity:var(--_disabled-leading-icon-opacity)}@media(forced-colors: active){.disabled .checkmark{opacity:1}} + */const ql=_`:host{--_container-height: var(--md-filter-chip-container-height, 32px);--_disabled-label-text-color: var(--md-filter-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filter-chip-disabled-label-text-opacity, 0.38);--_elevated-container-elevation: var(--md-filter-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-filter-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-filter-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-filter-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-filter-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-filter-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-filter-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-filter-chip-elevated-pressed-container-elevation, 1);--_elevated-selected-container-color: var(--md-filter-chip-elevated-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_label-text-font: var(--md-filter-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filter-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-filter-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-filter-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_selected-focus-label-text-color: var(--md-filter-chip-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-filter-chip-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-filter-chip-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-opacity: var(--md-filter-chip-selected-hover-state-layer-opacity, 0.08);--_selected-label-text-color: var(--md-filter-chip-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-filter-chip-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-filter-chip-selected-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_selected-pressed-state-layer-opacity: var(--md-filter-chip-selected-pressed-state-layer-opacity, 0.12);--_elevated-container-color: var(--md-filter-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_disabled-outline-color: var(--md-filter-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-filter-chip-disabled-outline-opacity, 0.12);--_disabled-selected-container-color: var(--md-filter-chip-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-filter-chip-disabled-selected-container-opacity, 0.12);--_focus-outline-color: var(--md-filter-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-filter-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-filter-chip-outline-width, 1px);--_selected-container-color: var(--md-filter-chip-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-outline-width: var(--md-filter-chip-selected-outline-width, 0px);--_focus-label-text-color: var(--md-filter-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-filter-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filter-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-filter-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-filter-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-label-text-color: var(--md-filter-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-filter-chip-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filter-chip-pressed-state-layer-opacity, 0.12);--_icon-size: var(--md-filter-chip-icon-size, 18px);--_disabled-leading-icon-color: var(--md-filter-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-filter-chip-disabled-leading-icon-opacity, 0.38);--_selected-focus-leading-icon-color: var(--md-filter-chip-selected-focus-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-leading-icon-color: var(--md-filter-chip-selected-hover-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-leading-icon-color: var(--md-filter-chip-selected-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-leading-icon-color: var(--md-filter-chip-selected-pressed-leading-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-leading-icon-color: var(--md-filter-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-filter-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-filter-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-filter-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_disabled-trailing-icon-color: var(--md-filter-chip-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-filter-chip-disabled-trailing-icon-opacity, 0.38);--_selected-focus-trailing-icon-color: var(--md-filter-chip-selected-focus-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-trailing-icon-color: var(--md-filter-chip-selected-hover-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-trailing-icon-color: var(--md-filter-chip-selected-pressed-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-trailing-icon-color: var(--md-filter-chip-selected-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-trailing-icon-color: var(--md-filter-chip-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-filter-chip-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-trailing-icon-color: var(--md-filter-chip-pressed-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-color: var(--md-filter-chip-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-filter-chip-container-shape-start-start, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-filter-chip-container-shape-start-end, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-filter-chip-container-shape-end-end, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-filter-chip-container-shape-end-start, var(--md-filter-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-filter-chip-leading-space, 16px);--_trailing-space: var(--md-filter-chip-trailing-space, 16px);--_icon-label-space: var(--md-filter-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-filter-chip-with-leading-icon-leading-space, 8px);--_with-trailing-icon-trailing-space: var(--md-filter-chip-with-trailing-icon-trailing-space, 8px)}.selected.elevated::before{background:var(--_elevated-selected-container-color)}.checkmark{height:var(--_icon-size);width:var(--_icon-size)}.disabled .checkmark{opacity:var(--_disabled-leading-icon-opacity)}@media(forced-colors: active){.disabled .checkmark{opacity:1}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ni=x`.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_selected-pressed-state-layer-opacity)}:where(.selected)::before{background:var(--_selected-container-color)}:where(.selected) .outline{border-width:var(--_selected-outline-width)}:where(.selected.disabled)::before{background:var(--_disabled-selected-container-color);opacity:var(--_disabled-selected-container-opacity)}:where(.selected) .label{color:var(--_selected-label-text-color)}:where(.selected:hover) .label{color:var(--_selected-hover-label-text-color)}:where(.selected:focus) .label{color:var(--_selected-focus-label-text-color)}:where(.selected:active) .label{color:var(--_selected-pressed-label-text-color)}:where(.selected) .leading.icon{color:var(--_selected-leading-icon-color)}:where(.selected:hover) .leading.icon{color:var(--_selected-hover-leading-icon-color)}:where(.selected:focus) .leading.icon{color:var(--_selected-focus-leading-icon-color)}:where(.selected:active) .leading.icon{color:var(--_selected-pressed-leading-icon-color)}@media(forced-colors: active){:where(.selected:not(.elevated))::before{border:1px solid CanvasText}:where(.selected) .outline{border-width:1px}} + */const Da=_`.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_selected-pressed-state-layer-opacity)}:where(.selected)::before{background:var(--_selected-container-color)}:where(.selected) .outline{border-width:var(--_selected-outline-width)}:where(.selected.disabled)::before{background:var(--_disabled-selected-container-color);opacity:var(--_disabled-selected-container-opacity)}:where(.selected) .label{color:var(--_selected-label-text-color)}:where(.selected:hover) .label{color:var(--_selected-hover-label-text-color)}:where(.selected:focus) .label{color:var(--_selected-focus-label-text-color)}:where(.selected:active) .label{color:var(--_selected-pressed-label-text-color)}:where(.selected) .leading.icon{color:var(--_selected-leading-icon-color)}:where(.selected:hover) .leading.icon{color:var(--_selected-hover-leading-icon-color)}:where(.selected:focus) .leading.icon{color:var(--_selected-focus-leading-icon-color)}:where(.selected:active) .leading.icon{color:var(--_selected-pressed-leading-icon-color)}@media(forced-colors: active){:where(.selected:not(.elevated))::before{border:1px solid CanvasText}:where(.selected) .outline{border-width:1px}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ui=x`.trailing.action{align-items:center;justify-content:center;padding-inline-start:var(--_icon-label-space);padding-inline-end:var(--_with-trailing-icon-trailing-space)}.trailing.action :is(md-ripple,md-focus-ring){border-radius:50%;height:calc(1.3333333333*var(--_icon-size));width:calc(1.3333333333*var(--_icon-size))}.trailing.action md-focus-ring{inset:unset}.has-trailing .primary.action{padding-inline-end:0}.trailing.icon{color:var(--_trailing-icon-color);height:var(--_icon-size);width:var(--_icon-size)}:where(:hover) .trailing.icon{color:var(--_hover-trailing-icon-color)}:where(:focus) .trailing.icon{color:var(--_focus-trailing-icon-color)}:where(:active) .trailing.icon{color:var(--_pressed-trailing-icon-color)}:where(.disabled) .trailing.icon{color:var(--_disabled-trailing-icon-color);opacity:var(--_disabled-trailing-icon-opacity)}:where(.selected) .trailing.icon{color:var(--_selected-trailing-icon-color)}:where(.selected:hover) .trailing.icon{color:var(--_selected-hover-trailing-icon-color)}:where(.selected:focus) .trailing.icon{color:var(--_selected-focus-trailing-icon-color)}:where(.selected:active) .trailing.icon{color:var(--_selected-pressed-trailing-icon-color)}@media(forced-colors: active){.trailing.icon{color:ButtonText}:where(.disabled) .trailing.icon{color:GrayText;opacity:1}} + */const Ma=_`.trailing.action{align-items:center;justify-content:center;padding-inline-start:var(--_icon-label-space);padding-inline-end:var(--_with-trailing-icon-trailing-space)}.trailing.action :is(md-ripple,md-focus-ring){border-radius:50%;height:calc(1.3333333333*var(--_icon-size));width:calc(1.3333333333*var(--_icon-size))}.trailing.action md-focus-ring{inset:unset}.has-trailing .primary.action{padding-inline-end:0}.trailing.icon{color:var(--_trailing-icon-color);height:var(--_icon-size);width:var(--_icon-size)}:where(:hover) .trailing.icon{color:var(--_hover-trailing-icon-color)}:where(:focus) .trailing.icon{color:var(--_focus-trailing-icon-color)}:where(:active) .trailing.icon{color:var(--_pressed-trailing-icon-color)}:where(.disabled) .trailing.icon{color:var(--_disabled-trailing-icon-color);opacity:var(--_disabled-trailing-icon-opacity)}:where(.selected) .trailing.icon{color:var(--_selected-trailing-icon-color)}:where(.selected:hover) .trailing.icon{color:var(--_selected-hover-trailing-icon-color)}:where(.selected:focus) .trailing.icon{color:var(--_selected-focus-trailing-icon-color)}:where(.selected:active) .trailing.icon{color:var(--_selected-pressed-trailing-icon-color)}@media(forced-colors: active){.trailing.icon{color:ButtonText}:where(.disabled) .trailing.icon{color:GrayText;opacity:1}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let jr=class extends rt{};jr.styles=[ur,Vo,Ui,Ni,Vn];jr=n([w("md-filter-chip")],jr);/** + */let Ir=class extends nt{};Ir.styles=[Oo,_i,Ma,Da,ql];Ir=l([S("md-filter-chip")],Ir);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ot extends Di{constructor(){super(...arguments),this.avatar=!1,this.href="",this.target="",this.removeOnly=!1,this.selected=!1}get primaryId(){return this.href?"link":this.removeOnly?"":"button"}get rippleDisabled(){return!this.href&&(this.disabled||this.softDisabled)}get primaryAction(){return this.removeOnly?null:this.renderRoot.querySelector(".primary.action")}getContainerClasses(){return{...super.getContainerClasses(),avatar:this.avatar,disabled:!this.href&&(this.disabled||this.softDisabled),link:!!this.href,selected:this.selected,"has-trailing":!0}}renderPrimaryAction(e){const{ariaLabel:t}=this;return this.href?p` + */class lt extends Oa{constructor(){super(...arguments),this.avatar=!1,this.href="",this.target="",this.removeOnly=!1,this.selected=!1}get primaryId(){return this.href?"link":this.removeOnly?"":"button"}get rippleDisabled(){return!this.href&&(this.disabled||this.softDisabled)}get primaryAction(){return this.removeOnly?null:this.renderRoot.querySelector(".primary.action")}getContainerClasses(){return{...super.getContainerClasses(),avatar:this.avatar,disabled:!this.href&&(this.disabled||this.softDisabled),link:!!this.href,selected:this.selected,"has-trailing":!0}}renderPrimaryAction(e){const{ariaLabel:t}=this;return this.href?m` ${e} - `:this.removeOnly?p` - + `:this.removeOnly?m` + ${e} - `:p` + `:m` - `}renderTrailingAction(e){return Fi({focusListener:e,ariaLabel:this.ariaLabelRemove,disabled:!this.href&&(this.disabled||this.softDisabled),tabbable:this.removeOnly})}}n([l({type:Boolean})],ot.prototype,"avatar",void 0);n([l()],ot.prototype,"href",void 0);n([l()],ot.prototype,"target",void 0);n([l({type:Boolean,attribute:"remove-only"})],ot.prototype,"removeOnly",void 0);n([l({type:Boolean,reflect:!0})],ot.prototype,"selected",void 0);n([E(".trailing.action")],ot.prototype,"trailingAction",void 0);/** + `}renderTrailingAction(e){return Pa({focusListener:e,ariaLabel:this.ariaLabelRemove,disabled:!this.href&&(this.disabled||this.softDisabled),tabbable:this.removeOnly})}}l([c({type:Boolean})],lt.prototype,"avatar",void 0);l([c()],lt.prototype,"href",void 0);l([c()],lt.prototype,"target",void 0);l([c({type:Boolean,attribute:"remove-only"})],lt.prototype,"removeOnly",void 0);l([c({type:Boolean,reflect:!0})],lt.prototype,"selected",void 0);l([B(".trailing.action")],lt.prototype,"trailingAction",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Wn=x`:host{--_container-height: var(--md-input-chip-container-height, 32px);--_disabled-label-text-color: var(--md-input-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-input-chip-disabled-label-text-opacity, 0.38);--_disabled-selected-container-color: var(--md-input-chip-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-input-chip-disabled-selected-container-opacity, 0.12);--_label-text-font: var(--md-input-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-input-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-input-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-input-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_selected-container-color: var(--md-input-chip-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-label-text-color: var(--md-input-chip-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-input-chip-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-input-chip-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-opacity: var(--md-input-chip-selected-hover-state-layer-opacity, 0.08);--_selected-label-text-color: var(--md-input-chip-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-outline-width: var(--md-input-chip-selected-outline-width, 0px);--_selected-pressed-label-text-color: var(--md-input-chip-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-input-chip-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-opacity: var(--md-input-chip-selected-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-input-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-input-chip-disabled-outline-opacity, 0.12);--_focus-label-text-color: var(--md-input-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-input-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-input-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-input-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-input-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-input-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-input-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-input-chip-outline-width, 1px);--_pressed-label-text-color: var(--md-input-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-input-chip-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-input-chip-pressed-state-layer-opacity, 0.12);--_avatar-shape: var(--md-input-chip-avatar-shape, var(--md-sys-shape-corner-full, 9999px));--_avatar-size: var(--md-input-chip-avatar-size, 24px);--_disabled-avatar-opacity: var(--md-input-chip-disabled-avatar-opacity, 0.38);--_disabled-leading-icon-color: var(--md-input-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-input-chip-disabled-leading-icon-opacity, 0.38);--_icon-size: var(--md-input-chip-icon-size, 18px);--_selected-focus-leading-icon-color: var(--md-input-chip-selected-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-leading-icon-color: var(--md-input-chip-selected-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-leading-icon-color: var(--md-input-chip-selected-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-leading-icon-color: var(--md-input-chip-selected-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-input-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-input-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-input-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-input-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_disabled-trailing-icon-color: var(--md-input-chip-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-input-chip-disabled-trailing-icon-opacity, 0.38);--_selected-focus-trailing-icon-color: var(--md-input-chip-selected-focus-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-trailing-icon-color: var(--md-input-chip-selected-hover-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-trailing-icon-color: var(--md-input-chip-selected-pressed-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-trailing-icon-color: var(--md-input-chip-selected-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-trailing-icon-color: var(--md-input-chip-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-input-chip-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-trailing-icon-color: var(--md-input-chip-pressed-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-color: var(--md-input-chip-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-input-chip-leading-space, 16px);--_trailing-space: var(--md-input-chip-trailing-space, 16px);--_icon-label-space: var(--md-input-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-input-chip-with-leading-icon-leading-space, 8px);--_with-trailing-icon-trailing-space: var(--md-input-chip-with-trailing-icon-trailing-space, 8px)}:host([avatar]){--_container-shape-start-start: var( --md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-start-end: var( --md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-end: var( --md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-start: var( --md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) )}.avatar .primary.action{padding-inline-start:4px}.avatar .leading.icon ::slotted(:first-child){border-radius:var(--_avatar-shape);height:var(--_avatar-size);width:var(--_avatar-size)}.disabled.avatar .leading.icon{opacity:var(--_disabled-avatar-opacity)}@media(forced-colors: active){.link .outline{border-color:ActiveText}.disabled.avatar .leading.icon{opacity:1}} + */const Hl=_`:host{--_container-height: var(--md-input-chip-container-height, 32px);--_disabled-label-text-color: var(--md-input-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-input-chip-disabled-label-text-opacity, 0.38);--_disabled-selected-container-color: var(--md-input-chip-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-input-chip-disabled-selected-container-opacity, 0.12);--_label-text-font: var(--md-input-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-input-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-input-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-input-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_selected-container-color: var(--md-input-chip-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-label-text-color: var(--md-input-chip-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-input-chip-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-input-chip-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-opacity: var(--md-input-chip-selected-hover-state-layer-opacity, 0.08);--_selected-label-text-color: var(--md-input-chip-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-outline-width: var(--md-input-chip-selected-outline-width, 0px);--_selected-pressed-label-text-color: var(--md-input-chip-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-input-chip-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-opacity: var(--md-input-chip-selected-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-input-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-input-chip-disabled-outline-opacity, 0.12);--_focus-label-text-color: var(--md-input-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-input-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-input-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-input-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-input-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-input-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-input-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-input-chip-outline-width, 1px);--_pressed-label-text-color: var(--md-input-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-input-chip-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-input-chip-pressed-state-layer-opacity, 0.12);--_avatar-shape: var(--md-input-chip-avatar-shape, var(--md-sys-shape-corner-full, 9999px));--_avatar-size: var(--md-input-chip-avatar-size, 24px);--_disabled-avatar-opacity: var(--md-input-chip-disabled-avatar-opacity, 0.38);--_disabled-leading-icon-color: var(--md-input-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-input-chip-disabled-leading-icon-opacity, 0.38);--_icon-size: var(--md-input-chip-icon-size, 18px);--_selected-focus-leading-icon-color: var(--md-input-chip-selected-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-leading-icon-color: var(--md-input-chip-selected-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-leading-icon-color: var(--md-input-chip-selected-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-leading-icon-color: var(--md-input-chip-selected-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-input-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-input-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-input-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-input-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_disabled-trailing-icon-color: var(--md-input-chip-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-input-chip-disabled-trailing-icon-opacity, 0.38);--_selected-focus-trailing-icon-color: var(--md-input-chip-selected-focus-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-trailing-icon-color: var(--md-input-chip-selected-hover-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-trailing-icon-color: var(--md-input-chip-selected-pressed-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-trailing-icon-color: var(--md-input-chip-selected-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-trailing-icon-color: var(--md-input-chip-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-input-chip-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-trailing-icon-color: var(--md-input-chip-pressed-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-color: var(--md-input-chip-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-input-chip-leading-space, 16px);--_trailing-space: var(--md-input-chip-trailing-space, 16px);--_icon-label-space: var(--md-input-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-input-chip-with-leading-icon-leading-space, 8px);--_with-trailing-icon-trailing-space: var(--md-input-chip-with-trailing-icon-trailing-space, 8px)}:host([avatar]){--_container-shape-start-start: var( --md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-start-end: var( --md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-end: var( --md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-start: var( --md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) )}.avatar .primary.action{padding-inline-start:4px}.avatar .leading.icon ::slotted(:first-child){border-radius:var(--_avatar-shape);height:var(--_avatar-size);width:var(--_avatar-size)}.disabled.avatar .leading.icon{opacity:var(--_disabled-avatar-opacity)}@media(forced-colors: active){.link .outline{border-color:ActiveText}.disabled.avatar .leading.icon{opacity:1}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Gr=class extends ot{};Gr.styles=[ur,Ui,Ni,Wn];Gr=n([w("md-input-chip")],Gr);/** + */let Sr=class extends lt{};Sr.styles=[Oo,Ma,Da,Hl];Sr=l([S("md-input-chip")],Sr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Kn extends $t{}/** + */class Vl extends Ut{}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const jn=x`:host{--_container-height: var(--md-suggestion-chip-container-height, 32px);--_disabled-label-text-color: var(--md-suggestion-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-suggestion-chip-disabled-label-text-opacity, 0.38);--_elevated-container-color: var(--md-suggestion-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_elevated-container-elevation: var(--md-suggestion-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-suggestion-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-suggestion-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-suggestion-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-suggestion-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-suggestion-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-suggestion-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-suggestion-chip-elevated-pressed-container-elevation, 1);--_focus-label-text-color: var(--md-suggestion-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-suggestion-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-suggestion-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-suggestion-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-suggestion-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-suggestion-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-suggestion-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-suggestion-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-suggestion-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-suggestion-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-suggestion-chip-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-suggestion-chip-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-suggestion-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-suggestion-chip-disabled-outline-opacity, 0.12);--_focus-outline-color: var(--md-suggestion-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-suggestion-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-suggestion-chip-outline-width, 1px);--_disabled-leading-icon-color: var(--md-suggestion-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-suggestion-chip-disabled-leading-icon-opacity, 0.38);--_focus-leading-icon-color: var(--md-suggestion-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-suggestion-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-suggestion-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-suggestion-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-suggestion-chip-icon-size, 18px);--_container-shape-start-start: var(--md-suggestion-chip-container-shape-start-start, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-suggestion-chip-container-shape-start-end, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-suggestion-chip-container-shape-end-end, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-suggestion-chip-container-shape-end-start, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-suggestion-chip-leading-space, 16px);--_trailing-space: var(--md-suggestion-chip-trailing-space, 16px);--_icon-label-space: var(--md-suggestion-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-suggestion-chip-with-leading-icon-leading-space, 8px)}@media(forced-colors: active){.link .outline{border-color:ActiveText}} + */const Kl=_`:host{--_container-height: var(--md-suggestion-chip-container-height, 32px);--_disabled-label-text-color: var(--md-suggestion-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-suggestion-chip-disabled-label-text-opacity, 0.38);--_elevated-container-color: var(--md-suggestion-chip-elevated-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_elevated-container-elevation: var(--md-suggestion-chip-elevated-container-elevation, 1);--_elevated-container-shadow-color: var(--md-suggestion-chip-elevated-container-shadow-color, var(--md-sys-color-shadow, #000));--_elevated-disabled-container-color: var(--md-suggestion-chip-elevated-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_elevated-disabled-container-elevation: var(--md-suggestion-chip-elevated-disabled-container-elevation, 0);--_elevated-disabled-container-opacity: var(--md-suggestion-chip-elevated-disabled-container-opacity, 0.12);--_elevated-focus-container-elevation: var(--md-suggestion-chip-elevated-focus-container-elevation, 1);--_elevated-hover-container-elevation: var(--md-suggestion-chip-elevated-hover-container-elevation, 2);--_elevated-pressed-container-elevation: var(--md-suggestion-chip-elevated-pressed-container-elevation, 1);--_focus-label-text-color: var(--md-suggestion-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color: var(--md-suggestion-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-suggestion-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-suggestion-chip-hover-state-layer-opacity, 0.08);--_label-text-color: var(--md-suggestion-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-suggestion-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-suggestion-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-suggestion-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-suggestion-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-suggestion-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-suggestion-chip-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-suggestion-chip-pressed-state-layer-opacity, 0.12);--_disabled-outline-color: var(--md-suggestion-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-suggestion-chip-disabled-outline-opacity, 0.12);--_focus-outline-color: var(--md-suggestion-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-suggestion-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-suggestion-chip-outline-width, 1px);--_disabled-leading-icon-color: var(--md-suggestion-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-suggestion-chip-disabled-leading-icon-opacity, 0.38);--_focus-leading-icon-color: var(--md-suggestion-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color: var(--md-suggestion-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color: var(--md-suggestion-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color: var(--md-suggestion-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-suggestion-chip-icon-size, 18px);--_container-shape-start-start: var(--md-suggestion-chip-container-shape-start-start, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end: var(--md-suggestion-chip-container-shape-start-end, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end: var(--md-suggestion-chip-container-shape-end-end, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start: var(--md-suggestion-chip-container-shape-end-start, var(--md-suggestion-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space: var(--md-suggestion-chip-leading-space, 16px);--_trailing-space: var(--md-suggestion-chip-trailing-space, 16px);--_icon-label-space: var(--md-suggestion-chip-icon-label-space, 8px);--_with-leading-icon-leading-space: var(--md-suggestion-chip-with-leading-icon-leading-space, 8px)}@media(forced-colors: active){.link .outline{border-color:ActiveText}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Xr=class extends Kn{};Xr.styles=[ur,Vo,jn];Xr=n([w("md-suggestion-chip")],Xr);/** + */let Ar=class extends Vl{};Ar.styles=[Oo,_i,Kl];Ar=l([S("md-suggestion-chip")],Ar);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class vr extends C{constructor(){super(...arguments),this.inset=!1,this.insetStart=!1,this.insetEnd=!1}}n([l({type:Boolean,reflect:!0})],vr.prototype,"inset",void 0);n([l({type:Boolean,reflect:!0,attribute:"inset-start"})],vr.prototype,"insetStart",void 0);n([l({type:Boolean,reflect:!0,attribute:"inset-end"})],vr.prototype,"insetEnd",void 0);/** + */class Po extends ${constructor(){super(...arguments),this.inset=!1,this.insetStart=!1,this.insetEnd=!1}}l([c({type:Boolean,reflect:!0})],Po.prototype,"inset",void 0);l([c({type:Boolean,reflect:!0,attribute:"inset-start"})],Po.prototype,"insetStart",void 0);l([c({type:Boolean,reflect:!0,attribute:"inset-end"})],Po.prototype,"insetEnd",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Gn=x`:host{box-sizing:border-box;color:var(--md-divider-color, var(--md-sys-color-outline-variant, #cac4d0));display:flex;height:var(--md-divider-thickness, 1px);width:100%}:host([inset]),:host([inset-start]){padding-inline-start:16px}:host([inset]),:host([inset-end]){padding-inline-end:16px}:host::before{background:currentColor;content:"";height:100%;width:100%}@media(forced-colors: active){:host::before{background:CanvasText}} + */const Wl=_`:host{box-sizing:border-box;color:var(--md-divider-color, var(--md-sys-color-outline-variant, #cac4d0));display:flex;height:var(--md-divider-thickness, 1px);width:100%}:host([inset]),:host([inset-start]){padding-inline-start:16px}:host([inset]),:host([inset-end]){padding-inline-end:16px}:host::before{background:currentColor;content:"";height:100%;width:100%}@media(forced-colors: active){:host::before{background:CanvasText}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Yr=class extends vr{};Yr.styles=[Gn];Yr=n([w("md-divider")],Yr);/** + */let Tr=class extends Po{};Tr.styles=[Wl];Tr=l([S("md-divider")],Tr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Xn={dialog:[[[{transform:"translateY(-50px)"},{transform:"translateY(0)"}],{duration:500,easing:ke.EMPHASIZED}]],scrim:[[[{opacity:0},{opacity:.32}],{duration:500,easing:"linear"}]],container:[[[{opacity:0},{opacity:1}],{duration:50,easing:"linear",pseudoElement:"::before"}],[[{height:"35%"},{height:"100%"}],{duration:500,easing:ke.EMPHASIZED,pseudoElement:"::before"}]],headline:[[[{opacity:0},{opacity:0,offset:.2},{opacity:1}],{duration:250,easing:"linear",fill:"forwards"}]],content:[[[{opacity:0},{opacity:0,offset:.2},{opacity:1}],{duration:250,easing:"linear",fill:"forwards"}]],actions:[[[{opacity:0},{opacity:0,offset:.5},{opacity:1}],{duration:300,easing:"linear",fill:"forwards"}]]},Yn={dialog:[[[{transform:"translateY(0)"},{transform:"translateY(-50px)"}],{duration:150,easing:ke.EMPHASIZED_ACCELERATE}]],scrim:[[[{opacity:.32},{opacity:0}],{duration:150,easing:"linear"}]],container:[[[{height:"100%"},{height:"35%"}],{duration:150,easing:ke.EMPHASIZED_ACCELERATE,pseudoElement:"::before"}],[[{opacity:"1"},{opacity:"0"}],{delay:100,duration:50,easing:"linear",pseudoElement:"::before"}]],headline:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]],content:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]],actions:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]]};/** + */const jl={dialog:[[[{transform:"translateY(-50px)"},{transform:"translateY(0)"}],{duration:500,easing:we.EMPHASIZED}]],scrim:[[[{opacity:0},{opacity:.32}],{duration:500,easing:"linear"}]],container:[[[{opacity:0},{opacity:1}],{duration:50,easing:"linear",pseudoElement:"::before"}],[[{height:"35%"},{height:"100%"}],{duration:500,easing:we.EMPHASIZED,pseudoElement:"::before"}]],headline:[[[{opacity:0},{opacity:0,offset:.2},{opacity:1}],{duration:250,easing:"linear",fill:"forwards"}]],content:[[[{opacity:0},{opacity:0,offset:.2},{opacity:1}],{duration:250,easing:"linear",fill:"forwards"}]],actions:[[[{opacity:0},{opacity:0,offset:.5},{opacity:1}],{duration:300,easing:"linear",fill:"forwards"}]]},Gl={dialog:[[[{transform:"translateY(0)"},{transform:"translateY(-50px)"}],{duration:150,easing:we.EMPHASIZED_ACCELERATE}]],scrim:[[[{opacity:.32},{opacity:0}],{duration:150,easing:"linear"}]],container:[[[{height:"100%"},{height:"35%"}],{duration:150,easing:we.EMPHASIZED_ACCELERATE,pseudoElement:"::before"}],[[{opacity:"1"},{opacity:"0"}],{delay:100,duration:50,easing:"linear",pseudoElement:"::before"}]],headline:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]],content:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]],actions:[[[{opacity:1},{opacity:0}],{duration:100,easing:"linear",fill:"forwards"}]]};/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Zn=ne(C);class W extends Zn{get open(){return this.isOpen}set open(e){e!==this.isOpen&&(this.isOpen=e,e?(this.setAttribute("open",""),this.show()):(this.removeAttribute("open"),this.close()))}constructor(){super(),this.quick=!1,this.returnValue="",this.noFocusTrap=!1,this.getOpenAnimation=()=>Xn,this.getCloseAnimation=()=>Yn,this.isOpen=!1,this.isOpening=!1,this.isConnectedPromise=this.getIsConnectedPromise(),this.isAtScrollTop=!1,this.isAtScrollBottom=!1,this.nextClickIsFromContent=!1,this.hasHeadline=!1,this.hasActions=!1,this.hasIcon=!1,this.escapePressedWithoutCancel=!1,this.treewalker=document.createTreeWalker(this,NodeFilter.SHOW_ELEMENT),this.addEventListener("submit",this.handleSubmit)}async show(){var r;this.isOpening=!0,await this.isConnectedPromise,await this.updateComplete;const e=this.dialog;if(e.open||!this.isOpening){this.isOpening=!1;return}if(!this.dispatchEvent(new Event("open",{cancelable:!0}))){this.open=!1,this.isOpening=!1;return}e.showModal(),this.open=!0,this.scroller&&(this.scroller.scrollTop=0),(r=this.querySelector("[autofocus]"))==null||r.focus(),await this.animateDialog(this.getOpenAnimation()),this.dispatchEvent(new Event("opened")),this.isOpening=!1}async close(e=this.returnValue){if(this.isOpening=!1,!this.isConnected){this.open=!1;return}await this.updateComplete;const t=this.dialog;if(!t.open||this.isOpening){this.open=!1;return}const r=this.returnValue;if(this.returnValue=e,!this.dispatchEvent(new Event("close",{cancelable:!0}))){this.returnValue=r;return}await this.animateDialog(this.getCloseAnimation()),t.close(e),this.open=!1,this.dispatchEvent(new Event("closed"))}connectedCallback(){super.connectedCallback(),this.isConnectedPromiseResolve()}disconnectedCallback(){super.disconnectedCallback(),this.isConnectedPromise=this.getIsConnectedPromise()}render(){const e=this.open&&!(this.isAtScrollTop&&this.isAtScrollBottom),t={"has-headline":this.hasHeadline,"has-actions":this.hasActions,"has-icon":this.hasIcon,scrollable:e,"show-top-divider":e&&!this.isAtScrollTop,"show-bottom-divider":e&&!this.isAtScrollBottom},r=this.open&&!this.noFocusTrap,i=p` + */const Xl=se($);class W extends Xl{get open(){return this.isOpen}set open(e){e!==this.isOpen&&(this.isOpen=e,e?(this.setAttribute("open",""),this.show()):(this.removeAttribute("open"),this.close()))}constructor(){super(),this.quick=!1,this.returnValue="",this.noFocusTrap=!1,this.getOpenAnimation=()=>jl,this.getCloseAnimation=()=>Gl,this.isOpen=!1,this.isOpening=!1,this.isConnectedPromise=this.getIsConnectedPromise(),this.isAtScrollTop=!1,this.isAtScrollBottom=!1,this.nextClickIsFromContent=!1,this.hasHeadline=!1,this.hasActions=!1,this.hasIcon=!1,this.escapePressedWithoutCancel=!1,this.treewalker=document.createTreeWalker(this,NodeFilter.SHOW_ELEMENT),this.addEventListener("submit",this.handleSubmit)}async show(){var o;this.isOpening=!0,await this.isConnectedPromise,await this.updateComplete;const e=this.dialog;if(e.open||!this.isOpening){this.isOpening=!1;return}if(!this.dispatchEvent(new Event("open",{cancelable:!0}))){this.open=!1,this.isOpening=!1;return}e.showModal(),this.open=!0,this.scroller&&(this.scroller.scrollTop=0),(o=this.querySelector("[autofocus]"))==null||o.focus(),await this.animateDialog(this.getOpenAnimation()),this.dispatchEvent(new Event("opened")),this.isOpening=!1}async close(e=this.returnValue){if(this.isOpening=!1,!this.isConnected){this.open=!1;return}await this.updateComplete;const t=this.dialog;if(!t.open||this.isOpening){this.open=!1;return}const o=this.returnValue;if(this.returnValue=e,!this.dispatchEvent(new Event("close",{cancelable:!0}))){this.returnValue=o;return}await this.animateDialog(this.getCloseAnimation()),t.close(e),this.open=!1,this.dispatchEvent(new Event("closed"))}connectedCallback(){super.connectedCallback(),this.isConnectedPromiseResolve()}disconnectedCallback(){super.disconnectedCallback(),this.isConnectedPromise=this.getIsConnectedPromise()}render(){const e=this.open&&!(this.isAtScrollTop&&this.isAtScrollBottom),t={"has-headline":this.hasHeadline,"has-actions":this.hasActions,"has-icon":this.hasIcon,scrollable:e,"show-top-divider":e&&!this.isAtScrollTop,"show-bottom-divider":e&&!this.isAtScrollBottom},o=this.open&&!this.noFocusTrap,i=m` - `,{ariaLabel:a}=this;return p` + `,{ariaLabel:a}=this;return m`
- ${r?i:h} + .returnValue=${this.returnValue||p}> + ${o?i:p}
-

+

@@ -567,85 +567,85 @@

- ${r?i:h} + ${o?i:p}
- `}firstUpdated(){this.intersectionObserver=new IntersectionObserver(e=>{for(const t of e)this.handleAnchorIntersection(t)},{root:this.scroller}),this.intersectionObserver.observe(this.topAnchor),this.intersectionObserver.observe(this.bottomAnchor)}handleDialogClick(){if(this.nextClickIsFromContent){this.nextClickIsFromContent=!1;return}this.dispatchEvent(new Event("cancel",{cancelable:!0}))&&this.close()}handleContentClick(){this.nextClickIsFromContent=!0}handleSubmit(e){const t=e.target,{submitter:r}=e;t.method!=="dialog"||!r||this.close(r.getAttribute("value")??this.returnValue)}handleCancel(e){if(e.target!==this.dialog)return;this.escapePressedWithoutCancel=!1;const t=!Ue(this,e);e.preventDefault(),!t&&this.close()}handleClose(){var e;this.escapePressedWithoutCancel&&(this.escapePressedWithoutCancel=!1,(e=this.dialog)==null||e.dispatchEvent(new Event("cancel",{cancelable:!0})))}handleKeydown(e){e.key==="Escape"&&(this.escapePressedWithoutCancel=!0,setTimeout(()=>{this.escapePressedWithoutCancel=!1}))}async animateDialog(e){var L;if((L=this.cancelAnimations)==null||L.abort(),this.cancelAnimations=new AbortController,this.quick)return;const{dialog:t,scrim:r,container:i,headline:a,content:s,actions:d}=this;if(!t||!r||!i||!a||!s||!d)return;const{container:c,dialog:f,scrim:v,headline:u,content:m,actions:g}=e,S=[[t,f??[]],[r,v??[]],[i,c??[]],[a,u??[]],[s,m??[]],[d,g??[]]],k=[];for(const[B,T]of S)for(const F of T){const M=B.animate(...F);this.cancelAnimations.signal.addEventListener("abort",()=>{M.cancel()}),k.push(M)}await Promise.all(k.map(B=>B.finished.catch(()=>{})))}handleHeadlineChange(e){const t=e.target;this.hasHeadline=t.assignedElements().length>0}handleActionsChange(e){const t=e.target;this.hasActions=t.assignedElements().length>0}handleIconChange(e){const t=e.target;this.hasIcon=t.assignedElements().length>0}handleAnchorIntersection(e){const{target:t,isIntersecting:r}=e;t===this.topAnchor&&(this.isAtScrollTop=r),t===this.bottomAnchor&&(this.isAtScrollBottom=r)}getIsConnectedPromise(){return new Promise(e=>{this.isConnectedPromiseResolve=e})}handleFocusTrapFocus(e){var u;const[t,r]=this.getFirstAndLastFocusableChildren();if(!t||!r){(u=this.dialog)==null||u.focus();return}const i=e.target===this.firstFocusTrap,a=!i,s=e.relatedTarget===t,d=e.relatedTarget===r,c=!s&&!d;if(a&&d||i&&c){t.focus();return}if(i&&s||a&&c){r.focus();return}}getFirstAndLastFocusableChildren(){if(!this.treewalker)return[null,null];let e=null,t=null;for(this.treewalker.currentNode=this.treewalker.root;this.treewalker.nextNode();){const r=this.treewalker.currentNode;Qn(r)&&(e||(e=r),t=r)}return[e,t]}}n([l({type:Boolean})],W.prototype,"open",null);n([l({type:Boolean})],W.prototype,"quick",void 0);n([l({attribute:!1})],W.prototype,"returnValue",void 0);n([l()],W.prototype,"type",void 0);n([l({type:Boolean,attribute:"no-focus-trap"})],W.prototype,"noFocusTrap",void 0);n([E("dialog")],W.prototype,"dialog",void 0);n([E(".scrim")],W.prototype,"scrim",void 0);n([E(".container")],W.prototype,"container",void 0);n([E(".headline")],W.prototype,"headline",void 0);n([E(".content")],W.prototype,"content",void 0);n([E(".actions")],W.prototype,"actions",void 0);n([z()],W.prototype,"isAtScrollTop",void 0);n([z()],W.prototype,"isAtScrollBottom",void 0);n([E(".scroller")],W.prototype,"scroller",void 0);n([E(".top.anchor")],W.prototype,"topAnchor",void 0);n([E(".bottom.anchor")],W.prototype,"bottomAnchor",void 0);n([E(".focus-trap")],W.prototype,"firstFocusTrap",void 0);n([z()],W.prototype,"hasHeadline",void 0);n([z()],W.prototype,"hasActions",void 0);n([z()],W.prototype,"hasIcon",void 0);function Qn(o){var a;const e=":is(button,input,select,textarea,object,:is(a,area)[href],[tabindex],[contenteditable=true])",t=":not(:disabled,[disabled])";return o.matches(e+t+':not([tabindex^="-"])')?!0:!o.localName.includes("-")||!o.matches(t)?!1:((a=o.shadowRoot)==null?void 0:a.delegatesFocus)??!1}/** + `}firstUpdated(){this.intersectionObserver=new IntersectionObserver(e=>{for(const t of e)this.handleAnchorIntersection(t)},{root:this.scroller}),this.intersectionObserver.observe(this.topAnchor),this.intersectionObserver.observe(this.bottomAnchor)}handleDialogClick(){if(this.nextClickIsFromContent){this.nextClickIsFromContent=!1;return}this.dispatchEvent(new Event("cancel",{cancelable:!0}))&&this.close()}handleContentClick(){this.nextClickIsFromContent=!0}handleSubmit(e){const t=e.target,{submitter:o}=e;t.method!=="dialog"||!o||this.close(o.getAttribute("value")??this.returnValue)}handleCancel(e){if(e.target!==this.dialog)return;this.escapePressedWithoutCancel=!1;const t=!je(this,e);e.preventDefault(),!t&&this.close()}handleClose(){var e;this.escapePressedWithoutCancel&&(this.escapePressedWithoutCancel=!1,(e=this.dialog)==null||e.dispatchEvent(new Event("cancel",{cancelable:!0})))}handleKeydown(e){e.key==="Escape"&&(this.escapePressedWithoutCancel=!0,setTimeout(()=>{this.escapePressedWithoutCancel=!1}))}async animateDialog(e){var k;if((k=this.cancelAnimations)==null||k.abort(),this.cancelAnimations=new AbortController,this.quick)return;const{dialog:t,scrim:o,container:i,headline:a,content:n,actions:s}=this;if(!t||!o||!i||!a||!n||!s)return;const{container:d,dialog:h,scrim:v,headline:u,content:f,actions:y}=e,b=[[t,h??[]],[o,v??[]],[i,d??[]],[a,u??[]],[n,f??[]],[s,y??[]]],g=[];for(const[E,I]of b)for(const O of I){const P=E.animate(...O);this.cancelAnimations.signal.addEventListener("abort",()=>{P.cancel()}),g.push(P)}await Promise.all(g.map(E=>E.finished.catch(()=>{})))}handleHeadlineChange(e){const t=e.target;this.hasHeadline=t.assignedElements().length>0}handleActionsChange(e){const t=e.target;this.hasActions=t.assignedElements().length>0}handleIconChange(e){const t=e.target;this.hasIcon=t.assignedElements().length>0}handleAnchorIntersection(e){const{target:t,isIntersecting:o}=e;t===this.topAnchor&&(this.isAtScrollTop=o),t===this.bottomAnchor&&(this.isAtScrollBottom=o)}getIsConnectedPromise(){return new Promise(e=>{this.isConnectedPromiseResolve=e})}handleFocusTrapFocus(e){var u;const[t,o]=this.getFirstAndLastFocusableChildren();if(!t||!o){(u=this.dialog)==null||u.focus();return}const i=e.target===this.firstFocusTrap,a=!i,n=e.relatedTarget===t,s=e.relatedTarget===o,d=!n&&!s;if(a&&s||i&&d){t.focus();return}if(i&&n||a&&d){o.focus();return}}getFirstAndLastFocusableChildren(){if(!this.treewalker)return[null,null];let e=null,t=null;for(this.treewalker.currentNode=this.treewalker.root;this.treewalker.nextNode();){const o=this.treewalker.currentNode;Yl(o)&&(e||(e=o),t=o)}return[e,t]}}l([c({type:Boolean})],W.prototype,"open",null);l([c({type:Boolean})],W.prototype,"quick",void 0);l([c({attribute:!1})],W.prototype,"returnValue",void 0);l([c()],W.prototype,"type",void 0);l([c({type:Boolean,attribute:"no-focus-trap"})],W.prototype,"noFocusTrap",void 0);l([B("dialog")],W.prototype,"dialog",void 0);l([B(".scrim")],W.prototype,"scrim",void 0);l([B(".container")],W.prototype,"container",void 0);l([B(".headline")],W.prototype,"headline",void 0);l([B(".content")],W.prototype,"content",void 0);l([B(".actions")],W.prototype,"actions",void 0);l([M()],W.prototype,"isAtScrollTop",void 0);l([M()],W.prototype,"isAtScrollBottom",void 0);l([B(".scroller")],W.prototype,"scroller",void 0);l([B(".top.anchor")],W.prototype,"topAnchor",void 0);l([B(".bottom.anchor")],W.prototype,"bottomAnchor",void 0);l([B(".focus-trap")],W.prototype,"firstFocusTrap",void 0);l([M()],W.prototype,"hasHeadline",void 0);l([M()],W.prototype,"hasActions",void 0);l([M()],W.prototype,"hasIcon",void 0);function Yl(r){var a;const e=":is(button,input,select,textarea,object,:is(a,area)[href],[tabindex],[contenteditable=true])",t=":not(:disabled,[disabled])";return r.matches(e+t+':not([tabindex^="-"])')?!0:!r.localName.includes("-")||!r.matches(t)?!1:((a=r.shadowRoot)==null?void 0:a.delegatesFocus)??!1}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Jn=x`:host{border-start-start-radius:var(--md-dialog-container-shape-start-start, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-start-end-radius:var(--md-dialog-container-shape-start-end, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-end-end-radius:var(--md-dialog-container-shape-end-end, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-end-start-radius:var(--md-dialog-container-shape-end-start, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));display:contents;margin:auto;max-height:min(560px,100% - 48px);max-width:min(560px,100% - 48px);min-height:140px;min-width:280px;position:fixed;height:fit-content;width:fit-content}dialog{background:rgba(0,0,0,0);border:none;border-radius:inherit;flex-direction:column;height:inherit;margin:inherit;max-height:inherit;max-width:inherit;min-height:inherit;min-width:inherit;outline:none;overflow:visible;padding:0;width:inherit}dialog[open]{display:flex}::backdrop{background:none}.scrim{background:var(--md-sys-color-scrim, #000);display:none;inset:0;opacity:32%;pointer-events:none;position:fixed;z-index:1}:host([open]) .scrim{display:flex}h2{all:unset;align-self:stretch}.headline{align-items:center;color:var(--md-dialog-headline-color, var(--md-sys-color-on-surface, #1d1b20));display:flex;flex-direction:column;font-family:var(--md-dialog-headline-font, var(--md-sys-typescale-headline-small-font, var(--md-ref-typeface-brand, Roboto)));font-size:var(--md-dialog-headline-size, var(--md-sys-typescale-headline-small-size, 1.5rem));line-height:var(--md-dialog-headline-line-height, var(--md-sys-typescale-headline-small-line-height, 2rem));font-weight:var(--md-dialog-headline-weight, var(--md-sys-typescale-headline-small-weight, var(--md-ref-typeface-weight-regular, 400)));position:relative}slot[name=headline]::slotted(*){align-items:center;align-self:stretch;box-sizing:border-box;display:flex;gap:8px;padding:24px 24px 0}.icon{display:flex}slot[name=icon]::slotted(*){color:var(--md-dialog-icon-color, var(--md-sys-color-secondary, #625b71));fill:currentColor;font-size:var(--md-dialog-icon-size, 24px);margin-top:24px;height:var(--md-dialog-icon-size, 24px);width:var(--md-dialog-icon-size, 24px)}.has-icon slot[name=headline]::slotted(*){justify-content:center;padding-top:16px}.scrollable slot[name=headline]::slotted(*){padding-bottom:16px}.scrollable.has-headline slot[name=content]::slotted(*){padding-top:8px}.container{border-radius:inherit;display:flex;flex-direction:column;flex-grow:1;overflow:hidden;position:relative;transform-origin:top}.container::before{background:var(--md-dialog-container-color, var(--md-sys-color-surface-container-high, #ece6f0));border-radius:inherit;content:"";inset:0;position:absolute}.scroller{display:flex;flex:1;flex-direction:column;overflow:hidden;z-index:1}.scrollable .scroller{overflow-y:scroll}.content{color:var(--md-dialog-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-dialog-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-dialog-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-dialog-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));flex:1;font-weight:var(--md-dialog-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)));height:min-content;position:relative}slot[name=content]::slotted(*){box-sizing:border-box;padding:24px}.anchor{position:absolute}.top.anchor{top:0}.bottom.anchor{bottom:0}.actions{position:relative}slot[name=actions]::slotted(*){box-sizing:border-box;display:flex;gap:8px;justify-content:flex-end;padding:16px 24px 24px}.has-actions slot[name=content]::slotted(*){padding-bottom:8px}md-divider{display:none;position:absolute}.has-headline.show-top-divider .headline md-divider,.has-actions.show-bottom-divider .actions md-divider{display:flex}.headline md-divider{bottom:0}.actions md-divider{top:0}@media(forced-colors: active){dialog{outline:2px solid WindowText}} + */const Zl=_`:host{border-start-start-radius:var(--md-dialog-container-shape-start-start, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-start-end-radius:var(--md-dialog-container-shape-start-end, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-end-end-radius:var(--md-dialog-container-shape-end-end, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));border-end-start-radius:var(--md-dialog-container-shape-end-start, var(--md-dialog-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));display:contents;margin:auto;max-height:min(560px,100% - 48px);max-width:min(560px,100% - 48px);min-height:140px;min-width:280px;position:fixed;height:fit-content;width:fit-content}dialog{background:rgba(0,0,0,0);border:none;border-radius:inherit;flex-direction:column;height:inherit;margin:inherit;max-height:inherit;max-width:inherit;min-height:inherit;min-width:inherit;outline:none;overflow:visible;padding:0;width:inherit}dialog[open]{display:flex}::backdrop{background:none}.scrim{background:var(--md-sys-color-scrim, #000);display:none;inset:0;opacity:32%;pointer-events:none;position:fixed;z-index:1}:host([open]) .scrim{display:flex}h2{all:unset;align-self:stretch}.headline{align-items:center;color:var(--md-dialog-headline-color, var(--md-sys-color-on-surface, #1d1b20));display:flex;flex-direction:column;font-family:var(--md-dialog-headline-font, var(--md-sys-typescale-headline-small-font, var(--md-ref-typeface-brand, Roboto)));font-size:var(--md-dialog-headline-size, var(--md-sys-typescale-headline-small-size, 1.5rem));line-height:var(--md-dialog-headline-line-height, var(--md-sys-typescale-headline-small-line-height, 2rem));font-weight:var(--md-dialog-headline-weight, var(--md-sys-typescale-headline-small-weight, var(--md-ref-typeface-weight-regular, 400)));position:relative}slot[name=headline]::slotted(*){align-items:center;align-self:stretch;box-sizing:border-box;display:flex;gap:8px;padding:24px 24px 0}.icon{display:flex}slot[name=icon]::slotted(*){color:var(--md-dialog-icon-color, var(--md-sys-color-secondary, #625b71));fill:currentColor;font-size:var(--md-dialog-icon-size, 24px);margin-top:24px;height:var(--md-dialog-icon-size, 24px);width:var(--md-dialog-icon-size, 24px)}.has-icon slot[name=headline]::slotted(*){justify-content:center;padding-top:16px}.scrollable slot[name=headline]::slotted(*){padding-bottom:16px}.scrollable.has-headline slot[name=content]::slotted(*){padding-top:8px}.container{border-radius:inherit;display:flex;flex-direction:column;flex-grow:1;overflow:hidden;position:relative;transform-origin:top}.container::before{background:var(--md-dialog-container-color, var(--md-sys-color-surface-container-high, #ece6f0));border-radius:inherit;content:"";inset:0;position:absolute}.scroller{display:flex;flex:1;flex-direction:column;overflow:hidden;z-index:1}.scrollable .scroller{overflow-y:scroll}.content{color:var(--md-dialog-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-dialog-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-dialog-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-dialog-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));flex:1;font-weight:var(--md-dialog-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)));height:min-content;position:relative}slot[name=content]::slotted(*){box-sizing:border-box;padding:24px}.anchor{position:absolute}.top.anchor{top:0}.bottom.anchor{bottom:0}.actions{position:relative}slot[name=actions]::slotted(*){box-sizing:border-box;display:flex;gap:8px;justify-content:flex-end;padding:16px 24px 24px}.has-actions slot[name=content]::slotted(*){padding-bottom:8px}md-divider{display:none;position:absolute}.has-headline.show-top-divider .headline md-divider,.has-actions.show-bottom-divider .actions md-divider{display:flex}.headline md-divider{bottom:0}.actions md-divider{top:0}@media(forced-colors: active){dialog{outline:2px solid WindowText}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Zr=class extends W{};Zr.styles=[Jn];Zr=n([w("md-dialog")],Zr);/** + */let $r=class extends W{};$r.styles=[Zl];$r=l([S("md-dialog")],$r);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const es=ne(C);class Lt extends es{constructor(){super(...arguments),this.size="medium",this.label="",this.lowered=!1}render(){const{ariaLabel:e}=this;return p` + */const Ql=se($);class qt extends Ql{constructor(){super(...arguments),this.size="medium",this.label="",this.lowered=!1}render(){const{ariaLabel:e}=this;return m` - `}getRenderClasses(){const e=!!this.label;return{lowered:this.lowered,small:this.size==="small"&&!e,large:this.size==="large"&&!e,extended:e}}renderTouchTarget(){return p`
`}renderLabel(){return this.label?p`${this.label}`:""}renderIcon(){const{ariaLabel:e}=this;return p` + `}getRenderClasses(){const e=!!this.label;return{lowered:this.lowered,small:this.size==="small"&&!e,large:this.size==="large"&&!e,extended:e}}renderTouchTarget(){return m`
`}renderLabel(){return this.label?m`${this.label}`:""}renderIcon(){const{ariaLabel:e}=this;return m` + aria-hidden=${e||this.label?"true":p}> - `}}Lt.shadowRootOptions={mode:"open",delegatesFocus:!0};n([l({reflect:!0})],Lt.prototype,"size",void 0);n([l()],Lt.prototype,"label",void 0);n([l({type:Boolean})],Lt.prototype,"lowered",void 0);/** +
`}}qt.shadowRootOptions={mode:"open",delegatesFocus:!0};l([c({reflect:!0})],qt.prototype,"size",void 0);l([c()],qt.prototype,"label",void 0);l([c({type:Boolean})],qt.prototype,"lowered",void 0);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Wo extends Lt{constructor(){super(...arguments),this.variant="surface"}getRenderClasses(){return{...super.getRenderClasses(),primary:this.variant==="primary",secondary:this.variant==="secondary",tertiary:this.variant==="tertiary"}}}n([l()],Wo.prototype,"variant",void 0);/** + */class wi extends qt{constructor(){super(...arguments),this.variant="surface"}getRenderClasses(){return{...super.getRenderClasses(),primary:this.variant==="primary",secondary:this.variant==="secondary",tertiary:this.variant==="tertiary"}}}l([c()],wi.prototype,"variant",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ts=x`:host{--_container-color: var(--md-fab-branded-container-color, var(--md-sys-color-surface-container-high, #ece6f0));--_container-elevation: var(--md-fab-branded-container-elevation, 3);--_container-height: var(--md-fab-branded-container-height, 56px);--_container-shadow-color: var(--md-fab-branded-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-width: var(--md-fab-branded-container-width, 56px);--_focus-container-elevation: var(--md-fab-branded-focus-container-elevation, 3);--_hover-container-elevation: var(--md-fab-branded-hover-container-elevation, 4);--_hover-state-layer-color: var(--md-fab-branded-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-fab-branded-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-fab-branded-icon-size, 36px);--_lowered-container-color: var(--md-fab-branded-lowered-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_lowered-container-elevation: var(--md-fab-branded-lowered-container-elevation, 1);--_lowered-focus-container-elevation: var(--md-fab-branded-lowered-focus-container-elevation, 1);--_lowered-hover-container-elevation: var(--md-fab-branded-lowered-hover-container-elevation, 2);--_lowered-pressed-container-elevation: var(--md-fab-branded-lowered-pressed-container-elevation, 1);--_pressed-container-elevation: var(--md-fab-branded-pressed-container-elevation, 3);--_pressed-state-layer-color: var(--md-fab-branded-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-fab-branded-pressed-state-layer-opacity, 0.12);--_focus-label-text-color: var(--md-fab-branded-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-fab-branded-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-color: var(--md-fab-branded-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-fab-branded-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-size: var(--md-fab-branded-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-line-height: var(--md-fab-branded-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-weight: var(--md-fab-branded-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_large-container-height: var(--md-fab-branded-large-container-height, 96px);--_large-container-width: var(--md-fab-branded-large-container-width, 96px);--_large-icon-size: var(--md-fab-branded-large-icon-size, 48px);--_pressed-label-text-color: var(--md-fab-branded-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-fab-branded-container-shape-start-start, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-start-end: var(--md-fab-branded-container-shape-start-end, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-end: var(--md-fab-branded-container-shape-end-end, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-start: var(--md-fab-branded-container-shape-end-start, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_large-container-shape-start-start: var(--md-fab-branded-large-container-shape-start-start, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-start-end: var(--md-fab-branded-large-container-shape-start-end, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-end: var(--md-fab-branded-large-container-shape-end-end, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-start: var(--md-fab-branded-large-container-shape-end-start, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)))} + */const Jl=_`:host{--_container-color: var(--md-fab-branded-container-color, var(--md-sys-color-surface-container-high, #ece6f0));--_container-elevation: var(--md-fab-branded-container-elevation, 3);--_container-height: var(--md-fab-branded-container-height, 56px);--_container-shadow-color: var(--md-fab-branded-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-width: var(--md-fab-branded-container-width, 56px);--_focus-container-elevation: var(--md-fab-branded-focus-container-elevation, 3);--_hover-container-elevation: var(--md-fab-branded-hover-container-elevation, 4);--_hover-state-layer-color: var(--md-fab-branded-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-fab-branded-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-fab-branded-icon-size, 36px);--_lowered-container-color: var(--md-fab-branded-lowered-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_lowered-container-elevation: var(--md-fab-branded-lowered-container-elevation, 1);--_lowered-focus-container-elevation: var(--md-fab-branded-lowered-focus-container-elevation, 1);--_lowered-hover-container-elevation: var(--md-fab-branded-lowered-hover-container-elevation, 2);--_lowered-pressed-container-elevation: var(--md-fab-branded-lowered-pressed-container-elevation, 1);--_pressed-container-elevation: var(--md-fab-branded-pressed-container-elevation, 3);--_pressed-state-layer-color: var(--md-fab-branded-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-fab-branded-pressed-state-layer-opacity, 0.12);--_focus-label-text-color: var(--md-fab-branded-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-fab-branded-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-color: var(--md-fab-branded-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-fab-branded-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-size: var(--md-fab-branded-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-line-height: var(--md-fab-branded-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-weight: var(--md-fab-branded-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_large-container-height: var(--md-fab-branded-large-container-height, 96px);--_large-container-width: var(--md-fab-branded-large-container-width, 96px);--_large-icon-size: var(--md-fab-branded-large-icon-size, 48px);--_pressed-label-text-color: var(--md-fab-branded-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-fab-branded-container-shape-start-start, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-start-end: var(--md-fab-branded-container-shape-start-end, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-end: var(--md-fab-branded-container-shape-end-end, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-start: var(--md-fab-branded-container-shape-end-start, var(--md-fab-branded-container-shape, var(--md-sys-shape-corner-large, 16px)));--_large-container-shape-start-start: var(--md-fab-branded-large-container-shape-start-start, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-start-end: var(--md-fab-branded-large-container-shape-start-end, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-end: var(--md-fab-branded-large-container-shape-end-end, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-start: var(--md-fab-branded-large-container-shape-end-start, var(--md-fab-branded-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)))} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Hi=x`@media(forced-colors: active){.fab{border:1px solid ButtonText}.fab.extended{padding-inline-start:15px;padding-inline-end:19px}md-focus-ring{--md-focus-ring-outward-offset: 3px}} + */const Fa=_`@media(forced-colors: active){.fab{border:1px solid ButtonText}.fab.extended{padding-inline-start:15px;padding-inline-end:19px}md-focus-ring{--md-focus-ring-outward-offset: 3px}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const qi=x`:host{--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity);display:inline-flex;-webkit-tap-highlight-color:rgba(0,0,0,0)}:host([size=medium][touch-target=wrapper]){margin:max(0px,48px - var(--_container-height))}:host([size=large][touch-target=wrapper]){margin:max(0px,48px - var(--_large-container-height))}.fab,.icon,.icon ::slotted(*){display:flex}.fab{align-items:center;justify-content:center;vertical-align:middle;padding:0;position:relative;height:var(--_container-height);transition-property:background-color;border-width:0px;outline:none;z-index:0;text-transform:inherit;--md-elevation-level: var(--_container-elevation);--md-elevation-shadow-color: var(--_container-shadow-color);background-color:var(--_container-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-pressed-color: var(--_pressed-state-layer-color)}.fab.extended{width:inherit;box-sizing:border-box;padding-inline-start:16px;padding-inline-end:20px}.fab:not(.extended){width:var(--_container-width)}.fab.large{width:var(--_large-container-width);height:var(--_large-container-height)}.fab.large .icon ::slotted(*){width:var(--_large-icon-size);height:var(--_large-icon-size);font-size:var(--_large-icon-size)}.fab.large,.fab.large .ripple{border-start-start-radius:var(--_large-container-shape-start-start);border-start-end-radius:var(--_large-container-shape-start-end);border-end-start-radius:var(--_large-container-shape-end-start);border-end-end-radius:var(--_large-container-shape-end-end)}.fab.large md-focus-ring{--md-focus-ring-shape-start-start: var(--_large-container-shape-start-start);--md-focus-ring-shape-start-end: var(--_large-container-shape-start-end);--md-focus-ring-shape-end-end: var(--_large-container-shape-end-end);--md-focus-ring-shape-end-start: var(--_large-container-shape-end-start)}.fab:focus{--md-elevation-level: var(--_focus-container-elevation)}.fab:hover{--md-elevation-level: var(--_hover-container-elevation)}.fab:active{--md-elevation-level: var(--_pressed-container-elevation)}.fab.lowered{background-color:var(--_lowered-container-color);--md-elevation-level: var(--_lowered-container-elevation)}.fab.lowered:focus{--md-elevation-level: var(--_lowered-focus-container-elevation)}.fab.lowered:hover{--md-elevation-level: var(--_lowered-hover-container-elevation)}.fab.lowered:active{--md-elevation-level: var(--_lowered-pressed-container-elevation)}.fab .label{color:var(--_label-text-color)}.fab:hover .fab .label{color:var(--_hover-label-text-color)}.fab:focus .fab .label{color:var(--_focus-label-text-color)}.fab:active .fab .label{color:var(--_pressed-label-text-color)}.label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight)}.fab.extended .icon ::slotted(*){margin-inline-end:12px}.ripple{overflow:hidden}.ripple,md-elevation{z-index:-1}.touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}:host([touch-target=none]) .touch-target{display:none}md-elevation,.fab{transition-duration:280ms;transition-timing-function:cubic-bezier(0.2, 0, 0, 1)}.fab,.ripple{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}.icon ::slotted(*){width:var(--_icon-size);height:var(--_icon-size);font-size:var(--_icon-size)} + */const Na=_`:host{--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity);display:inline-flex;-webkit-tap-highlight-color:rgba(0,0,0,0)}:host([size=medium][touch-target=wrapper]){margin:max(0px,48px - var(--_container-height))}:host([size=large][touch-target=wrapper]){margin:max(0px,48px - var(--_large-container-height))}.fab,.icon,.icon ::slotted(*){display:flex}.fab{align-items:center;justify-content:center;vertical-align:middle;padding:0;position:relative;height:var(--_container-height);transition-property:background-color;border-width:0px;outline:none;z-index:0;text-transform:inherit;--md-elevation-level: var(--_container-elevation);--md-elevation-shadow-color: var(--_container-shadow-color);background-color:var(--_container-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-pressed-color: var(--_pressed-state-layer-color)}.fab.extended{width:inherit;box-sizing:border-box;padding-inline-start:16px;padding-inline-end:20px}.fab:not(.extended){width:var(--_container-width)}.fab.large{width:var(--_large-container-width);height:var(--_large-container-height)}.fab.large .icon ::slotted(*){width:var(--_large-icon-size);height:var(--_large-icon-size);font-size:var(--_large-icon-size)}.fab.large,.fab.large .ripple{border-start-start-radius:var(--_large-container-shape-start-start);border-start-end-radius:var(--_large-container-shape-start-end);border-end-start-radius:var(--_large-container-shape-end-start);border-end-end-radius:var(--_large-container-shape-end-end)}.fab.large md-focus-ring{--md-focus-ring-shape-start-start: var(--_large-container-shape-start-start);--md-focus-ring-shape-start-end: var(--_large-container-shape-start-end);--md-focus-ring-shape-end-end: var(--_large-container-shape-end-end);--md-focus-ring-shape-end-start: var(--_large-container-shape-end-start)}.fab:focus{--md-elevation-level: var(--_focus-container-elevation)}.fab:hover{--md-elevation-level: var(--_hover-container-elevation)}.fab:active{--md-elevation-level: var(--_pressed-container-elevation)}.fab.lowered{background-color:var(--_lowered-container-color);--md-elevation-level: var(--_lowered-container-elevation)}.fab.lowered:focus{--md-elevation-level: var(--_lowered-focus-container-elevation)}.fab.lowered:hover{--md-elevation-level: var(--_lowered-hover-container-elevation)}.fab.lowered:active{--md-elevation-level: var(--_lowered-pressed-container-elevation)}.fab .label{color:var(--_label-text-color)}.fab:hover .fab .label{color:var(--_hover-label-text-color)}.fab:focus .fab .label{color:var(--_focus-label-text-color)}.fab:active .fab .label{color:var(--_pressed-label-text-color)}.label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight)}.fab.extended .icon ::slotted(*){margin-inline-end:12px}.ripple{overflow:hidden}.ripple,md-elevation{z-index:-1}.touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}:host([touch-target=none]) .touch-target{display:none}md-elevation,.fab{transition-duration:280ms;transition-timing-function:cubic-bezier(0.2, 0, 0, 1)}.fab,.ripple{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}.icon ::slotted(*){width:var(--_icon-size);height:var(--_icon-size);font-size:var(--_icon-size)} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Qr=class extends Wo{getRenderClasses(){return{...super.getRenderClasses(),primary:!1,secondary:!1,tertiary:!1,small:!1}}};Qr.styles=[qi,ts,Hi];Qr=n([w("md-branded-fab")],Qr);/** + */let Lr=class extends wi{getRenderClasses(){return{...super.getRenderClasses(),primary:!1,secondary:!1,tertiary:!1,small:!1}}};Lr.styles=[Na,Jl,Fa];Lr=l([S("md-branded-fab")],Lr);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const rs=x`:host{--_container-color: var(--md-fab-container-color, var(--md-sys-color-surface-container-high, #ece6f0));--_container-elevation: var(--md-fab-container-elevation, 3);--_container-height: var(--md-fab-container-height, 56px);--_container-shadow-color: var(--md-fab-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-width: var(--md-fab-container-width, 56px);--_focus-container-elevation: var(--md-fab-focus-container-elevation, 3);--_focus-icon-color: var(--md-fab-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-container-elevation: var(--md-fab-hover-container-elevation, 4);--_hover-icon-color: var(--md-fab-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-fab-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-fab-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-fab-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-fab-icon-size, 24px);--_lowered-container-color: var(--md-fab-lowered-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_lowered-container-elevation: var(--md-fab-lowered-container-elevation, 1);--_lowered-focus-container-elevation: var(--md-fab-lowered-focus-container-elevation, 1);--_lowered-hover-container-elevation: var(--md-fab-lowered-hover-container-elevation, 2);--_lowered-pressed-container-elevation: var(--md-fab-lowered-pressed-container-elevation, 1);--_pressed-container-elevation: var(--md-fab-pressed-container-elevation, 3);--_pressed-icon-color: var(--md-fab-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-fab-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-fab-pressed-state-layer-opacity, 0.12);--_focus-label-text-color: var(--md-fab-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-fab-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-color: var(--md-fab-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-fab-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-fab-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-fab-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-fab-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_large-container-height: var(--md-fab-large-container-height, 96px);--_large-container-width: var(--md-fab-large-container-width, 96px);--_large-icon-size: var(--md-fab-large-icon-size, 36px);--_pressed-label-text-color: var(--md-fab-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_primary-container-color: var(--md-fab-primary-container-color, var(--md-sys-color-primary-container, #eaddff));--_primary-focus-icon-color: var(--md-fab-primary-focus-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-focus-label-text-color: var(--md-fab-primary-focus-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-icon-color: var(--md-fab-primary-hover-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-label-text-color: var(--md-fab-primary-hover-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-state-layer-color: var(--md-fab-primary-hover-state-layer-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-icon-color: var(--md-fab-primary-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-label-text-color: var(--md-fab-primary-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-icon-color: var(--md-fab-primary-pressed-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-label-text-color: var(--md-fab-primary-pressed-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-state-layer-color: var(--md-fab-primary-pressed-state-layer-color, var(--md-sys-color-on-primary-container, #21005d));--_secondary-container-color: var(--md-fab-secondary-container-color, var(--md-sys-color-secondary-container, #e8def8));--_secondary-focus-icon-color: var(--md-fab-secondary-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-focus-label-text-color: var(--md-fab-secondary-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-icon-color: var(--md-fab-secondary-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-label-text-color: var(--md-fab-secondary-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-state-layer-color: var(--md-fab-secondary-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-icon-color: var(--md-fab-secondary-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-label-text-color: var(--md-fab-secondary-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-icon-color: var(--md-fab-secondary-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-label-text-color: var(--md-fab-secondary-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-state-layer-color: var(--md-fab-secondary-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_small-container-height: var(--md-fab-small-container-height, 40px);--_small-container-width: var(--md-fab-small-container-width, 40px);--_small-icon-size: var(--md-fab-small-icon-size, 24px);--_tertiary-container-color: var(--md-fab-tertiary-container-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_tertiary-focus-icon-color: var(--md-fab-tertiary-focus-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-focus-label-text-color: var(--md-fab-tertiary-focus-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-icon-color: var(--md-fab-tertiary-hover-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-label-text-color: var(--md-fab-tertiary-hover-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-state-layer-color: var(--md-fab-tertiary-hover-state-layer-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-icon-color: var(--md-fab-tertiary-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-label-text-color: var(--md-fab-tertiary-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-icon-color: var(--md-fab-tertiary-pressed-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-label-text-color: var(--md-fab-tertiary-pressed-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-state-layer-color: var(--md-fab-tertiary-pressed-state-layer-color, var(--md-sys-color-on-tertiary-container, #31111d));--_container-shape-start-start: var(--md-fab-container-shape-start-start, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-start-end: var(--md-fab-container-shape-start-end, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-end: var(--md-fab-container-shape-end-end, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-start: var(--md-fab-container-shape-end-start, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_large-container-shape-start-start: var(--md-fab-large-container-shape-start-start, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-start-end: var(--md-fab-large-container-shape-start-end, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-end: var(--md-fab-large-container-shape-end-end, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-start: var(--md-fab-large-container-shape-end-start, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_small-container-shape-start-start: var(--md-fab-small-container-shape-start-start, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-start-end: var(--md-fab-small-container-shape-start-end, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-end-end: var(--md-fab-small-container-shape-end-end, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-end-start: var(--md-fab-small-container-shape-end-start, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));cursor:pointer}:host([size=small][touch-target=wrapper]){margin:max(0px,48px - var(--_small-container-height))}.fab{cursor:inherit}.fab .icon ::slotted(*){color:var(--_icon-color)}.fab:focus{color:var(--_focus-icon-color)}.fab:hover{color:var(--_hover-icon-color)}.fab:active{color:var(--_pressed-icon-color)}.fab.primary{background-color:var(--_primary-container-color);--md-ripple-hover-color: var(--_primary-hover-state-layer-color);--md-ripple-pressed-color: var(--_primary-pressed-state-layer-color)}.fab.primary .icon ::slotted(*){color:var(--_primary-icon-color)}.fab.primary:focus{color:var(--_primary-focus-icon-color)}.fab.primary:hover{color:var(--_primary-hover-icon-color)}.fab.primary:active{color:var(--_primary-pressed-icon-color)}.fab.primary .label{color:var(--_primary-label-text-color)}.fab:hover .fab.primary .label{color:var(--_primary-hover-label-text-color)}.fab:focus .fab.primary .label{color:var(--_primary-focus-label-text-color)}.fab:active .fab.primary .label{color:var(--_primary-pressed-label-text-color)}.fab.secondary{background-color:var(--_secondary-container-color);--md-ripple-hover-color: var(--_secondary-hover-state-layer-color);--md-ripple-pressed-color: var(--_secondary-pressed-state-layer-color)}.fab.secondary .icon ::slotted(*){color:var(--_secondary-icon-color)}.fab.secondary:focus{color:var(--_secondary-focus-icon-color)}.fab.secondary:hover{color:var(--_secondary-hover-icon-color)}.fab.secondary:active{color:var(--_secondary-pressed-icon-color)}.fab.secondary .label{color:var(--_secondary-label-text-color)}.fab:hover .fab.secondary .label{color:var(--_secondary-hover-label-text-color)}.fab:focus .fab.secondary .label{color:var(--_secondary-focus-label-text-color)}.fab:active .fab.secondary .label{color:var(--_secondary-pressed-label-text-color)}.fab.tertiary{background-color:var(--_tertiary-container-color);--md-ripple-hover-color: var(--_tertiary-hover-state-layer-color);--md-ripple-pressed-color: var(--_tertiary-pressed-state-layer-color)}.fab.tertiary .icon ::slotted(*){color:var(--_tertiary-icon-color)}.fab.tertiary:focus{color:var(--_tertiary-focus-icon-color)}.fab.tertiary:hover{color:var(--_tertiary-hover-icon-color)}.fab.tertiary:active{color:var(--_tertiary-pressed-icon-color)}.fab.tertiary .label{color:var(--_tertiary-label-text-color)}.fab:hover .fab.tertiary .label{color:var(--_tertiary-hover-label-text-color)}.fab:focus .fab.tertiary .label{color:var(--_tertiary-focus-label-text-color)}.fab:active .fab.tertiary .label{color:var(--_tertiary-pressed-label-text-color)}.fab.extended slot span{padding-inline-start:4px}.fab.small{width:var(--_small-container-width);height:var(--_small-container-height)}.fab.small .icon ::slotted(*){width:var(--_small-icon-size);height:var(--_small-icon-size);font-size:var(--_small-icon-size)}.fab.small,.fab.small .ripple{border-start-start-radius:var(--_small-container-shape-start-start);border-start-end-radius:var(--_small-container-shape-start-end);border-end-start-radius:var(--_small-container-shape-end-start);border-end-end-radius:var(--_small-container-shape-end-end)}.fab.small md-focus-ring{--md-focus-ring-shape-start-start: var(--_small-container-shape-start-start);--md-focus-ring-shape-start-end: var(--_small-container-shape-start-end);--md-focus-ring-shape-end-end: var(--_small-container-shape-end-end);--md-focus-ring-shape-end-start: var(--_small-container-shape-end-start)} + */const es=_`:host{--_container-color: var(--md-fab-container-color, var(--md-sys-color-surface-container-high, #ece6f0));--_container-elevation: var(--md-fab-container-elevation, 3);--_container-height: var(--md-fab-container-height, 56px);--_container-shadow-color: var(--md-fab-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-width: var(--md-fab-container-width, 56px);--_focus-container-elevation: var(--md-fab-focus-container-elevation, 3);--_focus-icon-color: var(--md-fab-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-container-elevation: var(--md-fab-hover-container-elevation, 4);--_hover-icon-color: var(--md-fab-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-fab-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-fab-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-fab-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-fab-icon-size, 24px);--_lowered-container-color: var(--md-fab-lowered-container-color, var(--md-sys-color-surface-container-low, #f7f2fa));--_lowered-container-elevation: var(--md-fab-lowered-container-elevation, 1);--_lowered-focus-container-elevation: var(--md-fab-lowered-focus-container-elevation, 1);--_lowered-hover-container-elevation: var(--md-fab-lowered-hover-container-elevation, 2);--_lowered-pressed-container-elevation: var(--md-fab-lowered-pressed-container-elevation, 1);--_pressed-container-elevation: var(--md-fab-pressed-container-elevation, 3);--_pressed-icon-color: var(--md-fab-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-fab-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-fab-pressed-state-layer-opacity, 0.12);--_focus-label-text-color: var(--md-fab-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_hover-label-text-color: var(--md-fab-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-color: var(--md-fab-label-text-color, var(--md-sys-color-primary, #6750a4));--_label-text-font: var(--md-fab-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-fab-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-fab-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-fab-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_large-container-height: var(--md-fab-large-container-height, 96px);--_large-container-width: var(--md-fab-large-container-width, 96px);--_large-icon-size: var(--md-fab-large-icon-size, 36px);--_pressed-label-text-color: var(--md-fab-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_primary-container-color: var(--md-fab-primary-container-color, var(--md-sys-color-primary-container, #eaddff));--_primary-focus-icon-color: var(--md-fab-primary-focus-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-focus-label-text-color: var(--md-fab-primary-focus-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-icon-color: var(--md-fab-primary-hover-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-label-text-color: var(--md-fab-primary-hover-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-hover-state-layer-color: var(--md-fab-primary-hover-state-layer-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-icon-color: var(--md-fab-primary-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-label-text-color: var(--md-fab-primary-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-icon-color: var(--md-fab-primary-pressed-icon-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-label-text-color: var(--md-fab-primary-pressed-label-text-color, var(--md-sys-color-on-primary-container, #21005d));--_primary-pressed-state-layer-color: var(--md-fab-primary-pressed-state-layer-color, var(--md-sys-color-on-primary-container, #21005d));--_secondary-container-color: var(--md-fab-secondary-container-color, var(--md-sys-color-secondary-container, #e8def8));--_secondary-focus-icon-color: var(--md-fab-secondary-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-focus-label-text-color: var(--md-fab-secondary-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-icon-color: var(--md-fab-secondary-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-label-text-color: var(--md-fab-secondary-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-hover-state-layer-color: var(--md-fab-secondary-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-icon-color: var(--md-fab-secondary-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-label-text-color: var(--md-fab-secondary-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-icon-color: var(--md-fab-secondary-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-label-text-color: var(--md-fab-secondary-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_secondary-pressed-state-layer-color: var(--md-fab-secondary-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_small-container-height: var(--md-fab-small-container-height, 40px);--_small-container-width: var(--md-fab-small-container-width, 40px);--_small-icon-size: var(--md-fab-small-icon-size, 24px);--_tertiary-container-color: var(--md-fab-tertiary-container-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_tertiary-focus-icon-color: var(--md-fab-tertiary-focus-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-focus-label-text-color: var(--md-fab-tertiary-focus-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-icon-color: var(--md-fab-tertiary-hover-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-label-text-color: var(--md-fab-tertiary-hover-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-hover-state-layer-color: var(--md-fab-tertiary-hover-state-layer-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-icon-color: var(--md-fab-tertiary-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-label-text-color: var(--md-fab-tertiary-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-icon-color: var(--md-fab-tertiary-pressed-icon-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-label-text-color: var(--md-fab-tertiary-pressed-label-text-color, var(--md-sys-color-on-tertiary-container, #31111d));--_tertiary-pressed-state-layer-color: var(--md-fab-tertiary-pressed-state-layer-color, var(--md-sys-color-on-tertiary-container, #31111d));--_container-shape-start-start: var(--md-fab-container-shape-start-start, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-start-end: var(--md-fab-container-shape-start-end, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-end: var(--md-fab-container-shape-end-end, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_container-shape-end-start: var(--md-fab-container-shape-end-start, var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px)));--_large-container-shape-start-start: var(--md-fab-large-container-shape-start-start, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-start-end: var(--md-fab-large-container-shape-start-end, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-end: var(--md-fab-large-container-shape-end-end, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_large-container-shape-end-start: var(--md-fab-large-container-shape-end-start, var(--md-fab-large-container-shape, var(--md-sys-shape-corner-extra-large, 28px)));--_small-container-shape-start-start: var(--md-fab-small-container-shape-start-start, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-start-end: var(--md-fab-small-container-shape-start-end, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-end-end: var(--md-fab-small-container-shape-end-end, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));--_small-container-shape-end-start: var(--md-fab-small-container-shape-end-start, var(--md-fab-small-container-shape, var(--md-sys-shape-corner-medium, 12px)));cursor:pointer}:host([size=small][touch-target=wrapper]){margin:max(0px,48px - var(--_small-container-height))}.fab{cursor:inherit}.fab .icon ::slotted(*){color:var(--_icon-color)}.fab:focus{color:var(--_focus-icon-color)}.fab:hover{color:var(--_hover-icon-color)}.fab:active{color:var(--_pressed-icon-color)}.fab.primary{background-color:var(--_primary-container-color);--md-ripple-hover-color: var(--_primary-hover-state-layer-color);--md-ripple-pressed-color: var(--_primary-pressed-state-layer-color)}.fab.primary .icon ::slotted(*){color:var(--_primary-icon-color)}.fab.primary:focus{color:var(--_primary-focus-icon-color)}.fab.primary:hover{color:var(--_primary-hover-icon-color)}.fab.primary:active{color:var(--_primary-pressed-icon-color)}.fab.primary .label{color:var(--_primary-label-text-color)}.fab:hover .fab.primary .label{color:var(--_primary-hover-label-text-color)}.fab:focus .fab.primary .label{color:var(--_primary-focus-label-text-color)}.fab:active .fab.primary .label{color:var(--_primary-pressed-label-text-color)}.fab.secondary{background-color:var(--_secondary-container-color);--md-ripple-hover-color: var(--_secondary-hover-state-layer-color);--md-ripple-pressed-color: var(--_secondary-pressed-state-layer-color)}.fab.secondary .icon ::slotted(*){color:var(--_secondary-icon-color)}.fab.secondary:focus{color:var(--_secondary-focus-icon-color)}.fab.secondary:hover{color:var(--_secondary-hover-icon-color)}.fab.secondary:active{color:var(--_secondary-pressed-icon-color)}.fab.secondary .label{color:var(--_secondary-label-text-color)}.fab:hover .fab.secondary .label{color:var(--_secondary-hover-label-text-color)}.fab:focus .fab.secondary .label{color:var(--_secondary-focus-label-text-color)}.fab:active .fab.secondary .label{color:var(--_secondary-pressed-label-text-color)}.fab.tertiary{background-color:var(--_tertiary-container-color);--md-ripple-hover-color: var(--_tertiary-hover-state-layer-color);--md-ripple-pressed-color: var(--_tertiary-pressed-state-layer-color)}.fab.tertiary .icon ::slotted(*){color:var(--_tertiary-icon-color)}.fab.tertiary:focus{color:var(--_tertiary-focus-icon-color)}.fab.tertiary:hover{color:var(--_tertiary-hover-icon-color)}.fab.tertiary:active{color:var(--_tertiary-pressed-icon-color)}.fab.tertiary .label{color:var(--_tertiary-label-text-color)}.fab:hover .fab.tertiary .label{color:var(--_tertiary-hover-label-text-color)}.fab:focus .fab.tertiary .label{color:var(--_tertiary-focus-label-text-color)}.fab:active .fab.tertiary .label{color:var(--_tertiary-pressed-label-text-color)}.fab.extended slot span{padding-inline-start:4px}.fab.small{width:var(--_small-container-width);height:var(--_small-container-height)}.fab.small .icon ::slotted(*){width:var(--_small-icon-size);height:var(--_small-icon-size);font-size:var(--_small-icon-size)}.fab.small,.fab.small .ripple{border-start-start-radius:var(--_small-container-shape-start-start);border-start-end-radius:var(--_small-container-shape-start-end);border-end-start-radius:var(--_small-container-shape-end-start);border-end-end-radius:var(--_small-container-shape-end-end)}.fab.small md-focus-ring{--md-focus-ring-shape-start-start: var(--_small-container-shape-start-start);--md-focus-ring-shape-start-end: var(--_small-container-shape-start-end);--md-focus-ring-shape-end-end: var(--_small-container-shape-end-end);--md-focus-ring-shape-end-start: var(--_small-container-shape-end-start)} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Jr=class extends Wo{};Jr.styles=[qi,rs,Hi];Jr=n([w("md-fab")],Jr);/** + */let zr=class extends wi{};zr.styles=[Na,es,Fa];zr=l([S("md-fab")],zr);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class H extends C{constructor(){super(...arguments),this.disabled=!1,this.error=!1,this.focused=!1,this.label="",this.noAsterisk=!1,this.populated=!1,this.required=!1,this.resizable=!1,this.supportingText="",this.errorText="",this.count=-1,this.max=-1,this.hasStart=!1,this.hasEnd=!1,this.isAnimating=!1,this.refreshErrorAlert=!1,this.disableTransitions=!1}get counterText(){const e=this.count??-1,t=this.max??-1;return e<0||t<=0?"":`${e} / ${t}`}get supportingOrErrorText(){return this.error&&this.errorText?this.errorText:this.supportingText}reannounceError(){this.refreshErrorAlert=!0}update(e){e.has("disabled")&&e.get("disabled")!==void 0&&(this.disableTransitions=!0),this.disabled&&this.focused&&(e.set("focused",!0),this.focused=!1),this.animateLabelIfNeeded({wasFocused:e.get("focused"),wasPopulated:e.get("populated")}),super.update(e)}render(){var a,s,d,c;const e=this.renderLabel(!0),t=this.renderLabel(!1),r=(a=this.renderOutline)==null?void 0:a.call(this,e),i={disabled:this.disabled,"disable-transitions":this.disableTransitions,error:this.error&&!this.disabled,focused:this.focused,"with-start":this.hasStart,"with-end":this.hasEnd,populated:this.populated,resizable:this.resizable,required:this.required,"no-label":!this.label};return p` + */class q extends ${constructor(){super(...arguments),this.disabled=!1,this.error=!1,this.focused=!1,this.label="",this.noAsterisk=!1,this.populated=!1,this.required=!1,this.resizable=!1,this.supportingText="",this.errorText="",this.count=-1,this.max=-1,this.hasStart=!1,this.hasEnd=!1,this.isAnimating=!1,this.refreshErrorAlert=!1,this.disableTransitions=!1}get counterText(){const e=this.count??-1,t=this.max??-1;return e<0||t<=0?"":`${e} / ${t}`}get supportingOrErrorText(){return this.error&&this.errorText?this.errorText:this.supportingText}reannounceError(){this.refreshErrorAlert=!0}update(e){e.has("disabled")&&e.get("disabled")!==void 0&&(this.disableTransitions=!0),this.disabled&&this.focused&&(e.set("focused",!0),this.focused=!1),this.animateLabelIfNeeded({wasFocused:e.get("focused"),wasPopulated:e.get("populated")}),super.update(e)}render(){var a,n,s,d;const e=this.renderLabel(!0),t=this.renderLabel(!1),o=(a=this.renderOutline)==null?void 0:a.call(this,e),i={disabled:this.disabled,"disable-transitions":this.disableTransitions,error:this.error&&!this.disabled,focused:this.focused,"with-start":this.hasStart,"with-end":this.hasEnd,populated:this.populated,resizable:this.resizable,required:this.required,"no-label":!this.label};return m`
- ${(s=this.renderBackground)==null?void 0:s.call(this)} + ${(n=this.renderBackground)==null?void 0:n.call(this)} - ${(d=this.renderStateLayer)==null?void 0:d.call(this)} ${(c=this.renderIndicator)==null?void 0:c.call(this)} ${r} + ${(s=this.renderStateLayer)==null?void 0:s.call(this)} ${(d=this.renderIndicator)==null?void 0:d.call(this)} ${o}
- ${t} ${r?h:e} + ${t} ${o?p:e}
@@ -658,38 +658,38 @@
${this.renderSupportingText()}
- `}updated(e){(e.has("supportingText")||e.has("errorText")||e.has("count")||e.has("max"))&&this.updateSlottedAriaDescribedBy(),this.refreshErrorAlert&&requestAnimationFrame(()=>{this.refreshErrorAlert=!1}),this.disableTransitions&&requestAnimationFrame(()=>{this.disableTransitions=!1})}renderSupportingText(){const{supportingOrErrorText:e,counterText:t}=this;if(!e&&!t)return h;const r=p`${e}`,i=t?p`${t}`:h,s=this.error&&this.errorText&&!this.refreshErrorAlert?"alert":h;return p` -
${r}${i}
+ `}updated(e){(e.has("supportingText")||e.has("errorText")||e.has("count")||e.has("max"))&&this.updateSlottedAriaDescribedBy(),this.refreshErrorAlert&&requestAnimationFrame(()=>{this.refreshErrorAlert=!1}),this.disableTransitions&&requestAnimationFrame(()=>{this.disableTransitions=!1})}renderSupportingText(){const{supportingOrErrorText:e,counterText:t}=this;if(!e&&!t)return p;const o=m`${e}`,i=t?m`${t}`:p,n=this.error&&this.errorText&&!this.refreshErrorAlert?"alert":p;return m` +
${o}${i}
- `}updateSlottedAriaDescribedBy(){for(const e of this.slottedAriaDescribedBy)Fo(p`${this.supportingOrErrorText} ${this.counterText}`,e),e.setAttribute("hidden","")}renderLabel(e){if(!this.label)return h;let t;e?t=this.focused||this.populated||this.isAnimating:t=!this.focused&&!this.populated&&!this.isAnimating;const r={hidden:!t,floating:e,resting:!e},i=`${this.label}${this.required&&!this.noAsterisk?"*":""}`;return p` - ${i} - `}animateLabelIfNeeded({wasFocused:e,wasPopulated:t}){var a,s,d;if(!this.label)return;e??(e=this.focused),t??(t=this.populated);const r=e||t,i=this.focused||this.populated;r!==i&&(this.isAnimating=!0,(a=this.labelAnimation)==null||a.cancel(),this.labelAnimation=(s=this.floatingLabelEl)==null?void 0:s.animate(this.getLabelKeyframes(),{duration:150,easing:ke.STANDARD}),(d=this.labelAnimation)==null||d.addEventListener("finish",()=>{this.isAnimating=!1}))}getLabelKeyframes(){const{floatingLabelEl:e,restingLabelEl:t}=this;if(!e||!t)return[];const{x:r,y:i,height:a}=e.getBoundingClientRect(),{x:s,y:d,height:c}=t.getBoundingClientRect(),f=e.scrollWidth,v=t.scrollWidth,u=v/f,m=s-r,g=d-i+Math.round((c-a*u)/2),S=`translateX(${m}px) translateY(${g}px) scale(${u})`,k="translateX(0) translateY(0) scale(1)",L=t.clientWidth,T=v>L?`${L/u}px`:"";return this.focused||this.populated?[{transform:S,width:T},{transform:k,width:T}]:[{transform:k,width:T},{transform:S,width:T}]}getSurfacePositionClientRect(){return this.containerEl.getBoundingClientRect()}}n([l({type:Boolean})],H.prototype,"disabled",void 0);n([l({type:Boolean})],H.prototype,"error",void 0);n([l({type:Boolean})],H.prototype,"focused",void 0);n([l()],H.prototype,"label",void 0);n([l({type:Boolean,attribute:"no-asterisk"})],H.prototype,"noAsterisk",void 0);n([l({type:Boolean})],H.prototype,"populated",void 0);n([l({type:Boolean})],H.prototype,"required",void 0);n([l({type:Boolean})],H.prototype,"resizable",void 0);n([l({attribute:"supporting-text"})],H.prototype,"supportingText",void 0);n([l({attribute:"error-text"})],H.prototype,"errorText",void 0);n([l({type:Number})],H.prototype,"count",void 0);n([l({type:Number})],H.prototype,"max",void 0);n([l({type:Boolean,attribute:"has-start"})],H.prototype,"hasStart",void 0);n([l({type:Boolean,attribute:"has-end"})],H.prototype,"hasEnd",void 0);n([ee({slot:"aria-describedby"})],H.prototype,"slottedAriaDescribedBy",void 0);n([z()],H.prototype,"isAnimating",void 0);n([z()],H.prototype,"refreshErrorAlert",void 0);n([z()],H.prototype,"disableTransitions",void 0);n([E(".label.floating")],H.prototype,"floatingLabelEl",void 0);n([E(".label.resting")],H.prototype,"restingLabelEl",void 0);n([E(".container")],H.prototype,"containerEl",void 0);/** + `}animateLabelIfNeeded({wasFocused:e,wasPopulated:t}){var a,n,s;if(!this.label)return;e??(e=this.focused),t??(t=this.populated);const o=e||t,i=this.focused||this.populated;o!==i&&(this.isAnimating=!0,(a=this.labelAnimation)==null||a.cancel(),this.labelAnimation=(n=this.floatingLabelEl)==null?void 0:n.animate(this.getLabelKeyframes(),{duration:150,easing:we.STANDARD}),(s=this.labelAnimation)==null||s.addEventListener("finish",()=>{this.isAnimating=!1}))}getLabelKeyframes(){const{floatingLabelEl:e,restingLabelEl:t}=this;if(!e||!t)return[];const{x:o,y:i,height:a}=e.getBoundingClientRect(),{x:n,y:s,height:d}=t.getBoundingClientRect(),h=e.scrollWidth,v=t.scrollWidth,u=v/h,f=n-o,y=s-i+Math.round((d-a*u)/2),b=`translateX(${f}px) translateY(${y}px) scale(${u})`,g="translateX(0) translateY(0) scale(1)",k=t.clientWidth,I=v>k?`${k/u}px`:"";return this.focused||this.populated?[{transform:b,width:I},{transform:g,width:I}]:[{transform:g,width:I},{transform:b,width:I}]}getSurfacePositionClientRect(){return this.containerEl.getBoundingClientRect()}}l([c({type:Boolean})],q.prototype,"disabled",void 0);l([c({type:Boolean})],q.prototype,"error",void 0);l([c({type:Boolean})],q.prototype,"focused",void 0);l([c()],q.prototype,"label",void 0);l([c({type:Boolean,attribute:"no-asterisk"})],q.prototype,"noAsterisk",void 0);l([c({type:Boolean})],q.prototype,"populated",void 0);l([c({type:Boolean})],q.prototype,"required",void 0);l([c({type:Boolean})],q.prototype,"resizable",void 0);l([c({attribute:"supporting-text"})],q.prototype,"supportingText",void 0);l([c({attribute:"error-text"})],q.prototype,"errorText",void 0);l([c({type:Number})],q.prototype,"count",void 0);l([c({type:Number})],q.prototype,"max",void 0);l([c({type:Boolean,attribute:"has-start"})],q.prototype,"hasStart",void 0);l([c({type:Boolean,attribute:"has-end"})],q.prototype,"hasEnd",void 0);l([oe({slot:"aria-describedby"})],q.prototype,"slottedAriaDescribedBy",void 0);l([M()],q.prototype,"isAnimating",void 0);l([M()],q.prototype,"refreshErrorAlert",void 0);l([M()],q.prototype,"disableTransitions",void 0);l([B(".label.floating")],q.prototype,"floatingLabelEl",void 0);l([B(".label.resting")],q.prototype,"restingLabelEl",void 0);l([B(".container")],q.prototype,"containerEl",void 0);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class os extends H{renderBackground(){return p`
`}renderStateLayer(){return p`
`}renderIndicator(){return p`
`}}/** + */class ts extends q{renderBackground(){return m`
`}renderStateLayer(){return m`
`}renderIndicator(){return m`
`}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const is=x`@layer styles{:host{--_active-indicator-color: var(--md-filled-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_active-indicator-height: var(--md-filled-field-active-indicator-height, 1px);--_bottom-space: var(--md-filled-field-bottom-space, 16px);--_container-color: var(--md-filled-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_content-color: var(--md-filled-field-content-color, var(--md-sys-color-on-surface, #1d1b20));--_content-font: var(--md-filled-field-content-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_content-line-height: var(--md-filled-field-content-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_content-size: var(--md-filled-field-content-size, var(--md-sys-typescale-body-large-size, 1rem));--_content-space: var(--md-filled-field-content-space, 16px);--_content-weight: var(--md-filled-field-content-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_disabled-active-indicator-color: var(--md-filled-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-indicator-height: var(--md-filled-field-disabled-active-indicator-height, 1px);--_disabled-active-indicator-opacity: var(--md-filled-field-disabled-active-indicator-opacity, 0.38);--_disabled-container-color: var(--md-filled-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-field-disabled-container-opacity, 0.04);--_disabled-content-color: var(--md-filled-field-disabled-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-content-opacity: var(--md-filled-field-disabled-content-opacity, 0.38);--_disabled-label-text-color: var(--md-filled-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-field-disabled-label-text-opacity, 0.38);--_disabled-leading-content-color: var(--md-filled-field-disabled-leading-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-content-opacity: var(--md-filled-field-disabled-leading-content-opacity, 0.38);--_disabled-supporting-text-color: var(--md-filled-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-filled-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-content-color: var(--md-filled-field-disabled-trailing-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-content-opacity: var(--md-filled-field-disabled-trailing-content-opacity, 0.38);--_error-active-indicator-color: var(--md-filled-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-content-color: var(--md-filled-field-error-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-active-indicator-color: var(--md-filled-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-content-color: var(--md-filled-field-error-focus-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-label-text-color: var(--md-filled-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-content-color: var(--md-filled-field-error-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-supporting-text-color: var(--md-filled-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-content-color: var(--md-filled-field-error-focus-trailing-content-color, var(--md-sys-color-error, #b3261e));--_error-hover-active-indicator-color: var(--md-filled-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-content-color: var(--md-filled-field-error-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-filled-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-content-color: var(--md-filled-field-error-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-state-layer-color: var(--md-filled-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-state-layer-opacity: var(--md-filled-field-error-hover-state-layer-opacity, 0.08);--_error-hover-supporting-text-color: var(--md-filled-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-content-color: var(--md-filled-field-error-hover-trailing-content-color, var(--md-sys-color-on-error-container, #410e0b));--_error-label-text-color: var(--md-filled-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-content-color: var(--md-filled-field-error-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-supporting-text-color: var(--md-filled-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-content-color: var(--md-filled-field-error-trailing-content-color, var(--md-sys-color-error, #b3261e));--_focus-active-indicator-color: var(--md-filled-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_focus-active-indicator-height: var(--md-filled-field-focus-active-indicator-height, 3px);--_focus-content-color: var(--md-filled-field-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-filled-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-content-color: var(--md-filled-field-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-supporting-text-color: var(--md-filled-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-content-color: var(--md-filled-field-focus-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-active-indicator-color: var(--md-filled-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-active-indicator-height: var(--md-filled-field-hover-active-indicator-height, 1px);--_hover-content-color: var(--md-filled-field-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-filled-field-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-leading-content-color: var(--md-filled-field-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filled-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-filled-field-hover-state-layer-opacity, 0.08);--_hover-supporting-text-color: var(--md-filled-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-content-color: var(--md-filled-field-hover-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-filled-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-filled-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-filled-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-filled-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-filled-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-filled-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-content-color: var(--md-filled-field-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-space: var(--md-filled-field-leading-space, 16px);--_supporting-text-color: var(--md-filled-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-filled-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-leading-space: var(--md-filled-field-supporting-text-leading-space, 16px);--_supporting-text-line-height: var(--md-filled-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-filled-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-top-space: var(--md-filled-field-supporting-text-top-space, 4px);--_supporting-text-trailing-space: var(--md-filled-field-supporting-text-trailing-space, 16px);--_supporting-text-weight: var(--md-filled-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_top-space: var(--md-filled-field-top-space, 16px);--_trailing-content-color: var(--md-filled-field-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-space: var(--md-filled-field-trailing-space, 16px);--_with-label-bottom-space: var(--md-filled-field-with-label-bottom-space, 8px);--_with-label-top-space: var(--md-filled-field-with-label-top-space, 8px);--_with-leading-content-leading-space: var(--md-filled-field-with-leading-content-leading-space, 12px);--_with-trailing-content-trailing-space: var(--md-filled-field-with-trailing-content-trailing-space, 12px);--_container-shape-start-start: var(--md-filled-field-container-shape-start-start, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-filled-field-container-shape-start-end, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-filled-field-container-shape-end-end, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-filled-field-container-shape-end-start, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-none, 0px)))}.background,.state-layer{border-radius:inherit;inset:0;pointer-events:none;position:absolute}.background{background:var(--_container-color)}.state-layer{visibility:hidden}.field:not(.disabled):hover .state-layer{visibility:visible}.label.floating{position:absolute;top:var(--_with-label-top-space)}.field:not(.with-start) .label-wrapper{margin-inline-start:var(--_leading-space)}.field:not(.with-end) .label-wrapper{margin-inline-end:var(--_trailing-space)}.active-indicator{inset:auto 0 0 0;pointer-events:none;position:absolute;width:100%;z-index:1}.active-indicator::before,.active-indicator::after{border-bottom:var(--_active-indicator-height) solid var(--_active-indicator-color);inset:auto 0 0 0;content:"";position:absolute;width:100%}.active-indicator::after{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .active-indicator::after{opacity:1}.field:not(.with-start) .content ::slotted(*){padding-inline-start:var(--_leading-space)}.field:not(.with-end) .content ::slotted(*){padding-inline-end:var(--_trailing-space)}.field:not(.no-label) .content ::slotted(:not(textarea)){padding-bottom:var(--_with-label-bottom-space);padding-top:calc(var(--_with-label-top-space) + var(--_label-text-populated-line-height))}.field:not(.no-label) .content ::slotted(textarea){margin-bottom:var(--_with-label-bottom-space);margin-top:calc(var(--_with-label-top-space) + var(--_label-text-populated-line-height))}:hover .active-indicator::before{border-bottom-color:var(--_hover-active-indicator-color);border-bottom-width:var(--_hover-active-indicator-height)}.active-indicator::after{border-bottom-color:var(--_focus-active-indicator-color);border-bottom-width:var(--_focus-active-indicator-height)}:hover .state-layer{background:var(--_hover-state-layer-color);opacity:var(--_hover-state-layer-opacity)}.disabled .active-indicator::before{border-bottom-color:var(--_disabled-active-indicator-color);border-bottom-width:var(--_disabled-active-indicator-height);opacity:var(--_disabled-active-indicator-opacity)}.disabled .background{background:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.error .active-indicator::before{border-bottom-color:var(--_error-active-indicator-color)}.error:hover .active-indicator::before{border-bottom-color:var(--_error-hover-active-indicator-color)}.error:hover .state-layer{background:var(--_error-hover-state-layer-color);opacity:var(--_error-hover-state-layer-opacity)}.error .active-indicator::after{border-bottom-color:var(--_error-focus-active-indicator-color)}.resizable .container{bottom:var(--_focus-active-indicator-height);clip-path:inset(var(--_focus-active-indicator-height) 0 0 0)}.resizable .container>*{top:var(--_focus-active-indicator-height)}}@layer hcm{@media(forced-colors: active){.disabled .active-indicator::before{border-color:GrayText;opacity:1}}} + */const os=_`@layer styles{:host{--_active-indicator-color: var(--md-filled-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_active-indicator-height: var(--md-filled-field-active-indicator-height, 1px);--_bottom-space: var(--md-filled-field-bottom-space, 16px);--_container-color: var(--md-filled-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_content-color: var(--md-filled-field-content-color, var(--md-sys-color-on-surface, #1d1b20));--_content-font: var(--md-filled-field-content-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_content-line-height: var(--md-filled-field-content-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_content-size: var(--md-filled-field-content-size, var(--md-sys-typescale-body-large-size, 1rem));--_content-space: var(--md-filled-field-content-space, 16px);--_content-weight: var(--md-filled-field-content-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_disabled-active-indicator-color: var(--md-filled-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-indicator-height: var(--md-filled-field-disabled-active-indicator-height, 1px);--_disabled-active-indicator-opacity: var(--md-filled-field-disabled-active-indicator-opacity, 0.38);--_disabled-container-color: var(--md-filled-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-field-disabled-container-opacity, 0.04);--_disabled-content-color: var(--md-filled-field-disabled-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-content-opacity: var(--md-filled-field-disabled-content-opacity, 0.38);--_disabled-label-text-color: var(--md-filled-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-field-disabled-label-text-opacity, 0.38);--_disabled-leading-content-color: var(--md-filled-field-disabled-leading-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-content-opacity: var(--md-filled-field-disabled-leading-content-opacity, 0.38);--_disabled-supporting-text-color: var(--md-filled-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-filled-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-content-color: var(--md-filled-field-disabled-trailing-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-content-opacity: var(--md-filled-field-disabled-trailing-content-opacity, 0.38);--_error-active-indicator-color: var(--md-filled-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-content-color: var(--md-filled-field-error-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-active-indicator-color: var(--md-filled-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-content-color: var(--md-filled-field-error-focus-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-label-text-color: var(--md-filled-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-content-color: var(--md-filled-field-error-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-supporting-text-color: var(--md-filled-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-content-color: var(--md-filled-field-error-focus-trailing-content-color, var(--md-sys-color-error, #b3261e));--_error-hover-active-indicator-color: var(--md-filled-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-content-color: var(--md-filled-field-error-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-filled-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-content-color: var(--md-filled-field-error-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-state-layer-color: var(--md-filled-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-state-layer-opacity: var(--md-filled-field-error-hover-state-layer-opacity, 0.08);--_error-hover-supporting-text-color: var(--md-filled-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-content-color: var(--md-filled-field-error-hover-trailing-content-color, var(--md-sys-color-on-error-container, #410e0b));--_error-label-text-color: var(--md-filled-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-content-color: var(--md-filled-field-error-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-supporting-text-color: var(--md-filled-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-content-color: var(--md-filled-field-error-trailing-content-color, var(--md-sys-color-error, #b3261e));--_focus-active-indicator-color: var(--md-filled-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_focus-active-indicator-height: var(--md-filled-field-focus-active-indicator-height, 3px);--_focus-content-color: var(--md-filled-field-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-filled-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-content-color: var(--md-filled-field-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-supporting-text-color: var(--md-filled-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-content-color: var(--md-filled-field-focus-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-active-indicator-color: var(--md-filled-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-active-indicator-height: var(--md-filled-field-hover-active-indicator-height, 1px);--_hover-content-color: var(--md-filled-field-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-filled-field-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-leading-content-color: var(--md-filled-field-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filled-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-filled-field-hover-state-layer-opacity, 0.08);--_hover-supporting-text-color: var(--md-filled-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-content-color: var(--md-filled-field-hover-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-filled-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-filled-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-filled-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-filled-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-filled-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-filled-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-content-color: var(--md-filled-field-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-space: var(--md-filled-field-leading-space, 16px);--_supporting-text-color: var(--md-filled-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-filled-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-leading-space: var(--md-filled-field-supporting-text-leading-space, 16px);--_supporting-text-line-height: var(--md-filled-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-filled-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-top-space: var(--md-filled-field-supporting-text-top-space, 4px);--_supporting-text-trailing-space: var(--md-filled-field-supporting-text-trailing-space, 16px);--_supporting-text-weight: var(--md-filled-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_top-space: var(--md-filled-field-top-space, 16px);--_trailing-content-color: var(--md-filled-field-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-space: var(--md-filled-field-trailing-space, 16px);--_with-label-bottom-space: var(--md-filled-field-with-label-bottom-space, 8px);--_with-label-top-space: var(--md-filled-field-with-label-top-space, 8px);--_with-leading-content-leading-space: var(--md-filled-field-with-leading-content-leading-space, 12px);--_with-trailing-content-trailing-space: var(--md-filled-field-with-trailing-content-trailing-space, 12px);--_container-shape-start-start: var(--md-filled-field-container-shape-start-start, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-filled-field-container-shape-start-end, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-filled-field-container-shape-end-end, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-filled-field-container-shape-end-start, var(--md-filled-field-container-shape, var(--md-sys-shape-corner-none, 0px)))}.background,.state-layer{border-radius:inherit;inset:0;pointer-events:none;position:absolute}.background{background:var(--_container-color)}.state-layer{visibility:hidden}.field:not(.disabled):hover .state-layer{visibility:visible}.label.floating{position:absolute;top:var(--_with-label-top-space)}.field:not(.with-start) .label-wrapper{margin-inline-start:var(--_leading-space)}.field:not(.with-end) .label-wrapper{margin-inline-end:var(--_trailing-space)}.active-indicator{inset:auto 0 0 0;pointer-events:none;position:absolute;width:100%;z-index:1}.active-indicator::before,.active-indicator::after{border-bottom:var(--_active-indicator-height) solid var(--_active-indicator-color);inset:auto 0 0 0;content:"";position:absolute;width:100%}.active-indicator::after{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .active-indicator::after{opacity:1}.field:not(.with-start) .content ::slotted(*){padding-inline-start:var(--_leading-space)}.field:not(.with-end) .content ::slotted(*){padding-inline-end:var(--_trailing-space)}.field:not(.no-label) .content ::slotted(:not(textarea)){padding-bottom:var(--_with-label-bottom-space);padding-top:calc(var(--_with-label-top-space) + var(--_label-text-populated-line-height))}.field:not(.no-label) .content ::slotted(textarea){margin-bottom:var(--_with-label-bottom-space);margin-top:calc(var(--_with-label-top-space) + var(--_label-text-populated-line-height))}:hover .active-indicator::before{border-bottom-color:var(--_hover-active-indicator-color);border-bottom-width:var(--_hover-active-indicator-height)}.active-indicator::after{border-bottom-color:var(--_focus-active-indicator-color);border-bottom-width:var(--_focus-active-indicator-height)}:hover .state-layer{background:var(--_hover-state-layer-color);opacity:var(--_hover-state-layer-opacity)}.disabled .active-indicator::before{border-bottom-color:var(--_disabled-active-indicator-color);border-bottom-width:var(--_disabled-active-indicator-height);opacity:var(--_disabled-active-indicator-opacity)}.disabled .background{background:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.error .active-indicator::before{border-bottom-color:var(--_error-active-indicator-color)}.error:hover .active-indicator::before{border-bottom-color:var(--_error-hover-active-indicator-color)}.error:hover .state-layer{background:var(--_error-hover-state-layer-color);opacity:var(--_error-hover-state-layer-opacity)}.error .active-indicator::after{border-bottom-color:var(--_error-focus-active-indicator-color)}.resizable .container{bottom:var(--_focus-active-indicator-height);clip-path:inset(var(--_focus-active-indicator-height) 0 0 0)}.resizable .container>*{top:var(--_focus-active-indicator-height)}}@layer hcm{@media(forced-colors: active){.disabled .active-indicator::before{border-color:GrayText;opacity:1}}} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Vi=x`:host{display:inline-flex;resize:both}.field{display:flex;flex:1;flex-direction:column;writing-mode:horizontal-tb;max-width:100%}.container-overflow{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-end-radius:var(--_container-shape-end-end);border-end-start-radius:var(--_container-shape-end-start);display:flex;height:100%;position:relative}.container{align-items:center;border-radius:inherit;display:flex;flex:1;max-height:100%;min-height:100%;min-width:min-content;position:relative}.field,.container-overflow{resize:inherit}.resizable:not(.disabled) .container{resize:inherit;overflow:hidden}.disabled{pointer-events:none}slot[name=container]{border-radius:inherit}slot[name=container]::slotted(*){border-radius:inherit;inset:0;pointer-events:none;position:absolute}@layer styles{.start,.middle,.end{display:flex;box-sizing:border-box;height:100%;position:relative}.start{color:var(--_leading-content-color)}.end{color:var(--_trailing-content-color)}.start,.end{align-items:center;justify-content:center}.with-start .start{margin-inline:var(--_with-leading-content-leading-space) var(--_content-space)}.with-end .end{margin-inline:var(--_content-space) var(--_with-trailing-content-trailing-space)}.middle{align-items:stretch;align-self:baseline;flex:1}.content{color:var(--_content-color);display:flex;flex:1;opacity:0;transition:opacity 83ms cubic-bezier(0.2, 0, 0, 1)}.no-label .content,.focused .content,.populated .content{opacity:1;transition-delay:67ms}:is(.disabled,.disable-transitions) .content{transition:none}.content ::slotted(*){all:unset;color:currentColor;font-family:var(--_content-font);font-size:var(--_content-size);line-height:var(--_content-line-height);font-weight:var(--_content-weight);width:100%;overflow-wrap:revert;white-space:revert}.content ::slotted(:not(textarea)){padding-top:var(--_top-space);padding-bottom:var(--_bottom-space)}.content ::slotted(textarea){margin-top:var(--_top-space);margin-bottom:var(--_bottom-space)}:hover .content{color:var(--_hover-content-color)}:hover .start{color:var(--_hover-leading-content-color)}:hover .end{color:var(--_hover-trailing-content-color)}.focused .content{color:var(--_focus-content-color)}.focused .start{color:var(--_focus-leading-content-color)}.focused .end{color:var(--_focus-trailing-content-color)}.disabled .content{color:var(--_disabled-content-color)}.disabled.no-label .content,.disabled.focused .content,.disabled.populated .content{opacity:var(--_disabled-content-opacity)}.disabled .start{color:var(--_disabled-leading-content-color);opacity:var(--_disabled-leading-content-opacity)}.disabled .end{color:var(--_disabled-trailing-content-color);opacity:var(--_disabled-trailing-content-opacity)}.error .content{color:var(--_error-content-color)}.error .start{color:var(--_error-leading-content-color)}.error .end{color:var(--_error-trailing-content-color)}.error:hover .content{color:var(--_error-hover-content-color)}.error:hover .start{color:var(--_error-hover-leading-content-color)}.error:hover .end{color:var(--_error-hover-trailing-content-color)}.error.focused .content{color:var(--_error-focus-content-color)}.error.focused .start{color:var(--_error-focus-leading-content-color)}.error.focused .end{color:var(--_error-focus-trailing-content-color)}}@layer hcm{@media(forced-colors: active){.disabled :is(.start,.content,.end){color:GrayText;opacity:1}}}@layer styles{.label{box-sizing:border-box;color:var(--_label-text-color);overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap;z-index:1;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);width:min-content}.label-wrapper{inset:0;pointer-events:none;position:absolute}.label.resting{position:absolute;top:var(--_top-space)}.label.floating{font-size:var(--_label-text-populated-size);line-height:var(--_label-text-populated-line-height);transform-origin:top left}.label.hidden{opacity:0}.no-label .label{display:none}.label-wrapper{inset:0;position:absolute;text-align:initial}:hover .label{color:var(--_hover-label-text-color)}.focused .label{color:var(--_focus-label-text-color)}.disabled .label{color:var(--_disabled-label-text-color)}.disabled .label:not(.hidden){opacity:var(--_disabled-label-text-opacity)}.error .label{color:var(--_error-label-text-color)}.error:hover .label{color:var(--_error-hover-label-text-color)}.error.focused .label{color:var(--_error-focus-label-text-color)}}@layer hcm{@media(forced-colors: active){.disabled .label:not(.hidden){color:GrayText;opacity:1}}}@layer styles{.supporting-text{color:var(--_supporting-text-color);display:flex;font-family:var(--_supporting-text-font);font-size:var(--_supporting-text-size);line-height:var(--_supporting-text-line-height);font-weight:var(--_supporting-text-weight);gap:16px;justify-content:space-between;padding-inline-start:var(--_supporting-text-leading-space);padding-inline-end:var(--_supporting-text-trailing-space);padding-top:var(--_supporting-text-top-space)}.supporting-text :nth-child(2){flex-shrink:0}:hover .supporting-text{color:var(--_hover-supporting-text-color)}.focus .supporting-text{color:var(--_focus-supporting-text-color)}.disabled .supporting-text{color:var(--_disabled-supporting-text-color);opacity:var(--_disabled-supporting-text-opacity)}.error .supporting-text{color:var(--_error-supporting-text-color)}.error:hover .supporting-text{color:var(--_error-hover-supporting-text-color)}.error.focus .supporting-text{color:var(--_error-focus-supporting-text-color)}}@layer hcm{@media(forced-colors: active){.disabled .supporting-text{color:GrayText;opacity:1}}} + */const Ua=_`:host{display:inline-flex;resize:both}.field{display:flex;flex:1;flex-direction:column;writing-mode:horizontal-tb;max-width:100%}.container-overflow{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-end-radius:var(--_container-shape-end-end);border-end-start-radius:var(--_container-shape-end-start);display:flex;height:100%;position:relative}.container{align-items:center;border-radius:inherit;display:flex;flex:1;max-height:100%;min-height:100%;min-width:min-content;position:relative}.field,.container-overflow{resize:inherit}.resizable:not(.disabled) .container{resize:inherit;overflow:hidden}.disabled{pointer-events:none}slot[name=container]{border-radius:inherit}slot[name=container]::slotted(*){border-radius:inherit;inset:0;pointer-events:none;position:absolute}@layer styles{.start,.middle,.end{display:flex;box-sizing:border-box;height:100%;position:relative}.start{color:var(--_leading-content-color)}.end{color:var(--_trailing-content-color)}.start,.end{align-items:center;justify-content:center}.with-start .start{margin-inline:var(--_with-leading-content-leading-space) var(--_content-space)}.with-end .end{margin-inline:var(--_content-space) var(--_with-trailing-content-trailing-space)}.middle{align-items:stretch;align-self:baseline;flex:1}.content{color:var(--_content-color);display:flex;flex:1;opacity:0;transition:opacity 83ms cubic-bezier(0.2, 0, 0, 1)}.no-label .content,.focused .content,.populated .content{opacity:1;transition-delay:67ms}:is(.disabled,.disable-transitions) .content{transition:none}.content ::slotted(*){all:unset;color:currentColor;font-family:var(--_content-font);font-size:var(--_content-size);line-height:var(--_content-line-height);font-weight:var(--_content-weight);width:100%;overflow-wrap:revert;white-space:revert}.content ::slotted(:not(textarea)){padding-top:var(--_top-space);padding-bottom:var(--_bottom-space)}.content ::slotted(textarea){margin-top:var(--_top-space);margin-bottom:var(--_bottom-space)}:hover .content{color:var(--_hover-content-color)}:hover .start{color:var(--_hover-leading-content-color)}:hover .end{color:var(--_hover-trailing-content-color)}.focused .content{color:var(--_focus-content-color)}.focused .start{color:var(--_focus-leading-content-color)}.focused .end{color:var(--_focus-trailing-content-color)}.disabled .content{color:var(--_disabled-content-color)}.disabled.no-label .content,.disabled.focused .content,.disabled.populated .content{opacity:var(--_disabled-content-opacity)}.disabled .start{color:var(--_disabled-leading-content-color);opacity:var(--_disabled-leading-content-opacity)}.disabled .end{color:var(--_disabled-trailing-content-color);opacity:var(--_disabled-trailing-content-opacity)}.error .content{color:var(--_error-content-color)}.error .start{color:var(--_error-leading-content-color)}.error .end{color:var(--_error-trailing-content-color)}.error:hover .content{color:var(--_error-hover-content-color)}.error:hover .start{color:var(--_error-hover-leading-content-color)}.error:hover .end{color:var(--_error-hover-trailing-content-color)}.error.focused .content{color:var(--_error-focus-content-color)}.error.focused .start{color:var(--_error-focus-leading-content-color)}.error.focused .end{color:var(--_error-focus-trailing-content-color)}}@layer hcm{@media(forced-colors: active){.disabled :is(.start,.content,.end){color:GrayText;opacity:1}}}@layer styles{.label{box-sizing:border-box;color:var(--_label-text-color);overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap;z-index:1;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);width:min-content}.label-wrapper{inset:0;pointer-events:none;position:absolute}.label.resting{position:absolute;top:var(--_top-space)}.label.floating{font-size:var(--_label-text-populated-size);line-height:var(--_label-text-populated-line-height);transform-origin:top left}.label.hidden{opacity:0}.no-label .label{display:none}.label-wrapper{inset:0;position:absolute;text-align:initial}:hover .label{color:var(--_hover-label-text-color)}.focused .label{color:var(--_focus-label-text-color)}.disabled .label{color:var(--_disabled-label-text-color)}.disabled .label:not(.hidden){opacity:var(--_disabled-label-text-opacity)}.error .label{color:var(--_error-label-text-color)}.error:hover .label{color:var(--_error-hover-label-text-color)}.error.focused .label{color:var(--_error-focus-label-text-color)}}@layer hcm{@media(forced-colors: active){.disabled .label:not(.hidden){color:GrayText;opacity:1}}}@layer styles{.supporting-text{color:var(--_supporting-text-color);display:flex;font-family:var(--_supporting-text-font);font-size:var(--_supporting-text-size);line-height:var(--_supporting-text-line-height);font-weight:var(--_supporting-text-weight);gap:16px;justify-content:space-between;padding-inline-start:var(--_supporting-text-leading-space);padding-inline-end:var(--_supporting-text-trailing-space);padding-top:var(--_supporting-text-top-space)}.supporting-text :nth-child(2){flex-shrink:0}:hover .supporting-text{color:var(--_hover-supporting-text-color)}.focus .supporting-text{color:var(--_focus-supporting-text-color)}.disabled .supporting-text{color:var(--_disabled-supporting-text-color);opacity:var(--_disabled-supporting-text-opacity)}.error .supporting-text{color:var(--_error-supporting-text-color)}.error:hover .supporting-text{color:var(--_error-hover-supporting-text-color)}.error.focus .supporting-text{color:var(--_error-focus-supporting-text-color)}}@layer hcm{@media(forced-colors: active){.disabled .supporting-text{color:GrayText;opacity:1}}} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let eo=class extends os{};eo.styles=[Vi,is];eo=n([w("md-filled-field")],eo);/** + */let Br=class extends ts{};Br.styles=[Ua,os];Br=l([S("md-filled-field")],Br);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class as extends H{renderOutline(e){return p` + */class rs extends q{renderOutline(e){return m`
@@ -703,139 +703,139 @@ * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ns=x`@layer styles{:host{--_bottom-space: var(--md-outlined-field-bottom-space, 16px);--_content-color: var(--md-outlined-field-content-color, var(--md-sys-color-on-surface, #1d1b20));--_content-font: var(--md-outlined-field-content-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_content-line-height: var(--md-outlined-field-content-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_content-size: var(--md-outlined-field-content-size, var(--md-sys-typescale-body-large-size, 1rem));--_content-space: var(--md-outlined-field-content-space, 16px);--_content-weight: var(--md-outlined-field-content-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_disabled-content-color: var(--md-outlined-field-disabled-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-content-opacity: var(--md-outlined-field-disabled-content-opacity, 0.38);--_disabled-label-text-color: var(--md-outlined-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-field-disabled-label-text-opacity, 0.38);--_disabled-leading-content-color: var(--md-outlined-field-disabled-leading-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-content-opacity: var(--md-outlined-field-disabled-leading-content-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-field-disabled-outline-opacity, 0.12);--_disabled-outline-width: var(--md-outlined-field-disabled-outline-width, 1px);--_disabled-supporting-text-color: var(--md-outlined-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-outlined-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-content-color: var(--md-outlined-field-disabled-trailing-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-content-opacity: var(--md-outlined-field-disabled-trailing-content-opacity, 0.38);--_error-content-color: var(--md-outlined-field-error-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-content-color: var(--md-outlined-field-error-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-outlined-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-content-color: var(--md-outlined-field-error-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-outline-color: var(--md-outlined-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_error-focus-supporting-text-color: var(--md-outlined-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-content-color: var(--md-outlined-field-error-focus-trailing-content-color, var(--md-sys-color-error, #b3261e));--_error-hover-content-color: var(--md-outlined-field-error-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-outlined-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-content-color: var(--md-outlined-field-error-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-outline-color: var(--md-outlined-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-supporting-text-color: var(--md-outlined-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-content-color: var(--md-outlined-field-error-hover-trailing-content-color, var(--md-sys-color-on-error-container, #410e0b));--_error-label-text-color: var(--md-outlined-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-content-color: var(--md-outlined-field-error-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-outline-color: var(--md-outlined-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_error-supporting-text-color: var(--md-outlined-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-content-color: var(--md-outlined-field-error-trailing-content-color, var(--md-sys-color-error, #b3261e));--_focus-content-color: var(--md-outlined-field-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-outlined-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-content-color: var(--md-outlined-field-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-outlined-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_focus-outline-width: var(--md-outlined-field-focus-outline-width, 3px);--_focus-supporting-text-color: var(--md-outlined-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-content-color: var(--md-outlined-field-focus-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-content-color: var(--md-outlined-field-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-outlined-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-leading-content-color: var(--md-outlined-field-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-outline-color: var(--md-outlined-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-outline-width: var(--md-outlined-field-hover-outline-width, 1px);--_hover-supporting-text-color: var(--md-outlined-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-content-color: var(--md-outlined-field-hover-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-outlined-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-outlined-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-padding-bottom: var(--md-outlined-field-label-text-padding-bottom, 8px);--_label-text-populated-line-height: var(--md-outlined-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-outlined-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-outlined-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-outlined-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-content-color: var(--md-outlined-field-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-space: var(--md-outlined-field-leading-space, 16px);--_outline-color: var(--md-outlined-field-outline-color, var(--md-sys-color-outline, #79747e));--_outline-label-padding: var(--md-outlined-field-outline-label-padding, 4px);--_outline-width: var(--md-outlined-field-outline-width, 1px);--_supporting-text-color: var(--md-outlined-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-outlined-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-leading-space: var(--md-outlined-field-supporting-text-leading-space, 16px);--_supporting-text-line-height: var(--md-outlined-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-outlined-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-top-space: var(--md-outlined-field-supporting-text-top-space, 4px);--_supporting-text-trailing-space: var(--md-outlined-field-supporting-text-trailing-space, 16px);--_supporting-text-weight: var(--md-outlined-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_top-space: var(--md-outlined-field-top-space, 16px);--_trailing-content-color: var(--md-outlined-field-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-space: var(--md-outlined-field-trailing-space, 16px);--_with-leading-content-leading-space: var(--md-outlined-field-with-leading-content-leading-space, 12px);--_with-trailing-content-trailing-space: var(--md-outlined-field-with-trailing-content-trailing-space, 12px);--_container-shape-start-start: var(--md-outlined-field-container-shape-start-start, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-outlined-field-container-shape-start-end, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-outlined-field-container-shape-end-end, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-start: var(--md-outlined-field-container-shape-end-start, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)))}.outline{border-color:var(--_outline-color);border-radius:inherit;display:flex;pointer-events:none;height:100%;position:absolute;width:100%;z-index:1}.outline-start::before,.outline-start::after,.outline-panel-inactive::before,.outline-panel-inactive::after,.outline-panel-active::before,.outline-panel-active::after,.outline-end::before,.outline-end::after{border:inherit;content:"";inset:0;position:absolute}.outline-start,.outline-end{border:inherit;border-radius:inherit;box-sizing:border-box;position:relative}.outline-start::before,.outline-start::after,.outline-end::before,.outline-end::after{border-bottom-style:solid;border-top-style:solid}.outline-start::after,.outline-end::after{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .outline-start::after,.focused .outline-end::after{opacity:1}.outline-start::before,.outline-start::after{border-inline-start-style:solid;border-inline-end-style:none;border-start-start-radius:inherit;border-start-end-radius:0;border-end-start-radius:inherit;border-end-end-radius:0;margin-inline-end:var(--_outline-label-padding)}.outline-end{flex-grow:1;margin-inline-start:calc(-1*var(--_outline-label-padding))}.outline-end::before,.outline-end::after{border-inline-start-style:none;border-inline-end-style:solid;border-start-start-radius:0;border-start-end-radius:inherit;border-end-start-radius:0;border-end-end-radius:inherit}.outline-notch{align-items:flex-start;border:inherit;display:flex;margin-inline-start:calc(-1*var(--_outline-label-padding));margin-inline-end:var(--_outline-label-padding);max-width:calc(100% - var(--_leading-space) - var(--_trailing-space));padding:0 var(--_outline-label-padding);position:relative}.no-label .outline-notch{display:none}.outline-panel-inactive,.outline-panel-active{border:inherit;border-bottom-style:solid;inset:0;position:absolute}.outline-panel-inactive::before,.outline-panel-inactive::after,.outline-panel-active::before,.outline-panel-active::after{border-top-style:solid;border-bottom:none;bottom:auto;transform:scaleX(1);transition:transform 150ms cubic-bezier(0.2, 0, 0, 1)}.outline-panel-inactive::before,.outline-panel-active::before{right:50%;transform-origin:top left}.outline-panel-inactive::after,.outline-panel-active::after{left:50%;transform-origin:top right}.populated .outline-panel-inactive::before,.populated .outline-panel-inactive::after,.populated .outline-panel-active::before,.populated .outline-panel-active::after,.focused .outline-panel-inactive::before,.focused .outline-panel-inactive::after,.focused .outline-panel-active::before,.focused .outline-panel-active::after{transform:scaleX(0)}.outline-panel-active{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .outline-panel-active{opacity:1}.outline-label{display:flex;max-width:100%;transform:translateY(calc(-100% + var(--_label-text-padding-bottom)))}.outline-start,.field:not(.with-start) .content ::slotted(*){padding-inline-start:max(var(--_leading-space),max(var(--_container-shape-start-start),var(--_container-shape-end-start)) + var(--_outline-label-padding))}.field:not(.with-start) .label-wrapper{margin-inline-start:max(var(--_leading-space),max(var(--_container-shape-start-start),var(--_container-shape-end-start)) + var(--_outline-label-padding))}.field:not(.with-end) .content ::slotted(*){padding-inline-end:max(var(--_trailing-space),max(var(--_container-shape-start-end),var(--_container-shape-end-end)))}.field:not(.with-end) .label-wrapper{margin-inline-end:max(var(--_trailing-space),max(var(--_container-shape-start-end),var(--_container-shape-end-end)))}.outline-start::before,.outline-end::before,.outline-panel-inactive,.outline-panel-inactive::before,.outline-panel-inactive::after{border-width:var(--_outline-width)}:hover .outline{border-color:var(--_hover-outline-color);color:var(--_hover-outline-color)}:hover .outline-start::before,:hover .outline-end::before,:hover .outline-panel-inactive,:hover .outline-panel-inactive::before,:hover .outline-panel-inactive::after{border-width:var(--_hover-outline-width)}.focused .outline{border-color:var(--_focus-outline-color);color:var(--_focus-outline-color)}.outline-start::after,.outline-end::after,.outline-panel-active,.outline-panel-active::before,.outline-panel-active::after{border-width:var(--_focus-outline-width)}.disabled .outline{border-color:var(--_disabled-outline-color);color:var(--_disabled-outline-color)}.disabled .outline-start,.disabled .outline-end,.disabled .outline-panel-inactive{opacity:var(--_disabled-outline-opacity)}.disabled .outline-start::before,.disabled .outline-end::before,.disabled .outline-panel-inactive,.disabled .outline-panel-inactive::before,.disabled .outline-panel-inactive::after{border-width:var(--_disabled-outline-width)}.error .outline{border-color:var(--_error-outline-color);color:var(--_error-outline-color)}.error:hover .outline{border-color:var(--_error-hover-outline-color);color:var(--_error-hover-outline-color)}.error.focused .outline{border-color:var(--_error-focus-outline-color);color:var(--_error-focus-outline-color)}.resizable .container{bottom:var(--_focus-outline-width);inset-inline-end:var(--_focus-outline-width);clip-path:inset(var(--_focus-outline-width) 0 0 var(--_focus-outline-width))}.resizable .container>*{top:var(--_focus-outline-width);inset-inline-start:var(--_focus-outline-width)}.resizable .container:dir(rtl){clip-path:inset(var(--_focus-outline-width) var(--_focus-outline-width) 0 0)}}@layer hcm{@media(forced-colors: active){.disabled .outline{border-color:GrayText;color:GrayText}.disabled :is(.outline-start,.outline-end,.outline-panel-inactive){opacity:1}}} + */const is=_`@layer styles{:host{--_bottom-space: var(--md-outlined-field-bottom-space, 16px);--_content-color: var(--md-outlined-field-content-color, var(--md-sys-color-on-surface, #1d1b20));--_content-font: var(--md-outlined-field-content-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_content-line-height: var(--md-outlined-field-content-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_content-size: var(--md-outlined-field-content-size, var(--md-sys-typescale-body-large-size, 1rem));--_content-space: var(--md-outlined-field-content-space, 16px);--_content-weight: var(--md-outlined-field-content-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_disabled-content-color: var(--md-outlined-field-disabled-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-content-opacity: var(--md-outlined-field-disabled-content-opacity, 0.38);--_disabled-label-text-color: var(--md-outlined-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-field-disabled-label-text-opacity, 0.38);--_disabled-leading-content-color: var(--md-outlined-field-disabled-leading-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-content-opacity: var(--md-outlined-field-disabled-leading-content-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-field-disabled-outline-opacity, 0.12);--_disabled-outline-width: var(--md-outlined-field-disabled-outline-width, 1px);--_disabled-supporting-text-color: var(--md-outlined-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-outlined-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-content-color: var(--md-outlined-field-disabled-trailing-content-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-content-opacity: var(--md-outlined-field-disabled-trailing-content-opacity, 0.38);--_error-content-color: var(--md-outlined-field-error-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-content-color: var(--md-outlined-field-error-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-outlined-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-content-color: var(--md-outlined-field-error-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-outline-color: var(--md-outlined-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_error-focus-supporting-text-color: var(--md-outlined-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-content-color: var(--md-outlined-field-error-focus-trailing-content-color, var(--md-sys-color-error, #b3261e));--_error-hover-content-color: var(--md-outlined-field-error-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-outlined-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-content-color: var(--md-outlined-field-error-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-outline-color: var(--md-outlined-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-supporting-text-color: var(--md-outlined-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-content-color: var(--md-outlined-field-error-hover-trailing-content-color, var(--md-sys-color-on-error-container, #410e0b));--_error-label-text-color: var(--md-outlined-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-content-color: var(--md-outlined-field-error-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-outline-color: var(--md-outlined-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_error-supporting-text-color: var(--md-outlined-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-content-color: var(--md-outlined-field-error-trailing-content-color, var(--md-sys-color-error, #b3261e));--_focus-content-color: var(--md-outlined-field-focus-content-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-outlined-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-content-color: var(--md-outlined-field-focus-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-outlined-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_focus-outline-width: var(--md-outlined-field-focus-outline-width, 3px);--_focus-supporting-text-color: var(--md-outlined-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-content-color: var(--md-outlined-field-focus-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-content-color: var(--md-outlined-field-hover-content-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-outlined-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-leading-content-color: var(--md-outlined-field-hover-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-outline-color: var(--md-outlined-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-outline-width: var(--md-outlined-field-hover-outline-width, 1px);--_hover-supporting-text-color: var(--md-outlined-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-content-color: var(--md-outlined-field-hover-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-outlined-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-outlined-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-padding-bottom: var(--md-outlined-field-label-text-padding-bottom, 8px);--_label-text-populated-line-height: var(--md-outlined-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-outlined-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-outlined-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-outlined-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-content-color: var(--md-outlined-field-leading-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-space: var(--md-outlined-field-leading-space, 16px);--_outline-color: var(--md-outlined-field-outline-color, var(--md-sys-color-outline, #79747e));--_outline-label-padding: var(--md-outlined-field-outline-label-padding, 4px);--_outline-width: var(--md-outlined-field-outline-width, 1px);--_supporting-text-color: var(--md-outlined-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-outlined-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-leading-space: var(--md-outlined-field-supporting-text-leading-space, 16px);--_supporting-text-line-height: var(--md-outlined-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-outlined-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-top-space: var(--md-outlined-field-supporting-text-top-space, 4px);--_supporting-text-trailing-space: var(--md-outlined-field-supporting-text-trailing-space, 16px);--_supporting-text-weight: var(--md-outlined-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_top-space: var(--md-outlined-field-top-space, 16px);--_trailing-content-color: var(--md-outlined-field-trailing-content-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-space: var(--md-outlined-field-trailing-space, 16px);--_with-leading-content-leading-space: var(--md-outlined-field-with-leading-content-leading-space, 12px);--_with-trailing-content-trailing-space: var(--md-outlined-field-with-trailing-content-trailing-space, 12px);--_container-shape-start-start: var(--md-outlined-field-container-shape-start-start, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-outlined-field-container-shape-start-end, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-outlined-field-container-shape-end-end, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-start: var(--md-outlined-field-container-shape-end-start, var(--md-outlined-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)))}.outline{border-color:var(--_outline-color);border-radius:inherit;display:flex;pointer-events:none;height:100%;position:absolute;width:100%;z-index:1}.outline-start::before,.outline-start::after,.outline-panel-inactive::before,.outline-panel-inactive::after,.outline-panel-active::before,.outline-panel-active::after,.outline-end::before,.outline-end::after{border:inherit;content:"";inset:0;position:absolute}.outline-start,.outline-end{border:inherit;border-radius:inherit;box-sizing:border-box;position:relative}.outline-start::before,.outline-start::after,.outline-end::before,.outline-end::after{border-bottom-style:solid;border-top-style:solid}.outline-start::after,.outline-end::after{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .outline-start::after,.focused .outline-end::after{opacity:1}.outline-start::before,.outline-start::after{border-inline-start-style:solid;border-inline-end-style:none;border-start-start-radius:inherit;border-start-end-radius:0;border-end-start-radius:inherit;border-end-end-radius:0;margin-inline-end:var(--_outline-label-padding)}.outline-end{flex-grow:1;margin-inline-start:calc(-1*var(--_outline-label-padding))}.outline-end::before,.outline-end::after{border-inline-start-style:none;border-inline-end-style:solid;border-start-start-radius:0;border-start-end-radius:inherit;border-end-start-radius:0;border-end-end-radius:inherit}.outline-notch{align-items:flex-start;border:inherit;display:flex;margin-inline-start:calc(-1*var(--_outline-label-padding));margin-inline-end:var(--_outline-label-padding);max-width:calc(100% - var(--_leading-space) - var(--_trailing-space));padding:0 var(--_outline-label-padding);position:relative}.no-label .outline-notch{display:none}.outline-panel-inactive,.outline-panel-active{border:inherit;border-bottom-style:solid;inset:0;position:absolute}.outline-panel-inactive::before,.outline-panel-inactive::after,.outline-panel-active::before,.outline-panel-active::after{border-top-style:solid;border-bottom:none;bottom:auto;transform:scaleX(1);transition:transform 150ms cubic-bezier(0.2, 0, 0, 1)}.outline-panel-inactive::before,.outline-panel-active::before{right:50%;transform-origin:top left}.outline-panel-inactive::after,.outline-panel-active::after{left:50%;transform-origin:top right}.populated .outline-panel-inactive::before,.populated .outline-panel-inactive::after,.populated .outline-panel-active::before,.populated .outline-panel-active::after,.focused .outline-panel-inactive::before,.focused .outline-panel-inactive::after,.focused .outline-panel-active::before,.focused .outline-panel-active::after{transform:scaleX(0)}.outline-panel-active{opacity:0;transition:opacity 150ms cubic-bezier(0.2, 0, 0, 1)}.focused .outline-panel-active{opacity:1}.outline-label{display:flex;max-width:100%;transform:translateY(calc(-100% + var(--_label-text-padding-bottom)))}.outline-start,.field:not(.with-start) .content ::slotted(*){padding-inline-start:max(var(--_leading-space),max(var(--_container-shape-start-start),var(--_container-shape-end-start)) + var(--_outline-label-padding))}.field:not(.with-start) .label-wrapper{margin-inline-start:max(var(--_leading-space),max(var(--_container-shape-start-start),var(--_container-shape-end-start)) + var(--_outline-label-padding))}.field:not(.with-end) .content ::slotted(*){padding-inline-end:max(var(--_trailing-space),max(var(--_container-shape-start-end),var(--_container-shape-end-end)))}.field:not(.with-end) .label-wrapper{margin-inline-end:max(var(--_trailing-space),max(var(--_container-shape-start-end),var(--_container-shape-end-end)))}.outline-start::before,.outline-end::before,.outline-panel-inactive,.outline-panel-inactive::before,.outline-panel-inactive::after{border-width:var(--_outline-width)}:hover .outline{border-color:var(--_hover-outline-color);color:var(--_hover-outline-color)}:hover .outline-start::before,:hover .outline-end::before,:hover .outline-panel-inactive,:hover .outline-panel-inactive::before,:hover .outline-panel-inactive::after{border-width:var(--_hover-outline-width)}.focused .outline{border-color:var(--_focus-outline-color);color:var(--_focus-outline-color)}.outline-start::after,.outline-end::after,.outline-panel-active,.outline-panel-active::before,.outline-panel-active::after{border-width:var(--_focus-outline-width)}.disabled .outline{border-color:var(--_disabled-outline-color);color:var(--_disabled-outline-color)}.disabled .outline-start,.disabled .outline-end,.disabled .outline-panel-inactive{opacity:var(--_disabled-outline-opacity)}.disabled .outline-start::before,.disabled .outline-end::before,.disabled .outline-panel-inactive,.disabled .outline-panel-inactive::before,.disabled .outline-panel-inactive::after{border-width:var(--_disabled-outline-width)}.error .outline{border-color:var(--_error-outline-color);color:var(--_error-outline-color)}.error:hover .outline{border-color:var(--_error-hover-outline-color);color:var(--_error-hover-outline-color)}.error.focused .outline{border-color:var(--_error-focus-outline-color);color:var(--_error-focus-outline-color)}.resizable .container{bottom:var(--_focus-outline-width);inset-inline-end:var(--_focus-outline-width);clip-path:inset(var(--_focus-outline-width) 0 0 var(--_focus-outline-width))}.resizable .container>*{top:var(--_focus-outline-width);inset-inline-start:var(--_focus-outline-width)}.resizable .container:dir(rtl){clip-path:inset(var(--_focus-outline-width) var(--_focus-outline-width) 0 0)}}@layer hcm{@media(forced-colors: active){.disabled .outline{border-color:GrayText;color:GrayText}.disabled :is(.outline-start,.outline-end,.outline-panel-inactive){opacity:1}}} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let to=class extends as{};to.styles=[Vi,ns];to=n([w("md-outlined-field")],to);/** + */let Rr=class extends rs{};Rr.styles=[Ua,is];Rr=l([S("md-outlined-field")],Rr);/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ss extends C{render(){return p``}connectedCallback(){if(super.connectedCallback(),this.getAttribute("aria-hidden")==="false"){this.removeAttribute("aria-hidden");return}this.setAttribute("aria-hidden","true")}}/** + */class as extends ${render(){return m``}connectedCallback(){if(super.connectedCallback(),this.getAttribute("aria-hidden")==="false"){this.removeAttribute("aria-hidden");return}this.setAttribute("aria-hidden","true")}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ls=x`:host{font-size:var(--md-icon-size, 24px);width:var(--md-icon-size, 24px);height:var(--md-icon-size, 24px);color:inherit;font-variation-settings:inherit;font-weight:400;font-family:var(--md-icon-font, Material Symbols Outlined);display:inline-flex;font-style:normal;place-items:center;place-content:center;line-height:1;overflow:hidden;letter-spacing:normal;text-transform:none;user-select:none;white-space:nowrap;word-wrap:normal;flex-shrink:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale}::slotted(svg){fill:currentColor}::slotted(*){height:100%;width:100%} + */const ns=_`:host{font-size:var(--md-icon-size, 24px);width:var(--md-icon-size, 24px);height:var(--md-icon-size, 24px);color:inherit;font-variation-settings:inherit;font-weight:400;font-family:var(--md-icon-font, Material Symbols Outlined);display:inline-flex;font-style:normal;place-items:center;place-content:center;line-height:1;overflow:hidden;letter-spacing:normal;text-transform:none;user-select:none;white-space:nowrap;word-wrap:normal;flex-shrink:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale}::slotted(svg){fill:currentColor}::slotted(*){height:100%;width:100%} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let ro=class extends ss{};ro.styles=[ls];ro=n([w("md-icon")],ro);/** + */let Or=class extends as{};Or.styles=[ns];Or=l([S("md-icon")],Or);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ds=x`:host{--_container-color: var(--md-filled-icon-button-container-color, var(--md-sys-color-primary, #6750a4));--_container-height: var(--md-filled-icon-button-container-height, 40px);--_container-width: var(--md-filled-icon-button-container-width, 40px);--_disabled-container-color: var(--md-filled-icon-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-icon-button-disabled-container-opacity, 0.12);--_disabled-icon-color: var(--md-filled-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-icon-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-icon-button-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-icon-color: var(--md-filled-icon-button-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-color: var(--md-filled-icon-button-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-opacity: var(--md-filled-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-filled-icon-button-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-size: var(--md-filled-icon-button-icon-size, 24px);--_pressed-icon-color: var(--md-filled-icon-button-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-color: var(--md-filled-icon-button-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-opacity: var(--md-filled-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-filled-icon-button-selected-container-color, var(--md-sys-color-primary, #6750a4));--_toggle-selected-focus-icon-color: var(--md-filled-icon-button-toggle-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-hover-icon-color: var(--md-filled-icon-button-toggle-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-hover-state-layer-color: var(--md-filled-icon-button-toggle-selected-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-icon-color: var(--md-filled-icon-button-toggle-selected-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-pressed-icon-color: var(--md-filled-icon-button-toggle-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-pressed-state-layer-color: var(--md-filled-icon-button-toggle-selected-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_unselected-container-color: var(--md-filled-icon-button-unselected-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_toggle-focus-icon-color: var(--md-filled-icon-button-toggle-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-hover-icon-color: var(--md-filled-icon-button-toggle-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-hover-state-layer-color: var(--md-filled-icon-button-toggle-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_toggle-icon-color: var(--md-filled-icon-button-toggle-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-pressed-icon-color: var(--md-filled-icon-button-toggle-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-pressed-state-layer-color: var(--md-filled-icon-button-toggle-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-filled-icon-button-container-shape-start-start, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-icon-button-container-shape-start-end, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-icon-button-container-shape-end-end, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-icon-button-container-shape-end-start, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.icon-button{color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.icon-button:hover{color:var(--_hover-icon-color)}.icon-button:focus{color:var(--_focus-icon-color)}.icon-button:active{color:var(--_pressed-icon-color)}.icon-button:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.icon-button::before{background-color:var(--_container-color);border-radius:inherit;content:"";inset:0;position:absolute;z-index:-1}.icon-button:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.icon-button:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.toggle-filled{--md-ripple-hover-color: var(--_toggle-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-pressed-state-layer-color)}.toggle-filled:not(:disabled,[aria-disabled=true]){color:var(--_toggle-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-hover-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-focus-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-pressed-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true])::before{background-color:var(--_unselected-container-color)}.selected{--md-ripple-hover-color: var(--_toggle-selected-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-selected-pressed-state-layer-color)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_toggle-selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)} + */const ls=_`:host{--_container-color: var(--md-filled-icon-button-container-color, var(--md-sys-color-primary, #6750a4));--_container-height: var(--md-filled-icon-button-container-height, 40px);--_container-width: var(--md-filled-icon-button-container-width, 40px);--_disabled-container-color: var(--md-filled-icon-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-icon-button-disabled-container-opacity, 0.12);--_disabled-icon-color: var(--md-filled-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-icon-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-icon-button-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-icon-color: var(--md-filled-icon-button-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-color: var(--md-filled-icon-button-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_hover-state-layer-opacity: var(--md-filled-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-filled-icon-button-icon-color, var(--md-sys-color-on-primary, #fff));--_icon-size: var(--md-filled-icon-button-icon-size, 24px);--_pressed-icon-color: var(--md-filled-icon-button-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-color: var(--md-filled-icon-button-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_pressed-state-layer-opacity: var(--md-filled-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-filled-icon-button-selected-container-color, var(--md-sys-color-primary, #6750a4));--_toggle-selected-focus-icon-color: var(--md-filled-icon-button-toggle-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-hover-icon-color: var(--md-filled-icon-button-toggle-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-hover-state-layer-color: var(--md-filled-icon-button-toggle-selected-hover-state-layer-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-icon-color: var(--md-filled-icon-button-toggle-selected-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-pressed-icon-color: var(--md-filled-icon-button-toggle-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff));--_toggle-selected-pressed-state-layer-color: var(--md-filled-icon-button-toggle-selected-pressed-state-layer-color, var(--md-sys-color-on-primary, #fff));--_unselected-container-color: var(--md-filled-icon-button-unselected-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_toggle-focus-icon-color: var(--md-filled-icon-button-toggle-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-hover-icon-color: var(--md-filled-icon-button-toggle-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-hover-state-layer-color: var(--md-filled-icon-button-toggle-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_toggle-icon-color: var(--md-filled-icon-button-toggle-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-pressed-icon-color: var(--md-filled-icon-button-toggle-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_toggle-pressed-state-layer-color: var(--md-filled-icon-button-toggle-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_container-shape-start-start: var(--md-filled-icon-button-container-shape-start-start, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-icon-button-container-shape-start-end, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-icon-button-container-shape-end-end, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-icon-button-container-shape-end-start, var(--md-filled-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.icon-button{color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.icon-button:hover{color:var(--_hover-icon-color)}.icon-button:focus{color:var(--_focus-icon-color)}.icon-button:active{color:var(--_pressed-icon-color)}.icon-button:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.icon-button::before{background-color:var(--_container-color);border-radius:inherit;content:"";inset:0;position:absolute;z-index:-1}.icon-button:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.icon-button:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.toggle-filled{--md-ripple-hover-color: var(--_toggle-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-pressed-state-layer-color)}.toggle-filled:not(:disabled,[aria-disabled=true]){color:var(--_toggle-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-hover-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-focus-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-pressed-icon-color)}.toggle-filled:not(:disabled,[aria-disabled=true])::before{background-color:var(--_unselected-container-color)}.selected{--md-ripple-hover-color: var(--_toggle-selected-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-selected-pressed-state-layer-color)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_toggle-selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)} `;/** * @license * Copyright 2020 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const Wi=Symbol.for(""),cs=o=>{if((o==null?void 0:o.r)===Wi)return o==null?void 0:o._$litStatic$},ae=(o,...e)=>({_$litStatic$:e.reduce((t,r,i)=>t+(a=>{if(a._$litStatic$!==void 0)return a._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${a}. Use 'unsafeStatic' to pass non-literal values, but - take care to ensure page security.`)})(r)+o[i+1],o[0]),r:Wi}),di=new Map,hs=o=>(e,...t)=>{const r=t.length;let i,a;const s=[],d=[];let c,f=0,v=!1;for(;f{if((r==null?void 0:r.r)===qa)return r==null?void 0:r._$litStatic$},le=(r,...e)=>({_$litStatic$:e.reduce((t,o,i)=>t+(a=>{if(a._$litStatic$!==void 0)return a._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${a}. Use 'unsafeStatic' to pass non-literal values, but + take care to ensure page security.`)})(o)+r[i+1],r[0]),r:qa}),Zi=new Map,ds=r=>(e,...t)=>{const o=t.length;let i,a;const n=[],s=[];let d,h=0,v=!1;for(;h ${this.renderFocusRing()} ${this.renderRipple()} - ${this.selected?h:this.renderIcon()} - ${this.selected?this.renderSelectedIcon():h} + ${this.selected?p:this.renderIcon()} + ${this.selected?this.renderSelectedIcon():p} ${this.renderTouchTarget()} ${this.href&&this.renderLink()} - `}renderLink(){const{ariaLabel:e}=this;return p` + `}renderLink(){const{ariaLabel:e}=this;return m` - `}getRenderClasses(){return{"flip-icon":this.flipIcon,selected:this.toggle&&this.selected}}renderIcon(){return p``}renderSelectedIcon(){return p` + `}getRenderClasses(){return{"flip-icon":this.flipIcon,selected:this.toggle&&this.selected}}renderIcon(){return m``}renderSelectedIcon(){return m``}renderTouchTarget(){return p``}renderFocusRing(){return p``}renderTouchTarget(){return m``}renderFocusRing(){return m``}renderRipple(){const e=!this.href&&(this.disabled||this.softDisabled);return p``}connectedCallback(){this.flipIcon=ci(this,this.flipIconInRtl),super.connectedCallback()}handleClick(e){if(!this.href&&this.softDisabled){e.stopImmediatePropagation(),e.preventDefault();return}}async handleClickOnChild(e){await 0,!(!this.toggle||this.disabled||this.softDisabled||e.defaultPrevented)&&(this.selected=!this.selected,this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0})))}}Oi(G);G.formAssociated=!0;G.shadowRootOptions={mode:"open",delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],G.prototype,"disabled",void 0);n([l({type:Boolean,attribute:"soft-disabled",reflect:!0})],G.prototype,"softDisabled",void 0);n([l({type:Boolean,attribute:"flip-icon-in-rtl"})],G.prototype,"flipIconInRtl",void 0);n([l()],G.prototype,"href",void 0);n([l()],G.prototype,"target",void 0);n([l({attribute:"aria-label-selected"})],G.prototype,"ariaLabelSelected",void 0);n([l({type:Boolean})],G.prototype,"toggle",void 0);n([l({type:Boolean,reflect:!0})],G.prototype,"selected",void 0);n([l()],G.prototype,"type",void 0);n([l({reflect:!0})],G.prototype,"value",void 0);n([z()],G.prototype,"flipIcon",void 0);/** + for=${this.href?"link":"button"}>`}renderRipple(){const e=!this.href&&(this.disabled||this.softDisabled);return m``}connectedCallback(){this.flipIcon=Qi(this,this.flipIconInRtl),super.connectedCallback()}handleClick(e){if(!this.href&&this.softDisabled){e.stopImmediatePropagation(),e.preventDefault();return}}async handleClickOnChild(e){await 0,!(!this.toggle||this.disabled||this.softDisabled||e.defaultPrevented)&&(this.selected=!this.selected,this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0})))}}za(X);X.formAssociated=!0;X.shadowRootOptions={mode:"open",delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],X.prototype,"disabled",void 0);l([c({type:Boolean,attribute:"soft-disabled",reflect:!0})],X.prototype,"softDisabled",void 0);l([c({type:Boolean,attribute:"flip-icon-in-rtl"})],X.prototype,"flipIconInRtl",void 0);l([c()],X.prototype,"href",void 0);l([c()],X.prototype,"target",void 0);l([c({attribute:"aria-label-selected"})],X.prototype,"ariaLabelSelected",void 0);l([c({type:Boolean})],X.prototype,"toggle",void 0);l([c({type:Boolean,reflect:!0})],X.prototype,"selected",void 0);l([c()],X.prototype,"type",void 0);l([c({reflect:!0})],X.prototype,"value",void 0);l([M()],X.prototype,"flipIcon",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const mr=x`:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:var(--_container-height);width:var(--_container-width);justify-content:center}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) max(0px,(48px - var(--_container-width))/2)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}:host(:is([disabled],[soft-disabled])){pointer-events:none}.icon-button{place-items:center;background:none;border:none;box-sizing:border-box;cursor:pointer;display:flex;place-content:center;outline:none;padding:0;position:relative;text-decoration:none;user-select:none;z-index:0;flex:1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.icon ::slotted(*){font-size:var(--_icon-size);height:var(--_icon-size);width:var(--_icon-size);font-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.flip-icon .icon{transform:scaleX(-1)}.icon{display:inline-flex}.link{height:100%;outline:none;position:absolute;width:100%}.touch{position:absolute;height:max(48px,100%);width:max(48px,100%)}:host([touch-target=none]) .touch{display:none}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])){--_disabled-icon-color: GrayText;--_disabled-icon-opacity: 1}} + */const Do=_`:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);height:var(--_container-height);width:var(--_container-width);justify-content:center}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_container-height))/2) max(0px,(48px - var(--_container-width))/2)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_container-shape-start-start);--md-focus-ring-shape-start-end: var(--_container-shape-start-end);--md-focus-ring-shape-end-end: var(--_container-shape-end-end);--md-focus-ring-shape-end-start: var(--_container-shape-end-start)}:host(:is([disabled],[soft-disabled])){pointer-events:none}.icon-button{place-items:center;background:none;border:none;box-sizing:border-box;cursor:pointer;display:flex;place-content:center;outline:none;padding:0;position:relative;text-decoration:none;user-select:none;z-index:0;flex:1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.icon ::slotted(*){font-size:var(--_icon-size);height:var(--_icon-size);width:var(--_icon-size);font-weight:inherit}md-ripple{z-index:-1;border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-start-radius:var(--_container-shape-end-start);border-end-end-radius:var(--_container-shape-end-end)}.flip-icon .icon{transform:scaleX(-1)}.icon{display:inline-flex}.link{height:100%;outline:none;position:absolute;width:100%}.touch{position:absolute;height:max(48px,100%);width:max(48px,100%)}:host([touch-target=none]) .touch{display:none}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])){--_disabled-icon-color: GrayText;--_disabled-icon-opacity: 1}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let oo=class extends G{getRenderClasses(){return{...super.getRenderClasses(),filled:!0,"toggle-filled":this.toggle}}};oo.styles=[mr,ds];oo=n([w("md-filled-icon-button")],oo);/** + */let Pr=class extends X{getRenderClasses(){return{...super.getRenderClasses(),filled:!0,"toggle-filled":this.toggle}}};Pr.styles=[Do,ls];Pr=l([S("md-filled-icon-button")],Pr);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const us=x`:host{--_container-color: var(--md-filled-tonal-icon-button-container-color, var(--md-sys-color-secondary-container, #e8def8));--_container-height: var(--md-filled-tonal-icon-button-container-height, 40px);--_container-width: var(--md-filled-tonal-icon-button-container-width, 40px);--_disabled-container-color: var(--md-filled-tonal-icon-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-tonal-icon-button-disabled-container-opacity, 0.12);--_disabled-icon-color: var(--md-filled-tonal-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-tonal-icon-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-tonal-icon-button-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-icon-color: var(--md-filled-tonal-icon-button-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-color: var(--md-filled-tonal-icon-button-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-opacity: var(--md-filled-tonal-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-filled-tonal-icon-button-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-size: var(--md-filled-tonal-icon-button-icon-size, 24px);--_pressed-icon-color: var(--md-filled-tonal-icon-button-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-color: var(--md-filled-tonal-icon-button-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filled-tonal-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-filled-tonal-icon-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_toggle-selected-focus-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-hover-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-hover-state-layer-color: var(--md-filled-tonal-icon-button-toggle-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-pressed-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-pressed-state-layer-color: var(--md-filled-tonal-icon-button-toggle-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-container-color: var(--md-filled-tonal-icon-button-unselected-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_toggle-focus-icon-color: var(--md-filled-tonal-icon-button-toggle-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-hover-icon-color: var(--md-filled-tonal-icon-button-toggle-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-hover-state-layer-color: var(--md-filled-tonal-icon-button-toggle-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-icon-color: var(--md-filled-tonal-icon-button-toggle-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-pressed-icon-color: var(--md-filled-tonal-icon-button-toggle-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-pressed-state-layer-color: var(--md-filled-tonal-icon-button-toggle-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-filled-tonal-icon-button-container-shape-start-start, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-tonal-icon-button-container-shape-start-end, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-tonal-icon-button-container-shape-end-end, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-tonal-icon-button-container-shape-end-start, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.icon-button{color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.icon-button:hover{color:var(--_hover-icon-color)}.icon-button:focus{color:var(--_focus-icon-color)}.icon-button:active{color:var(--_pressed-icon-color)}.icon-button:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.icon-button::before{background-color:var(--_container-color);border-radius:inherit;content:"";inset:0;position:absolute;z-index:-1}.icon-button:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.icon-button:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.toggle-filled-tonal{--md-ripple-hover-color: var(--_toggle-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-pressed-state-layer-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]){color:var(--_toggle-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-hover-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-focus-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-pressed-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true])::before{background-color:var(--_unselected-container-color)}.selected{--md-ripple-hover-color: var(--_toggle-selected-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-selected-pressed-state-layer-color)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_toggle-selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)} + */const hs=_`:host{--_container-color: var(--md-filled-tonal-icon-button-container-color, var(--md-sys-color-secondary-container, #e8def8));--_container-height: var(--md-filled-tonal-icon-button-container-height, 40px);--_container-width: var(--md-filled-tonal-icon-button-container-width, 40px);--_disabled-container-color: var(--md-filled-tonal-icon-button-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-tonal-icon-button-disabled-container-opacity, 0.12);--_disabled-icon-color: var(--md-filled-tonal-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-filled-tonal-icon-button-disabled-icon-opacity, 0.38);--_focus-icon-color: var(--md-filled-tonal-icon-button-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-icon-color: var(--md-filled-tonal-icon-button-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-color: var(--md-filled-tonal-icon-button-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_hover-state-layer-opacity: var(--md-filled-tonal-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-filled-tonal-icon-button-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_icon-size: var(--md-filled-tonal-icon-button-icon-size, 24px);--_pressed-icon-color: var(--md-filled-tonal-icon-button-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-color: var(--md-filled-tonal-icon-button-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_pressed-state-layer-opacity: var(--md-filled-tonal-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-filled-tonal-icon-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_toggle-selected-focus-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-hover-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-hover-state-layer-color: var(--md-filled-tonal-icon-button-toggle-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-pressed-icon-color: var(--md-filled-tonal-icon-button-toggle-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_toggle-selected-pressed-state-layer-color: var(--md-filled-tonal-icon-button-toggle-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-container-color: var(--md-filled-tonal-icon-button-unselected-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_toggle-focus-icon-color: var(--md-filled-tonal-icon-button-toggle-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-hover-icon-color: var(--md-filled-tonal-icon-button-toggle-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-hover-state-layer-color: var(--md-filled-tonal-icon-button-toggle-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-icon-color: var(--md-filled-tonal-icon-button-toggle-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-pressed-icon-color: var(--md-filled-tonal-icon-button-toggle-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_toggle-pressed-state-layer-color: var(--md-filled-tonal-icon-button-toggle-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start: var(--md-filled-tonal-icon-button-container-shape-start-start, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-filled-tonal-icon-button-container-shape-start-end, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-filled-tonal-icon-button-container-shape-end-end, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-filled-tonal-icon-button-container-shape-end-start, var(--md-filled-tonal-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.icon-button{color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.icon-button:hover{color:var(--_hover-icon-color)}.icon-button:focus{color:var(--_focus-icon-color)}.icon-button:active{color:var(--_pressed-icon-color)}.icon-button:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.icon-button::before{background-color:var(--_container-color);border-radius:inherit;content:"";inset:0;position:absolute;z-index:-1}.icon-button:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-container-color);opacity:var(--_disabled-container-opacity)}.icon-button:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.toggle-filled-tonal{--md-ripple-hover-color: var(--_toggle-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-pressed-state-layer-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]){color:var(--_toggle-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-hover-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-focus-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-pressed-icon-color)}.toggle-filled-tonal:not(:disabled,[aria-disabled=true])::before{background-color:var(--_unselected-container-color)}.selected{--md-ripple-hover-color: var(--_toggle-selected-hover-state-layer-color);--md-ripple-pressed-color: var(--_toggle-selected-pressed-state-layer-color)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_toggle-selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_toggle-selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_toggle-selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_toggle-selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let io=class extends G{getRenderClasses(){return{...super.getRenderClasses(),"filled-tonal":!0,"toggle-filled-tonal":this.toggle}}};io.styles=[mr,us];io=n([w("md-filled-tonal-icon-button")],io);/** + */let Dr=class extends X{getRenderClasses(){return{...super.getRenderClasses(),"filled-tonal":!0,"toggle-filled-tonal":this.toggle}}};Dr.styles=[Do,hs];Dr=l([S("md-filled-tonal-icon-button")],Dr);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const vs=x`:host{--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-icon-button-disabled-icon-opacity, 0.38);--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-height: var(--md-icon-button-state-layer-height, 40px);--_state-layer-shape: var(--md-icon-button-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));--_state-layer-width: var(--md-icon-button-state-layer-width, 40px);--_focus-icon-color: var(--md-icon-button-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-icon-color: var(--md-icon-button-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-icon-button-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-icon-button-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-icon-button-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-icon-button-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-icon-button-pressed-state-layer-opacity, 0.12);--_container-shape-start-start: 0;--_container-shape-start-end: 0;--_container-shape-end-end: 0;--_container-shape-end-start: 0;--_container-height: 0;--_container-width: 0;height:var(--_state-layer-height);width:var(--_state-layer-width)}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_state-layer-height))/2) max(0px,(48px - var(--_state-layer-width))/2)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_state-layer-shape);--md-focus-ring-shape-start-end: var(--_state-layer-shape);--md-focus-ring-shape-end-end: var(--_state-layer-shape);--md-focus-ring-shape-end-start: var(--_state-layer-shape)}.standard{background-color:rgba(0,0,0,0);color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.standard:hover{color:var(--_hover-icon-color)}.standard:focus{color:var(--_focus-icon-color)}.standard:active{color:var(--_pressed-icon-color)}.standard:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}md-ripple{border-radius:var(--_state-layer-shape)}.standard:is(:disabled,[aria-disabled=true]){opacity:var(--_disabled-icon-opacity)}.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_selected-pressed-state-layer-opacity)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_selected-pressed-icon-color)} + */const us=_`:host{--_disabled-icon-color: var(--md-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-icon-button-disabled-icon-opacity, 0.38);--_icon-size: var(--md-icon-button-icon-size, 24px);--_selected-focus-icon-color: var(--md-icon-button-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-icon-color: var(--md-icon-button-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-color: var(--md-icon-button-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-state-layer-opacity: var(--md-icon-button-selected-hover-state-layer-opacity, 0.08);--_selected-icon-color: var(--md-icon-button-selected-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-icon-color: var(--md-icon-button-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-color: var(--md-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-state-layer-opacity: var(--md-icon-button-selected-pressed-state-layer-opacity, 0.12);--_state-layer-height: var(--md-icon-button-state-layer-height, 40px);--_state-layer-shape: var(--md-icon-button-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));--_state-layer-width: var(--md-icon-button-state-layer-width, 40px);--_focus-icon-color: var(--md-icon-button-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-icon-color: var(--md-icon-button-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-icon-button-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity: var(--md-icon-button-hover-state-layer-opacity, 0.08);--_icon-color: var(--md-icon-button-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-icon-button-pressed-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color: var(--md-icon-button-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity: var(--md-icon-button-pressed-state-layer-opacity, 0.12);--_container-shape-start-start: 0;--_container-shape-start-end: 0;--_container-shape-end-end: 0;--_container-shape-end-start: 0;--_container-height: 0;--_container-width: 0;height:var(--_state-layer-height);width:var(--_state-layer-width)}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--_state-layer-height))/2) max(0px,(48px - var(--_state-layer-width))/2)}md-focus-ring{--md-focus-ring-shape-start-start: var(--_state-layer-shape);--md-focus-ring-shape-start-end: var(--_state-layer-shape);--md-focus-ring-shape-end-end: var(--_state-layer-shape);--md-focus-ring-shape-end-start: var(--_state-layer-shape)}.standard{background-color:rgba(0,0,0,0);color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.standard:hover{color:var(--_hover-icon-color)}.standard:focus{color:var(--_focus-icon-color)}.standard:active{color:var(--_pressed-icon-color)}.standard:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}md-ripple{border-radius:var(--_state-layer-shape)}.standard:is(:disabled,[aria-disabled=true]){opacity:var(--_disabled-icon-opacity)}.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_selected-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_selected-pressed-state-layer-opacity)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_selected-pressed-icon-color)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let ao=class extends G{getRenderClasses(){return{...super.getRenderClasses(),standard:!0}}};ao.styles=[mr,vs];ao=n([w("md-icon-button")],ao);/** + */let Mr=class extends X{getRenderClasses(){return{...super.getRenderClasses(),standard:!0}}};Mr.styles=[Do,us];Mr=l([S("md-icon-button")],Mr);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ms=x`:host{--_container-height: var(--md-outlined-icon-button-container-height, 40px);--_container-width: var(--md-outlined-icon-button-container-width, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-outlined-icon-button-disabled-icon-opacity, 0.38);--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-outlined-icon-button-disabled-selected-container-opacity, 0.12);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #322f35));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_disabled-outline-color: var(--md-outlined-icon-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-icon-button-disabled-outline-opacity, 0.12);--_focus-icon-color: var(--md-outlined-icon-button-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-icon-color: var(--md-outlined-icon-button-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-outlined-icon-button-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_icon-color: var(--md-outlined-icon-button-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-outlined-icon-button-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-icon-button-outline-width, 1px);--_pressed-icon-color: var(--md-outlined-icon-button-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-outlined-icon-button-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.outlined{background-color:rgba(0,0,0,0);color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.outlined::before{border-color:var(--_outline-color);border-width:var(--_outline-width)}.outlined:hover{color:var(--_hover-icon-color)}.outlined:focus{color:var(--_focus-icon-color)}.outlined:active{color:var(--_pressed-icon-color)}.outlined:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.outlined:is(:disabled,[aria-disabled=true])::before{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}.outlined:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:"";inline-size:100%;inset:0;pointer-events:none;position:absolute;z-index:-1}.outlined.selected::before{border-width:0}.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)}.selected:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-selected-container-color);opacity:var(--_disabled-selected-container-opacity)}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])){--_disabled-outline-opacity: 1}.selected::before{border-color:CanvasText;border-width:var(--_outline-width)}.selected:is(:disabled,[aria-disabled=true])::before{border-color:GrayText;opacity:1}} + */const ps=_`:host{--_container-height: var(--md-outlined-icon-button-container-height, 40px);--_container-width: var(--md-outlined-icon-button-container-width, 40px);--_disabled-icon-color: var(--md-outlined-icon-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-icon-opacity: var(--md-outlined-icon-button-disabled-icon-opacity, 0.38);--_disabled-selected-container-color: var(--md-outlined-icon-button-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity: var(--md-outlined-icon-button-disabled-selected-container-opacity, 0.12);--_hover-state-layer-opacity: var(--md-outlined-icon-button-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-outlined-icon-button-icon-size, 24px);--_pressed-state-layer-opacity: var(--md-outlined-icon-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-icon-button-selected-container-color, var(--md-sys-color-inverse-surface, #322f35));--_selected-focus-icon-color: var(--md-outlined-icon-button-selected-focus-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-icon-color: var(--md-outlined-icon-button-selected-hover-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-hover-state-layer-color: var(--md-outlined-icon-button-selected-hover-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-icon-color: var(--md-outlined-icon-button-selected-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-icon-color: var(--md-outlined-icon-button-selected-pressed-icon-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_selected-pressed-state-layer-color: var(--md-outlined-icon-button-selected-pressed-state-layer-color, var(--md-sys-color-inverse-on-surface, #f5eff7));--_disabled-outline-color: var(--md-outlined-icon-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-icon-button-disabled-outline-opacity, 0.12);--_focus-icon-color: var(--md-outlined-icon-button-focus-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-icon-color: var(--md-outlined-icon-button-hover-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-outlined-icon-button-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_icon-color: var(--md-outlined-icon-button-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color: var(--md-outlined-icon-button-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-icon-button-outline-width, 1px);--_pressed-icon-color: var(--md-outlined-icon-button-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-outlined-icon-button-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-outlined-icon-button-container-shape-start-start, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-start-end: var(--md-outlined-icon-button-container-shape-start-end, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-end: var(--md-outlined-icon-button-container-shape-end-end, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)));--_container-shape-end-start: var(--md-outlined-icon-button-container-shape-end-start, var(--md-outlined-icon-button-container-shape, var(--md-sys-shape-corner-full, 9999px)))}.outlined{background-color:rgba(0,0,0,0);color:var(--_icon-color);--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.outlined::before{border-color:var(--_outline-color);border-width:var(--_outline-width)}.outlined:hover{color:var(--_hover-icon-color)}.outlined:focus{color:var(--_focus-icon-color)}.outlined:active{color:var(--_pressed-icon-color)}.outlined:is(:disabled,[aria-disabled=true]){color:var(--_disabled-icon-color)}.outlined:is(:disabled,[aria-disabled=true])::before{border-color:var(--_disabled-outline-color);opacity:var(--_disabled-outline-opacity)}.outlined:is(:disabled,[aria-disabled=true]) .icon{opacity:var(--_disabled-icon-opacity)}.outlined::before{block-size:100%;border-style:solid;border-radius:inherit;box-sizing:border-box;content:"";inline-size:100%;inset:0;pointer-events:none;position:absolute;z-index:-1}.outlined.selected::before{border-width:0}.selected{--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.selected:not(:disabled,[aria-disabled=true]){color:var(--_selected-icon-color)}.selected:not(:disabled,[aria-disabled=true]):hover{color:var(--_selected-hover-icon-color)}.selected:not(:disabled,[aria-disabled=true]):focus{color:var(--_selected-focus-icon-color)}.selected:not(:disabled,[aria-disabled=true]):active{color:var(--_selected-pressed-icon-color)}.selected:not(:disabled,[aria-disabled=true])::before{background-color:var(--_selected-container-color)}.selected:is(:disabled,[aria-disabled=true])::before{background-color:var(--_disabled-selected-container-color);opacity:var(--_disabled-selected-container-opacity)}@media(forced-colors: active){:host(:is([disabled],[soft-disabled])){--_disabled-outline-opacity: 1}.selected::before{border-color:CanvasText;border-width:var(--_outline-width)}.selected:is(:disabled,[aria-disabled=true])::before{border-color:GrayText;opacity:1}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let no=class extends G{getRenderClasses(){return{...super.getRenderClasses(),outlined:!0}}};no.styles=[mr,ms];no=n([w("md-outlined-icon-button")],no);/** + */let Fr=class extends X{getRenderClasses(){return{...super.getRenderClasses(),outlined:!0}}};Fr.styles=[Do,ps];Fr=l([S("md-outlined-icon-button")],Fr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Ki(o,e=$e){const t=fr(o,e);return t&&(t.tabIndex=0,t.focus()),t}function ji(o,e=$e){const t=Gi(o,e);return t&&(t.tabIndex=0,t.focus()),t}function fs(o,e=$e){const t=st(o,e);return t&&(t.item.tabIndex=-1),t}function st(o,e=$e){for(let t=0;t=0;t--){const r=o[t];if(e(r))return r}return null}function bs(o,e,t=$e,r=!0){for(let i=1;ie&&!r)return null;const s=o[a];if(t(s))return s}return o[e]?o[e]:null}function hi(o,e,t=$e,r=!0){if(e){const i=bs(o,e.index,t,r);return i&&(i.tabIndex=0,i.focus()),i}else return Ki(o,t)}function pi(o,e,t=$e,r=!0){if(e){const i=ys(o,e.index,t,r);return i&&(i.tabIndex=0,i.focus()),i}else return ji(o,t)}function Nt(){return new Event("deactivate-items",{bubbles:!0,composed:!0})}function Xi(){return new Event("request-activation",{bubbles:!0,composed:!0})}function $e(o){return!o.disabled}/** + */function Ha(r,e=$e){const t=Mo(r,e);return t&&(t.tabIndex=0,t.focus()),t}function Va(r,e=$e){const t=Ka(r,e);return t&&(t.tabIndex=0,t.focus()),t}function vs(r,e=$e){const t=mt(r,e);return t&&(t.item.tabIndex=-1),t}function mt(r,e=$e){for(let t=0;t=0;t--){const o=r[t];if(e(o))return o}return null}function ms(r,e,t=$e,o=!0){for(let i=1;ie&&!o)return null;const n=r[a];if(t(n))return n}return r[e]?r[e]:null}function Ji(r,e,t=$e,o=!0){if(e){const i=ms(r,e.index,t,o);return i&&(i.tabIndex=0,i.focus()),i}else return Ha(r,t)}function ea(r,e,t=$e,o=!0){if(e){const i=fs(r,e.index,t,o);return i&&(i.tabIndex=0,i.focus()),i}else return Va(r,t)}function io(){return new Event("deactivate-items",{bubbles:!0,composed:!0})}function Wa(){return new Event("request-activation",{bubbles:!0,composed:!0})}function $e(r){return!r.disabled}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const X={ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowUp:"ArrowUp",ArrowRight:"ArrowRight",Home:"Home",End:"End"};class Yi{constructor(e){this.handleKeydown=v=>{const u=v.key;if(v.defaultPrevented||!this.isNavigableKey(u))return;const m=this.items;if(!m.length)return;const g=st(m,this.isActivatable);v.preventDefault();const S=this.isRtl(),k=S?X.ArrowRight:X.ArrowLeft,L=S?X.ArrowLeft:X.ArrowRight;let B=null;switch(u){case X.ArrowDown:case L:B=hi(m,g,this.isActivatable,this.wrapNavigation());break;case X.ArrowUp:case k:B=pi(m,g,this.isActivatable,this.wrapNavigation());break;case X.Home:B=Ki(m,this.isActivatable);break;case X.End:B=ji(m,this.isActivatable);break}B&&g&&g.item!==B&&(g.item.tabIndex=-1)},this.onDeactivateItems=()=>{const v=this.items;for(const u of v)this.deactivateItem(u)},this.onRequestActivation=v=>{this.onDeactivateItems();const u=v.target;this.activateItem(u),u.focus()},this.onSlotchange=()=>{const v=this.items;let u=!1;for(const g of v){if(!g.disabled&&g.tabIndex>-1&&!u){u=!0,g.tabIndex=0;continue}g.tabIndex=-1}if(u)return;const m=fr(v,this.isActivatable);m&&(m.tabIndex=0)};const{isItem:t,getPossibleItems:r,isRtl:i,deactivateItem:a,activateItem:s,isNavigableKey:d,isActivatable:c,wrapNavigation:f}=e;this.isItem=t,this.getPossibleItems=r,this.isRtl=i,this.deactivateItem=a,this.activateItem=s,this.isNavigableKey=d,this.isActivatable=c,this.wrapNavigation=f??(()=>!0)}get items(){const e=this.getPossibleItems(),t=[];for(const r of e){if(this.isItem(r)){t.push(r);continue}const a=r.item;a&&this.isItem(a)&&t.push(a)}return t}activateNextItem(){const e=this.items,t=st(e,this.isActivatable);return t&&(t.item.tabIndex=-1),hi(e,t,this.isActivatable,this.wrapNavigation())}activatePreviousItem(){const e=this.items,t=st(e,this.isActivatable);return t&&(t.item.tabIndex=-1),pi(e,t,this.isActivatable,this.wrapNavigation())}}/** + */const Q={ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowUp:"ArrowUp",ArrowRight:"ArrowRight",Home:"Home",End:"End"};class ja{constructor(e){this.handleKeydown=v=>{const u=v.key;if(v.defaultPrevented||!this.isNavigableKey(u))return;const f=this.items;if(!f.length)return;const y=mt(f,this.isActivatable);v.preventDefault();const b=this.isRtl(),g=b?Q.ArrowRight:Q.ArrowLeft,k=b?Q.ArrowLeft:Q.ArrowRight;let E=null;switch(u){case Q.ArrowDown:case k:E=Ji(f,y,this.isActivatable,this.wrapNavigation());break;case Q.ArrowUp:case g:E=ea(f,y,this.isActivatable,this.wrapNavigation());break;case Q.Home:E=Ha(f,this.isActivatable);break;case Q.End:E=Va(f,this.isActivatable);break}E&&y&&y.item!==E&&(y.item.tabIndex=-1)},this.onDeactivateItems=()=>{const v=this.items;for(const u of v)this.deactivateItem(u)},this.onRequestActivation=v=>{this.onDeactivateItems();const u=v.target;this.activateItem(u),u.focus()},this.onSlotchange=()=>{const v=this.items;let u=!1;for(const y of v){if(!y.disabled&&y.tabIndex>-1&&!u){u=!0,y.tabIndex=0;continue}y.tabIndex=-1}if(u)return;const f=Mo(v,this.isActivatable);f&&(f.tabIndex=0)};const{isItem:t,getPossibleItems:o,isRtl:i,deactivateItem:a,activateItem:n,isNavigableKey:s,isActivatable:d,wrapNavigation:h}=e;this.isItem=t,this.getPossibleItems=o,this.isRtl=i,this.deactivateItem=a,this.activateItem=n,this.isNavigableKey=s,this.isActivatable=d,this.wrapNavigation=h??(()=>!0)}get items(){const e=this.getPossibleItems(),t=[];for(const o of e){if(this.isItem(o)){t.push(o);continue}const a=o.item;a&&this.isItem(a)&&t.push(a)}return t}activateNextItem(){const e=this.items,t=mt(e,this.isActivatable);return t&&(t.item.tabIndex=-1),Ji(e,t,this.isActivatable,this.wrapNavigation())}activatePreviousItem(){const e=this.items,t=mt(e,this.isActivatable);return t&&(t.item.tabIndex=-1),ea(e,t,this.isActivatable,this.wrapNavigation())}}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const gs=new Set(Object.values(X));class Zi extends C{get items(){return this.listController.items}constructor(){super(),this.listController=new Yi({isItem:e=>e.hasAttribute("md-list-item"),getPossibleItems:()=>this.slotItems,isRtl:()=>getComputedStyle(this).direction==="rtl",deactivateItem:e=>{e.tabIndex=-1},activateItem:e=>{e.tabIndex=0},isNavigableKey:e=>gs.has(e),isActivatable:e=>!e.disabled&&e.type!=="text"}),this.internals=this.attachInternals(),this.internals.role="list",this.addEventListener("keydown",this.listController.handleKeydown)}render(){return p` + */const bs=new Set(Object.values(Q));class Ga extends ${get items(){return this.listController.items}constructor(){super(),this.listController=new ja({isItem:e=>e.hasAttribute("md-list-item"),getPossibleItems:()=>this.slotItems,isRtl:()=>getComputedStyle(this).direction==="rtl",deactivateItem:e=>{e.tabIndex=-1},activateItem:e=>{e.tabIndex=0},isNavigableKey:e=>bs.has(e),isActivatable:e=>!e.disabled&&e.type!=="text"}),this.internals=this.attachInternals(),this.internals.role="list",this.addEventListener("keydown",this.listController.handleKeydown)}render(){return m` - `}activateNextItem(){return this.listController.activateNextItem()}activatePreviousItem(){return this.listController.activatePreviousItem()}}n([ee({flatten:!0})],Zi.prototype,"slotItems",void 0);/** + `}activateNextItem(){return this.listController.activateNextItem()}activatePreviousItem(){return this.listController.activatePreviousItem()}}l([oe({flatten:!0})],Ga.prototype,"slotItems",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const xs=x`:host{background:var(--md-list-container-color, var(--md-sys-color-surface, #fef7ff));color:unset;display:flex;flex-direction:column;outline:none;padding:8px 0;position:relative} + */const gs=_`:host{background:var(--md-list-container-color, var(--md-sys-color-surface, #fef7ff));color:unset;display:flex;flex-direction:column;outline:none;padding:8px 0;position:relative} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let so=class extends Zi{};so.styles=[xs];so=n([w("md-list")],so);/** + */let Nr=class extends Ga{};Nr.styles=[gs];Nr=l([S("md-list")],Nr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Ko extends C{constructor(){super(...arguments),this.multiline=!1}render(){return p` + */class ki extends ${constructor(){super(...arguments),this.multiline=!1}render(){return m`
@@ -850,20 +850,20 @@
- `}handleTextSlotChange(){let e=!1,t=0;for(const r of this.textSlots)if(_s(r)&&(t+=1),t>1){e=!0;break}this.multiline=e}}n([l({type:Boolean,reflect:!0})],Ko.prototype,"multiline",void 0);n([Ya(".text slot")],Ko.prototype,"textSlots",void 0);function _s(o){var e;for(const t of o.assignedNodes({flatten:!0})){const r=t.nodeType===Node.ELEMENT_NODE,i=t.nodeType===Node.TEXT_NODE&&((e=t.textContent)==null?void 0:e.match(/\S/));if(r||i)return!0}return!1}/** + `}handleTextSlotChange(){let e=!1,t=0;for(const o of this.textSlots)if(ys(o)&&(t+=1),t>1){e=!0;break}this.multiline=e}}l([c({type:Boolean,reflect:!0})],ki.prototype,"multiline",void 0);l([Xn(".text slot")],ki.prototype,"textSlots",void 0);function ys(r){var e;for(const t of r.assignedNodes({flatten:!0})){const o=t.nodeType===Node.ELEMENT_NODE,i=t.nodeType===Node.TEXT_NODE&&((e=t.textContent)==null?void 0:e.match(/\S/));if(o||i)return!0}return!1}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ws=x`:host{color:var(--md-sys-color-on-surface, #1d1b20);font-family:var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-body-large-size, 1rem);font-weight:var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400));line-height:var(--md-sys-typescale-body-large-line-height, 1.5rem);align-items:center;box-sizing:border-box;display:flex;gap:16px;min-height:56px;overflow:hidden;padding:12px 16px;position:relative;text-overflow:ellipsis}:host([multiline]){min-height:72px}[name=overline]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-label-small-size, 0.6875rem);font-weight:var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500));line-height:var(--md-sys-typescale-label-small-line-height, 1rem)}[name=supporting-text]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-body-medium-size, 0.875rem);font-weight:var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400));line-height:var(--md-sys-typescale-body-medium-line-height, 1.25rem)}[name=trailing-supporting-text]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-label-small-size, 0.6875rem);font-weight:var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500));line-height:var(--md-sys-typescale-label-small-line-height, 1rem)}[name=container]::slotted(*){inset:0;position:absolute}.default-slot{display:inline}.default-slot,.text ::slotted(*){overflow:hidden;text-overflow:ellipsis}.text{display:flex;flex:1;flex-direction:column;overflow:hidden} + */const xs=_`:host{color:var(--md-sys-color-on-surface, #1d1b20);font-family:var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-body-large-size, 1rem);font-weight:var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400));line-height:var(--md-sys-typescale-body-large-line-height, 1.5rem);align-items:center;box-sizing:border-box;display:flex;gap:16px;min-height:56px;overflow:hidden;padding:12px 16px;position:relative;text-overflow:ellipsis}:host([multiline]){min-height:72px}[name=overline]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-label-small-size, 0.6875rem);font-weight:var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500));line-height:var(--md-sys-typescale-label-small-line-height, 1rem)}[name=supporting-text]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-body-medium-size, 0.875rem);font-weight:var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400));line-height:var(--md-sys-typescale-body-medium-line-height, 1.25rem)}[name=trailing-supporting-text]{color:var(--md-sys-color-on-surface-variant, #49454f);font-family:var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto));font-size:var(--md-sys-typescale-label-small-size, 0.6875rem);font-weight:var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500));line-height:var(--md-sys-typescale-label-small-line-height, 1rem)}[name=container]::slotted(*){inset:0;position:absolute}.default-slot{display:inline}.default-slot,.text ::slotted(*){overflow:hidden;text-overflow:ellipsis}.text{display:flex;flex:1;flex-direction:column;overflow:hidden} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let lo=class extends Ko{};lo.styles=[ws];lo=n([w("md-item")],lo);/** + */let Ur=class extends ki{};Ur.styles=[xs];Ur=l([S("md-item")],Ur);/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ks=ne(C);class Ve extends ks{constructor(){super(...arguments),this.disabled=!1,this.type="text",this.isListItem=!0,this.href="",this.target=""}get isDisabled(){return this.disabled&&this.type!=="link"}willUpdate(e){this.href&&(this.type="link"),super.willUpdate(e)}render(){return this.renderListItem(p` + */const _s=se($);class Ye extends _s{constructor(){super(...arguments),this.disabled=!1,this.type="text",this.isListItem=!0,this.href="",this.target=""}get isDisabled(){return this.disabled&&this.type!=="link"}willUpdate(e){this.href&&(this.type="link"),super.willUpdate(e)}render(){return this.renderListItem(m`
${this.renderRipple()} ${this.renderFocusRing()} @@ -872,29 +872,29 @@ ${this.renderBody()} - `)}renderListItem(e){const t=this.type==="link";let r;switch(this.type){case"link":r=ae`a`;break;case"button":r=ae`button`;break;default:case"text":r=ae`li`;break}const i=this.type!=="text",a=t&&this.target?this.target:h;return zt` - <${r} + `)}renderListItem(e){const t=this.type==="link";let o;switch(this.type){case"link":o=le`a`;break;case"button":o=le`button`;break;default:case"text":o=le`li`;break}const i=this.type!=="text",a=t&&this.target?this.target:p;return Ht` + <${o} id="item" tabindex="${this.isDisabled||!i?-1:0}" ?disabled=${this.isDisabled} role="listitem" - aria-selected=${this.ariaSelected||h} - aria-checked=${this.ariaChecked||h} - aria-expanded=${this.ariaExpanded||h} - aria-haspopup=${this.ariaHasPopup||h} + aria-selected=${this.ariaSelected||p} + aria-checked=${this.ariaChecked||p} + aria-expanded=${this.ariaExpanded||p} + aria-haspopup=${this.ariaHasPopup||p} class="list-item ${U(this.getRenderClasses())}" - href=${this.href||h} + href=${this.href||p} target=${a} @focus=${this.onFocus} - >${e} - `}renderRipple(){return this.type==="text"?h:p` ${e} + `}renderRipple(){return this.type==="text"?p:m` `}renderFocusRing(){return this.type==="text"?h:p` `}renderFocusRing(){return this.type==="text"?p:m` `}onFocusRingVisibilityChanged(e){}getRenderClasses(){return{disabled:this.isDisabled}}renderBody(){return p` + inward>`}onFocusRingVisibilityChanged(e){}getRenderClasses(){return{disabled:this.isDisabled}}renderBody(){return m` @@ -902,46 +902,46 @@ - `}onFocus(){this.tabIndex===-1&&this.dispatchEvent(Xi())}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}Ve.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],Ve.prototype,"disabled",void 0);n([l({reflect:!0})],Ve.prototype,"type",void 0);n([l({type:Boolean,attribute:"md-list-item",reflect:!0})],Ve.prototype,"isListItem",void 0);n([l()],Ve.prototype,"href",void 0);n([l()],Ve.prototype,"target",void 0);n([E(".list-item")],Ve.prototype,"listItemRoot",void 0);/** + `}onFocus(){this.tabIndex===-1&&this.dispatchEvent(Wa())}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}Ye.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],Ye.prototype,"disabled",void 0);l([c({reflect:!0})],Ye.prototype,"type",void 0);l([c({type:Boolean,attribute:"md-list-item",reflect:!0})],Ye.prototype,"isListItem",void 0);l([c()],Ye.prototype,"href",void 0);l([c()],Ye.prototype,"target",void 0);l([B(".list-item")],Ye.prototype,"listItemRoot",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Cs=x`:host{display:flex;-webkit-tap-highlight-color:rgba(0,0,0,0);--md-ripple-hover-color: var(--md-list-item-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-list-item-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-list-item-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-list-item-pressed-state-layer-opacity, 0.12)}:host(:is([type=button]:not([disabled]),[type=link])){cursor:pointer}md-focus-ring{z-index:1;--md-focus-ring-shape: 8px}a,button,li{background:none;border:none;cursor:inherit;padding:0;margin:0;text-align:unset;text-decoration:none}.list-item{border-radius:inherit;display:flex;flex:1;max-width:inherit;min-width:inherit;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);width:100%}.list-item.interactive{cursor:pointer}.list-item.disabled{opacity:var(--md-list-item-disabled-opacity, 0.3);pointer-events:none}[slot=container]{pointer-events:none}md-ripple{border-radius:inherit}md-item{border-radius:inherit;flex:1;height:100%;color:var(--md-list-item-label-text-color, var(--md-sys-color-on-surface, #1d1b20));font-family:var(--md-list-item-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));line-height:var(--md-list-item-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));font-weight:var(--md-list-item-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));min-height:var(--md-list-item-one-line-container-height, 56px);padding-top:var(--md-list-item-top-space, 12px);padding-bottom:var(--md-list-item-bottom-space, 12px);padding-inline-start:var(--md-list-item-leading-space, 16px);padding-inline-end:var(--md-list-item-trailing-space, 16px)}md-item[multiline]{min-height:var(--md-list-item-two-line-container-height, 72px)}[slot=supporting-text]{color:var(--md-list-item-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-list-item-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-list-item-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));font-weight:var(--md-list-item-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)))}[slot=trailing-supporting-text]{color:var(--md-list-item-trailing-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-list-item-trailing-supporting-text-font, var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-trailing-supporting-text-size, var(--md-sys-typescale-label-small-size, 0.6875rem));line-height:var(--md-list-item-trailing-supporting-text-line-height, var(--md-sys-typescale-label-small-line-height, 1rem));font-weight:var(--md-list-item-trailing-supporting-text-weight, var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500)))}:is([slot=start],[slot=end])::slotted(*){fill:currentColor}[slot=start]{color:var(--md-list-item-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}[slot=end]{color:var(--md-list-item-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}@media(forced-colors: active){.disabled slot{color:GrayText}.list-item.disabled{color:GrayText;opacity:1}} + */const ws=_`:host{display:flex;-webkit-tap-highlight-color:rgba(0,0,0,0);--md-ripple-hover-color: var(--md-list-item-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-list-item-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-list-item-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-list-item-pressed-state-layer-opacity, 0.12)}:host(:is([type=button]:not([disabled]),[type=link])){cursor:pointer}md-focus-ring{z-index:1;--md-focus-ring-shape: 8px}a,button,li{background:none;border:none;cursor:inherit;padding:0;margin:0;text-align:unset;text-decoration:none}.list-item{border-radius:inherit;display:flex;flex:1;max-width:inherit;min-width:inherit;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0);width:100%}.list-item.interactive{cursor:pointer}.list-item.disabled{opacity:var(--md-list-item-disabled-opacity, 0.3);pointer-events:none}[slot=container]{pointer-events:none}md-ripple{border-radius:inherit}md-item{border-radius:inherit;flex:1;height:100%;color:var(--md-list-item-label-text-color, var(--md-sys-color-on-surface, #1d1b20));font-family:var(--md-list-item-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));line-height:var(--md-list-item-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));font-weight:var(--md-list-item-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));min-height:var(--md-list-item-one-line-container-height, 56px);padding-top:var(--md-list-item-top-space, 12px);padding-bottom:var(--md-list-item-bottom-space, 12px);padding-inline-start:var(--md-list-item-leading-space, 16px);padding-inline-end:var(--md-list-item-trailing-space, 16px)}md-item[multiline]{min-height:var(--md-list-item-two-line-container-height, 72px)}[slot=supporting-text]{color:var(--md-list-item-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-list-item-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-list-item-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));font-weight:var(--md-list-item-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)))}[slot=trailing-supporting-text]{color:var(--md-list-item-trailing-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-list-item-trailing-supporting-text-font, var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-list-item-trailing-supporting-text-size, var(--md-sys-typescale-label-small-size, 0.6875rem));line-height:var(--md-list-item-trailing-supporting-text-line-height, var(--md-sys-typescale-label-small-line-height, 1rem));font-weight:var(--md-list-item-trailing-supporting-text-weight, var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500)))}:is([slot=start],[slot=end])::slotted(*){fill:currentColor}[slot=start]{color:var(--md-list-item-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}[slot=end]{color:var(--md-list-item-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}@media(forced-colors: active){.disabled slot{color:GrayText}.list-item.disabled{color:GrayText;opacity:1}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let co=class extends Ve{};co.styles=[Cs];co=n([w("md-list-item")],co);/** + */let qr=class extends Ye{};qr.styles=[ws];qr=l([S("md-list-item")],qr);/** * @license * Copyright 2018 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const Qi="important",Es=" !"+Qi,tt=Uo(class extends Ho{constructor(o){var e;if(super(o),o.type!==De.ATTRIBUTE||o.name!=="style"||((e=o.strings)==null?void 0:e.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(o){return Object.keys(o).reduce((e,t)=>{const r=o[t];return r==null?e:e+`${t=t.includes("-")?t:t.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${r};`},"")}update(o,[e]){const{style:t}=o.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(const r of this.ft)e[r]==null&&(this.ft.delete(r),r.includes("-")?t.removeProperty(r):t[r]=null);for(const r in e){const i=e[r];if(i!=null){this.ft.add(r);const a=typeof i=="string"&&i.endsWith(Es);r.includes("-")||a?t.setProperty(r,a?i.slice(0,-11):i,a?Qi:""):t[r]=i}}return ye}});/** + */const Xa="important",ks=" !"+Xa,at=gi(class extends yi{constructor(r){var e;if(super(r),r.type!==Ue.ATTRIBUTE||r.name!=="style"||((e=r.strings)==null?void 0:e.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(r){return Object.keys(r).reduce((e,t)=>{const o=r[t];return o==null?e:e+`${t=t.includes("-")?t:t.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${o};`},"")}update(r,[e]){const{style:t}=r.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(const o of this.ft)e[o]==null&&(this.ft.delete(o),o.includes("-")?t.removeProperty(o):t[o]=null);for(const o in e){const i=e[o];if(i!=null){this.ft.add(o);const a=typeof i=="string"&&i.endsWith(ks);o.includes("-")||a?t.setProperty(o,a?i.slice(0,-11):i,a?Xa:""):t[o]=i}}return ge}});/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Is(o,e){return new CustomEvent("close-menu",{bubbles:!0,composed:!0,detail:{initiator:o,reason:e,itemPath:[o]}})}const ui=Is;function Ts(){return new Event("deactivate-typeahead",{bubbles:!0,composed:!0})}function Sr(){return new Event("activate-typeahead",{bubbles:!0,composed:!0})}const Me={UP:"ArrowUp",DOWN:"ArrowDown",RIGHT:"ArrowRight",LEFT:"ArrowLeft"},lt={SPACE:"Space",ENTER:"Enter"},ho={CLICK_SELECTION:"click-selection",KEYDOWN:"keydown"},po={ESCAPE:"Escape",SPACE:lt.SPACE,ENTER:lt.ENTER};function Ji(o){return Object.values(po).some(e=>e===o)}function Ss(o){return Object.values(lt).some(e=>e===o)}function uo(o,e){const t=new Event("md-contains",{bubbles:!0,composed:!0});let r=[];const i=s=>{r=s.composedPath()};return e.addEventListener("md-contains",i),o.dispatchEvent(t),e.removeEventListener("md-contains",i),r.length>0}const we={NONE:"none",LIST_ROOT:"list-root",FIRST_ITEM:"first-item",LAST_ITEM:"last-item"};/** + */function Cs(r,e){return new CustomEvent("close-menu",{bubbles:!0,composed:!0,detail:{initiator:r,reason:e,itemPath:[r]}})}const ta=Cs;function Es(){return new Event("deactivate-typeahead",{bubbles:!0,composed:!0})}function ar(){return new Event("activate-typeahead",{bubbles:!0,composed:!0})}const Ne={UP:"ArrowUp",DOWN:"ArrowDown",RIGHT:"ArrowRight",LEFT:"ArrowLeft"},ft={SPACE:"Space",ENTER:"Enter"},Hr={CLICK_SELECTION:"click-selection",KEYDOWN:"keydown"},Vr={ESCAPE:"Escape",SPACE:ft.SPACE,ENTER:ft.ENTER};function Ya(r){return Object.values(Vr).some(e=>e===r)}function Is(r){return Object.values(ft).some(e=>e===r)}function Kr(r,e){const t=new Event("md-contains",{bubbles:!0,composed:!0});let o=[];const i=n=>{o=n.composedPath()};return e.addEventListener("md-contains",i),r.dispatchEvent(t),e.removeEventListener("md-contains",i),o.length>0}const _e={NONE:"none",LIST_ROOT:"list-root",FIRST_ITEM:"first-item",LAST_ITEM:"last-item"};/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ir={END_START:"end-start",END_END:"end-end",START_START:"start-start",START_END:"start-end"};class As{constructor(e,t){this.host=e,this.getProperties=t,this.surfaceStylesInternal={display:"none"},this.lastValues={isOpen:!1},this.host.addController(this)}get surfaceStyles(){return this.surfaceStylesInternal}async position(){const{surfaceEl:e,anchorEl:t,anchorCorner:r,surfaceCorner:i,positioning:a,xOffset:s,yOffset:d,disableBlockFlip:c,disableInlineFlip:f,repositionStrategy:v}=this.getProperties(),u=r.toLowerCase().trim(),m=i.toLowerCase().trim();if(!e||!t)return;const g=window.innerWidth,S=window.innerHeight,k=document.createElement("div");k.style.opacity="0",k.style.position="fixed",k.style.display="block",k.style.inset="0",document.body.appendChild(k);const L=k.getBoundingClientRect();k.remove();const B=window.innerHeight-L.bottom,T=window.innerWidth-L.right;this.surfaceStylesInternal={display:"block",opacity:"0"},this.host.requestUpdate(),await this.host.updateComplete,e.popover&&e.isConnected&&e.showPopover();const F=e.getSurfacePositionClientRect?e.getSurfacePositionClientRect():e.getBoundingClientRect(),M=t.getSurfacePositionClientRect?t.getSurfacePositionClientRect():t.getBoundingClientRect(),[D,te]=m.split("-"),[re,se]=u.split("-"),pe=getComputedStyle(e).direction==="ltr";let{blockInset:ue,blockOutOfBoundsCorrection:Z,surfaceBlockProperty:je}=this.calculateBlock({surfaceRect:F,anchorRect:M,anchorBlock:re,surfaceBlock:D,yOffset:d,positioning:a,windowInnerHeight:S,blockScrollbarHeight:B});if(Z&&!c){const q=D==="start"?"end":"start",xe=re==="start"?"end":"start",le=this.calculateBlock({surfaceRect:F,anchorRect:M,anchorBlock:xe,surfaceBlock:q,yOffset:d,positioning:a,windowInnerHeight:S,blockScrollbarHeight:B});Z>le.blockOutOfBoundsCorrection&&(ue=le.blockInset,Z=le.blockOutOfBoundsCorrection,je=le.surfaceBlockProperty)}let{inlineInset:Ee,inlineOutOfBoundsCorrection:Le,surfaceInlineProperty:Q}=this.calculateInline({surfaceRect:F,anchorRect:M,anchorInline:se,surfaceInline:te,xOffset:s,positioning:a,isLTR:pe,windowInnerWidth:g,inlineScrollbarWidth:T});if(Le&&!f){const q=te==="start"?"end":"start",xe=se==="start"?"end":"start",le=this.calculateInline({surfaceRect:F,anchorRect:M,anchorInline:xe,surfaceInline:q,xOffset:s,positioning:a,isLTR:pe,windowInnerWidth:g,inlineScrollbarWidth:T});Math.abs(Le)>Math.abs(le.inlineOutOfBoundsCorrection)&&(Ee=le.inlineInset,Le=le.inlineOutOfBoundsCorrection,Q=le.surfaceInlineProperty)}v==="move"&&(ue=ue-Z,Ee=Ee-Le),this.surfaceStylesInternal={display:"block",opacity:"1",[je]:`${ue}px`,[Q]:`${Ee}px`},v==="resize"&&(Z&&(this.surfaceStylesInternal.height=`${F.height-Z}px`),Le&&(this.surfaceStylesInternal.width=`${F.width-Le}px`)),this.host.requestUpdate()}calculateBlock(e){const{surfaceRect:t,anchorRect:r,anchorBlock:i,surfaceBlock:a,yOffset:s,positioning:d,windowInnerHeight:c,blockScrollbarHeight:f}=e,v=d==="fixed"||d==="document"?1:0,u=d==="document"?1:0,m=a==="start"?1:0,g=a==="end"?1:0,k=(i!==a?1:0)*r.height+s,L=m*r.top+g*(c-r.bottom-f),B=m*window.scrollY-g*window.scrollY,T=Math.abs(Math.min(0,c-L-k-t.height));return{blockInset:v*L+u*B+k,blockOutOfBoundsCorrection:T,surfaceBlockProperty:a==="start"?"inset-block-start":"inset-block-end"}}calculateInline(e){const{isLTR:t,surfaceInline:r,anchorInline:i,anchorRect:a,surfaceRect:s,xOffset:d,positioning:c,windowInnerWidth:f,inlineScrollbarWidth:v}=e,u=c==="fixed"||c==="document"?1:0,m=c==="document"?1:0,g=t?1:0,S=t?0:1,k=r==="start"?1:0,L=r==="end"?1:0,T=(i!==r?1:0)*a.width+d,F=k*a.left+L*(f-a.right-v),M=k*(f-a.right-v)+L*a.left,D=g*F+S*M,te=k*window.scrollX-L*window.scrollX,re=L*window.scrollX-k*window.scrollX,se=g*te+S*re,pe=Math.abs(Math.min(0,f-D-T-s.width)),ue=u*D+T+m*se;let Z=r==="start"?"inset-inline-start":"inset-inline-end";return(c==="document"||c==="fixed")&&(r==="start"&&t||r==="end"&&!t?Z="left":Z="right"),{inlineInset:ue,inlineOutOfBoundsCorrection:pe,surfaceInlineProperty:Z}}hostUpdate(){this.onUpdate()}hostUpdated(){this.onUpdate()}async onUpdate(){const e=this.getProperties();let t=!1;for(const[s,d]of Object.entries(e))if(t=t||d!==this.lastValues[s],t)break;const r=this.lastValues.isOpen!==e.isOpen,i=!!e.anchorEl,a=!!e.surfaceEl;t&&i&&a&&(this.lastValues.isOpen=e.isOpen,e.isOpen?(this.lastValues=e,await this.position(),e.onOpen()):r&&(await e.beforeClose(),this.close(),e.onClose()))}close(){this.surfaceStylesInternal={display:"none"},this.host.requestUpdate();const e=this.getProperties().surfaceEl;e!=null&&e.popover&&(e!=null&&e.isConnected)&&e.hidePopover()}}/** + */const Co={END_START:"end-start",END_END:"end-end",START_START:"start-start",START_END:"start-end"};class Ss{constructor(e,t){this.host=e,this.getProperties=t,this.surfaceStylesInternal={display:"none"},this.lastValues={isOpen:!1},this.host.addController(this)}get surfaceStyles(){return this.surfaceStylesInternal}async position(){const{surfaceEl:e,anchorEl:t,anchorCorner:o,surfaceCorner:i,positioning:a,xOffset:n,yOffset:s,disableBlockFlip:d,disableInlineFlip:h,repositionStrategy:v}=this.getProperties(),u=o.toLowerCase().trim(),f=i.toLowerCase().trim();if(!e||!t)return;const y=window.innerWidth,b=window.innerHeight,g=document.createElement("div");g.style.opacity="0",g.style.position="fixed",g.style.display="block",g.style.inset="0",document.body.appendChild(g);const k=g.getBoundingClientRect();g.remove();const E=window.innerHeight-k.bottom,I=window.innerWidth-k.right;this.surfaceStylesInternal={display:"block",opacity:"0"},this.host.requestUpdate(),await this.host.updateComplete,e.popover&&e.isConnected&&e.showPopover();const O=e.getSurfacePositionClientRect?e.getSurfacePositionClientRect():e.getBoundingClientRect(),P=t.getSurfacePositionClientRect?t.getSurfacePositionClientRect():t.getBoundingClientRect(),[D,j]=f.split("-"),[H,re]=u.split("-"),xe=getComputedStyle(e).direction==="ltr";let{blockInset:C,blockOutOfBoundsCorrection:L,surfaceBlockProperty:ue}=this.calculateBlock({surfaceRect:O,anchorRect:P,anchorBlock:H,surfaceBlock:D,yOffset:s,positioning:a,windowInnerHeight:b,blockScrollbarHeight:E});if(L&&!d){const Ee=D==="start"?"end":"start",de=H==="start"?"end":"start",Z=this.calculateBlock({surfaceRect:O,anchorRect:P,anchorBlock:de,surfaceBlock:Ee,yOffset:s,positioning:a,windowInnerHeight:b,blockScrollbarHeight:E});L>Z.blockOutOfBoundsCorrection&&(C=Z.blockInset,L=Z.blockOutOfBoundsCorrection,ue=Z.surfaceBlockProperty)}let{inlineInset:A,inlineOutOfBoundsCorrection:V,surfaceInlineProperty:Y}=this.calculateInline({surfaceRect:O,anchorRect:P,anchorInline:re,surfaceInline:j,xOffset:n,positioning:a,isLTR:xe,windowInnerWidth:y,inlineScrollbarWidth:I});if(V&&!h){const Ee=j==="start"?"end":"start",de=re==="start"?"end":"start",Z=this.calculateInline({surfaceRect:O,anchorRect:P,anchorInline:de,surfaceInline:Ee,xOffset:n,positioning:a,isLTR:xe,windowInnerWidth:y,inlineScrollbarWidth:I});Math.abs(V)>Math.abs(Z.inlineOutOfBoundsCorrection)&&(A=Z.inlineInset,V=Z.inlineOutOfBoundsCorrection,Y=Z.surfaceInlineProperty)}v==="move"&&(C=C-L,A=A-V),this.surfaceStylesInternal={display:"block",opacity:"1",[ue]:`${C}px`,[Y]:`${A}px`},v==="resize"&&(L&&(this.surfaceStylesInternal.height=`${O.height-L}px`),V&&(this.surfaceStylesInternal.width=`${O.width-V}px`)),this.host.requestUpdate()}calculateBlock(e){const{surfaceRect:t,anchorRect:o,anchorBlock:i,surfaceBlock:a,yOffset:n,positioning:s,windowInnerHeight:d,blockScrollbarHeight:h}=e,v=s==="fixed"||s==="document"?1:0,u=s==="document"?1:0,f=a==="start"?1:0,y=a==="end"?1:0,g=(i!==a?1:0)*o.height+n,k=f*o.top+y*(d-o.bottom-h),E=f*window.scrollY-y*window.scrollY,I=Math.abs(Math.min(0,d-k-g-t.height));return{blockInset:v*k+u*E+g,blockOutOfBoundsCorrection:I,surfaceBlockProperty:a==="start"?"inset-block-start":"inset-block-end"}}calculateInline(e){const{isLTR:t,surfaceInline:o,anchorInline:i,anchorRect:a,surfaceRect:n,xOffset:s,positioning:d,windowInnerWidth:h,inlineScrollbarWidth:v}=e,u=d==="fixed"||d==="document"?1:0,f=d==="document"?1:0,y=t?1:0,b=t?0:1,g=o==="start"?1:0,k=o==="end"?1:0,I=(i!==o?1:0)*a.width+s,O=g*a.left+k*(h-a.right-v),P=g*(h-a.right-v)+k*a.left,D=y*O+b*P,j=g*window.scrollX-k*window.scrollX,H=k*window.scrollX-g*window.scrollX,re=y*j+b*H,xe=Math.abs(Math.min(0,h-D-I-n.width)),C=u*D+I+f*re;let L=o==="start"?"inset-inline-start":"inset-inline-end";return(d==="document"||d==="fixed")&&(o==="start"&&t||o==="end"&&!t?L="left":L="right"),{inlineInset:C,inlineOutOfBoundsCorrection:xe,surfaceInlineProperty:L}}hostUpdate(){this.onUpdate()}hostUpdated(){this.onUpdate()}async onUpdate(){const e=this.getProperties();let t=!1;for(const[n,s]of Object.entries(e))if(t=t||s!==this.lastValues[n],t)break;const o=this.lastValues.isOpen!==e.isOpen,i=!!e.anchorEl,a=!!e.surfaceEl;t&&i&&a&&(this.lastValues.isOpen=e.isOpen,e.isOpen?(this.lastValues=e,await this.position(),e.onOpen()):o&&(await e.beforeClose(),this.close(),e.onClose()))}close(){this.surfaceStylesInternal={display:"none"},this.host.requestUpdate();const e=this.getProperties().surfaceEl;e!=null&&e.popover&&(e!=null&&e.isConnected)&&e.hidePopover()}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const me={INDEX:0,ITEM:1,TEXT:2};class $s{constructor(e){this.getProperties=e,this.typeaheadRecords=[],this.typaheadBuffer="",this.cancelTypeaheadTimeout=0,this.isTypingAhead=!1,this.lastActiveRecord=null,this.onKeydown=t=>{this.isTypingAhead?this.typeahead(t):this.beginTypeahead(t)},this.endTypeahead=()=>{this.isTypingAhead=!1,this.typaheadBuffer="",this.typeaheadRecords=[]}}get items(){return this.getProperties().getItems()}get active(){return this.getProperties().active}beginTypeahead(e){this.active&&(e.code==="Space"||e.code==="Enter"||e.code.startsWith("Arrow")||e.code==="Escape"||(this.isTypingAhead=!0,this.typeaheadRecords=this.items.map((t,r)=>[r,t,t.typeaheadText.trim().toLowerCase()]),this.lastActiveRecord=this.typeaheadRecords.find(t=>t[me.ITEM].tabIndex===0)??null,this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.typeahead(e)))}typeahead(e){if(e.defaultPrevented)return;if(clearTimeout(this.cancelTypeaheadTimeout),e.code==="Enter"||e.code.startsWith("Arrow")||e.code==="Escape"){this.endTypeahead(),this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1);return}e.code==="Space"&&e.preventDefault(),this.cancelTypeaheadTimeout=setTimeout(this.endTypeahead,this.getProperties().typeaheadBufferTime),this.typaheadBuffer+=e.key.toLowerCase();const t=this.lastActiveRecord?this.lastActiveRecord[me.INDEX]:-1,r=this.typeaheadRecords.length,i=c=>(c[me.INDEX]+r-t)%r,a=this.typeaheadRecords.filter(c=>!c[me.ITEM].disabled&&c[me.TEXT].startsWith(this.typaheadBuffer)).sort((c,f)=>i(c)-i(f));if(a.length===0){clearTimeout(this.cancelTypeaheadTimeout),this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.endTypeahead();return}const s=this.typaheadBuffer.length===1;let d;this.lastActiveRecord===a[0]&&s?d=a[1]??a[0]:d=a[0],this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.lastActiveRecord=d,d[me.ITEM].tabIndex=0,d[me.ITEM].focus()}}/** + */const me={INDEX:0,ITEM:1,TEXT:2};class As{constructor(e){this.getProperties=e,this.typeaheadRecords=[],this.typaheadBuffer="",this.cancelTypeaheadTimeout=0,this.isTypingAhead=!1,this.lastActiveRecord=null,this.onKeydown=t=>{this.isTypingAhead?this.typeahead(t):this.beginTypeahead(t)},this.endTypeahead=()=>{this.isTypingAhead=!1,this.typaheadBuffer="",this.typeaheadRecords=[]}}get items(){return this.getProperties().getItems()}get active(){return this.getProperties().active}beginTypeahead(e){this.active&&(e.code==="Space"||e.code==="Enter"||e.code.startsWith("Arrow")||e.code==="Escape"||(this.isTypingAhead=!0,this.typeaheadRecords=this.items.map((t,o)=>[o,t,t.typeaheadText.trim().toLowerCase()]),this.lastActiveRecord=this.typeaheadRecords.find(t=>t[me.ITEM].tabIndex===0)??null,this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.typeahead(e)))}typeahead(e){if(e.defaultPrevented)return;if(clearTimeout(this.cancelTypeaheadTimeout),e.code==="Enter"||e.code.startsWith("Arrow")||e.code==="Escape"){this.endTypeahead(),this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1);return}e.code==="Space"&&e.preventDefault(),this.cancelTypeaheadTimeout=setTimeout(this.endTypeahead,this.getProperties().typeaheadBufferTime),this.typaheadBuffer+=e.key.toLowerCase();const t=this.lastActiveRecord?this.lastActiveRecord[me.INDEX]:-1,o=this.typeaheadRecords.length,i=d=>(d[me.INDEX]+o-t)%o,a=this.typeaheadRecords.filter(d=>!d[me.ITEM].disabled&&d[me.TEXT].startsWith(this.typaheadBuffer)).sort((d,h)=>i(d)-i(h));if(a.length===0){clearTimeout(this.cancelTypeaheadTimeout),this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.endTypeahead();return}const n=this.typaheadBuffer.length===1;let s;this.lastActiveRecord===a[0]&&n?s=a[1]??a[0]:s=a[0],this.lastActiveRecord&&(this.lastActiveRecord[me.ITEM].tabIndex=-1),this.lastActiveRecord=s,s[me.ITEM].tabIndex=0,s[me.ITEM].focus()}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ea=200,ta=new Set([X.ArrowDown,X.ArrowUp,X.Home,X.End]),Ls=new Set([X.ArrowLeft,X.ArrowRight,...ta]);function zs(o=document){var t;let e=o.activeElement;for(;e&&((t=e==null?void 0:e.shadowRoot)!=null&&t.activeElement);)e=e.shadowRoot.activeElement;return e}class V extends C{get openDirection(){return this.menuCorner.split("-")[0]==="start"?"DOWN":"UP"}get anchorElement(){return this.anchor?this.getRootNode().querySelector(`#${this.anchor}`):this.currentAnchorElement}set anchorElement(e){this.currentAnchorElement=e,this.requestUpdate("anchorElement")}constructor(){super(),this.anchor="",this.positioning="absolute",this.quick=!1,this.hasOverflow=!1,this.open=!1,this.xOffset=0,this.yOffset=0,this.noHorizontalFlip=!1,this.noVerticalFlip=!1,this.typeaheadDelay=ea,this.anchorCorner=ir.END_START,this.menuCorner=ir.START_START,this.stayOpenOnOutsideClick=!1,this.stayOpenOnFocusout=!1,this.skipRestoreFocus=!1,this.defaultFocus=we.FIRST_ITEM,this.noNavigationWrap=!1,this.typeaheadActive=!0,this.isSubmenu=!1,this.pointerPath=[],this.isRepositioning=!1,this.openCloseAnimationSignal=pn(),this.listController=new Yi({isItem:e=>e.hasAttribute("md-menu-item"),getPossibleItems:()=>this.slotItems,isRtl:()=>getComputedStyle(this).direction==="rtl",deactivateItem:e=>{e.selected=!1,e.tabIndex=-1},activateItem:e=>{e.selected=!0,e.tabIndex=0},isNavigableKey:e=>{if(!this.isSubmenu)return Ls.has(e);const r=getComputedStyle(this).direction==="rtl"?X.ArrowLeft:X.ArrowRight;return e===r?!0:ta.has(e)},wrapNavigation:()=>!this.noNavigationWrap}),this.lastFocusedElement=null,this.typeaheadController=new $s(()=>({getItems:()=>this.items,typeaheadBufferTime:this.typeaheadDelay,active:this.typeaheadActive})),this.currentAnchorElement=null,this.internals=this.attachInternals(),this.menuPositionController=new As(this,()=>({anchorCorner:this.anchorCorner,surfaceCorner:this.menuCorner,surfaceEl:this.surfaceEl,anchorEl:this.anchorElement,positioning:this.positioning==="popover"?"document":this.positioning,isOpen:this.open,xOffset:this.xOffset,yOffset:this.yOffset,disableBlockFlip:this.noVerticalFlip,disableInlineFlip:this.noHorizontalFlip,onOpen:this.onOpened,beforeClose:this.beforeClose,onClose:this.onClosed,repositionStrategy:this.hasOverflow&&this.positioning!=="popover"?"move":"resize"})),this.onWindowResize=()=>{this.isRepositioning||this.positioning!=="document"&&this.positioning!=="fixed"&&this.positioning!=="popover"||(this.isRepositioning=!0,this.reposition(),this.isRepositioning=!1)},this.handleFocusout=async e=>{const t=this.anchorElement;if(this.stayOpenOnFocusout||!this.open||this.pointerPath.includes(t))return;if(e.relatedTarget){if(uo(e.relatedTarget,this)||this.pointerPath.length!==0&&uo(e.relatedTarget,t))return}else if(this.pointerPath.includes(this))return;const r=this.skipRestoreFocus;this.skipRestoreFocus=!0,this.close(),await this.updateComplete,this.skipRestoreFocus=r},this.onOpened=async()=>{this.lastFocusedElement=zs();const e=this.items,t=st(e);t&&this.defaultFocus!==we.NONE&&(t.item.tabIndex=-1);let r=!this.quick;switch(this.quick?this.dispatchEvent(new Event("opening")):r=!!await this.animateOpen(),this.defaultFocus){case we.FIRST_ITEM:const i=fr(e);i&&(i.tabIndex=0,i.focus(),await i.updateComplete);break;case we.LAST_ITEM:const a=Gi(e);a&&(a.tabIndex=0,a.focus(),await a.updateComplete);break;case we.LIST_ROOT:this.focus();break;default:case we.NONE:break}r||this.dispatchEvent(new Event("opened"))},this.beforeClose=async()=>{var e,t;this.open=!1,this.skipRestoreFocus||(t=(e=this.lastFocusedElement)==null?void 0:e.focus)==null||t.call(e),this.quick||await this.animateClose()},this.onClosed=()=>{this.quick&&(this.dispatchEvent(new Event("closing")),this.dispatchEvent(new Event("closed")))},this.onWindowPointerdown=e=>{this.pointerPath=e.composedPath()},this.onDocumentClick=e=>{if(!this.open)return;const t=e.composedPath();!this.stayOpenOnOutsideClick&&!t.includes(this)&&!t.includes(this.anchorElement)&&(this.open=!1)},this.internals.role="menu",this.addEventListener("keydown",this.handleKeydown),this.addEventListener("keydown",this.captureKeydown,{capture:!0}),this.addEventListener("focusout",this.handleFocusout)}get items(){return this.listController.items}willUpdate(e){if(e.has("open")){if(this.open){this.removeAttribute("aria-hidden");return}this.setAttribute("aria-hidden","true")}}update(e){e.has("open")&&(this.open?this.setUpGlobalEventListeners():this.cleanUpGlobalEventListeners()),e.has("positioning")&&this.positioning==="popover"&&!this.showPopover&&(this.positioning="fixed"),super.update(e)}connectedCallback(){super.connectedCallback(),this.open&&this.setUpGlobalEventListeners()}disconnectedCallback(){super.disconnectedCallback(),this.cleanUpGlobalEventListeners()}getBoundingClientRect(){return this.surfaceEl?this.surfaceEl.getBoundingClientRect():super.getBoundingClientRect()}getClientRects(){return this.surfaceEl?this.surfaceEl.getClientRects():super.getClientRects()}render(){return this.renderSurface()}renderSurface(){return p` + */const Za=200,Qa=new Set([Q.ArrowDown,Q.ArrowUp,Q.Home,Q.End]),Ts=new Set([Q.ArrowLeft,Q.ArrowRight,...Qa]);function $s(r=document){var t;let e=r.activeElement;for(;e&&((t=e==null?void 0:e.shadowRoot)!=null&&t.activeElement);)e=e.shadowRoot.activeElement;return e}class K extends ${get openDirection(){return this.menuCorner.split("-")[0]==="start"?"DOWN":"UP"}get anchorElement(){return this.anchor?this.getRootNode().querySelector(`#${this.anchor}`):this.currentAnchorElement}set anchorElement(e){this.currentAnchorElement=e,this.requestUpdate("anchorElement")}constructor(){super(),this.anchor="",this.positioning="absolute",this.quick=!1,this.hasOverflow=!1,this.open=!1,this.xOffset=0,this.yOffset=0,this.noHorizontalFlip=!1,this.noVerticalFlip=!1,this.typeaheadDelay=Za,this.anchorCorner=Co.END_START,this.menuCorner=Co.START_START,this.stayOpenOnOutsideClick=!1,this.stayOpenOnFocusout=!1,this.skipRestoreFocus=!1,this.defaultFocus=_e.FIRST_ITEM,this.noNavigationWrap=!1,this.typeaheadActive=!0,this.isSubmenu=!1,this.pointerPath=[],this.isRepositioning=!1,this.openCloseAnimationSignal=cl(),this.listController=new ja({isItem:e=>e.hasAttribute("md-menu-item"),getPossibleItems:()=>this.slotItems,isRtl:()=>getComputedStyle(this).direction==="rtl",deactivateItem:e=>{e.selected=!1,e.tabIndex=-1},activateItem:e=>{e.selected=!0,e.tabIndex=0},isNavigableKey:e=>{if(!this.isSubmenu)return Ts.has(e);const o=getComputedStyle(this).direction==="rtl"?Q.ArrowLeft:Q.ArrowRight;return e===o?!0:Qa.has(e)},wrapNavigation:()=>!this.noNavigationWrap}),this.lastFocusedElement=null,this.typeaheadController=new As(()=>({getItems:()=>this.items,typeaheadBufferTime:this.typeaheadDelay,active:this.typeaheadActive})),this.currentAnchorElement=null,this.internals=this.attachInternals(),this.menuPositionController=new Ss(this,()=>({anchorCorner:this.anchorCorner,surfaceCorner:this.menuCorner,surfaceEl:this.surfaceEl,anchorEl:this.anchorElement,positioning:this.positioning==="popover"?"document":this.positioning,isOpen:this.open,xOffset:this.xOffset,yOffset:this.yOffset,disableBlockFlip:this.noVerticalFlip,disableInlineFlip:this.noHorizontalFlip,onOpen:this.onOpened,beforeClose:this.beforeClose,onClose:this.onClosed,repositionStrategy:this.hasOverflow&&this.positioning!=="popover"?"move":"resize"})),this.onWindowResize=()=>{this.isRepositioning||this.positioning!=="document"&&this.positioning!=="fixed"&&this.positioning!=="popover"||(this.isRepositioning=!0,this.reposition(),this.isRepositioning=!1)},this.handleFocusout=async e=>{const t=this.anchorElement;if(this.stayOpenOnFocusout||!this.open||this.pointerPath.includes(t))return;if(e.relatedTarget){if(Kr(e.relatedTarget,this)||this.pointerPath.length!==0&&Kr(e.relatedTarget,t))return}else if(this.pointerPath.includes(this))return;const o=this.skipRestoreFocus;this.skipRestoreFocus=!0,this.close(),await this.updateComplete,this.skipRestoreFocus=o},this.onOpened=async()=>{this.lastFocusedElement=$s();const e=this.items,t=mt(e);t&&this.defaultFocus!==_e.NONE&&(t.item.tabIndex=-1);let o=!this.quick;switch(this.quick?this.dispatchEvent(new Event("opening")):o=!!await this.animateOpen(),this.defaultFocus){case _e.FIRST_ITEM:const i=Mo(e);i&&(i.tabIndex=0,i.focus(),await i.updateComplete);break;case _e.LAST_ITEM:const a=Ka(e);a&&(a.tabIndex=0,a.focus(),await a.updateComplete);break;case _e.LIST_ROOT:this.focus();break;default:case _e.NONE:break}o||this.dispatchEvent(new Event("opened"))},this.beforeClose=async()=>{var e,t;this.open=!1,this.skipRestoreFocus||(t=(e=this.lastFocusedElement)==null?void 0:e.focus)==null||t.call(e),this.quick||await this.animateClose()},this.onClosed=()=>{this.quick&&(this.dispatchEvent(new Event("closing")),this.dispatchEvent(new Event("closed")))},this.onWindowPointerdown=e=>{this.pointerPath=e.composedPath()},this.onDocumentClick=e=>{if(!this.open)return;const t=e.composedPath();!this.stayOpenOnOutsideClick&&!t.includes(this)&&!t.includes(this.anchorElement)&&(this.open=!1)},this.internals.role="menu",this.addEventListener("keydown",this.handleKeydown),this.addEventListener("keydown",this.captureKeydown,{capture:!0}),this.addEventListener("focusout",this.handleFocusout)}get items(){return this.listController.items}willUpdate(e){if(e.has("open")){if(this.open){this.removeAttribute("aria-hidden");return}this.setAttribute("aria-hidden","true")}}update(e){e.has("open")&&(this.open?this.setUpGlobalEventListeners():this.cleanUpGlobalEventListeners()),e.has("positioning")&&this.positioning==="popover"&&!this.showPopover&&(this.positioning="fixed"),super.update(e)}connectedCallback(){super.connectedCallback(),this.open&&this.setUpGlobalEventListeners()}disconnectedCallback(){super.disconnectedCallback(),this.cleanUpGlobalEventListeners()}getBoundingClientRect(){return this.surfaceEl?this.surfaceEl.getBoundingClientRect():super.getBoundingClientRect()}getClientRects(){return this.surfaceEl?this.surfaceEl.getClientRects():super.getClientRects()}render(){return this.renderSurface()}renderSurface(){return m` - `}renderMenuItems(){return p``}renderElevation(){return p``}getSurfaceClasses(){return{open:this.open,fixed:this.positioning==="fixed","has-overflow":this.hasOverflow}}captureKeydown(e){e.target===this&&!e.defaultPrevented&&Ji(e.code)&&(e.preventDefault(),this.close()),this.typeaheadController.onKeydown(e)}async animateOpen(){const e=this.surfaceEl,t=this.slotEl;if(!e||!t)return!0;const r=this.openDirection;this.dispatchEvent(new Event("opening")),e.classList.toggle("animating",!0);const i=this.openCloseAnimationSignal.start(),a=e.offsetHeight,s=r==="UP",d=this.items,c=500,f=50,v=250,u=(c-v)/d.length,m=e.animate([{height:"0px"},{height:`${a}px`}],{duration:c,easing:ke.EMPHASIZED}),g=t.animate([{transform:s?`translateY(-${a}px)`:""},{transform:""}],{duration:c,easing:ke.EMPHASIZED}),S=e.animate([{opacity:0},{opacity:1}],f),k=[];for(let T=0;T{M.classList.toggle("md-menu-hidden",!1)}),k.push([M,D])}let L=T=>{};const B=new Promise(T=>{L=T});return i.addEventListener("abort",()=>{m.cancel(),g.cancel(),S.cancel(),k.forEach(([T,F])=>{T.classList.toggle("md-menu-hidden",!1),F.cancel()}),L(!0)}),m.addEventListener("finish",()=>{e.classList.toggle("animating",!1),this.openCloseAnimationSignal.finish(),L(!1)}),await B}animateClose(){let e;const t=new Promise(D=>{e=D}),r=this.surfaceEl,i=this.slotEl;if(!r||!i)return e(!1),t;const s=this.openDirection==="UP";this.dispatchEvent(new Event("closing")),r.classList.toggle("animating",!0);const d=this.openCloseAnimationSignal.start(),c=r.offsetHeight,f=this.items,v=150,u=50,m=v-u,g=50,S=50,k=.35,L=(v-S-g)/f.length,B=r.animate([{height:`${c}px`},{height:`${c*k}px`}],{duration:v,easing:ke.EMPHASIZED_ACCELERATE}),T=i.animate([{transform:""},{transform:s?`translateY(-${c*(1-k)}px)`:""}],{duration:v,easing:ke.EMPHASIZED_ACCELERATE}),F=r.animate([{opacity:1},{opacity:0}],{duration:u,delay:m}),M=[];for(let D=0;D{re.classList.toggle("md-menu-hidden",!0)}),M.push([re,se])}return d.addEventListener("abort",()=>{B.cancel(),T.cancel(),F.cancel(),M.forEach(([D,te])=>{te.cancel(),D.classList.toggle("md-menu-hidden",!1)}),e(!1)}),B.addEventListener("finish",()=>{r.classList.toggle("animating",!1),M.forEach(([D])=>{D.classList.toggle("md-menu-hidden",!1)}),this.openCloseAnimationSignal.finish(),this.dispatchEvent(new Event("closed")),e(!0)}),t}handleKeydown(e){this.pointerPath=[],this.listController.handleKeydown(e)}setUpGlobalEventListeners(){document.addEventListener("click",this.onDocumentClick,{capture:!0}),window.addEventListener("pointerdown",this.onWindowPointerdown),document.addEventListener("resize",this.onWindowResize,{passive:!0}),window.addEventListener("resize",this.onWindowResize,{passive:!0})}cleanUpGlobalEventListeners(){document.removeEventListener("click",this.onDocumentClick,{capture:!0}),window.removeEventListener("pointerdown",this.onWindowPointerdown),document.removeEventListener("resize",this.onWindowResize),window.removeEventListener("resize",this.onWindowResize)}onCloseMenu(){this.close()}onDeactivateItems(e){e.stopPropagation(),this.listController.onDeactivateItems()}onRequestActivation(e){e.stopPropagation(),this.listController.onRequestActivation(e)}handleDeactivateTypeahead(e){e.stopPropagation(),this.typeaheadActive=!1}handleActivateTypeahead(e){e.stopPropagation(),this.typeaheadActive=!0}handleStayOpenOnFocusout(e){e.stopPropagation(),this.stayOpenOnFocusout=!0}handleCloseOnFocusout(e){e.stopPropagation(),this.stayOpenOnFocusout=!1}close(){this.open=!1,this.slotItems.forEach(t=>{var r;(r=t.close)==null||r.call(t)})}show(){this.open=!0}activateNextItem(){return this.listController.activateNextItem()??null}activatePreviousItem(){return this.listController.activatePreviousItem()??null}reposition(){this.open&&this.menuPositionController.position()}}n([E(".menu")],V.prototype,"surfaceEl",void 0);n([E("slot")],V.prototype,"slotEl",void 0);n([l()],V.prototype,"anchor",void 0);n([l()],V.prototype,"positioning",void 0);n([l({type:Boolean})],V.prototype,"quick",void 0);n([l({type:Boolean,attribute:"has-overflow"})],V.prototype,"hasOverflow",void 0);n([l({type:Boolean,reflect:!0})],V.prototype,"open",void 0);n([l({type:Number,attribute:"x-offset"})],V.prototype,"xOffset",void 0);n([l({type:Number,attribute:"y-offset"})],V.prototype,"yOffset",void 0);n([l({type:Boolean,attribute:"no-horizontal-flip"})],V.prototype,"noHorizontalFlip",void 0);n([l({type:Boolean,attribute:"no-vertical-flip"})],V.prototype,"noVerticalFlip",void 0);n([l({type:Number,attribute:"typeahead-delay"})],V.prototype,"typeaheadDelay",void 0);n([l({attribute:"anchor-corner"})],V.prototype,"anchorCorner",void 0);n([l({attribute:"menu-corner"})],V.prototype,"menuCorner",void 0);n([l({type:Boolean,attribute:"stay-open-on-outside-click"})],V.prototype,"stayOpenOnOutsideClick",void 0);n([l({type:Boolean,attribute:"stay-open-on-focusout"})],V.prototype,"stayOpenOnFocusout",void 0);n([l({type:Boolean,attribute:"skip-restore-focus"})],V.prototype,"skipRestoreFocus",void 0);n([l({attribute:"default-focus"})],V.prototype,"defaultFocus",void 0);n([l({type:Boolean,attribute:"no-navigation-wrap"})],V.prototype,"noNavigationWrap",void 0);n([ee({flatten:!0})],V.prototype,"slotItems",void 0);n([z()],V.prototype,"typeaheadActive",void 0);/** + @slotchange=${this.listController.onSlotchange}>`}renderElevation(){return m``}getSurfaceClasses(){return{open:this.open,fixed:this.positioning==="fixed","has-overflow":this.hasOverflow}}captureKeydown(e){e.target===this&&!e.defaultPrevented&&Ya(e.code)&&(e.preventDefault(),this.close()),this.typeaheadController.onKeydown(e)}async animateOpen(){const e=this.surfaceEl,t=this.slotEl;if(!e||!t)return!0;const o=this.openDirection;this.dispatchEvent(new Event("opening")),e.classList.toggle("animating",!0);const i=this.openCloseAnimationSignal.start(),a=e.offsetHeight,n=o==="UP",s=this.items,d=500,h=50,v=250,u=(d-v)/s.length,f=e.animate([{height:"0px"},{height:`${a}px`}],{duration:d,easing:we.EMPHASIZED}),y=t.animate([{transform:n?`translateY(-${a}px)`:""},{transform:""}],{duration:d,easing:we.EMPHASIZED}),b=e.animate([{opacity:0},{opacity:1}],h),g=[];for(let I=0;I{P.classList.toggle("md-menu-hidden",!1)}),g.push([P,D])}let k=I=>{};const E=new Promise(I=>{k=I});return i.addEventListener("abort",()=>{f.cancel(),y.cancel(),b.cancel(),g.forEach(([I,O])=>{I.classList.toggle("md-menu-hidden",!1),O.cancel()}),k(!0)}),f.addEventListener("finish",()=>{e.classList.toggle("animating",!1),this.openCloseAnimationSignal.finish(),k(!1)}),await E}animateClose(){let e;const t=new Promise(D=>{e=D}),o=this.surfaceEl,i=this.slotEl;if(!o||!i)return e(!1),t;const n=this.openDirection==="UP";this.dispatchEvent(new Event("closing")),o.classList.toggle("animating",!0);const s=this.openCloseAnimationSignal.start(),d=o.offsetHeight,h=this.items,v=150,u=50,f=v-u,y=50,b=50,g=.35,k=(v-b-y)/h.length,E=o.animate([{height:`${d}px`},{height:`${d*g}px`}],{duration:v,easing:we.EMPHASIZED_ACCELERATE}),I=i.animate([{transform:""},{transform:n?`translateY(-${d*(1-g)}px)`:""}],{duration:v,easing:we.EMPHASIZED_ACCELERATE}),O=o.animate([{opacity:1},{opacity:0}],{duration:u,delay:f}),P=[];for(let D=0;D{H.classList.toggle("md-menu-hidden",!0)}),P.push([H,re])}return s.addEventListener("abort",()=>{E.cancel(),I.cancel(),O.cancel(),P.forEach(([D,j])=>{j.cancel(),D.classList.toggle("md-menu-hidden",!1)}),e(!1)}),E.addEventListener("finish",()=>{o.classList.toggle("animating",!1),P.forEach(([D])=>{D.classList.toggle("md-menu-hidden",!1)}),this.openCloseAnimationSignal.finish(),this.dispatchEvent(new Event("closed")),e(!0)}),t}handleKeydown(e){this.pointerPath=[],this.listController.handleKeydown(e)}setUpGlobalEventListeners(){document.addEventListener("click",this.onDocumentClick,{capture:!0}),window.addEventListener("pointerdown",this.onWindowPointerdown),document.addEventListener("resize",this.onWindowResize,{passive:!0}),window.addEventListener("resize",this.onWindowResize,{passive:!0})}cleanUpGlobalEventListeners(){document.removeEventListener("click",this.onDocumentClick,{capture:!0}),window.removeEventListener("pointerdown",this.onWindowPointerdown),document.removeEventListener("resize",this.onWindowResize),window.removeEventListener("resize",this.onWindowResize)}onCloseMenu(){this.close()}onDeactivateItems(e){e.stopPropagation(),this.listController.onDeactivateItems()}onRequestActivation(e){e.stopPropagation(),this.listController.onRequestActivation(e)}handleDeactivateTypeahead(e){e.stopPropagation(),this.typeaheadActive=!1}handleActivateTypeahead(e){e.stopPropagation(),this.typeaheadActive=!0}handleStayOpenOnFocusout(e){e.stopPropagation(),this.stayOpenOnFocusout=!0}handleCloseOnFocusout(e){e.stopPropagation(),this.stayOpenOnFocusout=!1}close(){this.open=!1,this.slotItems.forEach(t=>{var o;(o=t.close)==null||o.call(t)})}show(){this.open=!0}activateNextItem(){return this.listController.activateNextItem()??null}activatePreviousItem(){return this.listController.activatePreviousItem()??null}reposition(){this.open&&this.menuPositionController.position()}}l([B(".menu")],K.prototype,"surfaceEl",void 0);l([B("slot")],K.prototype,"slotEl",void 0);l([c()],K.prototype,"anchor",void 0);l([c()],K.prototype,"positioning",void 0);l([c({type:Boolean})],K.prototype,"quick",void 0);l([c({type:Boolean,attribute:"has-overflow"})],K.prototype,"hasOverflow",void 0);l([c({type:Boolean,reflect:!0})],K.prototype,"open",void 0);l([c({type:Number,attribute:"x-offset"})],K.prototype,"xOffset",void 0);l([c({type:Number,attribute:"y-offset"})],K.prototype,"yOffset",void 0);l([c({type:Boolean,attribute:"no-horizontal-flip"})],K.prototype,"noHorizontalFlip",void 0);l([c({type:Boolean,attribute:"no-vertical-flip"})],K.prototype,"noVerticalFlip",void 0);l([c({type:Number,attribute:"typeahead-delay"})],K.prototype,"typeaheadDelay",void 0);l([c({attribute:"anchor-corner"})],K.prototype,"anchorCorner",void 0);l([c({attribute:"menu-corner"})],K.prototype,"menuCorner",void 0);l([c({type:Boolean,attribute:"stay-open-on-outside-click"})],K.prototype,"stayOpenOnOutsideClick",void 0);l([c({type:Boolean,attribute:"stay-open-on-focusout"})],K.prototype,"stayOpenOnFocusout",void 0);l([c({type:Boolean,attribute:"skip-restore-focus"})],K.prototype,"skipRestoreFocus",void 0);l([c({attribute:"default-focus"})],K.prototype,"defaultFocus",void 0);l([c({type:Boolean,attribute:"no-navigation-wrap"})],K.prototype,"noNavigationWrap",void 0);l([oe({flatten:!0})],K.prototype,"slotItems",void 0);l([M()],K.prototype,"typeaheadActive",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Rs=x`:host{--md-elevation-level: var(--md-menu-container-elevation, 2);--md-elevation-shadow-color: var(--md-menu-container-shadow-color, var(--md-sys-color-shadow, #000));min-width:112px;color:unset;display:contents}md-focus-ring{--md-focus-ring-shape: var(--md-menu-container-shape, var(--md-sys-shape-corner-extra-small, 4px))}.menu{border-radius:var(--md-menu-container-shape, var(--md-sys-shape-corner-extra-small, 4px));display:none;inset:auto;border:none;padding:0px;overflow:visible;background-color:rgba(0,0,0,0);color:inherit;opacity:0;z-index:20;position:absolute;user-select:none;max-height:inherit;height:inherit;min-width:inherit;max-width:inherit;scrollbar-width:inherit}.menu::backdrop{display:none}.fixed{position:fixed}.items{display:block;list-style-type:none;margin:0;outline:none;box-sizing:border-box;background-color:var(--md-menu-container-color, var(--md-sys-color-surface-container, #f3edf7));height:inherit;max-height:inherit;overflow:auto;min-width:inherit;max-width:inherit;border-radius:inherit;scrollbar-width:inherit}.item-padding{padding-block:8px}.has-overflow:not([popover]) .items{overflow:visible}.has-overflow.animating .items,.animating .items{overflow:hidden}.has-overflow.animating .items{pointer-events:none}.animating ::slotted(.md-menu-hidden){opacity:0}slot{display:block;height:inherit;max-height:inherit}::slotted(:is(md-divider,[role=separator])){margin:8px 0}@media(forced-colors: active){.menu{border-style:solid;border-color:CanvasText;border-width:1px}} + */const Ls=_`:host{--md-elevation-level: var(--md-menu-container-elevation, 2);--md-elevation-shadow-color: var(--md-menu-container-shadow-color, var(--md-sys-color-shadow, #000));min-width:112px;color:unset;display:contents}md-focus-ring{--md-focus-ring-shape: var(--md-menu-container-shape, var(--md-sys-shape-corner-extra-small, 4px))}.menu{border-radius:var(--md-menu-container-shape, var(--md-sys-shape-corner-extra-small, 4px));display:none;inset:auto;border:none;padding:0px;overflow:visible;background-color:rgba(0,0,0,0);color:inherit;opacity:0;z-index:20;position:absolute;user-select:none;max-height:inherit;height:inherit;min-width:inherit;max-width:inherit;scrollbar-width:inherit}.menu::backdrop{display:none}.fixed{position:fixed}.items{display:block;list-style-type:none;margin:0;outline:none;box-sizing:border-box;background-color:var(--md-menu-container-color, var(--md-sys-color-surface-container, #f3edf7));height:inherit;max-height:inherit;overflow:auto;min-width:inherit;max-width:inherit;border-radius:inherit;scrollbar-width:inherit}.item-padding{padding-block:8px}.has-overflow:not([popover]) .items{overflow:visible}.has-overflow.animating .items,.animating .items{overflow:hidden}.has-overflow.animating .items{pointer-events:none}.animating ::slotted(.md-menu-hidden){opacity:0}slot{display:block;height:inherit;max-height:inherit}::slotted(:is(md-divider,[role=separator])){margin:8px 0}@media(forced-colors: active){.menu{border-style:solid;border-color:CanvasText;border-width:1px}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let vo=class extends V{};vo.styles=[Rs];vo=n([w("md-menu")],vo);/** + */let Wr=class extends K{};Wr.styles=[Ls];Wr=l([S("md-menu")],Wr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ra{constructor(e,t){this.host=e,this.internalTypeaheadText=null,this.onClick=()=>{this.host.keepOpen||this.host.dispatchEvent(ui(this.host,{kind:ho.CLICK_SELECTION}))},this.onKeydown=r=>{if(this.host.href&&r.code==="Enter"){const a=this.getInteractiveElement();a instanceof HTMLAnchorElement&&a.click()}if(r.defaultPrevented)return;const i=r.code;this.host.keepOpen&&i!=="Escape"||Ji(i)&&(r.preventDefault(),this.host.dispatchEvent(ui(this.host,{kind:ho.KEYDOWN,key:i})))},this.getHeadlineElements=t.getHeadlineElements,this.getSupportingTextElements=t.getSupportingTextElements,this.getDefaultElements=t.getDefaultElements,this.getInteractiveElement=t.getInteractiveElement,this.host.addController(this)}get typeaheadText(){if(this.internalTypeaheadText!==null)return this.internalTypeaheadText;const e=this.getHeadlineElements(),t=[];return e.forEach(r=>{r.textContent&&r.textContent.trim()&&t.push(r.textContent.trim())}),t.length===0&&this.getDefaultElements().forEach(r=>{r.textContent&&r.textContent.trim()&&t.push(r.textContent.trim())}),t.length===0&&this.getSupportingTextElements().forEach(r=>{r.textContent&&r.textContent.trim()&&t.push(r.textContent.trim())}),t.join(" ")}get tagName(){switch(this.host.type){case"link":return"a";case"button":return"button";default:case"menuitem":case"option":return"li"}}get role(){return this.host.type==="option"?"option":"menuitem"}hostConnected(){this.host.toggleAttribute("md-menu-item",!0)}hostUpdate(){this.host.href&&(this.host.type="link")}setTypeaheadText(e){this.internalTypeaheadText=e}}/** + */class Ja{constructor(e,t){this.host=e,this.internalTypeaheadText=null,this.onClick=()=>{this.host.keepOpen||this.host.dispatchEvent(ta(this.host,{kind:Hr.CLICK_SELECTION}))},this.onKeydown=o=>{if(this.host.href&&o.code==="Enter"){const a=this.getInteractiveElement();a instanceof HTMLAnchorElement&&a.click()}if(o.defaultPrevented)return;const i=o.code;this.host.keepOpen&&i!=="Escape"||Ya(i)&&(o.preventDefault(),this.host.dispatchEvent(ta(this.host,{kind:Hr.KEYDOWN,key:i})))},this.getHeadlineElements=t.getHeadlineElements,this.getSupportingTextElements=t.getSupportingTextElements,this.getDefaultElements=t.getDefaultElements,this.getInteractiveElement=t.getInteractiveElement,this.host.addController(this)}get typeaheadText(){if(this.internalTypeaheadText!==null)return this.internalTypeaheadText;const e=this.getHeadlineElements(),t=[];return e.forEach(o=>{o.textContent&&o.textContent.trim()&&t.push(o.textContent.trim())}),t.length===0&&this.getDefaultElements().forEach(o=>{o.textContent&&o.textContent.trim()&&t.push(o.textContent.trim())}),t.length===0&&this.getSupportingTextElements().forEach(o=>{o.textContent&&o.textContent.trim()&&t.push(o.textContent.trim())}),t.join(" ")}get tagName(){switch(this.host.type){case"link":return"a";case"button":return"button";default:case"menuitem":case"option":return"li"}}get role(){return this.host.type==="option"?"option":"menuitem"}hostConnected(){this.host.toggleAttribute("md-menu-item",!0)}hostUpdate(){this.host.href&&(this.host.type="link")}setTypeaheadText(e){this.internalTypeaheadText=e}}/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Bs=ne(C);class he extends Bs{constructor(){super(...arguments),this.disabled=!1,this.type="menuitem",this.href="",this.target="",this.keepOpen=!1,this.selected=!1,this.menuItemController=new ra(this,{getHeadlineElements:()=>this.headlineElements,getSupportingTextElements:()=>this.supportingTextElements,getDefaultElements:()=>this.defaultElements,getInteractiveElement:()=>this.listItemRoot})}get typeaheadText(){return this.menuItemController.typeaheadText}set typeaheadText(e){this.menuItemController.setTypeaheadText(e)}render(){return this.renderListItem(p` + */const zs=se($);class he extends zs{constructor(){super(...arguments),this.disabled=!1,this.type="menuitem",this.href="",this.target="",this.keepOpen=!1,this.selected=!1,this.menuItemController=new Ja(this,{getHeadlineElements:()=>this.headlineElements,getSupportingTextElements:()=>this.supportingTextElements,getDefaultElements:()=>this.defaultElements,getInteractiveElement:()=>this.listItemRoot})}get typeaheadText(){return this.menuItemController.typeaheadText}set typeaheadText(e){this.menuItemController.setTypeaheadText(e)}render(){return this.renderListItem(m`
${this.renderRipple()} ${this.renderFocusRing()} @@ -975,29 +975,29 @@ ${this.renderBody()} - `)}renderListItem(e){const t=this.type==="link";let r;switch(this.menuItemController.tagName){case"a":r=ae`a`;break;case"button":r=ae`button`;break;default:case"li":r=ae`li`;break}const i=t&&this.target?this.target:h;return zt` - <${r} + `)}renderListItem(e){const t=this.type==="link";let o;switch(this.menuItemController.tagName){case"a":o=le`a`;break;case"button":o=le`button`;break;default:case"li":o=le`li`;break}const i=t&&this.target?this.target:p;return Ht` + <${o} id="item" tabindex=${this.disabled&&!t?-1:0} role=${this.menuItemController.role} - aria-label=${this.ariaLabel||h} - aria-selected=${this.ariaSelected||h} - aria-checked=${this.ariaChecked||h} - aria-expanded=${this.ariaExpanded||h} - aria-haspopup=${this.ariaHasPopup||h} + aria-label=${this.ariaLabel||p} + aria-selected=${this.ariaSelected||p} + aria-checked=${this.ariaChecked||p} + aria-expanded=${this.ariaExpanded||p} + aria-haspopup=${this.ariaHasPopup||p} class="list-item ${U(this.getRenderClasses())}" - href=${this.href||h} + href=${this.href||p} target=${i} @click=${this.menuItemController.onClick} @keydown=${this.menuItemController.onKeydown} - >${e} - `}renderRipple(){return p` ${e} + `}renderRipple(){return m` `}renderFocusRing(){return p` `}renderFocusRing(){return m` `}getRenderClasses(){return{disabled:this.disabled,selected:this.selected}}renderBody(){return p` + inward>`}getRenderClasses(){return{disabled:this.disabled,selected:this.selected}}renderBody(){return m` @@ -1005,20 +1005,20 @@ - `}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}he.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],he.prototype,"disabled",void 0);n([l()],he.prototype,"type",void 0);n([l()],he.prototype,"href",void 0);n([l()],he.prototype,"target",void 0);n([l({type:Boolean,attribute:"keep-open"})],he.prototype,"keepOpen",void 0);n([l({type:Boolean})],he.prototype,"selected",void 0);n([E(".list-item")],he.prototype,"listItemRoot",void 0);n([ee({slot:"headline"})],he.prototype,"headlineElements",void 0);n([ee({slot:"supporting-text"})],he.prototype,"supportingTextElements",void 0);n([Mo({slot:""})],he.prototype,"defaultElements",void 0);n([l({attribute:"typeahead-text"})],he.prototype,"typeaheadText",null);/** + `}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}he.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],he.prototype,"disabled",void 0);l([c()],he.prototype,"type",void 0);l([c()],he.prototype,"href",void 0);l([c()],he.prototype,"target",void 0);l([c({type:Boolean,attribute:"keep-open"})],he.prototype,"keepOpen",void 0);l([c({type:Boolean})],he.prototype,"selected",void 0);l([B(".list-item")],he.prototype,"listItemRoot",void 0);l([oe({slot:"headline"})],he.prototype,"headlineElements",void 0);l([oe({slot:"supporting-text"})],he.prototype,"supportingTextElements",void 0);l([vi({slot:""})],he.prototype,"defaultElements",void 0);l([c({attribute:"typeahead-text"})],he.prototype,"typeaheadText",null);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const oa=x`:host{display:flex;--md-ripple-hover-color: var(--md-menu-item-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-menu-item-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-menu-item-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-menu-item-pressed-state-layer-opacity, 0.12)}:host([disabled]){opacity:var(--md-menu-item-disabled-opacity, 0.3);pointer-events:none}md-focus-ring{z-index:1;--md-focus-ring-shape: 8px}a,button,li{background:none;border:none;padding:0;margin:0;text-align:unset;text-decoration:none}.list-item{border-radius:inherit;display:flex;flex:1;max-width:inherit;min-width:inherit;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.list-item:not(.disabled){cursor:pointer}[slot=container]{pointer-events:none}md-ripple{border-radius:inherit}md-item{border-radius:inherit;flex:1;color:var(--md-menu-item-label-text-color, var(--md-sys-color-on-surface, #1d1b20));font-family:var(--md-menu-item-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));line-height:var(--md-menu-item-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));font-weight:var(--md-menu-item-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));min-height:var(--md-menu-item-one-line-container-height, 56px);padding-top:var(--md-menu-item-top-space, 12px);padding-bottom:var(--md-menu-item-bottom-space, 12px);padding-inline-start:var(--md-menu-item-leading-space, 16px);padding-inline-end:var(--md-menu-item-trailing-space, 16px)}md-item[multiline]{min-height:var(--md-menu-item-two-line-container-height, 72px)}[slot=supporting-text]{color:var(--md-menu-item-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-menu-item-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-menu-item-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));font-weight:var(--md-menu-item-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)))}[slot=trailing-supporting-text]{color:var(--md-menu-item-trailing-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-menu-item-trailing-supporting-text-font, var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-trailing-supporting-text-size, var(--md-sys-typescale-label-small-size, 0.6875rem));line-height:var(--md-menu-item-trailing-supporting-text-line-height, var(--md-sys-typescale-label-small-line-height, 1rem));font-weight:var(--md-menu-item-trailing-supporting-text-weight, var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500)))}:is([slot=start],[slot=end])::slotted(*){fill:currentColor}[slot=start]{color:var(--md-menu-item-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}[slot=end]{color:var(--md-menu-item-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}.list-item{background-color:var(--md-menu-item-container-color, transparent)}.list-item.selected{background-color:var(--md-menu-item-selected-container-color, var(--md-sys-color-secondary-container, #e8def8))}.selected:not(.disabled) ::slotted(*){color:var(--md-menu-item-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b))}@media(forced-colors: active){:host([disabled]),:host([disabled]) slot{color:GrayText;opacity:1}.list-item{position:relative}.list-item.selected::before{content:"";position:absolute;inset:0;box-sizing:border-box;border-radius:inherit;pointer-events:none;border:3px double CanvasText}} + */const en=_`:host{display:flex;--md-ripple-hover-color: var(--md-menu-item-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-menu-item-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-menu-item-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-menu-item-pressed-state-layer-opacity, 0.12)}:host([disabled]){opacity:var(--md-menu-item-disabled-opacity, 0.3);pointer-events:none}md-focus-ring{z-index:1;--md-focus-ring-shape: 8px}a,button,li{background:none;border:none;padding:0;margin:0;text-align:unset;text-decoration:none}.list-item{border-radius:inherit;display:flex;flex:1;max-width:inherit;min-width:inherit;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.list-item:not(.disabled){cursor:pointer}[slot=container]{pointer-events:none}md-ripple{border-radius:inherit}md-item{border-radius:inherit;flex:1;color:var(--md-menu-item-label-text-color, var(--md-sys-color-on-surface, #1d1b20));font-family:var(--md-menu-item-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));line-height:var(--md-menu-item-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));font-weight:var(--md-menu-item-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));min-height:var(--md-menu-item-one-line-container-height, 56px);padding-top:var(--md-menu-item-top-space, 12px);padding-bottom:var(--md-menu-item-bottom-space, 12px);padding-inline-start:var(--md-menu-item-leading-space, 16px);padding-inline-end:var(--md-menu-item-trailing-space, 16px)}md-item[multiline]{min-height:var(--md-menu-item-two-line-container-height, 72px)}[slot=supporting-text]{color:var(--md-menu-item-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-menu-item-supporting-text-font, var(--md-sys-typescale-body-medium-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-supporting-text-size, var(--md-sys-typescale-body-medium-size, 0.875rem));line-height:var(--md-menu-item-supporting-text-line-height, var(--md-sys-typescale-body-medium-line-height, 1.25rem));font-weight:var(--md-menu-item-supporting-text-weight, var(--md-sys-typescale-body-medium-weight, var(--md-ref-typeface-weight-regular, 400)))}[slot=trailing-supporting-text]{color:var(--md-menu-item-trailing-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));font-family:var(--md-menu-item-trailing-supporting-text-font, var(--md-sys-typescale-label-small-font, var(--md-ref-typeface-plain, Roboto)));font-size:var(--md-menu-item-trailing-supporting-text-size, var(--md-sys-typescale-label-small-size, 0.6875rem));line-height:var(--md-menu-item-trailing-supporting-text-line-height, var(--md-sys-typescale-label-small-line-height, 1rem));font-weight:var(--md-menu-item-trailing-supporting-text-weight, var(--md-sys-typescale-label-small-weight, var(--md-ref-typeface-weight-medium, 500)))}:is([slot=start],[slot=end])::slotted(*){fill:currentColor}[slot=start]{color:var(--md-menu-item-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}[slot=end]{color:var(--md-menu-item-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f))}.list-item{background-color:var(--md-menu-item-container-color, transparent)}.list-item.selected{background-color:var(--md-menu-item-selected-container-color, var(--md-sys-color-secondary-container, #e8def8))}.selected:not(.disabled) ::slotted(*){color:var(--md-menu-item-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b))}@media(forced-colors: active){:host([disabled]),:host([disabled]) slot{color:GrayText;opacity:1}.list-item{position:relative}.list-item.selected::before{content:"";position:absolute;inset:0;box-sizing:border-box;border-radius:inherit;pointer-events:none;border:3px double CanvasText}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let mo=class extends he{};mo.styles=[oa];mo=n([w("md-menu-item")],mo);/** + */let jr=class extends he{};jr.styles=[en];jr=l([S("md-menu-item")],jr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class We extends C{get item(){return this.items[0]??null}get menu(){return this.menus[0]??null}constructor(){super(),this.anchorCorner=ir.START_END,this.menuCorner=ir.START_START,this.hoverOpenDelay=400,this.hoverCloseDelay=400,this.isSubMenu=!0,this.previousOpenTimeout=0,this.previousCloseTimeout=0,this.onMouseenter=()=>{var e;clearTimeout(this.previousOpenTimeout),clearTimeout(this.previousCloseTimeout),!((e=this.menu)!=null&&e.open)&&(this.hoverOpenDelay?this.previousOpenTimeout=setTimeout(()=>{this.show()},this.hoverOpenDelay):this.show())},this.onMouseleave=()=>{clearTimeout(this.previousCloseTimeout),clearTimeout(this.previousOpenTimeout),this.hoverCloseDelay?this.previousCloseTimeout=setTimeout(()=>{this.close()},this.hoverCloseDelay):this.close()},this.addEventListener("mouseenter",this.onMouseenter),this.addEventListener("mouseleave",this.onMouseleave)}render(){return p` + */class Ze extends ${get item(){return this.items[0]??null}get menu(){return this.menus[0]??null}constructor(){super(),this.anchorCorner=Co.START_END,this.menuCorner=Co.START_START,this.hoverOpenDelay=400,this.hoverCloseDelay=400,this.isSubMenu=!0,this.previousOpenTimeout=0,this.previousCloseTimeout=0,this.onMouseenter=()=>{var e;clearTimeout(this.previousOpenTimeout),clearTimeout(this.previousCloseTimeout),!((e=this.menu)!=null&&e.open)&&(this.hoverOpenDelay?this.previousOpenTimeout=setTimeout(()=>{this.show()},this.hoverOpenDelay):this.show())},this.onMouseleave=()=>{clearTimeout(this.previousCloseTimeout),clearTimeout(this.previousOpenTimeout),this.hoverCloseDelay?this.previousCloseTimeout=setTimeout(()=>{this.close()},this.hoverCloseDelay):this.close()},this.addEventListener("mouseenter",this.onMouseenter),this.addEventListener("mouseleave",this.onMouseleave)}render(){return m` - `}firstUpdated(){this.onSlotchange()}async show(){const e=this.menu;if(!e||e.open)return;e.addEventListener("closed",()=>{this.item.ariaExpanded="false",this.dispatchEvent(Sr()),this.dispatchEvent(Nt()),e.ariaHidden="true"},{once:!0}),e.positioning==="document"&&(e.positioning="absolute"),e.quick=!0,e.hasOverflow=!0,e.anchorCorner=this.anchorCorner,e.menuCorner=this.menuCorner,e.anchorElement=this.item,e.defaultFocus="first-item",e.removeAttribute("aria-hidden"),e.skipRestoreFocus=!1;const t=e.open;if(e.show(),this.item.ariaExpanded="true",this.item.ariaHasPopup="menu",e.id&&this.item.setAttribute("aria-controls",e.id),this.dispatchEvent(Nt()),this.dispatchEvent(Ts()),this.item.selected=!0,!t){let r=a=>{};const i=new Promise(a=>{r=a});e.addEventListener("opened",r,{once:!0}),await i}}async close(){const e=this.menu;if(!e||!e.open)return;this.dispatchEvent(Sr()),e.quick=!0,e.close(),this.dispatchEvent(Nt());let t=i=>{};const r=new Promise(i=>{t=i});e.addEventListener("closed",t,{once:!0}),await r}onSlotchange(){var t;if(!this.item)return;this.item.ariaExpanded="false",this.item.ariaHasPopup="menu",(t=this.menu)!=null&&t.id&&this.item.setAttribute("aria-controls",this.menu.id),this.item.keepOpen=!0;const e=this.menu;e&&(e.isSubmenu=!0,e.ariaHidden="true")}onClick(){this.show()}async onKeydown(e){const t=this.isSubmenuOpenKey(e.code);if(e.defaultPrevented)return;const r=t&&(Me.LEFT===e.code||Me.RIGHT===e.code);if((e.code===lt.SPACE||r)&&(e.preventDefault(),r&&e.stopPropagation()),!t)return;const i=this.menu;if(!i)return;const a=i.items,s=fr(a);if(s){await this.show(),s.tabIndex=0,s.focus();return}}onCloseSubmenu(e){const{itemPath:t,reason:r}=e.detail;if(t.push(this.item),this.dispatchEvent(Sr()),r.kind===ho.KEYDOWN&&r.key===po.ESCAPE){e.stopPropagation(),this.item.dispatchEvent(Xi());return}this.dispatchEvent(Nt())}async onSubMenuKeydown(e){var i;if(e.defaultPrevented)return;const{close:t,keyCode:r}=this.isSubmenuCloseKey(e.code);t&&(e.preventDefault(),(r===Me.LEFT||r===Me.RIGHT)&&e.stopPropagation(),await this.close(),fs(this.menu.items),(i=this.item)==null||i.focus(),this.item.tabIndex=0,this.item.focus())}isSubmenuOpenKey(e){const r=getComputedStyle(this).direction==="rtl"?Me.LEFT:Me.RIGHT;switch(e){case r:case lt.SPACE:case lt.ENTER:return!0;default:return!1}}isSubmenuCloseKey(e){const r=getComputedStyle(this).direction==="rtl"?Me.RIGHT:Me.LEFT;switch(e){case r:case po.ESCAPE:return{close:!0,keyCode:e};default:return{close:!1}}}}n([l({attribute:"anchor-corner"})],We.prototype,"anchorCorner",void 0);n([l({attribute:"menu-corner"})],We.prototype,"menuCorner",void 0);n([l({type:Number,attribute:"hover-open-delay"})],We.prototype,"hoverOpenDelay",void 0);n([l({type:Number,attribute:"hover-close-delay"})],We.prototype,"hoverCloseDelay",void 0);n([l({type:Boolean,reflect:!0,attribute:"md-sub-menu"})],We.prototype,"isSubMenu",void 0);n([ee({slot:"item",flatten:!0})],We.prototype,"items",void 0);n([ee({slot:"menu",flatten:!0})],We.prototype,"menus",void 0);/** + `}firstUpdated(){this.onSlotchange()}async show(){const e=this.menu;if(!e||e.open)return;e.addEventListener("closed",()=>{this.item.ariaExpanded="false",this.dispatchEvent(ar()),this.dispatchEvent(io()),e.ariaHidden="true"},{once:!0}),e.positioning==="document"&&(e.positioning="absolute"),e.quick=!0,e.hasOverflow=!0,e.anchorCorner=this.anchorCorner,e.menuCorner=this.menuCorner,e.anchorElement=this.item,e.defaultFocus="first-item",e.removeAttribute("aria-hidden"),e.skipRestoreFocus=!1;const t=e.open;if(e.show(),this.item.ariaExpanded="true",this.item.ariaHasPopup="menu",e.id&&this.item.setAttribute("aria-controls",e.id),this.dispatchEvent(io()),this.dispatchEvent(Es()),this.item.selected=!0,!t){let o=a=>{};const i=new Promise(a=>{o=a});e.addEventListener("opened",o,{once:!0}),await i}}async close(){const e=this.menu;if(!e||!e.open)return;this.dispatchEvent(ar()),e.quick=!0,e.close(),this.dispatchEvent(io());let t=i=>{};const o=new Promise(i=>{t=i});e.addEventListener("closed",t,{once:!0}),await o}onSlotchange(){var t;if(!this.item)return;this.item.ariaExpanded="false",this.item.ariaHasPopup="menu",(t=this.menu)!=null&&t.id&&this.item.setAttribute("aria-controls",this.menu.id),this.item.keepOpen=!0;const e=this.menu;e&&(e.isSubmenu=!0,e.ariaHidden="true")}onClick(){this.show()}async onKeydown(e){const t=this.isSubmenuOpenKey(e.code);if(e.defaultPrevented)return;const o=t&&(Ne.LEFT===e.code||Ne.RIGHT===e.code);if((e.code===ft.SPACE||o)&&(e.preventDefault(),o&&e.stopPropagation()),!t)return;const i=this.menu;if(!i)return;const a=i.items,n=Mo(a);if(n){await this.show(),n.tabIndex=0,n.focus();return}}onCloseSubmenu(e){const{itemPath:t,reason:o}=e.detail;if(t.push(this.item),this.dispatchEvent(ar()),o.kind===Hr.KEYDOWN&&o.key===Vr.ESCAPE){e.stopPropagation(),this.item.dispatchEvent(Wa());return}this.dispatchEvent(io())}async onSubMenuKeydown(e){var i;if(e.defaultPrevented)return;const{close:t,keyCode:o}=this.isSubmenuCloseKey(e.code);t&&(e.preventDefault(),(o===Ne.LEFT||o===Ne.RIGHT)&&e.stopPropagation(),await this.close(),vs(this.menu.items),(i=this.item)==null||i.focus(),this.item.tabIndex=0,this.item.focus())}isSubmenuOpenKey(e){const o=getComputedStyle(this).direction==="rtl"?Ne.LEFT:Ne.RIGHT;switch(e){case o:case ft.SPACE:case ft.ENTER:return!0;default:return!1}}isSubmenuCloseKey(e){const o=getComputedStyle(this).direction==="rtl"?Ne.RIGHT:Ne.LEFT;switch(e){case o:case Vr.ESCAPE:return{close:!0,keyCode:e};default:return{close:!1}}}}l([c({attribute:"anchor-corner"})],Ze.prototype,"anchorCorner",void 0);l([c({attribute:"menu-corner"})],Ze.prototype,"menuCorner",void 0);l([c({type:Number,attribute:"hover-open-delay"})],Ze.prototype,"hoverOpenDelay",void 0);l([c({type:Number,attribute:"hover-close-delay"})],Ze.prototype,"hoverCloseDelay",void 0);l([c({type:Boolean,reflect:!0,attribute:"md-sub-menu"})],Ze.prototype,"isSubMenu",void 0);l([oe({slot:"item",flatten:!0})],Ze.prototype,"items",void 0);l([oe({slot:"menu",flatten:!0})],Ze.prototype,"menus",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Os=x`:host{position:relative;display:flex;flex-direction:column} + */const Bs=_`:host{position:relative;display:flex;flex-direction:column} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let fo=class extends We{};fo.styles=[Os];fo=n([w("md-sub-menu")],fo);/** + */let Gr=class extends Ze{};Gr.styles=[Bs];Gr=l([S("md-sub-menu")],Gr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ps=ne(C);class ht extends Ps{constructor(){super(...arguments),this.value=0,this.max=1,this.indeterminate=!1,this.fourColor=!1}render(){const{ariaLabel:e}=this;return p` + */const Rs=se($);class xt extends Rs{constructor(){super(...arguments),this.value=0,this.max=1,this.indeterminate=!1,this.fourColor=!1}render(){const{ariaLabel:e}=this;return m`
${this.renderIndicator()}
- `}getRenderClasses(){return{indeterminate:this.indeterminate,"four-color":this.fourColor}}}n([l({type:Number})],ht.prototype,"value",void 0);n([l({type:Number})],ht.prototype,"max",void 0);n([l({type:Boolean})],ht.prototype,"indeterminate",void 0);n([l({type:Boolean,attribute:"four-color"})],ht.prototype,"fourColor",void 0);/** + `}getRenderClasses(){return{indeterminate:this.indeterminate,"four-color":this.fourColor}}}l([c({type:Number})],xt.prototype,"value",void 0);l([c({type:Number})],xt.prototype,"max",void 0);l([c({type:Boolean})],xt.prototype,"indeterminate",void 0);l([c({type:Boolean,attribute:"four-color"})],xt.prototype,"fourColor",void 0);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Ms extends ht{renderIndicator(){return this.indeterminate?this.renderIndeterminateContainer():this.renderDeterminateContainer()}renderDeterminateContainer(){const e=(1-this.value/this.max)*100;return p` + */class Os extends xt{renderIndicator(){return this.indeterminate?this.renderIndeterminateContainer():this.renderDeterminateContainer()}renderDeterminateContainer(){const e=(1-this.value/this.max)*100;return m` - `}renderIndeterminateContainer(){return p`
+ `}renderIndeterminateContainer(){return m`
@@ -1077,50 +1077,50 @@ * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ds=x`:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 10);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;width:var(--_size);height:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.active-track{position:absolute;inset:0}svg{transform:rotate(-90deg)}circle{cx:50%;cy:50%;r:calc(50%*(1 - var(--_active-indicator-width)/100));stroke-width:calc(var(--_active-indicator-width)*1%);stroke-dasharray:100;fill:rgba(0,0,0,0)}.active-track{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1);stroke:var(--_active-indicator-color)}.track{stroke:rgba(0,0,0,0)}.progress.indeterminate{animation:linear infinite linear-rotate;animation-duration:1568.2352941176ms}.spinner{animation:infinite both rotate-arc;animation-duration:5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.left{overflow:hidden;inset:0 50% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.circle{box-sizing:border-box;border-radius:50%;border:solid calc(var(--_active-indicator-width)/100*(var(--_size) - 8px));border-color:var(--_active-indicator-color) var(--_active-indicator-color) rgba(0,0,0,0) rgba(0,0,0,0);animation:expand-arc;animation-iteration-count:infinite;animation-fill-mode:both;animation-duration:1333ms,5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.four-color .circle{animation-name:expand-arc,four-color}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right .circle{rotate:100deg;inset:0 0 0 -100%;animation-delay:-666.5ms,0ms}@media(forced-colors: active){.active-track{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@keyframes expand-arc{0%{transform:rotate(265deg)}50%{transform:rotate(130deg)}100%{transform:rotate(265deg)}}@keyframes rotate-arc{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes linear-rotate{to{transform:rotate(360deg)}}@keyframes four-color{0%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}15%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}25%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}40%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}50%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}65%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}75%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}90%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}100%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}} + */const Ps=_`:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 10);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;width:var(--_size);height:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.active-track{position:absolute;inset:0}svg{transform:rotate(-90deg)}circle{cx:50%;cy:50%;r:calc(50%*(1 - var(--_active-indicator-width)/100));stroke-width:calc(var(--_active-indicator-width)*1%);stroke-dasharray:100;fill:rgba(0,0,0,0)}.active-track{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1);stroke:var(--_active-indicator-color)}.track{stroke:rgba(0,0,0,0)}.progress.indeterminate{animation:linear infinite linear-rotate;animation-duration:1568.2352941176ms}.spinner{animation:infinite both rotate-arc;animation-duration:5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.left{overflow:hidden;inset:0 50% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.circle{box-sizing:border-box;border-radius:50%;border:solid calc(var(--_active-indicator-width)/100*(var(--_size) - 8px));border-color:var(--_active-indicator-color) var(--_active-indicator-color) rgba(0,0,0,0) rgba(0,0,0,0);animation:expand-arc;animation-iteration-count:infinite;animation-fill-mode:both;animation-duration:1333ms,5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.four-color .circle{animation-name:expand-arc,four-color}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right .circle{rotate:100deg;inset:0 0 0 -100%;animation-delay:-666.5ms,0ms}@media(forced-colors: active){.active-track{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@keyframes expand-arc{0%{transform:rotate(265deg)}50%{transform:rotate(130deg)}100%{transform:rotate(265deg)}}@keyframes rotate-arc{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes linear-rotate{to{transform:rotate(360deg)}}@keyframes four-color{0%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}15%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}25%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}40%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}50%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}65%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}75%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}90%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}100%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let bo=class extends Ms{};bo.styles=[Ds];bo=n([w("md-circular-progress")],bo);/** + */let Xr=class extends Os{};Xr.styles=[Ps];Xr=l([S("md-circular-progress")],Xr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ia extends ht{constructor(){super(...arguments),this.buffer=0}renderIndicator(){const e={transform:`scaleX(${(this.indeterminate?1:this.value/this.max)*100}%)`},t=this.buffer??0,r=t>0,a={transform:`scaleX(${(this.indeterminate||!r?1:t/this.max)*100}%)`},s=this.indeterminate||!r||t>=this.max||this.value>=this.max;return p` -
-
-
+ */class tn extends xt{constructor(){super(...arguments),this.buffer=0}renderIndicator(){const e={transform:`scaleX(${(this.indeterminate?1:this.value/this.max)*100}%)`},t=this.buffer??0,o=t>0,a={transform:`scaleX(${(this.indeterminate||!o?1:t/this.max)*100}%)`},n=this.indeterminate||!o||t>=this.max||this.value>=this.max;return m` +
+
+
- `}}n([l({type:Number})],ia.prototype,"buffer",void 0);/** + `}}l([c({type:Number})],tn.prototype,"buffer",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Fs=x`:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, var(--md-sys-shape-corner-none, 0px));border-radius:var(--_track-shape);display:flex;position:relative;min-width:80px;height:var(--_track-height);content-visibility:auto;contain:strict}.progress,.dots,.inactive-track,.bar,.bar-inner{position:absolute}.progress{direction:ltr;inset:0;border-radius:inherit;overflow:hidden;display:flex;align-items:center}.bar{animation:none;width:100%;height:var(--_active-indicator-height);transform-origin:left center;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1)}.secondary-bar{display:none}.bar-inner{inset:0;animation:none;background:var(--_active-indicator-color)}.inactive-track{background:var(--_track-color);inset:0;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1);transform-origin:left center}.dots{inset:0;animation:linear infinite 250ms;animation-name:buffering;background-color:var(--_track-color);background-repeat:repeat-x;-webkit-mask-image:url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 2' preserveAspectRatio='xMinYMin slice'%3E%3Ccircle cx='1' cy='1' r='1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 2' preserveAspectRatio='xMinYMin slice'%3E%3Ccircle cx='1' cy='1' r='1'/%3E%3C/svg%3E");z-index:-1}.dots[hidden]{display:none}.indeterminate .bar{transition:none}.indeterminate .primary-bar{inset-inline-start:-145.167%}.indeterminate .secondary-bar{inset-inline-start:-54.8889%;display:block}.indeterminate .primary-bar{animation:linear infinite 2s;animation-name:primary-indeterminate-translate}.indeterminate .primary-bar>.bar-inner{animation:linear infinite 2s primary-indeterminate-scale}.indeterminate.four-color .primary-bar>.bar-inner{animation-name:primary-indeterminate-scale,four-color;animation-duration:2s,4s}.indeterminate .secondary-bar{animation:linear infinite 2s;animation-name:secondary-indeterminate-translate}.indeterminate .secondary-bar>.bar-inner{animation:linear infinite 2s secondary-indeterminate-scale}.indeterminate.four-color .secondary-bar>.bar-inner{animation-name:secondary-indeterminate-scale,four-color;animation-duration:2s,4s}:host(:dir(rtl)){transform:scale(-1)}@keyframes primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.00432);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes buffering{0%{transform:translateX(calc(var(--_track-height) / 2 * 5))}}@keyframes primary-indeterminate-translate{0%{transform:translateX(0px)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0px)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.6714%)}100%{transform:translateX(200.611%)}}@keyframes secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0px)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.3862%)}100%{transform:translateX(160.278%)}}@keyframes four-color{0%{background:var(--_four-color-active-indicator-one-color)}15%{background:var(--_four-color-active-indicator-one-color)}25%{background:var(--_four-color-active-indicator-two-color)}40%{background:var(--_four-color-active-indicator-two-color)}50%{background:var(--_four-color-active-indicator-three-color)}65%{background:var(--_four-color-active-indicator-three-color)}75%{background:var(--_four-color-active-indicator-four-color)}90%{background:var(--_four-color-active-indicator-four-color)}100%{background:var(--_four-color-active-indicator-one-color)}}@media(forced-colors: active){:host{outline:1px solid CanvasText}.bar-inner,.dots{background-color:CanvasText}} + */const Ds=_`:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, var(--md-sys-shape-corner-none, 0px));border-radius:var(--_track-shape);display:flex;position:relative;min-width:80px;height:var(--_track-height);content-visibility:auto;contain:strict}.progress,.dots,.inactive-track,.bar,.bar-inner{position:absolute}.progress{direction:ltr;inset:0;border-radius:inherit;overflow:hidden;display:flex;align-items:center}.bar{animation:none;width:100%;height:var(--_active-indicator-height);transform-origin:left center;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1)}.secondary-bar{display:none}.bar-inner{inset:0;animation:none;background:var(--_active-indicator-color)}.inactive-track{background:var(--_track-color);inset:0;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1);transform-origin:left center}.dots{inset:0;animation:linear infinite 250ms;animation-name:buffering;background-color:var(--_track-color);background-repeat:repeat-x;-webkit-mask-image:url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 2' preserveAspectRatio='xMinYMin slice'%3E%3Ccircle cx='1' cy='1' r='1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 2' preserveAspectRatio='xMinYMin slice'%3E%3Ccircle cx='1' cy='1' r='1'/%3E%3C/svg%3E");z-index:-1}.dots[hidden]{display:none}.indeterminate .bar{transition:none}.indeterminate .primary-bar{inset-inline-start:-145.167%}.indeterminate .secondary-bar{inset-inline-start:-54.8889%;display:block}.indeterminate .primary-bar{animation:linear infinite 2s;animation-name:primary-indeterminate-translate}.indeterminate .primary-bar>.bar-inner{animation:linear infinite 2s primary-indeterminate-scale}.indeterminate.four-color .primary-bar>.bar-inner{animation-name:primary-indeterminate-scale,four-color;animation-duration:2s,4s}.indeterminate .secondary-bar{animation:linear infinite 2s;animation-name:secondary-indeterminate-translate}.indeterminate .secondary-bar>.bar-inner{animation:linear infinite 2s secondary-indeterminate-scale}.indeterminate.four-color .secondary-bar>.bar-inner{animation-name:secondary-indeterminate-scale,four-color;animation-duration:2s,4s}:host(:dir(rtl)){transform:scale(-1)}@keyframes primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.00432);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes buffering{0%{transform:translateX(calc(var(--_track-height) / 2 * 5))}}@keyframes primary-indeterminate-translate{0%{transform:translateX(0px)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0px)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.6714%)}100%{transform:translateX(200.611%)}}@keyframes secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0px)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.3862%)}100%{transform:translateX(160.278%)}}@keyframes four-color{0%{background:var(--_four-color-active-indicator-one-color)}15%{background:var(--_four-color-active-indicator-one-color)}25%{background:var(--_four-color-active-indicator-two-color)}40%{background:var(--_four-color-active-indicator-two-color)}50%{background:var(--_four-color-active-indicator-three-color)}65%{background:var(--_four-color-active-indicator-three-color)}75%{background:var(--_four-color-active-indicator-four-color)}90%{background:var(--_four-color-active-indicator-four-color)}100%{background:var(--_four-color-active-indicator-one-color)}}@media(forced-colors: active){:host{outline:1px solid CanvasText}.bar-inner,.dots{background-color:CanvasText}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let yo=class extends ia{};yo.styles=[Fs];yo=n([w("md-linear-progress")],yo);/** + */let Yr=class extends tn{};Yr.styles=[Ds];Yr=l([S("md-linear-progress")],Yr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Ut=Symbol("isFocusable"),Ar=Symbol("privateIsFocusable"),Ht=Symbol("externalTabIndex"),qt=Symbol("isUpdatingTabIndex"),Vt=Symbol("updateTabIndex");function aa(o){var e,t,r;class i extends o{constructor(){super(...arguments),this[e]=!0,this[t]=null,this[r]=!1}get[Ut](){return this[Ar]}set[Ut](s){this[Ut]!==s&&(this[Ar]=s,this[Vt]())}connectedCallback(){super.connectedCallback(),this[Vt]()}attributeChangedCallback(s,d,c){if(s!=="tabindex"){super.attributeChangedCallback(s,d,c);return}if(this.requestUpdate("tabIndex",Number(d??-1)),!this[qt]){if(!this.hasAttribute("tabindex")){this[Ht]=null,this[Vt]();return}this[Ht]=this.tabIndex}}[(e=Ar,t=Ht,r=qt,Vt)](){const s=this[Ut]?0:-1,d=this[Ht]??s;this[qt]=!0,this.tabIndex=d,this[qt]=!1}}return n([l({noAccessor:!0})],i.prototype,"tabIndex",void 0),i}/** + */const ao=Symbol("isFocusable"),nr=Symbol("privateIsFocusable"),no=Symbol("externalTabIndex"),lo=Symbol("isUpdatingTabIndex"),so=Symbol("updateTabIndex");function on(r){var e,t,o;class i extends r{constructor(){super(...arguments),this[e]=!0,this[t]=null,this[o]=!1}get[ao](){return this[nr]}set[ao](n){this[ao]!==n&&(this[nr]=n,this[so]())}connectedCallback(){super.connectedCallback(),this[so]()}attributeChangedCallback(n,s,d){if(n!=="tabindex"){super.attributeChangedCallback(n,s,d);return}if(this.requestUpdate("tabIndex",Number(s??-1)),!this[lo]){if(!this.hasAttribute("tabindex")){this[no]=null,this[so]();return}this[no]=this.tabIndex}}[(e=nr,t=no,o=lo,so)](){const n=this[ao]?0:-1,s=this[no]??n;this[lo]=!0,this.tabIndex=s,this[lo]=!1}}return l([c({noAccessor:!0})],i.prototype,"tabIndex",void 0),i}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Ns extends pr{computeValidity(e){this.radioElement||(this.radioElement=document.createElement("input"),this.radioElement.type="radio",this.radioElement.name="group");let t=!1,r=!1;for(const{checked:i,required:a}of e)a&&(t=!0),i&&(r=!0);return this.radioElement.checked=r,this.radioElement.required=t,{validity:{valueMissing:t&&!r},validationMessage:this.radioElement.validationMessage}}equals(e,t){if(e.length!==t.length)return!1;for(let r=0;r({checked:t,required:r}))}}/** + */class Ms extends Ro{computeValidity(e){this.radioElement||(this.radioElement=document.createElement("input"),this.radioElement.type="radio",this.radioElement.name="group");let t=!1,o=!1;for(const{checked:i,required:a}of e)a&&(t=!0),i&&(o=!0);return this.radioElement.checked=o,this.radioElement.required=t,{validity:{valueMissing:t&&!o},validationMessage:this.radioElement.validationMessage}}equals(e,t){if(e.length!==t.length)return!1;for(let o=0;o({checked:t,required:o}))}}/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Us{get controls(){const e=this.host.getAttribute("name");return!e||!this.root||!this.host.isConnected?[this.host]:Array.from(this.root.querySelectorAll(`[name="${e}"]`))}constructor(e){this.host=e,this.focused=!1,this.root=null,this.handleFocusIn=()=>{this.focused=!0,this.updateTabIndices()},this.handleFocusOut=()=>{this.focused=!1,this.updateTabIndices()},this.handleKeyDown=t=>{const r=t.key==="ArrowDown",i=t.key==="ArrowUp",a=t.key==="ArrowLeft",s=t.key==="ArrowRight";if(!a&&!s&&!r&&!i)return;const d=this.controls;if(!d.length)return;t.preventDefault();const f=getComputedStyle(this.host).direction==="rtl"?a||r:s||r,v=d.indexOf(this.host);let u=f?v+1:v-1;for(;u!==v;){u>=d.length?u=0:u<0&&(u=d.length-1);const m=d[u];if(m.hasAttribute("disabled")){f?u++:u--;continue}for(const g of d)g!==m&&(g.checked=!1,g.tabIndex=-1,g.blur());m.checked=!0,m.tabIndex=0,m.focus(),m.dispatchEvent(new Event("change",{bubbles:!0}));break}}}hostConnected(){this.root=this.host.getRootNode(),this.host.addEventListener("keydown",this.handleKeyDown),this.host.addEventListener("focusin",this.handleFocusIn),this.host.addEventListener("focusout",this.handleFocusOut),this.host.checked&&this.uncheckSiblings(),this.updateTabIndices()}hostDisconnected(){this.host.removeEventListener("keydown",this.handleKeyDown),this.host.removeEventListener("focusin",this.handleFocusIn),this.host.removeEventListener("focusout",this.handleFocusOut),this.updateTabIndices(),this.root=null}handleCheckedChange(){this.host.checked&&(this.uncheckSiblings(),this.updateTabIndices())}uncheckSiblings(){for(const e of this.controls)e!==this.host&&(e.checked=!1)}updateTabIndices(){const e=this.controls,t=e.find(r=>r.checked);if(t||this.focused){const r=t||this.host;r.tabIndex=0;for(const i of e)i!==r&&(i.tabIndex=-1);return}for(const r of e)r.tabIndex=0}}/** + */class Fs{get controls(){const e=this.host.getAttribute("name");return!e||!this.root||!this.host.isConnected?[this.host]:Array.from(this.root.querySelectorAll(`[name="${e}"]`))}constructor(e){this.host=e,this.focused=!1,this.root=null,this.handleFocusIn=()=>{this.focused=!0,this.updateTabIndices()},this.handleFocusOut=()=>{this.focused=!1,this.updateTabIndices()},this.handleKeyDown=t=>{const o=t.key==="ArrowDown",i=t.key==="ArrowUp",a=t.key==="ArrowLeft",n=t.key==="ArrowRight";if(!a&&!n&&!o&&!i)return;const s=this.controls;if(!s.length)return;t.preventDefault();const h=getComputedStyle(this.host).direction==="rtl"?a||o:n||o,v=s.indexOf(this.host);let u=h?v+1:v-1;for(;u!==v;){u>=s.length?u=0:u<0&&(u=s.length-1);const f=s[u];if(f.hasAttribute("disabled")){h?u++:u--;continue}for(const y of s)y!==f&&(y.checked=!1,y.tabIndex=-1,y.blur());f.checked=!0,f.tabIndex=0,f.focus(),f.dispatchEvent(new Event("change",{bubbles:!0}));break}}}hostConnected(){this.root=this.host.getRootNode(),this.host.addEventListener("keydown",this.handleKeyDown),this.host.addEventListener("focusin",this.handleFocusIn),this.host.addEventListener("focusout",this.handleFocusOut),this.host.checked&&this.uncheckSiblings(),this.updateTabIndices()}hostDisconnected(){this.host.removeEventListener("keydown",this.handleKeyDown),this.host.removeEventListener("focusin",this.handleFocusIn),this.host.removeEventListener("focusout",this.handleFocusOut),this.updateTabIndices(),this.root=null}handleCheckedChange(){this.host.checked&&(this.uncheckSiblings(),this.updateTabIndices())}uncheckSiblings(){for(const e of this.controls)e!==this.host&&(e.checked=!1)}updateTabIndices(){const e=this.controls,t=e.find(o=>o.checked);if(t||this.focused){const o=t||this.host;o.tabIndex=0;for(const i of e)i!==o&&(i.tabIndex=-1);return}for(const o of e)o.tabIndex=0}}/** * @license * Copyright 2018 Google LLC * SPDX-License-Identifier: Apache-2.0 - */var vi;const $r=Symbol("checked");let Hs=0;const qs=At(ct(qe(aa(C))));class Rt extends qs{get checked(){return this[$r]}set checked(e){const t=this.checked;t!==e&&(this[$r]=e,this.requestUpdate("checked",t),this.selectionController.handleCheckedChange())}constructor(){super(),this.maskId=`cutout${++Hs}`,this[vi]=!1,this.required=!1,this.value="on",this.selectionController=new Us(this),this.addController(this.selectionController),this[Y].role="radio",this.addEventListener("click",this.handleClick.bind(this)),this.addEventListener("keydown",this.handleKeydown.bind(this))}render(){const e={checked:this.checked};return p` + */var oa;const lr=Symbol("checked");let Ns=0;const Us=Nt(yt(Xe(on($))));class Vt extends Us{get checked(){return this[lr]}set checked(e){const t=this.checked;t!==e&&(this[lr]=e,this.requestUpdate("checked",t),this.selectionController.handleCheckedChange())}constructor(){super(),this.maskId=`cutout${++Ns}`,this[oa]=!1,this.required=!1,this.value="on",this.selectionController=new Fs(this),this.addController(this.selectionController),this[J].role="radio",this.addEventListener("click",this.handleClick.bind(this)),this.addEventListener("keydown",this.handleKeydown.bind(this))}render(){const e={checked:this.checked};return m`
- `}updated(){this[Y].ariaChecked=String(this.checked)}async handleClick(e){this.disabled||(await 0,!e.defaultPrevented&&(Tt(e)&&this.focus(),this.checked=!0,this.dispatchEvent(new Event("change",{bubbles:!0})),this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0}))))}async handleKeydown(e){await 0,!(e.key!==" "||e.defaultPrevented)&&this.click()}[(vi=$r,Re)](){return this.checked?this.value:null}[wt](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(e){this.checked=e==="true"}[Je](){return new Ns(()=>this.selectionController?this.selectionController.controls:[this])}[et](){return this.container}}n([l({type:Boolean})],Rt.prototype,"checked",null);n([l({type:Boolean})],Rt.prototype,"required",void 0);n([l()],Rt.prototype,"value",void 0);n([E(".container")],Rt.prototype,"container",void 0);/** + `}updated(){this[J].ariaChecked=String(this.checked)}async handleClick(e){this.disabled||(await 0,!e.defaultPrevented&&(Mt(e)&&this.focus(),this.checked=!0,this.dispatchEvent(new Event("change",{bubbles:!0})),this.dispatchEvent(new InputEvent("input",{bubbles:!0,composed:!0}))))}async handleKeydown(e){await 0,!(e.key!==" "||e.defaultPrevented)&&this.click()}[(oa=lr,Be)](){return this.checked?this.value:null}[Bt](){return String(this.checked)}formResetCallback(){this.checked=this.hasAttribute("checked")}formStateRestoreCallback(e){this.checked=e==="true"}[rt](){return new Ms(()=>this.selectionController?this.selectionController.controls:[this])}[it](){return this.container}}l([c({type:Boolean})],Vt.prototype,"checked",null);l([c({type:Boolean})],Vt.prototype,"required",void 0);l([c()],Vt.prototype,"value",void 0);l([B(".container")],Vt.prototype,"container",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Vs=x`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20px);outline:none;position:relative;vertical-align:top;width:var(--md-radio-icon-size, 20px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;--md-ripple-hover-color: var(--md-radio-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-radio-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-radio-pressed-state-layer-opacity, 0.12)}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-radio-icon-size, 20px))/2)}.container{display:flex;height:100%;place-content:center;place-items:center;width:100%}md-focus-ring{height:44px;inset:unset;width:44px}.checked{--md-ripple-hover-color: var(--md-radio-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-radio-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-radio-selected-pressed-state-layer-opacity, 0.12)}.touch-target{height:48px;position:absolute;width:48px}:host([touch-target=none]) .touch-target{display:none}md-ripple{border-radius:50%;height:var(--md-radio-state-layer-size, 40px);inset:unset;width:var(--md-radio-state-layer-size, 40px)}.icon{fill:var(--md-radio-icon-color, var(--md-sys-color-on-surface-variant, #49454f));inset:0;position:absolute}.outer.circle{transition:fill 50ms linear}.inner.circle{opacity:0;transform-origin:center;transition:opacity 50ms linear}.checked .icon{fill:var(--md-radio-selected-icon-color, var(--md-sys-color-primary, #6750a4))}.checked .inner.circle{animation:inner-circle-grow 300ms cubic-bezier(0.05, 0.7, 0.1, 1);opacity:1}@keyframes inner-circle-grow{from{transform:scale(0)}to{transform:scale(1)}}:host([disabled]) .circle{animation-duration:0s;transition-duration:0s}:host(:hover) .icon{fill:var(--md-radio-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:focus-within) .icon{fill:var(--md-radio-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:active) .icon{fill:var(--md-radio-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host([disabled]) .icon{fill:var(--md-radio-disabled-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-unselected-icon-opacity, 0.38)}:host(:hover) .checked .icon{fill:var(--md-radio-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:focus-within) .checked .icon{fill:var(--md-radio-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:active) .checked .icon{fill:var(--md-radio-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4))}:host([disabled]) .checked .icon{fill:var(--md-radio-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon{fill:CanvasText}:host([disabled]) .icon{fill:GrayText;opacity:1}}} + */const qs=_`@layer{:host{display:inline-flex;height:var(--md-radio-icon-size, 20px);outline:none;position:relative;vertical-align:top;width:var(--md-radio-icon-size, 20px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;--md-ripple-hover-color: var(--md-radio-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-radio-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-radio-pressed-state-layer-opacity, 0.12)}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-radio-icon-size, 20px))/2)}.container{display:flex;height:100%;place-content:center;place-items:center;width:100%}md-focus-ring{height:44px;inset:unset;width:44px}.checked{--md-ripple-hover-color: var(--md-radio-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-radio-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-radio-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-radio-selected-pressed-state-layer-opacity, 0.12)}.touch-target{height:48px;position:absolute;width:48px}:host([touch-target=none]) .touch-target{display:none}md-ripple{border-radius:50%;height:var(--md-radio-state-layer-size, 40px);inset:unset;width:var(--md-radio-state-layer-size, 40px)}.icon{fill:var(--md-radio-icon-color, var(--md-sys-color-on-surface-variant, #49454f));inset:0;position:absolute}.outer.circle{transition:fill 50ms linear}.inner.circle{opacity:0;transform-origin:center;transition:opacity 50ms linear}.checked .icon{fill:var(--md-radio-selected-icon-color, var(--md-sys-color-primary, #6750a4))}.checked .inner.circle{animation:inner-circle-grow 300ms cubic-bezier(0.05, 0.7, 0.1, 1);opacity:1}@keyframes inner-circle-grow{from{transform:scale(0)}to{transform:scale(1)}}:host([disabled]) .circle{animation-duration:0s;transition-duration:0s}:host(:hover) .icon{fill:var(--md-radio-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:focus-within) .icon{fill:var(--md-radio-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host(:active) .icon{fill:var(--md-radio-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20))}:host([disabled]) .icon{fill:var(--md-radio-disabled-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-unselected-icon-opacity, 0.38)}:host(:hover) .checked .icon{fill:var(--md-radio-selected-hover-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:focus-within) .checked .icon{fill:var(--md-radio-selected-focus-icon-color, var(--md-sys-color-primary, #6750a4))}:host(:active) .checked .icon{fill:var(--md-radio-selected-pressed-icon-color, var(--md-sys-color-primary, #6750a4))}:host([disabled]) .checked .icon{fill:var(--md-radio-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-radio-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon{fill:CanvasText}:host([disabled]) .icon{fill:GrayText;opacity:1}}} `;/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let go=class extends Rt{};go.styles=[Vs];go=n([w("md-radio")],go);/** + */let Zr=class extends Vt{};Zr.styles=[qs];Zr=l([S("md-radio")],Zr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ar=Symbol("onReportValidity"),Wt=Symbol("privateCleanupFormListeners"),Kt=Symbol("privateDoNotReportInvalid"),jt=Symbol("privateIsSelfReportingValidity"),Gt=Symbol("privateCallOnReportValidity");function na(o){var e,t,r;class i extends o{constructor(...s){super(...s),this[e]=new AbortController,this[t]=!1,this[r]=!1,this.addEventListener("invalid",d=>{this[Kt]||!d.isTrusted||this.addEventListener("invalid",()=>{this[Gt](d)},{once:!0})},{capture:!0})}checkValidity(){this[Kt]=!0;const s=super.checkValidity();return this[Kt]=!1,s}reportValidity(){this[jt]=!0;const s=super.reportValidity();return s&&this[Gt](null),this[jt]=!1,s}[(e=Wt,t=Kt,r=jt,Gt)](s){const d=s==null?void 0:s.defaultPrevented;d||(this[ar](s),!(!d&&(s==null?void 0:s.defaultPrevented)))||(this[jt]||js(this[Y].form,this))&&this.focus()}[ar](s){throw new Error("Implement [onReportValidity]")}formAssociatedCallback(s){super.formAssociatedCallback&&super.formAssociatedCallback(s),this[Wt].abort(),s&&(this[Wt]=new AbortController,Ws(this,s,()=>{this[Gt](null)},this[Wt].signal))}}return i}function Ws(o,e,t,r){const i=Ks(e);let a=!1,s,d=!1;i.addEventListener("before",()=>{d=!0,s=new AbortController,a=!1,o.addEventListener("invalid",()=>{a=!0},{signal:s.signal})},{signal:r}),i.addEventListener("after",()=>{d=!1,s==null||s.abort(),!a&&t()},{signal:r}),e.addEventListener("submit",()=>{d||t()},{signal:r})}const Lr=new WeakMap;function Ks(o){if(!Lr.has(o)){const e=new EventTarget;Lr.set(o,e);for(const t of["reportValidity","requestSubmit"]){const r=o[t];o[t]=function(){e.dispatchEvent(new Event("before"));const i=Reflect.apply(r,this,arguments);return e.dispatchEvent(new Event("after")),i}}}return Lr.get(o)}function js(o,e){if(!o)return!0;let t;for(const r of o.elements)if(r.matches(":invalid")){t=r;break}return t===e}/** + */const Eo=Symbol("onReportValidity"),co=Symbol("privateCleanupFormListeners"),ho=Symbol("privateDoNotReportInvalid"),uo=Symbol("privateIsSelfReportingValidity"),po=Symbol("privateCallOnReportValidity");function rn(r){var e,t,o;class i extends r{constructor(...n){super(...n),this[e]=new AbortController,this[t]=!1,this[o]=!1,this.addEventListener("invalid",s=>{this[ho]||!s.isTrusted||this.addEventListener("invalid",()=>{this[po](s)},{once:!0})},{capture:!0})}checkValidity(){this[ho]=!0;const n=super.checkValidity();return this[ho]=!1,n}reportValidity(){this[uo]=!0;const n=super.reportValidity();return n&&this[po](null),this[uo]=!1,n}[(e=co,t=ho,o=uo,po)](n){const s=n==null?void 0:n.defaultPrevented;s||(this[Eo](n),!(!s&&(n==null?void 0:n.defaultPrevented)))||(this[uo]||Ks(this[J].form,this))&&this.focus()}[Eo](n){throw new Error("Implement [onReportValidity]")}formAssociatedCallback(n){super.formAssociatedCallback&&super.formAssociatedCallback(n),this[co].abort(),n&&(this[co]=new AbortController,Hs(this,n,()=>{this[po](null)},this[co].signal))}}return i}function Hs(r,e,t,o){const i=Vs(e);let a=!1,n,s=!1;i.addEventListener("before",()=>{s=!0,n=new AbortController,a=!1,r.addEventListener("invalid",()=>{a=!0},{signal:n.signal})},{signal:o}),i.addEventListener("after",()=>{s=!1,n==null||n.abort(),!a&&t()},{signal:o}),e.addEventListener("submit",()=>{s||t()},{signal:o})}const sr=new WeakMap;function Vs(r){if(!sr.has(r)){const e=new EventTarget;sr.set(r,e);for(const t of["reportValidity","requestSubmit"]){const o=r[t];r[t]=function(){e.dispatchEvent(new Event("before"));const i=Reflect.apply(o,this,arguments);return e.dispatchEvent(new Event("after")),i}}}return sr.get(r)}function Ks(r,e){if(!r)return!0;let t;for(const o of r.elements)if(o.matches(":invalid")){t=o;break}return t===e}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Gs extends pr{computeValidity(e){return this.selectControl||(this.selectControl=document.createElement("select")),Fo(p``,this.selectControl),this.selectControl.value=e.value,this.selectControl.required=e.required,{validity:this.selectControl.validity,validationMessage:this.selectControl.validationMessage}}equals(e,t){return e.value===t.value&&e.required===t.required}copy({value:e,required:t}){return{value:e,required:t}}}/** + */class Ws extends Ro{computeValidity(e){return this.selectControl||(this.selectControl=document.createElement("select")),fi(m``,this.selectControl),this.selectControl.value=e.value,this.selectControl.required=e.required,{validity:this.selectControl.validity,validationMessage:this.selectControl.validationMessage}}equals(e,t){return e.value===t.value&&e.required===t.required}copy({value:e,required:t}){return{value:e,required:t}}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function Xs(o){const e=[];for(let t=0;te)}get hasError(){return this.error||this.nativeError}constructor(){super(),this.quick=!1,this.required=!1,this.errorText="",this.label="",this.noAsterisk=!1,this.supportingText="",this.error=!1,this.menuPositioning="popover",this.clampMenuWidth=!1,this.typeaheadDelay=ea,this.hasLeadingIcon=!1,this.displayText="",this.menuAlign="start",this[mi]="",this.lastUserSetValue=null,this.lastUserSetSelectedIndex=null,this.lastSelectedOption=null,this.lastSelectedOptionRecords=[],this.nativeError=!1,this.nativeErrorText="",this.focused=!1,this.open=!1,this.defaultFocus=we.NONE,this.prevOpen=this.open,this.selectWidth=0,this.addEventListener("focus",this.handleFocus.bind(this)),this.addEventListener("blur",this.handleBlur.bind(this))}select(e){const t=this.options.find(r=>r.value===e);t&&this.selectItem(t)}selectIndex(e){const t=this.options[e];t&&this.selectItem(t)}reset(){for(const e of this.options)e.selected=e.hasAttribute("selected");this.updateValueAndDisplayText(),this.nativeError=!1,this.nativeErrorText=""}[(mi=Xt,ar)](e){var r;e==null||e.preventDefault();const t=this.getErrorText();this.nativeError=!!e,this.nativeErrorText=this.validationMessage,t===this.getErrorText()&&((r=this.field)==null||r.reannounceError())}update(e){if(this.hasUpdated||this.initUserSelection(),this.prevOpen!==this.open&&this.open){const t=this.getBoundingClientRect();this.selectWidth=t.width}this.prevOpen=this.open,super.update(e)}render(){return p` + */var ra;const vo=Symbol("value"),Gs=se(rn(Nt(yt(Xe($)))));class N extends Gs{get value(){return this[vo]}set value(e){this.lastUserSetValue=e,this.select(e)}get options(){var e;return((e=this.menu)==null?void 0:e.items)??[]}get selectedIndex(){const[e,t]=(this.getSelectedOptions()??[])[0]??[];return t??-1}set selectedIndex(e){this.lastUserSetSelectedIndex=e,this.selectIndex(e)}get selectedOptions(){return(this.getSelectedOptions()??[]).map(([e])=>e)}get hasError(){return this.error||this.nativeError}constructor(){super(),this.quick=!1,this.required=!1,this.errorText="",this.label="",this.noAsterisk=!1,this.supportingText="",this.error=!1,this.menuPositioning="popover",this.clampMenuWidth=!1,this.typeaheadDelay=Za,this.hasLeadingIcon=!1,this.displayText="",this.menuAlign="start",this[ra]="",this.lastUserSetValue=null,this.lastUserSetSelectedIndex=null,this.lastSelectedOption=null,this.lastSelectedOptionRecords=[],this.nativeError=!1,this.nativeErrorText="",this.focused=!1,this.open=!1,this.defaultFocus=_e.NONE,this.prevOpen=this.open,this.selectWidth=0,this.addEventListener("focus",this.handleFocus.bind(this)),this.addEventListener("blur",this.handleBlur.bind(this))}select(e){const t=this.options.find(o=>o.value===e);t&&this.selectItem(t)}selectIndex(e){const t=this.options[e];t&&this.selectItem(t)}reset(){for(const e of this.options)e.selected=e.hasAttribute("selected");this.updateValueAndDisplayText(),this.nativeError=!1,this.nativeErrorText=""}[(ra=vo,Eo)](e){var o;e==null||e.preventDefault();const t=this.getErrorText();this.nativeError=!!e,this.nativeErrorText=this.validationMessage,t===this.getErrorText()&&((o=this.field)==null||o.reannounceError())}update(e){if(this.hasUpdated||this.initUserSelection(),this.prevOpen!==this.open&&this.open){const t=this.getBoundingClientRect();this.selectWidth=t.width}this.prevOpen=this.open,super.update(e)}render(){return m` ${this.renderField()} ${this.renderMenu()} - `}async firstUpdated(e){var t;await((t=this.menu)==null?void 0:t.updateComplete),this.lastSelectedOptionRecords.length||this.initUserSelection(),!this.lastSelectedOptionRecords.length&&!sn&&!this.options.length&&setTimeout(()=>{this.updateValueAndDisplayText()}),super.firstUpdated(e)}getRenderClasses(){return{disabled:this.disabled,error:this.error,open:this.open}}renderField(){return zt` + `}async firstUpdated(e){var t;await((t=this.menu)==null?void 0:t.updateComplete),this.lastSelectedOptionRecords.length||this.initUserSelection(),!this.lastSelectedOptionRecords.length&&!al&&!this.options.length&&setTimeout(()=>{this.updateValueAndDisplayText()}),super.firstUpdated(e)}getRenderClasses(){return{disabled:this.disabled,error:this.error,open:this.open}}renderField(){return Ht` <${this.fieldTag} aria-haspopup="listbox" role="combobox" part="field" id="field" tabindex=${this.disabled?"-1":"0"} - aria-label=${this.ariaLabel||h} + aria-label=${this.ariaLabel||p} aria-describedby="description" aria-expanded=${this.open?"true":"false"} aria-controls="listbox" @@ -1201,11 +1201,11 @@ @click=${this.handleClick}> ${this.renderFieldContent()}
- `}renderFieldContent(){return[this.renderLeadingIcon(),this.renderLabel(),this.renderTrailingIcon()]}renderLeadingIcon(){return p` + `}renderFieldContent(){return[this.renderLeadingIcon(),this.renderLabel(),this.renderTrailingIcon()]}renderLeadingIcon(){return m` - `}renderTrailingIcon(){return p` + `}renderTrailingIcon(){return m` @@ -1222,18 +1222,18 @@ - `}renderLabel(){return p`
${this.displayText||p` `}
`}renderMenu(){const e=this.label||this.ariaLabel;return p``}renderMenuContent(){return m``}handleKeydown(e){var a,n;if(this.open||this.disabled||!this.menu)return;const t=this.menu.typeaheadController,o=e.code==="Space"||e.code==="ArrowDown"||e.code==="ArrowUp"||e.code==="End"||e.code==="Home"||e.code==="Enter";if(!t.isTypingAhead&&o){switch(e.preventDefault(),this.open=!0,e.code){case"Space":case"ArrowDown":case"Enter":this.defaultFocus=_e.NONE;break;case"End":this.defaultFocus=_e.LAST_ITEM;break;case"ArrowUp":case"Home":this.defaultFocus=_e.FIRST_ITEM;break}return}if(e.key.length===1){t.onKeydown(e),e.preventDefault();const{lastActiveRecord:s}=t;if(!s)return;(n=(a=this.labelEl)==null?void 0:a.setAttribute)==null||n.call(a,"aria-live","polite"),this.selectItem(s[me.ITEM])&&this.dispatchInteractionEvents()}}handleClick(){this.open=!this.open}handleFocus(){this.focused=!0}handleBlur(){this.focused=!1}handleFocusout(e){e.relatedTarget&&Kr(e.relatedTarget,this)||(this.open=!1)}getSelectedOptions(){if(!this.menu)return this.lastSelectedOptionRecords=[],null;const e=this.menu.items;return this.lastSelectedOptionRecords=js(e),this.lastSelectedOptionRecords}async getUpdateComplete(){var e;return await((e=this.menu)==null?void 0:e.updateComplete),super.getUpdateComplete()}updateValueAndDisplayText(){const e=this.getSelectedOptions()??[];let t=!1;if(e.length){const[o]=e[0];t=this.lastSelectedOption!==o,this.lastSelectedOption=o,this[vo]=o.value,this.displayText=o.displayText}else t=this.lastSelectedOption!==null,this.lastSelectedOption=null,this[vo]="",this.displayText="";return t}async handleOpening(e){var a,n,s;if((n=(a=this.labelEl)==null?void 0:a.removeAttribute)==null||n.call(a,"aria-live"),this.redispatchEvent(e),this.defaultFocus!==_e.NONE)return;const t=this.menu.items,o=(s=mt(t))==null?void 0:s.item;let[i]=this.lastSelectedOptionRecords[0]??[null];o&&o!==i&&(o.tabIndex=-1),i=i??t[0],i&&(i.tabIndex=0,i.focus())}redispatchEvent(e){je(this,e)}handleClosed(e){this.open=!1,this.redispatchEvent(e)}handleCloseMenu(e){const t=e.detail.reason,o=e.detail.itemPath[0];this.open=!1;let i=!1;t.kind==="click-selection"?i=this.selectItem(o):t.kind==="keydown"&&Is(t.key)?i=this.selectItem(o):(o.tabIndex=-1,o.blur()),i&&this.dispatchInteractionEvents()}selectItem(e){return(this.getSelectedOptions()??[]).forEach(([o])=>{e!==o&&(o.selected=!1)}),e.selected=!0,this.updateValueAndDisplayText()}handleRequestSelection(e){const t=e.target;this.lastSelectedOptionRecords.some(([o])=>o===t)||this.selectItem(t)}handleRequestDeselection(e){const t=e.target;this.lastSelectedOptionRecords.some(([o])=>o===t)&&this.updateValueAndDisplayText()}initUserSelection(){this.lastUserSetValue&&!this.lastSelectedOptionRecords.length?this.select(this.lastUserSetValue):this.lastUserSetSelectedIndex!==null&&!this.lastSelectedOptionRecords.length?this.selectIndex(this.lastUserSetSelectedIndex):this.updateValueAndDisplayText()}handleIconChange(){this.hasLeadingIcon=this.leadingIcons.length>0}dispatchInteractionEvents(){this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0}))}getErrorText(){return this.error?this.errorText:this.nativeErrorText}[Be](){return this.value}formResetCallback(){this.reset()}formStateRestoreCallback(e){this.value=e}click(){var e;(e=this.field)==null||e.click()}[rt](){return new Ws(()=>this)}[it](){return this.field}}N.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean})],N.prototype,"quick",void 0);l([c({type:Boolean})],N.prototype,"required",void 0);l([c({type:String,attribute:"error-text"})],N.prototype,"errorText",void 0);l([c()],N.prototype,"label",void 0);l([c({type:Boolean,attribute:"no-asterisk"})],N.prototype,"noAsterisk",void 0);l([c({type:String,attribute:"supporting-text"})],N.prototype,"supportingText",void 0);l([c({type:Boolean,reflect:!0})],N.prototype,"error",void 0);l([c({attribute:"menu-positioning"})],N.prototype,"menuPositioning",void 0);l([c({type:Boolean,attribute:"clamp-menu-width"})],N.prototype,"clampMenuWidth",void 0);l([c({type:Number,attribute:"typeahead-delay"})],N.prototype,"typeaheadDelay",void 0);l([c({type:Boolean,attribute:"has-leading-icon"})],N.prototype,"hasLeadingIcon",void 0);l([c({attribute:"display-text"})],N.prototype,"displayText",void 0);l([c({attribute:"menu-align"})],N.prototype,"menuAlign",void 0);l([c()],N.prototype,"value",null);l([c({type:Number,attribute:"selected-index"})],N.prototype,"selectedIndex",null);l([M()],N.prototype,"nativeError",void 0);l([M()],N.prototype,"nativeErrorText",void 0);l([M()],N.prototype,"focused",void 0);l([M()],N.prototype,"open",void 0);l([M()],N.prototype,"defaultFocus",void 0);l([B(".field")],N.prototype,"field",void 0);l([B("md-menu")],N.prototype,"menu",void 0);l([B("#label")],N.prototype,"labelEl",void 0);l([oe({slot:"leading-icon",flatten:!0})],N.prototype,"leadingIcons",void 0);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Zs extends P{constructor(){super(...arguments),this.fieldTag=ae`md-filled-field`}}/** + */class Xs extends N{constructor(){super(...arguments),this.fieldTag=le`md-filled-field`}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Qs=x`:host{--_text-field-active-indicator-color: var(--md-filled-select-text-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-active-indicator-height: var(--md-filled-select-text-field-active-indicator-height, 1px);--_text-field-container-color: var(--md-filled-select-text-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_text-field-disabled-active-indicator-color: var(--md-filled-select-text-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-active-indicator-height: var(--md-filled-select-text-field-disabled-active-indicator-height, 1px);--_text-field-disabled-active-indicator-opacity: var(--md-filled-select-text-field-disabled-active-indicator-opacity, 0.38);--_text-field-disabled-container-color: var(--md-filled-select-text-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-container-opacity: var(--md-filled-select-text-field-disabled-container-opacity, 0.04);--_text-field-disabled-input-text-color: var(--md-filled-select-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-input-text-opacity: var(--md-filled-select-text-field-disabled-input-text-opacity, 0.38);--_text-field-disabled-label-text-color: var(--md-filled-select-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-label-text-opacity: var(--md-filled-select-text-field-disabled-label-text-opacity, 0.38);--_text-field-disabled-leading-icon-color: var(--md-filled-select-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-leading-icon-opacity: var(--md-filled-select-text-field-disabled-leading-icon-opacity, 0.38);--_text-field-disabled-supporting-text-color: var(--md-filled-select-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-supporting-text-opacity: var(--md-filled-select-text-field-disabled-supporting-text-opacity, 0.38);--_text-field-disabled-trailing-icon-color: var(--md-filled-select-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-trailing-icon-opacity: var(--md-filled-select-text-field-disabled-trailing-icon-opacity, 0.38);--_text-field-error-active-indicator-color: var(--md-filled-select-text-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-active-indicator-color: var(--md-filled-select-text-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-input-text-color: var(--md-filled-select-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-focus-label-text-color: var(--md-filled-select-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-leading-icon-color: var(--md-filled-select-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-focus-supporting-text-color: var(--md-filled-select-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-trailing-icon-color: var(--md-filled-select-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-active-indicator-color: var(--md-filled-select-text-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-input-text-color: var(--md-filled-select-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-label-text-color: var(--md-filled-select-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-leading-icon-color: var(--md-filled-select-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-hover-state-layer-color: var(--md-filled-select-text-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-state-layer-opacity: var(--md-filled-select-text-field-error-hover-state-layer-opacity, 0.08);--_text-field-error-hover-supporting-text-color: var(--md-filled-select-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-trailing-icon-color: var(--md-filled-select-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-input-text-color: var(--md-filled-select-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-label-text-color: var(--md-filled-select-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-leading-icon-color: var(--md-filled-select-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-supporting-text-color: var(--md-filled-select-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-trailing-icon-color: var(--md-filled-select-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-focus-active-indicator-color: var(--md-filled-select-text-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-active-indicator-height: var(--md-filled-select-text-field-focus-active-indicator-height, 3px);--_text-field-focus-input-text-color: var(--md-filled-select-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-focus-label-text-color: var(--md-filled-select-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-leading-icon-color: var(--md-filled-select-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-supporting-text-color: var(--md-filled-select-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-trailing-icon-color: var(--md-filled-select-text-field-focus-trailing-icon-color, var(--md-sys-color-primary, #6750a4));--_text-field-hover-active-indicator-color: var(--md-filled-select-text-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-active-indicator-height: var(--md-filled-select-text-field-hover-active-indicator-height, 1px);--_text-field-hover-input-text-color: var(--md-filled-select-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-label-text-color: var(--md-filled-select-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-leading-icon-color: var(--md-filled-select-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-state-layer-color: var(--md-filled-select-text-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-state-layer-opacity: var(--md-filled-select-text-field-hover-state-layer-opacity, 0.08);--_text-field-hover-supporting-text-color: var(--md-filled-select-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-trailing-icon-color: var(--md-filled-select-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-input-text-color: var(--md-filled-select-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-input-text-font: var(--md-filled-select-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-input-text-line-height: var(--md-filled-select-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-input-text-size: var(--md-filled-select-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-input-text-weight: var(--md-filled-select-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-label-text-color: var(--md-filled-select-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-label-text-font: var(--md-filled-select-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-label-text-line-height: var(--md-filled-select-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-label-text-populated-line-height: var(--md-filled-select-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-label-text-populated-size: var(--md-filled-select-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-label-text-size: var(--md-filled-select-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-label-text-weight: var(--md-filled-select-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-leading-icon-color: var(--md-filled-select-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-leading-icon-size: var(--md-filled-select-text-field-leading-icon-size, 24px);--_text-field-supporting-text-color: var(--md-filled-select-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-supporting-text-font: var(--md-filled-select-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-supporting-text-line-height: var(--md-filled-select-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-supporting-text-size: var(--md-filled-select-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-supporting-text-weight: var(--md-filled-select-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-trailing-icon-color: var(--md-filled-select-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-trailing-icon-size: var(--md-filled-select-text-field-trailing-icon-size, 24px);--_text-field-container-shape-start-start: var(--md-filled-select-text-field-container-shape-start-start, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-start-end: var(--md-filled-select-text-field-container-shape-start-end, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-end: var(--md-filled-select-text-field-container-shape-end-end, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_text-field-container-shape-end-start: var(--md-filled-select-text-field-container-shape-end-start, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--md-filled-field-active-indicator-color: var(--_text-field-active-indicator-color);--md-filled-field-active-indicator-height: var(--_text-field-active-indicator-height);--md-filled-field-container-color: var(--_text-field-container-color);--md-filled-field-container-shape-end-end: var(--_text-field-container-shape-end-end);--md-filled-field-container-shape-end-start: var(--_text-field-container-shape-end-start);--md-filled-field-container-shape-start-end: var(--_text-field-container-shape-start-end);--md-filled-field-container-shape-start-start: var(--_text-field-container-shape-start-start);--md-filled-field-content-color: var(--_text-field-input-text-color);--md-filled-field-content-font: var(--_text-field-input-text-font);--md-filled-field-content-line-height: var(--_text-field-input-text-line-height);--md-filled-field-content-size: var(--_text-field-input-text-size);--md-filled-field-content-weight: var(--_text-field-input-text-weight);--md-filled-field-disabled-active-indicator-color: var(--_text-field-disabled-active-indicator-color);--md-filled-field-disabled-active-indicator-height: var(--_text-field-disabled-active-indicator-height);--md-filled-field-disabled-active-indicator-opacity: var(--_text-field-disabled-active-indicator-opacity);--md-filled-field-disabled-container-color: var(--_text-field-disabled-container-color);--md-filled-field-disabled-container-opacity: var(--_text-field-disabled-container-opacity);--md-filled-field-disabled-content-color: var(--_text-field-disabled-input-text-color);--md-filled-field-disabled-content-opacity: var(--_text-field-disabled-input-text-opacity);--md-filled-field-disabled-label-text-color: var(--_text-field-disabled-label-text-color);--md-filled-field-disabled-label-text-opacity: var(--_text-field-disabled-label-text-opacity);--md-filled-field-disabled-leading-content-color: var(--_text-field-disabled-leading-icon-color);--md-filled-field-disabled-leading-content-opacity: var(--_text-field-disabled-leading-icon-opacity);--md-filled-field-disabled-supporting-text-color: var(--_text-field-disabled-supporting-text-color);--md-filled-field-disabled-supporting-text-opacity: var(--_text-field-disabled-supporting-text-opacity);--md-filled-field-disabled-trailing-content-color: var(--_text-field-disabled-trailing-icon-color);--md-filled-field-disabled-trailing-content-opacity: var(--_text-field-disabled-trailing-icon-opacity);--md-filled-field-error-active-indicator-color: var(--_text-field-error-active-indicator-color);--md-filled-field-error-content-color: var(--_text-field-error-input-text-color);--md-filled-field-error-focus-active-indicator-color: var(--_text-field-error-focus-active-indicator-color);--md-filled-field-error-focus-content-color: var(--_text-field-error-focus-input-text-color);--md-filled-field-error-focus-label-text-color: var(--_text-field-error-focus-label-text-color);--md-filled-field-error-focus-leading-content-color: var(--_text-field-error-focus-leading-icon-color);--md-filled-field-error-focus-supporting-text-color: var(--_text-field-error-focus-supporting-text-color);--md-filled-field-error-focus-trailing-content-color: var(--_text-field-error-focus-trailing-icon-color);--md-filled-field-error-hover-active-indicator-color: var(--_text-field-error-hover-active-indicator-color);--md-filled-field-error-hover-content-color: var(--_text-field-error-hover-input-text-color);--md-filled-field-error-hover-label-text-color: var(--_text-field-error-hover-label-text-color);--md-filled-field-error-hover-leading-content-color: var(--_text-field-error-hover-leading-icon-color);--md-filled-field-error-hover-state-layer-color: var(--_text-field-error-hover-state-layer-color);--md-filled-field-error-hover-state-layer-opacity: var(--_text-field-error-hover-state-layer-opacity);--md-filled-field-error-hover-supporting-text-color: var(--_text-field-error-hover-supporting-text-color);--md-filled-field-error-hover-trailing-content-color: var(--_text-field-error-hover-trailing-icon-color);--md-filled-field-error-label-text-color: var(--_text-field-error-label-text-color);--md-filled-field-error-leading-content-color: var(--_text-field-error-leading-icon-color);--md-filled-field-error-supporting-text-color: var(--_text-field-error-supporting-text-color);--md-filled-field-error-trailing-content-color: var(--_text-field-error-trailing-icon-color);--md-filled-field-focus-active-indicator-color: var(--_text-field-focus-active-indicator-color);--md-filled-field-focus-active-indicator-height: var(--_text-field-focus-active-indicator-height);--md-filled-field-focus-content-color: var(--_text-field-focus-input-text-color);--md-filled-field-focus-label-text-color: var(--_text-field-focus-label-text-color);--md-filled-field-focus-leading-content-color: var(--_text-field-focus-leading-icon-color);--md-filled-field-focus-supporting-text-color: var(--_text-field-focus-supporting-text-color);--md-filled-field-focus-trailing-content-color: var(--_text-field-focus-trailing-icon-color);--md-filled-field-hover-active-indicator-color: var(--_text-field-hover-active-indicator-color);--md-filled-field-hover-active-indicator-height: var(--_text-field-hover-active-indicator-height);--md-filled-field-hover-content-color: var(--_text-field-hover-input-text-color);--md-filled-field-hover-label-text-color: var(--_text-field-hover-label-text-color);--md-filled-field-hover-leading-content-color: var(--_text-field-hover-leading-icon-color);--md-filled-field-hover-state-layer-color: var(--_text-field-hover-state-layer-color);--md-filled-field-hover-state-layer-opacity: var(--_text-field-hover-state-layer-opacity);--md-filled-field-hover-supporting-text-color: var(--_text-field-hover-supporting-text-color);--md-filled-field-hover-trailing-content-color: var(--_text-field-hover-trailing-icon-color);--md-filled-field-label-text-color: var(--_text-field-label-text-color);--md-filled-field-label-text-font: var(--_text-field-label-text-font);--md-filled-field-label-text-line-height: var(--_text-field-label-text-line-height);--md-filled-field-label-text-populated-line-height: var(--_text-field-label-text-populated-line-height);--md-filled-field-label-text-populated-size: var(--_text-field-label-text-populated-size);--md-filled-field-label-text-size: var(--_text-field-label-text-size);--md-filled-field-label-text-weight: var(--_text-field-label-text-weight);--md-filled-field-leading-content-color: var(--_text-field-leading-icon-color);--md-filled-field-supporting-text-color: var(--_text-field-supporting-text-color);--md-filled-field-supporting-text-font: var(--_text-field-supporting-text-font);--md-filled-field-supporting-text-line-height: var(--_text-field-supporting-text-line-height);--md-filled-field-supporting-text-size: var(--_text-field-supporting-text-size);--md-filled-field-supporting-text-weight: var(--_text-field-supporting-text-weight);--md-filled-field-trailing-content-color: var(--_text-field-trailing-icon-color)}[has-start] .icon.leading{font-size:var(--_text-field-leading-icon-size);height:var(--_text-field-leading-icon-size);width:var(--_text-field-leading-icon-size)}.icon.trailing{font-size:var(--_text-field-trailing-icon-size);height:var(--_text-field-trailing-icon-size);width:var(--_text-field-trailing-icon-size)} + */const Ys=_`:host{--_text-field-active-indicator-color: var(--md-filled-select-text-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-active-indicator-height: var(--md-filled-select-text-field-active-indicator-height, 1px);--_text-field-container-color: var(--md-filled-select-text-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_text-field-disabled-active-indicator-color: var(--md-filled-select-text-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-active-indicator-height: var(--md-filled-select-text-field-disabled-active-indicator-height, 1px);--_text-field-disabled-active-indicator-opacity: var(--md-filled-select-text-field-disabled-active-indicator-opacity, 0.38);--_text-field-disabled-container-color: var(--md-filled-select-text-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-container-opacity: var(--md-filled-select-text-field-disabled-container-opacity, 0.04);--_text-field-disabled-input-text-color: var(--md-filled-select-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-input-text-opacity: var(--md-filled-select-text-field-disabled-input-text-opacity, 0.38);--_text-field-disabled-label-text-color: var(--md-filled-select-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-label-text-opacity: var(--md-filled-select-text-field-disabled-label-text-opacity, 0.38);--_text-field-disabled-leading-icon-color: var(--md-filled-select-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-leading-icon-opacity: var(--md-filled-select-text-field-disabled-leading-icon-opacity, 0.38);--_text-field-disabled-supporting-text-color: var(--md-filled-select-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-supporting-text-opacity: var(--md-filled-select-text-field-disabled-supporting-text-opacity, 0.38);--_text-field-disabled-trailing-icon-color: var(--md-filled-select-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-trailing-icon-opacity: var(--md-filled-select-text-field-disabled-trailing-icon-opacity, 0.38);--_text-field-error-active-indicator-color: var(--md-filled-select-text-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-active-indicator-color: var(--md-filled-select-text-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-input-text-color: var(--md-filled-select-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-focus-label-text-color: var(--md-filled-select-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-leading-icon-color: var(--md-filled-select-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-focus-supporting-text-color: var(--md-filled-select-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-trailing-icon-color: var(--md-filled-select-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-active-indicator-color: var(--md-filled-select-text-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-input-text-color: var(--md-filled-select-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-label-text-color: var(--md-filled-select-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-leading-icon-color: var(--md-filled-select-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-hover-state-layer-color: var(--md-filled-select-text-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-state-layer-opacity: var(--md-filled-select-text-field-error-hover-state-layer-opacity, 0.08);--_text-field-error-hover-supporting-text-color: var(--md-filled-select-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-trailing-icon-color: var(--md-filled-select-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-input-text-color: var(--md-filled-select-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-label-text-color: var(--md-filled-select-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-leading-icon-color: var(--md-filled-select-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-supporting-text-color: var(--md-filled-select-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-trailing-icon-color: var(--md-filled-select-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-focus-active-indicator-color: var(--md-filled-select-text-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-active-indicator-height: var(--md-filled-select-text-field-focus-active-indicator-height, 3px);--_text-field-focus-input-text-color: var(--md-filled-select-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-focus-label-text-color: var(--md-filled-select-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-leading-icon-color: var(--md-filled-select-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-supporting-text-color: var(--md-filled-select-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-trailing-icon-color: var(--md-filled-select-text-field-focus-trailing-icon-color, var(--md-sys-color-primary, #6750a4));--_text-field-hover-active-indicator-color: var(--md-filled-select-text-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-active-indicator-height: var(--md-filled-select-text-field-hover-active-indicator-height, 1px);--_text-field-hover-input-text-color: var(--md-filled-select-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-label-text-color: var(--md-filled-select-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-leading-icon-color: var(--md-filled-select-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-state-layer-color: var(--md-filled-select-text-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-state-layer-opacity: var(--md-filled-select-text-field-hover-state-layer-opacity, 0.08);--_text-field-hover-supporting-text-color: var(--md-filled-select-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-trailing-icon-color: var(--md-filled-select-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-input-text-color: var(--md-filled-select-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-input-text-font: var(--md-filled-select-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-input-text-line-height: var(--md-filled-select-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-input-text-size: var(--md-filled-select-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-input-text-weight: var(--md-filled-select-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-label-text-color: var(--md-filled-select-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-label-text-font: var(--md-filled-select-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-label-text-line-height: var(--md-filled-select-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-label-text-populated-line-height: var(--md-filled-select-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-label-text-populated-size: var(--md-filled-select-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-label-text-size: var(--md-filled-select-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-label-text-weight: var(--md-filled-select-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-leading-icon-color: var(--md-filled-select-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-leading-icon-size: var(--md-filled-select-text-field-leading-icon-size, 24px);--_text-field-supporting-text-color: var(--md-filled-select-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-supporting-text-font: var(--md-filled-select-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-supporting-text-line-height: var(--md-filled-select-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-supporting-text-size: var(--md-filled-select-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-supporting-text-weight: var(--md-filled-select-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-trailing-icon-color: var(--md-filled-select-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-trailing-icon-size: var(--md-filled-select-text-field-trailing-icon-size, 24px);--_text-field-container-shape-start-start: var(--md-filled-select-text-field-container-shape-start-start, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-start-end: var(--md-filled-select-text-field-container-shape-start-end, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-end: var(--md-filled-select-text-field-container-shape-end-end, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_text-field-container-shape-end-start: var(--md-filled-select-text-field-container-shape-end-start, var(--md-filled-select-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--md-filled-field-active-indicator-color: var(--_text-field-active-indicator-color);--md-filled-field-active-indicator-height: var(--_text-field-active-indicator-height);--md-filled-field-container-color: var(--_text-field-container-color);--md-filled-field-container-shape-end-end: var(--_text-field-container-shape-end-end);--md-filled-field-container-shape-end-start: var(--_text-field-container-shape-end-start);--md-filled-field-container-shape-start-end: var(--_text-field-container-shape-start-end);--md-filled-field-container-shape-start-start: var(--_text-field-container-shape-start-start);--md-filled-field-content-color: var(--_text-field-input-text-color);--md-filled-field-content-font: var(--_text-field-input-text-font);--md-filled-field-content-line-height: var(--_text-field-input-text-line-height);--md-filled-field-content-size: var(--_text-field-input-text-size);--md-filled-field-content-weight: var(--_text-field-input-text-weight);--md-filled-field-disabled-active-indicator-color: var(--_text-field-disabled-active-indicator-color);--md-filled-field-disabled-active-indicator-height: var(--_text-field-disabled-active-indicator-height);--md-filled-field-disabled-active-indicator-opacity: var(--_text-field-disabled-active-indicator-opacity);--md-filled-field-disabled-container-color: var(--_text-field-disabled-container-color);--md-filled-field-disabled-container-opacity: var(--_text-field-disabled-container-opacity);--md-filled-field-disabled-content-color: var(--_text-field-disabled-input-text-color);--md-filled-field-disabled-content-opacity: var(--_text-field-disabled-input-text-opacity);--md-filled-field-disabled-label-text-color: var(--_text-field-disabled-label-text-color);--md-filled-field-disabled-label-text-opacity: var(--_text-field-disabled-label-text-opacity);--md-filled-field-disabled-leading-content-color: var(--_text-field-disabled-leading-icon-color);--md-filled-field-disabled-leading-content-opacity: var(--_text-field-disabled-leading-icon-opacity);--md-filled-field-disabled-supporting-text-color: var(--_text-field-disabled-supporting-text-color);--md-filled-field-disabled-supporting-text-opacity: var(--_text-field-disabled-supporting-text-opacity);--md-filled-field-disabled-trailing-content-color: var(--_text-field-disabled-trailing-icon-color);--md-filled-field-disabled-trailing-content-opacity: var(--_text-field-disabled-trailing-icon-opacity);--md-filled-field-error-active-indicator-color: var(--_text-field-error-active-indicator-color);--md-filled-field-error-content-color: var(--_text-field-error-input-text-color);--md-filled-field-error-focus-active-indicator-color: var(--_text-field-error-focus-active-indicator-color);--md-filled-field-error-focus-content-color: var(--_text-field-error-focus-input-text-color);--md-filled-field-error-focus-label-text-color: var(--_text-field-error-focus-label-text-color);--md-filled-field-error-focus-leading-content-color: var(--_text-field-error-focus-leading-icon-color);--md-filled-field-error-focus-supporting-text-color: var(--_text-field-error-focus-supporting-text-color);--md-filled-field-error-focus-trailing-content-color: var(--_text-field-error-focus-trailing-icon-color);--md-filled-field-error-hover-active-indicator-color: var(--_text-field-error-hover-active-indicator-color);--md-filled-field-error-hover-content-color: var(--_text-field-error-hover-input-text-color);--md-filled-field-error-hover-label-text-color: var(--_text-field-error-hover-label-text-color);--md-filled-field-error-hover-leading-content-color: var(--_text-field-error-hover-leading-icon-color);--md-filled-field-error-hover-state-layer-color: var(--_text-field-error-hover-state-layer-color);--md-filled-field-error-hover-state-layer-opacity: var(--_text-field-error-hover-state-layer-opacity);--md-filled-field-error-hover-supporting-text-color: var(--_text-field-error-hover-supporting-text-color);--md-filled-field-error-hover-trailing-content-color: var(--_text-field-error-hover-trailing-icon-color);--md-filled-field-error-label-text-color: var(--_text-field-error-label-text-color);--md-filled-field-error-leading-content-color: var(--_text-field-error-leading-icon-color);--md-filled-field-error-supporting-text-color: var(--_text-field-error-supporting-text-color);--md-filled-field-error-trailing-content-color: var(--_text-field-error-trailing-icon-color);--md-filled-field-focus-active-indicator-color: var(--_text-field-focus-active-indicator-color);--md-filled-field-focus-active-indicator-height: var(--_text-field-focus-active-indicator-height);--md-filled-field-focus-content-color: var(--_text-field-focus-input-text-color);--md-filled-field-focus-label-text-color: var(--_text-field-focus-label-text-color);--md-filled-field-focus-leading-content-color: var(--_text-field-focus-leading-icon-color);--md-filled-field-focus-supporting-text-color: var(--_text-field-focus-supporting-text-color);--md-filled-field-focus-trailing-content-color: var(--_text-field-focus-trailing-icon-color);--md-filled-field-hover-active-indicator-color: var(--_text-field-hover-active-indicator-color);--md-filled-field-hover-active-indicator-height: var(--_text-field-hover-active-indicator-height);--md-filled-field-hover-content-color: var(--_text-field-hover-input-text-color);--md-filled-field-hover-label-text-color: var(--_text-field-hover-label-text-color);--md-filled-field-hover-leading-content-color: var(--_text-field-hover-leading-icon-color);--md-filled-field-hover-state-layer-color: var(--_text-field-hover-state-layer-color);--md-filled-field-hover-state-layer-opacity: var(--_text-field-hover-state-layer-opacity);--md-filled-field-hover-supporting-text-color: var(--_text-field-hover-supporting-text-color);--md-filled-field-hover-trailing-content-color: var(--_text-field-hover-trailing-icon-color);--md-filled-field-label-text-color: var(--_text-field-label-text-color);--md-filled-field-label-text-font: var(--_text-field-label-text-font);--md-filled-field-label-text-line-height: var(--_text-field-label-text-line-height);--md-filled-field-label-text-populated-line-height: var(--_text-field-label-text-populated-line-height);--md-filled-field-label-text-populated-size: var(--_text-field-label-text-populated-size);--md-filled-field-label-text-size: var(--_text-field-label-text-size);--md-filled-field-label-text-weight: var(--_text-field-label-text-weight);--md-filled-field-leading-content-color: var(--_text-field-leading-icon-color);--md-filled-field-supporting-text-color: var(--_text-field-supporting-text-color);--md-filled-field-supporting-text-font: var(--_text-field-supporting-text-font);--md-filled-field-supporting-text-line-height: var(--_text-field-supporting-text-line-height);--md-filled-field-supporting-text-size: var(--_text-field-supporting-text-size);--md-filled-field-supporting-text-weight: var(--_text-field-supporting-text-weight);--md-filled-field-trailing-content-color: var(--_text-field-trailing-icon-color)}[has-start] .icon.leading{font-size:var(--_text-field-leading-icon-size);height:var(--_text-field-leading-icon-size);width:var(--_text-field-leading-icon-size)}.icon.trailing{font-size:var(--_text-field-trailing-icon-size);height:var(--_text-field-trailing-icon-size);width:var(--_text-field-trailing-icon-size)} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const sa=x`:host{color:unset;min-width:210px;display:flex}.field{cursor:default;outline:none}.select{position:relative;flex-direction:column}.icon.trailing svg,.icon ::slotted(*){fill:currentColor}.icon ::slotted(*){width:inherit;height:inherit;font-size:inherit}.icon slot{display:flex;height:100%;width:100%;align-items:center;justify-content:center}.icon.trailing :is(.up,.down){opacity:0;transition:opacity 75ms linear 75ms}.select:not(.open) .down,.select.open .up{opacity:1}.field,.select,md-menu{min-width:inherit;width:inherit;max-width:inherit;display:flex}md-menu{min-width:var(--__menu-min-width);max-width:var(--__menu-max-width, inherit)}.menu-wrapper{width:0px;height:0px;max-width:inherit}md-menu ::slotted(:not[disabled]){cursor:pointer}.field,.select{width:100%}:host{display:inline-flex}:host([disabled]){pointer-events:none} + */const an=_`:host{color:unset;min-width:210px;display:flex}.field{cursor:default;outline:none}.select{position:relative;flex-direction:column}.icon.trailing svg,.icon ::slotted(*){fill:currentColor}.icon ::slotted(*){width:inherit;height:inherit;font-size:inherit}.icon slot{display:flex;height:100%;width:100%;align-items:center;justify-content:center}.icon.trailing :is(.up,.down){opacity:0;transition:opacity 75ms linear 75ms}.select:not(.open) .down,.select.open .up{opacity:1}.field,.select,md-menu{min-width:inherit;width:inherit;max-width:inherit;display:flex}md-menu{min-width:var(--__menu-min-width);max-width:var(--__menu-max-width, inherit)}.menu-wrapper{width:0px;height:0px;max-width:inherit}md-menu ::slotted(:not[disabled]){cursor:pointer}.field,.select{width:100%}:host{display:inline-flex}:host([disabled]){pointer-events:none} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let xo=class extends Zs{};xo.styles=[sa,Qs];xo=n([w("md-filled-select")],xo);/** + */let Qr=class extends Xs{};Qr.styles=[an,Ys];Qr=l([S("md-filled-select")],Qr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Js extends P{constructor(){super(...arguments),this.fieldTag=ae`md-outlined-field`}}/** + */class Zs extends N{constructor(){super(...arguments),this.fieldTag=le`md-outlined-field`}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const el=x`:host{--_text-field-disabled-input-text-color: var(--md-outlined-select-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-input-text-opacity: var(--md-outlined-select-text-field-disabled-input-text-opacity, 0.38);--_text-field-disabled-label-text-color: var(--md-outlined-select-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-label-text-opacity: var(--md-outlined-select-text-field-disabled-label-text-opacity, 0.38);--_text-field-disabled-leading-icon-color: var(--md-outlined-select-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-leading-icon-opacity: var(--md-outlined-select-text-field-disabled-leading-icon-opacity, 0.38);--_text-field-disabled-outline-color: var(--md-outlined-select-text-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-outline-opacity: var(--md-outlined-select-text-field-disabled-outline-opacity, 0.12);--_text-field-disabled-outline-width: var(--md-outlined-select-text-field-disabled-outline-width, 1px);--_text-field-disabled-supporting-text-color: var(--md-outlined-select-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-supporting-text-opacity: var(--md-outlined-select-text-field-disabled-supporting-text-opacity, 0.38);--_text-field-disabled-trailing-icon-color: var(--md-outlined-select-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-trailing-icon-opacity: var(--md-outlined-select-text-field-disabled-trailing-icon-opacity, 0.38);--_text-field-error-focus-input-text-color: var(--md-outlined-select-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-focus-label-text-color: var(--md-outlined-select-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-leading-icon-color: var(--md-outlined-select-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-focus-outline-color: var(--md-outlined-select-text-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-supporting-text-color: var(--md-outlined-select-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-trailing-icon-color: var(--md-outlined-select-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-input-text-color: var(--md-outlined-select-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-label-text-color: var(--md-outlined-select-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-leading-icon-color: var(--md-outlined-select-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-hover-outline-color: var(--md-outlined-select-text-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-supporting-text-color: var(--md-outlined-select-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-trailing-icon-color: var(--md-outlined-select-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-input-text-color: var(--md-outlined-select-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-label-text-color: var(--md-outlined-select-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-leading-icon-color: var(--md-outlined-select-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-outline-color: var(--md-outlined-select-text-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_text-field-error-supporting-text-color: var(--md-outlined-select-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-trailing-icon-color: var(--md-outlined-select-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-focus-input-text-color: var(--md-outlined-select-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-focus-label-text-color: var(--md-outlined-select-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-leading-icon-color: var(--md-outlined-select-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-outline-color: var(--md-outlined-select-text-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-outline-width: var(--md-outlined-select-text-field-focus-outline-width, 3px);--_text-field-focus-supporting-text-color: var(--md-outlined-select-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-trailing-icon-color: var(--md-outlined-select-text-field-focus-trailing-icon-color, var(--md-sys-color-primary, #6750a4));--_text-field-hover-input-text-color: var(--md-outlined-select-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-label-text-color: var(--md-outlined-select-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-leading-icon-color: var(--md-outlined-select-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-outline-color: var(--md-outlined-select-text-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-outline-width: var(--md-outlined-select-text-field-hover-outline-width, 1px);--_text-field-hover-supporting-text-color: var(--md-outlined-select-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-trailing-icon-color: var(--md-outlined-select-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-input-text-color: var(--md-outlined-select-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-input-text-font: var(--md-outlined-select-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-input-text-line-height: var(--md-outlined-select-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-input-text-size: var(--md-outlined-select-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-input-text-weight: var(--md-outlined-select-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-label-text-color: var(--md-outlined-select-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-label-text-font: var(--md-outlined-select-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-label-text-line-height: var(--md-outlined-select-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-label-text-populated-line-height: var(--md-outlined-select-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-label-text-populated-size: var(--md-outlined-select-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-label-text-size: var(--md-outlined-select-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-label-text-weight: var(--md-outlined-select-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-leading-icon-color: var(--md-outlined-select-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-leading-icon-size: var(--md-outlined-select-text-field-leading-icon-size, 24px);--_text-field-outline-color: var(--md-outlined-select-text-field-outline-color, var(--md-sys-color-outline, #79747e));--_text-field-outline-width: var(--md-outlined-select-text-field-outline-width, 1px);--_text-field-supporting-text-color: var(--md-outlined-select-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-supporting-text-font: var(--md-outlined-select-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-supporting-text-line-height: var(--md-outlined-select-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-supporting-text-size: var(--md-outlined-select-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-supporting-text-weight: var(--md-outlined-select-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-trailing-icon-color: var(--md-outlined-select-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-trailing-icon-size: var(--md-outlined-select-text-field-trailing-icon-size, 24px);--_text-field-container-shape-start-start: var(--md-outlined-select-text-field-container-shape-start-start, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-start-end: var(--md-outlined-select-text-field-container-shape-start-end, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-end: var(--md-outlined-select-text-field-container-shape-end-end, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-start: var(--md-outlined-select-text-field-container-shape-end-start, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--md-outlined-field-container-shape-end-end: var(--_text-field-container-shape-end-end);--md-outlined-field-container-shape-end-start: var(--_text-field-container-shape-end-start);--md-outlined-field-container-shape-start-end: var(--_text-field-container-shape-start-end);--md-outlined-field-container-shape-start-start: var(--_text-field-container-shape-start-start);--md-outlined-field-content-color: var(--_text-field-input-text-color);--md-outlined-field-content-font: var(--_text-field-input-text-font);--md-outlined-field-content-line-height: var(--_text-field-input-text-line-height);--md-outlined-field-content-size: var(--_text-field-input-text-size);--md-outlined-field-content-weight: var(--_text-field-input-text-weight);--md-outlined-field-disabled-content-color: var(--_text-field-disabled-input-text-color);--md-outlined-field-disabled-content-opacity: var(--_text-field-disabled-input-text-opacity);--md-outlined-field-disabled-label-text-color: var(--_text-field-disabled-label-text-color);--md-outlined-field-disabled-label-text-opacity: var(--_text-field-disabled-label-text-opacity);--md-outlined-field-disabled-leading-content-color: var(--_text-field-disabled-leading-icon-color);--md-outlined-field-disabled-leading-content-opacity: var(--_text-field-disabled-leading-icon-opacity);--md-outlined-field-disabled-outline-color: var(--_text-field-disabled-outline-color);--md-outlined-field-disabled-outline-opacity: var(--_text-field-disabled-outline-opacity);--md-outlined-field-disabled-outline-width: var(--_text-field-disabled-outline-width);--md-outlined-field-disabled-supporting-text-color: var(--_text-field-disabled-supporting-text-color);--md-outlined-field-disabled-supporting-text-opacity: var(--_text-field-disabled-supporting-text-opacity);--md-outlined-field-disabled-trailing-content-color: var(--_text-field-disabled-trailing-icon-color);--md-outlined-field-disabled-trailing-content-opacity: var(--_text-field-disabled-trailing-icon-opacity);--md-outlined-field-error-content-color: var(--_text-field-error-input-text-color);--md-outlined-field-error-focus-content-color: var(--_text-field-error-focus-input-text-color);--md-outlined-field-error-focus-label-text-color: var(--_text-field-error-focus-label-text-color);--md-outlined-field-error-focus-leading-content-color: var(--_text-field-error-focus-leading-icon-color);--md-outlined-field-error-focus-outline-color: var(--_text-field-error-focus-outline-color);--md-outlined-field-error-focus-supporting-text-color: var(--_text-field-error-focus-supporting-text-color);--md-outlined-field-error-focus-trailing-content-color: var(--_text-field-error-focus-trailing-icon-color);--md-outlined-field-error-hover-content-color: var(--_text-field-error-hover-input-text-color);--md-outlined-field-error-hover-label-text-color: var(--_text-field-error-hover-label-text-color);--md-outlined-field-error-hover-leading-content-color: var(--_text-field-error-hover-leading-icon-color);--md-outlined-field-error-hover-outline-color: var(--_text-field-error-hover-outline-color);--md-outlined-field-error-hover-supporting-text-color: var(--_text-field-error-hover-supporting-text-color);--md-outlined-field-error-hover-trailing-content-color: var(--_text-field-error-hover-trailing-icon-color);--md-outlined-field-error-label-text-color: var(--_text-field-error-label-text-color);--md-outlined-field-error-leading-content-color: var(--_text-field-error-leading-icon-color);--md-outlined-field-error-outline-color: var(--_text-field-error-outline-color);--md-outlined-field-error-supporting-text-color: var(--_text-field-error-supporting-text-color);--md-outlined-field-error-trailing-content-color: var(--_text-field-error-trailing-icon-color);--md-outlined-field-focus-content-color: var(--_text-field-focus-input-text-color);--md-outlined-field-focus-label-text-color: var(--_text-field-focus-label-text-color);--md-outlined-field-focus-leading-content-color: var(--_text-field-focus-leading-icon-color);--md-outlined-field-focus-outline-color: var(--_text-field-focus-outline-color);--md-outlined-field-focus-outline-width: var(--_text-field-focus-outline-width);--md-outlined-field-focus-supporting-text-color: var(--_text-field-focus-supporting-text-color);--md-outlined-field-focus-trailing-content-color: var(--_text-field-focus-trailing-icon-color);--md-outlined-field-hover-content-color: var(--_text-field-hover-input-text-color);--md-outlined-field-hover-label-text-color: var(--_text-field-hover-label-text-color);--md-outlined-field-hover-leading-content-color: var(--_text-field-hover-leading-icon-color);--md-outlined-field-hover-outline-color: var(--_text-field-hover-outline-color);--md-outlined-field-hover-outline-width: var(--_text-field-hover-outline-width);--md-outlined-field-hover-supporting-text-color: var(--_text-field-hover-supporting-text-color);--md-outlined-field-hover-trailing-content-color: var(--_text-field-hover-trailing-icon-color);--md-outlined-field-label-text-color: var(--_text-field-label-text-color);--md-outlined-field-label-text-font: var(--_text-field-label-text-font);--md-outlined-field-label-text-line-height: var(--_text-field-label-text-line-height);--md-outlined-field-label-text-populated-line-height: var(--_text-field-label-text-populated-line-height);--md-outlined-field-label-text-populated-size: var(--_text-field-label-text-populated-size);--md-outlined-field-label-text-size: var(--_text-field-label-text-size);--md-outlined-field-label-text-weight: var(--_text-field-label-text-weight);--md-outlined-field-leading-content-color: var(--_text-field-leading-icon-color);--md-outlined-field-outline-color: var(--_text-field-outline-color);--md-outlined-field-outline-width: var(--_text-field-outline-width);--md-outlined-field-supporting-text-color: var(--_text-field-supporting-text-color);--md-outlined-field-supporting-text-font: var(--_text-field-supporting-text-font);--md-outlined-field-supporting-text-line-height: var(--_text-field-supporting-text-line-height);--md-outlined-field-supporting-text-size: var(--_text-field-supporting-text-size);--md-outlined-field-supporting-text-weight: var(--_text-field-supporting-text-weight);--md-outlined-field-trailing-content-color: var(--_text-field-trailing-icon-color)}[has-start] .icon.leading{font-size:var(--_text-field-leading-icon-size);height:var(--_text-field-leading-icon-size);width:var(--_text-field-leading-icon-size)}.icon.trailing{font-size:var(--_text-field-trailing-icon-size);height:var(--_text-field-trailing-icon-size);width:var(--_text-field-trailing-icon-size)} + */const Qs=_`:host{--_text-field-disabled-input-text-color: var(--md-outlined-select-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-input-text-opacity: var(--md-outlined-select-text-field-disabled-input-text-opacity, 0.38);--_text-field-disabled-label-text-color: var(--md-outlined-select-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-label-text-opacity: var(--md-outlined-select-text-field-disabled-label-text-opacity, 0.38);--_text-field-disabled-leading-icon-color: var(--md-outlined-select-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-leading-icon-opacity: var(--md-outlined-select-text-field-disabled-leading-icon-opacity, 0.38);--_text-field-disabled-outline-color: var(--md-outlined-select-text-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-outline-opacity: var(--md-outlined-select-text-field-disabled-outline-opacity, 0.12);--_text-field-disabled-outline-width: var(--md-outlined-select-text-field-disabled-outline-width, 1px);--_text-field-disabled-supporting-text-color: var(--md-outlined-select-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-supporting-text-opacity: var(--md-outlined-select-text-field-disabled-supporting-text-opacity, 0.38);--_text-field-disabled-trailing-icon-color: var(--md-outlined-select-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-disabled-trailing-icon-opacity: var(--md-outlined-select-text-field-disabled-trailing-icon-opacity, 0.38);--_text-field-error-focus-input-text-color: var(--md-outlined-select-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-focus-label-text-color: var(--md-outlined-select-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-leading-icon-color: var(--md-outlined-select-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-focus-outline-color: var(--md-outlined-select-text-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-supporting-text-color: var(--md-outlined-select-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-focus-trailing-icon-color: var(--md-outlined-select-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-input-text-color: var(--md-outlined-select-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-hover-label-text-color: var(--md-outlined-select-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-leading-icon-color: var(--md-outlined-select-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-hover-outline-color: var(--md-outlined-select-text-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-hover-supporting-text-color: var(--md-outlined-select-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-hover-trailing-icon-color: var(--md-outlined-select-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_text-field-error-input-text-color: var(--md-outlined-select-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-error-label-text-color: var(--md-outlined-select-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-leading-icon-color: var(--md-outlined-select-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-error-outline-color: var(--md-outlined-select-text-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_text-field-error-supporting-text-color: var(--md-outlined-select-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_text-field-error-trailing-icon-color: var(--md-outlined-select-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_text-field-focus-input-text-color: var(--md-outlined-select-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-focus-label-text-color: var(--md-outlined-select-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-leading-icon-color: var(--md-outlined-select-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-outline-color: var(--md-outlined-select-text-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_text-field-focus-outline-width: var(--md-outlined-select-text-field-focus-outline-width, 3px);--_text-field-focus-supporting-text-color: var(--md-outlined-select-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-focus-trailing-icon-color: var(--md-outlined-select-text-field-focus-trailing-icon-color, var(--md-sys-color-primary, #6750a4));--_text-field-hover-input-text-color: var(--md-outlined-select-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-label-text-color: var(--md-outlined-select-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-leading-icon-color: var(--md-outlined-select-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-outline-color: var(--md-outlined-select-text-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-hover-outline-width: var(--md-outlined-select-text-field-hover-outline-width, 1px);--_text-field-hover-supporting-text-color: var(--md-outlined-select-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-hover-trailing-icon-color: var(--md-outlined-select-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-input-text-color: var(--md-outlined-select-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_text-field-input-text-font: var(--md-outlined-select-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-input-text-line-height: var(--md-outlined-select-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-input-text-size: var(--md-outlined-select-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-input-text-weight: var(--md-outlined-select-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-label-text-color: var(--md-outlined-select-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-label-text-font: var(--md-outlined-select-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-label-text-line-height: var(--md-outlined-select-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_text-field-label-text-populated-line-height: var(--md-outlined-select-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-label-text-populated-size: var(--md-outlined-select-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-label-text-size: var(--md-outlined-select-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_text-field-label-text-weight: var(--md-outlined-select-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-leading-icon-color: var(--md-outlined-select-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-leading-icon-size: var(--md-outlined-select-text-field-leading-icon-size, 24px);--_text-field-outline-color: var(--md-outlined-select-text-field-outline-color, var(--md-sys-color-outline, #79747e));--_text-field-outline-width: var(--md-outlined-select-text-field-outline-width, 1px);--_text-field-supporting-text-color: var(--md-outlined-select-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-supporting-text-font: var(--md-outlined-select-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_text-field-supporting-text-line-height: var(--md-outlined-select-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_text-field-supporting-text-size: var(--md-outlined-select-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_text-field-supporting-text-weight: var(--md-outlined-select-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_text-field-trailing-icon-color: var(--md-outlined-select-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_text-field-trailing-icon-size: var(--md-outlined-select-text-field-trailing-icon-size, 24px);--_text-field-container-shape-start-start: var(--md-outlined-select-text-field-container-shape-start-start, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-start-end: var(--md-outlined-select-text-field-container-shape-start-end, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-end: var(--md-outlined-select-text-field-container-shape-end-end, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_text-field-container-shape-end-start: var(--md-outlined-select-text-field-container-shape-end-start, var(--md-outlined-select-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--md-outlined-field-container-shape-end-end: var(--_text-field-container-shape-end-end);--md-outlined-field-container-shape-end-start: var(--_text-field-container-shape-end-start);--md-outlined-field-container-shape-start-end: var(--_text-field-container-shape-start-end);--md-outlined-field-container-shape-start-start: var(--_text-field-container-shape-start-start);--md-outlined-field-content-color: var(--_text-field-input-text-color);--md-outlined-field-content-font: var(--_text-field-input-text-font);--md-outlined-field-content-line-height: var(--_text-field-input-text-line-height);--md-outlined-field-content-size: var(--_text-field-input-text-size);--md-outlined-field-content-weight: var(--_text-field-input-text-weight);--md-outlined-field-disabled-content-color: var(--_text-field-disabled-input-text-color);--md-outlined-field-disabled-content-opacity: var(--_text-field-disabled-input-text-opacity);--md-outlined-field-disabled-label-text-color: var(--_text-field-disabled-label-text-color);--md-outlined-field-disabled-label-text-opacity: var(--_text-field-disabled-label-text-opacity);--md-outlined-field-disabled-leading-content-color: var(--_text-field-disabled-leading-icon-color);--md-outlined-field-disabled-leading-content-opacity: var(--_text-field-disabled-leading-icon-opacity);--md-outlined-field-disabled-outline-color: var(--_text-field-disabled-outline-color);--md-outlined-field-disabled-outline-opacity: var(--_text-field-disabled-outline-opacity);--md-outlined-field-disabled-outline-width: var(--_text-field-disabled-outline-width);--md-outlined-field-disabled-supporting-text-color: var(--_text-field-disabled-supporting-text-color);--md-outlined-field-disabled-supporting-text-opacity: var(--_text-field-disabled-supporting-text-opacity);--md-outlined-field-disabled-trailing-content-color: var(--_text-field-disabled-trailing-icon-color);--md-outlined-field-disabled-trailing-content-opacity: var(--_text-field-disabled-trailing-icon-opacity);--md-outlined-field-error-content-color: var(--_text-field-error-input-text-color);--md-outlined-field-error-focus-content-color: var(--_text-field-error-focus-input-text-color);--md-outlined-field-error-focus-label-text-color: var(--_text-field-error-focus-label-text-color);--md-outlined-field-error-focus-leading-content-color: var(--_text-field-error-focus-leading-icon-color);--md-outlined-field-error-focus-outline-color: var(--_text-field-error-focus-outline-color);--md-outlined-field-error-focus-supporting-text-color: var(--_text-field-error-focus-supporting-text-color);--md-outlined-field-error-focus-trailing-content-color: var(--_text-field-error-focus-trailing-icon-color);--md-outlined-field-error-hover-content-color: var(--_text-field-error-hover-input-text-color);--md-outlined-field-error-hover-label-text-color: var(--_text-field-error-hover-label-text-color);--md-outlined-field-error-hover-leading-content-color: var(--_text-field-error-hover-leading-icon-color);--md-outlined-field-error-hover-outline-color: var(--_text-field-error-hover-outline-color);--md-outlined-field-error-hover-supporting-text-color: var(--_text-field-error-hover-supporting-text-color);--md-outlined-field-error-hover-trailing-content-color: var(--_text-field-error-hover-trailing-icon-color);--md-outlined-field-error-label-text-color: var(--_text-field-error-label-text-color);--md-outlined-field-error-leading-content-color: var(--_text-field-error-leading-icon-color);--md-outlined-field-error-outline-color: var(--_text-field-error-outline-color);--md-outlined-field-error-supporting-text-color: var(--_text-field-error-supporting-text-color);--md-outlined-field-error-trailing-content-color: var(--_text-field-error-trailing-icon-color);--md-outlined-field-focus-content-color: var(--_text-field-focus-input-text-color);--md-outlined-field-focus-label-text-color: var(--_text-field-focus-label-text-color);--md-outlined-field-focus-leading-content-color: var(--_text-field-focus-leading-icon-color);--md-outlined-field-focus-outline-color: var(--_text-field-focus-outline-color);--md-outlined-field-focus-outline-width: var(--_text-field-focus-outline-width);--md-outlined-field-focus-supporting-text-color: var(--_text-field-focus-supporting-text-color);--md-outlined-field-focus-trailing-content-color: var(--_text-field-focus-trailing-icon-color);--md-outlined-field-hover-content-color: var(--_text-field-hover-input-text-color);--md-outlined-field-hover-label-text-color: var(--_text-field-hover-label-text-color);--md-outlined-field-hover-leading-content-color: var(--_text-field-hover-leading-icon-color);--md-outlined-field-hover-outline-color: var(--_text-field-hover-outline-color);--md-outlined-field-hover-outline-width: var(--_text-field-hover-outline-width);--md-outlined-field-hover-supporting-text-color: var(--_text-field-hover-supporting-text-color);--md-outlined-field-hover-trailing-content-color: var(--_text-field-hover-trailing-icon-color);--md-outlined-field-label-text-color: var(--_text-field-label-text-color);--md-outlined-field-label-text-font: var(--_text-field-label-text-font);--md-outlined-field-label-text-line-height: var(--_text-field-label-text-line-height);--md-outlined-field-label-text-populated-line-height: var(--_text-field-label-text-populated-line-height);--md-outlined-field-label-text-populated-size: var(--_text-field-label-text-populated-size);--md-outlined-field-label-text-size: var(--_text-field-label-text-size);--md-outlined-field-label-text-weight: var(--_text-field-label-text-weight);--md-outlined-field-leading-content-color: var(--_text-field-leading-icon-color);--md-outlined-field-outline-color: var(--_text-field-outline-color);--md-outlined-field-outline-width: var(--_text-field-outline-width);--md-outlined-field-supporting-text-color: var(--_text-field-supporting-text-color);--md-outlined-field-supporting-text-font: var(--_text-field-supporting-text-font);--md-outlined-field-supporting-text-line-height: var(--_text-field-supporting-text-line-height);--md-outlined-field-supporting-text-size: var(--_text-field-supporting-text-size);--md-outlined-field-supporting-text-weight: var(--_text-field-supporting-text-weight);--md-outlined-field-trailing-content-color: var(--_text-field-trailing-icon-color)}[has-start] .icon.leading{font-size:var(--_text-field-leading-icon-size);height:var(--_text-field-leading-icon-size);width:var(--_text-field-leading-icon-size)}.icon.trailing{font-size:var(--_text-field-trailing-icon-size);height:var(--_text-field-trailing-icon-size);width:var(--_text-field-trailing-icon-size)} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let _o=class extends Js{};_o.styles=[sa,el];_o=n([w("md-outlined-select")],_o);/** + */let Jr=class extends Zs{};Jr.styles=[an,Qs];Jr=l([S("md-outlined-select")],Jr);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */function tl(){return new Event("request-selection",{bubbles:!0,composed:!0})}function rl(){return new Event("request-deselection",{bubbles:!0,composed:!0})}class ol{get role(){return this.menuItemController.role}get typeaheadText(){return this.menuItemController.typeaheadText}setTypeaheadText(e){this.menuItemController.setTypeaheadText(e)}get displayText(){return this.internalDisplayText!==null?this.internalDisplayText:this.menuItemController.typeaheadText}setDisplayText(e){this.internalDisplayText=e}constructor(e,t){this.host=e,this.internalDisplayText=null,this.firstUpdate=!0,this.onClick=()=>{this.menuItemController.onClick()},this.onKeydown=r=>{this.menuItemController.onKeydown(r)},this.lastSelected=this.host.selected,this.menuItemController=new ra(e,t),e.addController(this)}hostUpdate(){this.lastSelected!==this.host.selected&&(this.host.ariaSelected=this.host.selected?"true":"false")}hostUpdated(){this.lastSelected!==this.host.selected&&!this.firstUpdate&&(this.host.selected?this.host.dispatchEvent(tl()):this.host.dispatchEvent(rl())),this.lastSelected=this.host.selected,this.firstUpdate=!1}}/** + */function Js(){return new Event("request-selection",{bubbles:!0,composed:!0})}function ed(){return new Event("request-deselection",{bubbles:!0,composed:!0})}class td{get role(){return this.menuItemController.role}get typeaheadText(){return this.menuItemController.typeaheadText}setTypeaheadText(e){this.menuItemController.setTypeaheadText(e)}get displayText(){return this.internalDisplayText!==null?this.internalDisplayText:this.menuItemController.typeaheadText}setDisplayText(e){this.internalDisplayText=e}constructor(e,t){this.host=e,this.internalDisplayText=null,this.firstUpdate=!0,this.onClick=()=>{this.menuItemController.onClick()},this.onKeydown=o=>{this.menuItemController.onKeydown(o)},this.lastSelected=this.host.selected,this.menuItemController=new Ja(e,t),e.addController(this)}hostUpdate(){this.lastSelected!==this.host.selected&&(this.host.ariaSelected=this.host.selected?"true":"false")}hostUpdated(){this.lastSelected!==this.host.selected&&!this.firstUpdate&&(this.host.selected?this.host.dispatchEvent(Js()):this.host.dispatchEvent(ed())),this.lastSelected=this.host.selected,this.firstUpdate=!1}}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const il=ne(C);class ge extends il{constructor(){super(...arguments),this.disabled=!1,this.isMenuItem=!0,this.selected=!1,this.value="",this.type="option",this.selectOptionController=new ol(this,{getHeadlineElements:()=>this.headlineElements,getSupportingTextElements:()=>this.supportingTextElements,getDefaultElements:()=>this.defaultElements,getInteractiveElement:()=>this.listItemRoot})}get typeaheadText(){return this.selectOptionController.typeaheadText}set typeaheadText(e){this.selectOptionController.setTypeaheadText(e)}get displayText(){return this.selectOptionController.displayText}set displayText(e){this.selectOptionController.setDisplayText(e)}render(){return this.renderListItem(p` + */const od=se($);class ye extends od{constructor(){super(...arguments),this.disabled=!1,this.isMenuItem=!0,this.selected=!1,this.value="",this.type="option",this.selectOptionController=new td(this,{getHeadlineElements:()=>this.headlineElements,getSupportingTextElements:()=>this.supportingTextElements,getDefaultElements:()=>this.defaultElements,getInteractiveElement:()=>this.listItemRoot})}get typeaheadText(){return this.selectOptionController.typeaheadText}set typeaheadText(e){this.selectOptionController.setTypeaheadText(e)}get displayText(){return this.selectOptionController.displayText}set displayText(e){this.selectOptionController.setDisplayText(e)}render(){return this.renderListItem(m`
${this.renderRipple()} ${this.renderFocusRing()} @@ -1298,28 +1298,28 @@ ${this.renderBody()} - `)}renderListItem(e){return p` + `)}renderListItem(e){return m`
  • ${e}
  • - `}renderRipple(){return p` `}renderFocusRing(){return p` `}renderFocusRing(){return m` `}getRenderClasses(){return{disabled:this.disabled,selected:this.selected}}renderBody(){return p` + inward>`}getRenderClasses(){return{disabled:this.disabled,selected:this.selected}}renderBody(){return m` @@ -1327,53 +1327,53 @@ - `}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}ge.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],ge.prototype,"disabled",void 0);n([l({type:Boolean,attribute:"md-menu-item",reflect:!0})],ge.prototype,"isMenuItem",void 0);n([l({type:Boolean})],ge.prototype,"selected",void 0);n([l()],ge.prototype,"value",void 0);n([E(".list-item")],ge.prototype,"listItemRoot",void 0);n([ee({slot:"headline"})],ge.prototype,"headlineElements",void 0);n([ee({slot:"supporting-text"})],ge.prototype,"supportingTextElements",void 0);n([Mo({slot:""})],ge.prototype,"defaultElements",void 0);n([l({attribute:"typeahead-text"})],ge.prototype,"typeaheadText",null);n([l({attribute:"display-text"})],ge.prototype,"displayText",null);/** + `}focus(){var e;(e=this.listItemRoot)==null||e.focus()}}ye.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],ye.prototype,"disabled",void 0);l([c({type:Boolean,attribute:"md-menu-item",reflect:!0})],ye.prototype,"isMenuItem",void 0);l([c({type:Boolean})],ye.prototype,"selected",void 0);l([c()],ye.prototype,"value",void 0);l([B(".list-item")],ye.prototype,"listItemRoot",void 0);l([oe({slot:"headline"})],ye.prototype,"headlineElements",void 0);l([oe({slot:"supporting-text"})],ye.prototype,"supportingTextElements",void 0);l([vi({slot:""})],ye.prototype,"defaultElements",void 0);l([c({attribute:"typeahead-text"})],ye.prototype,"typeaheadText",null);l([c({attribute:"display-text"})],ye.prototype,"displayText",null);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let wo=class extends ge{};wo.styles=[oa];wo=n([w("md-select-option")],wo);/** + */let ei=class extends ye{};ei.styles=[en];ei=l([S("md-select-option")],ei);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const al=x`@media(forced-colors: active){:host{--md-slider-active-track-color: CanvasText;--md-slider-disabled-active-track-color: GrayText;--md-slider-disabled-active-track-opacity: 1;--md-slider-disabled-handle-color: GrayText;--md-slider-disabled-inactive-track-color: GrayText;--md-slider-disabled-inactive-track-opacity: 1;--md-slider-focus-handle-color: CanvasText;--md-slider-handle-color: CanvasText;--md-slider-handle-shadow-color: Canvas;--md-slider-hover-handle-color: CanvasText;--md-slider-hover-state-layer-color: Canvas;--md-slider-hover-state-layer-opacity: 1;--md-slider-inactive-track-color: Canvas;--md-slider-label-container-color: Canvas;--md-slider-label-text-color: CanvasText;--md-slider-pressed-handle-color: CanvasText;--md-slider-pressed-state-layer-color: Canvas;--md-slider-pressed-state-layer-opacity: 1;--md-slider-with-overlap-handle-outline-color: CanvasText}.label,.label::before{border:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}:host(:not([disabled])) .track::before{border:1px solid var(--_active-track-color)}.tickmarks::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='CanvasText'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}.tickmarks::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='Canvas'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}:host([disabled]) .tickmarks::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='Canvas'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}} + */const rd=_`@media(forced-colors: active){:host{--md-slider-active-track-color: CanvasText;--md-slider-disabled-active-track-color: GrayText;--md-slider-disabled-active-track-opacity: 1;--md-slider-disabled-handle-color: GrayText;--md-slider-disabled-inactive-track-color: GrayText;--md-slider-disabled-inactive-track-opacity: 1;--md-slider-focus-handle-color: CanvasText;--md-slider-handle-color: CanvasText;--md-slider-handle-shadow-color: Canvas;--md-slider-hover-handle-color: CanvasText;--md-slider-hover-state-layer-color: Canvas;--md-slider-hover-state-layer-opacity: 1;--md-slider-inactive-track-color: Canvas;--md-slider-label-container-color: Canvas;--md-slider-label-text-color: CanvasText;--md-slider-pressed-handle-color: CanvasText;--md-slider-pressed-state-layer-color: Canvas;--md-slider-pressed-state-layer-opacity: 1;--md-slider-with-overlap-handle-outline-color: CanvasText}.label,.label::before{border:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}:host(:not([disabled])) .track::before{border:1px solid var(--_active-track-color)}.tickmarks::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='CanvasText'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}.tickmarks::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='Canvas'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}:host([disabled]) .tickmarks::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='Canvas'%3E%3Ccircle cx='2' cy='2' r='1'/%3E%3C/svg%3E")}} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */function zr(o,e,t){return o?e(o):t==null?void 0:t(o)}/** + */function dr(r,e,t){return r?e(r):t==null?void 0:t(r)}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const nl=ne(ct(qe(C)));class R extends nl{get nameStart(){return this.getAttribute("name-start")??this.name}set nameStart(e){this.setAttribute("name-start",e)}get nameEnd(){return this.getAttribute("name-end")??this.nameStart}set nameEnd(e){this.setAttribute("name-end",e)}get renderAriaLabelStart(){const{ariaLabel:e}=this;return this.ariaLabelStart||e&&`${e} start`||this.valueLabelStart||String(this.valueStart)}get renderAriaValueTextStart(){return this.ariaValueTextStart||this.valueLabelStart||String(this.valueStart)}get renderAriaLabelEnd(){const{ariaLabel:e}=this;return this.range?this.ariaLabelEnd||e&&`${e} end`||this.valueLabelEnd||String(this.valueEnd):e||this.valueLabel||String(this.value)}get renderAriaValueTextEnd(){if(this.range)return this.ariaValueTextEnd||this.valueLabelEnd||String(this.valueEnd);const{ariaValueText:e}=this;return e||this.valueLabel||String(this.value)}constructor(){super(),this.min=0,this.max=100,this.valueLabel="",this.valueLabelStart="",this.valueLabelEnd="",this.ariaLabelStart="",this.ariaValueTextStart="",this.ariaLabelEnd="",this.ariaValueTextEnd="",this.step=1,this.ticks=!1,this.labeled=!1,this.range=!1,this.handleStartHover=!1,this.handleEndHover=!1,this.startOnTop=!1,this.handlesOverlapping=!1,this.ripplePointerId=1,this.isRedispatchingEvent=!1,this.addEventListener("click",e=>{!Tt(e)||!this.inputEnd||(this.focus(),hr(this.inputEnd))})}focus(){var e;(e=this.inputEnd)==null||e.focus()}willUpdate(e){var r,i;this.renderValueStart=e.has("valueStart")?this.valueStart:(r=this.inputStart)==null?void 0:r.valueAsNumber;const t=e.has("valueEnd")&&this.range||e.has("value");this.renderValueEnd=t?this.range?this.valueEnd:this.value:(i=this.inputEnd)==null?void 0:i.valueAsNumber,e.get("handleStartHover")!==void 0?this.toggleRippleHover(this.rippleStart,this.handleStartHover):e.get("handleEndHover")!==void 0&&this.toggleRippleHover(this.rippleEnd,this.handleEndHover)}updated(e){var t,r;if(this.range&&(this.renderValueStart=this.inputStart.valueAsNumber),this.renderValueEnd=this.inputEnd.valueAsNumber,this.range){const i=(this.max-this.min)/3;if(this.valueStart===void 0){this.inputStart.valueAsNumber=this.min+i;const a=this.inputStart.valueAsNumber;this.valueStart=this.renderValueStart=a}if(this.valueEnd===void 0){this.inputEnd.valueAsNumber=this.min+2*i;const a=this.inputEnd.valueAsNumber;this.valueEnd=this.renderValueEnd=a}}else this.value??(this.value=this.renderValueEnd);if(e.has("range")||e.has("renderValueStart")||e.has("renderValueEnd")||this.isUpdatePending){const i=(t=this.handleStart)==null?void 0:t.querySelector(".handleNub"),a=(r=this.handleEnd)==null?void 0:r.querySelector(".handleNub");this.handlesOverlapping=sl(i,a)}this.performUpdate()}render(){const e=this.step===0?1:this.step,t=Math.max(this.max-this.min,e),r=this.range?((this.renderValueStart??this.min)-this.min)/t:0,i=((this.renderValueEnd??this.min)-this.min)/t,a={"--_start-fraction":String(r),"--_end-fraction":String(i),"--_tick-count":String(t/e)},s={ranged:this.range},d=this.valueLabelStart||String(this.renderValueStart),c=(this.range?this.valueLabelEnd:this.valueLabel)||String(this.renderValueEnd),f={start:!0,value:this.renderValueStart,ariaLabel:this.renderAriaLabelStart,ariaValueText:this.renderAriaValueTextStart,ariaMin:this.min,ariaMax:this.valueEnd??this.max},v={start:!1,value:this.renderValueEnd,ariaLabel:this.renderAriaLabelEnd,ariaValueText:this.renderAriaValueTextEnd,ariaMin:this.range?this.valueStart??this.min:this.min,ariaMax:this.max},u={start:!0,hover:this.handleStartHover,label:d},m={start:!1,hover:this.handleEndHover,label:c},g={hover:this.handleStartHover||this.handleEndHover};return p`
    - ${zr(this.range,()=>this.renderInput(f))} + */const id=se(yt(Xe($)));class F extends id{get nameStart(){return this.getAttribute("name-start")??this.name}set nameStart(e){this.setAttribute("name-start",e)}get nameEnd(){return this.getAttribute("name-end")??this.nameStart}set nameEnd(e){this.setAttribute("name-end",e)}get renderAriaLabelStart(){const{ariaLabel:e}=this;return this.ariaLabelStart||e&&`${e} start`||this.valueLabelStart||String(this.valueStart)}get renderAriaValueTextStart(){return this.ariaValueTextStart||this.valueLabelStart||String(this.valueStart)}get renderAriaLabelEnd(){const{ariaLabel:e}=this;return this.range?this.ariaLabelEnd||e&&`${e} end`||this.valueLabelEnd||String(this.valueEnd):e||this.valueLabel||String(this.value)}get renderAriaValueTextEnd(){if(this.range)return this.ariaValueTextEnd||this.valueLabelEnd||String(this.valueEnd);const{ariaValueText:e}=this;return e||this.valueLabel||String(this.value)}constructor(){super(),this.min=0,this.max=100,this.valueLabel="",this.valueLabelStart="",this.valueLabelEnd="",this.ariaLabelStart="",this.ariaValueTextStart="",this.ariaLabelEnd="",this.ariaValueTextEnd="",this.step=1,this.ticks=!1,this.labeled=!1,this.range=!1,this.handleStartHover=!1,this.handleEndHover=!1,this.startOnTop=!1,this.handlesOverlapping=!1,this.ripplePointerId=1,this.isRedispatchingEvent=!1,this.addEventListener("click",e=>{!Mt(e)||!this.inputEnd||(this.focus(),Bo(this.inputEnd))})}focus(){var e;(e=this.inputEnd)==null||e.focus()}willUpdate(e){var o,i;this.renderValueStart=e.has("valueStart")?this.valueStart:(o=this.inputStart)==null?void 0:o.valueAsNumber;const t=e.has("valueEnd")&&this.range||e.has("value");this.renderValueEnd=t?this.range?this.valueEnd:this.value:(i=this.inputEnd)==null?void 0:i.valueAsNumber,e.get("handleStartHover")!==void 0?this.toggleRippleHover(this.rippleStart,this.handleStartHover):e.get("handleEndHover")!==void 0&&this.toggleRippleHover(this.rippleEnd,this.handleEndHover)}updated(e){var t,o;if(this.range&&(this.renderValueStart=this.inputStart.valueAsNumber),this.renderValueEnd=this.inputEnd.valueAsNumber,this.range){const i=(this.max-this.min)/3;if(this.valueStart===void 0){this.inputStart.valueAsNumber=this.min+i;const a=this.inputStart.valueAsNumber;this.valueStart=this.renderValueStart=a}if(this.valueEnd===void 0){this.inputEnd.valueAsNumber=this.min+2*i;const a=this.inputEnd.valueAsNumber;this.valueEnd=this.renderValueEnd=a}}else this.value??(this.value=this.renderValueEnd);if(e.has("range")||e.has("renderValueStart")||e.has("renderValueEnd")||this.isUpdatePending){const i=(t=this.handleStart)==null?void 0:t.querySelector(".handleNub"),a=(o=this.handleEnd)==null?void 0:o.querySelector(".handleNub");this.handlesOverlapping=ad(i,a)}this.performUpdate()}render(){const e=this.step===0?1:this.step,t=Math.max(this.max-this.min,e),o=this.range?((this.renderValueStart??this.min)-this.min)/t:0,i=((this.renderValueEnd??this.min)-this.min)/t,a={"--_start-fraction":String(o),"--_end-fraction":String(i),"--_tick-count":String(t/e)},n={ranged:this.range},s=this.valueLabelStart||String(this.renderValueStart),d=(this.range?this.valueLabelEnd:this.valueLabel)||String(this.renderValueEnd),h={start:!0,value:this.renderValueStart,ariaLabel:this.renderAriaLabelStart,ariaValueText:this.renderAriaValueTextStart,ariaMin:this.min,ariaMax:this.valueEnd??this.max},v={start:!1,value:this.renderValueEnd,ariaLabel:this.renderAriaLabelEnd,ariaValueText:this.renderAriaValueTextEnd,ariaMin:this.range?this.valueStart??this.min:this.min,ariaMax:this.max},u={start:!0,hover:this.handleStartHover,label:s},f={start:!1,hover:this.handleEndHover,label:d},y={hover:this.handleStartHover||this.handleEndHover};return m`
    + ${dr(this.range,()=>this.renderInput(h))} ${this.renderInput(v)} ${this.renderTrack()}
    -
    - ${zr(this.range,()=>this.renderHandle(u))} - ${this.renderHandle(m)} +
    + ${dr(this.range,()=>this.renderHandle(u))} + ${this.renderHandle(f)}
    -
    `}renderTrack(){return p` +
    `}renderTrack(){return m`
    - ${this.ticks?p`
    `:h} - `}renderLabel(e){return p``}renderInput({start:e,value:t,ariaLabel:o,ariaValueText:i,ariaMin:a,ariaMax:n}){const s=e?"start":"end";return m``}async toggleRippleHover(e,t){const r=await e;r&&(t?r.handlePointerenter(new PointerEvent("pointerenter",{isPrimary:!0,pointerId:this.ripplePointerId})):r.handlePointerleave(new PointerEvent("pointerleave",{isPrimary:!0,pointerId:this.ripplePointerId})))}handleFocus(e){this.updateOnTop(e.target)}startAction(e){const t=e.target,r=t===this.inputStart?this.inputEnd:this.inputStart;this.action={canFlip:e.type==="pointerdown",flipped:!1,target:t,fixed:r,values:new Map([[t,t.valueAsNumber],[r,r==null?void 0:r.valueAsNumber]])}}finishAction(e){this.action=void 0}handleKeydown(e){this.startAction(e)}handleKeyup(e){this.finishAction(e)}handleDown(e){this.startAction(e),this.ripplePointerId=e.pointerId;const t=e.target===this.inputStart;this.handleStartHover=!this.disabled&&t&&!!this.handleStart,this.handleEndHover=!this.disabled&&!t&&!!this.handleEnd}async handleUp(e){if(!this.action)return;const{target:t,values:r,flipped:i}=this.action;await new Promise(requestAnimationFrame),t!==void 0&&(t.focus(),i&&t.valueAsNumber!==r.get(t)&&t.dispatchEvent(new Event("change",{bubbles:!0}))),this.finishAction(e)}handleMove(e){this.handleStartHover=!this.disabled&&fi(e,this.handleStart),this.handleEndHover=!this.disabled&&fi(e,this.handleEnd)}handleEnter(e){this.handleMove(e)}handleLeave(){this.handleStartHover=!1,this.handleEndHover=!1}updateOnTop(e){this.startOnTop=e.classList.contains("start")}needsClamping(){if(!this.action)return!1;const{target:e,fixed:t}=this.action;return e===this.inputStart?e.valueAsNumber>t.valueAsNumber:e.valueAsNumber=i&&o<=s&&e>=r&&e<=a}function sl(o,e){if(!(o&&e))return!1;const t=o.getBoundingClientRect(),r=e.getBoundingClientRect();return!(t.top>r.bottom||t.rightr.right)}/** + aria-label=${o||p} + aria-valuetext=${i} />`}async toggleRippleHover(e,t){const o=await e;o&&(t?o.handlePointerenter(new PointerEvent("pointerenter",{isPrimary:!0,pointerId:this.ripplePointerId})):o.handlePointerleave(new PointerEvent("pointerleave",{isPrimary:!0,pointerId:this.ripplePointerId})))}handleFocus(e){this.updateOnTop(e.target)}startAction(e){const t=e.target,o=t===this.inputStart?this.inputEnd:this.inputStart;this.action={canFlip:e.type==="pointerdown",flipped:!1,target:t,fixed:o,values:new Map([[t,t.valueAsNumber],[o,o==null?void 0:o.valueAsNumber]])}}finishAction(e){this.action=void 0}handleKeydown(e){this.startAction(e)}handleKeyup(e){this.finishAction(e)}handleDown(e){this.startAction(e),this.ripplePointerId=e.pointerId;const t=e.target===this.inputStart;this.handleStartHover=!this.disabled&&t&&!!this.handleStart,this.handleEndHover=!this.disabled&&!t&&!!this.handleEnd}async handleUp(e){if(!this.action)return;const{target:t,values:o,flipped:i}=this.action;await new Promise(requestAnimationFrame),t!==void 0&&(t.focus(),i&&t.valueAsNumber!==o.get(t)&&t.dispatchEvent(new Event("change",{bubbles:!0}))),this.finishAction(e)}handleMove(e){this.handleStartHover=!this.disabled&&ia(e,this.handleStart),this.handleEndHover=!this.disabled&&ia(e,this.handleEnd)}handleEnter(e){this.handleMove(e)}handleLeave(){this.handleStartHover=!1,this.handleEndHover=!1}updateOnTop(e){this.startOnTop=e.classList.contains("start")}needsClamping(){if(!this.action)return!1;const{target:e,fixed:t}=this.action;return e===this.inputStart?e.valueAsNumber>t.valueAsNumber:e.valueAsNumber=i&&r<=n&&e>=o&&e<=a}function ad(r,e){if(!(r&&e))return!1;const t=r.getBoundingClientRect(),o=e.getBoundingClientRect();return!(t.top>o.bottom||t.righto.right)}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ll=x`:host{--_active-track-color: var(--md-slider-active-track-color, var(--md-sys-color-primary, #6750a4));--_active-track-height: var(--md-slider-active-track-height, 4px);--_active-track-shape: var(--md-slider-active-track-shape, var(--md-sys-shape-corner-full, 9999px));--_disabled-active-track-color: var(--md-slider-disabled-active-track-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-track-opacity: var(--md-slider-disabled-active-track-opacity, 0.38);--_disabled-handle-color: var(--md-slider-disabled-handle-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-handle-elevation: var(--md-slider-disabled-handle-elevation, 0);--_disabled-inactive-track-color: var(--md-slider-disabled-inactive-track-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-inactive-track-opacity: var(--md-slider-disabled-inactive-track-opacity, 0.12);--_focus-handle-color: var(--md-slider-focus-handle-color, var(--md-sys-color-primary, #6750a4));--_handle-color: var(--md-slider-handle-color, var(--md-sys-color-primary, #6750a4));--_handle-elevation: var(--md-slider-handle-elevation, 1);--_handle-height: var(--md-slider-handle-height, 20px);--_handle-shadow-color: var(--md-slider-handle-shadow-color, var(--md-sys-color-shadow, #000));--_handle-shape: var(--md-slider-handle-shape, var(--md-sys-shape-corner-full, 9999px));--_handle-width: var(--md-slider-handle-width, 20px);--_hover-handle-color: var(--md-slider-hover-handle-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-slider-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-slider-hover-state-layer-opacity, 0.08);--_inactive-track-color: var(--md-slider-inactive-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_inactive-track-height: var(--md-slider-inactive-track-height, 4px);--_inactive-track-shape: var(--md-slider-inactive-track-shape, var(--md-sys-shape-corner-full, 9999px));--_label-container-color: var(--md-slider-label-container-color, var(--md-sys-color-primary, #6750a4));--_label-container-height: var(--md-slider-label-container-height, 28px);--_pressed-handle-color: var(--md-slider-pressed-handle-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-slider-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-slider-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-slider-state-layer-size, 40px);--_with-overlap-handle-outline-color: var(--md-slider-with-overlap-handle-outline-color, var(--md-sys-color-on-primary, #fff));--_with-overlap-handle-outline-width: var(--md-slider-with-overlap-handle-outline-width, 1px);--_with-tick-marks-active-container-color: var(--md-slider-with-tick-marks-active-container-color, var(--md-sys-color-on-primary, #fff));--_with-tick-marks-container-size: var(--md-slider-with-tick-marks-container-size, 2px);--_with-tick-marks-disabled-container-color: var(--md-slider-with-tick-marks-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_with-tick-marks-inactive-container-color: var(--md-slider-with-tick-marks-inactive-container-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-slider-label-text-color, var(--md-sys-color-on-primary, #fff));--_label-text-font: var(--md-slider-label-text-font, var(--md-sys-typescale-label-medium-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-slider-label-text-line-height, var(--md-sys-typescale-label-medium-line-height, 1rem));--_label-text-size: var(--md-slider-label-text-size, var(--md-sys-typescale-label-medium-size, 0.75rem));--_label-text-weight: var(--md-slider-label-text-weight, var(--md-sys-typescale-label-medium-weight, var(--md-ref-typeface-weight-medium, 500)));--_start-fraction: 0;--_end-fraction: 0;--_tick-count: 0;display:inline-flex;vertical-align:middle;min-inline-size:200px;--md-elevation-level: var(--_handle-elevation);--md-elevation-shadow-color: var(--_handle-shadow-color)}md-focus-ring{height:48px;inset:unset;width:48px}md-elevation{transition-duration:250ms}@media(prefers-reduced-motion){.label{transition-duration:0}}:host([disabled]){opacity:var(--_disabled-active-track-opacity);--md-elevation-level: var(--_disabled-handle-elevation)}.container{flex:1;display:flex;align-items:center;position:relative;block-size:var(--_state-layer-size);pointer-events:none;touch-action:none}.track,.tickmarks{position:absolute;inset:0;display:flex;align-items:center}.track::before,.tickmarks::before,.track::after,.tickmarks::after{position:absolute;content:"";inset-inline-start:calc(var(--_state-layer-size)/2 - var(--_with-tick-marks-container-size));inset-inline-end:calc(var(--_state-layer-size)/2 - var(--_with-tick-marks-container-size));background-size:calc((100% - var(--_with-tick-marks-container-size)*2)/var(--_tick-count)) 100%}.track::before,.tickmarks::before{block-size:var(--_inactive-track-height);border-radius:var(--_inactive-track-shape)}.track::before{background:var(--_inactive-track-color)}.tickmarks::before{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-inactive-container-color) 0, var(--_with-tick-marks-inactive-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}:host([disabled]) .track::before{opacity:calc(1/var(--_disabled-active-track-opacity)*var(--_disabled-inactive-track-opacity));background:var(--_disabled-inactive-track-color)}.track::after,.tickmarks::after{block-size:var(--_active-track-height);border-radius:var(--_active-track-shape);clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))) 0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)))}.track::after{background:var(--_active-track-color)}.tickmarks::after{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-active-container-color) 0, var(--_with-tick-marks-active-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}.track:dir(rtl)::after{clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)) 0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))))}.tickmarks:dir(rtl)::after{clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)) 0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))))}:host([disabled]) .track::after{background:var(--_disabled-active-track-color)}:host([disabled]) .tickmarks::before{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-disabled-container-color) 0, var(--_with-tick-marks-disabled-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}.handleContainerPadded{position:relative;block-size:100%;inline-size:100%;padding-inline:calc(var(--_state-layer-size)/2)}.handleContainerBlock{position:relative;block-size:100%;inline-size:100%}.handleContainer{position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:calc(100%*var(--_start-fraction));inline-size:calc(100%*(var(--_end-fraction) - var(--_start-fraction)))}.handle{position:absolute;block-size:var(--_state-layer-size);inline-size:var(--_state-layer-size);border-radius:var(--_handle-shape);display:flex;place-content:center;place-items:center}.handleNub{position:absolute;height:var(--_handle-height);width:var(--_handle-width);border-radius:var(--_handle-shape);background:var(--_handle-color)}:host([disabled]) .handleNub{background:var(--_disabled-handle-color)}input.end:focus~.handleContainerPadded .handle.end>.handleNub,input.start:focus~.handleContainerPadded .handle.start>.handleNub{background:var(--_focus-handle-color)}.container>.handleContainerPadded .handle.hover>.handleNub{background:var(--_hover-handle-color)}:host(:not([disabled])) input.end:active~.handleContainerPadded .handle.end>.handleNub,:host(:not([disabled])) input.start:active~.handleContainerPadded .handle.start>.handleNub{background:var(--_pressed-handle-color)}.onTop.isOverlapping .label,.onTop.isOverlapping .label::before{outline:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}.onTop.isOverlapping .handleNub{border:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}.handle.start{inset-inline-start:calc(0px - var(--_state-layer-size)/2)}.handle.end{inset-inline-end:calc(0px - var(--_state-layer-size)/2)}.label{position:absolute;box-sizing:border-box;display:flex;padding:4px;place-content:center;place-items:center;border-radius:var(--md-sys-shape-corner-full, 9999px);color:var(--_label-text-color);font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);inset-block-end:100%;min-inline-size:var(--_label-container-height);min-block-size:var(--_label-container-height);background:var(--_label-container-color);transition:transform 100ms cubic-bezier(0.2, 0, 0, 1);transform-origin:center bottom;transform:scale(0)}:host(:focus-within) .label,.handleContainer.hover .label,:where(:has(input:active)) .label{transform:scale(1)}.label::before,.label::after{position:absolute;display:block;content:"";background:inherit}.label::before{inline-size:calc(var(--_label-container-height)/2);block-size:calc(var(--_label-container-height)/2);bottom:calc(var(--_label-container-height)/-10);transform:rotate(45deg)}.label::after{inset:0px;border-radius:inherit}.labelContent{z-index:1}input[type=range]{opacity:0;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;box-sizing:border-box;height:100%;width:100%;margin:0;background:rgba(0,0,0,0);cursor:pointer;pointer-events:auto;appearance:none}input[type=range]:focus{outline:none}::-webkit-slider-runnable-track{-webkit-appearance:none}::-moz-range-track{appearance:none}::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;block-size:var(--_handle-height);inline-size:var(--_handle-width);opacity:0;z-index:2}input.end::-webkit-slider-thumb{--_track-and-knob-padding: calc( (var(--_state-layer-size) - var(--_handle-width)) / 2 );--_x-translate: calc( var(--_track-and-knob-padding) - 2 * var(--_end-fraction) * var(--_track-and-knob-padding) );transform:translateX(var(--_x-translate))}input.end:dir(rtl)::-webkit-slider-thumb{transform:translateX(calc(-1 * var(--_x-translate)))}input.start::-webkit-slider-thumb{--_track-and-knob-padding: calc( (var(--_state-layer-size) - var(--_handle-width)) / 2 );--_x-translate: calc( var(--_track-and-knob-padding) - 2 * var(--_start-fraction) * var(--_track-and-knob-padding) );transform:translateX(var(--_x-translate))}input.start:dir(rtl)::-webkit-slider-thumb{transform:translateX(calc(-1 * var(--_x-translate)))}::-moz-range-thumb{appearance:none;block-size:var(--_state-layer-size);inline-size:var(--_state-layer-size);transform:scaleX(0);opacity:0;z-index:2}.ranged input.start{clip-path:inset(0 calc(100% - (var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2))) 0 0)}.ranged input.start:dir(rtl){clip-path:inset(0 0 0 calc(100% - (var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2))))}.ranged input.end{clip-path:inset(0 0 0 calc(var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2)))}.ranged input.end:dir(rtl){clip-path:inset(0 calc(var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2)) 0 0)}.onTop{z-index:1}.handle{--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}md-ripple{border-radius:50%;height:var(--_state-layer-size);width:var(--_state-layer-size)} + */const nd=_`:host{--_active-track-color: var(--md-slider-active-track-color, var(--md-sys-color-primary, #6750a4));--_active-track-height: var(--md-slider-active-track-height, 4px);--_active-track-shape: var(--md-slider-active-track-shape, var(--md-sys-shape-corner-full, 9999px));--_disabled-active-track-color: var(--md-slider-disabled-active-track-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-track-opacity: var(--md-slider-disabled-active-track-opacity, 0.38);--_disabled-handle-color: var(--md-slider-disabled-handle-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-handle-elevation: var(--md-slider-disabled-handle-elevation, 0);--_disabled-inactive-track-color: var(--md-slider-disabled-inactive-track-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-inactive-track-opacity: var(--md-slider-disabled-inactive-track-opacity, 0.12);--_focus-handle-color: var(--md-slider-focus-handle-color, var(--md-sys-color-primary, #6750a4));--_handle-color: var(--md-slider-handle-color, var(--md-sys-color-primary, #6750a4));--_handle-elevation: var(--md-slider-handle-elevation, 1);--_handle-height: var(--md-slider-handle-height, 20px);--_handle-shadow-color: var(--md-slider-handle-shadow-color, var(--md-sys-color-shadow, #000));--_handle-shape: var(--md-slider-handle-shape, var(--md-sys-shape-corner-full, 9999px));--_handle-width: var(--md-slider-handle-width, 20px);--_hover-handle-color: var(--md-slider-hover-handle-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-color: var(--md-slider-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_hover-state-layer-opacity: var(--md-slider-hover-state-layer-opacity, 0.08);--_inactive-track-color: var(--md-slider-inactive-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_inactive-track-height: var(--md-slider-inactive-track-height, 4px);--_inactive-track-shape: var(--md-slider-inactive-track-shape, var(--md-sys-shape-corner-full, 9999px));--_label-container-color: var(--md-slider-label-container-color, var(--md-sys-color-primary, #6750a4));--_label-container-height: var(--md-slider-label-container-height, 28px);--_pressed-handle-color: var(--md-slider-pressed-handle-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-color: var(--md-slider-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-slider-pressed-state-layer-opacity, 0.12);--_state-layer-size: var(--md-slider-state-layer-size, 40px);--_with-overlap-handle-outline-color: var(--md-slider-with-overlap-handle-outline-color, var(--md-sys-color-on-primary, #fff));--_with-overlap-handle-outline-width: var(--md-slider-with-overlap-handle-outline-width, 1px);--_with-tick-marks-active-container-color: var(--md-slider-with-tick-marks-active-container-color, var(--md-sys-color-on-primary, #fff));--_with-tick-marks-container-size: var(--md-slider-with-tick-marks-container-size, 2px);--_with-tick-marks-disabled-container-color: var(--md-slider-with-tick-marks-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_with-tick-marks-inactive-container-color: var(--md-slider-with-tick-marks-inactive-container-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-color: var(--md-slider-label-text-color, var(--md-sys-color-on-primary, #fff));--_label-text-font: var(--md-slider-label-text-font, var(--md-sys-typescale-label-medium-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-slider-label-text-line-height, var(--md-sys-typescale-label-medium-line-height, 1rem));--_label-text-size: var(--md-slider-label-text-size, var(--md-sys-typescale-label-medium-size, 0.75rem));--_label-text-weight: var(--md-slider-label-text-weight, var(--md-sys-typescale-label-medium-weight, var(--md-ref-typeface-weight-medium, 500)));--_start-fraction: 0;--_end-fraction: 0;--_tick-count: 0;display:inline-flex;vertical-align:middle;min-inline-size:200px;--md-elevation-level: var(--_handle-elevation);--md-elevation-shadow-color: var(--_handle-shadow-color)}md-focus-ring{height:48px;inset:unset;width:48px}md-elevation{transition-duration:250ms}@media(prefers-reduced-motion){.label{transition-duration:0}}:host([disabled]){opacity:var(--_disabled-active-track-opacity);--md-elevation-level: var(--_disabled-handle-elevation)}.container{flex:1;display:flex;align-items:center;position:relative;block-size:var(--_state-layer-size);pointer-events:none;touch-action:none}.track,.tickmarks{position:absolute;inset:0;display:flex;align-items:center}.track::before,.tickmarks::before,.track::after,.tickmarks::after{position:absolute;content:"";inset-inline-start:calc(var(--_state-layer-size)/2 - var(--_with-tick-marks-container-size));inset-inline-end:calc(var(--_state-layer-size)/2 - var(--_with-tick-marks-container-size));background-size:calc((100% - var(--_with-tick-marks-container-size)*2)/var(--_tick-count)) 100%}.track::before,.tickmarks::before{block-size:var(--_inactive-track-height);border-radius:var(--_inactive-track-shape)}.track::before{background:var(--_inactive-track-color)}.tickmarks::before{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-inactive-container-color) 0, var(--_with-tick-marks-inactive-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}:host([disabled]) .track::before{opacity:calc(1/var(--_disabled-active-track-opacity)*var(--_disabled-inactive-track-opacity));background:var(--_disabled-inactive-track-color)}.track::after,.tickmarks::after{block-size:var(--_active-track-height);border-radius:var(--_active-track-shape);clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))) 0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)))}.track::after{background:var(--_active-track-color)}.tickmarks::after{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-active-container-color) 0, var(--_with-tick-marks-active-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}.track:dir(rtl)::after{clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)) 0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))))}.tickmarks:dir(rtl)::after{clip-path:inset(0 calc(var(--_with-tick-marks-container-size) * min(var(--_start-fraction) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * var(--_start-fraction)) 0 calc(var(--_with-tick-marks-container-size) * min((1 - var(--_end-fraction)) * 1000000000, 1) + (100% - var(--_with-tick-marks-container-size) * 2) * (1 - var(--_end-fraction))))}:host([disabled]) .track::after{background:var(--_disabled-active-track-color)}:host([disabled]) .tickmarks::before{background-image:radial-gradient(circle at var(--_with-tick-marks-container-size) center, var(--_with-tick-marks-disabled-container-color) 0, var(--_with-tick-marks-disabled-container-color) calc(var(--_with-tick-marks-container-size) / 2), transparent calc(var(--_with-tick-marks-container-size) / 2))}.handleContainerPadded{position:relative;block-size:100%;inline-size:100%;padding-inline:calc(var(--_state-layer-size)/2)}.handleContainerBlock{position:relative;block-size:100%;inline-size:100%}.handleContainer{position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:calc(100%*var(--_start-fraction));inline-size:calc(100%*(var(--_end-fraction) - var(--_start-fraction)))}.handle{position:absolute;block-size:var(--_state-layer-size);inline-size:var(--_state-layer-size);border-radius:var(--_handle-shape);display:flex;place-content:center;place-items:center}.handleNub{position:absolute;height:var(--_handle-height);width:var(--_handle-width);border-radius:var(--_handle-shape);background:var(--_handle-color)}:host([disabled]) .handleNub{background:var(--_disabled-handle-color)}input.end:focus~.handleContainerPadded .handle.end>.handleNub,input.start:focus~.handleContainerPadded .handle.start>.handleNub{background:var(--_focus-handle-color)}.container>.handleContainerPadded .handle.hover>.handleNub{background:var(--_hover-handle-color)}:host(:not([disabled])) input.end:active~.handleContainerPadded .handle.end>.handleNub,:host(:not([disabled])) input.start:active~.handleContainerPadded .handle.start>.handleNub{background:var(--_pressed-handle-color)}.onTop.isOverlapping .label,.onTop.isOverlapping .label::before{outline:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}.onTop.isOverlapping .handleNub{border:var(--_with-overlap-handle-outline-color) solid var(--_with-overlap-handle-outline-width)}.handle.start{inset-inline-start:calc(0px - var(--_state-layer-size)/2)}.handle.end{inset-inline-end:calc(0px - var(--_state-layer-size)/2)}.label{position:absolute;box-sizing:border-box;display:flex;padding:4px;place-content:center;place-items:center;border-radius:var(--md-sys-shape-corner-full, 9999px);color:var(--_label-text-color);font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);inset-block-end:100%;min-inline-size:var(--_label-container-height);min-block-size:var(--_label-container-height);background:var(--_label-container-color);transition:transform 100ms cubic-bezier(0.2, 0, 0, 1);transform-origin:center bottom;transform:scale(0)}:host(:focus-within) .label,.handleContainer.hover .label,:where(:has(input:active)) .label{transform:scale(1)}.label::before,.label::after{position:absolute;display:block;content:"";background:inherit}.label::before{inline-size:calc(var(--_label-container-height)/2);block-size:calc(var(--_label-container-height)/2);bottom:calc(var(--_label-container-height)/-10);transform:rotate(45deg)}.label::after{inset:0px;border-radius:inherit}.labelContent{z-index:1}input[type=range]{opacity:0;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;box-sizing:border-box;height:100%;width:100%;margin:0;background:rgba(0,0,0,0);cursor:pointer;pointer-events:auto;appearance:none}input[type=range]:focus{outline:none}::-webkit-slider-runnable-track{-webkit-appearance:none}::-moz-range-track{appearance:none}::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;block-size:var(--_handle-height);inline-size:var(--_handle-width);opacity:0;z-index:2}input.end::-webkit-slider-thumb{--_track-and-knob-padding: calc( (var(--_state-layer-size) - var(--_handle-width)) / 2 );--_x-translate: calc( var(--_track-and-knob-padding) - 2 * var(--_end-fraction) * var(--_track-and-knob-padding) );transform:translateX(var(--_x-translate))}input.end:dir(rtl)::-webkit-slider-thumb{transform:translateX(calc(-1 * var(--_x-translate)))}input.start::-webkit-slider-thumb{--_track-and-knob-padding: calc( (var(--_state-layer-size) - var(--_handle-width)) / 2 );--_x-translate: calc( var(--_track-and-knob-padding) - 2 * var(--_start-fraction) * var(--_track-and-knob-padding) );transform:translateX(var(--_x-translate))}input.start:dir(rtl)::-webkit-slider-thumb{transform:translateX(calc(-1 * var(--_x-translate)))}::-moz-range-thumb{appearance:none;block-size:var(--_state-layer-size);inline-size:var(--_state-layer-size);transform:scaleX(0);opacity:0;z-index:2}.ranged input.start{clip-path:inset(0 calc(100% - (var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2))) 0 0)}.ranged input.start:dir(rtl){clip-path:inset(0 0 0 calc(100% - (var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2))))}.ranged input.end{clip-path:inset(0 0 0 calc(var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2)))}.ranged input.end:dir(rtl){clip-path:inset(0 calc(var(--_state-layer-size) / 2 + (100% - var(--_state-layer-size)) * (var(--_start-fraction) + (var(--_end-fraction) - var(--_start-fraction)) / 2)) 0 0)}.onTop{z-index:1}.handle{--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}md-ripple{border-radius:50%;height:var(--_state-layer-size);width:var(--_state-layer-size)} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let ko=class extends R{};ko.styles=[ll,al];ko=n([w("md-slider")],ko);/** + */let ti=class extends F{};ti.styles=[nd,rd];ti=l([S("md-slider")],ti);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const la=Symbol("dispatchHooks");function dl(o,e){const t=o[la];if(!t)throw new Error(`'${o.type}' event needs setupDispatchHooks().`);t.addEventListener("after",e)}const bi=new WeakMap;function cl(o,...e){let t=bi.get(o);t||(t=new Set,bi.set(o,t));for(const r of e){if(t.has(r))continue;let i=!1;o.addEventListener(r,a=>{if(i)return;a.stopImmediatePropagation();const s=Reflect.construct(a.constructor,[a.type,a]),d=new EventTarget;s[la]=d,i=!0;const c=o.dispatchEvent(s);i=!1,c||a.preventDefault(),d.dispatchEvent(new Event("after"))},{capture:!0}),t.add(r)}}/** + */const nn=Symbol("dispatchHooks");function ld(r,e){const t=r[nn];if(!t)throw new Error(`'${r.type}' event needs setupDispatchHooks().`);t.addEventListener("after",e)}const aa=new WeakMap;function sd(r,...e){let t=aa.get(r);t||(t=new Set,aa.set(r,t));for(const o of e){if(t.has(o))continue;let i=!1;r.addEventListener(o,a=>{if(i)return;a.stopImmediatePropagation();const n=Reflect.construct(a.constructor,[a.type,a]),s=new EventTarget;n[nn]=s,i=!0;const d=r.dispatchEvent(n);i=!1,d||a.preventDefault(),s.dispatchEvent(new Event("after"))},{capture:!0}),t.add(o)}}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const hl=ne(At(ct(qe(C))));class Ke extends hl{constructor(){super(),this.selected=!1,this.icons=!1,this.showOnlySelectedIcon=!1,this.required=!1,this.value="on",this.addEventListener("click",e=>{!Tt(e)||!this.input||(this.focus(),hr(this.input))}),cl(this,"keydown"),this.addEventListener("keydown",e=>{dl(e,()=>{e.defaultPrevented||e.key!=="Enter"||this.disabled||!this.input||this.input.click()})})}render(){return p` + */const dd=se(Nt(yt(Xe($))));class Qe extends dd{constructor(){super(),this.selected=!1,this.icons=!1,this.showOnlySelectedIcon=!1,this.required=!1,this.value="on",this.addEventListener("click",e=>{!Mt(e)||!this.input||(this.focus(),Bo(this.input))}),sd(this,"keydown"),this.addEventListener("keydown",e=>{ld(e,()=>{e.defaultPrevented||e.key!=="Enter"||this.disabled||!this.input||this.input.click()})})}render(){return m`
    ${this.renderHandle()}
    - `}getRenderClasses(){return{selected:this.selected,unselected:!this.selected,disabled:this.disabled}}renderHandle(){const e={"with-icon":this.showOnlySelectedIcon?this.selected:this.icons};return p` + `}getRenderClasses(){return{selected:this.selected,unselected:!this.selected,disabled:this.disabled}}renderHandle(){const e={"with-icon":this.showOnlySelectedIcon?this.selected:this.icons};return m` ${this.renderTouchTarget()} - ${this.shouldShowIcons()?this.renderIcons():p``} + ${this.shouldShowIcons()?this.renderIcons():m``} - `}renderIcons(){return p` + `}renderIcons(){return m`
    ${this.renderOnIcon()} - ${this.showOnlySelectedIcon?p``:this.renderOffIcon()} + ${this.showOnlySelectedIcon?m``:this.renderOffIcon()}
    - `}renderOnIcon(){return p` + `}renderOnIcon(){return m` - `}renderOffIcon(){return p` + `}renderOffIcon(){return m` - `}renderTouchTarget(){return p``}shouldShowIcons(){return this.icons||this.showOnlySelectedIcon}handleInput(e){const t=e.target;this.selected=t.checked}handleChange(e){Ue(this,e)}[Re](){return this.selected?this.value:null}[wt](){return String(this.selected)}formResetCallback(){this.selected=this.hasAttribute("selected")}formStateRestoreCallback(e){this.selected=e==="true"}[Je](){return new Pi(()=>({checked:this.selected,required:this.required}))}[et](){return this.input}}Ke.shadowRootOptions={mode:"open",delegatesFocus:!0};n([l({type:Boolean})],Ke.prototype,"selected",void 0);n([l({type:Boolean})],Ke.prototype,"icons",void 0);n([l({type:Boolean,attribute:"show-only-selected-icon"})],Ke.prototype,"showOnlySelectedIcon",void 0);n([l({type:Boolean})],Ke.prototype,"required",void 0);n([l()],Ke.prototype,"value",void 0);n([E("input")],Ke.prototype,"input",void 0);/** + `}renderTouchTarget(){return m``}shouldShowIcons(){return this.icons||this.showOnlySelectedIcon}handleInput(e){const t=e.target;this.selected=t.checked}handleChange(e){je(this,e)}[Be](){return this.selected?this.value:null}[Bt](){return String(this.selected)}formResetCallback(){this.selected=this.hasAttribute("selected")}formStateRestoreCallback(e){this.selected=e==="true"}[rt](){return new Ba(()=>({checked:this.selected,required:this.required}))}[it](){return this.input}}Qe.shadowRootOptions={mode:"open",delegatesFocus:!0};l([c({type:Boolean})],Qe.prototype,"selected",void 0);l([c({type:Boolean})],Qe.prototype,"icons",void 0);l([c({type:Boolean,attribute:"show-only-selected-icon"})],Qe.prototype,"showOnlySelectedIcon",void 0);l([c({type:Boolean})],Qe.prototype,"required",void 0);l([c()],Qe.prototype,"value",void 0);l([B("input")],Qe.prototype,"input",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const pl=x`@layer styles, hcm;@layer styles{:host{display:inline-flex;outline:none;vertical-align:top;-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-switch-track-height, 32px))/2) 0px}md-focus-ring{--md-focus-ring-shape-start-start: var(--md-switch-track-shape-start-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-start-end: var(--md-switch-track-shape-start-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-end-end: var(--md-switch-track-shape-end-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-end-start: var(--md-switch-track-shape-end-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)))}.switch{align-items:center;display:inline-flex;flex-shrink:0;position:relative;width:var(--md-switch-track-width, 52px);height:var(--md-switch-track-height, 32px);border-start-start-radius:var(--md-switch-track-shape-start-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-start-end-radius:var(--md-switch-track-shape-start-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-end-radius:var(--md-switch-track-shape-end-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-start-radius:var(--md-switch-track-shape-end-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)))}input{appearance:none;height:max(100%,var(--md-switch-touch-target-size, 48px));outline:none;margin:0;position:absolute;width:max(100%,var(--md-switch-touch-target-size, 48px));z-index:1;cursor:inherit;top:50%;left:50%;transform:translate(-50%, -50%)}:host([touch-target=none]) input{display:none}}@layer styles{.track{position:absolute;width:100%;height:100%;box-sizing:border-box;border-radius:inherit;display:flex;justify-content:center;align-items:center}.track::before{content:"";display:flex;position:absolute;height:100%;width:100%;border-radius:inherit;box-sizing:border-box;transition-property:opacity,background-color;transition-timing-function:linear;transition-duration:67ms}.disabled .track{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.disabled .track::before,.disabled .track::after{transition:none;opacity:var(--md-switch-disabled-track-opacity, 0.12)}.disabled .track::before{background-clip:content-box}.selected .track::before{background-color:var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750a4))}.selected:hover .track::before{background-color:var(--md-switch-selected-hover-track-color, var(--md-sys-color-primary, #6750a4))}.selected:focus-within .track::before{background-color:var(--md-switch-selected-focus-track-color, var(--md-sys-color-primary, #6750a4))}.selected:active .track::before{background-color:var(--md-switch-selected-pressed-track-color, var(--md-sys-color-primary, #6750a4))}.selected.disabled .track{background-clip:border-box}.selected.disabled .track::before{background-color:var(--md-switch-disabled-selected-track-color, var(--md-sys-color-on-surface, #1d1b20))}.unselected .track::before{background-color:var(--md-switch-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-track-outline-color, var(--md-sys-color-outline, #79747e));border-style:solid;border-width:var(--md-switch-track-outline-width, 2px)}.unselected:hover .track::before{background-color:var(--md-switch-hover-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-hover-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected:focus-visible .track::before{background-color:var(--md-switch-focus-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-focus-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected:active .track::before{background-color:var(--md-switch-pressed-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-pressed-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected.disabled .track::before{background-color:var(--md-switch-disabled-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-disabled-track-outline-color, var(--md-sys-color-on-surface, #1d1b20))}}@layer hcm{@media(forced-colors: active){.selected .track::before{background:ButtonText;border-color:ButtonText}.disabled .track::before{border-color:GrayText;opacity:1}.disabled.selected .track::before{background:GrayText}}}@layer styles{.handle-container{display:flex;place-content:center;place-items:center;position:relative;transition:margin 300ms cubic-bezier(0.175, 0.885, 0.32, 1.275)}.selected .handle-container{margin-inline-start:calc(var(--md-switch-track-width, 52px) - var(--md-switch-track-height, 32px))}.unselected .handle-container{margin-inline-end:calc(var(--md-switch-track-width, 52px) - var(--md-switch-track-height, 32px))}.disabled .handle-container{transition:none}.handle{border-start-start-radius:var(--md-switch-handle-shape-start-start, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-start-end-radius:var(--md-switch-handle-shape-start-end, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-end-radius:var(--md-switch-handle-shape-end-end, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-start-radius:var(--md-switch-handle-shape-end-start, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));height:var(--md-switch-handle-height, 16px);width:var(--md-switch-handle-width, 16px);transform-origin:center;transition-property:height,width;transition-duration:250ms,250ms;transition-timing-function:cubic-bezier(0.2, 0, 0, 1),cubic-bezier(0.2, 0, 0, 1);z-index:0}.handle::before{content:"";display:flex;inset:0;position:absolute;border-radius:inherit;box-sizing:border-box;transition:background-color 67ms linear}.disabled .handle,.disabled .handle::before{transition:none}.selected .handle{height:var(--md-switch-selected-handle-height, 24px);width:var(--md-switch-selected-handle-width, 24px)}.handle.with-icon{height:var(--md-switch-with-icon-handle-height, 24px);width:var(--md-switch-with-icon-handle-width, 24px)}.selected:not(.disabled):active .handle,.unselected:not(.disabled):active .handle{height:var(--md-switch-pressed-handle-height, 28px);width:var(--md-switch-pressed-handle-width, 28px);transition-timing-function:linear;transition-duration:100ms}.selected .handle::before{background-color:var(--md-switch-selected-handle-color, var(--md-sys-color-on-primary, #fff))}.selected:hover .handle::before{background-color:var(--md-switch-selected-hover-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected:focus-within .handle::before{background-color:var(--md-switch-selected-focus-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected:active .handle::before{background-color:var(--md-switch-selected-pressed-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected.disabled .handle::before{background-color:var(--md-switch-disabled-selected-handle-color, var(--md-sys-color-surface, #fef7ff));opacity:var(--md-switch-disabled-selected-handle-opacity, 1)}.unselected .handle::before{background-color:var(--md-switch-handle-color, var(--md-sys-color-outline, #79747e))}.unselected:hover .handle::before{background-color:var(--md-switch-hover-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected:focus-within .handle::before{background-color:var(--md-switch-focus-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected:active .handle::before{background-color:var(--md-switch-pressed-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected.disabled .handle::before{background-color:var(--md-switch-disabled-handle-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-switch-disabled-handle-opacity, 0.38)}md-ripple{border-radius:var(--md-switch-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-switch-state-layer-size, 40px);inset:unset;width:var(--md-switch-state-layer-size, 40px)}.selected md-ripple{--md-ripple-hover-color: var(--md-switch-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-color: var(--md-switch-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-switch-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-opacity: var(--md-switch-selected-pressed-state-layer-opacity, 0.12)}.unselected md-ripple{--md-ripple-hover-color: var(--md-switch-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-color: var(--md-switch-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-switch-hover-state-layer-opacity, 0.08);--md-ripple-pressed-opacity: var(--md-switch-pressed-state-layer-opacity, 0.12)}}@layer hcm{@media(forced-colors: active){.unselected .handle::before{background:ButtonText}.disabled .handle::before{opacity:1}.disabled.unselected .handle::before{background:GrayText}}}@layer styles{.icons{position:relative;height:100%;width:100%}.icon{position:absolute;inset:0;margin:auto;display:flex;align-items:center;justify-content:center;fill:currentColor;transition:fill 67ms linear,opacity 33ms linear,transform 167ms cubic-bezier(0.2, 0, 0, 1);opacity:0}.disabled .icon{transition:none}.selected .icon--on,.unselected .icon--off{opacity:1}.unselected .handle:not(.with-icon) .icon--on{transform:rotate(-45deg)}.icon--off{width:var(--md-switch-icon-size, 16px);height:var(--md-switch-icon-size, 16px);color:var(--md-switch-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:hover .icon--off{color:var(--md-switch-hover-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:focus-within .icon--off{color:var(--md-switch-focus-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:active .icon--off{color:var(--md-switch-pressed-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected.disabled .icon--off{color:var(--md-switch-disabled-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9));opacity:var(--md-switch-disabled-icon-opacity, 0.38)}.icon--on{width:var(--md-switch-selected-icon-size, 16px);height:var(--md-switch-selected-icon-size, 16px);color:var(--md-switch-selected-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:hover .icon--on{color:var(--md-switch-selected-hover-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:focus-within .icon--on{color:var(--md-switch-selected-focus-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:active .icon--on{color:var(--md-switch-selected-pressed-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected.disabled .icon--on{color:var(--md-switch-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-switch-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon--off{fill:Canvas}.icon--on{fill:ButtonText}.disabled.unselected .icon--off,.disabled.selected .icon--on{opacity:1}.disabled .icon--on{fill:GrayText}}} + */const cd=_`@layer styles, hcm;@layer styles{:host{display:inline-flex;outline:none;vertical-align:top;-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-switch-track-height, 32px))/2) 0px}md-focus-ring{--md-focus-ring-shape-start-start: var(--md-switch-track-shape-start-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-start-end: var(--md-switch-track-shape-start-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-end-end: var(--md-switch-track-shape-end-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));--md-focus-ring-shape-end-start: var(--md-switch-track-shape-end-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)))}.switch{align-items:center;display:inline-flex;flex-shrink:0;position:relative;width:var(--md-switch-track-width, 52px);height:var(--md-switch-track-height, 32px);border-start-start-radius:var(--md-switch-track-shape-start-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-start-end-radius:var(--md-switch-track-shape-start-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-end-radius:var(--md-switch-track-shape-end-end, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-start-radius:var(--md-switch-track-shape-end-start, var(--md-switch-track-shape, var(--md-sys-shape-corner-full, 9999px)))}input{appearance:none;height:max(100%,var(--md-switch-touch-target-size, 48px));outline:none;margin:0;position:absolute;width:max(100%,var(--md-switch-touch-target-size, 48px));z-index:1;cursor:inherit;top:50%;left:50%;transform:translate(-50%, -50%)}:host([touch-target=none]) input{display:none}}@layer styles{.track{position:absolute;width:100%;height:100%;box-sizing:border-box;border-radius:inherit;display:flex;justify-content:center;align-items:center}.track::before{content:"";display:flex;position:absolute;height:100%;width:100%;border-radius:inherit;box-sizing:border-box;transition-property:opacity,background-color;transition-timing-function:linear;transition-duration:67ms}.disabled .track{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.disabled .track::before,.disabled .track::after{transition:none;opacity:var(--md-switch-disabled-track-opacity, 0.12)}.disabled .track::before{background-clip:content-box}.selected .track::before{background-color:var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750a4))}.selected:hover .track::before{background-color:var(--md-switch-selected-hover-track-color, var(--md-sys-color-primary, #6750a4))}.selected:focus-within .track::before{background-color:var(--md-switch-selected-focus-track-color, var(--md-sys-color-primary, #6750a4))}.selected:active .track::before{background-color:var(--md-switch-selected-pressed-track-color, var(--md-sys-color-primary, #6750a4))}.selected.disabled .track{background-clip:border-box}.selected.disabled .track::before{background-color:var(--md-switch-disabled-selected-track-color, var(--md-sys-color-on-surface, #1d1b20))}.unselected .track::before{background-color:var(--md-switch-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-track-outline-color, var(--md-sys-color-outline, #79747e));border-style:solid;border-width:var(--md-switch-track-outline-width, 2px)}.unselected:hover .track::before{background-color:var(--md-switch-hover-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-hover-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected:focus-visible .track::before{background-color:var(--md-switch-focus-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-focus-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected:active .track::before{background-color:var(--md-switch-pressed-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-pressed-track-outline-color, var(--md-sys-color-outline, #79747e))}.unselected.disabled .track::before{background-color:var(--md-switch-disabled-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));border-color:var(--md-switch-disabled-track-outline-color, var(--md-sys-color-on-surface, #1d1b20))}}@layer hcm{@media(forced-colors: active){.selected .track::before{background:ButtonText;border-color:ButtonText}.disabled .track::before{border-color:GrayText;opacity:1}.disabled.selected .track::before{background:GrayText}}}@layer styles{.handle-container{display:flex;place-content:center;place-items:center;position:relative;transition:margin 300ms cubic-bezier(0.175, 0.885, 0.32, 1.275)}.selected .handle-container{margin-inline-start:calc(var(--md-switch-track-width, 52px) - var(--md-switch-track-height, 32px))}.unselected .handle-container{margin-inline-end:calc(var(--md-switch-track-width, 52px) - var(--md-switch-track-height, 32px))}.disabled .handle-container{transition:none}.handle{border-start-start-radius:var(--md-switch-handle-shape-start-start, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-start-end-radius:var(--md-switch-handle-shape-start-end, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-end-radius:var(--md-switch-handle-shape-end-end, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));border-end-start-radius:var(--md-switch-handle-shape-end-start, var(--md-switch-handle-shape, var(--md-sys-shape-corner-full, 9999px)));height:var(--md-switch-handle-height, 16px);width:var(--md-switch-handle-width, 16px);transform-origin:center;transition-property:height,width;transition-duration:250ms,250ms;transition-timing-function:cubic-bezier(0.2, 0, 0, 1),cubic-bezier(0.2, 0, 0, 1);z-index:0}.handle::before{content:"";display:flex;inset:0;position:absolute;border-radius:inherit;box-sizing:border-box;transition:background-color 67ms linear}.disabled .handle,.disabled .handle::before{transition:none}.selected .handle{height:var(--md-switch-selected-handle-height, 24px);width:var(--md-switch-selected-handle-width, 24px)}.handle.with-icon{height:var(--md-switch-with-icon-handle-height, 24px);width:var(--md-switch-with-icon-handle-width, 24px)}.selected:not(.disabled):active .handle,.unselected:not(.disabled):active .handle{height:var(--md-switch-pressed-handle-height, 28px);width:var(--md-switch-pressed-handle-width, 28px);transition-timing-function:linear;transition-duration:100ms}.selected .handle::before{background-color:var(--md-switch-selected-handle-color, var(--md-sys-color-on-primary, #fff))}.selected:hover .handle::before{background-color:var(--md-switch-selected-hover-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected:focus-within .handle::before{background-color:var(--md-switch-selected-focus-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected:active .handle::before{background-color:var(--md-switch-selected-pressed-handle-color, var(--md-sys-color-primary-container, #eaddff))}.selected.disabled .handle::before{background-color:var(--md-switch-disabled-selected-handle-color, var(--md-sys-color-surface, #fef7ff));opacity:var(--md-switch-disabled-selected-handle-opacity, 1)}.unselected .handle::before{background-color:var(--md-switch-handle-color, var(--md-sys-color-outline, #79747e))}.unselected:hover .handle::before{background-color:var(--md-switch-hover-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected:focus-within .handle::before{background-color:var(--md-switch-focus-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected:active .handle::before{background-color:var(--md-switch-pressed-handle-color, var(--md-sys-color-on-surface-variant, #49454f))}.unselected.disabled .handle::before{background-color:var(--md-switch-disabled-handle-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-switch-disabled-handle-opacity, 0.38)}md-ripple{border-radius:var(--md-switch-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-switch-state-layer-size, 40px);inset:unset;width:var(--md-switch-state-layer-size, 40px)}.selected md-ripple{--md-ripple-hover-color: var(--md-switch-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-color: var(--md-switch-selected-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-switch-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-opacity: var(--md-switch-selected-pressed-state-layer-opacity, 0.12)}.unselected md-ripple{--md-ripple-hover-color: var(--md-switch-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-color: var(--md-switch-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-switch-hover-state-layer-opacity, 0.08);--md-ripple-pressed-opacity: var(--md-switch-pressed-state-layer-opacity, 0.12)}}@layer hcm{@media(forced-colors: active){.unselected .handle::before{background:ButtonText}.disabled .handle::before{opacity:1}.disabled.unselected .handle::before{background:GrayText}}}@layer styles{.icons{position:relative;height:100%;width:100%}.icon{position:absolute;inset:0;margin:auto;display:flex;align-items:center;justify-content:center;fill:currentColor;transition:fill 67ms linear,opacity 33ms linear,transform 167ms cubic-bezier(0.2, 0, 0, 1);opacity:0}.disabled .icon{transition:none}.selected .icon--on,.unselected .icon--off{opacity:1}.unselected .handle:not(.with-icon) .icon--on{transform:rotate(-45deg)}.icon--off{width:var(--md-switch-icon-size, 16px);height:var(--md-switch-icon-size, 16px);color:var(--md-switch-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:hover .icon--off{color:var(--md-switch-hover-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:focus-within .icon--off{color:var(--md-switch-focus-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected:active .icon--off{color:var(--md-switch-pressed-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9))}.unselected.disabled .icon--off{color:var(--md-switch-disabled-icon-color, var(--md-sys-color-surface-container-highest, #e6e0e9));opacity:var(--md-switch-disabled-icon-opacity, 0.38)}.icon--on{width:var(--md-switch-selected-icon-size, 16px);height:var(--md-switch-selected-icon-size, 16px);color:var(--md-switch-selected-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:hover .icon--on{color:var(--md-switch-selected-hover-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:focus-within .icon--on{color:var(--md-switch-selected-focus-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected:active .icon--on{color:var(--md-switch-selected-pressed-icon-color, var(--md-sys-color-on-primary-container, #21005d))}.selected.disabled .icon--on{color:var(--md-switch-disabled-selected-icon-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-switch-disabled-selected-icon-opacity, 0.38)}}@layer hcm{@media(forced-colors: active){.icon--off{fill:Canvas}.icon--on{fill:ButtonText}.disabled.unselected .icon--off,.disabled.selected .icon--on{opacity:1}.disabled .icon--on{fill:GrayText}}} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Co=class extends Ke{};Co.styles=[pl];Co=n([w("md-switch")],Co);/** + */let oi=class extends Qe{};oi.styles=[cd];oi=l([S("md-switch")],oi);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */var da;const at=Symbol("indicator"),ca=Symbol("animateIndicator"),ul=aa(C);class Ce extends ul{get selected(){return this.active}set selected(e){this.active=e}constructor(){super(),this.isTab=!0,this.active=!1,this.hasIcon=!1,this.iconOnly=!1,this.fullWidthIndicator=!1,this.internals=this.attachInternals(),this.internals.role="tab",this.addEventListener("keydown",this.handleKeydown.bind(this))}render(){const e=p`
    `;return p`
    `;return m` - ${this.fullWidthIndicator?e:h} -
    `}getContentClasses(){return{"has-icon":this.hasIcon,"has-label":!this.iconOnly}}updated(){this.internals.ariaSelected=String(this.active)}async handleKeydown(e){await 0,!e.defaultPrevented&&(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),this.click())}handleContentClick(e){e.stopPropagation(),this.click()}[(da=at,ca)](e){if(!this[at])return;this[at].getAnimations().forEach(r=>{r.cancel()});const t=this.getKeyframes(e);t!==null&&this[at].animate(t,{duration:250,easing:ke.EMPHASIZED})}getKeyframes(e){var u;const t=vl();if(!this.active)return t?[{opacity:1},{transform:"none"}]:null;const r={},i=((u=e[at])==null?void 0:u.getBoundingClientRect())??{},a=i.left,s=i.width,d=this[at].getBoundingClientRect(),c=d.left,f=d.width,v=s/f;return!t&&a!==void 0&&c!==void 0&&!isNaN(v)?r.transform=`translateX(${(a-c).toFixed(4)}px) scaleX(${v.toFixed(4)})`:r.opacity=0,[r,{transform:"none"}]}handleSlotChange(){this.iconOnly=!1;for(const e of this.assignedDefaultNodes){const t=e.nodeType===Node.TEXT_NODE&&!!e.wholeText.match(/\S/);if(e.nodeType===Node.ELEMENT_NODE||t)return}this.iconOnly=!0}handleIconSlotChange(){this.hasIcon=this.assignedIcons.length>0}}n([l({type:Boolean,reflect:!0,attribute:"md-tab"})],Ce.prototype,"isTab",void 0);n([l({type:Boolean,reflect:!0})],Ce.prototype,"active",void 0);n([l({type:Boolean})],Ce.prototype,"selected",null);n([l({type:Boolean,attribute:"has-icon"})],Ce.prototype,"hasIcon",void 0);n([l({type:Boolean,attribute:"icon-only"})],Ce.prototype,"iconOnly",void 0);n([E(".indicator")],Ce.prototype,da,void 0);n([z()],Ce.prototype,"fullWidthIndicator",void 0);n([Mo({flatten:!0})],Ce.prototype,"assignedDefaultNodes",void 0);n([ee({slot:"icon",flatten:!0})],Ce.prototype,"assignedIcons",void 0);function vl(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}/** + ${this.fullWidthIndicator?e:p} +
    `}getContentClasses(){return{"has-icon":this.hasIcon,"has-label":!this.iconOnly}}updated(){this.internals.ariaSelected=String(this.active)}async handleKeydown(e){await 0,!e.defaultPrevented&&(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),this.click())}handleContentClick(e){e.stopPropagation(),this.click()}[(ln=ut,sn)](e){if(!this[ut])return;this[ut].getAnimations().forEach(o=>{o.cancel()});const t=this.getKeyframes(e);t!==null&&this[ut].animate(t,{duration:250,easing:we.EMPHASIZED})}getKeyframes(e){var u;const t=ud();if(!this.active)return t?[{opacity:1},{transform:"none"}]:null;const o={},i=((u=e[ut])==null?void 0:u.getBoundingClientRect())??{},a=i.left,n=i.width,s=this[ut].getBoundingClientRect(),d=s.left,h=s.width,v=n/h;return!t&&a!==void 0&&d!==void 0&&!isNaN(v)?o.transform=`translateX(${(a-d).toFixed(4)}px) scaleX(${v.toFixed(4)})`:o.opacity=0,[o,{transform:"none"}]}handleSlotChange(){this.iconOnly=!1;for(const e of this.assignedDefaultNodes){const t=e.nodeType===Node.TEXT_NODE&&!!e.wholeText.match(/\S/);if(e.nodeType===Node.ELEMENT_NODE||t)return}this.iconOnly=!0}handleIconSlotChange(){this.hasIcon=this.assignedIcons.length>0}}l([c({type:Boolean,reflect:!0,attribute:"md-tab"})],Ce.prototype,"isTab",void 0);l([c({type:Boolean,reflect:!0})],Ce.prototype,"active",void 0);l([c({type:Boolean})],Ce.prototype,"selected",null);l([c({type:Boolean,attribute:"has-icon"})],Ce.prototype,"hasIcon",void 0);l([c({type:Boolean,attribute:"icon-only"})],Ce.prototype,"iconOnly",void 0);l([B(".indicator")],Ce.prototype,ln,void 0);l([M()],Ce.prototype,"fullWidthIndicator",void 0);l([vi({flatten:!0})],Ce.prototype,"assignedDefaultNodes",void 0);l([oe({slot:"icon",flatten:!0})],Ce.prototype,"assignedIcons",void 0);function ud(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class ha extends Ce{constructor(){super(...arguments),this.inlineIcon=!1}getContentClasses(){return{...super.getContentClasses(),stacked:!this.inlineIcon}}}n([l({type:Boolean,attribute:"inline-icon"})],ha.prototype,"inlineIcon",void 0);/** + */class dn extends Ce{constructor(){super(...arguments),this.inlineIcon=!1}getContentClasses(){return{...super.getContentClasses(),stacked:!this.inlineIcon}}}l([c({type:Boolean,attribute:"inline-icon"})],dn.prototype,"inlineIcon",void 0);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ml=x`:host{--_active-indicator-color: var(--md-primary-tab-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-primary-tab-active-indicator-height, 3px);--_active-indicator-shape: var(--md-primary-tab-active-indicator-shape, 3px 3px 0px 0px);--_active-hover-state-layer-color: var(--md-primary-tab-active-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_active-hover-state-layer-opacity: var(--md-primary-tab-active-hover-state-layer-opacity, 0.08);--_active-pressed-state-layer-color: var(--md-primary-tab-active-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-state-layer-opacity: var(--md-primary-tab-active-pressed-state-layer-opacity, 0.12);--_container-color: var(--md-primary-tab-container-color, var(--md-sys-color-surface, #fef7ff));--_container-elevation: var(--md-primary-tab-container-elevation, 0);--_container-height: var(--md-primary-tab-container-height, 48px);--_with-icon-and-label-text-container-height: var(--md-primary-tab-with-icon-and-label-text-container-height, 64px);--_hover-state-layer-color: var(--md-primary-tab-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-primary-tab-hover-state-layer-opacity, 0.08);--_pressed-state-layer-color: var(--md-primary-tab-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-primary-tab-pressed-state-layer-opacity, 0.12);--_active-focus-icon-color: var(--md-primary-tab-active-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_active-hover-icon-color: var(--md-primary-tab-active-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_active-icon-color: var(--md-primary-tab-active-icon-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-icon-color: var(--md-primary-tab-active-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-primary-tab-icon-size, 24px);--_focus-icon-color: var(--md-primary-tab-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-icon-color: var(--md-primary-tab-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-color: var(--md-primary-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-primary-tab-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-primary-tab-label-text-font, var(--md-sys-typescale-title-small-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-primary-tab-label-text-line-height, var(--md-sys-typescale-title-small-line-height, 1.25rem));--_label-text-size: var(--md-primary-tab-label-text-size, var(--md-sys-typescale-title-small-size, 0.875rem));--_label-text-weight: var(--md-primary-tab-label-text-weight, var(--md-sys-typescale-title-small-weight, var(--md-ref-typeface-weight-medium, 500)));--_active-focus-label-text-color: var(--md-primary-tab-active-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-hover-label-text-color: var(--md-primary-tab-active-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-label-text-color: var(--md-primary-tab-active-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-label-text-color: var(--md-primary-tab-active-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-label-text-color: var(--md-primary-tab-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-primary-tab-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-color: var(--md-primary-tab-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-label-text-color: var(--md-primary-tab-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-primary-tab-container-shape-start-start, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-start-end: var(--md-primary-tab-container-shape-start-end, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-end: var(--md-primary-tab-container-shape-end-end, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-primary-tab-container-shape-end-start, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)))}.content.stacked{flex-direction:column;gap:2px}.content.stacked.has-icon.has-label{height:var(--_with-icon-and-label-text-container-height)} + */const pd=_`:host{--_active-indicator-color: var(--md-primary-tab-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-primary-tab-active-indicator-height, 3px);--_active-indicator-shape: var(--md-primary-tab-active-indicator-shape, 3px 3px 0px 0px);--_active-hover-state-layer-color: var(--md-primary-tab-active-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--_active-hover-state-layer-opacity: var(--md-primary-tab-active-hover-state-layer-opacity, 0.08);--_active-pressed-state-layer-color: var(--md-primary-tab-active-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-state-layer-opacity: var(--md-primary-tab-active-pressed-state-layer-opacity, 0.12);--_container-color: var(--md-primary-tab-container-color, var(--md-sys-color-surface, #fef7ff));--_container-elevation: var(--md-primary-tab-container-elevation, 0);--_container-height: var(--md-primary-tab-container-height, 48px);--_with-icon-and-label-text-container-height: var(--md-primary-tab-with-icon-and-label-text-container-height, 64px);--_hover-state-layer-color: var(--md-primary-tab-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-primary-tab-hover-state-layer-opacity, 0.08);--_pressed-state-layer-color: var(--md-primary-tab-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--_pressed-state-layer-opacity: var(--md-primary-tab-pressed-state-layer-opacity, 0.12);--_active-focus-icon-color: var(--md-primary-tab-active-focus-icon-color, var(--md-sys-color-primary, #6750a4));--_active-hover-icon-color: var(--md-primary-tab-active-hover-icon-color, var(--md-sys-color-primary, #6750a4));--_active-icon-color: var(--md-primary-tab-active-icon-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-icon-color: var(--md-primary-tab-active-pressed-icon-color, var(--md-sys-color-primary, #6750a4));--_icon-size: var(--md-primary-tab-icon-size, 24px);--_focus-icon-color: var(--md-primary-tab-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-icon-color: var(--md-primary-tab-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-color: var(--md-primary-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-primary-tab-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-primary-tab-label-text-font, var(--md-sys-typescale-title-small-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-primary-tab-label-text-line-height, var(--md-sys-typescale-title-small-line-height, 1.25rem));--_label-text-size: var(--md-primary-tab-label-text-size, var(--md-sys-typescale-title-small-size, 0.875rem));--_label-text-weight: var(--md-primary-tab-label-text-weight, var(--md-sys-typescale-title-small-weight, var(--md-ref-typeface-weight-medium, 500)));--_active-focus-label-text-color: var(--md-primary-tab-active-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-hover-label-text-color: var(--md-primary-tab-active-hover-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-label-text-color: var(--md-primary-tab-active-label-text-color, var(--md-sys-color-primary, #6750a4));--_active-pressed-label-text-color: var(--md-primary-tab-active-pressed-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-label-text-color: var(--md-primary-tab-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-primary-tab-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-color: var(--md-primary-tab-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-label-text-color: var(--md-primary-tab-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-primary-tab-container-shape-start-start, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-start-end: var(--md-primary-tab-container-shape-start-end, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-end: var(--md-primary-tab-container-shape-end-end, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-primary-tab-container-shape-end-start, var(--md-primary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)))}.content.stacked{flex-direction:column;gap:2px}.content.stacked.has-icon.has-label{height:var(--_with-icon-and-label-text-container-height)} `;/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const pa=x`:host{display:inline-flex;align-items:center;justify-content:center;outline:none;padding:0 16px;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0);vertical-align:middle;user-select:none;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);color:var(--_label-text-color);z-index:0;--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity);--md-elevation-level: var(--_container-elevation)}md-focus-ring{--md-focus-ring-shape: 8px}:host([active]) md-focus-ring{margin-bottom:calc(var(--_active-indicator-height) + 1px)}.button::before{background:var(--_container-color);content:"";inset:0;position:absolute;z-index:-1}.button::before,md-ripple,md-elevation{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-end-radius:var(--_container-shape-end-end);border-end-start-radius:var(--_container-shape-end-start)}.content{position:relative;box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;height:var(--_container-height);gap:8px}.indicator{position:absolute;box-sizing:border-box;z-index:-1;transform-origin:bottom left;background:var(--_active-indicator-color);border-radius:var(--_active-indicator-shape);height:var(--_active-indicator-height);inset:auto 0 0 0;opacity:0}::slotted([slot=icon]){display:inline-flex;position:relative;writing-mode:horizontal-tb;fill:currentColor;color:var(--_icon-color);font-size:var(--_icon-size);width:var(--_icon-size);height:var(--_icon-size)}:host(:hover){color:var(--_hover-label-text-color);cursor:pointer}:host(:hover) ::slotted([slot=icon]){color:var(--_hover-icon-color)}:host(:focus){color:var(--_focus-label-text-color)}:host(:focus) ::slotted([slot=icon]){color:var(--_focus-icon-color)}:host(:active){color:var(--_pressed-label-text-color)}:host(:active) ::slotted([slot=icon]){color:var(--_pressed-icon-color)}:host([active]) .indicator{opacity:1}:host([active]){color:var(--_active-label-text-color);--md-ripple-hover-color: var(--_active-hover-state-layer-color);--md-ripple-hover-opacity: var(--_active-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_active-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_active-pressed-state-layer-opacity)}:host([active]) ::slotted([slot=icon]){color:var(--_active-icon-color)}:host([active]:hover){color:var(--_active-hover-label-text-color)}:host([active]:hover) ::slotted([slot=icon]){color:var(--_active-hover-icon-color)}:host([active]:focus){color:var(--_active-focus-label-text-color)}:host([active]:focus) ::slotted([slot=icon]){color:var(--_active-focus-icon-color)}:host([active]:active){color:var(--_active-pressed-label-text-color)}:host([active]:active) ::slotted([slot=icon]){color:var(--_active-pressed-icon-color)}:host,::slotted(*){white-space:nowrap}@media(forced-colors: active){.indicator{background:CanvasText}} + */const cn=_`:host{display:inline-flex;align-items:center;justify-content:center;outline:none;padding:0 16px;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0);vertical-align:middle;user-select:none;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);color:var(--_label-text-color);z-index:0;--md-ripple-hover-color: var(--_hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity);--md-elevation-level: var(--_container-elevation)}md-focus-ring{--md-focus-ring-shape: 8px}:host([active]) md-focus-ring{margin-bottom:calc(var(--_active-indicator-height) + 1px)}.button::before{background:var(--_container-color);content:"";inset:0;position:absolute;z-index:-1}.button::before,md-ripple,md-elevation{border-start-start-radius:var(--_container-shape-start-start);border-start-end-radius:var(--_container-shape-start-end);border-end-end-radius:var(--_container-shape-end-end);border-end-start-radius:var(--_container-shape-end-start)}.content{position:relative;box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;height:var(--_container-height);gap:8px}.indicator{position:absolute;box-sizing:border-box;z-index:-1;transform-origin:bottom left;background:var(--_active-indicator-color);border-radius:var(--_active-indicator-shape);height:var(--_active-indicator-height);inset:auto 0 0 0;opacity:0}::slotted([slot=icon]){display:inline-flex;position:relative;writing-mode:horizontal-tb;fill:currentColor;color:var(--_icon-color);font-size:var(--_icon-size);width:var(--_icon-size);height:var(--_icon-size)}:host(:hover){color:var(--_hover-label-text-color);cursor:pointer}:host(:hover) ::slotted([slot=icon]){color:var(--_hover-icon-color)}:host(:focus){color:var(--_focus-label-text-color)}:host(:focus) ::slotted([slot=icon]){color:var(--_focus-icon-color)}:host(:active){color:var(--_pressed-label-text-color)}:host(:active) ::slotted([slot=icon]){color:var(--_pressed-icon-color)}:host([active]) .indicator{opacity:1}:host([active]){color:var(--_active-label-text-color);--md-ripple-hover-color: var(--_active-hover-state-layer-color);--md-ripple-hover-opacity: var(--_active-hover-state-layer-opacity);--md-ripple-pressed-color: var(--_active-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_active-pressed-state-layer-opacity)}:host([active]) ::slotted([slot=icon]){color:var(--_active-icon-color)}:host([active]:hover){color:var(--_active-hover-label-text-color)}:host([active]:hover) ::slotted([slot=icon]){color:var(--_active-hover-icon-color)}:host([active]:focus){color:var(--_active-focus-label-text-color)}:host([active]:focus) ::slotted([slot=icon]){color:var(--_active-focus-icon-color)}:host([active]:active){color:var(--_active-pressed-label-text-color)}:host([active]:active) ::slotted([slot=icon]){color:var(--_active-pressed-icon-color)}:host,::slotted(*){white-space:nowrap}@media(forced-colors: active){.indicator{background:CanvasText}} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Eo=class extends ha{};Eo.styles=[pa,ml];Eo=n([w("md-primary-tab")],Eo);/** + */let ri=class extends dn{};ri.styles=[cn,pd];ri=l([S("md-primary-tab")],ri);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class fl extends Ce{constructor(){super(...arguments),this.fullWidthIndicator=!0}}/** + */class vd extends Ce{constructor(){super(...arguments),this.fullWidthIndicator=!0}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const bl=x`:host{--_active-indicator-color: var(--md-secondary-tab-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-secondary-tab-active-indicator-height, 2px);--_active-label-text-color: var(--md-secondary-tab-active-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_container-color: var(--md-secondary-tab-container-color, var(--md-sys-color-surface, #fef7ff));--_container-elevation: var(--md-secondary-tab-container-elevation, 0);--_container-height: var(--md-secondary-tab-container-height, 48px);--_focus-label-text-color: var(--md-secondary-tab-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-secondary-tab-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-color: var(--md-secondary-tab-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-secondary-tab-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-secondary-tab-label-text-font, var(--md-sys-typescale-title-small-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-secondary-tab-label-text-line-height, var(--md-sys-typescale-title-small-line-height, 1.25rem));--_label-text-size: var(--md-secondary-tab-label-text-size, var(--md-sys-typescale-title-small-size, 0.875rem));--_label-text-weight: var(--md-secondary-tab-label-text-weight, var(--md-sys-typescale-title-small-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-secondary-tab-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-secondary-tab-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-opacity: var(--md-secondary-tab-pressed-state-layer-opacity, 0.12);--_active-focus-icon-color: var(--md-secondary-tab-active-focus-icon-color, );--_active-focus-label-text-color: var(--md-secondary-tab-active-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-icon-color: var(--md-secondary-tab-active-hover-icon-color, );--_active-hover-label-text-color: var(--md-secondary-tab-active-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-state-layer-color: var(--md-secondary-tab-active-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-state-layer-opacity: var(--md-secondary-tab-active-hover-state-layer-opacity, 0.08);--_active-icon-color: var(--md-secondary-tab-active-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_active-indicator-shape: var(--md-secondary-tab-active-indicator-shape, 0);--_active-pressed-icon-color: var(--md-secondary-tab-active-pressed-icon-color, );--_active-pressed-label-text-color: var(--md-secondary-tab-active-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-pressed-state-layer-color: var(--md-secondary-tab-active-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-pressed-state-layer-opacity: var(--md-secondary-tab-active-pressed-state-layer-opacity, 0.12);--_label-text-color: var(--md-secondary-tab-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-icon-color: var(--md-secondary-tab-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-icon-color: var(--md-secondary-tab-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-secondary-tab-icon-size, 24px);--_icon-color: var(--md-secondary-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-secondary-tab-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-secondary-tab-container-shape-start-start, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-start-end: var(--md-secondary-tab-container-shape-start-end, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-end: var(--md-secondary-tab-container-shape-end-end, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-secondary-tab-container-shape-end-start, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)))} + */const md=_`:host{--_active-indicator-color: var(--md-secondary-tab-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-secondary-tab-active-indicator-height, 2px);--_active-label-text-color: var(--md-secondary-tab-active-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_container-color: var(--md-secondary-tab-container-color, var(--md-sys-color-surface, #fef7ff));--_container-elevation: var(--md-secondary-tab-container-elevation, 0);--_container-height: var(--md-secondary-tab-container-height, 48px);--_focus-label-text-color: var(--md-secondary-tab-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-secondary-tab-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-color: var(--md-secondary-tab-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-secondary-tab-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-secondary-tab-label-text-font, var(--md-sys-typescale-title-small-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-secondary-tab-label-text-line-height, var(--md-sys-typescale-title-small-line-height, 1.25rem));--_label-text-size: var(--md-secondary-tab-label-text-size, var(--md-sys-typescale-title-small-size, 0.875rem));--_label-text-weight: var(--md-secondary-tab-label-text-weight, var(--md-sys-typescale-title-small-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-label-text-color: var(--md-secondary-tab-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-color: var(--md-secondary-tab-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_pressed-state-layer-opacity: var(--md-secondary-tab-pressed-state-layer-opacity, 0.12);--_active-focus-icon-color: var(--md-secondary-tab-active-focus-icon-color, );--_active-focus-label-text-color: var(--md-secondary-tab-active-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-icon-color: var(--md-secondary-tab-active-hover-icon-color, );--_active-hover-label-text-color: var(--md-secondary-tab-active-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-state-layer-color: var(--md-secondary-tab-active-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-state-layer-opacity: var(--md-secondary-tab-active-hover-state-layer-opacity, 0.08);--_active-icon-color: var(--md-secondary-tab-active-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_active-indicator-shape: var(--md-secondary-tab-active-indicator-shape, 0);--_active-pressed-icon-color: var(--md-secondary-tab-active-pressed-icon-color, );--_active-pressed-label-text-color: var(--md-secondary-tab-active-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-pressed-state-layer-color: var(--md-secondary-tab-active-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-pressed-state-layer-opacity: var(--md-secondary-tab-active-pressed-state-layer-opacity, 0.12);--_label-text-color: var(--md-secondary-tab-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-icon-color: var(--md-secondary-tab-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-icon-color: var(--md-secondary-tab-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-secondary-tab-icon-size, 24px);--_icon-color: var(--md-secondary-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-icon-color: var(--md-secondary-tab-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_container-shape-start-start: var(--md-secondary-tab-container-shape-start-start, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-start-end: var(--md-secondary-tab-container-shape-start-end, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-end: var(--md-secondary-tab-container-shape-end-end, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-secondary-tab-container-shape-end-start, var(--md-secondary-tab-container-shape, var(--md-sys-shape-corner-none, 0px)))} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Io=class extends fl{};Io.styles=[pa,bl];Io=n([w("md-secondary-tab")],Io);/** + */let ii=class extends vd{};ii.styles=[cn,md];ii=l([S("md-secondary-tab")],ii);/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class pt extends C{get activeTab(){return this.tabs.find(e=>e.active)??null}set activeTab(e){e&&this.activateTab(e)}get activeTabIndex(){return this.tabs.findIndex(e=>e.active)}set activeTabIndex(e){const t=()=>{const r=this.tabs[e];r&&this.activateTab(r)};if(!this.slotElement){this.updateComplete.then(t);return}t()}get focusedTab(){return this.tabs.find(e=>e.matches(":focus-within"))}constructor(){super(),this.autoActivate=!1,this.internals=this.attachInternals(),this.internals.role="tablist",this.addEventListener("keydown",this.handleKeydown.bind(this)),this.addEventListener("keyup",this.handleKeyup.bind(this)),this.addEventListener("focusout",this.handleFocusout.bind(this))}async scrollToTab(e){await this.updateComplete;const{tabs:t}=this;if(e??(e=this.activeTab),!e||!t.includes(e)||!this.tabsScrollerElement)return;for(const m of this.tabs)await m.updateComplete;const r=e.offsetLeft,i=e.offsetWidth,a=this.scrollLeft,s=this.offsetWidth,d=48,c=r-d,f=r+i-s+d,v=Math.min(c,Math.max(f,a)),u=this.focusedTab?"auto":"instant";this.tabsScrollerElement.scrollTo({behavior:u,top:0,left:v})}render(){return p` + */class _t extends ${get activeTab(){return this.tabs.find(e=>e.active)??null}set activeTab(e){e&&this.activateTab(e)}get activeTabIndex(){return this.tabs.findIndex(e=>e.active)}set activeTabIndex(e){const t=()=>{const o=this.tabs[e];o&&this.activateTab(o)};if(!this.slotElement){this.updateComplete.then(t);return}t()}get focusedTab(){return this.tabs.find(e=>e.matches(":focus-within"))}constructor(){super(),this.autoActivate=!1,this.internals=this.attachInternals(),this.internals.role="tablist",this.addEventListener("keydown",this.handleKeydown.bind(this)),this.addEventListener("keyup",this.handleKeyup.bind(this)),this.addEventListener("focusout",this.handleFocusout.bind(this))}async scrollToTab(e){await this.updateComplete;const{tabs:t}=this;if(e??(e=this.activeTab),!e||!t.includes(e)||!this.tabsScrollerElement)return;for(const f of this.tabs)await f.updateComplete;const o=e.offsetLeft,i=e.offsetWidth,a=this.scrollLeft,n=this.offsetWidth,s=48,d=o-s,h=o+i-n+s,v=Math.min(d,Math.max(h,a)),u=this.focusedTab?"auto":"instant";this.tabsScrollerElement.scrollTo({behavior:u,top:0,left:v})}render(){return m`
    - `}async handleTabClick(e){const t=e.target;await 0,!(e.defaultPrevented||!yl(t)||t.active)&&this.activateTab(t)}activateTab(e){const{tabs:t}=this,r=this.activeTab;if(!(!t.includes(e)||r===e)){for(const i of t)i.active=i===e;if(r){if(!this.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0}))){for(const a of t)a.active=a===r;return}e[ca](r)}this.updateFocusableTab(e),this.scrollToTab(e)}}updateFocusableTab(e){for(const t of this.tabs)t.tabIndex=t===e?0:-1}async handleKeydown(e){await 0;const t=e.key==="ArrowLeft",r=e.key==="ArrowRight",i=e.key==="Home",a=e.key==="End";if(e.defaultPrevented||!t&&!r&&!i&&!a)return;const{tabs:s}=this;if(s.length<2)return;e.preventDefault();let d;if(i||a)d=i?0:s.length-1;else{const v=getComputedStyle(this).direction==="rtl"?t:r,{focusedTab:u}=this;if(!u)d=v?0:s.length-1;else{const m=this.tabs.indexOf(u);d=v?m+1:m-1,d>=s.length?d=0:d<0&&(d=s.length-1)}}const c=s[d];c.focus(),this.autoActivate?this.activateTab(c):this.updateFocusableTab(c)}handleKeyup(){this.scrollToTab(this.focusedTab??this.activeTab)}handleFocusout(){if(this.matches(":focus-within"))return;const{activeTab:e}=this;e&&this.updateFocusableTab(e)}handleSlotChange(){const e=this.tabs[0];!this.activeTab&&e&&this.activateTab(e),this.scrollToTab(this.activeTab)}}n([ee({flatten:!0,selector:"[md-tab]"})],pt.prototype,"tabs",void 0);n([l({type:Number,attribute:"active-tab-index"})],pt.prototype,"activeTabIndex",null);n([l({type:Boolean,attribute:"auto-activate"})],pt.prototype,"autoActivate",void 0);n([E(".tabs")],pt.prototype,"tabsScrollerElement",void 0);n([E("slot")],pt.prototype,"slotElement",void 0);function yl(o){return o instanceof HTMLElement&&o.hasAttribute("md-tab")}/** + `}async handleTabClick(e){const t=e.target;await 0,!(e.defaultPrevented||!fd(t)||t.active)&&this.activateTab(t)}activateTab(e){const{tabs:t}=this,o=this.activeTab;if(!(!t.includes(e)||o===e)){for(const i of t)i.active=i===e;if(o){if(!this.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0}))){for(const a of t)a.active=a===o;return}e[sn](o)}this.updateFocusableTab(e),this.scrollToTab(e)}}updateFocusableTab(e){for(const t of this.tabs)t.tabIndex=t===e?0:-1}async handleKeydown(e){await 0;const t=e.key==="ArrowLeft",o=e.key==="ArrowRight",i=e.key==="Home",a=e.key==="End";if(e.defaultPrevented||!t&&!o&&!i&&!a)return;const{tabs:n}=this;if(n.length<2)return;e.preventDefault();let s;if(i||a)s=i?0:n.length-1;else{const v=getComputedStyle(this).direction==="rtl"?t:o,{focusedTab:u}=this;if(!u)s=v?0:n.length-1;else{const f=this.tabs.indexOf(u);s=v?f+1:f-1,s>=n.length?s=0:s<0&&(s=n.length-1)}}const d=n[s];d.focus(),this.autoActivate?this.activateTab(d):this.updateFocusableTab(d)}handleKeyup(){this.scrollToTab(this.focusedTab??this.activeTab)}handleFocusout(){if(this.matches(":focus-within"))return;const{activeTab:e}=this;e&&this.updateFocusableTab(e)}handleSlotChange(){const e=this.tabs[0];!this.activeTab&&e&&this.activateTab(e),this.scrollToTab(this.activeTab)}}l([oe({flatten:!0,selector:"[md-tab]"})],_t.prototype,"tabs",void 0);l([c({type:Number,attribute:"active-tab-index"})],_t.prototype,"activeTabIndex",null);l([c({type:Boolean,attribute:"auto-activate"})],_t.prototype,"autoActivate",void 0);l([B(".tabs")],_t.prototype,"tabsScrollerElement",void 0);l([B("slot")],_t.prototype,"slotElement",void 0);function fd(r){return r instanceof HTMLElement&&r.hasAttribute("md-tab")}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const gl=x`:host{box-sizing:border-box;display:flex;flex-direction:column;overflow:auto;scroll-behavior:smooth;scrollbar-width:none;position:relative}:host([hidden]){display:none}:host::-webkit-scrollbar{display:none}.tabs{align-items:end;display:flex;height:100%;overflow:inherit;scroll-behavior:inherit;scrollbar-width:inherit;justify-content:space-between;width:100%}::slotted(*){flex:1}::slotted([active]){z-index:1} + */const bd=_`:host{box-sizing:border-box;display:flex;flex-direction:column;overflow:auto;scroll-behavior:smooth;scrollbar-width:none;position:relative}:host([hidden]){display:none}:host::-webkit-scrollbar{display:none}.tabs{align-items:end;display:flex;height:100%;overflow:inherit;scroll-behavior:inherit;scrollbar-width:inherit;justify-content:space-between;width:100%}::slotted(*){flex:1}::slotted([active]){z-index:1} `;/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let To=class extends pt{};To.styles=[gl];To=n([w("md-tabs")],To);/** + */let ai=class extends _t{};ai.styles=[bd];ai=l([S("md-tabs")],ai);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const xl=x`:host{--_active-indicator-color: var(--md-filled-text-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_active-indicator-height: var(--md-filled-text-field-active-indicator-height, 1px);--_caret-color: var(--md-filled-text-field-caret-color, var(--md-sys-color-primary, #6750a4));--_container-color: var(--md-filled-text-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_disabled-active-indicator-color: var(--md-filled-text-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-indicator-height: var(--md-filled-text-field-disabled-active-indicator-height, 1px);--_disabled-active-indicator-opacity: var(--md-filled-text-field-disabled-active-indicator-opacity, 0.38);--_disabled-container-color: var(--md-filled-text-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-text-field-disabled-container-opacity, 0.04);--_disabled-input-text-color: var(--md-filled-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-input-text-opacity: var(--md-filled-text-field-disabled-input-text-opacity, 0.38);--_disabled-label-text-color: var(--md-filled-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-text-field-disabled-label-text-opacity, 0.38);--_disabled-leading-icon-color: var(--md-filled-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-filled-text-field-disabled-leading-icon-opacity, 0.38);--_disabled-supporting-text-color: var(--md-filled-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-filled-text-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-icon-color: var(--md-filled-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-filled-text-field-disabled-trailing-icon-opacity, 0.38);--_error-active-indicator-color: var(--md-filled-text-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-active-indicator-color: var(--md-filled-text-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-caret-color: var(--md-filled-text-field-error-focus-caret-color, var(--md-sys-color-error, #b3261e));--_error-focus-input-text-color: var(--md-filled-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-filled-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-icon-color: var(--md-filled-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-supporting-text-color: var(--md-filled-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-icon-color: var(--md-filled-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_error-hover-active-indicator-color: var(--md-filled-text-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-input-text-color: var(--md-filled-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-filled-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-icon-color: var(--md-filled-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-state-layer-color: var(--md-filled-text-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-state-layer-opacity: var(--md-filled-text-field-error-hover-state-layer-opacity, 0.08);--_error-hover-supporting-text-color: var(--md-filled-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-icon-color: var(--md-filled-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_error-input-text-color: var(--md-filled-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-label-text-color: var(--md-filled-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-icon-color: var(--md-filled-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-supporting-text-color: var(--md-filled-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-icon-color: var(--md-filled-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_focus-active-indicator-color: var(--md-filled-text-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_focus-active-indicator-height: var(--md-filled-text-field-focus-active-indicator-height, 3px);--_focus-input-text-color: var(--md-filled-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-filled-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-filled-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-supporting-text-color: var(--md-filled-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-icon-color: var(--md-filled-text-field-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-active-indicator-color: var(--md-filled-text-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-active-indicator-height: var(--md-filled-text-field-hover-active-indicator-height, 1px);--_hover-input-text-color: var(--md-filled-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-filled-text-field-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-leading-icon-color: var(--md-filled-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filled-text-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-filled-text-field-hover-state-layer-opacity, 0.08);--_hover-supporting-text-color: var(--md-filled-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-filled-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-color: var(--md-filled-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_input-text-font: var(--md-filled-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_input-text-line-height: var(--md-filled-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_input-text-placeholder-color: var(--md-filled-text-field-input-text-placeholder-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-prefix-color: var(--md-filled-text-field-input-text-prefix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-size: var(--md-filled-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_input-text-suffix-color: var(--md-filled-text-field-input-text-suffix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-weight: var(--md-filled-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_label-text-color: var(--md-filled-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-filled-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-filled-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-filled-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-filled-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-filled-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-icon-color: var(--md-filled-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-icon-size: var(--md-filled-text-field-leading-icon-size, 24px);--_supporting-text-color: var(--md-filled-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-filled-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-line-height: var(--md-filled-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-filled-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-weight: var(--md-filled-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_trailing-icon-color: var(--md-filled-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-size: var(--md-filled-text-field-trailing-icon-size, 24px);--_container-shape-start-start: var(--md-filled-text-field-container-shape-start-start, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-filled-text-field-container-shape-start-end, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-filled-text-field-container-shape-end-end, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-filled-text-field-container-shape-end-start, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_icon-input-space: var(--md-filled-text-field-icon-input-space, 16px);--_leading-space: var(--md-filled-text-field-leading-space, 16px);--_trailing-space: var(--md-filled-text-field-trailing-space, 16px);--_top-space: var(--md-filled-text-field-top-space, 16px);--_bottom-space: var(--md-filled-text-field-bottom-space, 16px);--_input-text-prefix-trailing-space: var(--md-filled-text-field-input-text-prefix-trailing-space, 2px);--_input-text-suffix-leading-space: var(--md-filled-text-field-input-text-suffix-leading-space, 2px);--_with-label-top-space: var(--md-filled-text-field-with-label-top-space, 8px);--_with-label-bottom-space: var(--md-filled-text-field-with-label-bottom-space, 8px);--_focus-caret-color: var(--md-filled-text-field-focus-caret-color, var(--md-sys-color-primary, #6750a4));--_with-leading-icon-leading-space: var(--md-filled-text-field-with-leading-icon-leading-space, 12px);--_with-trailing-icon-trailing-space: var(--md-filled-text-field-with-trailing-icon-trailing-space, 12px);--md-filled-field-active-indicator-color: var(--_active-indicator-color);--md-filled-field-active-indicator-height: var(--_active-indicator-height);--md-filled-field-bottom-space: var(--_bottom-space);--md-filled-field-container-color: var(--_container-color);--md-filled-field-container-shape-end-end: var(--_container-shape-end-end);--md-filled-field-container-shape-end-start: var(--_container-shape-end-start);--md-filled-field-container-shape-start-end: var(--_container-shape-start-end);--md-filled-field-container-shape-start-start: var(--_container-shape-start-start);--md-filled-field-content-color: var(--_input-text-color);--md-filled-field-content-font: var(--_input-text-font);--md-filled-field-content-line-height: var(--_input-text-line-height);--md-filled-field-content-size: var(--_input-text-size);--md-filled-field-content-space: var(--_icon-input-space);--md-filled-field-content-weight: var(--_input-text-weight);--md-filled-field-disabled-active-indicator-color: var(--_disabled-active-indicator-color);--md-filled-field-disabled-active-indicator-height: var(--_disabled-active-indicator-height);--md-filled-field-disabled-active-indicator-opacity: var(--_disabled-active-indicator-opacity);--md-filled-field-disabled-container-color: var(--_disabled-container-color);--md-filled-field-disabled-container-opacity: var(--_disabled-container-opacity);--md-filled-field-disabled-content-color: var(--_disabled-input-text-color);--md-filled-field-disabled-content-opacity: var(--_disabled-input-text-opacity);--md-filled-field-disabled-label-text-color: var(--_disabled-label-text-color);--md-filled-field-disabled-label-text-opacity: var(--_disabled-label-text-opacity);--md-filled-field-disabled-leading-content-color: var(--_disabled-leading-icon-color);--md-filled-field-disabled-leading-content-opacity: var(--_disabled-leading-icon-opacity);--md-filled-field-disabled-supporting-text-color: var(--_disabled-supporting-text-color);--md-filled-field-disabled-supporting-text-opacity: var(--_disabled-supporting-text-opacity);--md-filled-field-disabled-trailing-content-color: var(--_disabled-trailing-icon-color);--md-filled-field-disabled-trailing-content-opacity: var(--_disabled-trailing-icon-opacity);--md-filled-field-error-active-indicator-color: var(--_error-active-indicator-color);--md-filled-field-error-content-color: var(--_error-input-text-color);--md-filled-field-error-focus-active-indicator-color: var(--_error-focus-active-indicator-color);--md-filled-field-error-focus-content-color: var(--_error-focus-input-text-color);--md-filled-field-error-focus-label-text-color: var(--_error-focus-label-text-color);--md-filled-field-error-focus-leading-content-color: var(--_error-focus-leading-icon-color);--md-filled-field-error-focus-supporting-text-color: var(--_error-focus-supporting-text-color);--md-filled-field-error-focus-trailing-content-color: var(--_error-focus-trailing-icon-color);--md-filled-field-error-hover-active-indicator-color: var(--_error-hover-active-indicator-color);--md-filled-field-error-hover-content-color: var(--_error-hover-input-text-color);--md-filled-field-error-hover-label-text-color: var(--_error-hover-label-text-color);--md-filled-field-error-hover-leading-content-color: var(--_error-hover-leading-icon-color);--md-filled-field-error-hover-state-layer-color: var(--_error-hover-state-layer-color);--md-filled-field-error-hover-state-layer-opacity: var(--_error-hover-state-layer-opacity);--md-filled-field-error-hover-supporting-text-color: var(--_error-hover-supporting-text-color);--md-filled-field-error-hover-trailing-content-color: var(--_error-hover-trailing-icon-color);--md-filled-field-error-label-text-color: var(--_error-label-text-color);--md-filled-field-error-leading-content-color: var(--_error-leading-icon-color);--md-filled-field-error-supporting-text-color: var(--_error-supporting-text-color);--md-filled-field-error-trailing-content-color: var(--_error-trailing-icon-color);--md-filled-field-focus-active-indicator-color: var(--_focus-active-indicator-color);--md-filled-field-focus-active-indicator-height: var(--_focus-active-indicator-height);--md-filled-field-focus-content-color: var(--_focus-input-text-color);--md-filled-field-focus-label-text-color: var(--_focus-label-text-color);--md-filled-field-focus-leading-content-color: var(--_focus-leading-icon-color);--md-filled-field-focus-supporting-text-color: var(--_focus-supporting-text-color);--md-filled-field-focus-trailing-content-color: var(--_focus-trailing-icon-color);--md-filled-field-hover-active-indicator-color: var(--_hover-active-indicator-color);--md-filled-field-hover-active-indicator-height: var(--_hover-active-indicator-height);--md-filled-field-hover-content-color: var(--_hover-input-text-color);--md-filled-field-hover-label-text-color: var(--_hover-label-text-color);--md-filled-field-hover-leading-content-color: var(--_hover-leading-icon-color);--md-filled-field-hover-state-layer-color: var(--_hover-state-layer-color);--md-filled-field-hover-state-layer-opacity: var(--_hover-state-layer-opacity);--md-filled-field-hover-supporting-text-color: var(--_hover-supporting-text-color);--md-filled-field-hover-trailing-content-color: var(--_hover-trailing-icon-color);--md-filled-field-label-text-color: var(--_label-text-color);--md-filled-field-label-text-font: var(--_label-text-font);--md-filled-field-label-text-line-height: var(--_label-text-line-height);--md-filled-field-label-text-populated-line-height: var(--_label-text-populated-line-height);--md-filled-field-label-text-populated-size: var(--_label-text-populated-size);--md-filled-field-label-text-size: var(--_label-text-size);--md-filled-field-label-text-weight: var(--_label-text-weight);--md-filled-field-leading-content-color: var(--_leading-icon-color);--md-filled-field-leading-space: var(--_leading-space);--md-filled-field-supporting-text-color: var(--_supporting-text-color);--md-filled-field-supporting-text-font: var(--_supporting-text-font);--md-filled-field-supporting-text-line-height: var(--_supporting-text-line-height);--md-filled-field-supporting-text-size: var(--_supporting-text-size);--md-filled-field-supporting-text-weight: var(--_supporting-text-weight);--md-filled-field-top-space: var(--_top-space);--md-filled-field-trailing-content-color: var(--_trailing-icon-color);--md-filled-field-trailing-space: var(--_trailing-space);--md-filled-field-with-label-bottom-space: var(--_with-label-bottom-space);--md-filled-field-with-label-top-space: var(--_with-label-top-space);--md-filled-field-with-leading-content-leading-space: var(--_with-leading-icon-leading-space);--md-filled-field-with-trailing-content-trailing-space: var(--_with-trailing-icon-trailing-space)} + */const gd=_`:host{--_active-indicator-color: var(--md-filled-text-field-active-indicator-color, var(--md-sys-color-on-surface-variant, #49454f));--_active-indicator-height: var(--md-filled-text-field-active-indicator-height, 1px);--_caret-color: var(--md-filled-text-field-caret-color, var(--md-sys-color-primary, #6750a4));--_container-color: var(--md-filled-text-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_disabled-active-indicator-color: var(--md-filled-text-field-disabled-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-active-indicator-height: var(--md-filled-text-field-disabled-active-indicator-height, 1px);--_disabled-active-indicator-opacity: var(--md-filled-text-field-disabled-active-indicator-opacity, 0.38);--_disabled-container-color: var(--md-filled-text-field-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-container-opacity: var(--md-filled-text-field-disabled-container-opacity, 0.04);--_disabled-input-text-color: var(--md-filled-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-input-text-opacity: var(--md-filled-text-field-disabled-input-text-opacity, 0.38);--_disabled-label-text-color: var(--md-filled-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-filled-text-field-disabled-label-text-opacity, 0.38);--_disabled-leading-icon-color: var(--md-filled-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-filled-text-field-disabled-leading-icon-opacity, 0.38);--_disabled-supporting-text-color: var(--md-filled-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-filled-text-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-icon-color: var(--md-filled-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-filled-text-field-disabled-trailing-icon-opacity, 0.38);--_error-active-indicator-color: var(--md-filled-text-field-error-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-active-indicator-color: var(--md-filled-text-field-error-focus-active-indicator-color, var(--md-sys-color-error, #b3261e));--_error-focus-caret-color: var(--md-filled-text-field-error-focus-caret-color, var(--md-sys-color-error, #b3261e));--_error-focus-input-text-color: var(--md-filled-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-filled-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-icon-color: var(--md-filled-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-supporting-text-color: var(--md-filled-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-icon-color: var(--md-filled-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_error-hover-active-indicator-color: var(--md-filled-text-field-error-hover-active-indicator-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-input-text-color: var(--md-filled-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-filled-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-icon-color: var(--md-filled-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-state-layer-color: var(--md-filled-text-field-error-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-state-layer-opacity: var(--md-filled-text-field-error-hover-state-layer-opacity, 0.08);--_error-hover-supporting-text-color: var(--md-filled-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-icon-color: var(--md-filled-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_error-input-text-color: var(--md-filled-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-label-text-color: var(--md-filled-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-icon-color: var(--md-filled-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-supporting-text-color: var(--md-filled-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-icon-color: var(--md-filled-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_focus-active-indicator-color: var(--md-filled-text-field-focus-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_focus-active-indicator-height: var(--md-filled-text-field-focus-active-indicator-height, 3px);--_focus-input-text-color: var(--md-filled-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-filled-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-filled-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-supporting-text-color: var(--md-filled-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-icon-color: var(--md-filled-text-field-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-active-indicator-color: var(--md-filled-text-field-hover-active-indicator-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-active-indicator-height: var(--md-filled-text-field-hover-active-indicator-height, 1px);--_hover-input-text-color: var(--md-filled-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-filled-text-field-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-leading-icon-color: var(--md-filled-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color: var(--md-filled-text-field-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-filled-text-field-hover-state-layer-opacity, 0.08);--_hover-supporting-text-color: var(--md-filled-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-filled-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-color: var(--md-filled-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_input-text-font: var(--md-filled-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_input-text-line-height: var(--md-filled-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_input-text-placeholder-color: var(--md-filled-text-field-input-text-placeholder-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-prefix-color: var(--md-filled-text-field-input-text-prefix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-size: var(--md-filled-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_input-text-suffix-color: var(--md-filled-text-field-input-text-suffix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-weight: var(--md-filled-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_label-text-color: var(--md-filled-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-filled-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-filled-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-filled-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-filled-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-filled-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-filled-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-icon-color: var(--md-filled-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-icon-size: var(--md-filled-text-field-leading-icon-size, 24px);--_supporting-text-color: var(--md-filled-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-filled-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-line-height: var(--md-filled-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-filled-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-weight: var(--md-filled-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_trailing-icon-color: var(--md-filled-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-size: var(--md-filled-text-field-trailing-icon-size, 24px);--_container-shape-start-start: var(--md-filled-text-field-container-shape-start-start, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-filled-text-field-container-shape-start-end, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-filled-text-field-container-shape-end-end, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_container-shape-end-start: var(--md-filled-text-field-container-shape-end-start, var(--md-filled-text-field-container-shape, var(--md-sys-shape-corner-none, 0px)));--_icon-input-space: var(--md-filled-text-field-icon-input-space, 16px);--_leading-space: var(--md-filled-text-field-leading-space, 16px);--_trailing-space: var(--md-filled-text-field-trailing-space, 16px);--_top-space: var(--md-filled-text-field-top-space, 16px);--_bottom-space: var(--md-filled-text-field-bottom-space, 16px);--_input-text-prefix-trailing-space: var(--md-filled-text-field-input-text-prefix-trailing-space, 2px);--_input-text-suffix-leading-space: var(--md-filled-text-field-input-text-suffix-leading-space, 2px);--_with-label-top-space: var(--md-filled-text-field-with-label-top-space, 8px);--_with-label-bottom-space: var(--md-filled-text-field-with-label-bottom-space, 8px);--_focus-caret-color: var(--md-filled-text-field-focus-caret-color, var(--md-sys-color-primary, #6750a4));--_with-leading-icon-leading-space: var(--md-filled-text-field-with-leading-icon-leading-space, 12px);--_with-trailing-icon-trailing-space: var(--md-filled-text-field-with-trailing-icon-trailing-space, 12px);--md-filled-field-active-indicator-color: var(--_active-indicator-color);--md-filled-field-active-indicator-height: var(--_active-indicator-height);--md-filled-field-bottom-space: var(--_bottom-space);--md-filled-field-container-color: var(--_container-color);--md-filled-field-container-shape-end-end: var(--_container-shape-end-end);--md-filled-field-container-shape-end-start: var(--_container-shape-end-start);--md-filled-field-container-shape-start-end: var(--_container-shape-start-end);--md-filled-field-container-shape-start-start: var(--_container-shape-start-start);--md-filled-field-content-color: var(--_input-text-color);--md-filled-field-content-font: var(--_input-text-font);--md-filled-field-content-line-height: var(--_input-text-line-height);--md-filled-field-content-size: var(--_input-text-size);--md-filled-field-content-space: var(--_icon-input-space);--md-filled-field-content-weight: var(--_input-text-weight);--md-filled-field-disabled-active-indicator-color: var(--_disabled-active-indicator-color);--md-filled-field-disabled-active-indicator-height: var(--_disabled-active-indicator-height);--md-filled-field-disabled-active-indicator-opacity: var(--_disabled-active-indicator-opacity);--md-filled-field-disabled-container-color: var(--_disabled-container-color);--md-filled-field-disabled-container-opacity: var(--_disabled-container-opacity);--md-filled-field-disabled-content-color: var(--_disabled-input-text-color);--md-filled-field-disabled-content-opacity: var(--_disabled-input-text-opacity);--md-filled-field-disabled-label-text-color: var(--_disabled-label-text-color);--md-filled-field-disabled-label-text-opacity: var(--_disabled-label-text-opacity);--md-filled-field-disabled-leading-content-color: var(--_disabled-leading-icon-color);--md-filled-field-disabled-leading-content-opacity: var(--_disabled-leading-icon-opacity);--md-filled-field-disabled-supporting-text-color: var(--_disabled-supporting-text-color);--md-filled-field-disabled-supporting-text-opacity: var(--_disabled-supporting-text-opacity);--md-filled-field-disabled-trailing-content-color: var(--_disabled-trailing-icon-color);--md-filled-field-disabled-trailing-content-opacity: var(--_disabled-trailing-icon-opacity);--md-filled-field-error-active-indicator-color: var(--_error-active-indicator-color);--md-filled-field-error-content-color: var(--_error-input-text-color);--md-filled-field-error-focus-active-indicator-color: var(--_error-focus-active-indicator-color);--md-filled-field-error-focus-content-color: var(--_error-focus-input-text-color);--md-filled-field-error-focus-label-text-color: var(--_error-focus-label-text-color);--md-filled-field-error-focus-leading-content-color: var(--_error-focus-leading-icon-color);--md-filled-field-error-focus-supporting-text-color: var(--_error-focus-supporting-text-color);--md-filled-field-error-focus-trailing-content-color: var(--_error-focus-trailing-icon-color);--md-filled-field-error-hover-active-indicator-color: var(--_error-hover-active-indicator-color);--md-filled-field-error-hover-content-color: var(--_error-hover-input-text-color);--md-filled-field-error-hover-label-text-color: var(--_error-hover-label-text-color);--md-filled-field-error-hover-leading-content-color: var(--_error-hover-leading-icon-color);--md-filled-field-error-hover-state-layer-color: var(--_error-hover-state-layer-color);--md-filled-field-error-hover-state-layer-opacity: var(--_error-hover-state-layer-opacity);--md-filled-field-error-hover-supporting-text-color: var(--_error-hover-supporting-text-color);--md-filled-field-error-hover-trailing-content-color: var(--_error-hover-trailing-icon-color);--md-filled-field-error-label-text-color: var(--_error-label-text-color);--md-filled-field-error-leading-content-color: var(--_error-leading-icon-color);--md-filled-field-error-supporting-text-color: var(--_error-supporting-text-color);--md-filled-field-error-trailing-content-color: var(--_error-trailing-icon-color);--md-filled-field-focus-active-indicator-color: var(--_focus-active-indicator-color);--md-filled-field-focus-active-indicator-height: var(--_focus-active-indicator-height);--md-filled-field-focus-content-color: var(--_focus-input-text-color);--md-filled-field-focus-label-text-color: var(--_focus-label-text-color);--md-filled-field-focus-leading-content-color: var(--_focus-leading-icon-color);--md-filled-field-focus-supporting-text-color: var(--_focus-supporting-text-color);--md-filled-field-focus-trailing-content-color: var(--_focus-trailing-icon-color);--md-filled-field-hover-active-indicator-color: var(--_hover-active-indicator-color);--md-filled-field-hover-active-indicator-height: var(--_hover-active-indicator-height);--md-filled-field-hover-content-color: var(--_hover-input-text-color);--md-filled-field-hover-label-text-color: var(--_hover-label-text-color);--md-filled-field-hover-leading-content-color: var(--_hover-leading-icon-color);--md-filled-field-hover-state-layer-color: var(--_hover-state-layer-color);--md-filled-field-hover-state-layer-opacity: var(--_hover-state-layer-opacity);--md-filled-field-hover-supporting-text-color: var(--_hover-supporting-text-color);--md-filled-field-hover-trailing-content-color: var(--_hover-trailing-icon-color);--md-filled-field-label-text-color: var(--_label-text-color);--md-filled-field-label-text-font: var(--_label-text-font);--md-filled-field-label-text-line-height: var(--_label-text-line-height);--md-filled-field-label-text-populated-line-height: var(--_label-text-populated-line-height);--md-filled-field-label-text-populated-size: var(--_label-text-populated-size);--md-filled-field-label-text-size: var(--_label-text-size);--md-filled-field-label-text-weight: var(--_label-text-weight);--md-filled-field-leading-content-color: var(--_leading-icon-color);--md-filled-field-leading-space: var(--_leading-space);--md-filled-field-supporting-text-color: var(--_supporting-text-color);--md-filled-field-supporting-text-font: var(--_supporting-text-font);--md-filled-field-supporting-text-line-height: var(--_supporting-text-line-height);--md-filled-field-supporting-text-size: var(--_supporting-text-size);--md-filled-field-supporting-text-weight: var(--_supporting-text-weight);--md-filled-field-top-space: var(--_top-space);--md-filled-field-trailing-content-color: var(--_trailing-icon-color);--md-filled-field-trailing-space: var(--_trailing-space);--md-filled-field-with-label-bottom-space: var(--_with-label-bottom-space);--md-filled-field-with-label-top-space: var(--_with-label-top-space);--md-filled-field-with-leading-content-leading-space: var(--_with-leading-icon-leading-space);--md-filled-field-with-trailing-content-trailing-space: var(--_with-trailing-icon-trailing-space)} `;/** * @license * Copyright 2020 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const _l=o=>o.strings===void 0,wl={},kl=(o,e=wl)=>o._$AH=e;/** + */const yd=r=>r.strings===void 0,xd={},_d=(r,e=xd)=>r._$AH=e;/** * @license * Copyright 2020 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */const yi=Uo(class extends Ho{constructor(o){if(super(o),o.type!==De.PROPERTY&&o.type!==De.ATTRIBUTE&&o.type!==De.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!_l(o))throw Error("`live` bindings can only contain a single expression")}render(o){return o}update(o,[e]){if(e===ye||e===h)return e;const t=o.element,r=o.name;if(o.type===De.PROPERTY){if(e===t[r])return ye}else if(o.type===De.BOOLEAN_ATTRIBUTE){if(!!e===t.hasAttribute(r))return ye}else if(o.type===De.ATTRIBUTE&&t.getAttribute(r)===e+"")return ye;return kl(o),e}});/** + */const na=gi(class extends yi{constructor(r){if(super(r),r.type!==Ue.PROPERTY&&r.type!==Ue.ATTRIBUTE&&r.type!==Ue.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!yd(r))throw Error("`live` bindings can only contain a single expression")}render(r){return r}update(r,[e]){if(e===ge||e===p)return e;const t=r.element,o=r.name;if(r.type===Ue.PROPERTY){if(e===t[o])return ge}else if(r.type===Ue.BOOLEAN_ATTRIBUTE){if(!!e===t.hasAttribute(o))return ge}else if(r.type===Ue.ATTRIBUTE&&t.getAttribute(o)===e+"")return ge;return _d(r),e}});/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Cl={fromAttribute(o){return o??""},toAttribute(o){return o||null}};/** + */const wd={fromAttribute(r){return r??""},toAttribute(r){return r||null}};/** * @license * Copyright 2023 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class El extends pr{computeValidity({state:e,renderedControl:t}){let r=t;mt(e)&&!r?(r=this.inputControl||document.createElement("input"),this.inputControl=r):r||(r=this.textAreaControl||document.createElement("textarea"),this.textAreaControl=r);const i=mt(e)?r:null;if(i&&(i.type=e.type),r.value!==e.value&&(r.value=e.value),r.required=e.required,i){const a=e;a.pattern?i.pattern=a.pattern:i.removeAttribute("pattern"),a.min?i.min=a.min:i.removeAttribute("min"),a.max?i.max=a.max:i.removeAttribute("max"),a.step?i.step=a.step:i.removeAttribute("step")}return(e.minLength??-1)>-1?r.setAttribute("minlength",String(e.minLength)):r.removeAttribute("minlength"),(e.maxLength??-1)>-1?r.setAttribute("maxlength",String(e.maxLength)):r.removeAttribute("maxlength"),{validity:r.validity,validationMessage:r.validationMessage}}equals({state:e},{state:t}){const r=e.type===t.type&&e.value===t.value&&e.required===t.required&&e.minLength===t.minLength&&e.maxLength===t.maxLength;return!mt(e)||!mt(t)?r:r&&e.pattern===t.pattern&&e.min===t.min&&e.max===t.max&&e.step===t.step}copy({state:e}){return{state:mt(e)?this.copyInput(e):this.copyTextArea(e),renderedControl:null}}copyInput(e){const{type:t,pattern:r,min:i,max:a,step:s}=e;return{...this.copySharedState(e),type:t,pattern:r,min:i,max:a,step:s}}copyTextArea(e){return{...this.copySharedState(e),type:e.type}}copySharedState({value:e,required:t,minLength:r,maxLength:i}){return{value:e,required:t,minLength:r,maxLength:i}}}function mt(o){return o.type!=="textarea"}/** + */class kd extends Ro{computeValidity({state:e,renderedControl:t}){let o=t;Ct(e)&&!o?(o=this.inputControl||document.createElement("input"),this.inputControl=o):o||(o=this.textAreaControl||document.createElement("textarea"),this.textAreaControl=o);const i=Ct(e)?o:null;if(i&&(i.type=e.type),o.value!==e.value&&(o.value=e.value),o.required=e.required,i){const a=e;a.pattern?i.pattern=a.pattern:i.removeAttribute("pattern"),a.min?i.min=a.min:i.removeAttribute("min"),a.max?i.max=a.max:i.removeAttribute("max"),a.step?i.step=a.step:i.removeAttribute("step")}return(e.minLength??-1)>-1?o.setAttribute("minlength",String(e.minLength)):o.removeAttribute("minlength"),(e.maxLength??-1)>-1?o.setAttribute("maxlength",String(e.maxLength)):o.removeAttribute("maxlength"),{validity:o.validity,validationMessage:o.validationMessage}}equals({state:e},{state:t}){const o=e.type===t.type&&e.value===t.value&&e.required===t.required&&e.minLength===t.minLength&&e.maxLength===t.maxLength;return!Ct(e)||!Ct(t)?o:o&&e.pattern===t.pattern&&e.min===t.min&&e.max===t.max&&e.step===t.step}copy({state:e}){return{state:Ct(e)?this.copyInput(e):this.copyTextArea(e),renderedControl:null}}copyInput(e){const{type:t,pattern:o,min:i,max:a,step:n}=e;return{...this.copySharedState(e),type:t,pattern:o,min:i,max:a,step:n}}copyTextArea(e){return{...this.copySharedState(e),type:e.type}}copySharedState({value:e,required:t,minLength:o,maxLength:i}){return{value:e,required:t,minLength:o,maxLength:i}}}function Ct(r){return r.type!=="textarea"}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Il=ne(na(At(ct(qe(C)))));class I extends Il{constructor(){super(...arguments),this.error=!1,this.errorText="",this.label="",this.noAsterisk=!1,this.required=!1,this.value="",this.prefixText="",this.suffixText="",this.hasLeadingIcon=!1,this.hasTrailingIcon=!1,this.supportingText="",this.textDirection="",this.rows=2,this.cols=20,this.inputMode="",this.max="",this.maxLength=-1,this.min="",this.minLength=-1,this.noSpinner=!1,this.pattern="",this.placeholder="",this.readOnly=!1,this.multiple=!1,this.step="",this.type="text",this.autocomplete="",this.dirty=!1,this.focused=!1,this.nativeError=!1,this.nativeErrorText=""}get selectionDirection(){return this.getInputOrTextarea().selectionDirection}set selectionDirection(e){this.getInputOrTextarea().selectionDirection=e}get selectionEnd(){return this.getInputOrTextarea().selectionEnd}set selectionEnd(e){this.getInputOrTextarea().selectionEnd=e}get selectionStart(){return this.getInputOrTextarea().selectionStart}set selectionStart(e){this.getInputOrTextarea().selectionStart=e}get valueAsNumber(){const e=this.getInput();return e?e.valueAsNumber:NaN}set valueAsNumber(e){const t=this.getInput();t&&(t.valueAsNumber=e,this.value=t.value)}get valueAsDate(){const e=this.getInput();return e?e.valueAsDate:null}set valueAsDate(e){const t=this.getInput();t&&(t.valueAsDate=e,this.value=t.value)}get hasError(){return this.error||this.nativeError}select(){this.getInputOrTextarea().select()}setRangeText(...e){this.getInputOrTextarea().setRangeText(...e),this.value=this.getInputOrTextarea().value}setSelectionRange(e,t,r){this.getInputOrTextarea().setSelectionRange(e,t,r)}stepDown(e){const t=this.getInput();t&&(t.stepDown(e),this.value=t.value)}stepUp(e){const t=this.getInput();t&&(t.stepUp(e),this.value=t.value)}reset(){this.dirty=!1,this.value=this.getAttribute("value")??"",this.nativeError=!1,this.nativeErrorText=""}attributeChangedCallback(e,t,r){e==="value"&&this.dirty||super.attributeChangedCallback(e,t,r)}render(){const e={disabled:this.disabled,error:!this.disabled&&this.hasError,textarea:this.type==="textarea","no-spinner":this.noSpinner};return p` + */const Cd=se(rn(Nt(yt(Xe($)))));class R extends Cd{constructor(){super(...arguments),this.error=!1,this.errorText="",this.label="",this.noAsterisk=!1,this.required=!1,this.value="",this.prefixText="",this.suffixText="",this.hasLeadingIcon=!1,this.hasTrailingIcon=!1,this.supportingText="",this.textDirection="",this.rows=2,this.cols=20,this.inputMode="",this.max="",this.maxLength=-1,this.min="",this.minLength=-1,this.noSpinner=!1,this.pattern="",this.placeholder="",this.readOnly=!1,this.multiple=!1,this.step="",this.type="text",this.autocomplete="",this.dirty=!1,this.focused=!1,this.nativeError=!1,this.nativeErrorText=""}get selectionDirection(){return this.getInputOrTextarea().selectionDirection}set selectionDirection(e){this.getInputOrTextarea().selectionDirection=e}get selectionEnd(){return this.getInputOrTextarea().selectionEnd}set selectionEnd(e){this.getInputOrTextarea().selectionEnd=e}get selectionStart(){return this.getInputOrTextarea().selectionStart}set selectionStart(e){this.getInputOrTextarea().selectionStart=e}get valueAsNumber(){const e=this.getInput();return e?e.valueAsNumber:NaN}set valueAsNumber(e){const t=this.getInput();t&&(t.valueAsNumber=e,this.value=t.value)}get valueAsDate(){const e=this.getInput();return e?e.valueAsDate:null}set valueAsDate(e){const t=this.getInput();t&&(t.valueAsDate=e,this.value=t.value)}get hasError(){return this.error||this.nativeError}select(){this.getInputOrTextarea().select()}setRangeText(...e){this.getInputOrTextarea().setRangeText(...e),this.value=this.getInputOrTextarea().value}setSelectionRange(e,t,o){this.getInputOrTextarea().setSelectionRange(e,t,o)}stepDown(e){const t=this.getInput();t&&(t.stepDown(e),this.value=t.value)}stepUp(e){const t=this.getInput();t&&(t.stepUp(e),this.value=t.value)}reset(){this.dirty=!1,this.value=this.getAttribute("value")??"",this.nativeError=!1,this.nativeErrorText=""}attributeChangedCallback(e,t,o){e==="value"&&this.dirty||super.attributeChangedCallback(e,t,o)}render(){const e={disabled:this.disabled,error:!this.disabled&&this.hasError,textarea:this.type==="textarea","no-spinner":this.noSpinner};return m` ${this.renderField()} - `}updated(e){const t=this.getInputOrTextarea().value;this.value!==t&&(this.value=t)}renderField(){return zt`<${this.fieldTag} + `}updated(e){const t=this.getInputOrTextarea().value;this.value!==t&&(this.value=t)}renderField(){return Ht`<${this.fieldTag} class="field" count=${this.value.length} ?disabled=${this.disabled} @@ -1587,139 +1587,370 @@ ${this.renderTrailingIcon()}
    - `}renderLeadingIcon(){return p` + `}renderLeadingIcon(){return m` - `}renderTrailingIcon(){return p` + `}renderTrailingIcon(){return m` - `}renderInputOrTextarea(){const e={direction:this.textDirection},t=this.ariaLabel||this.label||h,r=this.autocomplete,i=(this.maxLength??-1)>-1,a=(this.minLength??-1)>-1;if(this.type==="textarea")return p` + `}renderInputOrTextarea(){const e={direction:this.textDirection},t=this.ariaLabel||this.label||p,o=this.autocomplete,i=(this.maxLength??-1)>-1,a=(this.minLength??-1)>-1;if(this.type==="textarea")return m` - `;const s=this.renderPrefix(),d=this.renderSuffix(),c=this.inputMode;return p` + `;const n=this.renderPrefix(),s=this.renderSuffix(),d=this.inputMode;return m`
    - ${s} + ${n} - ${d} + ${s}
    - `}renderPrefix(){return this.renderAffix(this.prefixText,!1)}renderSuffix(){return this.renderAffix(this.suffixText,!0)}renderAffix(e,t){return e?p`${e}`:h}getErrorText(){return this.error?this.errorText:this.nativeErrorText}handleFocusChange(){var e;this.focused=((e=this.inputOrTextarea)==null?void 0:e.matches(":focus"))??!1}handleInput(e){this.dirty=!0,this.value=e.target.value}redispatchEvent(e){Ue(this,e)}getInputOrTextarea(){return this.inputOrTextarea||(this.connectedCallback(),this.scheduleUpdate()),this.isUpdatePending&&this.scheduleUpdate(),this.inputOrTextarea}getInput(){return this.type==="textarea"?null:this.getInputOrTextarea()}handleIconChange(){this.hasLeadingIcon=this.leadingIcons.length>0,this.hasTrailingIcon=this.trailingIcons.length>0}[Re](){return this.value}formResetCallback(){this.reset()}formStateRestoreCallback(e){this.value=e}focus(){this.getInputOrTextarea().focus()}[Je](){return new El(()=>({state:this,renderedControl:this.inputOrTextarea}))}[et](){return this.inputOrTextarea}[ar](e){var r;e==null||e.preventDefault();const t=this.getErrorText();this.nativeError=!!e,this.nativeErrorText=this.validationMessage,t===this.getErrorText()&&((r=this.field)==null||r.reannounceError())}}I.shadowRootOptions={...C.shadowRootOptions,delegatesFocus:!0};n([l({type:Boolean,reflect:!0})],I.prototype,"error",void 0);n([l({attribute:"error-text"})],I.prototype,"errorText",void 0);n([l()],I.prototype,"label",void 0);n([l({type:Boolean,attribute:"no-asterisk"})],I.prototype,"noAsterisk",void 0);n([l({type:Boolean,reflect:!0})],I.prototype,"required",void 0);n([l()],I.prototype,"value",void 0);n([l({attribute:"prefix-text"})],I.prototype,"prefixText",void 0);n([l({attribute:"suffix-text"})],I.prototype,"suffixText",void 0);n([l({type:Boolean,attribute:"has-leading-icon"})],I.prototype,"hasLeadingIcon",void 0);n([l({type:Boolean,attribute:"has-trailing-icon"})],I.prototype,"hasTrailingIcon",void 0);n([l({attribute:"supporting-text"})],I.prototype,"supportingText",void 0);n([l({attribute:"text-direction"})],I.prototype,"textDirection",void 0);n([l({type:Number})],I.prototype,"rows",void 0);n([l({type:Number})],I.prototype,"cols",void 0);n([l({reflect:!0})],I.prototype,"inputMode",void 0);n([l()],I.prototype,"max",void 0);n([l({type:Number})],I.prototype,"maxLength",void 0);n([l()],I.prototype,"min",void 0);n([l({type:Number})],I.prototype,"minLength",void 0);n([l({type:Boolean,attribute:"no-spinner"})],I.prototype,"noSpinner",void 0);n([l()],I.prototype,"pattern",void 0);n([l({reflect:!0,converter:Cl})],I.prototype,"placeholder",void 0);n([l({type:Boolean,reflect:!0})],I.prototype,"readOnly",void 0);n([l({type:Boolean,reflect:!0})],I.prototype,"multiple",void 0);n([l()],I.prototype,"step",void 0);n([l({reflect:!0})],I.prototype,"type",void 0);n([l({reflect:!0})],I.prototype,"autocomplete",void 0);n([z()],I.prototype,"dirty",void 0);n([z()],I.prototype,"focused",void 0);n([z()],I.prototype,"nativeError",void 0);n([z()],I.prototype,"nativeErrorText",void 0);n([E(".input")],I.prototype,"inputOrTextarea",void 0);n([E(".field")],I.prototype,"field",void 0);n([ee({slot:"leading-icon"})],I.prototype,"leadingIcons",void 0);n([ee({slot:"trailing-icon"})],I.prototype,"trailingIcons",void 0);/** + `}renderPrefix(){return this.renderAffix(this.prefixText,!1)}renderSuffix(){return this.renderAffix(this.suffixText,!0)}renderAffix(e,t){return e?m`${e}`:p}getErrorText(){return this.error?this.errorText:this.nativeErrorText}handleFocusChange(){var e;this.focused=((e=this.inputOrTextarea)==null?void 0:e.matches(":focus"))??!1}handleInput(e){this.dirty=!0,this.value=e.target.value}redispatchEvent(e){je(this,e)}getInputOrTextarea(){return this.inputOrTextarea||(this.connectedCallback(),this.scheduleUpdate()),this.isUpdatePending&&this.scheduleUpdate(),this.inputOrTextarea}getInput(){return this.type==="textarea"?null:this.getInputOrTextarea()}handleIconChange(){this.hasLeadingIcon=this.leadingIcons.length>0,this.hasTrailingIcon=this.trailingIcons.length>0}[Be](){return this.value}formResetCallback(){this.reset()}formStateRestoreCallback(e){this.value=e}focus(){this.getInputOrTextarea().focus()}[rt](){return new kd(()=>({state:this,renderedControl:this.inputOrTextarea}))}[it](){return this.inputOrTextarea}[Eo](e){var o;e==null||e.preventDefault();const t=this.getErrorText();this.nativeError=!!e,this.nativeErrorText=this.validationMessage,t===this.getErrorText()&&((o=this.field)==null||o.reannounceError())}}R.shadowRootOptions={...$.shadowRootOptions,delegatesFocus:!0};l([c({type:Boolean,reflect:!0})],R.prototype,"error",void 0);l([c({attribute:"error-text"})],R.prototype,"errorText",void 0);l([c()],R.prototype,"label",void 0);l([c({type:Boolean,attribute:"no-asterisk"})],R.prototype,"noAsterisk",void 0);l([c({type:Boolean,reflect:!0})],R.prototype,"required",void 0);l([c()],R.prototype,"value",void 0);l([c({attribute:"prefix-text"})],R.prototype,"prefixText",void 0);l([c({attribute:"suffix-text"})],R.prototype,"suffixText",void 0);l([c({type:Boolean,attribute:"has-leading-icon"})],R.prototype,"hasLeadingIcon",void 0);l([c({type:Boolean,attribute:"has-trailing-icon"})],R.prototype,"hasTrailingIcon",void 0);l([c({attribute:"supporting-text"})],R.prototype,"supportingText",void 0);l([c({attribute:"text-direction"})],R.prototype,"textDirection",void 0);l([c({type:Number})],R.prototype,"rows",void 0);l([c({type:Number})],R.prototype,"cols",void 0);l([c({reflect:!0})],R.prototype,"inputMode",void 0);l([c()],R.prototype,"max",void 0);l([c({type:Number})],R.prototype,"maxLength",void 0);l([c()],R.prototype,"min",void 0);l([c({type:Number})],R.prototype,"minLength",void 0);l([c({type:Boolean,attribute:"no-spinner"})],R.prototype,"noSpinner",void 0);l([c()],R.prototype,"pattern",void 0);l([c({reflect:!0,converter:wd})],R.prototype,"placeholder",void 0);l([c({type:Boolean,reflect:!0})],R.prototype,"readOnly",void 0);l([c({type:Boolean,reflect:!0})],R.prototype,"multiple",void 0);l([c()],R.prototype,"step",void 0);l([c({reflect:!0})],R.prototype,"type",void 0);l([c({reflect:!0})],R.prototype,"autocomplete",void 0);l([M()],R.prototype,"dirty",void 0);l([M()],R.prototype,"focused",void 0);l([M()],R.prototype,"nativeError",void 0);l([M()],R.prototype,"nativeErrorText",void 0);l([B(".input")],R.prototype,"inputOrTextarea",void 0);l([B(".field")],R.prototype,"field",void 0);l([oe({slot:"leading-icon"})],R.prototype,"leadingIcons",void 0);l([oe({slot:"trailing-icon"})],R.prototype,"trailingIcons",void 0);/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Tl extends I{constructor(){super(...arguments),this.fieldTag=ae`md-filled-field`}}/** + */class Ed extends R{constructor(){super(...arguments),this.fieldTag=le`md-filled-field`}}/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const ua=x`:host{display:inline-flex;outline:none;resize:both;text-align:start;-webkit-tap-highlight-color:rgba(0,0,0,0)}.text-field,.field{width:100%}.text-field{display:inline-flex}.field{cursor:text}.disabled .field{cursor:default}.text-field,.textarea .field{resize:inherit}slot[name=container]{border-radius:inherit}.icon{color:currentColor;display:flex;align-items:center;justify-content:center;fill:currentColor;position:relative}.icon ::slotted(*){display:flex;position:absolute}[has-start] .icon.leading{font-size:var(--_leading-icon-size);height:var(--_leading-icon-size);width:var(--_leading-icon-size)}[has-end] .icon.trailing{font-size:var(--_trailing-icon-size);height:var(--_trailing-icon-size);width:var(--_trailing-icon-size)}.input-wrapper{display:flex}.input-wrapper>*{all:inherit;padding:0}.input{caret-color:var(--_caret-color);overflow-x:hidden;text-align:inherit}.input::placeholder{color:currentColor;opacity:1}.input::-webkit-calendar-picker-indicator{display:none}.input::-webkit-search-decoration,.input::-webkit-search-cancel-button{display:none}@media(forced-colors: active){.input{background:none}}.no-spinner .input::-webkit-inner-spin-button,.no-spinner .input::-webkit-outer-spin-button{display:none}.no-spinner .input[type=number]{-moz-appearance:textfield}:focus-within .input{caret-color:var(--_focus-caret-color)}.error:focus-within .input{caret-color:var(--_error-focus-caret-color)}.text-field:not(.disabled) .prefix{color:var(--_input-text-prefix-color)}.text-field:not(.disabled) .suffix{color:var(--_input-text-suffix-color)}.text-field:not(.disabled) .input::placeholder{color:var(--_input-text-placeholder-color)}.prefix,.suffix{text-wrap:nowrap;width:min-content}.prefix{padding-inline-end:var(--_input-text-prefix-trailing-space)}.suffix{padding-inline-start:var(--_input-text-suffix-leading-space)} + */const hn=_`:host{display:inline-flex;outline:none;resize:both;text-align:start;-webkit-tap-highlight-color:rgba(0,0,0,0)}.text-field,.field{width:100%}.text-field{display:inline-flex}.field{cursor:text}.disabled .field{cursor:default}.text-field,.textarea .field{resize:inherit}slot[name=container]{border-radius:inherit}.icon{color:currentColor;display:flex;align-items:center;justify-content:center;fill:currentColor;position:relative}.icon ::slotted(*){display:flex;position:absolute}[has-start] .icon.leading{font-size:var(--_leading-icon-size);height:var(--_leading-icon-size);width:var(--_leading-icon-size)}[has-end] .icon.trailing{font-size:var(--_trailing-icon-size);height:var(--_trailing-icon-size);width:var(--_trailing-icon-size)}.input-wrapper{display:flex}.input-wrapper>*{all:inherit;padding:0}.input{caret-color:var(--_caret-color);overflow-x:hidden;text-align:inherit}.input::placeholder{color:currentColor;opacity:1}.input::-webkit-calendar-picker-indicator{display:none}.input::-webkit-search-decoration,.input::-webkit-search-cancel-button{display:none}@media(forced-colors: active){.input{background:none}}.no-spinner .input::-webkit-inner-spin-button,.no-spinner .input::-webkit-outer-spin-button{display:none}.no-spinner .input[type=number]{-moz-appearance:textfield}:focus-within .input{caret-color:var(--_focus-caret-color)}.error:focus-within .input{caret-color:var(--_error-focus-caret-color)}.text-field:not(.disabled) .prefix{color:var(--_input-text-prefix-color)}.text-field:not(.disabled) .suffix{color:var(--_input-text-suffix-color)}.text-field:not(.disabled) .input::placeholder{color:var(--_input-text-placeholder-color)}.prefix,.suffix{text-wrap:nowrap;width:min-content}.prefix{padding-inline-end:var(--_input-text-prefix-trailing-space)}.suffix{padding-inline-start:var(--_input-text-suffix-leading-space)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let So=class extends Tl{constructor(){super(...arguments),this.fieldTag=ae`md-filled-field`}};So.styles=[ua,xl];So=n([w("md-filled-text-field")],So);/** + */let ni=class extends Ed{constructor(){super(...arguments),this.fieldTag=le`md-filled-field`}};ni.styles=[hn,gd];ni=l([S("md-filled-text-field")],ni);/** * @license * Copyright 2024 Google LLC * SPDX-License-Identifier: Apache-2.0 - */const Sl=x`:host{--_caret-color: var(--md-outlined-text-field-caret-color, var(--md-sys-color-primary, #6750a4));--_disabled-input-text-color: var(--md-outlined-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-input-text-opacity: var(--md-outlined-text-field-disabled-input-text-opacity, 0.38);--_disabled-label-text-color: var(--md-outlined-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-text-field-disabled-label-text-opacity, 0.38);--_disabled-leading-icon-color: var(--md-outlined-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-outlined-text-field-disabled-leading-icon-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-text-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-text-field-disabled-outline-opacity, 0.12);--_disabled-outline-width: var(--md-outlined-text-field-disabled-outline-width, 1px);--_disabled-supporting-text-color: var(--md-outlined-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-outlined-text-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-icon-color: var(--md-outlined-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-outlined-text-field-disabled-trailing-icon-opacity, 0.38);--_error-focus-caret-color: var(--md-outlined-text-field-error-focus-caret-color, var(--md-sys-color-error, #b3261e));--_error-focus-input-text-color: var(--md-outlined-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-outlined-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-icon-color: var(--md-outlined-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-outline-color: var(--md-outlined-text-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_error-focus-supporting-text-color: var(--md-outlined-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-icon-color: var(--md-outlined-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_error-hover-input-text-color: var(--md-outlined-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-outlined-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-icon-color: var(--md-outlined-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-outline-color: var(--md-outlined-text-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-supporting-text-color: var(--md-outlined-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-icon-color: var(--md-outlined-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_error-input-text-color: var(--md-outlined-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-label-text-color: var(--md-outlined-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-icon-color: var(--md-outlined-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-outline-color: var(--md-outlined-text-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_error-supporting-text-color: var(--md-outlined-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-icon-color: var(--md-outlined-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_focus-input-text-color: var(--md-outlined-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-outlined-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-outlined-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-outlined-text-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_focus-outline-width: var(--md-outlined-text-field-focus-outline-width, 3px);--_focus-supporting-text-color: var(--md-outlined-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-icon-color: var(--md-outlined-text-field-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-input-text-color: var(--md-outlined-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-outlined-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-leading-icon-color: var(--md-outlined-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-outline-color: var(--md-outlined-text-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-outline-width: var(--md-outlined-text-field-hover-outline-width, 1px);--_hover-supporting-text-color: var(--md-outlined-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-outlined-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-color: var(--md-outlined-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_input-text-font: var(--md-outlined-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_input-text-line-height: var(--md-outlined-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_input-text-placeholder-color: var(--md-outlined-text-field-input-text-placeholder-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-prefix-color: var(--md-outlined-text-field-input-text-prefix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-size: var(--md-outlined-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_input-text-suffix-color: var(--md-outlined-text-field-input-text-suffix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-weight: var(--md-outlined-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_label-text-color: var(--md-outlined-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-outlined-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-outlined-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-outlined-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-outlined-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-outlined-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-icon-color: var(--md-outlined-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-icon-size: var(--md-outlined-text-field-leading-icon-size, 24px);--_outline-color: var(--md-outlined-text-field-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-text-field-outline-width, 1px);--_supporting-text-color: var(--md-outlined-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-outlined-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-line-height: var(--md-outlined-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-outlined-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-weight: var(--md-outlined-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_trailing-icon-color: var(--md-outlined-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-size: var(--md-outlined-text-field-trailing-icon-size, 24px);--_container-shape-start-start: var(--md-outlined-text-field-container-shape-start-start, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-outlined-text-field-container-shape-start-end, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-outlined-text-field-container-shape-end-end, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-start: var(--md-outlined-text-field-container-shape-end-start, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_icon-input-space: var(--md-outlined-text-field-icon-input-space, 16px);--_leading-space: var(--md-outlined-text-field-leading-space, 16px);--_trailing-space: var(--md-outlined-text-field-trailing-space, 16px);--_top-space: var(--md-outlined-text-field-top-space, 16px);--_bottom-space: var(--md-outlined-text-field-bottom-space, 16px);--_input-text-prefix-trailing-space: var(--md-outlined-text-field-input-text-prefix-trailing-space, 2px);--_input-text-suffix-leading-space: var(--md-outlined-text-field-input-text-suffix-leading-space, 2px);--_focus-caret-color: var(--md-outlined-text-field-focus-caret-color, var(--md-sys-color-primary, #6750a4));--_with-leading-icon-leading-space: var(--md-outlined-text-field-with-leading-icon-leading-space, 12px);--_with-trailing-icon-trailing-space: var(--md-outlined-text-field-with-trailing-icon-trailing-space, 12px);--md-outlined-field-bottom-space: var(--_bottom-space);--md-outlined-field-container-shape-end-end: var(--_container-shape-end-end);--md-outlined-field-container-shape-end-start: var(--_container-shape-end-start);--md-outlined-field-container-shape-start-end: var(--_container-shape-start-end);--md-outlined-field-container-shape-start-start: var(--_container-shape-start-start);--md-outlined-field-content-color: var(--_input-text-color);--md-outlined-field-content-font: var(--_input-text-font);--md-outlined-field-content-line-height: var(--_input-text-line-height);--md-outlined-field-content-size: var(--_input-text-size);--md-outlined-field-content-space: var(--_icon-input-space);--md-outlined-field-content-weight: var(--_input-text-weight);--md-outlined-field-disabled-content-color: var(--_disabled-input-text-color);--md-outlined-field-disabled-content-opacity: var(--_disabled-input-text-opacity);--md-outlined-field-disabled-label-text-color: var(--_disabled-label-text-color);--md-outlined-field-disabled-label-text-opacity: var(--_disabled-label-text-opacity);--md-outlined-field-disabled-leading-content-color: var(--_disabled-leading-icon-color);--md-outlined-field-disabled-leading-content-opacity: var(--_disabled-leading-icon-opacity);--md-outlined-field-disabled-outline-color: var(--_disabled-outline-color);--md-outlined-field-disabled-outline-opacity: var(--_disabled-outline-opacity);--md-outlined-field-disabled-outline-width: var(--_disabled-outline-width);--md-outlined-field-disabled-supporting-text-color: var(--_disabled-supporting-text-color);--md-outlined-field-disabled-supporting-text-opacity: var(--_disabled-supporting-text-opacity);--md-outlined-field-disabled-trailing-content-color: var(--_disabled-trailing-icon-color);--md-outlined-field-disabled-trailing-content-opacity: var(--_disabled-trailing-icon-opacity);--md-outlined-field-error-content-color: var(--_error-input-text-color);--md-outlined-field-error-focus-content-color: var(--_error-focus-input-text-color);--md-outlined-field-error-focus-label-text-color: var(--_error-focus-label-text-color);--md-outlined-field-error-focus-leading-content-color: var(--_error-focus-leading-icon-color);--md-outlined-field-error-focus-outline-color: var(--_error-focus-outline-color);--md-outlined-field-error-focus-supporting-text-color: var(--_error-focus-supporting-text-color);--md-outlined-field-error-focus-trailing-content-color: var(--_error-focus-trailing-icon-color);--md-outlined-field-error-hover-content-color: var(--_error-hover-input-text-color);--md-outlined-field-error-hover-label-text-color: var(--_error-hover-label-text-color);--md-outlined-field-error-hover-leading-content-color: var(--_error-hover-leading-icon-color);--md-outlined-field-error-hover-outline-color: var(--_error-hover-outline-color);--md-outlined-field-error-hover-supporting-text-color: var(--_error-hover-supporting-text-color);--md-outlined-field-error-hover-trailing-content-color: var(--_error-hover-trailing-icon-color);--md-outlined-field-error-label-text-color: var(--_error-label-text-color);--md-outlined-field-error-leading-content-color: var(--_error-leading-icon-color);--md-outlined-field-error-outline-color: var(--_error-outline-color);--md-outlined-field-error-supporting-text-color: var(--_error-supporting-text-color);--md-outlined-field-error-trailing-content-color: var(--_error-trailing-icon-color);--md-outlined-field-focus-content-color: var(--_focus-input-text-color);--md-outlined-field-focus-label-text-color: var(--_focus-label-text-color);--md-outlined-field-focus-leading-content-color: var(--_focus-leading-icon-color);--md-outlined-field-focus-outline-color: var(--_focus-outline-color);--md-outlined-field-focus-outline-width: var(--_focus-outline-width);--md-outlined-field-focus-supporting-text-color: var(--_focus-supporting-text-color);--md-outlined-field-focus-trailing-content-color: var(--_focus-trailing-icon-color);--md-outlined-field-hover-content-color: var(--_hover-input-text-color);--md-outlined-field-hover-label-text-color: var(--_hover-label-text-color);--md-outlined-field-hover-leading-content-color: var(--_hover-leading-icon-color);--md-outlined-field-hover-outline-color: var(--_hover-outline-color);--md-outlined-field-hover-outline-width: var(--_hover-outline-width);--md-outlined-field-hover-supporting-text-color: var(--_hover-supporting-text-color);--md-outlined-field-hover-trailing-content-color: var(--_hover-trailing-icon-color);--md-outlined-field-label-text-color: var(--_label-text-color);--md-outlined-field-label-text-font: var(--_label-text-font);--md-outlined-field-label-text-line-height: var(--_label-text-line-height);--md-outlined-field-label-text-populated-line-height: var(--_label-text-populated-line-height);--md-outlined-field-label-text-populated-size: var(--_label-text-populated-size);--md-outlined-field-label-text-size: var(--_label-text-size);--md-outlined-field-label-text-weight: var(--_label-text-weight);--md-outlined-field-leading-content-color: var(--_leading-icon-color);--md-outlined-field-leading-space: var(--_leading-space);--md-outlined-field-outline-color: var(--_outline-color);--md-outlined-field-outline-width: var(--_outline-width);--md-outlined-field-supporting-text-color: var(--_supporting-text-color);--md-outlined-field-supporting-text-font: var(--_supporting-text-font);--md-outlined-field-supporting-text-line-height: var(--_supporting-text-line-height);--md-outlined-field-supporting-text-size: var(--_supporting-text-size);--md-outlined-field-supporting-text-weight: var(--_supporting-text-weight);--md-outlined-field-top-space: var(--_top-space);--md-outlined-field-trailing-content-color: var(--_trailing-icon-color);--md-outlined-field-trailing-space: var(--_trailing-space);--md-outlined-field-with-leading-content-leading-space: var(--_with-leading-icon-leading-space);--md-outlined-field-with-trailing-content-trailing-space: var(--_with-trailing-icon-trailing-space)} + */const Id=_`:host{--_caret-color: var(--md-outlined-text-field-caret-color, var(--md-sys-color-primary, #6750a4));--_disabled-input-text-color: var(--md-outlined-text-field-disabled-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-input-text-opacity: var(--md-outlined-text-field-disabled-input-text-opacity, 0.38);--_disabled-label-text-color: var(--md-outlined-text-field-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity: var(--md-outlined-text-field-disabled-label-text-opacity, 0.38);--_disabled-leading-icon-color: var(--md-outlined-text-field-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity: var(--md-outlined-text-field-disabled-leading-icon-opacity, 0.38);--_disabled-outline-color: var(--md-outlined-text-field-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity: var(--md-outlined-text-field-disabled-outline-opacity, 0.12);--_disabled-outline-width: var(--md-outlined-text-field-disabled-outline-width, 1px);--_disabled-supporting-text-color: var(--md-outlined-text-field-disabled-supporting-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-supporting-text-opacity: var(--md-outlined-text-field-disabled-supporting-text-opacity, 0.38);--_disabled-trailing-icon-color: var(--md-outlined-text-field-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity: var(--md-outlined-text-field-disabled-trailing-icon-opacity, 0.38);--_error-focus-caret-color: var(--md-outlined-text-field-error-focus-caret-color, var(--md-sys-color-error, #b3261e));--_error-focus-input-text-color: var(--md-outlined-text-field-error-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-focus-label-text-color: var(--md-outlined-text-field-error-focus-label-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-leading-icon-color: var(--md-outlined-text-field-error-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-focus-outline-color: var(--md-outlined-text-field-error-focus-outline-color, var(--md-sys-color-error, #b3261e));--_error-focus-supporting-text-color: var(--md-outlined-text-field-error-focus-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-focus-trailing-icon-color: var(--md-outlined-text-field-error-focus-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_error-hover-input-text-color: var(--md-outlined-text-field-error-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-hover-label-text-color: var(--md-outlined-text-field-error-hover-label-text-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-leading-icon-color: var(--md-outlined-text-field-error-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-hover-outline-color: var(--md-outlined-text-field-error-hover-outline-color, var(--md-sys-color-on-error-container, #410e0b));--_error-hover-supporting-text-color: var(--md-outlined-text-field-error-hover-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-hover-trailing-icon-color: var(--md-outlined-text-field-error-hover-trailing-icon-color, var(--md-sys-color-on-error-container, #410e0b));--_error-input-text-color: var(--md-outlined-text-field-error-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_error-label-text-color: var(--md-outlined-text-field-error-label-text-color, var(--md-sys-color-error, #b3261e));--_error-leading-icon-color: var(--md-outlined-text-field-error-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_error-outline-color: var(--md-outlined-text-field-error-outline-color, var(--md-sys-color-error, #b3261e));--_error-supporting-text-color: var(--md-outlined-text-field-error-supporting-text-color, var(--md-sys-color-error, #b3261e));--_error-trailing-icon-color: var(--md-outlined-text-field-error-trailing-icon-color, var(--md-sys-color-error, #b3261e));--_focus-input-text-color: var(--md-outlined-text-field-focus-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_focus-label-text-color: var(--md-outlined-text-field-focus-label-text-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color: var(--md-outlined-text-field-focus-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color: var(--md-outlined-text-field-focus-outline-color, var(--md-sys-color-primary, #6750a4));--_focus-outline-width: var(--md-outlined-text-field-focus-outline-width, 3px);--_focus-supporting-text-color: var(--md-outlined-text-field-focus-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-trailing-icon-color: var(--md-outlined-text-field-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-input-text-color: var(--md-outlined-text-field-hover-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-label-text-color: var(--md-outlined-text-field-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-leading-icon-color: var(--md-outlined-text-field-hover-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-outline-color: var(--md-outlined-text-field-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-outline-width: var(--md-outlined-text-field-hover-outline-width, 1px);--_hover-supporting-text-color: var(--md-outlined-text-field-hover-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color: var(--md-outlined-text-field-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-color: var(--md-outlined-text-field-input-text-color, var(--md-sys-color-on-surface, #1d1b20));--_input-text-font: var(--md-outlined-text-field-input-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_input-text-line-height: var(--md-outlined-text-field-input-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_input-text-placeholder-color: var(--md-outlined-text-field-input-text-placeholder-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-prefix-color: var(--md-outlined-text-field-input-text-prefix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-size: var(--md-outlined-text-field-input-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_input-text-suffix-color: var(--md-outlined-text-field-input-text-suffix-color, var(--md-sys-color-on-surface-variant, #49454f));--_input-text-weight: var(--md-outlined-text-field-input-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_label-text-color: var(--md-outlined-text-field-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_label-text-font: var(--md-outlined-text-field-label-text-font, var(--md-sys-typescale-body-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-text-field-label-text-line-height, var(--md-sys-typescale-body-large-line-height, 1.5rem));--_label-text-populated-line-height: var(--md-outlined-text-field-label-text-populated-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_label-text-populated-size: var(--md-outlined-text-field-label-text-populated-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_label-text-size: var(--md-outlined-text-field-label-text-size, var(--md-sys-typescale-body-large-size, 1rem));--_label-text-weight: var(--md-outlined-text-field-label-text-weight, var(--md-sys-typescale-body-large-weight, var(--md-ref-typeface-weight-regular, 400)));--_leading-icon-color: var(--md-outlined-text-field-leading-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_leading-icon-size: var(--md-outlined-text-field-leading-icon-size, 24px);--_outline-color: var(--md-outlined-text-field-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width: var(--md-outlined-text-field-outline-width, 1px);--_supporting-text-color: var(--md-outlined-text-field-supporting-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_supporting-text-font: var(--md-outlined-text-field-supporting-text-font, var(--md-sys-typescale-body-small-font, var(--md-ref-typeface-plain, Roboto)));--_supporting-text-line-height: var(--md-outlined-text-field-supporting-text-line-height, var(--md-sys-typescale-body-small-line-height, 1rem));--_supporting-text-size: var(--md-outlined-text-field-supporting-text-size, var(--md-sys-typescale-body-small-size, 0.75rem));--_supporting-text-weight: var(--md-outlined-text-field-supporting-text-weight, var(--md-sys-typescale-body-small-weight, var(--md-ref-typeface-weight-regular, 400)));--_trailing-icon-color: var(--md-outlined-text-field-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-size: var(--md-outlined-text-field-trailing-icon-size, 24px);--_container-shape-start-start: var(--md-outlined-text-field-container-shape-start-start, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-start-end: var(--md-outlined-text-field-container-shape-start-end, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-end: var(--md-outlined-text-field-container-shape-end-end, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_container-shape-end-start: var(--md-outlined-text-field-container-shape-end-start, var(--md-outlined-text-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px)));--_icon-input-space: var(--md-outlined-text-field-icon-input-space, 16px);--_leading-space: var(--md-outlined-text-field-leading-space, 16px);--_trailing-space: var(--md-outlined-text-field-trailing-space, 16px);--_top-space: var(--md-outlined-text-field-top-space, 16px);--_bottom-space: var(--md-outlined-text-field-bottom-space, 16px);--_input-text-prefix-trailing-space: var(--md-outlined-text-field-input-text-prefix-trailing-space, 2px);--_input-text-suffix-leading-space: var(--md-outlined-text-field-input-text-suffix-leading-space, 2px);--_focus-caret-color: var(--md-outlined-text-field-focus-caret-color, var(--md-sys-color-primary, #6750a4));--_with-leading-icon-leading-space: var(--md-outlined-text-field-with-leading-icon-leading-space, 12px);--_with-trailing-icon-trailing-space: var(--md-outlined-text-field-with-trailing-icon-trailing-space, 12px);--md-outlined-field-bottom-space: var(--_bottom-space);--md-outlined-field-container-shape-end-end: var(--_container-shape-end-end);--md-outlined-field-container-shape-end-start: var(--_container-shape-end-start);--md-outlined-field-container-shape-start-end: var(--_container-shape-start-end);--md-outlined-field-container-shape-start-start: var(--_container-shape-start-start);--md-outlined-field-content-color: var(--_input-text-color);--md-outlined-field-content-font: var(--_input-text-font);--md-outlined-field-content-line-height: var(--_input-text-line-height);--md-outlined-field-content-size: var(--_input-text-size);--md-outlined-field-content-space: var(--_icon-input-space);--md-outlined-field-content-weight: var(--_input-text-weight);--md-outlined-field-disabled-content-color: var(--_disabled-input-text-color);--md-outlined-field-disabled-content-opacity: var(--_disabled-input-text-opacity);--md-outlined-field-disabled-label-text-color: var(--_disabled-label-text-color);--md-outlined-field-disabled-label-text-opacity: var(--_disabled-label-text-opacity);--md-outlined-field-disabled-leading-content-color: var(--_disabled-leading-icon-color);--md-outlined-field-disabled-leading-content-opacity: var(--_disabled-leading-icon-opacity);--md-outlined-field-disabled-outline-color: var(--_disabled-outline-color);--md-outlined-field-disabled-outline-opacity: var(--_disabled-outline-opacity);--md-outlined-field-disabled-outline-width: var(--_disabled-outline-width);--md-outlined-field-disabled-supporting-text-color: var(--_disabled-supporting-text-color);--md-outlined-field-disabled-supporting-text-opacity: var(--_disabled-supporting-text-opacity);--md-outlined-field-disabled-trailing-content-color: var(--_disabled-trailing-icon-color);--md-outlined-field-disabled-trailing-content-opacity: var(--_disabled-trailing-icon-opacity);--md-outlined-field-error-content-color: var(--_error-input-text-color);--md-outlined-field-error-focus-content-color: var(--_error-focus-input-text-color);--md-outlined-field-error-focus-label-text-color: var(--_error-focus-label-text-color);--md-outlined-field-error-focus-leading-content-color: var(--_error-focus-leading-icon-color);--md-outlined-field-error-focus-outline-color: var(--_error-focus-outline-color);--md-outlined-field-error-focus-supporting-text-color: var(--_error-focus-supporting-text-color);--md-outlined-field-error-focus-trailing-content-color: var(--_error-focus-trailing-icon-color);--md-outlined-field-error-hover-content-color: var(--_error-hover-input-text-color);--md-outlined-field-error-hover-label-text-color: var(--_error-hover-label-text-color);--md-outlined-field-error-hover-leading-content-color: var(--_error-hover-leading-icon-color);--md-outlined-field-error-hover-outline-color: var(--_error-hover-outline-color);--md-outlined-field-error-hover-supporting-text-color: var(--_error-hover-supporting-text-color);--md-outlined-field-error-hover-trailing-content-color: var(--_error-hover-trailing-icon-color);--md-outlined-field-error-label-text-color: var(--_error-label-text-color);--md-outlined-field-error-leading-content-color: var(--_error-leading-icon-color);--md-outlined-field-error-outline-color: var(--_error-outline-color);--md-outlined-field-error-supporting-text-color: var(--_error-supporting-text-color);--md-outlined-field-error-trailing-content-color: var(--_error-trailing-icon-color);--md-outlined-field-focus-content-color: var(--_focus-input-text-color);--md-outlined-field-focus-label-text-color: var(--_focus-label-text-color);--md-outlined-field-focus-leading-content-color: var(--_focus-leading-icon-color);--md-outlined-field-focus-outline-color: var(--_focus-outline-color);--md-outlined-field-focus-outline-width: var(--_focus-outline-width);--md-outlined-field-focus-supporting-text-color: var(--_focus-supporting-text-color);--md-outlined-field-focus-trailing-content-color: var(--_focus-trailing-icon-color);--md-outlined-field-hover-content-color: var(--_hover-input-text-color);--md-outlined-field-hover-label-text-color: var(--_hover-label-text-color);--md-outlined-field-hover-leading-content-color: var(--_hover-leading-icon-color);--md-outlined-field-hover-outline-color: var(--_hover-outline-color);--md-outlined-field-hover-outline-width: var(--_hover-outline-width);--md-outlined-field-hover-supporting-text-color: var(--_hover-supporting-text-color);--md-outlined-field-hover-trailing-content-color: var(--_hover-trailing-icon-color);--md-outlined-field-label-text-color: var(--_label-text-color);--md-outlined-field-label-text-font: var(--_label-text-font);--md-outlined-field-label-text-line-height: var(--_label-text-line-height);--md-outlined-field-label-text-populated-line-height: var(--_label-text-populated-line-height);--md-outlined-field-label-text-populated-size: var(--_label-text-populated-size);--md-outlined-field-label-text-size: var(--_label-text-size);--md-outlined-field-label-text-weight: var(--_label-text-weight);--md-outlined-field-leading-content-color: var(--_leading-icon-color);--md-outlined-field-leading-space: var(--_leading-space);--md-outlined-field-outline-color: var(--_outline-color);--md-outlined-field-outline-width: var(--_outline-width);--md-outlined-field-supporting-text-color: var(--_supporting-text-color);--md-outlined-field-supporting-text-font: var(--_supporting-text-font);--md-outlined-field-supporting-text-line-height: var(--_supporting-text-line-height);--md-outlined-field-supporting-text-size: var(--_supporting-text-size);--md-outlined-field-supporting-text-weight: var(--_supporting-text-weight);--md-outlined-field-top-space: var(--_top-space);--md-outlined-field-trailing-content-color: var(--_trailing-icon-color);--md-outlined-field-trailing-space: var(--_trailing-space);--md-outlined-field-with-leading-content-leading-space: var(--_with-leading-icon-leading-space);--md-outlined-field-with-trailing-content-trailing-space: var(--_with-trailing-icon-trailing-space)} `;/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */class Al extends I{constructor(){super(...arguments),this.fieldTag=ae`md-outlined-field`}}/** + */class Sd extends R{constructor(){super(...arguments),this.fieldTag=le`md-outlined-field`}}/** * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: Apache-2.0 - */let Ao=class extends Al{constructor(){super(...arguments),this.fieldTag=ae`md-outlined-field`}};Ao.styles=[ua,Sl];Ao=n([w("md-outlined-text-field")],Ao);let va,Se,Yt;function $o(o){return localStorage.getItem(o)}window.addEventListener("DOMContentLoaded",async()=>{try{let g=function(){const O=JSON.stringify(localStorage),ie=new Blob([O],{type:"application/json"}),Pe=URL.createObjectURL(ie),Ie=document.createElement("a");Ie.href=Pe,Ie.download="Material-You-NewTab-Settings.json",document.body.appendChild(Ie),Ie.click(),document.body.removeChild(Ie),URL.revokeObjectURL(Pe)},M=function(O){const ie=O.target.files[0];if(!ie)return;const Pe=new FileReader;Pe.onload=function(Ie){try{const Xe=JSON.parse(Ie.target.result);for(const Bt in Xe)localStorage.setItem(Bt,Xe[Bt]);const it=document.getElementById("alert");document.getElementById("alertheadline").innerText="Settings Imported Successfully!",document.getElementById("alertform").innerText="Settings has been Imported Successfully!, Page Refresh Recommended",it.show(),it.addEventListener("close",()=>{location.reload()})}catch(Xe){const it=document.getElementById("alert");document.getElementById("alertheadline").innerText="Error While Importing Settings",document.getElementById("alertform").innerText="Error importing settings: "+Xe.message,it.show()}},Pe.readAsText(ie)};var a=g,s=M;const d=localStorage.getItem("weatherApiKey"),c=document.getElementById("userAPI"),f=localStorage.getItem("weatherLocation"),v=document.getElementById("userLoc"),u=localStorage.getItem("proxy"),m=document.getElementById("userproxy");d&&(c.value=d),f&&(v.value=f),u&&(m.value=u);const S=document.getElementById("saveAPIbtn"),k=document.getElementById("saveLocbtn"),L=document.getElementById("resetsettings"),B=document.getElementById("exportbtn"),T=document.getElementById("fileInputbtn"),F=document.getElementById("saveproxybtn");B.addEventListener("click",()=>{g()}),T.addEventListener("click",()=>{document.getElementById("fileInput").click()}),document.getElementById("fileInput").addEventListener("change",M),S.addEventListener("click",()=>{const O=c.value;localStorage.setItem("weatherApiKey",O),document.getElementById("userAPI").value="",location.reload()}),k.addEventListener("click",()=>{const O=v.value;localStorage.setItem("weatherLocation",O),document.getElementById("userLoc").value="",location.reload()}),L.addEventListener("click",()=>{const O=document.getElementById("resetdialog");O.show(),O.addEventListener("close",()=>{const ie=O.returnValue==="cancel";if(O.returnValue==="delete")localStorage.clear(),location.reload();else return})}),F.addEventListener("click",()=>{const O=m.value;if(O.startsWith("http://")||O.startsWith("https://"))if(!O.endsWith("/"))localStorage.setItem("proxy",O),document.getElementById("userproxy").value="",location.reload();else{const ie=document.getElementById("alert");document.getElementById("alertheadline").innerText="Invalid proxy",document.getElementById("alertform").innerText="There shouldn't be / at the end of the link",ie.show()}else{const ie=document.getElementById("alert");document.getElementById("alertheadline").innerText="Invalid proxy",document.getElementById("alertform").innerText="Only links (starting with http:// or https://) are allowed.",ie.show()}});const D="d36ce712613d4f21a6083436240910",te="https://mynt-proxy.rhythmcorehq.com",re=c.value.trim(),se=m.value.trim(),pe=re||D;va=se||te;const Ee=(await(await fetch("https://ipinfo.io/json/")).json()).ip;if(Ee){const O=f||Ee;var o=$o("selectedLanguage")||"en";localStorage.setItem("locationQ",Ee);var e=`https://api.weatherapi.com/v1/current.json?key=${pe}&q=${O}&aqi=no&lang=${o}`}else{const O=localStorage.getItem("locationQ"),ie=f||O;var o=$o("selectedLanguage")||"en",e=`https://api.weatherapi.com/v1/current.json?key=${pe}&q=${ie}&aqi=no&lang=${o}`}const Q=await(await fetch(e)).json(),q=Q.current.condition.text,xe=Math.round(Q.current.temp_c),le=Math.round(xe*9/5+32),Ge=Q.current.humidity,Oe=Q.current.feelslike_c,ve=Math.round(Oe*9/5+32);document.getElementById("conditionText").textContent=q,document.getElementById("humidityLevel").textContent=`${_[o].humidityText} ${Ge}%`;const _e=document.getElementById("fahrenheitCheckbox");(()=>{_e.selected?(document.getElementById("temp").textContent=`${le}°`,document.getElementById("feelsLike").textContent=`${_[o].feelsLike} ${ve}°F`):(document.getElementById("temp").textContent=`${xe}°`,document.getElementById("feelsLike").textContent=`${_[o].feelsLike} ${Oe}°C`)})(),Ol();const de=Q.current.condition.icon.replace("//cdn","https://cdn");document.getElementById("wIcon").src=de,Ge>40&&(document.getElementById("slider").style.width=`calc(${Ge}% - 60px)`);var t=Q.location.name,r=10,i=t.length>r?t.substring(0,r)+"...":t;document.getElementById("location").textContent=i}catch(d){console.error("Error fetching weather data:",d);const c=document.getElementById("alertbody");document.getElementById("alertbodyheadline").innerText="Error fetching weather data",document.getElementById("alertbodyform").innerText="Unable to fetch weather data. Please check your location or API key.",c.show()}});const gi=document.getElementById("userproxy"),xi=document.getElementById("userLoc"),_i=document.getElementById("userAPI");gi.addEventListener("input",()=>{const o=document.getElementById("saveproxybtn");gi.value?o.disabled=!1:o.disabled=!0});xi.addEventListener("input",()=>{const o=document.getElementById("saveLocbtn");xi.value?o.disabled=!1:o.disabled=!0});_i.addEventListener("input",()=>{const o=document.getElementById("saveAPIbtn");_i.value?o.disabled=!1:o.disabled=!0});var jo=new Date,ma=jo.getSeconds(),fa=jo.getMinutes(),$l=jo.getHours();let Ll=ma*6,zl=fa*6+ma/10,Rl=30*$l+fa/2;document.getElementById("second").style.transform=`rotate(${Ll}deg)`;document.getElementById("minute").style.transform=`rotate(${zl}deg)`;document.getElementById("hour").style.transform=`rotate(${Rl}deg)`;let nr,Zt=!1,Qt=!1,Jt=!1;function Bl(){var o=new Date,e=o.getSeconds(),t=o.getMinutes(),r=o.getHours();let i=e*6,a=t*6+e/10,s=30*r+t/2;if(Zt){document.getElementById("second").style.transition="none",document.getElementById("second").style.transform="rotate(0deg)",Zt=!1;return}if(Jt){document.getElementById("minute").style.transition="none",document.getElementById("minute").style.transform="rotate(0deg)",Jt=!1;return}if(Qt){document.getElementById("hour").style.transition="none",document.getElementById("hour").style.transform="rotate(0deg)",Qt=!1;return}i==0?(document.getElementById("second").style.transition="transform 1s ease",document.getElementById("second").style.transform="rotate(361deg)",Zt=!0):Zt!=!0&&(document.getElementById("second").style.transition="transform 1s ease",document.getElementById("second").style.transform=`rotate(${i}deg)`),a==0?(document.getElementById("minute").style.transition="transform 1s ease",document.getElementById("minute").style.transform="rotate(361deg)",Jt=!0):Jt!=!0&&(document.getElementById("minute").style.transition="transform 1s ease",document.getElementById("minute").style.transform=`rotate(${a}deg)`),s==0?(document.getElementById("hour").style.transition="transform 1s ease",document.getElementById("hour").style.transform="rotate(361deg)",Qt=!0):Qt!=!0&&(document.getElementById("hour").style.transition="transform 1s ease",document.getElementById("hour").style.transform=`rotate(${s}deg)`);var d=o.getDay(),c=o.getDate(),f=o.getMonth(),v=$o("selectedLanguage")||"en",u=_[v].days[d],m=_[v].months[f];localStorage.getItem("clocktype")=="analog"&&(v==="pt"?document.getElementById("date").innerText=`${u.substring(0,3)}, ${c} ${m.substring(0,3)} `:v==="hi"||v==="bn"?document.getElementById("date").innerText=`${u}, ${c} ${m}`:document.getElementById("date").innerText=`${u.substring(0,3)}, ${m.substring(0,3)} ${c} `)}function ba(){const o=localStorage.getItem("hourformat");o?o=="true"?Yt=!0:o=="false"&&(Yt=!1):Yt=!1;const e=new Date,t={weekday:"short",day:"numeric"},r=e.toLocaleDateString("en-US",t),i={hour:"2-digit",minute:"2-digit",hour12:Yt},s=e.toLocaleTimeString("en-US",i).replace(/ (AM|PM)/,"");document.getElementById("digidate").textContent=r,document.getElementById("digiclock").textContent=s;let d;const c=e.getHours();c<12?d="Good Morning!":c<18?d="Good Afternoon!":d="Good Evening!",localStorage.getItem("clocktype")=="digital"&&(document.getElementById("date").innerText=d)}function sr(){nr||(nr=setInterval(Bl,500))}function Lo(){clearInterval(nr),nr=null}Se=localStorage.getItem("clocktype");Se||(localStorage.setItem("clocktype","analog"),Se=localStorage.getItem("clocktype"));zo();setInterval(ba,1e3);Se?Se=="digital"?ba():Se=="analog"&&document.visibilityState==="visible"&&sr():document.visibilityState==="visible"&&sr();document.addEventListener("visibilitychange",function(){document.visibilityState==="visible"?sr():Lo()});function zo(){const o=document.getElementById("analogClock"),e=document.getElementById("digitalClock");Se==="analog"?(o.style.display="block",e.style.display="none"):Se==="digital"&&(e.style.display="block",o.style.display="none")}const wi=document.getElementById("userTextt");wi.addEventListener("input",function(){localStorage.setItem("userText",wi.value)});function Ol(){const o=document.getElementById("userTextt"),e=localStorage.getItem("userText");e&&(o.value=e);const t=document.getElementById("usertextcheckbox"),r=document.getElementById("userTextt");t.selected?r.style.display="block":r.style.display="none"}const lr=document.getElementById("searchbar");lr.addEventListener("click",function(){const o=document.getElementById("searchQ");lr.classList.toggle("active"),o.value!==""&&Go()});document.addEventListener("click",function(o){lr.contains(o.target)||lr.classList.remove("active")});const Pl=localStorage.getItem("selectedSearchEngine");Pl||localStorage.setItem("selectedSearchEngine",1);document.addEventListener("DOMContentLoaded",()=>{const o=document.getElementById("entrbtn"),e=document.getElementById("searchQ");document.getElementsByName("search-engine");function t(){var m=e.value,S=`engine${localStorage.getItem("selectedSearchEngine")}`,k={engine1:"https://www.google.com/search?q=",engine2:"https://duckduckgo.com/?q=",engine3:"https://bing.com/?q=",engine4:"https://search.brave.com/search?q=",engine5:"https://www.youtube.com/results?search_query="};if(m!==""){var L=k[S]+encodeURIComponent(m);window.location.href=L}}o.addEventListener("click",t),e.addEventListener("keypress",m=>{m.key==="Enter"&&t()});const r=localStorage.getItem("selectedSearchEngine"),i=JSON.parse(localStorage.getItem("removedChips"))||[];let a=1;document.querySelector(".chips-container");function s(m){const g=document.getElementById(m);g&&g.remove()}document.getElementById("restorechipsbtn").addEventListener("click",()=>{c()});function c(){localStorage.removeItem("removedChips"),i.length=0,window.location.reload(!0)}function f(){i.forEach(m=>s(m))}if(f(),r){a=r;const m=document.getElementById(`chip${a}`);m&&(m.selected=!0)}function v(){const m=document.querySelectorAll("md-filter-chip");m.forEach((g,S)=>{g.addEventListener("click",()=>{m.forEach(k=>k.selected=!1),g.selected=!0,a=S+1,localStorage.setItem("selectedSearchEngine",a),console.log(`Chip${a} is selected.`)}),g.addEventListener("remove",()=>{const k=g.id;i.push(k),localStorage.setItem("removedChips",JSON.stringify(i)),document.querySelectorAll("md-filter-chip").length===1&&(c(),v())})})}v();const u=localStorage.getItem(ya);if(u){ga(u);const m=document.querySelector(`.colorPlate[value = "${u}"]`);m&&(m.checked=!0)}});const Ml=document.querySelectorAll(".colorPlate"),ya="selectedTheme",ga=o=>{o!=="blue"?(document.documentElement.style.setProperty("--bg-color-blue",`var(--bg-color-${o})`),document.documentElement.style.setProperty("--accentLightTint-blue",`var(--accentLightTint-${o})`),document.documentElement.style.setProperty("--darkerColor-blue",`var(--darkerColor-${o})`),document.documentElement.style.setProperty("--darkColor-blue",`var(--darkColor-${o})`),document.documentElement.style.setProperty("--tonebtn-blue",`var(--tonebtn-${o})`),document.documentElement.style.setProperty("--textColorDark-blue",`var(--textColorDark-${o})`)):(document.documentElement.style.setProperty("--bg-color-blue","#BBD6FD"),document.documentElement.style.setProperty("--accentLightTint-blue","#E2EEFF"),document.documentElement.style.setProperty("--darkerColor-blue","#3569b2"),document.documentElement.style.setProperty("--darkColor-blue","#4382EC"),document.documentElement.style.setProperty("--tonebtn-blue","#2c74f1cf"),document.documentElement.style.setProperty("--textColorDark-blue","#1b3041"))};Ml.forEach(o=>{o.addEventListener("change",function(){if(this.checked){const e=this.value;localStorage.setItem(ya,e),ga(e)}})});const K=document.getElementById("toolsCont"),ft=document.getElementById("shortcutsContainer");document.getElementById("0NIHK").onclick=()=>{const o=document.getElementById("unfoldShortcutsBtn");shortcutsCheckbox.selected?K.style.display==="flex"?(ft.style.display="flex",K.style.opacity="0",K.style.gap="0",K.style.transform="translateX(-100%)",o.style.display="none",setTimeout(()=>{K.style.display="none",ft.style.display="flex"},500)):(ft.style.display="none",o.style.display="block",K.style.display="flex",setTimeout(()=>{K.style.opacity="1",K.style.transform="translateX(0)"},1),setTimeout(()=>{K.style.gap="12px"},300)):K.style.display==="flex"?(ft.style.display="none",o.style.display="none",K.style.opacity="0",K.style.gap="0",K.style.transform="translateX(-100%)",setTimeout(()=>{K.style.display="none"},500)):(ft.style.display="none",o.style.display="none",K.style.display="flex",setTimeout(()=>{K.style.opacity="1",K.style.transform="translateX(0)"},1),setTimeout(()=>{K.style.gap="12px"},300))};const Ro=document.querySelector(".resultBox");function Go(){Ro.classList.add("show"),Ro.style.display="block"}function dr(){Ro.classList.remove("show")}Go();dr();document.getElementById("searchQ").addEventListener("input",async function(){if(document.getElementById("searchsuggestionscheckbox").selected){var e=`engine${localStorage.getItem("selectedSearchEngine")}`,t={engine1:"https://www.google.com/search?q=",engine2:"https://duckduckgo.com/?q=",engine3:"https://bing.com/?q=",engine4:"https://search.brave.com/search?q=",engine5:"https://www.youtube.com/results?search_query="};const i=this.value,a=document.getElementById("resultBox");if(i.length>0){const s=await Fl(i);s==""?dr():(a.innerHTML="",s.forEach(d=>{const c=document.createElement("div");c.classList.add("resultItem"),c.textContent=d,c.onclick=()=>{var f=t[e]+encodeURIComponent(d);window.location.href=f},a.appendChild(c)}),Go())}else dr()}});function Dl(){const o=navigator.userAgent.toLowerCase();return o.includes("firefox")?"firefox":o.includes("chrome")||o.includes("crios")?"chrome":o.includes("safari")?"safari":o.includes("edge")||o.includes("edg")?"firefox":o.includes("opera")||o.includes("opr")?"opera":"firefox"}async function Fl(o){const e=Dl();var r=`engine${localStorage.getItem("selectedSearchEngine")}`,i={engine1:`http://www.google.com/complete/search?client=${e}&q=${encodeURIComponent(o)}`,engine2:`https://duckduckgo.com/ac/?q=${encodeURIComponent(o)}&type=list`,engine3:`http://www.google.com/complete/search?client=${e}&q=${encodeURIComponent(o)}`,engine4:`https://search.brave.com/api/suggest?q=${encodeURIComponent(o)}&rich=true&source=web`,engine5:`http://www.google.com/complete/search?client=${e}&ds=yt&q=${encodeURIComponent(o)}`};const a=document.getElementById("useproxyCheckbox");let s=i[r];a.selected&&(s=`${va}/proxy?url=${encodeURIComponent(s)}`);try{const c=await(await fetch(s)).json();return r==="engine4"?c[1].map(v=>v.is_entity?`${v.q} - ${v.name} (${v.category?v.category:"No category"})`:v.q):c[1]}catch(d){return console.error("Error fetching autocomplete suggestions:",d),[]}}document.addEventListener("click",function(o){const e=document.getElementById("searchbar");document.getElementById("resultBox"),e.contains(o.target)||dr()});const Nl=document.getElementById("menuButton"),He=document.getElementById("menuBar"),xa=document.getElementById("menuCont"),kt=document.getElementById("optCont"),fe=document.getElementById("overviewPage"),be=document.getElementById("shortcutEditPage");function Ul(){kt.scrollTop=0,fe.style.transform="translateX(0)",fe.style.opacity="1",fe.style.display="block",be.style.transform="translateX(120%)",be.style.opacity="0",be.style.display="none"}const Xo=()=>{requestAnimationFrame(()=>{kt.style.opacity="0",kt.style.transform="translateX(100%)"}),setTimeout(()=>{requestAnimationFrame(()=>{He.style.opacity="0",xa.style.transform="translateX(100%)"})},14),setTimeout(()=>{He.style.display="none"},555)},Hl=()=>{setTimeout(()=>{He.style.display="block",Ul()}),setTimeout(()=>{requestAnimationFrame(()=>{He.style.opacity="1",xa.style.transform="translateX(0px)"})},7),setTimeout(()=>{requestAnimationFrame(()=>{kt.style.opacity="1",kt.style.transform="translateX(0px)"})},11)};Nl.addEventListener("click",()=>{He.style.display==="none"||He.style.display===""?Hl():Xo()});He.addEventListener("click",o=>{o.target===He&&Xo()});document.getElementById("menuCloseButton").onclick=()=>{Xo()};const _a=document.querySelectorAll("md-secondary-tab"),ql=document.querySelectorAll('[role="tabpanel2"]');function Vl(o){const e=o.currentTarget,t=e.id.replace("-tab","-panel");ql.forEach(i=>{i.hidden=!0}),_a.forEach(i=>{i.removeAttribute("active")});const r=document.getElementById(t);r.hidden=!1,e.setAttribute("active","")}_a.forEach(o=>{o.addEventListener("click",Vl)});document.addEventListener("DOMContentLoaded",function(){const t="New shortcut",r="https://github.com/XengShi/materialYouNewTab",i="Shortcut Name",a="Shortcut URL",s=["Youtube","Gmail","Telegram","WhatsApp","Instagram","Twitter"],d=new Map([["youtube.com",` + */let li=class extends Sd{constructor(){super(...arguments),this.fieldTag=le`md-outlined-field`}};li.styles=[hn,Id];li=l([S("md-outlined-text-field")],li);const Io=/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor),vt=typeof browser<"u",Ci=/Edg/.test(navigator.userAgent),Ei=navigator.brave&&navigator.brave.isBrave,si=!/Android|iPhone|iPad|iPod/.test(navigator.userAgent);let un,Oe;window.addEventListener("DOMContentLoaded",async()=>{const r=document.getElementById("userAPI"),e=document.getElementById("userLoc"),t=document.getElementById("userproxy"),o=document.getElementById("saveAPIbtn"),i=document.getElementById("saveLocbtn"),a=document.getElementById("useGPSbtn"),n=document.getElementById("saveproxybtn"),s=document.getElementById("resetsettingsbtn"),d=document.getElementById("resetAPIbtn"),h=document.getElementById("resetproxybtn");document.getElementById("HostproxyButton");const v=localStorage.getItem("weatherApiKey"),u=localStorage.getItem("weatherLocation"),f=localStorage.getItem("proxy"),y="https://mynt-proxy.rhythmcorehq.com";u&&(e.value=u),v?(r.value=v,d.style.display="block",o.style.display="none"):(d.style.display="none",o.style.removeProperty("display")),d.addEventListener("click",()=>{H({headline:"Reset Weather API Key?",icon:"warning",textBtn:"Yes",tonalBtn:"No",formText:"Are you sure you want to reset the Weather API key? to the default key",onTextBtnClick:()=>{localStorage.removeItem("weatherApiKey"),location.reload()},onTonalBtnClick:()=>{},onIgnored:()=>{}})}),h.addEventListener("click",()=>{H({headline:"Reset Proxy URL?",icon:"warning",textBtn:"Yes",tonalBtn:"No",formText:`Are you sure you want to reset the Proxy URL to the default URL? + +It is strongly recommended to host your own proxy for enhanced privacy. + +By default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.`,onTextBtnClick:()=>{localStorage.removeItem("proxy"),location.reload()},onTonalBtnClick:()=>{},onIgnored:()=>{}})});function b(C,L){C.key==="Enter"&&document.getElementById(L).click()}r.addEventListener("keydown",C=>b(C,"saveAPIbtn")),e.addEventListener("keydown",C=>b(C,"saveLocbtn")),t.addEventListener("keydown",C=>b(C,"saveproxybtn")),o.addEventListener("click",()=>{const C=r.value.trim();localStorage.setItem("weatherApiKey",C),r.value="",H({headline:"API Key Saved",icon:"done",textBtn:"I will Refresh later",tonalBtn:"OK",formText:"API Key saved successfully. Page need to be Refreshed to apply changes.",onTextBtnClick:()=>{},onTonalBtnClick:()=>{location.reload()},onIgnored:()=>{}})});const g=getLanguageStatus("selectedLanguage")||"en";s.addEventListener("click",()=>{var C;H({headline:"Reset All Settings?",icon:"delete_forever",textBtn:"Reset",tonalBtn:"Cancel",formText:((C=translations[g])==null?void 0:C.confirmRestore)||translations.en.confirmRestore,onTextBtnClick:()=>{localStorage.clear(),location.reload()},onTonalBtnClick:()=>{},onIgnored:()=>{}})}),n.addEventListener("click",()=>{let C=t.value.trim();C===""?C=y:(C.startsWith("http://")||C.startsWith("https://")||(C="http://"+C),document.getElementById("userproxy").value="",C.endsWith("/")&&(C=C.slice(0,-1))),localStorage.setItem("proxy",C),t.value=C,H({headline:"Proxy Saved",icon:"done",textBtn:"I will Refresh later",tonalBtn:"OK",formText:"Proxy URL saved successfully. Page will Refresh to apply changes.",onTextBtnClick:()=>{},onTonalBtnClick:()=>{location.reload()},onIgnored:()=>{}})});const k=["d36ce712613d4f21a6083436240910","db0392b338114f208ee135134240312","de5f7396db034fa2bf3140033240312","c64591e716064800992140217240312","9b3204c5201b4b4d8a2140330240312","eb8a315c15214422b60140503240312","cd148ebb1b784212b74140622240312","7ae67e219af54df2840140801240312","0a6bc8a404224c8d89953341241912","f59e58d7735d4739ae953115241912"],E=k[Math.floor(Math.random()*k.length)],I=v||E;un=f||y;let O=u;const P=JSON.parse(localStorage.getItem("useGPS"));async function D(C){const L=getLanguageStatus("selectedLanguage")||"en";try{let Z=function(){var Yt;const De=A.current.condition.text,ne=Math.round(A.current.temp_c),ce=Math.round(A.current.temp_f),Ie=A.current.humidity,Me=A.current.feelslike_c,No=A.current.feelslike_f;document.getElementById("conditionText").textContent=De;const Uo=localizeNumbers(Ie.toString(),L),qo=localizeNumbers(ne.toString(),L),Ho=localizeNumbers(Me.toString(),L),Vo=localizeNumbers(ce.toString(),L),st=localizeNumbers(No.toString(),L),Wt=((Yt=translations[L])==null?void 0:Yt.humidityLevel)||translations.en.humidityLevel;document.getElementById("humidityLevel").textContent=`${Wt} ${Uo}%`;const jt=document.getElementById("fahrenheitCheckbox");(()=>{var Jt;const ht=document.getElementById("temp"),Zt=document.getElementById("feelsLike"),Qt=((Jt=translations[L])==null?void 0:Jt.feelsLike)||translations.en.feelsLike;if(jt.selected){ht.textContent=Vo;const Le=document.createElement("span");Le.className="tempUnit",Le.textContent="°F",ht.appendChild(Le);const wt=L==="cs"?" °F":"°F";Zt.textContent=`${Qt} ${st}${wt}`}else{ht.textContent=qo;const Le=document.createElement("span");Le.className="tempUnit",Le.textContent="°C",ht.appendChild(Le);const wt=L==="cs"?" °C":"°C";Zt.textContent=`${Qt} ${Ho}${wt}`}})();const Fe=A.current.condition.icon.replace("//cdn","https://cdn");document.getElementById("wIcon").src=Fe;const dt={idn:"47%",hu:"48%",en:"42%"},Gt=document.getElementById("slider");Gt.style.minWidth=dt[L]||dt.en,Ie>40&&(Gt.style.width=`calc(${Ie}% - 60px)`);var ct=A.location.name,Xt=10,jo=ct.length>Xt?ct.substring(0,Xt)+"...":ct;document.getElementById("location").textContent=jo};var ue=Z;let A=JSON.parse(localStorage.getItem("weatherParsedData"));const V=parseInt(localStorage.getItem("weatherParsedTime")),Y=localStorage.getItem("weatherParsedLocation"),Ee=localStorage.getItem("weatherParsedLang"),de=v?12e4:96e4;if(!A||Date.now()-V>de||Y!==O||Ee!==L){let De=`https://api.weatherapi.com/v1/current.json?key=${I}&q=${O}&aqi=no&lang=${L}`;if(A=await(await fetch(De)).json(),!A.error){const ce={location:{name:A.location.name},current:{condition:{text:A.current.condition.text,icon:A.current.condition.icon},temp_c:A.current.temp_c,temp_f:A.current.temp_f,humidity:A.current.humidity,feelslike_c:A.current.feelslike_c,feelslike_f:A.current.feelslike_f}};localStorage.setItem("weatherParsedData",JSON.stringify(ce)),localStorage.setItem("weatherParsedTime",Date.now()),localStorage.setItem("weatherParsedLocation",O),localStorage.setItem("weatherParsedLang",L)}Z()}else setTimeout(Z,25)}catch(A){console.error("Error fetching weather data:",A),localStorage.getItem("weatherApiKey")?H({headline:"Weather Data Unavailable",icon:"error",textBtn:"Reset API Key",tonalBtn:"Cancel",formText:`Failed to fetch weather data. Please check your API key and location or internet connection. + + Click 'Reset API Key' to reset the Weather API key to the default value.`,onTextBtnClick:()=>{localStorage.removeItem("weatherApiKey"),setTimeout(()=>{H({headline:"Successfully Reset API Key",icon:"done",textBtn:"I will Refresh later",tonalBtn:"OK",formText:"The Weather API key has been reset to the default value. Page need to be Refreshed to apply changes.",onTextBtnClick:()=>{},onTonalBtnClick:()=>{C.reload()},onIgnored:()=>{}})},1500)},onTonalBtnClick:()=>{},onIgnored:()=>{}}):j("Weather Data Unavailable","Failed to fetch weather data. Please check your API key and location or internet connection.")}}function j(C,L){if(document.getElementById("menuBar").style.display==="none"){const A=document.getElementById("alertbody");document.getElementById("alertbodyheadline").innerText=C,document.getElementById("alertbodyform").innerText=L,A.show()}else{const A=document.getElementById("menualertbody");document.getElementById("menualertbodyheadline").innerText=C,document.getElementById("menualertbodyform").innerText=L,A.show()}}function H({headline:C,icon:L,textBtn:ue,tonalBtn:A,formText:V,onTextBtnClick:Y,onTonalBtnClick:Ee,onIgnored:de}){if(document.getElementById("menuBar").style.display==="none"){let ce=function(){const Ie=ne.returnValue;Ie==="txtbtn"?Y():Ie==="tonalbtn"?Ee():de()};var De=ce;const ne=document.getElementById("resetdialog");document.getElementById("dialogheadline").innerText=C,document.getElementById("dialogicon").innerText=L,document.getElementById("dialogtextbtn").innerText=ue,document.getElementById("dialogtonaltbtn").innerText=A,document.getElementById("form").innerText=V,ne.show(),ne.removeEventListener("close",ce),ne.addEventListener("close",ce)}else{let ce=function(){const Me=ne.returnValue;Me==="txtbtn"?Y():Me==="tonalbtn"?Ee():de()};var De=ce;const ne=document.getElementById("menuresetdialog");document.getElementById("menudialogheadline").innerText=C,document.getElementById("menudialogicon").innerText=L,document.getElementById("menudialogtextbtn").innerText=ue,document.getElementById("menudialogtonaltbtn").innerText=A,document.getElementById("menuform").innerText=V,ne.show(),ne.removeEventListener("close",ce),ne.addEventListener("close",ce)}}window.showAlert=j,window.showDialog=H,localStorage.getItem("firstLoadCompleted")||re();function re(){H({headline:"Welcome to Better Material You NewTab",icon:"info",textBtn:"Privacy Policy",tonalBtn:"Agree & Continue",formText:`This is the homepage of your browser. You can customize it by clicking on the pencil icon on the bottom right corner. + +By clicking 'Agree & Continue', you agree to our Privacy Policy.`,onTextBtnClick:()=>{window.location.href="/privacy-policy.html"},onTonalBtnClick:()=>{localStorage.setItem("firstLoadCompleted","true")},onIgnored:()=>{setTimeout(re,1e3)}})}async function xe(){try{const C=()=>new Promise((A,V)=>{navigator.geolocation.getCurrentPosition(Y=>{A({latitude:Y.coords.latitude,longitude:Y.coords.longitude})},Y=>V(Y),{timeout:4e3})}),{latitude:L,longitude:ue}=await C();return`${L},${ue}`}catch(C){console.error("GPS Location retrieval failed: ",C)}}await async function(){try{if(P)try{O=await xe()}catch{}O||(O=(await(await fetch("https://ipinfo.io/json/")).json()).loc),D(O)}catch(L){console.error("Failed to determine location:",L),O="auto:ip",D(O)}}(),a.addEventListener("click",()=>{localStorage.setItem("useGPS",!0),localStorage.removeItem("weatherLocation"),location.reload()}),i.addEventListener("click",()=>{const C=e.value.trim();localStorage.setItem("weatherLocation",C),localStorage.setItem("useGPS",!1),e.value="",D(C),location.reload()})});const Ve=document.getElementById("bookmarkButton"),mo=document.getElementById("bookmarkSidebar"),Se=document.getElementById("bookmarkList"),fo=document.getElementById("bookmarkSearch"),cr=document.getElementById("clearSearchButton"),Ad=document.getElementById("bookmarkViewGrid"),Td=document.getElementById("bookmarkViewList");var Ae;vt&&browser.bookmarks?Ae=browser.bookmarks:typeof chrome<"u"&&chrome.bookmarks?Ae=chrome.bookmarks:console.log("Bookmarks API is either not supported in this browser or permission is not granted by the user.");document.addEventListener("DOMContentLoaded",function(){Ve.addEventListener("click",function(){r(),cr.click()}),Ad.addEventListener("click",function(){bookmarkGridCheckbox.selected||bookmarkGridCheckbox.click()}),Td.addEventListener("click",function(){bookmarkGridCheckbox.selected&&bookmarkGridCheckbox.click()}),document.addEventListener("click",function(o){!mo.contains(o.target)&&!Ve.contains(o.target)&&mo.classList.contains("open")&&r()}),fo.addEventListener("input",function(){const o=fo.value.toLowerCase(),i=Se.querySelectorAll("li[data-url], li.folder");Array.from(i).forEach(function(a){const n=a.textContent.toLowerCase(),s=a.dataset.url?a.dataset.url.toLowerCase():"",d=a.classList.contains("folder");if(!d&&(n.includes(o)||s.includes(o)))a.style.display="";else if(d){const h=a.querySelectorAll("li[data-url]");let v=!1;Array.from(h).forEach(function(u){const f=u.textContent.toLowerCase(),y=u.dataset.url?u.dataset.url.toLowerCase():"";f.includes(o)||y.includes(o)?(v=!0,u.style.display=""):u.style.display="none"}),v?(a.style.display="",a.classList.add("open")):(a.style.display="none",a.classList.remove("open"))}else a.style.display="none"}),o===""&&Array.from(i).forEach(function(a){if(a.style.display="",a.classList.contains("folder")){a.classList.remove("open");const n=a.querySelector("ul");n&&n.classList.add("hidden")}}),cr.style.display=o?"inline":"none"}),cr.addEventListener("click",function(){fo.value="",fo.dispatchEvent(new Event("input"))});function r(){mo.classList.toggle("open"),Ve.classList.toggle("rotate"),mo.classList.contains("open")&&e()}function e(){if(!Ae||!Ae.getTree){console.error("Bookmarks API is unavailable. Please check permissions or context.");return}Ae.getTree().then(o=>{var i,a,n,s,d,h,v,u;if(Se.innerHTML="",Ae.getRecent&&Ae.getRecent(8).then(f=>{if(f.length>0){const y={title:"Recently Added",children:f};Se.appendChild(t([y]))}}),vt){const f=(a=(i=o[0])==null?void 0:i.children)==null?void 0:a.find(g=>g.title==="Bookmarks Toolbar"),y=(s=(n=o[0])==null?void 0:n.children)==null?void 0:s.find(g=>g.title==="Bookmarks Menu"),b=(h=(d=o[0])==null?void 0:d.children)==null?void 0:h.find(g=>g.title==="Other Bookmarks");f!=null&&f.children&&Se.appendChild(t(f.children)),y!=null&&y.children&&Se.appendChild(t(y.children)),b!=null&&b.children&&Se.appendChild(t(b.children))}else{let f="Bookmarks bar";Ci?f="Favorites bar":Ei&&(f="Bookmarks");const y=(u=(v=o[0])==null?void 0:v.children)==null?void 0:u.find(g=>g.title===f);y&&y.children&&Se.appendChild(t(y.children));const b=o.find(g=>g.id==="0");b&&b.children&&Se.appendChild(t(b.children))}}).catch(o=>{console.error("Error loading bookmarks:",o)})}function t(o){let i=document.createElement("ul");const a=o.filter(d=>d.children&&d.children.length>0),n=o.filter(d=>d.url);a.sort((d,h)=>d.title.localeCompare(h.title)),n.sort((d,h)=>d.title.localeCompare(h.title));const s=[...a,...n];for(let d of s)if(d.id!=="1"){if(d.children&&d.children.length>0){let h=document.createElement("li");const v=document.getElementById("folderIconTemplate").cloneNode(!0);v.removeAttribute('"id'),h.appendChild(v),h.appendChild(document.createTextNode(d.title)),h.classList.add("folder"),h.addEventListener('"click',function(f){f.stopPropagation(),h.classList.toggle("open");const y=h.querySelector("ul");y&&y.classList.toggle("hidden")});let u=t(d.children);u.classList.add("hidden"),h.appendChild(u),i.appendChild(h)}else if(d.url){let h=document.createElement("li");h.dataset.url=d.url;let v=document.createElement("a");v.href=d.url;let u=document.createElement("span");u.textContent=d.title;let f=document.createElement("img");f.src=`https://www.google.com/s2/favicons?domain=${new URL(d.url).hostname}&sz=48`,f.classList.add("favicon"),f.onerror=()=>{f.src="./svgs/shortcuts_icons/offline.svg"};let y=document.createElement("button");y.textContent="✖",y.classList.add("bookmark-delete-button"),y.addEventListener("click",function(b){var g;b.preventDefault(),b.stopPropagation(),showDialog({headline:"Delete Bookmark",icon:"delete_forever",textBtn:"Delete",tonalBtn:"Cancel",formText:`${((g=translations[Re])==null?void 0:g.deleteBookmark)||translations.en.deleteBookmark} "${d.title||d.url}"?`,onTextBtnClick:()=>{vt?Ae.remove(d.id).then(()=>{h.remove()}).catch(k=>{console.error("Error removing bookmark in Firefox:",k)}):Ae.remove(d.id,function(){h.remove()})},onTonalBtnClick:()=>{},onIgnored:()=>{}})}),v.appendChild(f),v.appendChild(u),h.appendChild(v),h.appendChild(y),v.addEventListener("click",function(b){b.ctrlKey||b.metaKey?(b.preventDefault(),vt?browser.tabs.create({url:d.url,active:!1}):Io?chrome.tabs.create({url:d.url,active:!1}):window.open(d.url,"_blank")):(b.preventDefault(),vt?browser.tabs.update({url:d.url}):Io?chrome.tabs.update({url:d.url},function(){}):window.location.href=d.url)}),i.appendChild(h)}}return i.addEventListener("click",function(d){d.stopPropagation()}),i}});const St=document.getElementById("todoContainer"),We=document.getElementById("todoListCont"),Ii=document.getElementById("todoullist"),$d=document.getElementById("todoAdd"),So=document.getElementById("todoInput");let te={};$d.addEventListener("click",pn);So.addEventListener("keypress",r=>{r.key==="Enter"&&pn()});function Ld(r){const e=document.createElement("div");return e.textContent=r,e.innerHTML}function pn(){const r=So.value.trim();if(r==="")return;const e="t"+Date.now(),t=r;te[e]={title:t,status:"pending",pinned:!1};const o=vn(e,t,"pending",!1);Ii.appendChild(o),So.value="",At()}function vn(r,e,t,o){let i=document.createElement("li");i.innerHTML=Ld(e);const a=document.createElement("span");a.setAttribute("class","todoremovebtn"),a.textContent="×",i.appendChild(a),i.setAttribute("class","todolistitem"),t==="completed"&&i.classList.add("checked");const n=document.createElement("span");return n.setAttribute("class","todopinbtn"),i.appendChild(n),o&&i.classList.add("pinned"),i.setAttribute("data-todoitem",r),i}Ii.addEventListener("click",r=>{if(r.target.tagName==="LI"){r.target.classList.toggle("checked");let e=r.target.dataset.todoitem;te[e].status=te[e].status==="completed"?"pending":"completed",At()}else if(r.target.classList.contains("todoremovebtn")){let e=r.target.parentElement.dataset.todoitem;r.target.parentElement.remove(),delete te[e],At()}else if(r.target.classList.contains("todopinbtn")){r.target.parentElement.classList.toggle("pinned");let e=r.target.parentElement.dataset.todoitem;te[e].pinned=te[e].pinned!==!0,At()}});function At(){localStorage.setItem("todoList",JSON.stringify(te))}function la(){try{te=JSON.parse(localStorage.getItem("todoList"))||{};const r=document.createDocumentFragment();for(let e in te){const t=te[e],o=vn(e,t.title,t.status,t.pinned);r.appendChild(o)}Ii.appendChild(r)}catch(r){console.error("Error loading from localStorage:",r),localStorage.setItem("todoList","{}")}}let zd=localStorage.getItem("todoLastUpdateDate"),sa=new Date().toLocaleDateString();if(zd===sa)la();else{localStorage.setItem("todoLastUpdateDate",sa),te=JSON.parse(localStorage.getItem("todoList"))||{};for(let r in te)te[r].pinned===!1?te[r].status==="completed"&&delete te[r]:te[r].status="pending";At(),la()}We.addEventListener("click",function(r){const e=St.style.display==="grid";St.style.display=e?"none":"grid",e?We.classList.remove("menu-open"):(We.classList.add("menu-open"),So.focus())});document.addEventListener("click",function(r){!(St.contains(r.target)||We.contains(r.target)||r.target.classList.contains("todoremovebtn"))&&St.style.display==="grid"&&(St.style.display="none",We.classList.remove("menu-open")),r.stopPropagation()});var Si=new Date,mn=Si.getSeconds(),fn=Si.getMinutes(),Bd=Si.getHours();let Rd=mn*6,Od=fn*6+mn/10,Pd=30*Bd+fn/2;document.getElementById("second").style.transform=`rotate(${Rd}deg)`;document.getElementById("minute").style.transform=`rotate(${Od}deg)`;document.getElementById("hour").style.transform=`rotate(${Pd}deg)`;let Ao,bo=!1,go=!1,yo=!1;function Dd(){const r=localStorage.getItem("clocktype");Oe=r||"analog",localStorage.setItem("clocktype",Oe)}Dd();function Ai(){if(Oe==="analog"){var r=new Date,e=r.getDay(),t=r.getDate(),o=r.getMonth();const s=getLanguageStatus("selectedLanguage")||"en";var i;translations[s]&&translations[s].days&&translations[s].days[e]?i=translations[s].days[e]:i=translations.en.days[e];var a;translations[s]&&translations[s].months&&translations[s].months[o]?a=translations[s].months[o]:a=translations.en.months[o];var n=localizeNumbers(t.toString(),s);const d={bn:`${i}, ${n} ${a}`,mr:`${i}, ${n} ${a}`,np:`${i}, ${n} ${a}`,zh:`${a}${t}日${i}`,cs:`${i}, ${t}. ${a}`,hi:`${i}, ${t} ${a}`,it:`${i.substring(0,3)} ${t} ${a.substring(0,3)}`,ja:`${i.substring(0,1)}, ${a}${t}`,ko:`${i.substring(0,1)}, ${a} ${t}일`,pt:`${i.substring(0,3)}, ${t} ${a.substring(0,3)}`,ru:`${i.substring(0,2)}, ${t} ${a.substring(0,4)}.`,es:`${i.substring(0,3)}, ${t} ${a.substring(0,3)}`,tr:`${i.substring(0,3)}, ${t} ${a}`,uz:`${i.substring(0,3)}, ${t}-${a}`,vi:`${i}, ngày ${t} ${a}`,idn:`${i}, ${t} ${a}`,fr:`${i.substring(0,3)}, ${t} ${a.substring(0,3)}`,az:`${i.substring(0,3)}, ${t} ${a.substring(0,3)}`,sl:`${i}, ${t}. ${a.substring(0,3)}.`,hu:`${a.substring(0,3)} ${t}, ${i}`,default:`${i.substring(0,3)}, ${a.substring(0,3)} ${t}`};document.getElementById("date").innerText=d[s]||d.default}}function bn(){var r=new Date,e=r.getSeconds(),t=r.getMinutes(),o=r.getHours();let i=e*6,a=t*6+e/10,n=30*o+t/2;if(bo){document.getElementById("second").style.transition="none",document.getElementById("second").style.transform="rotate(0deg)",bo=!1;return}if(yo){document.getElementById("minute").style.transition="none",document.getElementById("minute").style.transform="rotate(0deg)",yo=!1;return}if(go){document.getElementById("hour").style.transition="none",document.getElementById("hour").style.transform="rotate(0deg)",go=!1;return}i===0?(document.getElementById("second").style.transition="transform 1s ease",document.getElementById("second").style.transform="rotate(361deg)",bo=!0):bo!==!0&&(document.getElementById("second").style.transition="transform 1s ease",document.getElementById("second").style.transform=`rotate(${i}deg)`),a===0?(document.getElementById("minute").style.transition="transform 1s ease",document.getElementById("minute").style.transform="rotate(361deg)",yo=!0):yo!==!0&&(document.getElementById("minute").style.transition="transform 1s ease",document.getElementById("minute").style.transform=`rotate(${a}deg)`),n===0&&r.getHours()===0&&r.getMinutes()===0?(document.getElementById("hour").style.transition="none",document.getElementById("hour").style.transform="rotate(0deg)",go=!0):go!==!0&&(document.getElementById("hour").style.transition="transform 1s ease",document.getElementById("hour").style.transform=`rotate(${n}deg)`),Ai()}function Md(){const r=new Date().getHours();let e;r<12?e="morning":r<17?e="afternoon":e="evening";const t=getLanguageStatus("selectedLanguage")||"en";return translations[t]&&translations[t].greeting&&translations[t].greeting[e]?translations[t].greeting[e]:translations.en.greeting[e]}function Ti(){let e=localStorage.getItem("hourformat")==="true";const t=document.getElementById("greetingcheckbox"),o=localStorage.getItem("greetingEnabled")==="true";t.selected=o;const i=new Date,a=i.getDay(),n=i.getDate(),s=getLanguageStatus("selectedLanguage")||"en";let d;translations[s]&&translations[s].days&&translations[s].days[a]?d=translations[s].days[a]:d=translations.en.days[a];const h=localizeNumbers(n.toString(),s),v={az:`${d} ${n}`,bn:`${d}, ${h}`,mr:`${d}, ${h}`,np:`${d}, ${h}`,zh:`${n}日${d}`,cs:`${d}, ${n}.`,hi:`${d}, ${n}`,ja:`${n} ${d.substring(0,1)}`,ko:`${n} ${d.substring(0,1)}`,pt:`${d}, ${n}`,ru:`${n} ${d.substring(0,2)}`,vi:`${n} ${d}`,idn:`${n} ${d}`,fr:`${d} ${n}`,hu:`${d} ${n}`,default:`${n} ${d.substring(0,3)}`},u=v[s]||v.default;let f,y="";const b=["tr","zh","ja","ko","hu"],g=["bn","mr","np"],k={hour:"2-digit",minute:"2-digit",hour12:e},E=b.includes(s)||g.includes(s)?"en-US":s;f=i.toLocaleTimeString(E,k),e&&([f,y]=f.split(" "));let[I,O]=f.split(":");e&&(I=parseInt(I,10).toString());const P=localizeNumbers(I,s),D=localizeNumbers(O,s);document.getElementById("digihours").textContent=P,document.getElementById("digicolon").textContent=":",document.getElementById("digiminutes").textContent=D,e&&b.includes(s)&&(y=parseInt(I,10)<12?"AM":"PM"),e?document.getElementById("amPm").textContent=y:document.getElementById("amPm").textContent="",document.getElementById("digidate").textContent=u;const j=localStorage.getItem("clocktype");j==="digital"&&o?document.getElementById("date").innerText=Md():j==="digital"&&(document.getElementById("date").innerText="")}function $i(){Ao||(Ao=setInterval(bn,500))}function di(){clearInterval(Ao),Ao=null}ci();setInterval(Ti,1e3);Oe==="digital"?Ti():Oe==="analog"&&document.visibilityState==="visible"&&($i(),Ai());document.addEventListener("visibilitychange",function(){document.visibilityState==="visible"?($i(),Ai()):di()});function ci(){const r=document.getElementById("analogClock"),e=document.getElementById("digitalClock");Oe==="analog"?(r.style.display="block",e.style.display="none"):Oe==="digital"&&(e.style.display="block",r.style.display="none")}document.addEventListener("DOMContentLoaded",function(){bn()});const da=document.getElementById("userproxy"),ca=document.getElementById("userLoc"),ha=document.getElementById("userAPI"),ua=document.getElementById("resetAPIbtn"),pa=document.getElementById("resetproxybtn"),va=document.getElementById("HostproxyButton"),ma=localStorage.getItem("weatherApiKey"),fa=localStorage.getItem("proxy");da.addEventListener("input",()=>{const r=document.getElementById("saveproxybtn");da.value?(r.disabled=!1,fa&&(pa.style.display="none",r.style.removeProperty("display"),va.textContent="Host Your Own Proxy")):(r.disabled=!0,fa&&(pa.style.display="block",r.style.display="none",va.textContent="Host Your Own"))});ca.addEventListener("input",()=>{const r=document.getElementById("saveLocbtn");ca.value?r.disabled=!1:r.disabled=!0});ha.addEventListener("input",()=>{const r=document.getElementById("saveAPIbtn");ha.value?(r.disabled=!1,ma&&(ua.style.display="none",r.style.removeProperty("display"))):(r.disabled=!0,ma&&(ua.style.display="block",r.style.display="none"))});document.addEventListener("DOMContentLoaded",()=>{const r=document.getElementById("userText"),e=document.getElementById("userTextCheckbox"),t=localStorage.getItem("userTextVisible")!=="false";e.selected=t,r.style.display=t?"block":"none",e.addEventListener("change",()=>{const a=e.selected;r.style.display=a?"block":"none",localStorage.setItem("userTextVisible",a)});const o=localStorage.getItem("selectedLanguage")||"en";applyLanguage(o);const i=localStorage.getItem("userText");if(i)r.value=i;else{const a=r.dataset.placeholder||translations.en.userText;r.value=a}r.addEventListener("input",function(){localStorage.setItem("userText",r.value)}),r.addEventListener("focus",function(){r.value===r.dataset.placeholder&&(r.value="")}),r.addEventListener("blur",function(){r.value===""&&(r.value=r.dataset.placeholder)})});const To=document.getElementById("searchbar");To.addEventListener("click",function(r){r.stopPropagation(),To.classList.add("active")});document.addEventListener("click",function(r){To.contains(r.target)||To.classList.remove("active")});document.addEventListener("DOMContentLoaded",()=>{const r=document.querySelector(".dropdown-content");document.addEventListener("click",b=>{r.style.display==="block"&&(b.stopPropagation(),r.style.display="none")}),document.querySelector(".dropdown-btn").addEventListener("click",function(b){document.getElementById("resultBox").classList.toString().includes("show")||(r.style.display=r.style.display==="block"?"none":"block")});const e=document.getElementById("entrbtn"),t=document.getElementById("searchQ"),o=document.getElementsByName("search-engine"),i=document.querySelectorAll('[id$="-dropdown"]:not(*[data-default])'),a=document.querySelector('#default-dropdown-item div[id$="-dropdown"]'),n=()=>{var E;const g=Array.from(i).sort((I,O)=>{const P=parseInt(I.getAttribute("data-engine"),10),D=parseInt(O.getAttribute("data-engine"),10);return P-D}),k=(E=g[0])==null?void 0:E.parentNode;k&&g.forEach(I=>k.appendChild(I))};i.forEach(b=>{b.addEventListener("click",()=>{const g=b.getAttribute("data-engine"),k=document.querySelector(`input[type="radio"][value="engine${g}"]`),E=`*[data-engine-name=${b.getAttribute("data-engine-name")}]`;k.checked=!0,s(E),n(),localStorage.setItem("selectedSearchEngine",k.value)})}),document.querySelectorAll(".search-engine").forEach(b=>{b.addEventListener("click",()=>{const g=b.querySelector('input[type="radio"]');g.checked=!0;const E=`[data-engine="${g.value.charAt(g.value.length-1)}"]`;s(E),n(),localStorage.setItem("selectedSearchEngine",g.value)})});function s(b){const g=document.querySelector(b),k=a.innerHTML;a.innerHTML=g.innerHTML,g.innerHTML=k,["data-engine","data-engine-name","id"].forEach(E=>{const I=a.getAttribute(E);a.setAttribute(E,g.getAttribute(E)),g.setAttribute(E,I)})}function d(){var b=document.querySelector('input[name="search-engine"]:checked').value,g=t.value,k={engine1:"https://www.google.com/search?q=",engine2:"https://duckduckgo.com/?q=",engine3:"https://bing.com/?q=",engine4:"https://search.brave.com/search?q=",engine5:"https://www.youtube.com/results?search_query="};if(g!==""){var E=k[b]+encodeURIComponent(g);window.location.href=E}}e.addEventListener("click",d),t.addEventListener("keypress",b=>{b.key==="Enter"&&d()});const h=localStorage.getItem("selectedSearchEngine");if(h){const b=h.charAt(h.length-1),g=document.querySelector("*[data-default]").getAttribute("data-engine");if(b!==g){const E=`*[data-engine="${b}"]`;s(E),n()}const k=document.querySelector(`input[name="search-engine"][value="${h}"]`);k&&(k.checked=!0)}const v=document.querySelectorAll(".dropdown-item:not(*[data-default])");let u=-1;function f(){v.forEach((b,g)=>{b.addEventListener("mouseenter",()=>{b.classList.add("selected")}),b.addEventListener("mouseleave",()=>{b.classList.remove("selected")}),g===u?(b.focus(),b.classList.add("selected")):(b.focus(),b.classList.remove("selected"))})}document.querySelector(".dropdown").addEventListener("keydown",function(b){if(r.style.display==="block"){if(b.key==="ArrowDown")u=(u+1)%v.length;else if(b.key==="ArrowUp")u=(u-1+v.length)%v.length;else if(b.key==="Enter"){const g=".dropdown-content .selected",k=element.getAttribute("data-engine"),E=document.querySelector(`input[type="radio"][value="engine${k}"]`);E.checked=!0,s(g),n()}f()}}),f(),o.forEach(b=>{b.addEventListener("change",()=>{const g=document.querySelector('input[name="search-engine"]:checked').value;localStorage.setItem("selectedSearchEngine",g)})});const y=localStorage.getItem(Fo);if(y){zi(y);const b=document.querySelector(`.colorPlate[value="${y}"]`);b&&(b.checked=!0)}document.getElementById("LoadingScreen").style.display="none",setTimeout(()=>{document.documentElement.classList.add("theme-transition")},25)});function Fd(){return(Io||Ci)&&si&&!Ei}const He=document.getElementById("micIcon"),$o=document.getElementById("micIconCheckbox"),ba=localStorage.getItem("micIconVisible");let Tt;ba!==null?Tt=ba==="true":(Tt=Fd(),localStorage.setItem("micIconVisible",Tt));$o.selected=!Tt;Tt?He.style.display="block":He.style.display="none";function Nd(r){He.style.display=r?"block":"none",localStorage.setItem("micIconVisible",r)}$o.addEventListener("change",()=>{const r=$o.selected;Nd(!r),r||gn()});function gn(){const r=document.getElementById("searchQ"),e=document.getElementById("resultBox"),t=getLanguageStatus("selectedLanguage")||"en";if("webkitSpeechRecognition"in window||"SpeechRecognition"in window){const i=new(window.SpeechRecognition||window.webkitSpeechRecognition);i.continuous=!1,i.interimResults=!0,i.lang=t;let a=!1;i.onstart=()=>{var s;a=!0,document.querySelector(".colorPlate:checked").value!=="dark"&&(He.style.color="var(--darkerColor-blue)"),r.placeholder=`${((s=translations[t])==null?void 0:s.listenPlaceholder)||translations.en.listenPlaceholder}`,He.classList.add("micActive")},i.onresult=n=>{let s="";for(let d=0;d{console.error("Speech recognition error: ",n.error),a=!1},i.onend=()=>{var n;a=!1,He.style.color="var(--darkColor-blue)",He.classList.remove("micActive"),r.placeholder=`${((n=translations[t])==null?void 0:n.searchPlaceholder)||translations.en.searchPlaceholder}`},He.addEventListener("click",()=>{a?i.stop():i.start()})}else console.warn("Speech Recognition API not supported in this browser.")}$o.selected||gn();const yn=document.querySelectorAll(".colorPlate"),Fo="selectedTheme",ga=localStorage.getItem(Fo),Li="customThemeColor",ya=localStorage.getItem(Li);let bt;const xn=()=>{document.documentElement.classList.remove("dark-theme"),bt&&(bt.remove(),bt=null),["searchQ","searchIconDark","darkFeelsLikeIcon","menuButton","menuCloseButton","closeBtnX"].forEach(t=>{const o=document.getElementById(t);o&&o.removeAttribute("style")}),document.querySelectorAll(".accentColor").forEach(t=>{t.style.fill=""}),document.documentElement.style.setProperty("--bg-color-blue","#bbd6fd"),document.documentElement.style.setProperty("--accentLightTint-blue","#e2eeff"),document.documentElement.style.setProperty("--darkerColor-blue","#3569b2"),document.documentElement.style.setProperty("--darkColor-blue","#4382ec"),document.documentElement.style.setProperty("--textColorDark-blue","#1b3041"),document.documentElement.style.setProperty("--whitishColor-blue","#ffffff")},zi=r=>{r!=="dark"?(xn(),r==="blue"?(document.documentElement.style.setProperty("--bg-color-blue","#bbd6fd"),document.documentElement.style.setProperty("--accentLightTint-blue","#e2eeff"),document.documentElement.style.setProperty("--darkerColor-blue","#3569b2"),document.documentElement.style.setProperty("--darkColor-blue","#4382ec"),document.documentElement.style.setProperty("--textColorDark-blue","#1b3041"),document.documentElement.style.setProperty("--whitishColor-blue","#ffffff")):(document.documentElement.style.setProperty("--bg-color-blue",`var(--bg-color-${r})`),document.documentElement.style.setProperty("--accentLightTint-blue",`var(--accentLightTint-${r})`),document.documentElement.style.setProperty("--darkerColor-blue",`var(--darkerColor-${r})`),document.documentElement.style.setProperty("--darkColor-blue",`var(--darkColor-${r})`),document.documentElement.style.setProperty("--textColorDark-blue",`var(--textColorDark-${r})`),document.documentElement.style.setProperty("--whitishColor-blue",`var(--whitishColor-${r})`))):r==="dark"&&(document.documentElement.style.setProperty("--bg-color-blue",`var(--bg-color-${r})`),document.documentElement.style.setProperty("--accentLightTint-blue",`var(--accentLightTint-${r})`),document.documentElement.style.setProperty("--darkerColor-blue",`var(--darkerColor-${r})`),document.documentElement.style.setProperty("--darkColor-blue",`var(--darkColor-${r})`),document.documentElement.style.setProperty("--textColorDark-blue",`var(--textColorDark-${r})`),bt=document.createElement("style"),bt.textContent=` + .dark-theme .search-engine input[type="radio"]:checked { + background-color: #2a2a2a; + border: 2px solid #919191; + } + + .dark-theme .search-engine input[type="radio"] { + background-color: #9d9d9d ; + border: 0px solid #000000; + } + + .dark-theme .colorsContainer { + background-color: #212121; + } + + .dark-theme #themeButton { + background-color: #212121; + } + + .dark-theme #themeIconSvg, .dark-theme #languageSelectorIconSvg { + fill: #cdcdcd !important; + } + + .dark-theme .languageIcon, + .dark-theme .languageSelector { + background-color: #212121; + scrollbar-color: var(--darkerColor-blue) transparent; + } + + .dark-theme .languageSelector::-webkit-scrollbar-thumb, + .dark-theme .languageSelector::-webkit-scrollbar-thumb:hover { + background-color: var(--darkerColor-blue); + } + + .dark-theme .bottom a { + color: #a1a1a1; + } + + .dark-theme .ttcont input { + background-color: #212121 !important; + } + + .dark-theme input:checked + .toggle { + background-color: #aaaaaa; + } + + .dark-theme .tilesCont .tiles { + color: #e8e8e8; + } + + .dark-theme .resetbtn:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .resetbtn:active { + background-color: #4e4e4e; + } + + .dark-theme .savebtn:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .tiles:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .bottom a:hover { + color: var(--darkerColor-blue); + } + + .dark-theme #searchQ { + color: #fff; + } + + .dark-theme .searchbar.active { + outline: 2px solid #696969; + } + + .dark-theme #searchIconDark { + fill: #bbb !important; + } + + .dark-theme .dropdown-item.selected:not(*[data-default]):before { + background-color: #707070; + } + + .dark-theme .tilesContainer .tiles { + background-color: #212121; + } + + .dark-theme #darkFeelsLikeIcon { + fill: #fff !important; + } + + .dark-theme .humidityBar .thinLine { + background-color: #aaaaaa; + } + + .dark-theme .search-engine .darkIconForDarkTheme, .dark-theme .aiDarkIcons { + fill: #bbbbbb !important; + } + + .dark-theme .divider { + background-color: #cdcdcd; + } + + .dark-theme .shorcutDarkColor { + fill: #3c3c3c !important; + } + + .dark-theme #darkLightTint { + fill: #bfbfbf; + } + + .dark-theme .strokecolor { + stroke: #3c3c3c; + } + + .dark-theme .shortcutsContainer .shortcuts .shortcutLogoContainer { + background: radial-gradient(circle, #bfbfbf 66%, transparent 66%); + &:not(:has(svg)){ + background: var(--accentLightTint-blue); + } + } + + .dark-theme .digiclock { + fill: #909090; + } + .dark-theme .backupRestoreBtn { + background-color: var(--darkColor-dark); + } + .dark-theme .colorPickerButton { + background-color: #ffffff; + } + + .dark-theme .todolistitem .todoremovebtn { + color:#616161; + } + + .dark-theme .todolistitem .todoremovebtn:hover { + color:#888888; + } + + .dark-theme .bookmark-view-as-container .bookmark-view-as-button { + color: var(--textColorDark-blue) !important; + } + + .dark-theme #bookmarkSearch{ + background-color: #212121 !important; + } + + .dark-theme .bookmark-search-container::after { + filter: none; + } + + .dark-theme .bookmark-button svg { + fill: var(--textColorDark-blue); + } + + .dark-theme #bookmarkList:is(.grid-view) li a:has(.favicon)::after, + .dark-theme #bookmarkList:is(.grid-view) li a:has(.favicon)::before { + background: var(--darkColor-dark); + } + + .dark-theme .favicon { + filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.3)); + } + + .dark-theme .micIcon { + background-color: var(--whitishColor-dark); + } + + .dark-theme #minute, .dark-theme #minute::after, .dark-theme #second::after { + background-color: #909090; + } + + .dark-theme .dot-icon { + fill: #bfbfbf; + } + + .dark-theme .menuicon { + color: #c2c2c2; + } + + .dark-theme #menuCloseButton, .dark-theme #menuCloseButton:hover { + background-color: var(--darkColor-dark); + } + + .dark-theme #menuCloseButton .icon { + background: radial-gradient(#cdcdcd 66%, transparent 66%); + } + + .dark-theme #closeBtnX { + border: 2px solid #bdbdbd; + border-radius: 100px; + } + + .dark-theme body { + background-color: #000000; + } + + .dark-theme #HangNoAlive { + fill: #c2c2c2 !important; + } + + .dark-theme .tempUnit { + color: #dadada; + } + + .dark-theme #githab, + .dark-theme #sujhaw { + fill: #b1b1b1; + } + + .dark-theme .resultItem.active { + background-color: var(--darkColor-dark); + } + `,document.head.appendChild(bt),document.documentElement.classList.add("dark-theme"),document.querySelectorAll(".accentColor").forEach(a=>{a.style.fill='"#212121'}));const e=["blue","yellow","red","green","cyan","orange","purple","pink","brown","silver","grey","dark"].reduce((i,a)=>(i[a]=`./favicon/${a}.png`,i),{});(i=>{typeof browser<"u"&&browser.browserAction?browser.browserAction.setIcon({path:e[i]}):typeof chrome<"u"&&chrome.action?chrome.action.setIcon({path:e[i]}):typeof safari<"u"&&safari.extension.setToolbarIcon({path:e[i]})})(r);const o=document.querySelector("link[rel='icon']");o&&e[r]&&(o.href=e[r]),Tn()};function Ud(r,e=.6){r=r.replace("#","");let t=parseInt(r.substring(0,2),16),o=parseInt(r.substring(2,4),16),i=parseInt(r.substring(4,6),16);return t=Math.floor(t*(1-e)),o=Math.floor(o*(1-e)),i=Math.floor(i*(1-e)),`#${(1<<24|t<<16|o<<8|i).toString(16).slice(1).toUpperCase()}`}function qd(r,e=.85){r=r.replace("#",""),r.length===3&&(r=r.split("").map(a=>a+a).join(""));let t=parseInt(r.substring(0,2),16),o=parseInt(r.substring(2,4),16),i=parseInt(r.substring(4,6),16);return t=Math.floor(t+(255-t)*e),o=Math.floor(o+(255-o)*e),i=Math.floor(i+(255-i)*e),`#${(1<<24|t<<16|o<<8|i).toString(16).slice(1).toUpperCase()}`}function Hd(r,e=.95){r=r.replace("#",""),r.length===3&&(r=r.split("").map(a=>a+a).join(""));let t=parseInt(r.substring(0,2),16),o=parseInt(r.substring(2,4),16),i=parseInt(r.substring(4,6),16);return t=Math.floor(t+(255-t)*e),o=Math.floor(o+(255-o)*e),i=Math.floor(i+(255-i)*e),`#${(1<<24|t<<16|o<<8|i).toString(16).slice(1).toUpperCase()}`}function Vd(r,e=240){r=r.replace("#","");let t=parseInt(r.substring(0,2),16),o=parseInt(r.substring(2,4),16),i=parseInt(r.substring(4,6),16);return t>e&&o>e&&i>e}const _n=r=>{adjustedColor=r,Vd(r)&&(adjustedColor="#696969");const e=Ud(adjustedColor),t=qd(adjustedColor,.85),o=Hd(adjustedColor,.95);document.documentElement.style.setProperty("--bg-color-blue",t),document.documentElement.style.setProperty("--accentLightTint-blue",o),document.documentElement.style.setProperty("--darkerColor-blue",e),document.documentElement.style.setProperty("--darkColor-blue",adjustedColor),document.documentElement.style.setProperty("--textColorDark-blue",e),document.documentElement.style.setProperty("--whitishColor-blue","#ffffff"),document.getElementById("rangColor").style.borderColor=r,document.getElementById("dfChecked").checked=!1,Tn()};window.addEventListener("load",function(){ga?zi(ga):ya&&_n(ya)});const xa=function(){if(this.checked){const r=this.value;localStorage.setItem(Fo,r),localStorage.removeItem(Li),zi(r)}};yn.forEach(r=>{r.removeEventListener("change",xa),r.addEventListener("change",xa)});const wn=function(r){const e=r.target.value;xn(),localStorage.setItem(Li,e),localStorage.removeItem(Fo),_n(e),yn.forEach(t=>{t.checked=!1})};colorPicker.removeEventListener("input",wn);colorPicker.addEventListener("input",wn);const Kd="ImageDB",ke="backgroundImages",Bi="lastUpdateTime",Ri="imageType";function Kt(){return new Promise((r,e)=>{const t=indexedDB.open(Kd,1);t.onupgradeneeded=function(o){o.target.result.createObjectStore(ke)},t.onsuccess=o=>r(o.target.result),t.onerror=o=>e("Database error: "+o.target.errorCode)})}async function kn(r,e){const t=await Kt();return new Promise((o,i)=>{const a=t.transaction(ke,"readwrite"),n=a.objectStore(ke);n.put(r,"backgroundImage"),n.put(new Date().toISOString(),Bi),n.put(e?"random":"upload",Ri),a.oncomplete=()=>o(),a.onerror=s=>i("Transaction error: "+s.target.errorCode)})}async function Cn(){const r=await Kt();return Promise.all([hr(r,"backgroundImage"),hr(r,Bi),hr(r,Ri)])}function hr(r,e){return new Promise((t,o)=>{const n=r.transaction(ke,"readonly").objectStore(ke).get(e);n.onsuccess=()=>t(n.result),n.onerror=s=>o("Request error: "+s.target.errorCode)})}async function Wd(){const r=await Kt();return new Promise((e,t)=>{const o=r.transaction(ke,"readwrite"),i=o.objectStore(ke);i.delete("backgroundImage"),i.delete(Bi),i.delete(Ri),o.oncomplete=()=>e(),o.onerror=a=>t("Delete error: "+a.target.errorCode)})}document.getElementById("imageUpload").addEventListener("change",function(r){const e=r.target.files[0];if(e){const t=URL.createObjectURL(e),o=new Image;o.onload=function(){document.body.style.setProperty("--bg-image",`url(${t})`),kn(e,!1).then(()=>{tt(!0),URL.revokeObjectURL(t)}).catch(i=>console.error(i))},o.src=t}});const jd="https://picsum.photos/1920/1080",Re=getLanguageStatus("selectedLanguage")||"en";let En;async function In(r=!0){var e;showDialog({headline:"Daily Wallpaper!",icon:"info",textBtn:"No",tonalBtn:"Yes",formText:((e=translations[Re])==null?void 0:e.confirmWallpaper)||translations.en.confirmWallpaper,onTextBtnClick:()=>{},onTonalBtnClick:()=>{En=!0,Gd()},onIgnored:()=>{}})}async function Gd(r=!0){if(!(r&&!En))try{const t=await(await fetch(jd)).blob(),o=URL.createObjectURL(t);document.body.style.setProperty("--bg-image",`url(${o})`),await kn(t,!0),tt(!0),setTimeout(()=>URL.revokeObjectURL(o),1500)}catch(e){showAlert("Something went wrong :(",`Error fetching random image: ${e.message}`)}}function tt(r){const e=document.getElementById("userText"),t=document.getElementById("date"),o=document.querySelectorAll(".shortcuts .shortcut-name");[e,t].forEach(i=>{r?(i.style.backgroundColor="var(--accentLightTint-blue)",i.style.padding="2px 12px",i.style.width="fit-content",i.style.borderRadius="10px",i.style.fontSize="1.32rem"):(i.style.backgroundColor="",i.style.padding="",i.style.width="",i.style.borderRadius="",i.style.fontSize="")}),o.forEach(i=>{i.style.backgroundColor=r?"var(--accentLightTint-blue)":"",i.style.padding=r?"0px 6px":"",i.style.borderRadius=r?"5px":""})}function Xd(){Cn().then(([r,e,t])=>{const o=new Date,i=new Date(e);if(!r||!e||isNaN(i)){tt(!1);return}const a=URL.createObjectURL(r);if(t==="upload"){document.body.style.setProperty("--bg-image",`url(${a})`),tt(!0);return}i.toDateString()!==o.toDateString()?In(!1):(document.body.style.setProperty("--bg-image",`url(${a})`),tt(!0)),setTimeout(()=>URL.revokeObjectURL(a),1500)}).catch(r=>{console.error("Error loading image details:",r),tt(!1)})}document.getElementById("uploadTrigger").addEventListener("click",()=>document.getElementById("imageUpload").click());document.getElementById("clearImage").addEventListener("click",function(){Cn().then(([r])=>{var t,o;if(!r){showAlert("Something went wrong :(",((t=translations[Re])==null?void 0:t.Nobackgroundset)||translations.en.Nobackgroundset);return}const e=((o=translations[Re])==null?void 0:o.clearbackgroundimage)||translations.en.clearbackgroundimage;showDialog({headline:"Clear Background Image?",icon:"warning",textBtn:"Yes",tonalBtn:"No",formText:e,onTextBtnClick:()=>{Wd().then(()=>{document.body.style.removeProperty("--bg-image"),tt(!1)}).catch(i=>console.error(i))}})}).catch(r=>console.error(r))});document.getElementById("randomImageTrigger").addEventListener("click",In);Xd();document.getElementById("backupBtn").addEventListener("click",Yd);document.getElementById("restoreBtn").addEventListener("click",()=>document.getElementById("fileInput").click());document.getElementById("fileInput").addEventListener("change",Zd);async function Yd(){var r;try{const e={localStorage:{},indexedDB:{}};for(let s in localStorage)localStorage.hasOwnProperty(s)&&(e.localStorage[s]=localStorage.getItem(s));e.indexedDB=await Jd();const t=new Date,i=`BMYNT_Settings_${`${String(t.getDate()).padStart(2,"0")}${String(t.getMonth()+1).padStart(2,"0")}${t.getFullYear()}`}.json`,a=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),n=document.createElement("a");n.href=URL.createObjectURL(a),n.download=i,document.body.appendChild(n),n.click(),document.body.removeChild(n)}catch(e){showAlert("Something went wrong :(",((r=translations[Re])==null?void 0:r.failedbackup)||translations.en.failedbackup+e.message)}}async function Zd(r){const e=r.target.files[0];if(!e)return;const t=new FileReader;t.onload=async o=>{var i,a,n;try{const s=JSON.parse(o.target.result);if(!Qd(s)){showAlert("Something went wrong :(",((i=translations[Re])==null?void 0:i.invalidBackup)||translations.en.invalidBackup);return}await tc(s),showDialog({headline:((a=translations[Re])==null?void 0:a.restorecompleted)||translations.en.restorecompleted,icon:"done",textBtn:"I will Refresh later",tonalBtn:"OK",formText:"Your settings have been restored successfully. Page refresh Required to apply changes.",onTextBtnClick:()=>{},onTonalBtnClick:()=>{location.reload()},onIgnored:()=>{}})}catch(s){showAlert("Something went wrong :(",((n=translations[Re])==null?void 0:n.restorefailed)||translations.en.restorefailed+s.message)}},t.readAsText(e)}function Qd(r){return!(typeof r.localStorage!="object"||typeof r.indexedDB!="object")}async function Jd(){const r=await Kt();return new Promise((e,t)=>{const o=r.transaction(ke,"readonly"),i=o.objectStore(ke),a={};i.getAllKeys().onsuccess=n=>{const s=n.target.result;if(!s.length){e({});return}let d=s.length;s.forEach(h=>{i.get(h).onsuccess=v=>{const u=v.target.result;if(u instanceof Blob){const f=new FileReader;f.onload=()=>{a[h]={blob:f.result,isBlob:!0},--d===0&&e(a)},f.readAsDataURL(u)}else a[h]=u,--d===0&&e(a)}})},o.onerror=()=>t(o.error)})}async function ec(r){const e=await Kt();return new Promise((t,o)=>{const i=e.transaction(ke,"readwrite"),a=i.objectStore(ke);a.clear();const n=Object.entries(r);let s=n.length;if(s===0){t();return}n.forEach(([d,h])=>{if(h.isBlob){const v=oc(h.blob);a.put(v,d)}else a.put(h,d);--s===0&&t()}),i.onerror=()=>o(i.error)})}async function tc(r){localStorage.clear(),r.localStorage&&Object.keys(r.localStorage).forEach(e=>{localStorage.setItem(e,r.localStorage[e])}),r.indexedDB&&await ec(r.indexedDB)}function oc(r){const[e,t]=r.split("",""),o=e.match(/:(.*?);/)[1],i=atob(t),a=new Uint8Array(i.length);for(let n=0;n0)try{const a=await ic(o);if(a==="")Lo();else{i.innerHTML="",a.forEach((s,d)=>{const h=document.createElement("div");h.classList.add("resultItem"),h.textContent=s,h.setAttribute("data-index",d),h.onclick=()=>{var v=t[e]+encodeURIComponent(s);window.location.href=v},i.appendChild(h)});const n=document.querySelector(".dropdown-content");n.style.display==="block"&&(n.style.display="none"),Sn()}}catch{}else Lo()}});let Oi=!1;resultBox.addEventListener("mouseenter",()=>{Oi=!0;const r=resultBox.querySelector(".active");r&&r.classList.remove("active")});resultBox.addEventListener("mouseleave",()=>{Oi=!1});document.getElementById("searchQ").addEventListener("keydown",function(r){if(Oi)return;const e=resultBox.querySelector(".active");let t=e?parseInt(e.getAttribute("data-index")):-1;resultBox.children.length>0&&(r.key==="ArrowDown"?(r.preventDefault(),e&&e.classList.remove("active"),t=(t+1)%resultBox.children.length,resultBox.children[t].classList.add("active"),resultBox.children[t].scrollIntoView({block:"nearest"})):r.key==="ArrowUp"?(r.preventDefault(),e&&e.classList.remove("active"),t=(t-1+resultBox.children.length)%resultBox.children.length,resultBox.children[t].classList.add("active"),resultBox.children[t].scrollIntoView({block:"nearest"})):r.key==="Enter"&&e&&(r.preventDefault(),e.click()))});function rc(){const r=navigator.userAgent.toLowerCase();return r.includes("firefox")?"firefox":r.includes("chrome")||r.includes("crios")?"chrome":r.includes("safari")?"safari":r.includes("edge")||r.includes("edg")?"firefox":r.includes("opera")||r.includes("opr")?"opera":"firefox"}async function ic(r){const e=rc();var t=document.querySelector('input[name="search-engine"]:checked').value,o={engine1:`https://www.google.com/complete/search?client=${e}&q=${encodeURIComponent(r)}`,engine2:`https://duckduckgo.com/ac/?q=${encodeURIComponent(r)}&type=list`,engine3:`https://www.google.com/complete/search?client=${e}&q=${encodeURIComponent(r)}`,engine4:`https://search.brave.com/api/suggest?q=${encodeURIComponent(r)}&rich=true&source=web`,engine5:`https://www.google.com/complete/search?client=${e}&ds=yt&q=${encodeURIComponent(r)}`};const i=document.getElementById("useproxyCheckbox");let a=o[t];i.selected&&(a=`${un}/proxy?url=${encodeURIComponent(a)}`);try{const s=await(await fetch(a)).json();return t==="engine4"?s[1].map(h=>h.is_entity?`${h.q} - ${h.name} (${h.category?h.category:"No category"})`:h.q):s[1]}catch(n){return console.error("Error fetching autocomplete suggestions:",n),[]}}document.addEventListener("click",function(r){document.getElementById("searchbar").contains(r.target)||Lo()});const ac=document.getElementById("menuButton"),Ge=document.getElementById("menuBar"),An=document.getElementById("menuCont"),Rt=document.getElementById("optCont"),fe=document.getElementById("overviewPage"),be=document.getElementById("shortcutEditPage");function nc(){Rt.scrollTop=0,fe.style.transform="translateX(0)",fe.style.opacity="1",fe.style.display="block",be.style.transform="translateX(120%)",be.style.opacity="0",be.style.display="none"}const Pi=()=>{requestAnimationFrame(()=>{Rt.style.opacity="0",Rt.style.transform="translateX(100%)"}),setTimeout(()=>{requestAnimationFrame(()=>{Ge.style.opacity="0",An.style.transform="translateX(100%)"})},14),setTimeout(()=>{Ge.style.display="none"},555)},lc=()=>{setTimeout(()=>{Ge.style.display="block",nc()}),setTimeout(()=>{requestAnimationFrame(()=>{Ge.style.opacity="1",An.style.transform="translateX(0px)"})},7),setTimeout(()=>{requestAnimationFrame(()=>{Rt.style.opacity="1",Rt.style.transform="translateX(0px)"})},11)};ac.addEventListener("click",()=>{Ge.style.display==="none"||Ge.style.display===""?lc():Pi()});Ge.addEventListener("click",r=>{r.target===Ge&&Pi()});document.getElementById("menuCloseButton").onclick=()=>{Pi()};document.addEventListener("DOMContentLoaded",function(){const t="New shortcut",o="https://rhythmcorehq.com/",i="Shortcut Name",a="Shortcut URL",n=["Youtube","Gmail","Telegram","WhatsApp","Instagram","Twitter"],s=Object.freeze(new Map([["youtube.com",` - `],["mail.google.com",` - - + + + + + `],["web.telegram.org",` - `],["web.whatsapp.com",` - `],["instagram.com",` - + + + + - `],["twitter.com",` + `],["x.com",` - - `]]),c=` + `]])),d=Object.freeze(` - `,f=b=>[`https://${b}/apple-touch-icon-180x180.png`,`https://${b}/apple-touch-icon-120x120.png`,`https://${b}/apple-touch-icon.png`],v=b=>`https://s2.googleusercontent.com/s2/favicons?domain_url=https://${b}&sz=256`,u=5e3,m=`.shortcutsContainer .shortcuts .shortcutLogoContainer img { + `),h=x=>`https://s2.googleusercontent.com/s2/favicons?domain_url=https://${x}&sz=256`,v=`.shortcutsContainer .shortcuts .shortcutLogoContainer img { height: calc(100% / sqrt(2)) !important; width: calc(100% / sqrt(2)) !important; - }`,g=document.getElementById("shortcuts-section"),S=document.getElementById("aiToolsCont"),k=document.getElementById("shortcutsCheckbox"),L=document.getElementById("proxybypassField"),B=document.getElementById("proxyField"),T=document.getElementById("useproxyCheckbox"),F=document.getElementById("searchsuggestionscheckbox"),M=document.getElementById("shortcutEditField"),D=document.getElementById("adaptiveIconField"),te=document.getElementById("adaptiveIconToggle"),re=document.getElementById("aiToolsCheckbox"),se=document.getElementById("timeformatField"),pe=document.getElementById("12hourcheckbox"),ue=document.getElementById("usertextcheckbox"),Z=document.getElementById("digitalCheckbox"),je=document.getElementById("fahrenheitCheckbox"),Ee=document.getElementById("shortcutEditButton"),Le=document.getElementById("backButton"),Q=document.getElementById("shortcutList"),q=document.getElementById("shortcutsContainer"),xe=document.getElementById("newShortcutButton"),le=document.getElementById("resetButton"),Ge=document.getElementById("iconStyle");document.getElementById("flexMonitor"),document.getElementById("defaultMonitor").clientHeight;const Oe=document.getElementById("unfoldShortcutsBtn");function ve(b,y){localStorage.setItem(b,y.selected?"selected":"unselected")}function _e(b,y){const A=localStorage.getItem(b);y.selected=A==="selected"}function ut(b,y){localStorage.setItem(b,y)}function br(b,y){localStorage.getItem(b)==="flex"?y.style.display="flex":y.style.display="none"}function de(b,y){localStorage.setItem(b,y)}function O(b,y){localStorage.getItem(b)==="active"?y.classList.remove("inactive"):y.classList.add("inactive")}function ie(b,y){localStorage.setItem(b,y)}function Pe(b,y){y.innerHTML=localStorage.getItem(b)}function Ie(){let b=localStorage.getItem("shortcutAmount");const y=s.length;b===null?(b=y,localStorage.setItem("shortcutAmount",b.toString())):b=parseInt(b),b>=50&&(xe.className="inactive");const A=b<=1;for(let $=0;$ka(Oa.target.closest(".shortcutSettingsEntry")));const ce=document.createElement("input");ce.className="shortcutName",ce.placeholder=i,ce.value=b;const Te=document.createElement("input");Te.className="URL",Te.placeholder=a,Te.value=y,Bt([ce,Te]);const Ot=document.createElement("div");Ot.append(ce,Te);const Pt=document.createElement("div");return Pt.className="shortcutSettingsEntry",Pt.append(Ot,N),Pt._index=$,Pt}function it(b,y,A){const $=document.createElement("a");$.href=y;const N=document.createElement("span");N.className="shortcut-name",N.textContent=b;let J=Sa(y);J||(J=Ta(y),Ia(y).then(Ot=>J.src=Ot).catch());const ce=document.createElement("div");ce.className="shortcutLogoContainer",ce.appendChild(J),$.append(ce,N);const Te=document.createElement("div");return Te.className="shortcuts",Te.appendChild($),Te._index=A,Te}function Bt(b){b.forEach(y=>{y.addEventListener("blur",A=>{const $=A.target.closest(".shortcutSettingsEntry");yr($),gr($)}),y.addEventListener("focus",A=>A.target.select())}),b[0].addEventListener("keydown",y=>{y.key==="Enter"&&b[1].focus()}),b[1].addEventListener("keydown",y=>{y.key==="Enter"&&y.target.blur()})}function yr(b){const y=b.querySelector("input.shortcutName").value,A=b.querySelector("input.URL").value;localStorage.setItem("shortcutName"+b._index,y),localStorage.setItem("shortcutURL"+b._index,A)}function gr(b){const y=b.querySelector("input.shortcutName").value;let A=b.querySelector("input.URL").value;const $=A.startsWith("https://")?A:"https://"+A.replace("http://",""),N=b._index,J=it(y,$,N);N50)return;b===1&&Q.querySelectorAll(".delete button.inactive").forEach($=>$.classList.remove("inactive")),y===50&&(xe.className="inactive"),localStorage.setItem("shortcutAmount",y.toString());const A=Xe(t,r,!1,b);Q.appendChild(A),yr(A),gr(A)}function ka(b){const y=(localStorage.getItem("shortcutAmount")||0)-1;if(y<1)return;const A=b._index;xe.classList.remove("inactive"),b.remove(),q.removeChild(q.children[A]);for(let $=A;$$.className="inactive"),localStorage.setItem("shortcutAmount",y.toString())}function Ca(){for(let b=0;b<(localStorage.getItem("shortcutAmount")||0);b++)localStorage.removeItem("shortcutName"+b),localStorage.removeItem("shortcutURL"+b);Q.innerHTML="",q.innerHTML="",localStorage.removeItem("shortcutAmount"),Ie()}function Ea(b){return new Promise((y,A)=>{let $=!1;for(const N of b){const J=new Image;J.referrerPolicy="no-referrer",J.src=N,J.onload=()=>{$||($=!0,y(N))}}setTimeout(()=>{$||A()},u)})}async function Ia(b){const y=new URL(b).hostname;try{return await Ea(f(y))}catch{return Promise.reject()}}function Ta(b){const y=document.createElement("img"),A=new URL(b).hostname;return y.src=v(A),y}function Sa(b){const y=d.get(b.replace("https://",""));return y?document.createRange().createContextualFragment(y).firstElementChild:null}function Aa(){const b=document.getElementById("alert");document.getElementById("alertheadline").innerText="Please Use Your Own Proxy",document.getElementById("alertform").innerText=`It is strongly recommended to host your own proxy for enhanced privacy. + filter: grayscale(1) contrast(1.4); + mix-blend-mode: lighten; + }`,u=document.getElementById("shortcuts-section"),f=document.getElementById("shortcutsCheckbox"),y=document.getElementById("proxybypassField"),b=document.getElementById("proxyField"),g=document.getElementById("useproxyCheckbox"),k=document.getElementById("searchsuggestionscheckbox"),E=document.getElementById("shortcutEditField"),I=document.getElementById("adaptiveIconField"),O=document.getElementById("adaptiveIconToggle"),P=document.getElementById("bookmarksCheckbox"),D=document.getElementById("todoListCheckbox"),j=document.getElementById("bookmarkGridCheckbox"),H=document.getElementById("timeformatField"),re=document.getElementById("12hourcheckbox"),xe=document.getElementById("digitalCheckbox"),C=document.getElementById("fahrenheitCheckbox"),L=document.getElementById("shortcutEditButton"),ue=document.getElementById("backButton"),A=document.getElementById("shortcutList"),V=document.getElementById("shortcutsContainer"),Y=document.getElementById("newShortcutButton"),Ee=document.getElementById("resetButton"),de=document.getElementById("iconStyle");function Z(){let x=localStorage.getItem("shortcutAmount");const w=n.length;x===null?(x=w,localStorage.setItem("shortcutAmount",x.toString())):x=parseInt(x),x>=50&&(Y.className="inactive");const z=x<=1;for(let T=0;TUo(Pn.target.closest(".shortcutSettingsEntry")));const ee=document.createElement("input");ee.className="shortcutName",ee.placeholder=i,ee.value=x;const ve=document.createElement("input");ve.className="URL",ve.placeholder=a,ve.value=w,ce([ee,ve]);const Yo=document.createElement("div");Yo.append(ee,ve);const eo=document.createElement("div");return eo.className="shortcutSettingsEntry",eo.append(Yo,ie),eo._index=T,eo}function ne(x,w,z){const T=document.createElement("a");T.href=w;const ie=document.createElement("span");ie.className="shortcut-name",ie.textContent=x;let pe=Vo(w);pe||(pe=Ho(w));const ee=document.createElement("div");ee.className="shortcutLogoContainer",ee.appendChild(pe),T.append(ee,ie);const ve=document.createElement("div");return ve.className="shortcuts",ve.appendChild(T),ve._index=z,ve}function ce(x){x.forEach(w=>{w.addEventListener("blur",z=>{const T=z.target.closest(".shortcutSettingsEntry");Ie(T),Me(T)}),w.addEventListener("focus",z=>z.target.select())}),x[0].addEventListener("keydown",w=>{w.key==="Enter"&&x[1].focus()}),x[1].addEventListener("keydown",w=>{w.key==="Enter"&&w.target.blur()})}function Ie(x){const w=x.querySelector("input.shortcutName").value,z=x.querySelector("input.URL").value;localStorage.setItem("shortcutName"+x._index,w),localStorage.setItem("shortcutURL"+x._index,z)}function Me(x){const w=x.querySelector("input.shortcutName").value;let z=x.querySelector("input.URL").value.trim();function T(ve){return/^(https:\/\/|http:\/\/)?(([a-zA-Z\d-]+\.)+[a-zA-Z]{2,}|(\d{1,3}\.){3}\d{1,3})(\/[^\s]*)?$/i.test(ve)}T(z)||(showAlertDialog("Invalid URL","Please enter a valid URL with http or https protocol."),z="https://rhythmcorehq.com/404");const ie=z.startsWith("https://")||z.startsWith("http://")?z:"https://"+z,pe=x._index,ee=ne(w,ie,pe);pe50)return;x===1&&A.querySelectorAll(".delete button.inactive").forEach(T=>T.classList.remove("inactive")),w===50&&(Y.className="inactive"),localStorage.setItem("shortcutAmount",w.toString());const z=De(t,o,!1,x);A.appendChild(z),Ie(z),Me(z)}function Uo(x){const w=(localStorage.getItem("shortcutAmount")||0)-1;if(w<1)return;const z=x._index;Y.classList.remove("inactive"),x.remove(),V.removeChild(V.children[z]);for(let T=z;TT.className="inactive"),localStorage.setItem("shortcutAmount",w.toString())}function qo(){for(let x=0;x<(localStorage.getItem("shortcutAmount")||0);x++)localStorage.removeItem("shortcutName"+x),localStorage.removeItem("shortcutURL"+x);A.innerHTML="",V.innerHTML="",localStorage.removeItem("shortcutAmount"),Z()}function Ho(x){const w=document.createElement("img"),z=new URL(x).hostname;return z==="github.com"?w.src="./svgs/shortcuts_icons/github-shortcut.svg":x==="https://rhythmcorehq.com/404"?w.src="./svgs/shortcuts_icons/invalid-url.svg":(w.src=h(z),w.onerror=()=>{w.src="./svgs/shortcuts_icons/offline.svg"}),w}function Vo(x){const w=s.get(x.replace("https://",""));if(!w)return null;const z=document.createElement("template");return z.innerHTML=w.trim(),z.content.firstElementChild}const st=document.querySelectorAll(".searchIcon"),Wt=()=>{st[1].style.display="none",st[0].style.display="block",document.getElementById("search-with-container").style.visibility="visible"},jt=()=>{st[0].style.display="none",st[1].style.display="block",document.getElementById("search-with-container").style.visibility="hidden"},Ko=x=>{x.selected?(jt(),localStorage.setItem("showShortcutSwitch",!0)):(Wt(),localStorage.setItem("showShortcutSwitch",!1))},Wo=document.getElementById("shortcut_switchcheckbox");if(Wo.addEventListener("change",x=>{Ko(x.target)}),localStorage.getItem("showShortcutSwitch")){const x=localStorage.getItem("showShortcutSwitch").toString()==="true";document.getElementById("shortcut_switchcheckbox").selected=x,x?jt():x||Wt()}else localStorage.setItem("showShortcutSwitch",!1);Ko(Wo),f.addEventListener("change",function(){saveCheckboxState("shortcutsCheckboxState",f),f.selected?(u.style.display="flex",saveDisplayStatus("shortcutsDisplayStatus","flex"),E.classList.remove("inactive"),saveActiveStatus("shortcutEditField","active"),I.classList.remove("inactive"),saveActiveStatus("adaptiveIconField","active")):(u.style.display="none",saveDisplayStatus("shortcutsDisplayStatus","none"),E.classList.add("inactive"),saveActiveStatus("shortcutEditField","inactive"),I.classList.add("inactive"),saveActiveStatus("adaptiveIconField","inactive"))}),k.addEventListener("change",function(){saveCheckboxState("searchsuggestionscheckboxState",k),k.selected?(y.classList.remove("inactive"),saveActiveStatus("proxybypassField","active")):(y.classList.add("inactive"),saveActiveStatus("proxybypassField","inactive"),g.selected=!1,saveCheckboxState("useproxyCheckboxState",g),b.classList.add("inactive"),saveActiveStatus("proxyinputField","inactive"))}),localStorage.getItem("greetingEnabled")===null&&localStorage.setItem("greetingEnabled","true");const Fe=document.getElementById("greetingcheckbox"),dt=document.getElementById("greetingField");Fe.selected=localStorage.getItem("greetingEnabled")==="true",Fe.disabled=localStorage.getItem("clocktype")!=="digital",xe.addEventListener("change",function(){saveCheckboxState("digitalCheckboxState",xe),xe.selected?(H.classList.remove("inactive"),dt.classList.remove("inactive"),Fe.disabled=!1,localStorage.setItem("clocktype","digital"),Oe=localStorage.getItem("clocktype"),ci(),di(),saveActiveStatus("timeformatField","active"),saveActiveStatus("greetingField","active")):(H.classList.add("inactive"),dt.classList.add("inactive"),Fe.disabled=!0,localStorage.setItem("clocktype","analog"),Oe=localStorage.getItem("clocktype"),di(),$i(),ci(),saveActiveStatus("timeformatField","inactive"),saveActiveStatus("greetingField","inactive"))}),re.addEventListener("change",function(){saveCheckboxState("hourcheckboxState",re),re.selected?localStorage.setItem("hourformat","true"):localStorage.setItem("hourformat","false")}),Fe.addEventListener("change",()=>{localStorage.setItem("greetingEnabled",Fe.selected),Ti()}),g.addEventListener("change",function(){g.selected?showDialog({headline:"Please Use Your Own Proxy",icon:"warning",textBtn:"Ok",tonalBtn:"Cancel",formText:`It is strongly recommended to host your own proxy for enhanced privacy. -By default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.`,b.show()}k.addEventListener("change",function(){ve("shortcutsCheckboxState",k),k.selected?(g.style.display="flex",ut("shortcutsDisplayStatus","flex"),M.classList.remove("inactive"),de("shortcutEditField","active"),D.classList.remove("inactive"),de("adaptiveIconField","active")):(g.style.display="none",ut("shortcutsDisplayStatus","none"),M.classList.add("inactive"),de("shortcutEditField","inactive"),D.classList.add("inactive"),de("adaptiveIconField","inactive"))}),F.addEventListener("change",function(){ve("searchsuggestionscheckboxState",F),F.selected?(L.classList.remove("inactive"),de("proxybypassField","active")):(L.classList.add("inactive"),de("proxybypassField","inactive"),T.selected=!1,ve("useproxyCheckboxState",T),B.classList.add("inactive"),de("proxyinputField","inactive"))}),Z.addEventListener("change",function(){ve("digitalCheckboxState",Z),Z.selected?(se.classList.remove("inactive"),localStorage.setItem("clocktype","digital"),Se=localStorage.getItem("clocktype"),zo(),Lo(),de("timeformatField","active")):(se.classList.add("inactive"),localStorage.setItem("clocktype","analog"),Se=localStorage.getItem("clocktype"),Lo(),sr(),zo(),de("timeformatField","inactive"))}),pe.addEventListener("change",function(){ve("hourcheckboxState",pe),pe.selected?localStorage.setItem("hourformat","true"):localStorage.setItem("hourformat","false")}),ue.addEventListener("change",function(){ve("usertextcheckboxState",ue);const b=document.getElementById("userTextt");ue.selected?b.style.display="block":b.style.display="none"}),T.addEventListener("change",function(){ve("useproxyCheckboxState",T),T.selected?(Aa(),B.classList.remove("inactive"),de("proxyinputField","active")):(B.classList.add("inactive"),de("proxyinputField","inactive"))}),te.addEventListener("change",function(){if(ve("adaptiveIconToggle",te),te.selected){const b=document.getElementById("alert");document.getElementById("alertheadline").innerText="Warning",document.getElementById("alertform").innerText="This setting is still experimental",b.show(),ie("iconStyle",m),Ge.innerHTML=m}else ie("iconStyle",""),Ge.innerHTML=""}),re.addEventListener("change",function(){ve("aiToolsCheckboxState",re),re.selected?(S.style.display="flex",ut("aiToolsDisplayStatus","flex")):(S.style.display="none",ut("aiToolsDisplayStatus","none"))}),je.addEventListener("change",function(){ve("fahrenheitCheckboxState",je)}),xe.addEventListener("click",()=>wa()),le.addEventListener("click",()=>Ca());function $a(){const b="90";q.style.display="flex",requestAnimationFrame(()=>{q.style.transform=`translateY(-${b}px)`,q.classList.add("showBackground"),Oe.style.transform="rotate(180deg)",Oe.closest(".unfoldContainer").style.transform=`translateY(-${b}px)`})}function La(){requestAnimationFrame(()=>{q.style.display="none",q.style.transform="translateY(0)",q.classList.remove("showBackground"),Oe.style.transform="rotate(0)",Oe.closest(".unfoldContainer").style.transform="translateY(0)"})}Ee.onclick=()=>{setTimeout(()=>{be.style.display="block"}),requestAnimationFrame(()=>{fe.style.transform="translateX(-120%)",fe.style.opacity="0"}),setTimeout(()=>{requestAnimationFrame(()=>{be.style.transform="translateX(0)",be.style.opacity="1"})},50),setTimeout(()=>{fe.style.display="none"},650)};function za(){fe.style.display="block",fe.style.transform="translateX(0)",fe.style.opacity="1",be.style.display="none",requestAnimationFrame(()=>{be.style.transform="translateX(120%)",be.style.opacity="0"})}const Yo=document.querySelectorAll("md-primary-tab"),Ra=document.querySelectorAll('[role="tabpanel"]');function Ba(b){const y=b.currentTarget,A=y.id.replace("-tab","-panel");za(),Ra.forEach(N=>{N.hidden=!0}),Yo.forEach(N=>{N.removeAttribute("active")});const $=document.getElementById(A);$.hidden=!1,y.setAttribute("active","")}Yo.forEach(b=>{b.addEventListener("click",Ba)}),Le.onclick=()=>{setTimeout(()=>{fe.style.display="block"}),requestAnimationFrame(()=>{be.style.transform="translateX(120%)",be.style.opacity="0"}),setTimeout(()=>{requestAnimationFrame(()=>{fe.style.transform="translateX(0)",fe.style.opacity="1"})},50),setTimeout(()=>{be.style.display="none"},650)},Oe.onclick=b=>{q.classList.contains("showBackground")||(b.stopPropagation(),$a())},document.addEventListener("click",function(b){q.classList.contains("showBackground")&&!q.contains(b.target)&&La()}),_e("shortcutsCheckboxState",k),O("shortcutEditField",M),O("adaptiveIconField",D),_e("searchsuggestionscheckboxState",F),_e("useproxyCheckboxState",T),_e("digitalCheckboxState",Z),_e("hourcheckboxState",pe),_e("usertextcheckboxState",ue),O("proxyinputField",B),O("timeformatField",se),O("proxybypassField",L),_e("adaptiveIconToggle",te),Pe("iconStyle",Ge),_e("aiToolsCheckboxState",re),br("shortcutsDisplayStatus",g),br("aiToolsDisplayStatus",S),_e("fahrenheitCheckboxState",je),Ie()}); +By default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.`,onTextBtnClick:()=>{saveCheckboxState("useproxyCheckboxState",g),b.classList.remove("inactive"),saveActiveStatus("proxyinputField","active")},onTonalBtnClick:()=>{g.selected=!1,saveCheckboxState("useproxyCheckboxState",g),b.classList.add("inactive"),saveActiveStatus("proxyinputField","inactive")},onIgnored:()=>{g.selected=!1,saveCheckboxState("useproxyCheckboxState",g),b.classList.add("inactive"),saveActiveStatus("proxyinputField","inactive")}}):(saveCheckboxState("useproxyCheckboxState",g),b.classList.add("inactive"),saveActiveStatus("proxyinputField","inactive"))}),loadCheckboxState("adaptiveIconToggle",O),document.head.appendChild(de),de.textContent=O.selected?v:"",O.addEventListener("change",function(){saveCheckboxState("adaptiveIconToggle",O),O.selected?de.textContent=v:de.textContent=""}),P.addEventListener("change",function(){var w;let x;if(vt&&browser.permissions&&si)x=browser.permissions;else if(Io||Ci||Ei&&chrome.permissions&&si)x=chrome.permissions;else{showAlert("Something went wrong :(",((w=translations[Re])==null?void 0:w.UnsupportedBrowser)||translations.en.UnsupportedBrowser),P.selected=!1,saveCheckboxState("bookmarksCheckboxState",P);return}x!==void 0&&(P.selected?x.contains({permissions:["bookmarks"]},function(z){z?(Ve.style.display="flex",saveDisplayStatus("bookmarksDisplayStatus","flex"),saveCheckboxState("bookmarksCheckboxState",P)):x.request({permissions:["bookmarks"]},function(T){T?(Ae=chrome.bookmarks,Ve.style.display="flex",saveDisplayStatus("bookmarksDisplayStatus","flex"),saveCheckboxState("bookmarksCheckboxState",P)):(P.selected=!1,saveCheckboxState("bookmarksCheckboxState",P))})}):(Ve.style.display="none",saveDisplayStatus("bookmarksDisplayStatus","none"),saveCheckboxState("bookmarksCheckboxState",P)))}),j.addEventListener("change",function(){saveCheckboxState("bookmarkGridCheckboxState",j),j.checked?Se.classList.add("grid-view"):Se.classList.remove("grid-view")}),D.addEventListener("change",function(){saveCheckboxState("todoListCheckboxState",D),D.selected?(We.style.display="flex",saveDisplayStatus("todoListDisplayStatus","flex")):(We.style.display="none",saveDisplayStatus("todoListDisplayStatus","none"))}),C.addEventListener("change",function(){saveCheckboxState("fahrenheitCheckboxState",C)}),Y.addEventListener("click",()=>No()),Ee.addEventListener("click",()=>qo());function Gt(){fe.style.display="block",fe.style.transform="translateX(0)",fe.style.opacity="1",be.style.display="none",requestAnimationFrame(()=>{be.style.transform="translateX(120%)",be.style.opacity="0"})}const ct=document.querySelectorAll("md-primary-tab"),Xt=document.querySelectorAll('[role="tabpanel"]'),jo=document.getElementById("general-panel"),Yt=document.getElementById("general-tab"),ht=document.getElementById("advanced-tab"),Zt=document.getElementById("advanced-panel"),Qt=document.getElementById("home-tab"),Jt=document.getElementById("home-panel"),Le=document.getElementById("appearance-tab"),wt=document.getElementById("appearance-panel");function $n(x){Gt(),Xt.forEach(T=>T.hidden=!0),ct.forEach(T=>T.removeAttribute("active")),Di.forEach(T=>T.hidden=!0);const w=x.currentTarget,z=w.id.replace("-tab","-panel");w.setAttribute("active",""),w.id==="settings-tab"?(jo.hidden=!1,Zt.hidden=!0,Yt.setAttribute("active",""),ht.removeAttribute("active")):w.id==="style-tab"&&(wt.hidden=!0,Jt.hidden=!1,Qt.setAttribute("active",""),Le.removeAttribute("active")),document.getElementById(z).hidden=!1}ct.forEach(x=>{x.addEventListener("click",$n)});const Go=document.querySelectorAll('[role="secondary-tab1"]'),Ln=document.querySelectorAll('[role="tabpanel2"]');function zn(x){Ln.forEach(T=>T.hidden=!0),Go.forEach(T=>T.removeAttribute("active"));const w=x.currentTarget,z=w.id.replace("-tab","-panel");w.setAttribute("active",""),document.getElementById(z).hidden=!1}Go.forEach(x=>{x.addEventListener("click",zn)});function Bn(){const x=localStorage.getItem("activeSecondaryTab1");x&&document.getElementById(x)?document.getElementById(x).click():Go[0].click()}Bn();const Xo=document.querySelectorAll('[role="secondary-tab2"]'),Di=document.querySelectorAll('[role="tabpanel3"]');function Rn(x){Di.forEach(T=>T.hidden=!0),Xo.forEach(T=>T.removeAttribute("active"));const w=x.currentTarget,z=w.id.replace("-tab","-panel");w.setAttribute("active",""),document.getElementById(z).hidden=!1}Xo.forEach(x=>{x.addEventListener("click",Rn)});function On(){const x=localStorage.getItem("activeSecondaryTab2");x&&document.getElementById(x)?document.getElementById(x).click():Xo[0].click()}On(),L.onclick=()=>{setTimeout(()=>{be.style.display="block"}),requestAnimationFrame(()=>{fe.style.transform="translateX(-120%)",fe.style.opacity="0"}),setTimeout(()=>{requestAnimationFrame(()=>{be.style.transform="translateX(0)",be.style.opacity="1"})},50),setTimeout(()=>{fe.style.display="none"},650)},ue.onclick=()=>{setTimeout(()=>{fe.style.display="block"}),requestAnimationFrame(()=>{be.style.transform="translateX(120%)",be.style.opacity="0"}),setTimeout(()=>{requestAnimationFrame(()=>{fe.style.transform="translateX(0)",fe.style.opacity="1"})},50),setTimeout(()=>{be.style.display="none"},650)};const Mi=document.getElementById("resetButton");Mi.addEventListener("click",()=>{Mi.querySelector("svg").classList.toggle("rotateResetButton")}),loadCheckboxState("shortcutsCheckboxState",f),loadActiveStatus("shortcutEditField",E),loadActiveStatus("adaptiveIconField",I),loadCheckboxState("searchsuggestionscheckboxState",k),loadCheckboxState("useproxyCheckboxState",g),loadCheckboxState("digitalCheckboxState",xe),loadCheckboxState("hourcheckboxState",re),loadActiveStatus("proxyinputField",b),loadActiveStatus("timeformatField",H),loadActiveStatus("greetingField",dt),loadActiveStatus("proxybypassField",y),loadCheckboxState("bookmarksCheckboxState",P),loadCheckboxState("googleAppsCheckboxState",googleAppsCheckbox),loadCheckboxState("todoListCheckboxState",D),loadDisplayStatus("shortcutsDisplayStatus",u),loadDisplayStatus("bookmarksDisplayStatus",Ve),loadDisplayStatus("googleAppsDisplayStatus",googleAppsCont),loadDisplayStatus("todoListDisplayStatus",We),loadCheckboxState("fahrenheitCheckboxState",C),loadCheckboxState("bookmarkGridCheckboxState",j),Z()});document.addEventListener("keydown",function(r){r.key==="ArrowRight"&&r.target.tagName!=="INPUT"&&r.target.tagName!=="TEXTAREA"&&r.target.isContentEditable!==!0&&(bookmarksCheckbox.selected?Ve.click():bookmarksCheckbox.click())});document.addEventListener("keydown",function(r){const e=document.getElementById("searchQ"),t=document.querySelector(".searchbar");r.key==="/"&&r.target.tagName!=="INPUT"&&r.target.tagName!=="TEXTAREA"&&r.target.isContentEditable!==!0&&(r.preventDefault(),e.focus(),t.classList.add("active"))});function Tn(){let r=getComputedStyle(document.body).getPropertyValue("background-color");localStorage.setItem("LoadingScreenColor",r)} diff --git a/dist/docs/Get_WeatherAPI_Key.html b/dist/docs/Get_WeatherAPI_Key.html new file mode 100644 index 00000000..b1874884 --- /dev/null +++ b/dist/docs/Get_WeatherAPI_Key.html @@ -0,0 +1,206 @@ + + + + + + + WeatherAPI's API Key + + + + +

    How to Obtain a WeatherAPI's API Key

    + +
    +

    Step 1: Visit the WeatherAPI Website

    +

    Navigate to the WeatherAPI official website: https://www.weatherapi.com/.

    + WeatherAPI Homepage +
    + +
    +

    Step 2: Sign Up for an Account

    +
      +
    1. Click on the Sign Up button located at the top right corner of the homepage.
    2. +
    3. Fill in the required fields: +
        +
      • Email Address: Provide a valid email address.
      • +
      • Password: Create a secure password.
      • +
      +
    4. +
    5. Agree to the terms and conditions.
    6. +
    7. Complete the CAPTCHA verification if prompted.
    8. +
    9. Click Sign Up to create your account.
    10. +
    + Sign Up Form +

    Note: If you already have an account, click Login and proceed with your + credentials.

    +
    + +
    +

    Step 3: Verify Your Email Address

    +

    Check your email inbox for a verification email from WeatherAPI. Open the email and click on the verification + link provided.

    +

    Tip: Check your spam or junk folder if you don’t see the email in your inbox.

    +
    + +
    +

    Step 4: Log In to Your Account

    +
      +
    1. Return to the WeatherAPI website.
    2. +
    3. Click on Login.
    4. +
    5. Enter your email address and password.
    6. +
    7. Click Login to access your account.
    8. +
    + Login Page +
    + +
    +

    Step 5: Copy Your API Key

    +
      +
    1. Once logged in, go to the Dashboard.
    2. +
    3. If the API section isn’t open, locate and open it.
    4. +
    5. You will see your API key displayed with a Copy option. Click it to copy your API key. +
    6. +
    + Dashboard with API Key +
    + +
    +

    Step 6: Paste Your API Key

    +
      +
    1. Paste your API key into the WeatherAPI key field in the extension menu.
    2. +
    3. Press enter or click on Save button to integrate it.
    4. +
    + Paste API Key +
    + +
    +

    FAQs

    + +

    Why is the location inaccurate?

    +

    The extension determines your location using your IP address, which can often be imprecise. If the + detected location differs from your actual location, you can:

    +
      +
    • Manually enter your city name or geographic coordinates.
    • +
    • Use the GPS option to fetch your location for greater accuracy.
    • +
    + +

    Why do I need an API key?

    +

    An API key serves as a unique identifier for managing access and monitoring usage.

    +
      +
    • Our extension currently uses shared API keys that allow up to 10,000,000 calls per month. With + over 300,000 active users, these shared keys can reach their limit quickly. Once the limit is reached, + weather data will no longer be accessible until the limit resets the following month.
    • +
    • Using your own API key ensures that weather data remains accessible.
    • +
    + +

    What are the benefits of using my own API key?

    +

    Using your own unique API key provides several key advantages:

    +
      +
    • Analytics: Access detailed insights into your API usage with comprehensive reports + available through your account dashboard. Monitor trends and make informed decisions based on your data + usage patterns.
    • +
    • Privacy: Your API activity is securely tied only to your account, ensuring that your + data remains private and protected from unauthorized access.
    • +
    • Compliance and Monitoring: Ensure adherence to WeatherAPI's terms of service by + monitoring your usage. Track API consumption effortlessly to avoid unexpected limits or disruptions in + service.
    • +
    +
    + + + + + diff --git a/dist/docs/Loading.png b/dist/docs/Loading.png new file mode 100644 index 00000000..1914264c Binary files /dev/null and b/dist/docs/Loading.png differ diff --git a/dist/docs/PageNotFound.html b/dist/docs/PageNotFound.html new file mode 100644 index 00000000..a215f371 --- /dev/null +++ b/dist/docs/PageNotFound.html @@ -0,0 +1,101 @@ + + + + + + + Page Not Found + + + + +
    +

    This site can't be reached

    + +

    + Paths cross empty void
    + Seeking what once existed
    + Silence answers all. +

    + +

    Check if there is a typo in the URL.

    + +

    + Note: Only http:// or https:// protocols' shortcuts are supported for now.
    + The following are NOT supported: ftp://, data:, chrome://, and more. +

    +
    + + + \ No newline at end of file diff --git a/dist/docs/feedback.html b/dist/docs/feedback.html new file mode 100644 index 00000000..66727f04 --- /dev/null +++ b/dist/docs/feedback.html @@ -0,0 +1,110 @@ + + + + + + + Feedback - MaterialYouNewTab + + + + + +
    +

    We Value Your Feedback

    + +
    + + + + + +
    +
    + + + diff --git a/dist/favicon/blue.png b/dist/favicon/blue.png new file mode 100644 index 00000000..844e8660 Binary files /dev/null and b/dist/favicon/blue.png differ diff --git a/dist/favicon/brown.png b/dist/favicon/brown.png new file mode 100644 index 00000000..58e97052 Binary files /dev/null and b/dist/favicon/brown.png differ diff --git a/dist/favicon/cyan.png b/dist/favicon/cyan.png new file mode 100644 index 00000000..ea1f1fd1 Binary files /dev/null and b/dist/favicon/cyan.png differ diff --git a/dist/favicon/dark.png b/dist/favicon/dark.png new file mode 100644 index 00000000..7a2b2416 Binary files /dev/null and b/dist/favicon/dark.png differ diff --git a/dist/favicon/green.png b/dist/favicon/green.png new file mode 100644 index 00000000..4a64d294 Binary files /dev/null and b/dist/favicon/green.png differ diff --git a/dist/favicon/grey.png b/dist/favicon/grey.png new file mode 100644 index 00000000..46441b78 Binary files /dev/null and b/dist/favicon/grey.png differ diff --git a/src/icon.ico b/dist/favicon/icon.ico similarity index 100% rename from src/icon.ico rename to dist/favicon/icon.ico diff --git a/dist/favicon/icon.png b/dist/favicon/icon.png new file mode 100644 index 00000000..d48cd015 Binary files /dev/null and b/dist/favicon/icon.png differ diff --git a/dist/favicon/orange.png b/dist/favicon/orange.png new file mode 100644 index 00000000..b0e7d9ca Binary files /dev/null and b/dist/favicon/orange.png differ diff --git a/dist/favicon/pink.png b/dist/favicon/pink.png new file mode 100644 index 00000000..259854d6 Binary files /dev/null and b/dist/favicon/pink.png differ diff --git a/dist/favicon/purple.png b/dist/favicon/purple.png new file mode 100644 index 00000000..7fa071c7 Binary files /dev/null and b/dist/favicon/purple.png differ diff --git a/dist/favicon/red.png b/dist/favicon/red.png new file mode 100644 index 00000000..d23c2063 Binary files /dev/null and b/dist/favicon/red.png differ diff --git a/dist/favicon/silver.png b/dist/favicon/silver.png new file mode 100644 index 00000000..011c5333 Binary files /dev/null and b/dist/favicon/silver.png differ diff --git a/dist/favicon/yellow.png b/dist/favicon/yellow.png new file mode 100644 index 00000000..67908aa6 Binary files /dev/null and b/dist/favicon/yellow.png differ diff --git a/dist/icon128.png b/dist/icon128.png new file mode 100644 index 00000000..844e8660 Binary files /dev/null and b/dist/icon128.png differ diff --git a/dist/icon16.png b/dist/icon16.png new file mode 100644 index 00000000..fc2521a8 Binary files /dev/null and b/dist/icon16.png differ diff --git a/dist/icon.png b/dist/icon48.png similarity index 100% rename from dist/icon.png rename to dist/icon48.png diff --git a/dist/index.html b/dist/index.html index 2f303338..030f9eae 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1,654 +1,1527 @@ - - - - - - - New Tab - - - + + + + + + + + New Tab + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - -
    -
    - -
    -
    - OK -
    -
    -
    -
    - - -
    - - - - -
    -
    -
    -
    -
    -
    -
    - - - - - - Thu 9 - - - 6:59 - - -
    - - - -
    - - -
    -
    -
    - -
    - -
    -
    - -
    Hello! How are you today?
    -
    -
    -
    -
    -
    Humidity
    -
    -
    -
    -
    -
    - - device_thermostat - -
    - Seems -
    -
    -
    - my_location - -
    - Earth -
    -
    - -
    -
    - - -
    - - - - -
    -
    - wq -
    -
    -
    - - - - -
    - - - - -
    - -
    - Search With -
    -
    -
    - - Google - -
    -
    - - Duck - -
    -
    - - Bing - -
    -
    - - Brave - -
    -
    - - YouTube - -
    - -
    -
    - -
    - -
    - - -
    -
    - -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - edit - - - - + + + + +
    + info +
    +
    + + +
    +
    + +
    +
    + +
    +
    + OK +
    +
    + + + + + +
    + + + + + + + + + + + + ToDo List +
    + + + + +
    + + + +
    + +
    + + + + + Bookmarks +
    +
    +
    + +
    + + + + + + + + + + +
    + +
    +

    Bookmarks

    +
    +
    + + +
    +
    +

    View as

    +
    + + + +
    +
    +
      +
      +
      + + + + +
      + + + + + Google Apps +
      + + + + + +
      +
      + + +
      + + + + +
      +
      +
      +
      +
      +
      +
      + + + + + + Thu 9 + + + + 6 + : + 28 + + + + AM + +
      + + +
      + + +
      +
      +
      + + +
      + +
      +
      + +
      Hello! How are you today?
      +
      +
      +
      +
      +
      Humidity
      +
      +
      + +
      +
      +
      + + device_thermostat + +
      + Seems +
      +
      +
      + my_location + +
      + Earth +
      +
      + +
      +
      + + +
      + + + + +
      +
      ?
      + weatherIcon +
      +
      +
      + + + + + + + + + + +
      + +
      + + + +
      +
      +
      +
      +
      +
      +
      + + + + + + + + +
      + + + edit + + + + \ No newline at end of file diff --git a/dist/locales/README.md b/dist/locales/README.md new file mode 100644 index 00000000..174b037e --- /dev/null +++ b/dist/locales/README.md @@ -0,0 +1,24 @@ +## Adding a New Translation + +1. **Create a new translation file** + - Name the file using the appropriate language code (e.g., `de.js` for German or `ar.js` for Arabic). + - Place this file in the `locales` directory. + +2. **Add the locale to `index.html`** + - Open `index.html` and locate the `` section. + - Add your new locale script tag in the correct order, as follows: + ```html + + ``` + +3. **Test the translation** + - Verify that your translations are displayed correctly when the respective locale is selected. + +4. **Keep translations consistent** + - Follow the structure of existing translation files to ensure consistency across all locales. + +5. **Subscribe to Translation Updates for Contributors** (optional) + - Join the #195 channel or mailing list to receive notifications about new lines being added to translations. + +6. **Update the Currently Supported Languages section in the `README.md`** + - Add the new language to the list of supported languages in the README, following the existing format. diff --git a/dist/locales/az.js b/dist/locales/az.js new file mode 100644 index 00000000..bb8dc08a --- /dev/null +++ b/dist/locales/az.js @@ -0,0 +1,138 @@ +// Azerbaijani -> az +const az = { + // Menu Items + "github": "GitHub", + "feedback": "Əlaqə", + "resetsettings": "Parametrləri sıfırla", + "menuCloseText": "Bağla", + + // Shortcuts + "shortcutsText": "Qısayollar", + "enableShortcutsText": "Yadda saxlanmış qısa yolları göstər", + "editShortcutsText": "Qısayolları redaktə et", + "shortcutsInfoText": "Göstəriləcək qısayolları seçin", + "editShortcutsList": "Saxlanmış Qısayollar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptiv ikona formaları", + "adaptiveIconInfoText": "Qısayol nişanları dairəvi görünəcək", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI Alətləri", + "enable_ai_tools": "AI Alətləri qısayollarını göstər", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Google Tətbiqləri üçün qısayolları göstər", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Rəqəmsal saat", + "digitalclockinfo": "Rəqəmsal saata keç", + "timeformattittle": "12 Saat Format", + "timeformatinfo": "12 saatlıq vaxt formatından istifadə edin", + "greetingtittle": "Xoş gəlmisiniz", + "greetinginfo": "Fərdi mətnin altında salamlama mesajını göstər", + + // Misc + "userTextTitle": "Fərdiləşdirilə bilən mətn", + "userTextInfo": "Saat altında fərdi mətni göstər", + "fahrenheitCelsiusCheckbox": "Fahrenheit rejiminə keç", + "fahrenheitCelsiusText": "Yeniləmələri görmək üçün səhifəni yeniləyin", + "micIconTitle": "Mikrofon nişanını gizlət", + "micIconInfo": "Səslə yazmaq işləmirsə", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Təklifləri axtarın", + "search_suggestions_text": "Axtarış təkliflərini aktivləşdirin", + + // Proxy + "useproxytitletext": "Proksidən keçmək", + "useproxyText": "Əgər axtarış təklifləri işləmirsə", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "Öz CORS Bypass Proxy əlavə et", + "HostproxyButton": "Öz Proxyinizi Host edin", + "saveproxy": "Saxla", + + // Location + "UserLocText": "Məkanınızı daxil edin", + "UserLocSubtext": "Hava yeri düzgün deyilsə", + "userLoc": "Məkanınız (Şəhər/Enlem, Boylam)", + "saveLoc": "Saxla", + + // Weather + "WeatherApiText": "Öz WeatherAPI açarınızı daxil edin", + "WeatherApiSubtext": "Hava funksiyası işləmirsə", + "userAPI": "Sizin WeatherAPI açarınız", + "LearnMoreButton": "Ətraflı məlumat", + "saveAPI": "Saxla", + + // Body Items + // Calendar + "days": ['Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə'], + "months": ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Salam! Bu gün necəsən?", + "humidityLevel": "Rütubət", + "feelsLike": "FeelsLike", + "location": "Dünya", + "enterBtn": "Axtar", + "searchPlaceholder": "Axtarışınız...", + "listenPlaceholder": "Dinlənir...", + "searchWithHint": "Bununla axtar", + "userText": "Bura klikləməklə redaktə edin", + + // Greeting + greeting: { + "morning": "Sabahınız xeyir!", + "afternoon": "Hər vaxtın xeyir!", + "evening": "Axşamın xeyir!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Alətləri", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Divar kağızı yükləyin", + "backupText": "Yedək", + "restoreText": "Bərpa et", + "rangColor": "Rəng seçin", + + // Dialog boxes (alerts) + "confirmWallpaper": "Gün üçün divar kağızı olaraq yeni bir şəkil təyin etmək istərdinizmi?", + "confirmRestore": "Parametrlərinizi sıfırlamaq istədiyinizə əminsiniz? Bu əməliyyatı geri qaytarmaq mümkün deyil.", + "Nobackgroundset": "Hazırda heç bir fon şəkli qurulmayıb.", + "clearbackgroundimage": "Arxa fon şəklini təmizləmək istədiyinizə əminsinizmi?", + "ProxyDisclaimer": "Bütün proksi funksiyaları defolt olaraq deaktivdir.\n\nAxtarış təkliflərini və CORS proksisini yan keçmək imkanını aktiv etsəniz, təkmil məxfilik üçün öz proksinizi yerləşdirmək tövsiyə olunur.\n\nDefolt olaraq, proksi quraşdırılacaq. https://mynt-proxy.rhythmcorehq.com ünvanına, yəni bütün məlumatlarınız bu xidmətdən keçəcək və bu, məxfiliklə bağlı narahatlıq yarada bilər.", + "failedbackup": "Yedəkləmə uğursuz oldu: ", + "restorecompleted": "Bərpa uğurla tamamlandı!", + "restorefailed": "Bərpa uğursuz oldu: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/bn.js b/dist/locales/bn.js new file mode 100644 index 00000000..3f0a8720 --- /dev/null +++ b/dist/locales/bn.js @@ -0,0 +1,141 @@ +// Bengali +const bn = { + // Menu Items + "github": "গিটহাব", + "feedback": "মতামত", + "resetsettings": "সেটিংস পুনরায় সেট করুন", + "menuCloseText": "বন্ধ করুন", + + // Shortcuts + "shortcutsText": "শর্টকাট", + "enableShortcutsText": "সংরক্ষিত শর্টকাটগুলি প্রদর্শন করুন", + "editShortcutsText": "শর্টকাট সম্পাদনা করুন", + "shortcutsInfoText": "যে শর্টকাটগুলো দেখাতে চান তা নির্বাচন করুন", + "editShortcutsList": "সংরক্ষিত শর্টকাট", + "editShortcutsListInfo": "\"+\" আইকনে ক্লিক করে নতুন শর্টকাট যোগ করুন অথবা বিদ্যমান শর্টকাটের নাম বা URL এ ক্লিক করে সম্পাদনা করুন।", + "adaptiveIconText": "অ্যাডাপ্টিভ আইকন", + "adaptiveIconInfoText": "শর্টকাট আইকন থিম রঙের সাথে মিলে ছোট আকারে প্রদর্শিত হবে", + "bookmarksText": "বুকমার্কস", + "bookmarksInfo": "বুকমার্কস সাইডবার দেখুন", + "ai_tools_button": "এআই সরঞ্জাম", + "enable_ai_tools": "এআই সরঞ্জামের শর্টকাট প্রদর্শন করুন", + "googleAppsMenuText": "গুগল অ্যাপস", + "googleAppsMenuInfo": "গুগল অ্যাপসের শর্টকাট প্রদর্শন করুন", + "googleAppsHover": "গুগল অ্যাপস", + + // To-do List + "todoListText": "টু ডু লিস্ট", + "todoListInfo": "দৈনিক কাজের তালিকা দেখুন", + "todoListHover": "টু ডু লিস্ট", + "todoPlaceholder": "টাস্ক যোগ করুন...", + + // Digital Clock + "digitalclocktittle": "ডিজিটাল ঘড়ি", + "digitalclockinfo": "ডিজিটাল ঘড়িতে পরিবর্তন করুন", + "timeformattittle": "১২-ঘণ্টা ফরম্যাট", + "timeformatinfo": "১২-ঘণ্টার সময় ফরম্যাট ব্যবহার করুন", + "greetingtittle": "অভিবাদন", + "greetinginfo": "কাস্টম টেক্সটের নিচে অভিবাদন দেখান", + + // Misc + "userTextTitle": "কাস্টমাইজেবল টেক্সট", + "userTextInfo": "ঘড়ির নিচে কাস্টম টেক্সট দেখান", + "fahrenheitCelsiusCheckbox": "ফারেনহাইটে পরিবর্তন করুন", + "fahrenheitCelsiusText": "পরিবর্তন প্রয়োগ করতে পেজ রিফ্রেশ করুন", + "micIconTitle": "মাইক্রোফোন আইকন লুকান", + "micIconInfo": "যদি ভয়েস টাইপিং কাজ না করে", + "hideSearchWith": "সার্চ ইঞ্জিন লুকান", + "hideSearchWithInfo": "সার্চ ইঞ্জিনের আইকনে ক্লিক করে সার্চ ইঞ্জিন পরিবর্তন করুন", + "search_suggestions_button": "সার্চ সাজেশন", + "search_suggestions_text": "সার্চ সাজেশন সক্রিয় করুন", + + // Proxy + "useproxytitletext": "প্রক্সি বাইপাস", + "useproxyText": "যদি সার্চ সাজেশন কাজ না করে", + "ProxyText": "CORS বাইপাস প্রক্সি", + "ProxySubtext": "নিজস্ব CORS বাইপাস প্রক্সি যোগ করুন", + "HostproxyButton": "নিজস্ব প্রক্সি হোস্ট করুন", + "saveproxy": "সংরক্ষণ করুন", + + // Location + "UserLocText": "আপনার অবস্থান লিখুন", + "UserLocSubtext": "যদি আবহাওয়া অবস্থান সঠিক না হয়", + "userLoc": "আপনার শহর বা স্থানাঙ্ক (অক্ষাংশ, দ্রাঘিমাংশ)", + "useGPS": "জিপিএস ব্যবহার করুন", + "saveLoc": "সংরক্ষণ করুন", + + // Weather + "WeatherApiText": "আপনার WeatherAPI কী লিখুন", + "WeatherApiSubtext": "যদি আবহাওয়ার ফাংশন কাজ না করে", + "userAPI": "আপনার WeatherAPI কী", + "LearnMoreButton": "আরও জানুন", + "saveAPI": "সংরক্ষণ করুন", + + // Body Items + // Calendar + "days": ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'], // Truncated for display + //"days": ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'], // Full + "months": ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'], + // "months": ['জানু', 'ফেব্রু', 'মার্চ', 'এপ্রি', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ্টে', 'অক্টো', 'নভে', 'ডিসে'], // Truncated + + // Bookmarks + "bookmarksHeading": "বুকমার্কস", + "bookmarkViewAs": "এইভাবে দেখুন", + "bookmarkViewGrid": "গ্রিড", + "bookmarkViewList": "লিস্ট", + "bookmarkSearch": "বুকমার্ক সার্চ করুন", + + // New Tab Item + "conditionText": "হ্যালো! আজ আপনি কেমন আছেন?", + "humidityLevel": "আর্দ্রতা", + "feelsLike": "অনুভূতি হয়", + "location": "পৃথিবী", + "enterBtn": "সার্চ করুন", + "searchPlaceholder": "এখানে টাইপ করুন...", + "listenPlaceholder": "শোনা হচ্ছে...", + "searchWithHint": "সার্চের মাধ্যম", + "userText": "এখানে আপনার টেক্সট লিখুন", + + // Greeting + greeting: { + "morning": "শুভ সকাল!", + "afternoon": "শুভ বিকেল!", + "evening": "শুভ সন্ধ্যা!" + }, + + // Search Engines + "googleEngine": "গুগল", + "duckEngine": "ডাকডাকগো", + "bingEngine": "বিং", + "braveEngine": "ব্রেভ", + "youtubeEngine": "ইউটিউব", + + // AI Tools + "ai_tools": "এআই টুলস", + "chatGPT": "চ্যাটজিপিটি", + "gemini": "জেমিনি", + "copilot": "কোপাইলট", + "claude": "ক্লড", + "perplexity": "পারপ্লেক্সিটি", + "firefly": "অ্যাডোবি ফায়ারফ্লাই", + "metaAI": "মেটা এআই", + + // Wallpaper and alerts + "uploadWallpaperText": "ওয়ালপেপার দিন", + "backupText": "ব্যাকআপ করুন", + "restoreText": "পুনরুদ্ধার করুন", + "rangColor": "রঙ নির্বাচন করুন", + + // Dialog boxes (alerts) + "confirmWallpaper": "আপনি কি আজকের জন্য একটি নতুন ছবি ওয়ালপেপার হিসেবে সেট করতে চান?", + "confirmRestore": "আপনি কি নিশ্চিত যে আপনি আপনার সেটিংস রিসেট করতে চান? এটি পূর্বাবস্থায় ফেরানো যাবে না।", + "Nobackgroundset": "বর্তমানে কোন ব্যাকগ্রাউন্ড ইমেজ সেট করা হয়নি।", + "clearbackgroundimage": "আপনি কি ব্যাকগ্রাউন্ড ইমেজ মুছে ফেলতে চান?", + "ProxyDisclaimer": "সমস্ত প্রক্সি ফিচার ডিফল্টভাবে বন্ধ থাকে।\n\nআপনি যদি সার্চ সাজেশন এবং CORS বাইপাস প্রক্সি সক্রিয় করেন, তাহলে উন্নত গোপনীয়তার জন্য আপনার নিজস্ব প্রক্সি হোস্ট করার পরামর্শ দেওয়া হয়।\n\nডিফল্টভাবে প্রক্সি https://mynt-proxy.rhythmcorehq.com এ সেট করা হবে, যার মানে আপনার সমস্ত ডেটা এই পরিষেবার মাধ্যমে যাবে, যা গোপনীয়তার ঝুঁকি তৈরি করতে পারে।", + "failedbackup": "ব্যাকআপ ব্যর্থ: ", + "restorecompleted": "পুনরুদ্ধার সফলভাবে সম্পন্ন হয়েছে!", + "restorefailed": "পুনরুদ্ধার ব্যর্থ: ", + "invalidBackup": "অবৈধ ব্যাকআপ ফাইল", + "deleteBookmark": "আপনি কি নিশ্চিত যে আপনি বুকমার্কটি মুছে ফেলতে চান?", + "UnsupportedBrowser": "আপনার ব্রাউজারে বুকমার্ক সমর্থিত নয়", +}; diff --git a/dist/locales/cs.js b/dist/locales/cs.js new file mode 100644 index 00000000..394f022e --- /dev/null +++ b/dist/locales/cs.js @@ -0,0 +1,138 @@ +// Czech -> cs +const cs = { + // Menu Items + "github": "GitHub", + "feedback": "Zpětná vazba", + "resetsettings": "Resetovat nastavení", + "menuCloseText": "Zavřít", + + // Shortcuts + "shortcutsText": "Zkratky", + "enableShortcutsText": "Zobrazí zkratky", + "editShortcutsText": "Upravit zkratky", + "shortcutsInfoText": "Vyberte, které zkratky se mají zobrazit", + "editShortcutsList": "Uložené zkratky", + "editShortcutsListInfo": "Nové zkratky můžete přidat klepnutím na ikonku „+“. Upravit existující můžete klepnutím na název nebo URL adresu zkratky.", + "adaptiveIconText": "Adaptivní tvary ikon", + "adaptiveIconInfoText": "Ikony zkratek se zmenší", + "bookmarksText": "Záložky", + "bookmarksInfo": "Zobrazí boční panel se záložkami", + "ai_tools_button": "AI nástroje", + "enable_ai_tools": "Zobrazí zkratky AI nástrojů", + "googleAppsMenuText": "Google aplikace", + "googleAppsMenuInfo": "Zobrazí zkratky Google aplikací", + "googleAppsHover": "Google aplikace", + + // To-do List + "todoListText": "Seznam úkolů", + "todoListInfo": "Zobrazí denní seznam úkolů", + "todoListHover": "Seznam úkolů", + "todoPlaceholder": "Přidat úkol...", + + // Digital Clock + "digitalclocktittle": "Digitální hodiny", + "digitalclockinfo": "Přepne hodiny na digitální", + "timeformattittle": "12hodinový formát", + "timeformatinfo": "Použije se 12hodinový formát času", + "greetingtittle": "Pozdrav", + "greetinginfo": "Zobrazí pozdrav pod upravitelným textem", + + // Misc + "userTextTitle": "Upravitelný text", + "userTextInfo": "Zobrazí upravitelný text pod hodinami", + "fahrenheitCelsiusCheckbox": "Přepnout na stupně Fahrenheita", + "fahrenheitCelsiusText": "Změny se projeví po obnovení stránky", + "micIconTitle": "Skrýt ikonu mikrofonu", + "micIconInfo": "Pokud nefunguje hlasové vyhledávání", + "hideSearchWith": "Skrýt vyhledávače", + "hideSearchWithInfo": "Mezi vyhledávači přepnete klepnutím na jejich ikonky", + "search_suggestions_button": "Návrhy ve vyhledávání", + "search_suggestions_text": "Zapne návrhy vyhledávání", + + // Proxy + "useproxytitletext": "Obcházení proxy", + "useproxyText": "Pokud nefungují návrhy ve vyhledávání", + "ProxyText": "Proxy pro obcházení CORS", + "ProxySubtext": "Nastavte si vlastní proxy pro obcházení CORS", + "HostproxyButton": "Provozování vlastní proxy", + "saveproxy": "Uložit", + + // Location + "UserLocText": "Zadejte svou polohu", + "UserLocSubtext": "Pokud není správná poloha počasí", + "userLoc": "Město nebo souřadnice (šířka, délka)", + "saveLoc": "Uložit", + + // Weather + "WeatherApiText": "Zadejte svůj klíč k WeatherAPI", + "WeatherApiSubtext": "Pokud nefunguje funkce počasí", + "userAPI": "Váš klíč k WeatherAPI", + "LearnMoreButton": "Zjistit více", + "saveAPI": "Uložit", + + // Body Items + // Calendar + "days": ["neděle", "pondělí", "úterý", "středa", "čtvrtek", "pátek", "sobota"], + "months": ["ledna", "února", "března", "dubna", "května", "června", "července", "srpna", "září", "října", "listopadu", "prosince"], + + // Bookmarks + "bookmarksHeading": "Záložky", + "bookmarkViewAs" : "Způsob zobrazení", + "bookmarkViewGrid" : "Mřížka", + "bookmarkViewList" : "Seznam", + "bookmarkSearch": "Vyhledejte záložku", + + // New Tab Item + "conditionText": "Dobrý den! Jak se máte?", + "humidityLevel": "Vlhkost", + "feelsLike": "Pocitová teplota", + "location": "Země", + "enterBtn": "Vyhledat", + "searchPlaceholder": "Zadejte hledaný výraz...", + "listenPlaceholder": "Poslouchám...", + "searchWithHint": "Vyhledávat prostřednictvím", + "userText": "Upravíte po kliknutí", + + // Greeting + "greeting": { + "morning": "Dobré ráno!", + "afternoon": "Dobré odpoledne!", + "evening": "Dobrý večer!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI nástroje", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Nahrát tapetu", + "backupText": "Zálohovat", + "restoreText": "Obnovit", + "rangColor": "Vybrat barvu", + + // Dialog boxes (alerts) + "confirmWallpaper": "Přejete si nastavit nový obrázek jako denní tapetu?", + "confirmRestore": "Opravdu si přejete resetovat nastavení? Tuto akci nelze zvrátit.", + "Nobackgroundset": "Aktuálně nemáte nastavený žádný obrázek na pozadí.", + "clearbackgroundimage": "Opravdu si přejete smazat obrázek na pozadí?", + "ProxyDisclaimer": "Všechny funkce proxy jsou ve výchozím nastavení vypnuté.\n\nPokud zapnete našeptávání ve vyhledávání s proxy pro obcházení CORS, pro lepší zabezpečení vám důrazně doporučujeme hostovat si vlastní proxy.\n\nVe výchozím nastavení je proxy nastavena na https://mynt-proxy.rhythmcorehq.com, což znamená, že všechna vaše data procházejí skrz tuto službu. To může vyvolat obavy o soukromí.", + "failedbackup": "Zálohování selhalo: ", + "restorecompleted": "Obnova ze zálohy byla úspěšně dokončena!", + "restorefailed": "Obnova ze zálohy selhala: ", + "invalidBackup": "Neplatný soubor se zálohou", + "deleteBookmark": "Opravdu si přejete smazat tuto záložku?", + "UnsupportedBrowser": "Ve vašem prohlížeči nejsou záložky podporované", +}; diff --git a/dist/locales/en.js b/dist/locales/en.js new file mode 100644 index 00000000..74cacf16 --- /dev/null +++ b/dist/locales/en.js @@ -0,0 +1,139 @@ +// English (Default) +const en = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Reset Settings", + "menuCloseText": "Close", + + // Shortcuts + "shortcutsText": "Shortcuts", + "enableShortcutsText": "Show saved shortcuts", + "editShortcutsText": "Edit Shortcuts", + "shortcutsInfoText": "Choose which shortcuts get shown", + "editShortcutsList": "Saved Shortcuts", + "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptive Icons", + "adaptiveIconInfoText": "Shortcut icons will match the theme color and appear smaller", + "bookmarksText": "Bookmarks", + "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI-Tools", + "enable_ai_tools": "Show shortcuts for AI tools", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Show shortcuts for Google Apps", + "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + "todoListText": "To Do List", + "todoListInfo": "Show a daily To Do list", + "todoListHover": "ToDo List", // Keep this short + "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Digital Clock", + "digitalclockinfo": "Switch to the digital clock", + "timeformattittle": "12-Hour Format", + "timeformatinfo": "Use 12-hour time format", + "greetingtittle": "Greeting", + "greetinginfo": "Show greeting below custom text", + + // Misc + "userTextTitle": "Customizable Text", + "userTextInfo": "Show custom text below the clock", + "fahrenheitCelsiusCheckbox": "Switch to Fahrenheit", + "fahrenheitCelsiusText": "Refresh the page to apply changes", + "micIconTitle": "Hide Microphone Icon", + "micIconInfo": "If voice typing is not working", + "hideSearchWith": "Hide Search Engines", + "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Search Suggestions", + "search_suggestions_text": "Enable search suggestions", + + // Proxy + "useproxytitletext": "Proxy Bypass", + "useproxyText": "If search suggestions aren't working", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "Add your own CORS bypass proxy", + "HostproxyButton": "Host Your Own Proxy", + "saveproxy": "Save", + + // Location + "UserLocText": "Enter your Location", + "UserLocSubtext": "If the weather location isn't correct", + "userLoc": "Your City or Coordinates (Latitude, Longitude)", + "useGPS": "Use GPS", + "saveLoc": "Save", + + // Weather + "WeatherApiText": "Enter your WeatherAPI key", // For 'WeatherAPI' string, only transliterate + "WeatherApiSubtext": "If the weather functionality isn't working", + "userAPI": "Your weatherAPI key", + "LearnMoreButton": "Learn more", + "saveAPI": "Save", + + // Body Items + // Calendar + "days": ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], + "months": ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + + // Bookmarks + "bookmarksHeading": "Bookmarks", + "bookmarkViewAs": "View as", + "bookmarkViewGrid": "Grid", // Keep this shorter + "bookmarkViewList": "List", // Keep this shorter + "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Hello! How are you today?", + "humidityLevel": "Humidity", + "feelsLike": "Feels", + "location": "Earth", + "enterBtn": "Search", + "searchPlaceholder": "Type here...", + "listenPlaceholder": "Listening...", + "searchWithHint": "Search With", + "userText": "Click here to edit", + + // Greeting + greeting: { + "morning": "Good Morning!", + "afternoon": "Good Afternoon!", + "evening": "Good Evening!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", // DuckDuckGo + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Tools", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Upload Wallpaper", // Keep this short + "backupText": "Backup", + "restoreText": "Restore", + "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + "Nobackgroundset": "No background image is currently set.", + "clearbackgroundimage": "Are you sure you want to clear the background image?", + "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + "failedbackup": "Backup failed: ", + "restorecompleted": "Restore completed successfully!", + "restorefailed": "Restore failed: ", + "invalidBackup": "Invalid backup file", + "deleteBookmark": "Are you sure you want to delete the bookmark?", + "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/es.js b/dist/locales/es.js new file mode 100644 index 00000000..597780f8 --- /dev/null +++ b/dist/locales/es.js @@ -0,0 +1,138 @@ +// Spanish -> es +const es = { + // Menu Items + "github": "GitHub", + "feedback": "Comentarios", + "resetsettings": "Restablecer configuraciones", + "menuCloseText": "Cerrar", + + // Shortcuts + "shortcutsText": "Accesos directos", + "enableShortcutsText": "Mostrar accesos directos guardados", + "editShortcutsText": "Editar accesos directos", + "shortcutsInfoText": "Elige qué accesos directos mostrar", + "editShortcutsList": "Accesos directos guardados", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Iconos adaptativos", + "adaptiveIconInfoText": "Los iconos de accesos directos serán más pequeños", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "Herramientas de IA", + "enable_ai_tools": "Mostrar accesos directos de herramientas de IA", + "googleAppsMenuText": "Aplicaciones de Google", + "googleAppsMenuInfo": "Mostrar accesos directos a las aplicaciones de Google", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Reloj digital", + "digitalclockinfo": "Cambiar a reloj digital", + "timeformattittle": "Formato de 12 horas", + "timeformatinfo": "Usar formato de 12 horas", + "greetingtittle": "Saludo", + "greetinginfo": "Mostrar saludo debajo del texto personalizado", + + // Misc + "userTextTitle": "Texto personalizable", + "userTextInfo": "Mostrar texto personalizado debajo del reloj", + "fahrenheitCelsiusCheckbox": "Cambiar a Fahrenheit", + "fahrenheitCelsiusText": "Recarga la página para aplicar cambios", + "micIconTitle": "Ocultar ícono de micrófono", + "micIconInfo": "Si la escritura por voz no está funcionando", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Sugerencias de búsqueda", + "search_suggestions_text": "Habilitar sugerencias de búsqueda", + + // Proxy + "useproxytitletext": "Omisión de proxy", + "useproxyText": "Si las sugerencias de búsqueda no funcionan", + "ProxyText": "Proxy CORS por defecto", + "ProxySubtext": "Añade tu propio proxy CORS", + "HostproxyButton": "Aloja tu propio proxy", + "saveproxy": "Guardar", + + // Location + "UserLocText": "Ingresa tu ubicación", + "UserLocSubtext": "Si la ubicación del clima es incorrecta", + "userLoc": "Tu ciudad o coordenadas (Latitud, Longitud)", + "saveLoc": "Guardar", + + // Weather + "WeatherApiText": "Ingresa tu clave de WeatherAPI", + "WeatherApiSubtext": "Si la funcionalidad del clima no funciona", + "userAPI": "Tu clave de WeatherAPI", + "LearnMoreButton": "Más información", + "saveAPI": "Guardar", + + // Body Items + // Calendar + "days": ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'], + "months": ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "¡Hola! ¿Cómo estás hoy?", + "humidityLevel": "Humedad", + "feelsLike": "Sensación", + "location": "Ubicación", + "enterBtn": "Buscar", + "searchPlaceholder": "Escribe tu búsqueda...", + "listenPlaceholder": "Escuchando...", + "searchWithHint": "Buscar con", + "userText": "Haz clic aquí para editar", + + // Greeting + greeting: { + "morning": "¡Buenos días!", + "afternoon": "¡Buenas tardes!", + "evening": "¡Buenas noches!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Herramientas de IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/fr.js b/dist/locales/fr.js new file mode 100644 index 00000000..d3540e2f --- /dev/null +++ b/dist/locales/fr.js @@ -0,0 +1,140 @@ +// French -> fr +const fr = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Réinitialiser les paramètres", + "menuCloseText": "Fermer", + + // Shortcuts + "shortcutsText": "Raccourcis", + "enableShortcutsText": "Afficher les raccourcis sauvegardés", + "editShortcutsText": "Modifier les raccourcis", + "shortcutsInfoText": "Choisir les raccourcis à afficher", + "editShortcutsList": "Raccourcis Sauvegardés", + 'editShortcutsListInfo': 'Vous pouvez ajouter de nouveaux raccourcis en cliquant sur l\'icône « + » ou modifier les raccourcis existants en cliquant sur le nom ou l\'URL du raccourci.', + "adaptiveIconText": "Icônes Adaptatives", + "adaptiveIconInfoText": "L'icône du raccourci correspondra à la couleur du thème et apparaîtra plus petite", + "bookmarksText": "Favoris", + "bookmarksInfo": "Afficher la barre latérale des favoris", + "ai_tools_button": "Outils IA", + "enable_ai_tools": "Afficher les raccourcis pour les Outils IA", + "googleAppsMenuText": "Apps Google", + "googleAppsMenuInfo": "Afficher les raccourcis pour les Applications Google", + "googleAppsHover": "Apps Google", + + // To-do List + "todoListText": "Liste To-Do", + "todoListInfo": "Afficher une liste de tâches quotidiennes", + "todoListHover": "Liste To-Do", + "todoPlaceholder": "Ajouter une tâche...", + + // Digital Clock + "digitalclocktittle": "Horloge Numérique", + "digitalclockinfo": "Passer à l'horloge numérique", + "timeformattittle": "Format 12h", + "timeformatinfo": "Utiliser le format 12h", + "greetingtittle": "Salutation", + "greetinginfo": "Afficher la salutation sous le texte personnalisé", + + // Misc + "userTextTitle": "Texte personnalisé", + "userTextInfo": "Afficher le texte personnalisé sous l'horloge", + "fahrenheitCelsiusCheckbox": "Passer à Fahrenheit", + "fahrenheitCelsiusText": "Actualiser la page pour appliquer les changements", + "micIconTitle": "Masquer l'Icône du Microphone", + "micIconInfo": "Si la saisie vocale ne fonctionne pas", + "hideSearchWith": "Masquer les Moteurs de Recherche", + "hideSearchWithInfo": "Passez d'un moteur de recherche à l'autre en cliquant sur son icône", + "search_suggestions_button": "Suggestions de Recherche", + "search_suggestions_text": "Activer les suggestions de recherche", + + // Proxy + "useproxytitletext": "Contournement du Proxy", + "useproxyText": "Si les suggestions de recherche ne fonctionnent pas", + "ProxyText": "Proxy de contournement CORS", + "ProxySubtext": "Ajouter votre propre proxy de contournement CORS", + "HostproxyButton": "Hébergez votre propre proxy", + "saveproxy": "Enregistrer", + + // Location + "UserLocText": "Saisissez votre localisation", + "UserLocSubtext": "Si la localisation de la météo n'est pas correct", + "userLoc": "Votre ville ou vos coordonnées (Latitude, Longitude)", + "useGPS": "Utiliser le GPS", + "saveLoc": "Enregistrer", + + // Weather + "WeatherApiText": "Entrez votre clé WeatherAPI", + "WeatherApiSubtext": "Si la fonctionnalité météo ne fonctionne pas", + "userAPI": "Your weatherAPI key", + "LearnMoreButton": "En savoir plus", + "saveAPI": "Enregistrer", + + // Body Items + // Calendar + "days": ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'], + "months": ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'], + + // Bookmarks + "bookmarksHeading": "Favoris", + "bookmarkViewAs": "Afficher en", + "bookmarkViewGrid": "Grille", + "bookmarkViewList": "Liste", + "bookmarkSearch": "Rechercher un favori", + + // New Tab Item + "conditionText": "Bonjour, comment allez-vous?", + "humidityLevel": "Humidité", + "feelsLike": "Ressenti", + "location": "Terre", + "enterBtn": "Rechercher", + "searchPlaceholder": "Saisissez ici...", + "listenPlaceholder": "Écoute...", + "searchWithHint": "Rechercher avec", + "userText": "Cliquez ici pour modifier", + + // Greeting + greeting: { + "morning": "Bonjour!", + "afternoon": "Bonsoir!", + "evening": "Bonne nuit!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Outils IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Uploader un fond d'ecran", + "backupText": "Sauvegarder", + "restoreText": "Restaurer", + "rangColor": "Choisir la couleur", + + // Dialog boxes (alerts) + "confirmWallpaper": "Souhaitez-vous définir une nouvelle image comme fond d'écran pour la journée?", + "confirmRestore": "Êtes-vous sûr de vouloir réinitialiser vos paramètres? Cette action ne peut être annulée.", + "Nobackgroundset": "Aucune image de fond n'est actuellement définie.", + "clearbackgroundimage": "Êtes-vous sûr de vouloir effacer l'image de fond?", + "ProxyDisclaimer": "Toutes les fonctions du proxy sont désactivées par défaut.\n\nSi vous activez les suggestions de recherche et le proxy de contournement CORS, il est fortement recommandé d'héberger votre propre proxy pour une meilleure confidentialité.\n\nPar défaut, le proxy sera réglé sur https://mynt-proxy.rhythmcorehq.com, ce qui signifie que toutes vos données passeront par ce service, ce qui peut poser des problèmes de confidentialité.", + "failedbackup": "Échec de la sauvegarde: ", + "restorecompleted": "Restauration terminée avec succès!", + "restorefailed": "Échec de la restauration: ", + "invalidBackup": "Fichier de sauvegarde invalide", + "deleteBookmark": "Êtes-vous sûr de vouloir supprimer le favori?", + "UnsupportedBrowser": "Les favoris ne sont pas supportés dans votre navigateur.", + "BookmarksDenied": "L'autorisation pour les favoris n'a pas été accordée." +}; diff --git a/dist/locales/hi.js b/dist/locales/hi.js new file mode 100644 index 00000000..a01ce550 --- /dev/null +++ b/dist/locales/hi.js @@ -0,0 +1,141 @@ +// Hindi +const hi = { + // Menu Items + "github": "गिटहब", + "feedback": "प्रतिक्रिया", + "resetsettings": "सेटिंग्स रीसेट करें", + "menuCloseText": "बंद करें", + + // Shortcuts + "shortcutsText": "शॉर्टकट्स", + "enableShortcutsText": "सहेजे गए शॉर्टकट प्रदर्शित करें", + "editShortcutsText": "शॉर्टकट्स संपादित करें", + "shortcutsInfoText": "निर्धारित करें कि कौन से शॉर्टकट दिखेंगे", + "editShortcutsList": "सहेजे गए शॉर्टकट", + "editShortcutsListInfo": "आप \"+\" आइकन पर क्लिक करके नए शॉर्टकट्स जोड़ सकते हैं या शॉर्टकट के नाम या URL पर क्लिक करके मौजूदा शॉर्टकट्स को संपादित कर सकते हैं।", + "adaptiveIconText": "अनुकूलनीय आइकन", + "adaptiveIconInfoText": "शॉर्टकट आइकन थीम रंग से मेल खाते हुए छोटे आकार में दिखेंगे", + "bookmarksText": "बुकमार्क्स", + "bookmarksInfo": "बुकमार्क्स साइडबार दिखाएँ", + "ai_tools_button": "AI-उपकरण", + "enable_ai_tools": "AI उपकरणों के शॉर्टकट्स प्रदर्शित करें", + "googleAppsMenuText": "गूगल ऐप्स", + "googleAppsMenuInfo": "गूगल ऐप्स के शॉर्टकट्स प्रदर्शित करें", + "googleAppsHover": "गूगल ऐप्स", + + // To-do List + "todoListText": "कार्य सूची", + "todoListInfo": "दैनिक कार्यों की सूची देखें", + "todoListHover": "कार्य सूची", + "todoPlaceholder": "कार्य जोड़ें...", + + // Digital Clock + "digitalclocktittle": "डिजिटल घड़ी", + "digitalclockinfo": "डिजिटल घड़ी पर स्विच करें", + "timeformattittle": "12 घंटे का प्रारूप", + "timeformatinfo": "12 घंटे का समय प्रारूप उपयोग करें", + "greetingtittle": "अभिवादन", + "greetinginfo": "कस्टम टेक्स्ट के नीचे अभिवादन दिखाएँ", + + // Misc + "userTextTitle": "कस्टमाइज़ेबल टेक्स्ट", + "userTextInfo": "घड़ी के नीचे कस्टम टेक्स्ट दिखाएँ", + "fahrenheitCelsiusCheckbox": "तापमान फ़ारेनहाइट में बदलें", + "fahrenheitCelsiusText": "बदलाव के लिए पृष्ठ को रीफ्रेश करें", + "micIconTitle": "माइक्रोफोन आइकन छिपाएँ", + "micIconInfo": "अगर वॉइस टाइपिंग काम नहीं कर रहा है", + "hideSearchWith": "सर्च इंजन छिपाएं", + "hideSearchWithInfo": "आइकन पर क्लिक करके सर्च इंजन बदलें", + "search_suggestions_button": "खोज सुझाव", + "search_suggestions_text": "खोज सुझाव सक्षम करें", + + // Proxy + "useproxytitletext": "प्रॉक्सी बायपास", + "useproxyText": "यदि खोज सुझाव काम नहीं कर रहे हैं", + "ProxyText": "CORS बायपास प्रॉक्सी", + "ProxySubtext": "अपना CORS बायपास प्रॉक्सी जोड़ें", + "HostproxyButton": "अपना प्रॉक्सी संचालित करें", + "saveproxy": "सहेजें", + + // Location + "UserLocText": "अपना स्थान दर्ज करें", + "UserLocSubtext": "यदि मौसम का स्थान सही नहीं है", + "userLoc": "आपका शहर या निर्देशांक (अक्षांश, देशांतर)", + "useGPS": "GPS का उपयोग करें", + "saveLoc": "सहेजें", + + // Weather + "WeatherApiText": "अपनी WeatherAPI कुंजी दर्ज करें", + "WeatherApiSubtext": "यदि मौसम की सुविधा काम नहीं कर रही है", + "userAPI": "आपकी WeatherAPI कुंजी", + "LearnMoreButton": "और जानें", + "saveAPI": "सहेजें", + + // Body Items + // Calendar + "days": ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display + // "days": ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full + "months": ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवंबर', 'दिसंबर'], + // "months": ['जन', 'फर', 'मार्च', 'अप्र', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'], // Truncated + + // Bookmarks + "bookmarksHeading": "बुकमार्क्स", + "bookmarkViewAs": "इस रूप में देखें", + "bookmarkViewGrid": "ग्रिड", + "bookmarkViewList": "लिस्ट", + "bookmarkSearch": "बुकमार्क खोजें", + + // New Tab Item + "conditionText": "नमस्ते! आप आज कैसे हैं?", + "humidityLevel": "नमी", + "feelsLike": "महसूस", + "location": "पृथ्वी", + "enterBtn": "सर्च करें", + "searchPlaceholder": "यहाँ लिखें...", + "listenPlaceholder": "सुन रहे हैं...", + "searchWithHint": "खोज माध्यम", + "userText": "यहाँ अपना टेक्स्ट लिखें", + + // Greeting + greeting: { + "morning": "सुप्रभात!", + "afternoon": "शुभ अपराह्न!", + "evening": "शुभ संध्या!" + }, + + // Search Engines + "googleEngine": "गूगल", + "duckEngine": "डकडकगो", + "bingEngine": "बिंग", + "braveEngine": "ब्रेव", + "youtubeEngine": "यूट्यूब", + + // AI Tools + "ai_tools": "AI उपकरण", + "chatGPT": "चैटGPT", + "gemini": "जेमिनी", + "copilot": "कोपायलट", + "claude": "क्लॉड", + "perplexity": "पर्प्लेक्सिटी", + "firefly": "एडोबी फायरफ्लाई", + "metaAI": "मेटा AI", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर सेट करें", + "backupText": "बैकअप करें", + "restoreText": "रिस्टोर करें", + "rangColor": "रंग चुनें", + + // Dialog boxes (alerts) + "confirmWallpaper": "क्या आप आज के लिए एक नई छवि को वॉलपेपर के रूप में सेट करना चाहेंगे?", + "confirmRestore": "क्या आप अपनी सेटिंग्स रीसेट करना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।", + "Nobackgroundset": "कोई बैकग्राउंड छवि वर्तमान में सेट नहीं है।", + "clearbackgroundimage": "क्या आप बैकग्राउंड छवि को हटाना चाहते हैं?", + "ProxyDisclaimer": "सभी प्रॉक्सी फीचर डिफ़ॉल्ट रूप से बंद रहते हैं।\n\nयदि आप खोज सुझाव और CORS बायपास प्रॉक्सी सक्षम करते हैं, तो गोपनीयता बढ़ाने के लिए अपना प्रॉक्सी होस्ट करना अत्यधिक अनुशंसित है।\n\nडिफ़ॉल्ट रूप से प्रॉक्सी को https://mynt-proxy.rhythmcorehq.com पर सेट किया जाएगा, जिसका अर्थ है कि आपका सारा डेटा इस सेवा से गुजरेगा, जिससे गोपनीयता संबंधित चिंताएँ हो सकती हैं।", + "failedbackup": "बैकअप विफल: ", + "restorecompleted": "पुनर्स्थापना सफलतापूर्वक पूरी हुई!", + "restorefailed": "पुनर्स्थापना विफल: ", + "invalidBackup": "अमान्य बैकअप फ़ाइल", + "deleteBookmark": "क्या आप बुकमार्क डिलीट करना चाहते हैं?", + "UnsupportedBrowser": "आपके ब्राउज़र में बुकमार्क समर्थित नहीं हैं", +}; diff --git a/dist/locales/hu.js b/dist/locales/hu.js new file mode 100644 index 00000000..65dcef2f --- /dev/null +++ b/dist/locales/hu.js @@ -0,0 +1,140 @@ +// Hungarian +const hu = { + // Menu Items + "feedback": "Visszajelzés", + "resetsettings": "Beállítások visszaállítása", + "menuCloseText": "Bezárás", + + // Shortcuts + "shortcutsText": "Parancsikonok", + "enableShortcutsText": "Parancsikonok megjelenítése", + "editShortcutsText": "Parancsikonok szerkesztése", + "shortcutsInfoText": "Válassza ki a parancsikonokat, amelyeket meg szeretné jeleníteni a kezdőképernyőn", + "editShortcutsList": "Elmentett parancsikonok", + "editShortcutsListInfo": "Új parancsikonokat adhatsz hozzá a \"+\" ikonra kattintva, vagy szerkesztheted a meglévőket a parancsikon nevére vagy URL címére kattintva.", + "adaptiveIconText": "Alkalmazkodó ikonformák", + "adaptiveIconInfoText": "Parancsikonok kisebbnek fognak tűnni", + "bookmarksText": "Könyvjelzők", + "bookmarksInfo": "Könyvjelzők oldalsáv megjelenítése", + "ai_tools_button": "MI-Eszközök", + "enable_ai_tools": "Parancsikon az MI-eszközökhöz", + "googleAppsMenuText": "Google Alkalmazások", + "googleAppsMenuInfo": "Parancsikonok a Google alkalmazásaihoz", + "googleAppsHover": "Google Appok", + + // To-do List + "todoListText": "Teendő lista", + "todoListInfo": "Napi teendők lista megjelenítése", + "todoListHover": "Teendő lista", + "todoPlaceholder": "Feladat hozzáadása...", + + // Digital Clock + "digitalclocktittle": "Digitális óra", + "digitalclockinfo": "Váltás a digitális órára", + "timeformattittle": "12 órás formátum", + "timeformatinfo": "12 órás időformátum használata", + "greetingtittle": "Üdvözlés", + "greetinginfo": "Üdvözlet megjelenítése az egyéni szöveg alatt", + + // Misc + "userTextTitle": "Testreszabható szöveg", + "userTextInfo": "Egyéni szöveg megjelenítése az óra alatt", + "fahrenheitCelsiusCheckbox": "Fahrenheit használata", + "fahrenheitCelsiusText": "Frissítsd az oldalt a módosítások alkalmazásához", + "micIconTitle": "Mikrofon ikon elrejtése", + "micIconInfo": "Ha a hangalapú gépelés nem működik", + "hideSearchWith": "Keresőmotorok elrejtése", + "hideSearchWithInfo": "Váltás a keresőmotorok között az ikonra kattintva", + "search_suggestions_button": "Keresési javaslatok", + "search_suggestions_text": "Keresési javaslatok bekapcsolása", + + // Proxy + "useproxytitletext": "Proxy megkerülése", + "useproxyText": "Ha a keresési javaslatok nem működnek", + "ProxyText": "CORS megkerülő proxy", + "ProxySubtext": "Saját CORS megkerülő proxy hozzáadása", + "HostproxyButton": "Saját proxy üzemeltetése", + "saveproxy": "Mentés", + + // Location + "UserLocText": "Add meg a tartózkodási helyed", + "UserLocSubtext": "Ha az időjárás helye nem megfelelő", + "userLoc": "A városod vagy koordinátáid (földrajzi szélesség, hosszúság)", + "saveLoc": "Mentés", + + // Weather + "WeatherApiText": "Add meg a WeatherAPI kulcsodat", + "WeatherApiSubtext": "Ha az időjárási funkciók nem működnek", + "userAPI": "A weatherAPI kulcsod", + "LearnMoreButton": "További információk", + "saveAPI": "Mentés", + + // Body Items + // Calendar + "days": ['Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'], + "months": ['Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'], + + // Weather + "humidityLevel": "Páratartalom", + "feelsLike": "Érzés", + "location": "Föld", + + // Bookmarks + "bookmarksHeading": "Könyvjelzők", + "bookmarkViewAs": "Megjelenítés mint", + "bookmarkViewGrid": "Rács", + "bookmarkViewList": "Lista", + "bookmarkSearch": "Könyvjező keresése", + + // New Tab Item + "conditionText": "Szia! Hogy vagy ma?", + "enterBtn": "Keresés", + "searchPlaceholder": "Írj ide...", + "listenPlaceholder": "Hallgatlak...", + "searchWithHint": "Keresés a következővel", + "userText": "Kattints ide a szerkesztéshez", + + // Greeting + greeting: { + "morning": "Jó reggelt!", + "afternoon": "Jó napot!", + "evening": "Jó estét!" + }, + + // Search Engines and rest + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "MI Eszközök", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + "github": "GitHub", + + // Wallpaper and alerts + "uploadWallpaperText": "Háttérkép feltöltése", + "backupText": "Mentés", + "restoreText": "Visszaállítás", + "rangColor": "Szín kiválasztása", + + // Dialog boxes (alerts) + "confirmWallpaper": "Szeretnél egy újabb képet beállítani a napi háttérképednek?", + "confirmRestore": "Biztos, hogy vissza akarja állítani a beállításokat? Ezt a műveletet nem lehet visszacsinálni.", + "Nobackgroundset": "Jelenleg nincs beállítva háttérkép.", + "clearbackgroundimage": "Biztos, hogy törölni szeretnéd a háttérképet?", + "ProxyDisclaimer": "Alapértelmezés szerint minden proxy funkció ki van kapcsolva.\n\nHa engedélyezed a keresési javaslatokat és a CORS megkerülő proxy-t, erősen ajánlott saját proxy-t üzemeltetni a fokozott adatvédelem érdekében.\n\n\nA proxy alapértelmezés szerint a https://mynt-proxy.rhythmcorehq.com beállítással működik, ami azt jelenti, hogy minden adat ezen a szolgáltatáson keresztül fog menni, ami adatvédelmi aggályokat vethet fel.", + "failedbackup": "Sikertelen mentés: ", + "restorecompleted": "A visszaállítás sikeresen befejeződött!", + "restorefailed": "Sikertelen visszaállítás: ", + "invalidBackup": "Érvénytelen mentési fájl", + "deleteBookmark": "Biztos, hogy törölni szeretnéd a könyvjelzőt?", + "UnsupportedBrowser": "A könyvjelzők nem támogatottak a böngészőben", +}; diff --git a/dist/locales/idn.js b/dist/locales/idn.js new file mode 100644 index 00000000..00e6d252 --- /dev/null +++ b/dist/locales/idn.js @@ -0,0 +1,138 @@ +// Indonesian -> idn +const idn = { + // Menu Items + "github": "GitHub", + "feedback": "Umpan Balik", + "resetsettings": "Setelan Awal", + "menuCloseText": "Tutup", + + // Shortcuts + "shortcutsText": "Pintasan", + "enableShortcutsText": "Menampilkan Pintasan", + "editShortcutsText": "Ubah Pintasan", + "shortcutsInfoText": "Pilih pintasan apa yang akan ditampilkan", + "editShortcutsList": "Pintasan Tersimpan", + 'editShortcutsListInfo': 'Anda dapat menambahkan pintasan baru dengan mengeklik ikon "+" atau mengedit pintasan yang sudah ada dengan mengeklik nama pintasan atau URL', + "adaptiveIconText": "Penyesuaian Bentuk Ikon", + "adaptiveIconInfoText": "Ikon pintasan akan terlihat lebih kecil", + "bookmarksText": "Markah Buku", + "bookmarksInfo": "Tampilkan sisi markah buku", + "ai_tools_button": "Utilitas AI", + "enable_ai_tools": "Tampilkan pintasan untuk utilitas AI", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Tampilkan pintasan untuk Google Apps", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + "todoListText": "To-Do List", + "todoListInfo": "Tampilkan To-Do list harian", + "todoListHover": "To-Do List", + "todoPlaceholder": "Tambah tugas...", + + // Digital Clock + "digitalclocktittle": "Jam Digital", + "digitalclockinfo": "Ubah menjadi jam digital", + "timeformattittle": "Format 12-Jam", + "timeformatinfo": "Menggunakan format 12-jam", + "greetingtittle": "Sapaan", + "greetinginfo": "Tampilkan sapaan di bawah teks kustom", + + // Misc + "userTextTitle": "Teks Kostumisasi", + "userTextInfo": "Tampilkan teks kustom di bawah jam", + "fahrenheitCelsiusCheckbox": "Ubah menjadi Fahrenheit", + "fahrenheitCelsiusText": "Muat ulang halaman untuk mengaplikasikan perubahan", + "micIconTitle": "Sembunyikan Ikon Microfon", + "micIconInfo": "Jika voice typing tidak berfungsi", + "hideSearchWith": "Sembunyikan Mesin Pencarian", + "hideSearchWithInfo": "Ubah mesin pencarian dengan cara mengeklik ikon", + "search_suggestions_button": "Saran Pencarian", + "search_suggestions_text": "Mengaktifkan saran pencarian", + + // Proxy + "useproxytitletext": "Pemintas Proksi", + "useproxyText": "Jika saran pencarian tidak berfungsi", + "ProxyText": "Pemintas proksi CORS", + "ProxySubtext": "Tambahkan pemintas proksi CORS anda sendiri", + "HostproxyButton": "Host proksi anda sendiri", + "saveproxy": "Simpan", + + // Location + "UserLocText": "Masukkan Lokasi Anda", + "UserLocSubtext": "Jika lokasi cuaca tidak berfungsi", + "userLoc": "Kota atau Koordinat anda (Lintang, Bujur)", + "saveLoc": "Simpan", + + // Weather + "WeatherApiText": "Masukkan kunci WeatherAPI anda", + "WeatherApiSubtext": "Jika fungsionalitas cuaca tidak berfungsi", + "userAPI": "Kunci weatherAPI anda", + "LearnMoreButton": "Pelajari lebih lanjut", + "saveAPI": "Simpan", + + // Body Items + // Calendar + "days": ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'], + "months": ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'], + + // Bookmarks + "bookmarksHeading": "Markah Buku", + "bookmarkViewAs": "Lihat sebagai", + "bookmarkViewGrid": "Kisi-kisi", + "bookmarkViewList": "Daftar", + "bookmarkSearch": "Cari markah buku", + + // New Tab Item + "conditionText": "Halo! Bagaimana kabarmu hari ini?", + "humidityLevel": "Kelembapan", + "feelsLike": "Terasa", + "location": "Bumi", + "enterBtn": "Telusuri", + "searchPlaceholder": "Ketik disini...", + "listenPlaceholder": "Mendengarkan...", + "searchWithHint": "Cari Dengan", + "userText": "Klik disini untuk mengubah tulisan", + + // Greeting + greeting: { + "morning": "Selamat Pagi!", + "afternoon": "Selamat Sore!", + "evening": "Selamat Malam!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Utilitas AI", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Unggah Wallpaper", + "backupText": "Cadangkan", + "restoreText": "Pulihkan", + "rangColor": "Pilih warna", + + // Dialog boxes (alerts) + "confirmWallpaper": "Apakah anda ingin memasang gambar baru sebagai wallpaper harian anda?", + "confirmRestore": "Apakah anda yakin ingin mengatur ulang setelan anda? Tindakan ini tidak dapat dibatalkan.", + "Nobackgroundset": "Tidak ada gambar latar belakang yang dipasang saat ini.", + "clearbackgroundimage": "Apakah anda yakin ingin menghapus gambar latar belakang?", + "ProxyDisclaimer": "Semua fitur proxy dimatikan secara default.\n\nJika anda mengaktifkan saran pencarian dan proxy bypass CORS, sangat disarankan untuk meng-host proxy anda sendiri untuk privasi yang lebih baik.\n\nSecara default, proxy akan diatur ke https://mynt-proxy.rhythmcorehq.com, yang berarti semua data anda akan melewati layanan ini, yang mungkin saja dapat menimbulkan kekhawatiran privasi.", + "failedbackup": "Pencadangan gagal: ", + "restorecompleted": "Pemulihan berhasil dengan sukses!", + "restorefailed": "Pemulihan gagal: ", + "invalidBackup": "File cadangan tidak valid", + "deleteBookmark": "Apakah anda yakin untuk menghapus markah buku?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/it.js b/dist/locales/it.js new file mode 100644 index 00000000..cbe9e305 --- /dev/null +++ b/dist/locales/it.js @@ -0,0 +1,140 @@ +// Italian +const it = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Reimposta Impostazioni", + "menuCloseText": "Chiudi", + + // Shortcuts + "shortcutsText": "Scorciatoie", + "enableShortcutsText": "Abilita/disabilita scorciatoie", + "editShortcutsText": "Modifica Scorciatoie", + "shortcutsInfoText": "Scegli quali scorciatoie mostrare", + "editShortcutsList": "Scorciatoie Salvate", + "editShortcutsListInfo": "Puoi aggiungere nuove scorciatoie cliccando l'icona \"+\" o modificiare le esistenti cliccando il nome della scorciatoia o dell'URL.", + "adaptiveIconText": "Forme di Icona Adattiva", + "adaptiveIconInfoText": "Le icone delle scorciatoie saranno sempre rotonde", + "bookmarksText": "Segnalibri", + "bookmarksInfo": "Mostra segnalibri sulla barra laterale", + "ai_tools_button": "Strumenti IA", + "enable_ai_tools": "Abilita/disabilita scorciatoie Strumenti IA", + "googleAppsMenuText": "App Google", + "googleAppsMenuInfo": "Mostra collegamenti App Google", + "googleAppsHover": "App di Google", // Keep this shorter + + // To-do List + "todoListText": "Lista cose da fare", + "todoListInfo": "Mostra una lista di cose da fare giornaliera", + "todoListHover": "Lista ToDo", // Keep this short + "todoPlaceholder": "Aggiungi attività...", + + // Digital Clock + "digitalclocktittle": "Orologio Digitale", + "digitalclockinfo": "Abilita/disabilita Orologio Digitale", + "timeformattittle": "Usa formato 12h", + "timeformatinfo": "Usa formato orario a 12 ore", + "greetingtittle": "Saluto", + "greetinginfo": "Mostra il saluto sotto il testo personalizzato", + + // Misc + "userTextTitle": "Testo personalizzabile", + "userTextInfo": "Mostra il testo personalizzato sotto l'orologio", + "fahrenheitCelsiusCheckbox": "Passa a Fahrenheit", + "fahrenheitCelsiusText": "Ricarica la pagina per vedere gli aggiornamenti", + "micIconTitle": "Nascondi icona del microfono", + "micIconInfo": "Se la digitazione vocale non funziona", + "hideSearchWith": "Nascondi motori di ricerca", + "hideSearchWithInfo": "Scegli tra i motori di ricerca cliccando l'icona", + "search_suggestions_button": "Suggerimenti di Ricerca", + "search_suggestions_text": "Abilita/disabilita Suggerimenti di Ricerca", + + // Proxy + "useproxytitletext": "Bypass Proxy", + "useproxyText": "Se i suggerimenti di ricerca non funzionano", + "ProxyText": "Proxy di Bypass CORS", + "ProxySubtext": "Aggiungi il tuo Proxy di Bypass CORS", + "HostproxyButton": "Hosta il Tuo Proxy", + "saveproxy": "Salva", + + // Location + "UserLocText": "Inserisci la tua posizione", + "UserLocSubtext": "Se la posizione meteo non è corretta", + "userLoc": "La tua posizione (Città/Latitudine,Longitudine)", + "useGPS": "Usa il GPS", + "saveLoc": "Salva", + + // Weather + "WeatherApiText": "Inserisci la tua chiave WeatherAPI", + "WeatherApiSubtext": "Se la funzionalità meteo non funziona", + "userAPI": "La tua chiave WeatherAPI", + "LearnMoreButton": "Scopri di più", + "saveAPI": "Salva", + + // Body Items + // Calendar + "days": ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], + "months": ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'], + + // Bookmarks + "bookmarkHeading": "Segnalibri", + "bookmarkViewAs": "Visualizza come", + "bookmarkViewGrid": "Griglia", // Keep this shorter + "bookmarkViewList": "Elenco", // Keep this shorter + "bookmarkSearch": "Cerca segnalibro", + + // New Tab Item + "conditionText": "Ciao! Come stai oggi?", + "humidityLevel": "Umidità", + "feelsLike": "Percepito", + "location": "Terra", + "enterBtn": "Cerca", + "searchPlaceholder": "Cerca...", + "listenPlaceholder": "Ascoltando...", + "searchWithHint": "Cerca con", + "userText": "Clicca qui per modificare", + + // Greeting + greeting: { + "morning": "Buongiorno!", + "afternoon": "Buon pomeriggio!", + "evening": "Buona sera!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Strumenti IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Carica immagine", + "backupText": "Backup", + "restoreText": "Ripristina", + "rangColor": "Scegli colore", + + // Dialog boxes (alerts) + "confirmWallpaper": "Vuoi impostare una nuova immagine come sfondo per oggi?", + "confirmRestore": "Sei sicuro di voler reimpostare le impostazioni? Questa azione non può essere annullata.", + "Nobackgroundset": "Nessuna immagine di sfondo è attualmente impostata.", + "clearbackgroundimage": "Sei sicuro di voler rimuovere l'immagine di sfondo?", + "ProxyDisclaimer": "Tutte le funzionalità del proxy sono disattivate di default.\n\nSe abiliti i suggerimenti di ricerca e il proxy per il bypass CORS, è fortemente consigliato usare un proprio proxy per una maggiore privacy.\n\nIl proxy predefinito sarà configurato su https://mynt-proxy.rhythmcorehq.com, il che significa che tutti i tuoi dati passeranno attraverso questo servizio, con possibili rischi per la privacy.", + "failedbackup": "Backup fallito: ", + "restorecompleted": "Ripristino completato con successo!", + "restorefailed": "Ripristino fallito: ", + "invalidBackup": "File di backup non valido", + "deleteBookmark": "Sei sicuro di voler eliminare il segnalibro?", + "UnsupportedBrowser": "I segnalibri non sono supportati nel tuo browser", + "BookmarksDenied": "Il permesso per i segnalibri non è stato concesso.", +}; diff --git a/dist/locales/ja.js b/dist/locales/ja.js new file mode 100644 index 00000000..936c851e --- /dev/null +++ b/dist/locales/ja.js @@ -0,0 +1,137 @@ +// Japanese -> ja +const ja = { + // Menu Items + "github": "GitHub", + "feedback": "フィードバック", + "resetsettings": "設定をリセット", + "menuCloseText": "閉じる", + + // Shortcuts + "shortcutsText": "ショートカット", + "enableShortcutsText": "保存されたショートカットを表示", + "editShortcutsText": "ショートカットを編集", + "shortcutsInfoText": "表示するショートカットを選択", + "editShortcutsList": "保存されたショートカット", + "editShortcutsListInfo": "\"+\" アイコンをクリックして新しいショートカットを追加したり、ショートカット名またはURLをクリックして既存のショートカットを編集したりできます", + "adaptiveIconText": "アダプティブアイコン", + "adaptiveIconInfoText": "ショートカットアイコンは小さく表示されます", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AIツール", + "enable_ai_tools": "AIツールのショートカットを表示", + "googleAppsMenuText": "Googleアプリ", + "googleAppsMenuInfo": "Googleアプリのショートカットを表示", + "googleAppsHover": "Googleアプリ", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "デジタル時計", + "digitalclockinfo": "デジタル時計に変更", + "timeformattittle": "12時間形式", + "timeformatinfo": "12時間形式を使用", + "greetingtittle": "あいさつ", + "greetinginfo": "カスタムテキストの下にあいさつを表示", + + // Misc + "userTextTitle": "カスタムテキスト", + "userTextInfo": "時計の下にカスタムテキストを表示", + "fahrenheitCelsiusCheckbox": "華氏に変更", + "fahrenheitCelsiusText": "変更を適用するにはページを再読み込み", + "micIconTitle": "マイクアイコンを非表示", + "micIconInfo": "音声入力が動作しない場合", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "検索候補", + "search_suggestions_text": "検索候補を有効にする", + + // Proxy + "useproxytitletext": "プロキシ使用", + "useproxyText": "検索候補が機能しない場合", + "ProxyText": "デフォルトCORSプロキシ", + "ProxySubtext": "独自のCORSプロキシを追加", + "HostproxyButton": "独自のプロキシをホスト", + "saveproxy": "保存", + + // Location + "UserLocText": "場所を入力", + "UserLocSubtext": "天気の地域が正しくない場合", + "userLoc": "都市または座標(緯度、経度)", + "saveLoc": "保存", + + // Weather + "WeatherApiText": "WeatherAPIキーを入力", + "WeatherApiSubtext": "天気機能が動作しない場合", + "userAPI": "WeatherAPIキー", + "LearnMoreButton": "詳細情報", + "saveAPI": "保存", + + // Body Items + // Calendar + "days": ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'], + "months": ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewAsGrid": "Grid", // Keep this shorter + // "bookmarkViewAsList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "こんにちは!本日の調子はいかがですか?", + "humidityLevel": "湿度", + "feelsLike": "体感温度", + "location": "場所", + "enterBtn": "検索", + "searchPlaceholder": "検索キーワードを入力...", + "listenPlaceholder": "聴き取り中...", + "searchWithHint": "次で検索", + "userText": "ここをクリックして編集", + + // Greeting + greeting: { + "morning": "おはようございます!", + "afternoon": "こんにちは!", + "evening": "こんばんは!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AIツール", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + // "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/ko.js b/dist/locales/ko.js new file mode 100644 index 00000000..463986b7 --- /dev/null +++ b/dist/locales/ko.js @@ -0,0 +1,137 @@ +// Korean -> ko +const ko = { + // Menu Items + "github": "깃허브", + "feedback": "피드백", + "resetsettings": "설정 초기화", + "menuCloseText": "닫기", + + // Shortcuts + "shortcutsText": "단축키", + "enableShortcutsText": "저장된 단축키 표시", + "editShortcutsText": "단축키 편집", + "shortcutsInfoText": "표시할 단축키 선택", + "editShortcutsList": "저장된 단축키", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing shortcuts by clicking on the shortcut name or URL.", + "adaptiveIconText": "적응형 아이콘 모양", + "adaptiveIconInfoText": "단축 아이콘이 더 작게 표시됩니다", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI 도구", + "enable_ai_tools": "AI 도구 단축키 표시", + "googleAppsMenuText": "Google 앱", + "googleAppsMenuInfo": "Google 앱 바로가기 표시", + "googleAppsHover": "구글 앱", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "디지털 시계", + "digitalclockinfo": "디지털 시계로 전환", + "timeformattittle": "12시간 형식", + "timeformatinfo": "12시간 형식 사용", + "greetingtittle": "인사말", + "greetinginfo": "사용자 정의 텍스트 아래에 인사말 표시", + + // Misc + "userTextTitle": "사용자 정의 텍스트", + "userTextInfo": "시계 아래에 사용자 정의 텍스트 표시", + "fahrenheitCelsiusCheckbox": "화씨로 전환", + "fahrenheitCelsiusText": "변경 사항을 적용하려면 페이지를 새로 고침하십시오", + "micIconTitle": "마이크 아이콘 숨기기", + "micIconInfo": "음성 입력이 작동하지 않으면", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "검색 제안", + "search_suggestions_text": "검색 제안 활성화", + + // Proxy + "useproxytitletext": "프록시 우회", + "useproxyText": "검색 제안이 작동하지 않으면", + "ProxyText": "CORS 우회 프록시", + "ProxySubtext": "자신의 CORS 우회 프록시 추가", + "HostproxyButton": "자신의 프록시 호스팅", + "saveproxy": "저장", + + // Location + "UserLocText": "위치 입력", + "UserLocSubtext": "날씨 위치가 정확하지 않으면", + "userLoc": "당신의 도시 또는 좌표 (위도, 경도)", + "saveLoc": "저장", + + // Weather + "WeatherApiText": "WeatherAPI 키 입력", + "WeatherApiSubtext": "날씨 기능이 작동하지 않으면", + "userAPI": "당신의 WeatherAPI 키", + "LearnMoreButton": "자세히 알아보기", + "saveAPI": "저장", + + // Body Items + // Calendar + "days": ['일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'], + "months": ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "안녕하세요! 오늘 기분은 어떠세요?", + "humidityLevel": "습도", + "feelsLike": "체감", + "location": "지구", + "enterBtn": "검색", + "searchPlaceholder": "검색어를 입력하세요...", + "listenPlaceholder": "듣고 있습니다...", + "searchWithHint": "검색 방법", + "userText": "편집하려면 클릭하세요", + + // Greeting + greeting: { + "morning": "좋은 아침!", + "afternoon": "좋은 오후!", + "evening": "좋은 저녁!" + }, + + // Search Engines + "googleEngine": "구글", + "duckEngine": "덕덕고", + "bingEngine": "빙", + "braveEngine": "브레이브", + "youtubeEngine": "유튜브", + + // AI Tools + "ai_tools": "AI 도구", + "chatGPT": "챗GPT", + "gemini": "제미니", + "copilot": "코파일럿", + "perplexity": "퍼플렉시티", + "firefly": "어도비 파이어플라이", + // "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/mr.js b/dist/locales/mr.js new file mode 100644 index 00000000..ed3eaf90 --- /dev/null +++ b/dist/locales/mr.js @@ -0,0 +1,139 @@ +// Marathi +const mr = { + // Menu Items + "github": "गिटहब", + "feedback": "प्रतिसाद", + "resetsettings": "सेटिंग्ज रीसेट करा", + "menuCloseText": "बंद करा", + + // Shortcuts + "shortcutsText": "शॉर्टकट्स", + "enableShortcutsText": "जतन केलेले शॉर्टकट दाखवा", + "editShortcutsText": "शॉर्टकट्स संपादित करा", + "shortcutsInfoText": "कोणते शॉर्टकट दाखवायचे ते निवडा", + "editShortcutsList": "जतन केलेले शॉर्टकट्स", + 'editShortcutsListInfo': 'आपण "+" आयकॉनवर क्लिक करून नवीन शॉर्टकट्स जोडू शकता किंवा शॉर्टकटच्या नावावर किंवा URL वर क्लिक करून विद्यमान शॉर्टकट्स संपादित करू शकता.', + "adaptiveIconText": "अनुकूल आयकॉन आकार", + "adaptiveIconInfoText": "शॉर्टकट आयकॉन छोटे दिसतील", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI साधने", + "enable_ai_tools": "AI साधनांसाठी शॉर्टकट्स दाखवा", + "googleAppsMenuText": "गुगल ॲप्स", + "googleAppsMenuInfo": "गुगल ॲप्ससाठी शॉर्टकट्स दाखवा", + "googleAppsHover": "गुगल ॲप्स", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "डिजिटल घड्याळ", + "digitalclockinfo": "डिजिटल घड्याळावर स्विच करा", + "timeformattittle": "१२-तासांचा फॉरमॅट", + "timeformatinfo": "१२-तासांचा वेळ फॉरमॅट वापरा", + "greetingtittle": "शुभेच्छा", + "greetinginfo": "सानुकूल मजकुराखाली शुभेच्छा दाखवा", + + // Misc + "userTextTitle": "सानुकूल मजकूर", + "userTextInfo": "घड्याळाखाली सानुकूल मजकूर दाखवा", + "fahrenheitCelsiusCheckbox": "फॅरेनहाइटमध्ये बदल करा", + "fahrenheitCelsiusText": "बदल लागू करण्यासाठी पृष्ठ रीफ्रेश करा", + "micIconTitle": "मायक्रोफोन आयकॉन लपवा", + "micIconInfo": "जर व्हॉइस टायपिंग कार्यरत नसेल", + "hideSearchWith": "सर्च इंजिन सिलेक्टर लपवा", + "hideSearchWithInfo": "आयकॉनवर क्लिक करून सर्च इंजिन बदला", + "search_suggestions_button": "शोध सूचना", + "search_suggestions_text": "शोध सूचना सक्षम करा", + + // Proxy + "useproxytitletext": "प्रॉक्सी बायपास", + "useproxyText": "जर शोध सूचना कार्यरत नसतील", + "ProxyText": "CORS बायपास प्रॉक्सी", + "ProxySubtext": "आपला स्वतःचा CORS बायपास प्रॉक्सी जोडा", + "HostproxyButton": "आपला प्रॉक्सी होस्ट करा", + "saveproxy": "जतन करा", + + // Location + "UserLocText": "आपले स्थान प्रविष्ट करा", + "UserLocSubtext": "जर हवामानाचे स्थान बरोबर नसेल", + "userLoc": "आपले शहर किंवा समन्वय (अक्षांश, रेखांश)", + "saveLoc": "जतन करा", + + // Weather + "WeatherApiText": "आपली WeatherAPI की प्रविष्ट करा", + "WeatherApiSubtext": "जर हवामान कार्यरत नसेल", + "userAPI": "आपली WeatherAPI कळी", + "LearnMoreButton": "अधिक जाणून घ्या", + "saveAPI": "जतन करा", + + // Body Items + // Calendar + "days": ['रवि', 'सोम', 'मंगळ', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display + // "days": ['रविवार', 'सोमवार', 'मंगळवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full + "months": ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ऑगस्ट', 'सप्टेंबर', 'ऑक्टोबर', 'नोव्हेंबर', 'डिसेंबर'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "नमस्कार! तुम्ही आज कसे आहात?", + "humidityLevel": "आर्द्रता", + "feelsLike": "वाटते", + "location": "पृथ्वी", + "enterBtn": "शोधा", + "searchPlaceholder": "येथे लिहा...", + "listenPlaceholder": "ऐकत आहे...", + "searchWithHint": "यासह शोधा", + "userText": "येथे आपला मजकूर लिहा", + + // Greeting + greeting: { + "morning": "शुभ सकाळ!", + "afternoon": "शुभ दुपार!", + "evening": "शुभ संध्याकाळ!" + }, + + // Search Engines + "googleEngine": "गुगल", + "duckEngine": "डकडकगो", + "bingEngine": "बिंग", + "braveEngine": "ब्रेव्ह", + "youtubeEngine": "यूट्यूब", + + // AI Tools + "ai_tools": "AI साधने", + "chatGPT": "चॅटGPT", + "gemini": "जेमिनी", + "copilot": "कोपायलट", + "claude": "क्लॉड", + "perplexity": "पर्प्लेक्सिटी", + "firefly": "अडोबी फायरफ्लाय", + "metaAI": "मेटा AI", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर सेट करा", + "backupText": "बॅकअप करा", + "restoreText": "पुनर्संचयित करा", + "rangColor": "रंग निवडा", + + // Dialog boxes (alerts) + "confirmWallpaper": "तुम्हाला आजचा वॉलपेपर बदलायचा आहे का?", + "confirmRestore": "तुम्हाला तुमचे सेटिंग्स रीसेट करायचे आहेत का? हि क्रिया परत केली जाऊ शकत नाही.", + "Nobackgroundset": "सद्यस्थितीत कोणतीही पार्श्वभूमी सेट केलेली नाही.", + "clearbackgroundimage": "तुम्हाला पार्श्वभूमी इमेज क्लिअर करायची आहे का?", + "ProxyDisclaimer": "सर्व प्रॉक्सी फीचर्स डिफॉल्टनुसार बंद असतात.\n\nजर तुम्ही सर्च सुजेशन्स आणि CORS बायपास प्रॉक्सी सक्षम केले, तर गोपनीयतेसाठी तुमची स्वतःची प्रॉक्सी होस्ट करणे अत्यंत शिफारसीय आहे.\n\nडिफॉल्टनुसार, प्रॉक्सी https://mynt-proxy.rhythmcorehq.com म्हणून सेट केले जाईल, म्हणजे तुमचे सर्व डेटा या सर्विसमधून जाईल, ज्यामुळे गोपनीयतेच्या संदर्भात धोका होऊ शकतो.", + "failedbackup": "बॅकअप अयशस्वी: ", + "restorecompleted": "पुनर्संचयित यशस्वी झाले!", + "restorefailed": "पुनर्संचयित अयशस्वी: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/np.js b/dist/locales/np.js new file mode 100644 index 00000000..9eeb466e --- /dev/null +++ b/dist/locales/np.js @@ -0,0 +1,167 @@ +// Nepali +const np = { + // Menu Items + github: "गिटहब", + feedback: "प्रतिक्रिया", + resetsettings: "सेटिङहरू रिसेट गर्नुहोस्", + menuCloseText: "मेनु बन्द गर्नुहोस्", + + // Shortcuts + shortcutsText: "सर्टकटहरू", + enableShortcutsText: "Saved गरिएका सर्टकटहरू देखाउनुहोस्", + editShortcutsText: "सर्टकटहरू परिवर्तन गर्नुहोस्", + shortcutsInfoText: "कुन सर्टकटहरू देखाइन्छ छनौट गर्नुहोस्", + editShortcutsList: "Saved सर्टकटहरू", + editShortcutsListInfo: + 'तपाईंले "+" आइकनमा क्लिक गरेर नयाँ सर्टकटहरू थप्न सक्नुहुन्छ वा सर्टकट नाम वा URL मा क्लिक गरेर अवस्थितहरूलाई परिवर्तन गर्न सक्नुहुन्छ।', + adaptiveIconText: "अनुकूल आइकनहरू", + adaptiveIconInfoText: + "सर्टकट आइकनहरू विषयवस्तुको रङसँग मेल खाने र साना देखिनेछन्", + bookmarksText: "बुकमार्कहरू", + bookmarksInfo: "बुकमार्क साइडबार देखाउनुहोस्", + ai_tools_button: "AI-उपकरणहरू", + enable_ai_tools: "AI उपकरणहरूका लागि सर्टकटहरू देखाउनुहोस्", + googleAppsMenuText: "गुगल एप्स", + googleAppsMenuInfo: "गुगल एप्सका लागि सर्टकटहरू देखाउनुहोस्", + googleAppsHover: "गुगल एप्स", + + // Todo List + todoListText: "गर्नुपर्ने कार्यहरु", + todoListInfo: "दैनिक गर्नुपर्ने कार्यहरु देखाउनुहोस ", + todoListHover: "गर्नुपर्ने कार्यहरु", + todoPlaceholder: "गर्नु पर्ने काम थप्नुहोस...", + + // Digital Clock + digitalclocktittle: "डिजिटल घडी", + digitalclockinfo: "डिजिटल घडीमा परिवर्तन गर्नुहोस्", + timeformattittle: "12-घण्टा ढाँचा", + timeformatinfo: "12-घण्टा समय ढाँचा प्रयोग गर्नुहोस्", + greetingtittle: "अभिवादन", + greetinginfo: "अनुकूलन पाठ अभिवादनको तल देखाउनुहोस्", + + // Misc + userTextTitle: "अनुकूलन योग्य पाठ", + userTextInfo: "घडीको तल अनुकूलन पाठ देखाउनुहोस्", + fahrenheitCelsiusCheckbox: "फरेनहाइट मा स्विच गर्नुहोस्", + fahrenheitCelsiusText: "परिवर्तनहरू लागू गर्न रिफ्रेस गर्नुहोस्", + micIconTitle: "माइक्रोफोन आइकन लुकाउनुहोस्", + micIconInfo: "यदि भ्वाइस टाइपिङले काम गरिरहेको छैन भने", + hideSearchWith: "खोज इन्जिनहरू लुकाउनुहोस्", + hideSearchWithInfo: + "यसको आइकनमा क्लिक गरेर खोज इन्जिनहरू बीच स्विच गर्नुहोस्", + search_suggestions_button: "खोज सुझावहरू", + search_suggestions_text: "खोज सुझावहरू सक्षम गर्नुहोस्", + + // Proxy + useproxytitletext: "Proxy Bypass", + useproxyText: "यदि खोज सुझावहरूले काम गरिरहेको छैन भने", + ProxyText: "CORS Bypass Proxy", + ProxySubtext: "आफ्नो CORS bypass proxy थप्नुहोस्", + HostproxyButton: "तपाईंको आफ्नै proxy host गर्नुहोस्", + saveproxy: "Save", + + // Location + UserLocText: "आफ्नो स्थान प्रविष्ट गर्नुहोस्", + UserLocSubtext: "मौसम स्थान सही छैन भने", + userLoc: "तपाईंको शहर वा निर्देशांक (अक्षांश, देशान्तर)", + useGPS: "GPS प्रयोग गर्नुहोस्", + saveLoc: "Save", + + // Weather + WeatherApiText: "आफ्नो WeatherAPI Key प्रविष्ट गर्नुहोस्", + WeatherApiSubtext: "यदि मौसम कार्यक्षमता काम गरिरहेको छैन भने", + userAPI: "तपाईंको weatherAPI key", + LearnMoreButton: "थप जान्नुहोस्", + saveAPI: "Save", + + // Body Items + // Calendar + days: [ + "आइतबार", + "सोमबार", + "मङ्गलबार", + "बुधबार", + "बिहीबार", + "शुक्रबार", + "शनिबार", + ], + + months: [ + "जानेवारी", + "फेब्रुवारी", + "मार्च", + "एप्रिल", + "मे", + "जून", + "जुलै", + "ऑगस्ट", + "सप्टेंबर", + "ऑक्टोबर", + "नोव्हेंबर", + "डिसेंबर", + ], + + // Bookmarks + bookmarksHeading: "बुकमार्कहरू", + bookmarkViewAs: "को रूपमा हेर्नुहोस्", + bookmarkViewGrid: "ग्रिड", + bookmarkViewList: "सूची", + bookmarkSearch: "बुकमार्क खोज्नुहोस्", + + // New Tab Item + conditionText: "नमस्ते! तपाइलाई आज कस्तो छ?", + humidityLevel: "आर्द्रता", + feelsLike: "महसुस हुन्छ", + location: "पृथ्वी", + enterBtn: "खोज्नुहोस्", + searchPlaceholder: "कृपया यहाँ लेख्नुहोस्", + listenPlaceholder: "सुन्दै...", + searchWithHint: "साथ खोज्नुहोस्", + userText: "तपाईं यहाँ लेख्न सक्नुहुन्छ", + + // Greeting + greeting: { + morning: "शुभ प्रभात!", + afternoon: "शुभ दिउँसो!", + evening: "शुभ साँझ!", + }, + + // Search Engines + googleEngine: "गूगल", + duckEngine: "डकडकगो", + bingEngine: "बिंग", + braveEngine: "ब्रेव", + youtubeEngine: "यूट्यूब", + + // AI Tools + ai_tools: "AI उपकरणहरू", + chatGPT: "ChatGPT", + gemini: "Gemini", + copilot: "Copilot", + claude: "Claude", + perplexity: "Perplexity", + firefly: "Adobe Firefly", + metaAI: "Meta AI", + + // Wallpaper and alerts + uploadWallpaperText: "वालपेपर अपलोड गर्नुहोस्", + backupText: "ब्याकअप", + restoreText: "पुनर्स्थापना गर्नुहोस्", + rangColor: "रंग छान्नुहोस्", + + // Dialog boxes (alerts) + confirmWallpaper: + "के तपाईं दिनको लागि आफ्नो वालपेपरको रूपमा नयाँ छवि सेट गर्न चाहनुहुन्छ?", + confirmRestore: + "के तपाइँ तपाइँको सेटिङहरू रिसेट गर्न निश्चित हुनुहुन्छ? यो कार्य पुनर्स्थापना गर्न सकिँदैन।", + Nobackgroundset: "हाल कुनै पनि पृष्ठभूमि फोटो सेट गरिएको छैन।", + clearbackgroundimage: "के तपाइँ पृष्ठभूमि फोटो हटाउन निश्चित हुनुहुन्छ?", + ProxyDisclaimer: + "सबै प्रोक्सी सुविधाहरू पूर्वनिर्धारित रूपमा बन्द छन्।\n\nयदि तपाईंले खोज सुझावहरू र CORS बाइपास प्रोक्सी सक्षम गर्नुभयो भने, परिष्कृत गोपनीयताको लागि तपाईंको आफ्नै प्रोक्सी होस्ट गर्न दृढ रूपमा सिफारिस गरिन्छ।\n\nपूर्वनिर्धारित रूपमा, प्रोक्सीलाई https://mynt-proxy.rhythmcorehq.com मा सेट गरिनेछ, जसको अर्थ तपाइँको सबै डेटा यस सेवा मार्फत जानेछ, जसले गोपनीयता चिन्ताहरू खडा गर्न सक्छ।", + failedbackup: "ब्याकअप असफल भयो: ", + restorecompleted: "पुनर्स्थापना सफलतापूर्वक सम्पन्न भयो!", + restorefailed: "ब्याकअप असफल भयो: ", + invalidBackup: "अवैध ब्याकअप फाइल", + deleteBookmark: "के तपाइँ निश्चित रूपमा बुकमार्क मेटाउन चाहनुहुन्छ?", + UnsupportedBrowser: "बुकमार्कहरू तपाईंको ब्राउजरमा समर्थित छैनन्", +}; diff --git a/dist/locales/pt.js b/dist/locales/pt.js new file mode 100644 index 00000000..f3f61fef --- /dev/null +++ b/dist/locales/pt.js @@ -0,0 +1,139 @@ +// Portuguese (Brazil) +const pt = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Redefinir Configurações", + "menuCloseText": "Fechar", + + // Shortcuts + "shortcutsText": "Atalhos", + "enableShortcutsText": "Mostrar atalhos salvos", + "editShortcutsText": "Editar Atalhos", + "shortcutsInfoText": "Escolha quais atalhos serão exibidos", + "editShortcutsList": "Atalhos Salvos", + "editShortcutsListInfo": "Você pode adicionar novos atalhos clicando no ícone \"+\" ou editar os existentes clicando no nome ou URL do atalho", + "adaptiveIconText": "Ícones Adaptativos", + "adaptiveIconInfoText": "Os ícones de atalho aparecerão redondos", + "bookmarksText": "Favoritos", + "bookmarksInfo": "Mostrar barra lateral de favoritos", + "ai_tools_button": "Ferramentas de IA", + "enable_ai_tools": "Mostrar atalhos para ferramentas de IA", + "googleAppsMenuText": "Apps Google", + "googleAppsMenuInfo": "Mostrar atalhos para Apps Google", + "googleAppsHover": "Apps do Google", + + // To-do List + "todoListText": "Lista de Tarefas", + "todoListInfo": "Mostrar uma Lista de Tarefas", + "todoListHover": "Lista de Tarefas", + "todoPlaceholder": "Adicionar tarefa...", + + // Digital Clock + "digitalclocktittle": "Relógio Digital", + "digitalclockinfo": "Mudar para o relógio digital", + "timeformattittle": "Formato 12 Horas", + "timeformatinfo": "Usar formato de 12 horas", + "greetingtittle": "Saudação", + "greetinginfo": "Mostrar saudação abaixo do texto personalizado", + + // Misc + "userTextTitle": "Texto Personalizável", + "userTextInfo": "Mostrar texto personalizado abaixo do relógio", + "fahrenheitCelsiusCheckbox": "Mudar para Fahrenheit", + "fahrenheitCelsiusText": "Atualize a página para aplicar as mudanças", + "micIconTitle": "Ocultar Ícone do Microfone", + "micIconInfo": "Se o ditado por voz não estiver funcionando", + "hideSearchWith": "Ocultar o Motor de Busca", + "hideSearchWithInfo": "Alternar entre os motores de busca clicando no ícone", + "search_suggestions_button": "Sugestões de Pesquisa", + "search_suggestions_text": "Ativar sugestões de pesquisa", + + // Proxy + "useproxytitletext": "Bypass de Proxy", + "useproxyText": "Se as sugestões de pesquisa não estiverem funcionando", + "ProxyText": "Proxy de Bypass CORS", + "ProxySubtext": "Adicione seu próprio proxy de bypass CORS", + "HostproxyButton": "Hospede seu próprio proxy", + "saveproxy": "Salvar", + + // Location + "UserLocText": "Digite sua Localização", + "UserLocSubtext": "Se a localização do clima não estiver correta", + "userLoc": "Sua Cidade ou Coordenadas (Latitude, Longitude)", + "useGPS": "Usar GPS", + "saveLoc": "Salvar", + + // Weather + "WeatherApiText": "Digite sua chave WeatherAPI", + "WeatherApiSubtext": "Se a funcionalidade do clima não estiver funcionando", + "userAPI": "Sua chave weatherAPI", + "LearnMoreButton": "Saiba mais", + "saveAPI": "Salvar", + + // Body Items + // Calendar + "days": ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado'], + "months": ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], + + // Bookmarks + "bookmarksHeading": "Favoritos", + "bookmarkViewAs": "Visualizar como", + "bookmarkViewGrid": "Grade", + "bookmarkViewList": "Lista", + "bookmarkSearch": "Pesquisar favorito", + + // New Tab Item + "conditionText": "Olá! Como você está hoje?", + "humidityLevel": "Umidade", + "feelsLike": "Sensação de", + "location": "Terra", + "enterBtn": "Pesquisar", + "searchPlaceholder": "Digite aqui...", + "listenPlaceholder": "Ouvindo...", + "searchWithHint": "Pesquisar Com", + "userText": "Clique aqui para editar", + + // Greeting + greeting: { + "morning": "Bom dia!", + "afternoon": "Boa tarde!", + "evening": "Boa noite!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Ferramentas de IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Enviar Papel de Parede", + "backupText": "Backup", + "restoreText": "Restaurar", + "rangColor": "Escolher cor", + + // Dialog boxes (alerts) + "confirmWallpaper": "Você gostaria de definir uma nova imagem como seu papel de parede para o dia?", + "confirmRestore": "Você tem certeza de que deseja redefinir suas configurações? Esta ação não pode ser desfeita.", + "Nobackgroundset": "Nenhuma imagem de fundo está atualmente definida.", + "clearbackgroundimage": "Você tem certeza de que deseja limpar a imagem de fundo?", + "ProxyDisclaimer": "Todos os recursos de proxy estão desativados por padrão.\n\nSe você ativar sugestões de pesquisa e o proxy de contorno CORS, é altamente recomendável hospedar seu próprio proxy para maior privacidade.\n\nPor padrão, o proxy será definido como https://mynt-proxy.rhythmcorehq.com, o que significa que todos os seus dados passarão por este serviço, o que pode levantar preocupações de privacidade.", + "failedbackup": "Falha no backup: ", + "restorecompleted": "Restauração concluída com sucesso!", + "restorefailed": "Restauração falhou: ", + "invalidBackup": "Arquivo de backup inválido", + "deleteBookmark": "Você tem certeza de que deseja excluir o favorito?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/ru.js b/dist/locales/ru.js new file mode 100644 index 00000000..55c9999c --- /dev/null +++ b/dist/locales/ru.js @@ -0,0 +1,138 @@ +// Russian -> ru +const ru = { + // Menu Items + "github": "GitHub", + "feedback": "Отзывы", + "resetsettings": "Сброс настроек", + "menuCloseText": "Закрыть", + + // Shortcuts + "shortcutsText": "Ярлыки", + "enableShortcutsText": "Включить/Отключить ярлыки", + "editShortcutsText": "Редактировать ярлыки", + "shortcutsInfoText": "Выберите, какие ярлыки будут отображаться", + "editShortcutsList": "Сохранёные ярлыки", + 'editShortcutsListInfo': 'Вы можете добавить новые ярлыки нажав на "+" или отредактировать существующие, щёлкнув на ярлык или URL.', + "adaptiveIconText": "Адаптивные формы значков", + "adaptiveIconInfoText": "Ярлыки всегда будут круглыми", + "bookmarksText": "Закладки", + "bookmarksInfo": "Показать боковую панель закладок", + "ai_tools_button": "Инструменты ИИ", + "enable_ai_tools": "Включить/Отключить ярлыки ИИ", + "googleAppsMenuText": "Приложения Google", + "googleAppsMenuInfo": "Показать ярлыки для приложений Google", + "googleAppsHover": "Гугл приложения", + + // To-do List + "todoListText": "To-do лист", + "todoListInfo": "Показать ежедневный список дел", + "todoListHover": "To-do лист", + "todoPlaceholder": "Добавить задачу...", + + // Digital Clock + "digitalclocktittle": "Цифровые часы", + "digitalclockinfo": "Включить/Отключить цифровые часы", + "timeformattittle": "12-часовой формат", + "timeformatinfo": "Использовать 12-часовой формат времени", + "greetingtittle": "Приветствие", + "greetinginfo": "Показать приветствие под вашим текстом", + + // Misc + "userTextTitle": "Настраиваемый текст", + "userTextInfo": "Отображение текста под часами", + "fahrenheitCelsiusCheckbox": "Использовать Фаренгейт", + "fahrenheitCelsiusText": "Обновите страницу, чтобы применить", + "micIconTitle": "Скрыть значок микрофона", + "micIconInfo": "Если голосовой ввод не работает", + "hideSearchWith": "Скрыть поисковые системы", + "hideSearchWithInfo": "Переключайте поисковые системы, щёлкая по их значку", + "search_suggestions_button": "Поисковые подсказки", + "search_suggestions_text": "Включить/Отключить поисковые подсказки", + + // Proxy + "useproxytitletext": "Использовать прокси", + "useproxyText": "Если поисковые подсказки не работают", + "ProxyText": "CORS обход прокси", + "ProxySubtext": "Добавьте свой CORS-прокси", + "HostproxyButton": "Разместить свой прокси", + "saveproxy": "Сохранить", + + // Location + "UserLocText": "Введите ваше местоположение", + "UserLocSubtext": "Если местоположение для погоды неверно", + "userLoc": "Ваше местоположение (Город/Широта,Долгота)", + "saveLoc": "Сохранить", + + // Weather + "WeatherApiText": "Введите свой ключ WeatherAPI", + "WeatherApiSubtext": "Если функция погоды не работает", + "userAPI": "Ваш ключ WeatherAPI", + "LearnMoreButton": "Узнать больше", + "saveAPI": "Сохранить", + + // Body Items + // Calendar + "days": ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'], + "months": ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'], + + // Bookmarks + "bookmarksHeading": "Закладки", + "bookmarkViewAs": "Отображение", + "bookmarkViewGrid": "Сетка", + "bookmarkViewList": "Лист", + "bookmarkSearch": "Поиск закладки", + + // New Tab Item + "conditionText": "Привет! Как ты сегодня?", + "humidityLevel": "Влажность", + "feelsLike": "Ощущается", + "location": "Земля", + "enterBtn": "Поиск", + "searchPlaceholder": "Ваш запрос...", + "listenPlaceholder": "Слушаю...", + "searchWithHint": "Искать с", + "userText": "Нажмите здесь, чтобы редактировать", + + // Greeting + greeting: { + "morning": "Доброе утро!", + "afternoon": "Добрый день!", + "evening": "Добрый вечер!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Нейросети", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Загрузить обои", + "backupText": "Экспорт", + "restoreText": "Восстановить", + "rangColor": "Выбрать цвет", + + // Dialog boxes (alerts) + "confirmWallpaper": "Хотите установить новое изображение в качестве обоев на весь день?", + "confirmRestore": "Вы уверены, что хотите сбросить настройки? Это действие нельзя отменить.", + "Nobackgroundset": "В настоящее время обои не установлены.", + "clearbackgroundimage": "Вы уверены что хотите убрать обои?", + "ProxyDisclaimer": "По умолчанию все функции прокси отключены.\n\nЕсли вы включите поисковые предложения и прокси для обхода CORS, настоятельно рекомендуется разместить собственный прокси для повышения конфиденциальности.\n\nПо умолчанию прокси будет установлен на https://mynt-proxy.rhythmcorehq.com, то есть все ваши данные будут проходить через этот сервис, что может вызвать проблемы с конфиденциальностью.", + "failedbackup": "Резервное копирование не удалось: ", + "restorecompleted": "Восстановление настроек успешно завершено!", + "restorefailed": "Восстановление настроек не удалось: ", + "invalidBackup": "Недопустимый файл резервной копии.", + "deleteBookmark": "Вы уверены, что хотите удалить эту закладку?", + "UnsupportedBrowser": "Закладки не поддерживаются в вашем браузере.", +}; diff --git a/dist/locales/sl.js b/dist/locales/sl.js new file mode 100644 index 00000000..25b58dc1 --- /dev/null +++ b/dist/locales/sl.js @@ -0,0 +1,138 @@ +// Slovenian -> sl +const sl = { + // Menu Items + "github": "GitHub", + "feedback": "Povratne informacije", + "resetsettings": "Ponastavi nastavitve", + "menuCloseText": "Zapri", + + // Shortcuts + "shortcutsText": "Bližnjice", + "enableShortcutsText": "Prikaži shranjene bližnjice", + "editShortcutsText": "Uredi bližnjice", + "shortcutsInfoText": "Izberite, katere bližnjice bodo prikazane", + "editShortcutsList": "Shranjene bližnjice", + 'editShortcutsListInfo': 'Dodate lahko nove bližnjice s klikom na ikono "+" ali uredite obstoječe s klikom na ime bližnjice ali URL.', + "adaptiveIconText": "Prilagodljive oblike ikon", + "adaptiveIconInfoText": "Ikone bodo videti manjše", + "bookmarksText": "Zaznamki", + "bookmarksInfo": "Prikaži stransko vrstico z zaznamki", + "ai_tools_button": "AI-orodja", + "enable_ai_tools": "Prikaži bližnjice za AI orodja", + "googleAppsMenuText": "Google Aplikacije", + "googleAppsMenuInfo": "Prikaži bližnjice za Google aplikacije", + "googleAppsHover": "Google Aplikacije", + + // To-do List + "todoListText": "Seznam opravil", + "todoListInfo": "Prikaži dnevni seznam opravil", + "todoListHover": "Seznam opravil", + "todoPlaceholder": "Dodaj nalogo...", + + // Digital Clock + "digitalclocktittle": "Digitalna ura", + "digitalclockinfo": "Preklopi na digitalno uro", + "timeformattittle": "12-urni format", + "timeformatinfo": "Uporabi 12-urni časovni format", + "greetingtittle": "Pozdrav", + "greetinginfo": "Prikaži pozdrav pod prilagojenim besedilom", + + // Misc + "userTextTitle": "Uporabniško prilagodljivo besedilo", + "userTextInfo": "Prikaži uporabniško prilagodljivo besedilo pod uro", + "fahrenheitCelsiusCheckbox": "Preklopi na Fahrenheit", + "fahrenheitCelsiusText": "Osvežite stran za uveljavitev sprememb", + "micIconTitle": "Skrij ikono mikrofona", + "micIconInfo": "Če glasovno tipkanje ne deluje", + "hideSearchWith": "Skrij iskalnike", + "hideSearchWithInfo": "Preklapljajte med iskalniki s klikom na ikono", + "search_suggestions_button": "Predlogi za iskanje", + "search_suggestions_text": "Omogoči predloge za iskanje", + + // Proxy + "useproxytitletext": "Proxy obid", + "useproxyText": "Če predlogi za iskanje ne delujejo", + "ProxyText": "Proxy obid za CORS", + "ProxySubtext": "Dodajte svoj proxy obid za CORS", + "HostproxyButton": "Gostite svoj proxy", + "saveproxy": "Shrani", + + // Location + "UserLocText": "Vnesite svojo lokacijo", + "UserLocSubtext": "Če lokacija vremena ni pravilna", + "userLoc": "Vaše mesto ali koordinate (geografska širina, dolžina)", + "saveLoc": "Shrani", + + // Weather + "WeatherApiText": "Vnesite svoj WeatherAPI ključ", + "WeatherApiSubtext": "Če vremenska funkcionalnost ne deluje", + "userAPI": "Vaš WeatherAPI ključ", + "LearnMoreButton": "Izvedite več", + "saveAPI": "Shrani", + + // Body Items + // Calendar + "days": ['nedelja', 'ponedeljek', 'torek', 'sreda', 'četrtek', 'petek', 'sobota'], + "months": ['januar', 'februar', 'marec', 'april', 'maj', 'junij', 'julij', 'avgust', 'september', 'oktober', 'november', 'december'], + + // Bookmarks + "bookmarksHeading": "Zaznamki", + "bookmarkViewAs": "Prikaži kot", + "bookmarkViewGrid": "Mreža", + "bookmarkViewList": "Seznam", + "bookmarkSearch": "Išči zaznamek", + + // New Tab Item + "conditionText": "Živijo! Kako ste danes?", + "humidityLevel": "Vlažnost", + "feelsLike": "Občutek", + "location": "Zemlja", + "enterBtn": "Išči", + "searchPlaceholder": "Vnesite tukaj...", + "listenPlaceholder": "Poslušam...", + "searchWithHint": "Išči z", + "userText": "Kliknite tukaj za urejanje", + + // Greeting + greeting: { + "morning": "Dobro jutro!", + "afternoon": "Dober dan!", + "evening": "Dober večer!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI orodja", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Naloži ozadje", + "backupText": "Varnostna kopija", + "restoreText": "Obnovi", + "rangColor": "Izberi barvo", + + // Dialog boxes (alerts) + "confirmWallpaper": "Ali želite nastaviti novo sliko kot ozadje danes?", + "confirmRestore": "Ali ste prepričani, da želite ponastaviti nastavitve? To dejanje ni mogoče razveljaviti.", + "Nobackgroundset": "Trenutno ni nastavljena nobena slika za ozadje.", + "clearbackgroundimage": "Ali ste prepričani, da želite odstraniti sliko ozadja?", + "ProxyDisclaimer": "Vse funkcije proxyja so privzeto izklopljene.\n\nČe omogočite predloge za iskanje in proxy za obvoz CORS, je močno priporočljivo, da gostite svoj proxy za boljšo zasebnost.\n\nPrivzeto bo proxy nastavljen na https://mynt-proxy.rhythmcorehq.com, kar pomeni, da bodo vsi vaši podatki šli skozi to storitev, kar lahko predstavlja tveganje za zasebnost.", + "failedbackup": "Varnostna kopija ni uspela: ", + "restorecompleted": "Obnovitev je bila uspešna!", + "restorefailed": "Obnovitev ni uspela: ", + "invalidBackup": "Neveljavna datoteka za varnostno kopijo", + "deleteBookmark": "Ali ste prepričani, da želite odstraniti zaznamek?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/tr.js b/dist/locales/tr.js new file mode 100644 index 00000000..036c0cda --- /dev/null +++ b/dist/locales/tr.js @@ -0,0 +1,138 @@ +// Turkish +const tr = { + // Menu Items + "github": "GitHub", + "feedback": "Geri Bildirim", + "resetsettings": "Ayarları Sıfırla", + "menuCloseText": "Kapat", + + // Shortcuts + "shortcutsText": "Kısayollar", + "enableShortcutsText": "Kaydedilen kısayolları göster", + "editShortcutsText": "Kısayolları Düzenle", + "shortcutsInfoText": "Hangi kısayolların gösterileceğini seçin", + "editShortcutsList": "Kaydedilen Kısayollar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Uyarlanabilir İkon Şekilleri", + "adaptiveIconInfoText": "Kısayol ikonları yuvarlak görünecek", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI Araçları", + "enable_ai_tools": "AI Araçları kısayollarını göster", + "googleAppsMenuText": "Google Uygulamaları", + "googleAppsMenuInfo": "Google Uygulamaları için kısayollarını göster", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Dijital Saat", + "digitalclockinfo": "Dijital saate geçiş yap", + "timeformattittle": "12 Saat Formatı", + "timeformatinfo": "12 saat zaman formatını kullanın", + "greetingtittle": "Hoşgeldiniz", + "greetinginfo": "Özel metinin altında hoşgeldiniz mesajını göster", + + // Misc + "userTextTitle": "Özelleştirilebilir Metin", + "userTextInfo": "Saatin altında özel metin göster", + "fahrenheitCelsiusCheckbox": "Fahrenheit'a geç", + "fahrenheitCelsiusText": "Güncellemeleri görmek için sayfayı yenileyin", + "micIconTitle": "Mikrofon Simgesini Gizle", + "micIconInfo": "Eğer sesli yazma çalışmıyorsa", + // "hideSearchWith": "Arama Motorlarını Gizle", + // "hideSearchWithInfo": "İkonuna tıklayarak arama motorları arasında geçiş yapın", + "search_suggestions_button": "Arama Önerileri", + "search_suggestions_text": "Arama Önerilerini etkinleştir", + + // Proxy + "useproxytitletext": "Proxy Atlatma", + "useproxyText": "Eğer arama önerileri çalışmıyorsa", + "ProxyText": "CORS Atlatma Proxy", + "ProxySubtext": "Kendi CORS Atlatma Proxy'nizi ekleyin", + "HostproxyButton": "Kendi Proxy'nizi Barındırın", + "saveproxy": "Kaydet", + + // Location + "UserLocText": "Konumunuzu girin", + "UserLocSubtext": "Hava durumu konumu doğru değilse", + "userLoc": "Konumunuz (Şehir/Enlem,Boylam)", + "saveLoc": "Kaydet", + + // Weather + "WeatherApiText": "Kendi WeatherAPI anahtarınızı girin", + "WeatherApiSubtext": "Hava durumu işlevi çalışmıyorsa", + "userAPI": "WeatherAPI anahtarınız", + "LearnMoreButton": "Daha Fazla Bilgi Edinin", + "saveAPI": "Kaydet", + + // Body Items + // Calendar + "days": ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'], + "months": ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Merhaba! Bugün nasılsın?", + "humidityLevel": "Nem", + "feelsLike": "Hissediyor", + "location": "Dünya", + "enterBtn": "Arama Yap", + "searchPlaceholder": "Aramanız...", + "listenPlaceholder": "Dinliyor...", + "searchWithHint": "ile Ara", + "userText": "Buraya tıklayarak düzenleyin", + + // Greeting + greeting: { + "morning": "Günaydın!", + "afternoon": "İyi öğleden sonra!", + "evening": "İyi akşamlar!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Araçları", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/dist/locales/uz.js b/dist/locales/uz.js new file mode 100644 index 00000000..cb4bd976 --- /dev/null +++ b/dist/locales/uz.js @@ -0,0 +1,138 @@ +// Uzbek -> uz +const uz = { + // Menu Items + "github": "GitHub", + "feedback": "Fikr-mulohaza", + "resetsettings": "Sozlamalarni tiklash", + "menuCloseText": 'Yopish', + + // Shortcuts + "shortcutsText": "Tezkor tugmalar", + "enableShortcutsText": "Tezkor tugmalarni ko'rsatish", + "editShortcutsText": "Tezkor tugmalarni tahrirlash", + "shortcutsInfoText": "Qaysi tezkor tugmalarni ko'rsatishni tanlang", + "editShortcutsList": "Saqlangan Tezkor tugmalar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptiv ikonlar shakllari", + "adaptiveIconInfoText": "Tezkor tugmalar doimiy ravishda doiraviy bo'ladi", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI-instrumentlar", + "enable_ai_tools": "Tezkor tugmalarni ko'rsatish AI-instrumentlar", + "googleAppsMenuText": "Google Dasturlari", + "googleAppsMenuInfo": "Google Dasturlariga qisqacha havolani ko'rsating", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Digital Clock", + "digitalclockinfo": "Digital Clockga o'tish", + "timeformattittle": "12-soat format", + "timeformatinfo": "12-soat formatni qo'llang", + "greetingtittle": "Salomlashish", + "greetinginfo": "Savatchadagi text pastdagi salomlashishni ko'rsatish", + + // Misc + "userTextTitle": "Tahrirlash mumkin bo'lgan matn", + "userTextInfo": "Savatchadagi text pastdagi salomlashishni ko'rsatish", + "fahrenheitCelsiusCheckbox": "Fahrenheitga o'tish", + "fahrenheitCelsiusText": "Sahifani yangilash, o'zgarishlarni qo'llash", + "micIconTitle": "Mikrofon belgisini yashirish", + "micIconInfo": "Agar ovozli yozish ishlamasa", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Izlash tavsiyalari", + "search_suggestions_text": "Izlash tavsiyalarini yoqish", + + // Proxy + "useproxytitletext": "Proxy Bypass", + "useproxyText": "Izlash tavsiyalari ishlamaydi", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "O'zingizning CORS bypass proxyni qo'shing", + "HostproxyButton": "O'zingizning proxyni joylash", + "saveproxy": "Saqlash", + + // Location + "UserLocText": "O'zingizning joylashganligingizni kiriting", + "UserLocSubtext": "Agar havo joylashuvi noto'g'ri bo'lsa", + "userLoc": "O'zingizning shahringiz yoki koordinatalaringiz (Kenglik, Uzunlik)", + "saveLoc": "Saqlash", + + // Weather + "WeatherApiText": "O'zingizning WeatherAPI kalitini kiriting", + "WeatherApiSubtext": "Agar havo funktsiyasi ishlamaydi", + "userAPI": "O'zingizning WeatherAPI kaliti", + "LearnMoreButton": "Bilish", + "saveAPI": "Saqlash", + + // Body Items + // Calendar + "days": ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'], + "months": ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Salom! Siz bugun qanday holatdasiz?", + "humidityLevel": "Namlik", + "feelsLike": "Uxshaydi", + "location": "Yer", + "enterBtn": "Izlash", + "searchPlaceholder": "Sizning savolingiz...", + "listenPlaceholder": "Tinglayapman...", + "searchWithHint": "Bular bilan izlash", + "userText": "Buni tahrirlash", + + // Greeting + greeting: { + "morning": "Xayrli tong!", + "afternoon": "Xayrli tushlik!", + "evening": "Xayrli kech!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Texnikalar", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; \ No newline at end of file diff --git a/dist/locales/vi.js b/dist/locales/vi.js new file mode 100644 index 00000000..865fe31a --- /dev/null +++ b/dist/locales/vi.js @@ -0,0 +1,139 @@ +// Vietnamese +const vi = { + // Menu Items + "github": "GitHub", + "feedback": "Phản hồi", + "resetsettings": "Đặt lại cài đặt gốc", + "menuCloseText": "Đóng", + + // Shortcuts + "shortcutsText": "Phím tắt", + "enableShortcutsText": "Bật/tắt phím tắt", + "editShortcutsText": "Chỉnh sửa Phím tắt", + "shortcutsInfoText": "Chọn các phím tắt muốn hiển thị", + "editShortcutsList": "Chỉnh sửa danh sách Phím tắt", + "editShortcutsListInfo": "Bạn có thể thêm phím tắt mới bằng cách nhấp vào biểu tượng \"+\" hoặc chỉnh sửa phím tắt hiện có bằng cách nhấp vào tên phím tắt hoặc URL.", + "adaptiveIconText": "Hình dạng biểu tượng Thích ứng", + "adaptiveIconInfoText": "Biểu tượng phím tắt sẽ luôn là hình tròn", + "bookmarksText": "Dấu trang", + "bookmarksInfo": "Hiển thị thanh bên dấu trang", + "ai_tools_button": "Công cụ AI", + "enable_ai_tools": "Bật/tắt các phím tắt công cụ AI", + "googleAppsMenuText": "Ứng dụng Google", + "googleAppsMenuInfo": "Hiển thị các phím tắt cho Ứng dụng Google", + "googleAppsHover": "Ứng dụng Google", + + // To-do List + "todoListText": "Danh sách việc cần làm", + "todoListInfo": "Hiển thị danh sách việc cần làm hàng ngày", + "todoListHover": "Việc cần làm", + "todoPlaceholder": "Thêm nhiệm vụ...", + + // Digital Clock + "digitalclocktittle": "Đồng hồ kỹ thuật số", + "digitalclockinfo": "Bật/tắt đồng hồ Kỹ thuật số", + "timeformattittle": "Sử dụng định dạng 12 giờ", + "timeformatinfo": "Sử dụng định dạng thời gian 12 giờ", + "greetingtittle": "Lời chào", + "greetinginfo": "Hiển thị lời chào dưới văn bản tùy chỉnh", + + // Misc + "userTextTitle": "Văn bản tùy chỉnh", + "userTextInfo": "Hiển thị văn bản tùy chỉnh dưới đồng hồ", + "fahrenheitCelsiusCheckbox": "Chuyển sang Fahrenheit", + "fahrenheitCelsiusText": "Tải lại trang để thấy cập nhật", + "micIconTitle": "Ẩn biểu tượng mic", + "micIconInfo": "Nếu gõ bằng giọng nói không hoạt động", + "hideSearchWith": "Ẩn công cụ tìm kiếm", + "hideSearchWithInfo": "Chuyển đổi giữa các công cụ tìm kiếm bằng cách nhấp vào biểu tượng của nó", + "search_suggestions_button": "Gợi ý tìm kiếm", + "search_suggestions_text": "Bật/tắt gợi ý tìm kiếm", + + // Proxy + "useproxytitletext": "Bỏ qua Proxy", + "useproxyText": "Nếu gợi ý tìm kiếm không hoạt động", + "ProxyText": "Proxy bỏ qua CORS", + "ProxySubtext": "Thiết lập proxy bỏ qua CORS của bạn.", + "HostproxyButton": "Lưu trữ proxy của riêng bạn", + "saveproxy": "Lưu", + + // Location + "UserLocText": "Nhập vị trí của bạn", + "UserLocSubtext": "Nếu vị trí thời tiết không chính xác", + "userLoc": "Thành phố hoặc tọa độ của bạn (Vĩ độ, Kinh độ)", + "useGPS": "Sử dụng GPS", + "saveLoc": "Lưu", + + // Weather + "WeatherApiText": "Nhập khóa WeatherAPI của bạn", + "WeatherApiSubtext": "Nếu tính năng thời tiết không hoạt động", + "userAPI": "Khóa WeatherAPI của bạn", + "LearnMoreButton": "Tìm hiểu Thêm", + "saveAPI": "Lưu", + + // Body Items + // Calendar + "days": ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'], + "months": ['Tháng Một', 'Tháng Hai', 'Tháng Ba', 'Tháng Tư', 'Tháng Năm', 'Tháng Sáu', 'Tháng Bảy', 'Tháng Tám', 'Tháng Chín', 'Tháng Mười', 'Tháng Mười Một', 'Tháng Mười Hai'], + + // Bookmarks + "bookmarksHeading": "Dấu trang", + "bookmarkViewAs": "Dạng xem", + "bookmarkViewGrid": "Lưới", + "bookmarkViewList": "Danh sách", + "bookmarkSearch": "Tìm dấu trang", + + // New Tab Item + "conditionText": "Xin chào! Bạn cảm thấy thế nào hôm nay?", + "humidityLevel": "Độ ẩm", + "feelsLike": "Cảm giác như", + "location": "Trái Đất", + "enterBtn": "Tìm kiếm", + "searchPlaceholder": "Nhập câu hỏi của bạn...", + "listenPlaceholder": "Đang nghe...", + "searchWithHint": "Tìm kiếm Với", + "userText": "Nhấp vào đây để chỉnh sửa", + + // Greeting + greeting: { + "morning": "Chào buổi sáng!", + "afternoon": "Chào buổi chiều!", + "evening": "Chào buổi tối!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Công cụ AI", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Tải hình nền", + "backupText": "Sao lưu", + "restoreText": "Khôi phục", + "rangColor": "Chọn màu", + + // Dialog boxes (alerts) + "confirmWallpaper": "Bạn có muốn đặt một hình ảnh mới làm hình nền cho ngày không?", + "confirmRestore": "Bạn có chắc chắn muốn đặt lại cài đặt của mình không? Hành động này không thể hoàn tác.", + "Nobackgroundset": "Hiện tại chưa có hình nền nào được thiết lập.", + "clearbackgroundimage": "Bạn có chắc chắn muốn xóa hình nền không?", + "ProxyDisclaimer": "Theo mặc định, mọi tính năng của proxy đều bị tắt.\n\nNếu bạn bật gợi ý tìm kiếm và bỏ qua proxy CORS, chúng tôi khuyên bạn nên lưu trữ proxy riêng để tăng cường quyền riêng tư.\n\nTheo mặc định, proxy sẽ được đặt thành https://mynt-proxy.rhythmcorehq.com, nghĩa là mọi dữ liệu của bạn sẽ đi qua dịch vụ này, điều này có thể gây ra lo ngại về quyền riêng tư.", + "failedbackup": "Sao lưu không thành công: ", + "restorecompleted": "Đã khôi phục thành công!", + "restorefailed": "Khôi phục không thành công: ", + "invalidBackup": "Tệp sao lưu không hợp lệ", + "deleteBookmark": "Bạn có chắc chắn muốn xóa dấu trang không?", + "UnsupportedBrowser": "Dấu trang không được hỗ trợ trong trình duyệt của bạn", +}; diff --git a/dist/locales/zh.js b/dist/locales/zh.js new file mode 100644 index 00000000..9630aeaa --- /dev/null +++ b/dist/locales/zh.js @@ -0,0 +1,138 @@ +// Chinese (Simplified) -> zh +const zh = { + // Menu Items + "github": "GitHub", + "feedback": "反馈", + "resetsettings": "重置设置", + "menuCloseText": "关闭", + + // Shortcuts + "shortcutsText": "快捷方式", + "enableShortcutsText": "显示已保存的快捷方式", + "editShortcutsText": "编辑快捷方式", + "shortcutsInfoText": "选择要显示的快捷方式", + "editShortcutsList": "已保存的快捷方式", + "editShortcutsListInfo": "您可以通过单击“+”图标添加新的快捷方式,或通过单击快捷方式名称或 URL 来编辑现有快捷方式", + "adaptiveIconText": "自适应图标形状", + "adaptiveIconInfoText": "快捷方式图标将显示为圆形", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI 工具", + "enable_ai_tools": "显示 AI 工具快捷方式", + "googleAppsMenuText": "谷歌应用", + "googleAppsMenuInfo": "显示谷歌应用的快捷方式", + "googleAppsHover": "谷歌应用", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "数字时钟", + "digitalclockinfo": "切换到数字时钟", + "timeformattittle": "12 小时制", + "timeformatinfo": "使用 12 小时制时间格式", + "greetingtittle": "问候语", + "greetinginfo": "在自定义文本下显示问候语", + + // Misc + "userTextTitle": "自定义文本", + "userTextInfo": "在时钟下方显示自定义文本", + "fahrenheitCelsiusCheckbox": "切换到华氏温度", + "fahrenheitCelsiusText": "刷新页面以应用更改", + "micIconTitle": "隐藏麦克风图标", + "micIconInfo": "如果语音输入无法使用", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "搜索建议", + "search_suggestions_text": "启用搜索建议", + + // Proxy + "useproxytitletext": "代理绕过", + "useproxyText": "如果搜索建议无法正常工作", + "ProxyText": "CORS 绕过代理", + "ProxySubtext": "添加您的地址以绕过CORS限制", + "HostproxyButton": "托管您自己的代理", + "saveproxy": "保存", + + // Location + "UserLocText": "输入您的位置", + "UserLocSubtext": "如果天气位置不正确", + "userLoc": "您的城市或坐标(纬度,经度)", + "saveLoc": "保存", + + // Weather + "WeatherApiText": "输入您的 WeatherAPI 密钥", + "WeatherApiSubtext": "如果天气功能无法正常工作", + "userAPI": "您的 WeatherAPI 密钥", + "LearnMoreButton": "了解更多", + "saveAPI": "保存", + + // Body Items + // Calendar + "days": ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'], + "months": ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "你好!今天感觉怎么样?", + "humidityLevel": "湿度", + "feelsLike": "体感温度", + "location": "地球", + "enterBtn": "搜索", + "searchPlaceholder": "输入搜索内容...", + "listenPlaceholder": "正在聆听...", + "searchWithHint": "搜索引擎", + "userText": "点击这里以编辑", + + // Greeting + greeting: { + "morning": "早上好!", + "afternoon": "下午好!", + "evening": "晚上好!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI 工具", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; \ No newline at end of file diff --git a/dist/manifest(firefox).json b/dist/manifest(firefox).json new file mode 100644 index 00000000..e9fedad5 --- /dev/null +++ b/dist/manifest(firefox).json @@ -0,0 +1,27 @@ +{ + "manifest_version": 2, + "name": "Better Material You NewTab", + "version": "4.0", + "description": "A Simple New Tab (browser's home page) inspired by Google's 'Material You' design.", + "permissions": [ + "bookmarks", + "https://www.google.com/complete/search*", + "https://duckduckgo.com/ac/*", + "https://search.brave.com/api/suggest*" + ], + "background": { + "scripts": ["background.js"], + "persistent": true + }, + "icons": { + "16": "icon16.png", + "48": "icon48.png", + "128": "icon128.png" + }, + "browser_action": { + "default_icon": "icon48.png" + }, + "chrome_url_overrides": { + "newtab": "index.html" + } +} diff --git a/dist/manifest.json b/dist/manifest.json index 47ae81d9..3b4c0c56 100644 --- a/dist/manifest.json +++ b/dist/manifest.json @@ -1,21 +1,23 @@ { "manifest_version": 3, - "name": "Material You NewTab", - "version": "3.1.5", + "name": "Better Material You NewTab", + "version": "4.0.0", "description": "A Simple New Tab (browser's home page) inspired by Google's 'Material You' design.", -"permissions": [ - "webRequest" + "optional_permissions": ["bookmarks"], + "host_permissions": [ + "https://www.google.com/complete/search*", + "https://duckduckgo.com/ac/*", + "https://search.brave.com/api/suggest*" ], - "background": { - "service_worker": "background.js" - }, "icons": { - "48": "icon.png" + "16": "icon16.png", + "48": "icon48.png", + "128": "icon128.png" }, "action": { - "default_icon": "icon.png" + "default_icon": "icon48.png" }, "chrome_url_overrides": { - "newtab": "index.html" + "newtab": "index.html" } } diff --git a/dist/privacy-policy.html b/dist/privacy-policy.html new file mode 100644 index 00000000..90b82166 --- /dev/null +++ b/dist/privacy-policy.html @@ -0,0 +1,103 @@ + + + + + + + Privacy Policy for Better Material You NewTab Extension + + + + + + +
      +

      Privacy Policy for "Better Material You NewTab" Extension

      + +

      Introduction

      +

      "Better Material You NewTab" is an open-source extension designed to enhance the appearance of your browser’s + default home page and new tab. This extension was originally created as a personal project using HTML, CSS, + and JavaScript. Due to positive feedback, it was later made available on Firefox and Chrome stores.

      + +

      Community Contributions

      +

      Since its release, many talented developers have contributed to improving the extension through GitHub. These + contributors have added new features and fixed bugs, making the extension even better. Each pull request is + carefully reviewed, tested, and verified to ensure it meets our standards before merging.

      + +

      Data Collection and Permissions

      +

      This extension does not require any permissions and does not collect, store, or share any user data. Our team + has no intention to track or collect any personal information; this is a project focused solely on providing + a better browsing experience.

      + +

      About Voice Search and Microphone Permission

      +

      The extension uses the Web Speech API for voice search. When you click the microphone icon, the browser will + prompt for microphone access, which is managed entirely by the browser. The microphone is used solely for + speech-to-text functionality during searches, and you will be notified by the browser whenever the + microphone is accessed.

      + +

      Transparency and Security

      +

      While we strive to keep our code secure, we acknowledge that no project is 100% immune to potential issues. + In rare cases, unintended code or errors could be introduced through contributions. We encourage users to + review the source code directly on GitHub for peace of mind. Use this extension only when you are fully + comfortable with its contents.

      + +

      Thank You

      +

      Thank you for your trust in the "Better Material You NewTab" extension, and we hope it enhances your browsing + experience with every new tab you open!

      + +
      + + + + diff --git a/dist/scripts/README.md b/dist/scripts/README.md new file mode 100644 index 00000000..9ca80206 --- /dev/null +++ b/dist/scripts/README.md @@ -0,0 +1,23 @@ +# Contributing to the Project + +## Adding a New Feature + +1. **Create a new script file** + - Name the file appropriately to reflect the feature you're adding. For example, if your feature involves animations, the file could be named `animation-feature.js`. + - Place this new file in the `scripts` directory. + + +3. **Integrate the script into the project** + - Open `index.html` and locate the `` section. + - Add your script as follows: + ```html + + ``` + +4. **Develop your feature** + - Implement your functionality within the script. Write clean, maintainable code and follow any existing coding standards used in the project. + +--- + +## Additional Notes +Ensure you've read the [code of conduct](../CODE_OF_CONDUCT.md) and the [contributing](../CONTRIBUTING.md). diff --git a/dist/scripts/ai-tools.js b/dist/scripts/ai-tools.js new file mode 100644 index 00000000..ed284578 --- /dev/null +++ b/dist/scripts/ai-tools.js @@ -0,0 +1,86 @@ +// when User click on "AI-Tools" +const element = document.getElementById("toolsCont"); +const shortcuts = document.getElementById("shortcutsContainer"); + +function toggleShortcuts(event) { + const shortcutsCheckbox = document.getElementById("shortcutsCheckbox"); + + if (shortcutsCheckbox.selected) { + if (element.style.display === "flex") { + shortcuts.style.display = "flex"; + element.style.opacity = "0"; + element.style.gap = "0"; + element.style.transform = "translateX(-100%)"; + + setTimeout(() => { + element.style.display = "none"; + shortcuts.style.display = "flex"; + }, 500); + } else { + shortcuts.style.display = "none"; + element.style.display = "flex"; + setTimeout(() => { + element.style.opacity = "1"; + element.style.transform = "translateX(0)"; + }, 1); + setTimeout(() => { + element.style.gap = "12px"; + }, 300); + } + } else { + if (element.style.display === "flex") { + shortcuts.style.display = "none"; + element.style.opacity = "0"; + element.style.gap = "0"; + element.style.transform = "translateX(-100%)"; + setTimeout(() => { + element.style.display = "none"; + }, 500); + } else { + shortcuts.style.display = "none"; + element.style.display = "flex"; + setTimeout(() => { + element.style.opacity = "1"; + element.style.transform = "translateX(0)"; + }, 1); + setTimeout(() => { + element.style.gap = "12px"; + }, 300); + } + } + // Prevent outside click handler from triggering + if (event) event.stopPropagation(); +} + + +// Collapse when clicking outside toolsCont +document.addEventListener("click", (event) => { + if (!element.contains(event.target) && element.style.display === "flex") { + toggleShortcuts(); + } +}); + +document.getElementById("0NIHK").onclick = toggleShortcuts; + +// + + +document.addEventListener("DOMContentLoaded", function () { + const aiToolsCont = document.getElementById("aiToolsCont"); + const aiToolsCheckbox = document.getElementById("aiToolsCheckbox"); + + aiToolsCheckbox.addEventListener("change", function () { + saveCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); + if (aiToolsCheckbox.selected) { + aiToolsCont.style.display = "flex"; + saveDisplayStatus("aiToolsDisplayStatus", "flex"); + } else { + aiToolsCont.style.display = "none"; + saveDisplayStatus("aiToolsDisplayStatus", "none"); + toggleShortcuts() + } + }); + + loadCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); + loadDisplayStatus("aiToolsDisplayStatus", aiToolsCont); +}); diff --git a/dist/scripts/google-app-menu.js b/dist/scripts/google-app-menu.js new file mode 100644 index 00000000..902b22b0 --- /dev/null +++ b/dist/scripts/google-app-menu.js @@ -0,0 +1,51 @@ + +// ------------------------Google App Menu----------------------------------- +const iconContainer = document.getElementById("iconContainer"); +const googleAppsCont = document.getElementById("googleAppsCont"); + +// Toggle menu and tooltip visibility +googleAppsCont.addEventListener("click", function (event) { + const isMenuVisible = iconContainer.style.display === "grid"; + + // Toggle menu visibility + iconContainer.style.display = isMenuVisible ? "none" : "grid"; + + // Add or remove the class to hide the tooltip + if (!isMenuVisible) { + googleAppsCont.classList.add("menu-open"); // Hide tooltip + } else { + googleAppsCont.classList.remove("menu-open"); // Restore tooltip + } + + event.stopPropagation(); +}); + +// Close menu when clicking outside +document.addEventListener("click", function (event) { + const isClickInside = + iconContainer.contains(event.target) || googleAppsCont.contains(event.target); + + if (!isClickInside && iconContainer.style.display === "grid") { + iconContainer.style.display = "none"; // Hide menu + googleAppsCont.classList.remove("menu-open"); // Restore tooltip + } +}); +// ------------------------End of Google App Menu Setup----------------------------------- + +// + +document.addEventListener("DOMContentLoaded", function () { + const googleAppsCont = document.getElementById("googleAppsCont"); + loadDisplayStatus("googleAppsDisplayStatus", googleAppsCont); + + googleAppsCheckbox.addEventListener("change", function () { + saveCheckboxState("googleAppsCheckboxState", googleAppsCheckbox); + if (googleAppsCheckbox.selected) { + googleAppsCont.style.display = "flex"; + saveDisplayStatus("googleAppsDisplayStatus", "flex"); + } else { + googleAppsCont.style.display = "none"; + saveDisplayStatus("googleAppsDisplayStatus", "none"); + } + }); +}); diff --git a/dist/scripts/languages.js b/dist/scripts/languages.js new file mode 100644 index 00000000..1d3e3f4f --- /dev/null +++ b/dist/scripts/languages.js @@ -0,0 +1,295 @@ + +// Translation data +const translations = { + en: en, // English + pt: pt, // Portuguese-BR + zh: zh, // Chinese (Simplified) + hi: hi, // Hindi + hu: hu, // Hungarian + cs: cs, // Czech + it: it, // Italian + tr: tr, // Turkish + bn: bn, // Bengali + vi: vi, // Vietnamese + ru: ru, // Russian + uz: uz, // Uzbek + es: es, // Spanish + ja: ja, // Japanese + ko: ko, // Korean + idn: idn, // Indonesian + mr: mr, // Marathi + fr: fr, // French + az: az, // Azerbaijani + sl: sl, // Slovenian + np: np, // Nepali +}; + +// Define the width of the menu container for each language +const menuWidths = { + en: '400px', + pt: '470px', + bn: '416px', + uz: '455px', + vi: '445px', + cs: '452px', + es: '446px', + hi: '408px', + hu: '445px', + ja: '444px', + ru: '400px', + it: '437px', + idn: '435px', + tr: '418px', + fr: '475px', + az: '418px', + sl: '470px', + np: '430px', + // Add more languages and widths as needed +}; + +const numberMappings = { + "bn": { '0': '০', '1': '১', '2': '২', '3': '৩', '4': '৪', '5': '৫', '6': '৬', '7': '৭', '8': '৮', '9': '৯' }, + "mr": { '0': '०', '1': '१', '2': '२', '3': '३', '4': '४', '5': '५', '6': '६', '7': '७', '8': '८', '9': '९' }, + "np": { '0': '०', '1': '१', '2': '२', '3': '३', '4': '४', '5': '५', '6': '६', '7': '७', '8': '८', '9': '९' }, + // Add more languages as needed, Ensure it is supported in the fonts +}; + +function localizeNumbers(text, language) { + const map = numberMappings[language]; // Get the numeral map for the current language + + // Define languages that use a comma as the decimal separator instead of a dot + const specialDecimalLanguages = ['cs', 'it', 'pt', 'ru', 'tr', 'vi', 'uz', 'es', 'ko', 'idn', 'fr', 'az', 'sl', 'hu']; // Add more languages here as needed + + if (specialDecimalLanguages.includes(language)) { + // Replace decimal point with a comma for specific languages + text = text.replace('.', ','); + } + // Apply digit localization if the numeral map exists + if (map) { + text = text.replace(/\d/g, (digit) => map[digit] || digit); + } + return text; // Return the localized text +} + +// Function to apply the language to the page +function applyLanguage(lang) { + // Mapping of text elements and their translation keys + const translationMap = [ + 'feedback', + 'resetsettings', + 'shortcutsText', + 'enableShortcutsText', + 'editShortcutsText', + 'shortcutsInfoText', + 'editShortcutsList', + 'editShortcutsListInfo', + 'adaptiveIconText', + 'adaptiveIconInfoText', + 'ai_tools_button', + 'enable_ai_tools', + 'googleAppsMenuText', + 'googleAppsMenuInfo', + 'todoListText', + 'todoListInfo', + 'fahrenheitCelsiusCheckbox', + 'fahrenheitCelsiusText', + 'micIconTitle', + 'micIconInfo', + 'hideSearchWith', + 'hideSearchWithInfo', + 'search_suggestions_button', + 'search_suggestions_text', + 'digitalclocktittle', + 'digitalclockinfo', + 'timeformattittle', + 'timeformatinfo', + 'greetingtittle', + 'greetinginfo', + 'userTextTitle', + 'userTextInfo', + 'useproxytitletext', + 'useproxyText', + 'ProxyText', + 'ProxySubtext', + 'HostproxyButton', + 'saveproxy', + 'UserLocText', + 'UserLocSubtext', + 'useGPS', + 'saveLoc', + 'WeatherApiText', + 'WeatherApiSubtext', + 'LearnMoreButton', + 'saveAPI', + 'conditionText', + 'enterBtn', + 'searchWithHint', + 'ai_tools', + 'humidityLevel', + 'feelsLike', + 'location', + 'googleEngine', + 'duckEngine', + 'bingEngine', + 'braveEngine', + 'youtubeEngine', + 'chatGPT', + 'gemini', + 'copilot', + 'claude', + 'perplexity', + 'firefly', + 'metaAI', + 'github', + 'googleAppsHover', + 'todoListHover', + 'uploadWallpaperText', + 'backupText', + 'restoreText', + 'rangColor', + 'bookmarksText', + 'bookmarksInfo', + 'bookmarksHeading', + 'bookmarkViewAs', + 'bookmarkViewGrid', + 'bookmarkViewList', + ]; + + // Specific mapping for placeholders + const placeholderMap = [ + { id: 'userLoc', key: 'userLoc' }, + { id: 'userAPI', key: 'userAPI' }, + { id: 'searchQ', key: 'searchPlaceholder' }, + { id: 'todoInput', key: 'todoPlaceholder' }, + { id: 'bookmarkSearch', key: 'bookmarkSearch' } + ]; + + // Mapping of elements and their different translation keys + const elementsMap = [ + { id: 'todoListHeading', key: 'todoListText' }, + { id: 'googleEngineDD', key: 'googleEngine' }, + { id: 'duckEngineDD', key: 'duckEngine' }, + { id: 'bingEngineDD', key: 'bingEngine' }, + { id: 'braveEngineDD', key: 'braveEngine' }, + { id: 'youtubeEngineDD', key: 'youtubeEngine' }, + { id: 'bookmarksHover', key: 'bookmarksHeading' }, + ]; + + // Function to apply translations + function applyTranslations(items, isPlaceholder) { + items.forEach(item => { + // Get the element by its ID + const element = document.getElementById(item.id || item); + if (element) { + // Use 'key' if defined, otherwise use 'id' as the translation key + const key = item.key || item; + // Get the translation, fallback to English if not found in the current language + const translation = translations[lang]?.[key] || translations['en']?.[key]; + + // Apply the translation to either placeholder or innerText + if (isPlaceholder) { + element.placeholder = translation; + } else { + element.innerText = translation; + } + } + }); + } + + // Apply the translations + applyTranslations(placeholderMap, true); // For placeholders + applyTranslations(elementsMap, false); // For innerTexts with different IDs and keys + applyTranslations(translationMap, false); // For innerTexts with same ID and keys + + // For userText + const userTextDiv = document.getElementById('userText'); + if (translations[lang]) { + const placeholder = translations[lang]?.userText || translations['en'].userText; + userTextDiv.dataset.placeholder = placeholder; // Update the placeholder in data attribute + // Only set the text content if there's nothing in localStorage + if (!localStorage.getItem("userText")) { + userTextDiv.innerText = placeholder; + } + } + + // Update hover text for #menuCloseButton + const menuCloseButton = document.getElementById('menuCloseButton'); + if (menuCloseButton) { + const hoverText = translations[lang]?.menuCloseText || translations['en'].menuCloseText; + menuCloseButton.setAttribute('data-lang', hoverText); + } + + // Update the width of the menu container based on the language + const menuCont = document.querySelector('.menuBar .menuCont'); + if (menuCont) { + menuCont.style.width = menuWidths[lang] || menuWidths['en']; + } + + // Dynamically update the font family based on the language + const root = document.documentElement; + const commonFontStack = "'poppins', 'Poppins', sans-serif"; + if (lang === 'vi') { + root.style.setProperty('--main-font-family', `'Be Vietnam Pro', ${commonFontStack}`); + } else { + root.style.setProperty('--main-font-family', commonFontStack); + } + + // Save the selected language in localStorage + saveLanguageStatus('selectedLanguage', lang); +} + +// Detect language from navigator.language +document.getElementById('languageSelector').addEventListener('change', (event) => { + applyLanguage(event.target.value); + showDialog({ + headline: 'Language Changed', + icon: 'done', + textBtn: 'I will Refresh Later', + tonalBtn: 'OK', + formText: `The language has been changed to '${event.target.value.toUpperCase()}'. The page will refresh to apply the changes.`, + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } + }); +}); + +// Function to apply the language when the page loads +window.onload = function () { + const savedLanguage = getLanguageStatus('selectedLanguage') || 'en'; // Default language is English + if (savedLanguage) { + document.getElementById("languageSelector").value = savedLanguage; + } + applyLanguage(savedLanguage); + const savedProxy = localStorage.getItem("proxy"); + const resetproxy = document.getElementById("resetproxybtn"); + const proxyhostbtn = document.getElementById("HostproxyButton"); + const saveProxyButton = document.getElementById("saveproxybtn"); + const userProxyInput = document.getElementById("userproxy"); + const defaultProxyURL = "https://mynt-proxy.rhythmcorehq.com"; //Default proxy url + if (savedProxy && savedProxy !== defaultProxyURL) { + userProxyInput.value = savedProxy; + resetproxy.style.display = "block"; + saveProxyButton.style.display = "none"; + proxyhostbtn.textContent = "Host Your Own"; + }else{ + resetproxy.style.display = "none"; + saveProxyButton.style.removeProperty("display"); + proxyhostbtn.textContent = "Host Your Own Proxy"; + } +}; + +// Function to save the language status in localStorage +function saveLanguageStatus(key, languageStatus) { + localStorage.setItem(key, languageStatus); +} + +// Function to get the language status from localStorage +function getLanguageStatus(key) { + return localStorage.getItem(key); +} diff --git a/dist/scripts/preload.js b/dist/scripts/preload.js new file mode 100644 index 00000000..f8146ba3 --- /dev/null +++ b/dist/scripts/preload.js @@ -0,0 +1,2 @@ +// Set Loading Screen Color before Everything Loads +document.documentElement.style.setProperty('--Loading-Screen-Color',localStorage.getItem('LoadingScreenColor') || "#bbd6fd"); \ No newline at end of file diff --git a/dist/scripts/save-load-states.js b/dist/scripts/save-load-states.js new file mode 100644 index 00000000..05b46c03 --- /dev/null +++ b/dist/scripts/save-load-states.js @@ -0,0 +1,50 @@ +/* ------ Helper functions for saving and loading states ------ */ + +// Function to save checkbox state to localStorage +function saveCheckboxState(key, checkbox) { + localStorage.setItem(key, checkbox.selected ? "selected" : "unselected"); +} + +// Function to load and apply checkbox state from localStorage +function loadCheckboxState(key, checkbox) { + const savedState = localStorage.getItem(key); + checkbox.selected = savedState === "selected"; + if (key === "bookmarkGridCheckboxState") { + if (!savedState) { + bookmarkGridCheckbox.click(); + } else { + bookmarkGridCheckbox.click(); + bookmarkGridCheckbox.click(); + } + } +} + +// Function to save display status to localStorage +function saveDisplayStatus(key, displayStatus) { + localStorage.setItem(key, displayStatus); +} + +// Function to load and apply display status from localStorage +function loadDisplayStatus(key, element) { + const savedStatus = localStorage.getItem(key); + if (savedStatus === "flex") { + element.style.display = "flex"; + } else { + element.style.display = "none"; + } +} + +// Function to save activeness status to localStorage +function saveActiveStatus(key, activeStatus) { + localStorage.setItem(key, activeStatus) +} + +// Function to load and apply activeness status from localStorage +function loadActiveStatus(key, element) { + const savedStatus = localStorage.getItem(key); + if (savedStatus === "active") { + element.classList.remove("inactive"); + } else { + element.classList.add("inactive"); + } +} diff --git a/dist/src/languages.js b/dist/src/languages.js deleted file mode 100644 index 57ee5167..00000000 --- a/dist/src/languages.js +++ /dev/null @@ -1,714 +0,0 @@ -// Translation data -const translations = { - "en": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Reset Settings", - // Shortcuts - "shortcutsText": "Shortcuts", - "enableShortcutsText": "Enable/disable shortcuts", - "editShortcutsText": "Edit Shortcuts", - "editShortcutsList": "Edit Shortcuts", - "shortcutsInfoText": "Choose which shortcuts get shown", - "adaptiveIconText": "Adaptive Icon Shapes", - "adaptiveIconInfoText": "Shortcut Icons will always be round", - "ai_tools_button": "AI-Tools", - "enable_ai_tools": "Enable/disable AI Tools shortcuts", - // Digital Clock - "digitalclocktittle": "Digital Clock", - "digitalclockinfo": "Enable/disable the Digital Clock", - "timeformattittle": "Use 12h Format", - "timeformatinfo": "Use 12 hour time format", - // Misc - "fahrenheitCelsiusCheckbox": "Switch to Fahrenheit", - "fahrenheitCelsiusText": "Refresh the page to see the updates", - "search_suggestions_button": "Search Suggestions", - "search_suggestions_text": "Enable/disable Search Suggestions", - // Proxy - "useproxytitletext": "Proxy Bypass", - "useproxyText": "If search suggestions isn't working", - "ProxyText": "CORS Bypass Proxy", - "ProxySubtext": "Add your own CORS Bypass Proxy", - "HostproxyButton": "Host Your Own Proxy", - "saveproxy": "Save", - // Location - "UserLocText": "Enter your location", - "UserLocSubtext": "If the weather location isn't correct", - "userLoc": "Your location (City/Latitude,Longitude)", - "InputOptionsButton": "Input Options", - "saveLoc": "Save", - // Weather - "WeatherApiText": "Enter your own WeatherAPI key", - "WeatherApiSubtext": "If the weather functionality isn't working", - "userAPI": "Your weatherAPI key", - "LearnMoreButton": "Learn More", - "saveAPI": "Save", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], - "months": ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], - // End of Calendar - - // Weather - "humidityText": "Humidity", - "feelsLike": "Feels", - "location": "Earth", - // End of Weather - - // New Tab Item - "conditionText": "Hello! How are you today?", - "enterBtn": "Search", - "searchPlaceholder": "Your query...", - "searchWithHint": "Search With", - "ai_tools": "AI Tools", - "userText": "Double tap to edit", - // End of Body and New Tab Items - - // toDo for "menuCloseButton:hover::after": "Close", - }, - - // Portuguese - // Machine translated some elements, please verify and delete this comment - "pt": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Redefinir Configurações", - // Shortcuts - "shortcutsText": "Atalhos", - "enableShortcutsText": "Ativar/desativar atalhos", - "editShortcutsText": "Editar Atalhos", - "editShortcutsList": "Editar Atalhos", - "shortcutsInfoText": "Escolha quais atalhos serão exibidos", - "adaptiveIconText": "Formas de Ícone Adaptativo", - "adaptiveIconInfoText": "Os ícones de atalhos serão sempre redondos", - "ai_tools_button": "Ferramentas de IA", - "enable_ai_tools": "Ativar/desativar atalhos de ferramentas de IA", - // Digital Clock - "digitalclocktittle": "Relógio Digital", - "digitalclockinfo": "Ativar/desativar o Relógio Digital", - "timeformattittle": "Usar Formato de 12h", - "timeformatinfo": "Usar formato de hora de 12 horas", - // Misc - "fahrenheitCelsiusCheckbox": "Alternar para Fahrenheit", - "fahrenheitCelsiusText": "Atualize a página para ver as atualizações", - "search_suggestions_button": "Sugestões de Pesquisa", - "search_suggestions_text": "Ativar/desativar Sugestões de Pesquisa", - // Proxy - "useproxytitletext": "Bypass de Proxy", - "useproxyText": "Se as sugestões de pesquisa não estiverem funcionando", - "ProxyText": "Proxy de Bypass CORS", - "ProxySubtext": "Adicione seu próprio Proxy de Bypass CORS", - "HostproxyButton": "Hospede Seu Próprio Proxy", - "saveproxy": "Salvar", - // Location - "UserLocText": "Insira sua localização", - "UserLocSubtext": "Se a localização do clima não estiver correta", - "userLoc": "Sua localização (Cidade/Aletitude,Longitude)", - "InputOptionsButton": "Opções de Entrada", - "saveLoc": "Salvar", - // Weather - "WeatherApiText": "Insira sua própria chave da API de Clima", - "WeatherApiSubtext": "Se a funcionalidade do clima não estiver funcionando", - "userAPI": "Sua chave da WeatherAPI", - "LearnMoreButton": "Saiba Mais", - "saveAPI": "Salvar API", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado'], - "months": ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], - // End of Calendar - - // Weather - "humidityText": "Umidade", - "feelsLike": "Sensação de", - "location": "Terra", - // End of Weather - - // New Tab Item - "conditionText": "Olá! Como você está hoje?", - "enterBtn": "Entrar", - "searchPlaceholder": "Digite sua consulta...", - "searchWithHint": "Pesquisar Com", - "ai_tools": "Ferramentas de IA", - "userText": "Toque duas vezes para editar", - // End of Body and New Tab Items -}, - - // Chinese - // Machine translated some elements, please verify and delete this comment - "zh": { - // Menu Items - "feedback": "反馈", - "resetsettings": "重置设置", - // Shortcuts - "shortcutsText": "快捷方式", - "enableShortcutsText": "启用/禁用快捷方式", - "editShortcutsText": "编辑快捷方式", - "editShortcutsList": "编辑快捷方式", - "shortcutsInfoText": "选择要显示的快捷方式", - "adaptiveIconText": "自适应图标形状", - "adaptiveIconInfoText": "快捷方式图标将始终为圆形", - "ai_tools_button": "AI工具", - "enable_ai_tools": "启用/禁用AI工具快捷方式", - // Digital Clock - "digitalclocktittle": "数字时钟", - "digitalclockinfo": "启用/禁用数字时钟", - "timeformattittle": "使用12小时格式", - "timeformatinfo": "使用12小时制时间格式", - // Misc - "fahrenheitCelsiusCheckbox": "切换到华氏温度", - "fahrenheitCelsiusText": "刷新页面以查看更新", - "search_suggestions_button": "搜索建议", - "search_suggestions_text": "启用/禁用搜索建议", - // Proxy - "useproxytitletext": "代理绕过", - "useproxyText": "如果搜索建议无法正常工作", - "ProxyText": "CORS绕过代理", - "ProxySubtext": "添加您自己的CORS绕过代理", - "HostproxyButton": "托管您自己的代理", - "saveproxy": "保存", - // Location - "UserLocText": "输入您的位置", - "UserLocSubtext": "如果天气位置不正确", - "userLoc": "您的位置(城市/纬度,经度)", - "InputOptionsButton": "输入选项", - "saveLoc": "保存", - // Weather - "WeatherApiText": "输入您自己的天气API密钥", - "WeatherApiSubtext": "如果天气功能无法正常工作", - "userAPI": "您的天气API密钥", - "LearnMoreButton": "了解更多", - "saveAPI": "保存API", - // End of Menu Items - - // Body Items - // Calendar - "days": ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'], - "months": ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], - // End of Calendar - - // Weather - "humidityText": "湿度", - "feelsLike": "体感温度", - "location": "地球", - // End of Weather - - // New Tab Item - "conditionText": "你好!今天怎么样?", - "enterBtn": "输入", - "searchPlaceholder": "输入搜索内容...", - "searchWithHint": "搜索引擎", - "ai_tools": "AI工具", - "userText": "双击可编辑", - // End of Body and New Tab Items -}, - - // Hindi - "hi": { - // Menu Items - "feedback": "प्रतिक्रिया", - "resetsettings": "सेटिंग्स रीसेट करें", - // later ----> "menuCloseButton:hover::after": "बंद करें", - // Shortcuts - "shortcutsText": "शॉर्टकट्स", - "enableShortcutsText": "शॉर्टकट्स सक्षम/अक्षम करें", - "editShortcutsText": "शॉर्टकट्स संपादित करें", - "editShortcutsList": "शॉर्टकट्स संपादित करें", - "shortcutsInfoText": "कौन से शॉर्टकट्स दिखाए जाएँ, चुनें", - "adaptiveIconText": "अनुकूल आइकन आकृतियाँ", - "adaptiveIconInfoText": "शॉर्टकट आइकन हमेशा गोल होंगे", - "ai_tools_button": "AI-उपकरण", - "enable_ai_tools": "AI उपकरणों के शॉर्टकट्स सक्षम/अक्षम करें", - // Digital Clock - "digitalclocktittle": "डिजिटल घड़ी", - "digitalclockinfo": "डिजिटल घड़ी को सक्षम/अक्षम करें", - "timeformattittle": "12 घंटे का प्रारूप उपयोग करें", - "timeformatinfo": "12 घंटे का समय प्रारूप उपयोग करें", - // Misc - "fahrenheitCelsiusCheckbox": "तापमान फारेनहाइट में बदलें", - "fahrenheitCelsiusText": "बदलाव के लिए पृष्ठ को रीफ्रेश करें", - "search_suggestions_button": "खोज सुझाव", - "search_suggestions_text": "खोज सुझाव सक्षम/अक्षम करें", - // Proxy - "useproxytitletext": "प्रॉक्सी बायपास", - "useproxyText": "यदि खोज सुझाव काम नहीं कर रहे हैं", - "ProxyText": "CORS बायपास प्रॉक्सी", - "ProxySubtext": "अपना CORS बायपास प्रॉक्सी जोड़ें", - "HostproxyButton": "अपना प्रॉक्सी संचालित करें", - "saveproxy": "दर्ज करें", - // Location - "UserLocText": "अपना स्थान दर्ज करें", - "UserLocSubtext": "यदि मौसम स्थान सटीक नहीं है", - "userLoc": "आपका स्थान (शहर/अक्षांश,देशांतर)", - "InputOptionsButton": "इनपुट विकल्प", - "saveLoc": "दर्ज करें", - // Weather - "WeatherApiText": "अपनी खुद की WeatherAPI कुंजी दर्ज करें", - "WeatherApiSubtext": "यदि मौसम सुविधा काम नहीं कर रही है", - "userAPI": "आपकी WeatherAPI कुंजी", - "LearnMoreButton": "और जानें", - "saveAPI": "दर्ज करें", - // End of Menu Items - - // Body Items - // Calendar - "days": ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display - // "days": ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full - "months": ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवंबर', 'दिसंबर'], - // "months": ['जन', 'फर', 'मार्च', 'अप्र', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'], // Truncated - - // Weather - "humidityText": "नमी", - "feelsLike": "महसूस", - "location": "पृथ्वी", - // End of Weather - - // New Tab Item - "conditionText": "नमस्ते! आप आज कैसे हैं?", - "enterBtn": "सर्च करें", - "searchPlaceholder": "यहाँ लिखें...", - "searchWithHint": "खोज माध्यम", - "ai_tools": "AI उपकरण", - "userText": "यहाँ अपना टेक्स्ट लिखें", - // End of Body and New Tab Items - }, - - // Czech - "cs": { - // Menu Items - "feedback": "Zpětná vazba", - "resetsettings": "Resetovat nastavení", - // Shortcuts - "shortcutsText": "Zkratky", - "enableShortcutsText": "Povolí/zakáže zkratky", - "editShortcutsText": "Upravit zkratky", - "editShortcutsList": "Upravit zkratky", - "shortcutsInfoText": "Vyberte, které zkratky se mají zobrazit", - "adaptiveIconText": "Adaptivní tvary ikon", - "adaptiveIconInfoText": "Ikony zkratek budou vždy kulaté", - "ai_tools_button": "AI nástroje", - "enable_ai_tools": "Povolí/zakáže zkratky AI nástrojů", - // Digital Clock - "digitalclocktittle": "Digitální hodiny", - "digitalclockinfo": "Povolí/zakáže digitální hodiny", - "timeformattittle": "Použít 12hodinový formát", - "timeformatinfo": "Použije 12hodinový formát času", - // Misc - "fahrenheitCelsiusCheckbox": "Přepnout na stupně Fahrenheita", - "fahrenheitCelsiusText": "Změny se projeví po obnovení stránky", - "search_suggestions_button": "Návrhy vyhledávání", - "search_suggestions_text": "Povolí/zakáže návrhy vyhledávání", - // Proxy - "useproxytitletext": "Obcházení proxy", - "useproxyText": "Pokud nefungují návrhy vyhledávání", - "ProxyText": "Proxy pro obcházení CORS", - "ProxySubtext": "Přidejte vlastní proxy pro obcházení CORS", - "HostproxyButton": "Provozování vlastní proxy", - "saveproxy": "Uložit", - // Location - "UserLocText": "Zadejte svou polohu", - "UserLocSubtext": "Pokud není poloha počasí správná", - "userLoc": "Vaše poloha (město / zeměpisná šířka, zeměpisná délka)", - "InputOptionsButton": "Co lze zadat", - "saveLoc": "Uložit", - // Weather - "WeatherApiText": "Zadejte svůj klíč k WeatherAPI", - "WeatherApiSubtext": "Pokud nefunguje funkce počasí", - "userAPI": "Váš klíč k WeatherAPI", - "LearnMoreButton": "Zjistit více", - "saveAPI": "Uložit", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota'], - "months": ['Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec'], - // End of Calendar - - // Weather - "humidityText": "Vlhkost", - "feelsLike": "Pocitová teplota", - "location": "Země", - // End of Weather - - // New Tab Item - "conditionText": "Dobrý den! Jak se máte?", - "enterBtn": "Vyhledat", - "searchPlaceholder": "Zadejte hledaný výraz...", - "searchWithHint": "Vyhledávat prostřednictvím", - "ai_tools": "AI nástroje", - "userText": "Upravíte dvojklikem", - // End of Body and New Tab Items -}, - - // Italian - // Machine translated some elements, please verify and delete this comment - "it": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Reimposta Impostazioni", - // Shortcuts - "shortcutsText": "Scorciatoie", - "enableShortcutsText": "Abilita/disabilita scorciatoie", - "editShortcutsText": "Modifica Scorciatoie", - "editShortcutsList": "Modifica Scorciatoie", - "shortcutsInfoText": "Scegli quali scorciatoie mostrare", - "adaptiveIconText": "Forme di Icona Adattiva", - "adaptiveIconInfoText": "Le icone delle scorciatoie saranno sempre rotonde", - "ai_tools_button": "Strumenti AI", - "enable_ai_tools": "Abilita/disabilita scorciatoie Strumenti AI", - // Digital Clock - "digitalclocktittle": "Orologio Digitale", - "digitalclockinfo": "Abilita/disabilita Orologio Digitale", - "timeformattittle": "Usa formato 12h", - "timeformatinfo": "Usa formato orario a 12 ore", - // Misc - "fahrenheitCelciusCheckbox": "Passa a Fahrenheit", - "fahrenheitCelciusText": "Ricarica la pagina per vedere gli aggiornamenti", - "search_suggestions_button": "Suggerimenti di Ricerca", - "search_suggestions_text": "Abilita/disabilita Suggerimenti di Ricerca", - // Proxy - "useproxytitletext": "Bypass Proxy", - "useproxyText": "Se i suggerimenti di ricerca non funzionano", - "ProxyText": "Proxy di Bypass CORS", - "ProxySubtext": "Aggiungi il tuo Proxy di Bypass CORS", - "HostproxyButton": "Hosta il Tuo Proxy", - "saveproxy": "Invia", - // Location - "UserLocText": "Inserisci la tua posizione", - "UserLocSubtext": "Se la posizione meteo non è corretta", - "userLoc": "La tua posizione (Città/Latitudine,Longitudine)", - "InputOptionsButton": "Opzioni di Inserimento", - "saveLoc": "Invia", - // Weather - "WeatherApiText": "Inserisci la tua chiave WeatherAPI", - "WeatherApiSubtext": "Se la funzionalità meteo non funziona", - "userAPI": "La tua chiave WeatherAPI", - "LearnMoreButton": "Scopri di più", - "saveAPI": "Invia", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], - "months": ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'], - // End of Calendar - - // Weather - "humidityText": "Umidità", - "feelsLike": "Percepito", - "location": "Terra", - // End of Weather - - // New Tab Item - "conditionText": "Ciao! Come stai oggi?", - "enterBtn": "Invia", - "searchPlaceholder": "Cerca...", - "searchWithHint": "Cerca con", - "ai_tools": "Strumenti AI", - "userText": "Clicca per modificare", - // End of Body and New Tab Items -}, - - // Turkish - // Machine translated some elements, please verify and delete this commenty - "tr": { - // Menu Items - "feedback": "Geri Bildirim", - "resetsettings": "Ayarları Sıfırla", - // Shortcuts - "shortcutsText": "Kısayollar", - "enableShortcutsText": "Kısayolları etkinleştir/devre dışı bırak", - "editShortcutsText": "Kısayolları Düzenle", - "editShortcutsList": "Kısayolları Düzenle", - "shortcutsInfoText": "Hangi kısayolların gösterileceğini seçin", - "adaptiveIconText": "Uyarlanabilir İkon Şekilleri", - "adaptiveIconInfoText": "Kısayol İkonları her zaman yuvarlak olacak", - "ai_tools_button": "AI Araçları", - "enable_ai_tools": "AI Araçları kısayollarını etkinleştir/devre dışı bırak", - // Digital Clock - "digitalclocktittle": "Dijital Saat", - "digitalclockinfo": "Dijital Saati etkinleştir/devre dışı bırak", - "timeformattittle": "12 saat Formatını Kullanın", - "timeformatinfo": "12 saat zaman formatını kullanın", - // Misc - "fahrenheitCelsiusCheckbox": "Fahrenheit'a geç", - "fahrenheitCelsiusText": "Güncellemeleri görmek için sayfayı yenileyin", - "search_suggestions_button": "Arama Önerileri", - "search_suggestions_text": "Arama Önerilerini etkinleştir/devre dışı bırak", - // Proxy - "useproxytitletext": "Proxy Atlatma", - "useproxyText": "Eğer arama önerileri çalışmıyorsa", - "ProxyText": "CORS Atlatma Proxy", - "ProxySubtext": "Kendi CORS Atlatma Proxy'nizi ekleyin", - "HostproxyButton": "Kendi Proxy'nizi Barındırın", - "saveproxy": "Gönder", - // Location - "UserLocText": "Konumunuzu girin", - "UserLocSubtext": "Hava durumu konumu doğru değilse", - "userLoc": "Konumunuz (Şehir/Enlem,Boylam)", - "InputOptionsButton": "Girdi Seçenekleri", - "saveLoc": "Gönder", - // Weather - "WeatherApiText": "Kendi Hava Durumu API anahtarınızı girin", - "WeatherApiSubtext": "Hava durumu işlevi çalışmıyorsa", - "userAPI": "Hava Durumu API anahtarınız", - "LearnMoreButton": "Daha Fazla Bilgi Edinin", - "saveAPI": "API'yi Kaydet", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'], - "months": ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'], - // End of Calendar - - // Weather - "humidityText": "Nem", - "feelsLike": "Hissedilen", - "location": "Dünya", - // End of Weather - - // New Tab Item - "conditionText": "Merhaba! Bugün nasılsın?", - "enterBtn": "Gönder", - "searchPlaceholder": "Aramanız...", - "searchWithHint": "ile Ara", - "ai_tools": "AI Araçları", - "userText": "Düzenlemek için çift dokunun", - // End of Body and New Tab Items -}, - - // Bengali - "bn": { - // Menu Items - "feedback": "প্রতিক্রিয়া", - "resetsettings": "সেটিংস রিসেট করুন", - // later ----> "menuCloseButton:hover::after": "বন্ধ করুন", - // Shortcuts - "shortcutsText": "শর্টকাট", - "enableShortcutsText": "শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন", - "editShortcutsText": "শর্টকাট সম্পাদনা করুন", - "editShortcutsList": "শর্টকাট সম্পাদনা তালিকা", - "shortcutsInfoText": "যেসব শর্টকাট প্রদর্শিত হবে তা নির্বাচন করুন", - "adaptiveIconText": "অ্যাডাপ্টিভ আইকন আকার", - "adaptiveIconInfoText": "শর্টকাট আইকন সর্বদা গোলাকার থাকবে", - "ai_tools_button": "AI সরঞ্জাম", - "enable_ai_tools": "AI সরঞ্জাম শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন", - // Digital Clock - "digitalclocktittle": "ডিজিটাল ঘড়ি", - "digitalclockinfo": "ডিজিটাল ঘড়ি সক্রিয়/নিষ্ক্রিয় করুন", - "timeformattittle": "১২ ঘণ্টার ফরম্যাট ব্যবহার করুন", - "timeformatinfo": "১২ ঘণ্টার সময় ফরম্যাট ব্যবহার করুন", - // Misc - "fahrenheitCelsiusCheckbox": "ফারেনহাইটে পরিবর্তন করুন", - "fahrenheitCelsiusText": "আপডেট দেখতে পৃষ্ঠা রিফ্রেশ করুন", - "search_suggestions_button": "অনুসন্ধানের পরামর্শ", - "search_suggestions_text": "অনুসন্ধানের পরামর্শ সক্রিয়/নিষ্ক্রিয় করুন", - // Proxy - "useproxytitletext": "প্রক্সি বাইপাস", - "useproxyText": "যদি অনুসন্ধানের পরামর্শ কাজ না করে", - "ProxyText": "CORS বাইপাস প্রক্সি", - "ProxySubtext": "আপনার নিজের CORS বাইপাস প্রক্সি যোগ করুন", - "HostproxyButton": "আপনার নিজের প্রক্সি হোস্ট করুন", - "saveproxy": "প্রবেশ করুন", - // Location - "UserLocText": "আপনার অবস্থান লিখুন", - "UserLocSubtext": "যদি আবহাওয়ার অবস্থান সঠিক না হয়", - "userLoc": "আপনার অবস্থান (শহর/অক্ষাংশ,দ্রাঘিমাংশ)", - "InputOptionsButton": "ইনপুট অপশন", - "saveLoc": "প্রবেশ করুন", - // Weather - "WeatherApiText": "আপনার নিজস্ব WeatherAPI কী লিখুন", - "WeatherApiSubtext": "যদি আবহাওয়া ফিচার কাজ না করে", - "userAPI": "আপনার WeatherAPI কী", - "LearnMoreButton": "আরও জানুন", - "saveAPI": "প্রবেশ করুন", - // End of Menu Items - - // Body Items - // Calendar - "days": ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'], // Truncated for display - //"days": ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'], // Full - "months": ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'], - // "months": ['জানু', 'ফেব', 'মার্চ', 'এপ্রি', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ', 'অক্টো', 'নভে', 'ডিসে'], // Truncated - // End of Calendar - - // Weather - "humidityText": "আর্দ্রতা", - "feelsLike": "অনুভূত হয়", - "location": "পৃথিবী", - // End of Weather - - // New Tab Item - "conditionText": "হ্যালো! আপনি আজ কেমন আছেন?", - "enterBtn": "প্রবেশ করুন", - "searchPlaceholder": "আপনার প্রশ্ন লিখুন...", - "searchWithHint": "অনুসন্ধান করুন", - "ai_tools": "AI সরঞ্জাম", - "userText": "সম্পাদনা করতে ডবল ট্যাপ করুন", - // End of Body and New Tab Items - }, - - // Russian -"ru": { - // Menu Items - "feedback": "Обратная связь", - "resetsettings": "Сброс настроек", - // Shortcuts - "shortcutsText": "Ярлыки", - "enableShortcutsText": "Включить/Отключить ярлыки", - "editShortcutsText": "Редактировать ярлыки", - "editShortcutsList": "Редактировать ярлыки", - "shortcutsInfoText": "Выберите, какие ярлыки будут отображаться", - "adaptiveIconText": "Адаптивные формы значков", - "adaptiveIconInfoText": "Ярлыки всегда будут круглыми", - "ai_tools_button": "Инструменты ИИ", - "enable_ai_tools": "Включить/Отключить ярлыки инструментов ИИ", - // Digital Clock - "digitalclocktittle": "Цифровые часы", - "digitalclockinfo": "Включить/Отключить цифровые часы", - "timeformattittle": "12-часовой формат", - "timeformatinfo": "Использовать 12-часовой формат времени", - // Misc - "fahrenheitCelsiusCheckbox": "Переключить на Фаренгейт", - "fahrenheitCelsiusText": "Обновите страницу, чтобы увидеть изменения", - "search_suggestions_button": "Поисковые подсказки", - "search_suggestions_text": "Включить/Отключить поисковые подсказки", - // Proxy - "useproxytitletext": "Использовать прокси", - "useproxyText": "Если поисковые подсказки не работают", - "ProxyText": "CORS обход прокси", - "ProxySubtext": "Добавьте свой CORS-прокси", - "HostproxyButton": "Разместить свой прокси", - "saveproxy": "Применить", - // Location - "UserLocText": "Введите ваше местоположение", - "UserLocSubtext": "Если местоположение для погоды неверно", - "userLoc": "Ваше местоположение (Город/Широта,Долгота)", - "InputOptionsButton": "Опции ввода", - "saveLoc": "Применить", - // Weather - "WeatherApiText": "Введите свой ключ WeatherAPI", - "WeatherApiSubtext": "Если функция погоды не работает", - "userAPI": "Ваш ключ WeatherAPI", - "LearnMoreButton": "Узнать больше", - "saveAPI": "Применить", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'], - "months": ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'], - // End of Calendar - - // Weather - "humidityText": "Влажность", - "feelsLike": "Ощущается как", - "location": "Земля", - // End of Weather - - // New Tab Item - "conditionText": "Привет! Как ты сегодня?", - "enterBtn": "Ввод", - "searchPlaceholder": "Ваш запрос...", - "searchWithHint": "Искать с помощью", - "ai_tools": "Инструменты ИИ", - "userText": "Дважды нажмите для редактирования", - // End of Body and New Tab Items -} -}; - -// Function to apply the language to the page -function applyLanguage(lang) { - if (translations[lang]) { - // Menu Items - document.getElementById('feedbackbtntext').innerText = translations[lang].feedback; - document.getElementById('resetsettingstext').innerText = translations[lang].resetsettings; - document.getElementById('shortcutsText').innerText = translations[lang].shortcutsText; - document.getElementById('enableShortcutsText').innerText = translations[lang].enableShortcutsText; - document.getElementById('editShortcutsText').innerText = translations[lang].editShortcutsText; - document.getElementById('editShortcutsList').innerText = translations[lang].editShortcutsList; - document.getElementById('shortcutsInfoText').innerText = translations[lang].shortcutsInfoText; - document.getElementById('adaptiveIconText').innerText = translations[lang].adaptiveIconText; - document.getElementById('adaptiveIconInfoText').innerText = translations[lang].adaptiveIconInfoText; - document.getElementById('ai_tools_button').innerText = translations[lang].ai_tools_button; - document.getElementById('enable_ai_tools').innerText = translations[lang].enable_ai_tools; - document.getElementById('fahrenheitCelsiusCheckbox').innerText = translations[lang].fahrenheitCelsiusCheckbox; - document.getElementById('fahrenheitCelsiusText').innerText = translations[lang].fahrenheitCelsiusText; - document.getElementById('search_suggestions_button').innerText = translations[lang].search_suggestions_button; - document.getElementById('search_suggestions_text').innerText = translations[lang].search_suggestions_text; - - // Clock - document.getElementById('digitalclocktittle').innerText = translations[lang].digitalclocktittle; - document.getElementById('digitalclockinfo').innerText = translations[lang].digitalclockinfo; - document.getElementById('timeformattittle').innerText = translations[lang].timeformattittle; - document.getElementById('timeformatinfo').innerText = translations[lang].timeformatinfo; - - // Proxy - document.getElementById('useproxytitletext').innerText = translations[lang].useproxytitletext; - document.getElementById('useproxyText').innerText = translations[lang].useproxyText; - document.getElementById('ProxySubtext').innerText = translations[lang].ProxySubtext; - document.getElementById('HostproxyButton').innerText = translations[lang].HostproxyButton; - document.getElementById('saveproxy').innerText = translations[lang].saveproxy; - - // Weather - document.getElementById('UserLocSubtext').innerText = translations[lang].UserLocSubtext; - document.getElementById('userLoc').placeholder = translations[lang].userLoc; - document.getElementById('InputOptionsButton').innerText = translations[lang].InputOptionsButton; - document.getElementById('saveLoc').innerText = translations[lang].saveLoc; - document.getElementById('WeatherApiSubtext').innerText = translations[lang].WeatherApiSubtext; - document.getElementById('userAPI').placeholder = translations[lang].userAPI; - document.getElementById('LearnMoreButton').innerText = translations[lang].LearnMoreButton; - document.getElementById('saveAPI').innerText = translations[lang].saveAPI; - - // End of Menu Items - - // Body Items - document.getElementById('conditionText').innerText = translations[lang].conditionText; - document.getElementById('enterBtn').innerText = translations[lang].enterBtn; - document.getElementById('searchQ').placeholder = translations[lang].searchPlaceholder; - document.getElementById('searchWithHint').innerText = translations[lang].searchWithHint; - document.getElementById('ai_tools').innerText = translations[lang].ai_tools; - document.getElementById('userTextt').placeholder = translations[lang].userText; - - // Weather - document.getElementById("humidityLevel").innerText = translations[lang].humidityText; - document.getElementById("feelsLike").innerText = translations[lang].feelsLike; - document.getElementById("location").innerText = translations[lang].location; - - // End of Body Items*/ - - // Save the selected language in localStorage - saveLanguageStatus('selectedLanguage', lang); - } else { - console.error('Language not found'); - } -} -// Detect language from navigator.language -document.getElementById('languageSelector').addEventListener('change', (event) => { - applyLanguage(event.target.value); - location.reload(); -}); -// Function to apply the language when the page loads -window.onload = function () { - const savedLanguage = getLanguageStatus('selectedLanguage') || 'en'; // Default language is English - if (savedLanguage) { - document.getElementById("languageSelector").value = savedLanguage; - } - applyLanguage(savedLanguage); -}; - -// Function to save the language status in localStorage -function saveLanguageStatus(key, languageStatus) { - localStorage.setItem(key, languageStatus); -} -// Function to get the language status from localStorage -function getLanguageStatus(key) { - return localStorage.getItem(key); -} -export default translations; \ No newline at end of file diff --git a/dist/styles.css b/dist/styles.css index c24fb86a..1cf3c676 100644 --- a/dist/styles.css +++ b/dist/styles.css @@ -1 +1 @@ -@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1";@font-face{font-family:poppins;src:url(/Poppins-Regular.ttf) format("truetype")}*{box-sizing:border-box}:root{font-family:poppins,Poppins,sans-serif;--bg-color-blue: #BBD6FD;--accentLightTint-blue: #E2EEFF;--darkerColor-blue: #3569b2;--darkColor-blue: #4382EC;--tonebtn-blue: #2c74f1cf;--textColorDark-blue: #1b3041;--bg-color-red: #FDBDBD;--accentLightTint-red: #ffe7e7;--darkerColor-red: #B23535;--darkColor-red: #EC4343;--tonebtn-red: #f12c2cc4;--textColorDark-red: #411B1B;--bg-color-yellow: #edea8c;--accentLightTint-yellow: #fff2c2;--darkerColor-yellow: #CCA243;--darkColor-yellow: #f4d837;--tonebtn-yellow: #f1e12cbc;--textColorDark-yellow: #5B5428;--bg-color-green: #C7E4C7;--accentLightTint-green: #E1F1E1;--darkerColor-green: #458245;--darkColor-green: #5CBA5C;--tonebtn-green: #39e417b1;--textColorDark-green: #1B411B;--bg-color-cyan: #9bffff;--accentLightTint-cyan: #d5ffff;--darkerColor-cyan: #5E9CA0;--darkColor-cyan: #00CED1;--tonebtn-cyan: #2cbcf1bf;--textColorDark-cyan: #08354B;--bg-color-pink: #F9C8D6;--accentLightTint-pink: #FFEBF2;--darkerColor-pink: #B24B64;--darkColor-pink: #EC5E78;--tonebtn-pink: #cd2cf1b6;--textColorDark-pink: #411B28;--bg-color-orange: #FFD8B2;--accentLightTint-orange: #FFEDD5;--darkerColor-orange: #B26D3E;--darkColor-orange: #EC844D;--tonebtn-orange: #f18f2ccf;--textColorDark-orange: #412B1E;--bg-color-purple: #DAC2E8;--accentLightTint-purple: #E9E2F3;--darkerColor-purple: #724B8F;--darkColor-purple: #9563B5;--tonebtn-purple: #712cf1cf;--textColorDark-purple: #2D1B3E;--bg-color-dark: #505050;--accentLightTint-dark: #818181;--darkerColor-dark: #010208;--darkColor-dark: #434343;--tonebtn-dark: #020813c3;--textColorDark-dark: #010208;--gap: 30px;--round: 30px;--max-shortcut-bar-width: 60vw;--shortcut-bar-gap-and-padding: 10px;--shortcut-size: 50px;--always-show-dock-background: 0;--md-icon-font:"Material Symbols Rounded";--md-primary-tab-container-color:#ffffff00;--md-icon-size:32px;--md-icon-button-icon-size: 32px;--md-outlined-text-field-input-text-font: "poppins", serif;--md-filled-text-field-input-text-font: "poppins", serif;--md-filled-text-field-input-text-size: 1.49rem;--md-filled-text-field-active-indicator-color: #ff000000;--md-filled-text-field-container-color:#ff000000;--md-primary-tab-container-shape:.5rem;--md-ripple-pressed-color: var(--darkerColor-blue);--md-ripple-hover-color: var(--darkColor-blue);--md-sys-color-primary: var(--darkColor-blue);--md-sys-color-on-primary: var(--accentLightTint-blue);--md-sys-color-primary-container: var(--accentLightTint-blue);--md-sys-color-on-primary-container: var(--accentLightTint-blue);--md-filter-chip-outline-color: var(--accentLightTint-blue);--md-filter-chip-label-text-color:var(--textColorDark-blue);--md-filled-tonal-button-label-text-font: "poppins";--md-filled-button-label-text-font: "poppins";--md-outlined-button-label-text-font: "poppins";--md-text-button-label-text-font: "poppins";--md-sys-color-secondary-container: var(--tonebtn-blue);--md-sys-color-on-secondary-container: #ffffff;--md-filter-chip-label-text-font: "poppins", serif;--md-primary-tab-label-text-font: "poppins", serif;--md-dialog-headline-font: "poppins", serif;--md-dialog-supporting-text-font: "poppins", serif;--md-secondary-tab-container-color:var(--accentLightTint-blue);--md-elevated-button-label-text-font: "poppins", serif;--md-elevated-button-icon-color:var(--accentLightTint-blue);--md-elevated-button-hover-icon-color:var(--accentLightTint-blue);--md-elevated-button-focus-icon-color:var(--accentLightTint-blue);--md-elevated-button-label-text-color:var(--accentLightTint-blue);--md-elevated-button-hover-label-text-color:var(--accentLightTint-blue);--md-elevated-button-focus-label-text-color:var(--accentLightTint-blue);--md-elevated-button-container-color:var(--darkColor-blue)}.resultBox{max-height:250px;overflow-y:auto;position:absolute;top:1;left:0;width:100%;border-radius:var(--round);padding:10px;scrollbar-width:none;opacity:0;z-index:-1000;transform:translateY(-70px);transition:opacity .5s ease,transform .5s ease,z-index .5s ease;pointer-events:none}.resultBox::-webkit-scrollbar{display:none}.resultBox.show{opacity:1;visibility:visible;transform:translateY(0);z-index:1000;pointer-events:all}.resultItem{padding:10px;cursor:pointer;font-size:1.2rem;color:var(--textColorDark-blue)}.resultItem:hover{background-color:var(--darkColor-blue);border-radius:15px;color:#fff}.accentColor{fill:var(--darkColor-blue)}.bgLightTint{fill:var(--accentLightTint-blue);background-color:var(--accentLightTint-blue)}.lessDark{background-color:var(--bg-color-blue);fill:var(--bg-color-blue)}html{height:100%;width:100%;margin:0}body{font-family:poppins,Poppins,sans-serif;margin:0;padding:0;background-color:var(--bg-color-blue);color:var(--textColorDark-blue);display:flex;align-items:center;justify-content:center;width:100%;min-height:100%}.centerDiv{display:grid;grid-template-columns:auto auto;width:fit-content;height:fit-content;padding-bottom:calc(var(--shortcut-size) + var(--gap) * 2)}md-outlined-text-field#userproxy{width:-webkit-fill-available}md-outlined-text-field#userLoc{width:-webkit-fill-available}md-outlined-text-field#userAPI{width:-webkit-fill-available}.button-container{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:20px}.button-container md-filled-button,md-outlined-button{flex:1 1 auto;min-width:150px}.icon{margin-bottom:3px}#digitalClock,#analogClock{width:300px;height:300px;border-radius:100%;position:relative}#clock svg{position:absolute;animation:clockAnm 1s}@keyframes clockAnm{0%{transform:rotate(40deg)}to{transform:rotate(0)}}.clock .centerPoint{width:20px;height:20px;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto}.clock .centerPoint .sui{position:absolute;width:20px;height:100px;background-color:var(--darkColor-blue);top:-90px;transform-origin:bottom;border-radius:10px}#hour{height:80px;top:-70px;background-color:var(--darkerColor-blue);transform:rotate(90deg);transition:transform 1.5s}#hour:after{content:"";position:absolute;width:20px;height:30px;background-color:var(--darkerColor-blue);bottom:-10px;border-radius:100px}#minute{z-index:9!important;transition:transform 1.5s}#minute:after{content:"";position:absolute;width:20px;height:30px;background-color:var(--darkColor-blue);bottom:-10px;border-radius:100px}#second{background-color:#0000;transition:transform 1s}#second:after{content:"";position:absolute;width:20px;height:20px;background-color:var(--darkColor-blue);top:-28px;border-radius:100%}.ttteexxtt{position:absolute;bottom:18px;left:5px}#userText{font-family:poppins,serif;font-size:1.4rem;margin-bottom:10px}#date{font-size:1.4rem}.digidate{fill:var(--darkerColor-blue)}.digiclock{text-anchor:middle;fill:var(--darkColor-blue);font-size:8rem;font-weight:lighter;margin:auto;width:fit-content}.leftDiv{transform:translate(-100px)}.rightDiv{position:relative;width:640px;transform:translate(100px)}.rightDiv .topDiv{height:196px;display:flex;justify-content:flex-end}.rightDiv .topDiv .lrectangle{height:100%;width:100%;border-radius:var(--round);padding:20px;position:relative}#conditionText{font-size:1.2rem;color:var(--textColorDark-blue)}.cconnt{width:calc(100% - 40px);bottom:20px;height:fit-content;position:absolute;font-size:1rem}.tilesContainer{height:50px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:20px}.tilesContainer .tiles{background-color:#fff;border-radius:22px;position:relative;height:50px}.tilesContainer .location{background-color:var(--darkColor-blue)}.tilesContainer .location .location_spn{color:#fff}.tilesContainer .tiles .icon{height:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}.tilesContainer .tiles span{position:absolute;top:0;left:46px;bottom:0;margin:auto;color:var(--textColorDark-blue);height:fit-content}.humidityBar{border-radius:20px;height:40px;width:100%;margin-bottom:20px;position:relative}.humidityBar:after{position:absolute;content:"";height:100%;width:40px;background-size:66%;background:var(--darkColor-blue) url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='40px'%20viewBox='0%20-960%20960%20960'%20width='40px'%20fill='%23e8eaed'%3e%3cpath%20d='M580.08-246.67q22.25%200%2037.75-15.58%2015.5-15.57%2015.5-37.83%200-22.25-15.58-37.75-15.57-15.5-37.83-15.5-22.25%200-37.75%2015.58-15.5%2015.57-15.5%2037.83%200%2022.25%2015.58%2037.75%2015.57%2015.5%2037.83%2015.5Zm-225.41-28q10%2010%2023.33%2010%2013.33%200%2023.33-10l204-204q10-10%2010-23.33%200-13.33-10.03-23.33-10.04-10-23.84-10-13.79%200-23.79%2010l-203%20203.66q-10%209.87-10%2023.44%200%2013.56%2010%2023.56Zm25.41-172q22.25%200%2037.75-15.58%2015.5-15.57%2015.5-37.83%200-22.25-15.58-37.75-15.57-15.5-37.83-15.5-22.25%200-37.75%2015.58-15.5%2015.57-15.5%2037.83%200%2022.25%2015.58%2037.75%2015.57%2015.5%2037.83%2015.5ZM480-80q-137%200-228.5-94T160-408q0-63.33%2028.67-126.03%2028.66-62.69%2071.66-120.33t93-107.97q50-50.34%2093.34-88.67%207.33-6.67%2015.88-9.5%208.54-2.83%2017.5-2.83%208.95%200%2017.45%202.83t15.83%209.5q43.34%2038.33%2093.41%2088.8%2050.08%2050.47%2093%20108%2042.93%2057.53%2071.59%20120.2Q800-471.33%20800-408q0%20140-91.5%20234T480-80Zm0-66.67q109.33%200%20181.33-74.5%2072-74.5%2072-187.04%200-76.79-64.5-174.46-64.5-97.66-188.83-208.66-124.33%20111-188.83%20208.66-64.5%2097.67-64.5%20174.46%200%20112.54%2072%20187.04%2072%2074.5%20181.33%2074.5ZM480-480Z'/%3e%3c/svg%3e") no-repeat center center;right:0;border-radius:100%}.humidityBar .thinLine{position:absolute;width:calc(100% - 60px);background-color:#fff;height:6px;border-radius:10px;top:0;bottom:0;margin:auto}.humidityBar .slider{height:100%;width:calc(10% - 60px);min-width:42%;background-color:var(--darkColor-blue);border-radius:100px;position:absolute;transition:width 1s}#humidityLevel{color:#fff;width:fit-content;position:absolute;bottom:0;top:0;margin:auto;left:20px;height:fit-content}.rightDiv .topDiv .rAndakar{position:relative;height:100%;aspect-ratio:1/1;margin-left:var(--gap);animation:rAndAnm 1s}@keyframes rAndAnm{0%{transform:rotate(-45deg)}to{transform:rotate(0)}}.rightDiv .topDiv .rAndakar .wInfo{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;transform:translate(14px);width:100px;height:80%}#temp{font-size:3.5rem;font-weight:700;color:var(--darkerColor-blue);margin:auto;width:fit-content}#wIcon{width:80px;height:80px;margin-top:-20px;margin-left:-40px}.searchbar{margin-top:var(--gap);width:100%;height:60px;border-radius:var(--round);position:relative;outline:2px solid rgba(0,0,0,0);transition:outline .3s}.searchbar.active{outline:2px solid var(--darkColor-blue)}#searchQ{display:block;position:absolute;height:80%;width:calc(100% - 120px);top:0;bottom:0;margin:auto auto auto 20px;outline:none;border:none;background-color:#0000;border-radius:100px;padding:0 40px;font-size:1rem}.enterBtn{position:absolute;right:10px;top:0;bottom:0;margin:auto;height:40px;padding:0 26px;font-size:1.1rem}.spacer{height:50px}.searchIcon{position:absolute;margin-top:14px;margin-left:14px}.searchEnginesContainer .search-engine{border-radius:20px;height:40px;display:flex;align-items:center;justify-content:center;position:relative}.searchWithCont{margin-top:var(--gap);border-radius:var(--round);position:relative;display:flex;font-size:1rem}.searchWithCont .hint{width:200px;height:100px;display:flex;align-items:center;justify-content:center;padding:10px;position:relative;margin-right:16px;border-radius:var(--round)}.searchWithCont .hint:after{content:"";position:absolute;width:6px;height:100%;background-color:var(--accentLightTint-blue);border-radius:3px;right:-20px}.searchEnginesContainer{display:flex;flex-wrap:wrap;padding-left:20px;gap:5px}#shortcuts-section{pointer-events:none;display:flex;justify-content:center;width:100%;height:calc(var(--shortcut-size) + var(--gap) * 2);position:fixed;left:0;right:0;bottom:0;margin:auto}#shortcuts-section .unfoldContainer{transition:transform .5s;position:absolute;width:100%;top:0;display:flex;justify-content:center}#shortcuts-section #unfoldShortcutsBtn{display:none;pointer-events:auto;fill:var(--textColorDark-blue);background:none;border:none;cursor:pointer;z-index:1;transition:.2s all;transform-origin:50% 25%}#shortcuts-section .wrapper{position:relative;height:fit-content;display:inline-flex;align-items:stretch;width:fit-content}#shortcuts-section #flexMonitor{position:absolute;height:100%;visibility:hidden}#shortcuts-section #defaultMonitor{position:absolute;height:calc(var(--shortcut-size) + var(--gap) + var(--shortcut-bar-gap-and-padding));visibility:hidden}.shortcutsContainer{pointer-events:auto;transition:transform .5s;margin-top:calc(var(--gap) - var(--shortcut-bar-gap-and-padding));max-width:calc(var(--max-shortcut-bar-width) - mod(var(--max-shortcut-bar-width) - var(--shortcut-bar-gap-and-padding),var(--shortcut-size) + var(--shortcut-bar-gap-and-padding)));display:flex;flex-wrap:wrap;padding:var(--shortcut-bar-gap-and-padding);justify-content:left;width:fit-content;gap:var(--gap) var(--shortcut-bar-gap-and-padding)}.shortcutsContainer:before{border-radius:34px;content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--accentLightTint-blue);z-index:-1;opacity:var(--always-show-dock-background);transition:opacity .5s;pointer-events:none}.shortcutsContainer.showBackground:before{opacity:1}.shortcutsContainer .shortcuts{position:relative;transition:all .3s}.shortcutsContainer .shortcuts:hover{transform:translateY(-10px) scale(1.06);box-shadow:0 5px 10px var(--accentLightTint-blue);border-radius:100px}.shortcuts .shortcut-name{visibility:hidden;position:absolute;bottom:-30px;right:0;left:50%;transform:translate(-50%);margin:auto;width:fit-content;text-align:center;color:var(--textColorDark-blue);opacity:0;transition:all .3s;font-size:1rem;white-space:nowrap}.shortcuts:hover .shortcut-name{visibility:visible;opacity:1}.shortcutsContainer .shortcuts a{border-radius:100px;display:block;height:var(--shortcut-size);width:var(--shortcut-size)}.shortcutsContainer .shortcuts a:has(svg){background-color:var(--accentLightTint-blue)}.shortcutsContainer .shortcuts a:has(img){background-color:var(--darkColor-blue)}.shortcutsContainer .shortcuts a svg{height:100%;width:100%}.shortcutsContainer .shortcuts .shortcutLogoContainer{border-radius:50%;display:flex;justify-content:center;align-items:center;height:100%;width:100%}.shortcutsContainer .shortcuts .shortcutLogoContainer img{height:100%;width:100%;border-radius:100%}.aiToolsCont{height:50px;width:fit-content;overflow-x:hidden;border-radius:100px;position:absolute;left:var(--gap);bottom:var(--gap);margin:auto;display:flex}.aiToolsCont .hangno{background-color:var(--accentLightTint-blue);height:100%;display:flex;align-items:center;justify-content:center;padding:0 16px;border-radius:100px;z-index:2}.aiToolsCont .hangno .icon{width:26px;height:26px;margin-right:12px}.aiToolsCont .hangno .label{font-size:1rem;color:var(--textColorDark-blue);cursor:default}.aiToolsCont .toolsCont{display:none;position:relative;margin-left:30px;transition:all .5s;gap:0;transform-origin:left;transform:scale(.5) translate(-70px);opacity:.2}.aiToolsCont .toolsCont:before{content:"";position:absolute;height:100%;width:6px;background-color:var(--accentLightTint-blue);border-radius:6px;left:-18px}.aiToolsCont .toolsCont a{background-color:var(--accentLightTint-blue);height:100%;display:flex;align-items:center;justify-content:center;padding:0 16px;border-radius:100px;text-decoration:none;color:var(--textColorDark-blue);font-size:1rem}.aiToolsCont .toolsCont .tIcon{width:26px;height:26px;margin-right:12px}@media screen and (max-width: 1400px){.leftDiv{transform:translate(-50px)}.rightDiv{transform:translate(50px)}}@media screen and (max-width: 1200px){body{display:block}.centerDiv{grid-template-columns:auto;position:absolute;left:0;right:0;margin:var(--gap) auto auto}.leftDiv{transform:translate(0);margin-bottom:var(--gap)}.rightDiv{transform:translate(0)}.ttteexxtt{height:fit-content;width:fit-content;bottom:0;top:0;left:300px;margin:auto auto auto var(--gap)}}.menuBar{background-color:#0000004f;-webkit-backdrop-filter:blur(15px) saturate(170%);backdrop-filter:blur(15px) saturate(170%);position:fixed;width:100%;height:100%;z-index:9999;opacity:0;transition:all .5s;overflow:hidden}.menuBar .menuCont{position:absolute;right:0;height:100%;width:400px;transition:all .5s;transform:translate(100%);background-color:var(--accentLightTint-blue);border-bottom-left-radius:var(--round)}.menuBar .menuCont .topRounder{width:var(--round);height:var(--round);position:absolute;left:-30px}.menuCont .topDiv{width:100%;height:100px;background-color:var(--bg-color-blue);position:relative}.menuCont .topDiv:after{position:absolute;content:"";width:100%;height:var(--gap);background-color:var(--accentLightTint-blue);border-top-left-radius:var(--round);border-top-right-radius:var(--round);bottom:0}.menuCont .topDiv h1{font-size:1.6rem;width:fit-content;height:fit-content;color:var(--textColorDark-blue);position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;transform:translateY(-50%)}.menuCont .optCont{width:100%;height:calc(100% - 140px);transition:all .6s;transform:translate(100%);opacity:0;overflow-y:auto;overflow-x:hidden}.menuCont .optCont .page{width:100%;padding:0 var(--gap) var(--gap) var(--gap);position:absolute;transition:all .6s}.menuCont .optCont::-webkit-scrollbar{width:2px}.menuCont .optCont::-webkit-scrollbar-track{background:transparent}.menuCont .optCont::-webkit-scrollbar-thumb{background:var(--darkColor-blue);border-radius:2px}.menuCont .optCont{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}.menuBar .optCont .tilesCont{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.tilesCont .tiles{background-color:var(--darkColor-blue);border-radius:20px;font-size:1rem;color:var(--accentLightTint-blue);display:flex;align-items:center;text-decoration:none}.tilesCont .tiles .icon{width:24px;height:24px;margin-left:13px;margin-right:13px}.divider{height:6px;width:100px;background-color:#fff;border-radius:3px;margin:20px auto}.switch{position:relative;display:inline-block;width:60px;height:34px}.switch input{display:none}.toggle{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-color-blue);transition:.4s;border-radius:34px}.toggle:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:var(--accentLightTint-blue);transition:.4s;border-radius:50%}#shortcutEditButton{fill:var(--textColorDark-blue);display:flex;align-items:center;justify-content:center;border:none;border-radius:34px;cursor:pointer;transition:.3s all;margin:0 auto;background:none;height:100%;width:100%}.toggleTextsCont .ttcont.inactive{opacity:.5;pointer-events:none}input:checked+.toggle{background-color:var(--darkColor-blue)}input:checked+.toggle:before{transform:translate(26px)}.toggleTextsCont .ttcont{display:flex;height:50px;justify-content:space-between;align-items:center;margin-bottom:20px}.unflex{display:block!important}.ttcont input{width:100%;margin-top:6px;height:30px;border-radius:10px;border:none;outline:none;padding:0 11px}.ttcont .texts .bigText{font-size:1.2rem;color:var(--textColorDark-blue)}.ttcont .texts .infoText{font-size:.9rem;color:var(--textColorDark-blue);opacity:.86;margin-top:-3px}.bottom{display:flex;justify-content:space-between;margin-top:12px}.bottom a{text-decoration:none;color:var(--darkColor-blue);font-size:1rem}.bottom button{border:none;color:#fff;background-color:var(--darkColor-blue);padding:6px 20px;font-size:1rem;border-radius:100px;cursor:pointer}.resetbtn{width:-webkit-fill-available;border:none;color:#fff;background-color:var(--darkColor-blue);padding:6px 20px;font-size:1rem;border-radius:100px;cursor:pointer}.topBar{display:flex;justify-content:space-between;align-items:center;height:60px;position:sticky;top:0;left:0;right:0;z-index:1000;background-color:var(--accentLightTint-blue)}#backButton{fill:var(--textColorDark-blue);border:none;background:none;cursor:pointer}.rightButtons{display:flex;gap:24px}#resetButton,#newShortcutButton{fill:var(--textColorDark-blue);border:none;background:none;cursor:pointer}#newShortcutButton.inactive{opacity:.5;pointer-events:none}.pageTitle{margin:var(--gap) 0;width:100%;font-size:1.8rem;color:var(--textColorDark-blue)}.shortcutSettingsEntry{width:100%;display:flex;height:50px;justify-content:space-between;align-items:center;margin-bottom:20px}.shortcutSettingsEntry input{width:calc(100% - var(--gap));background:none;border:none}.shortcutSettingsEntry .shortcutName{font-size:1.2rem;color:var(--textColorDark-blue);text-overflow:ellipsis}.shortcutSettingsEntry .URL{font-size:.9rem;color:var(--textColorDark-blue);opacity:.86;margin-top:-3px;text-overflow:ellipsis}.delete button{fill:var(--textColorDark-blue);display:flex;align-items:center;justify-content:center;width:60px;height:34px;background:var(--bg-color-blue);border:none;border-radius:34px;cursor:pointer;transition:.3s all}.delete button:hover{fill:#fff;background:var(--darkColor-blue)}.delete button.inactive{opacity:.5;pointer-events:none}.addShortcutContainer button{fill:#fff;background:var(--darkColor-blue);position:absolute;display:flex;align-items:center;justify-content:center;width:60px;height:34px;border:none;border-radius:34px;cursor:pointer;transition:.3s all}.themingStuff,.languageSection{width:100%;height:50px;display:flex;justify-content:space-between;gap:var(--gap)}.userTextt{display:none}.languageSelector{background-color:#ffffffe8;align-items:center;justify-content:center;height:fit-content;width:240px;border:2px solid transparent;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;grid-gap:10px;color:var(--textColorDark-blue);border-radius:26px;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;padding:12px 12px 12px 13px}.languageSelector:focus{border:2px solid var(--darkColor-blue);outline:none}.colorsContainer{background-color:#ffffffe8;align-items:center;justify-content:center;height:fit-content;width:fit-content;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;grid-gap:10px;padding:10px;border-radius:26px}.colorsContainer input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;height:36px;width:36px;border-radius:18px;outline:none;cursor:pointer}.colorsContainer input[value=blue]{background-color:#4382ec}.colorsContainer input[value=yellow]{background-color:#f3f05a}.colorsContainer input[value=red]{background-color:#f91d1d}.colorsContainer input[value=green]{background-color:#17a638}.colorsContainer input[value=cyan]{background-color:#2acdf5}.colorsContainer input[value=orange]{background-color:orange}.colorsContainer input[value=purple]{background-color:#b830de}.colorsContainer input[value=pink]{background-color:#e41b9e}.colorsContainer input[value=dark]{background-color:#282828}.colorsContainer input[type=radio]:checked:after{position:absolute;content:"";width:36px;height:36px;background:url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M47.9167%2024.9997L42.8334%2019.208L43.5417%2011.5413L36.0209%209.83301L32.0834%203.20801L25%206.24967L17.9167%203.20801L13.9792%209.83301L6.45837%2011.5205L7.16671%2019.1872L2.08337%2024.9997L7.16671%2030.7913L6.45837%2038.4788L13.9792%2040.1872L17.9167%2046.8122L25%2043.7497L32.0834%2046.7913L36.0209%2040.1663L43.5417%2038.458L42.8334%2030.7913L47.9167%2024.9997ZM20.8334%2035.4163L12.5%2027.083L15.4375%2024.1455L20.8334%2029.5205L34.5625%2015.7913L37.5%2018.7497L20.8334%2035.4163Z'%20fill='white'/%3e%3c/svg%3e") center center no-repeat;background-size:74%}.themingStuff .btn{display:flex;justify-content:center;align-items:center;background-color:#ffffffe8;height:100%;aspect-ratio:1/1;right:0;border-radius:100%;z-index:2;cursor:pointer}.languageIcon{background-color:#ffffffe8;height:100%;aspect-ratio:1/1;right:0;border-radius:100%;z-index:2;cursor:pointer;display:flex;justify-content:center;align-items:center}#darkTheme{grid-column:span 2;width:82px}#menuButton{position:fixed;right:var(--gap);bottom:var(--gap);cursor:pointer}#menuCloseButton{position:absolute;bottom:0;left:0;width:42px;height:42px;max-width:100%;background-color:var(--bg-color-blue);color:var(--textColorDark-blue);font-size:1rem;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border-radius:100px;overflow:hidden;transition:all .4s;cursor:pointer;margin-left:20px}#menuCloseButton:hover{width:105px;background-color:#fff}#menuCloseButton:after{content:"Close";padding-right:12px;opacity:0;transform:translate(-20px);animation:.6s menuCloseButtonHoverReverse forwards;z-index:1}#menuCloseButton:hover:after{content:"Close";padding-right:12px;padding-left:36px;animation:.6s menuCloseButtonHover forwards;animation-delay:.1s}@keyframes menuCloseButtonHover{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes menuCloseButtonHoverReverse{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}#menuCloseButton .icon{position:absolute;left:6px;background-color:#fff;width:30px;height:30px;border-radius:100px;transition:.4s;z-index:2}#menuCloseButton:hover .icon{transform:translate(0) rotate(90deg)} +@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Poppins&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro&display=swap";@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/Material-symbols-outlined.woff2) format("woff2")}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}@font-face{font-family:poppins;src:url(/Poppins-Regular.ttf) format("truetype")}*:not([class^=md-icon]){box-sizing:border-box;font-family:var(--main-font-family)}:root{--main-font-family: "poppins", "Poppins", sans-serif, "Material Symbols Outlined";--bg-color-blue: #bbd6fd;--accentLightTint-blue: #e2eeff;--darkerColor-blue: #3569b2;--darkColor-blue: #4382ec;--textColorDark-blue: #1b3041;--whitishColor-blue: #ffffff;--bg-color-red: #fdbdbd;--accentLightTint-red: #ffe7e7;--darkerColor-red: #b23535;--darkColor-red: #ec4343;--textColorDark-red: #411b1b;--whitishColor-red: #ffffff;--bg-color-yellow: #ffed80;--accentLightTint-yellow: #fff6c3;--darkerColor-yellow: #ae9502;--darkColor-yellow: #d1a93d;--textColorDark-yellow: #2f2707;--whitishColor-yellow: #ffffff;--bg-color-green: #c7e4c7;--accentLightTint-green: #e1f1e1;--darkerColor-green: #458245;--darkColor-green: #5cba5c;--textColorDark-green: #1b411b;--whitishColor-green: #ffffff;--bg-color-cyan: #9cefef;--accentLightTint-cyan: #d5ffff;--darkerColor-cyan: #07787f;--darkColor-cyan: #09b2b4;--textColorDark-cyan: #08354b;--whitishColor-cyan: #ffffff;--bg-color-pink: #f9c8d6;--accentLightTint-pink: #ffebf2;--darkerColor-pink: #b24b64;--darkColor-pink: #ec5e78;--textColorDark-pink: #411b28;--whitishColor-pink: #ffffff;--bg-color-orange: #ffd8b2;--accentLightTint-orange: #ffedd5;--darkerColor-orange: #b26d3e;--darkColor-orange: #ec844d;--textColorDark-orange: #412b1e;--whitishColor-orange: #ffffff;--bg-color-purple: #dac2e8;--accentLightTint-purple: #e9e2f3;--darkerColor-purple: #724b8f;--darkColor-purple: #9563b5;--textColorDark-purple: #2d1b3e;--whitishColor-purple: #ffffff;--bg-color-silver: #c6c6c6;--accentLightTint-silver: #e5e5e5;--darkerColor-silver: #6f6f6f;--darkColor-silver: #9e9e9e;--textColorDark-silver: #333333;--whitishColor-silver: #ffffff;--bg-color-brown: #dfc28d;--accentLightTint-brown: #eae3c9;--darkerColor-brown: #4e3930;--darkColor-brown: #705347;--textColorDark-brown: #16100d;--whitishColor-brown: #ffffff;--bg-color-grey: #ffccbf;--accentLightTint-grey: #fdf1ef;--darkerColor-grey: #f67455;--darkColor-grey: #9c29ba;--textColorDark-grey: #441730;--whitishColor-grey: #ffffff;--bg-color-dark: #171615;--accentLightTint-dark: #3c3c3c;--darkerColor-dark: #eeeeee;--darkColor-dark: #212121;--textColorDark-dark: #d6d6d6;--whitishColor-dark: #cccccc;--gap: 30px;--round: 30px;--max-shortcut-bar-width: 60vw;--shortcut-bar-gap-and-padding: 10px;--shortcut-size: 50px;--always-show-dock-background: 0;--md-icon-font:"Material Symbols Outlined";--md-primary-tab-container-color:#ffffff00;--md-icon-size:32px;--md-icon-button-icon-size: 32px;--md-filled-text-field-input-text-font: "poppins", serif;--md-filled-text-field-input-text-size: 1.49rem;--md-filled-text-field-active-indicator-color: #ff000000;--md-filled-text-field-container-color:#ff000000;--md-primary-tab-container-shape:.5rem;--md-ripple-pressed-color: var(--darkerColor-blue);--md-ripple-hover-color: var(--darkColor-blue);--md-sys-color-primary: var(--darkColor-blue);--md-sys-color-on-primary: var(--accentLightTint-blue);--md-sys-color-primary-container: var(--accentLightTint-blue);--md-sys-color-on-primary-container: var(--accentLightTint-blue);--md-filter-chip-outline-color: var(--accentLightTint-blue);--md-filter-chip-label-text-color:var(--textColorDark-blue);--md-secondary-tab-label-text-color:var(--textColorDark-blue);--md-primary-tab-label-text-color:var(--textColorDark-blue);--md-secondary-tab-icon-color:var(--textColorDark-blue);--md-filled-text-field-text-color:var(--textColorDark-blue);--md-filled-text-field-input-text-color:var(--textColorDark-blue);--md-filled-text-field-hover-lable-text-color:var(--textColorDark-blue);--md-filled-text-field-hover-input-text-color:var(--textColorDark-blue);--md-filled-text-field-foucs-lable-text-color:var(--textColorDark-blue);--md-filled-text-field-focus-input-text-color:var(--textColorDark-blue);--md-primary-tab-icon-color:var(--textColorDark-blue);--md-filled-tonal-button-label-text-font: "poppins";--md-filled-button-label-text-font: "poppins";--md-outlined-button-label-text-font: "poppins";--md-text-button-label-text-font: "poppins";--md-sys-color-secondary-container: var(--darkColor-blue);--md-sys-color-on-secondary-container: #ffffff;--md-filter-chip-label-text-font: "poppins", serif;--md-primary-tab-label-text-font: "poppins", serif;--md-dialog-headline-font: "poppins", serif;--md-dialog-supporting-text-font: "poppins", serif;--md-secondary-tab-container-color:var(--accentLightTint-blue);--md-elevated-button-label-text-font: "poppins", serif;--md-elevated-button-icon-color:var(--textColorDark-blue);--md-elevated-button-hover-icon-color:var(--textColorDark-blue);--md-elevated-button-focus-icon-color:var(--textColorDark-blue);--md-elevated-button-label-text-color:var(--textColorDark-blue);--md-elevated-button-hover-label-text-color:var(--textColorDark-blue);--md-elevated-button-focus-label-text-color:var(--textColorDark-blue);--md-elevated-button-container-color:var(--darkColor-blue);--md-outlined-icon-button-icon-color:var(--textColorDark-blue);--md-outlined-icon-button-hover-icon-color:var(--textColorDark-blue);--md-outlined-icon-button-focus-icon-color:var(--textColorDark-blue);--md-outlined-icon-button-pressed-icon-color:var(--textColorDark-blue);--md-outlined-text-field-input-text-font: "poppins", serif;--md-outlined-text-field-lable-text-font: "poppins", serif;--md-outlined-text-field-supporting-text-font: "poppins", serif;--md-outlined-text-field-focus-lable-text-color: var(--textColorDark-blue);--md-outlined-text-field-focus-input-text-color: var(--textColorDark-blue);--md-outlined-text-field-lable-text-color: var(--textColorDark-blue);--md-outlined-text-field-input-text-color: var(--textColorDark-blue);--md-outlined-text-field-supporting-text-color: var(--textColorDark-blue);--md-outlined-text-field-hover-supporting-text-color: var(--textColorDark-blue)}.accentColor{fill:var(--darkColor-blue)}.bgLightTint{fill:var(--accentLightTint-blue);background-color:var(--accentLightTint-blue)}.strokecolor{stroke:var(--darkColor-blue)}.lessDark{background-color:var(--bg-color-blue);fill:var(--bg-color-blue)}.colorPickerButton,#languageSelector{width:-webkit-fill-available}html{height:100%;width:100%;margin:0;scrollbar-width:none}.html::-webkit-scrollbar{display:none}body{background-color:var(--bg-color-blue);color:var(--textColorDark-blue);display:flex;align-items:center;justify-content:center;width:100%;min-height:100%;overflow:auto;background-image:var(--bg-image, none);background-size:cover;background-repeat:no-repeat;background-position:center;background-attachment:fixed;height:100vh;margin:0}.resultBox{max-height:222px;overflow-y:auto;position:absolute;bottom:-100px;left:0;width:100%;border-radius:25px;padding:5px 10px;scrollbar-width:none;opacity:0;z-index:-1000;transform:translateY(-70px);transition:opacity .5s ease,transform .5s ease,z-index .5s ease;pointer-events:none}@media screen and (max-height: 700px){.resultBox{max-height:180px;bottom:-60px}}.resultBox::-webkit-scrollbar{display:none}.resultBox.show{opacity:1;visibility:visible;transform:translateY(0);z-index:1000;pointer-events:all}.resultItem{padding:8px;cursor:pointer;font-size:1.1rem;color:var(--textColorDark-blue)}.resultItem.active,.resultItem:hover{background-color:var(--darkColor-blue);border-radius:15px;color:#fff}.button-container{display:flex;margin-left:-11.5px;width:365px;justify-content:flex-end;gap:16px;margin-bottom:20px;flex-direction:column}.button-container md-filled-button,md-outlined-button{flex:1 1 auto;min-width:150px}.googleAppsCont{position:fixed;display:inline-block;margin:10px;top:var(--gap);right:var(--gap);font-size:25px;background:transparent;border:none;cursor:pointer;z-index:2}.dot-icon{fill:var(--darkColor-blue);background-color:var(--accentLightTint-blue);border-radius:25%;padding:1px;cursor:pointer}.theme-transition .dot-icon{transition:fill .3s ease}.dot-icon:active{fill:var(--darkerColor-blue)}.tooltip-text{visibility:hidden;background-color:var(--darkColor-blue);color:#ffffffe6;text-align:center;padding:5px;border-radius:8px;position:absolute;top:120%;left:50%;transform:translate(-50%);font-size:12px;opacity:0;transition:opacity .3s ease;white-space:nowrap;z-index:3}.googleAppsCont:hover .tooltip-text{visibility:visible;opacity:1}.menu-open .tooltip-text{visibility:hidden!important;opacity:0!important}.separator{width:100%;height:1px;background-color:var(--darkColor-blue);margin:10px 0}.icon-container .separator{grid-column:span 3}.icon-container{display:grid;gap:10px;padding:20px 10px;background-color:var(--accentLightTint-blue);border-radius:30px;box-shadow:0 4px 8px #0003;border:8px solid var(--bg-color-blue);grid-template-columns:repeat(3,1fr);justify-items:center;position:absolute;top:85px;right:15px;max-height:430px;overflow-y:auto;box-sizing:border-box;z-index:3}.icon-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px;border-radius:10px;transition:transform .3s ease,background-color .3s ease;text-decoration:none;cursor:pointer;position:relative;min-width:100px;background-color:var(--accentLightTint-blue)}.menuicon{color:var(--darkColor-blue);width:40px;height:40px;margin-bottom:8px}.label{font-size:14px;color:var(--textColorDark-blue)}.label.short{display:block}.label.full{display:none;white-space:pre-line;text-align:center;position:absolute;font-size:.8rem;bottom:0}.icon-item:hover{background-color:var(--bg-color-blue);transform:scale(1.1)}.icon-item:hover .label.full,.icon-item:hover .label.short{display:block}.icon-item:hover .label.short.one{display:none}.icon-container::-webkit-scrollbar{width:5px}.icon-container::-webkit-scrollbar-track{background-color:transparent;margin:11px 0}.icon-container::-webkit-scrollbar-thumb{background-color:var(--darkColor-blue);border-radius:3px}.icon-container::-webkit-scrollbar-thumb:hover{background-color:var(--darkerColor-blue);border-radius:3px}@-moz-document url-prefix(){.icon-container{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}}#bookmarksContainer{background-color:#0000004f;-webkit-backdrop-filter:blur(15px) saturate(160%);backdrop-filter:blur(15px) saturate(160%);position:fixed;width:100%;height:100%;z-index:2;opacity:0;transition:all .5s;pointer-events:none;z-index:4}#bookmarksContainer:has(.bookmark-sidebar.open){opacity:1;pointer-events:auto}.bookmark-button{position:fixed;display:inline-block;margin:10px;top:var(--gap);right:var(--gap);font-size:25px;background-color:var(--accentLightTint-blue);border:none;cursor:pointer;z-index:2;padding:6px;border-radius:25%;transition:right .3s ease}.bookmark-button:has(~.googleAppsCont[style="display: flex;"]){right:calc(2 * var(--gap) + 36px)}.bookmark-button:hover .tooltip-text{visibility:visible;opacity:1}.bookmark-button svg{fill:var(--darkColor-blue);background-color:var(--accentLightTint-blue)}.bookmark-sidebar{width:380px;position:fixed;right:-380px;top:0;height:100%;background-color:var(--accentLightTint-blue);color:#fff;transition:right .3s ease;z-index:5;display:block;border-radius:0 0 0 var(--round);box-sizing:border-box}.bookmark-sidebar .topOutRoundCorner{position:absolute;width:30px;height:30px;left:-30px}.bookmark-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0 10px}.bookmark-sidebar.open{right:0}body #bookmarkButton.bookmark-button.rotate{color:var(--accentLightTint-blue);right:412px;z-index:5}.bookmark-sidebar-header{padding:30px 20px 50px;background-color:var(--bg-color-blue)}.bookmark-sidebar-header h2{color:var(--textColorDark-blue);text-align:center;font-size:1.5rem;flex-grow:1}.bookmark-search-container{width:100%;padding:30px 10px 16px;border-radius:var(--round);display:flex;align-items:center;justify-content:center;background-color:var(--accentLightTint-blue);margin-top:-30px;position:relative}.bookmark-search-container:after{content:"";background:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%3e%3cpath%20fill='grey'%20d='M10.68%2011.74a6%206%200%200%201-7.922-8.982a6%206%200%200%201%208.982%207.922l3.04%203.04a.749.749%200%200%201-.326%201.275a.75.75%200%200%201-.734-.215ZM11.5%207a4.499%204.499%200%201%200-8.997%200A4.499%204.499%200%200%200%2011.5%207'%20/%3e%3c/svg%3e") no-repeat center/contain;width:18px;filter:invert(1);height:18px;opacity:.5;left:9%;top:calc(50% + 7px);transform:translateY(-50%);position:absolute}#bookmarkSearch{width:95%;padding:10px 36px 10px 43px;border-radius:var(--round);font-size:16px;background-color:var(--whitishColor-blue);color:var(--textColorDark-blue);outline:none!important;border:none!important}#bookmarkSearch::placeholder{color:var(--textColorDark-blue);opacity:.7}#clearSearchButton{position:absolute;right:9%;top:calc(50% + 7px);transform:translateY(-50%);background:none;border:none;color:var(--textColorDark-blue);cursor:pointer;display:none}#bookmarkList{list-style-type:none;padding:0;margin:0;text-align:left;height:calc(100% - 230px);overflow-y:auto;overflow-x:hidden}#bookmarkList::-webkit-scrollbar{width:6px}#bookmarkList::-webkit-scrollbar-track{background-color:transparent}#bookmarkList::-webkit-scrollbar-thumb{background-color:var(--darkColor-blue);border-radius:3px}#bookmarkList::-webkit-scrollbar-thumb:hover{background-color:var(--darkerColor-blue);border-radius:3px}@-moz-document url-prefix(){#bookmarkList{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}}.bookmark-view-as-container{display:flex;box-sizing:border-box;width:100%;justify-content:space-between;align-items:center;padding:8px 32px}.bookmark-view-as-container h3{font-size:1rem;color:var(--darkerColor-blue)}.bookmark-view-as-container .bookmark-view-as-button{background:transparent;border-radius:20px;border:2px solid var(--darkColor-blue);color:var(--darkColor-blue);min-width:60px;font-size:12px;padding:2px 9px;margin-left:10px;cursor:pointer}.bookmark-view-as-container #bookmarkGridCheckbox:is(:checked)~#bookmarkViewGrid,.bookmark-view-as-container #bookmarkGridCheckbox:is(:not(:checked))~#bookmarkViewList{background:var(--darkColor-blue);color:#fff}#bookmarkList ul{padding-left:10px;list-style-type:none;font-weight:400}#bookmarkList .folder ul{padding-top:10px}#bookmarkList li{padding:2px;border:none;position:relative}#bookmarkList li:is(.folder){padding:10px 0 10px 10px}#bookmarkList li:not(.folder){display:flex;width:calc(100% - 10px)}#bookmarkList:is(.grid-view) ul:not(.hidden),#bookmarkList:is(.grid-view) .folder.open>ul{display:grid;grid-template-columns:25% 25% 25% 25%}#bookmarkList:is(.grid-view) ul:not(.hidden) .folder,#bookmarkList:is(.grid-view) .folder.open>ul .folder{grid-column:span 4}#bookmarkList:is(.grid-view) li:not(.folder){width:100%;padding-bottom:6px}#bookmarkList:is(.grid-view) li a{padding:2px;flex-direction:column}#bookmarkList:is(.grid-view) li a .favicon{margin:20px auto 24px}#bookmarkList:is(.grid-view) li a:has(.favicon):after,#bookmarkList:is(.grid-view) li a:has(.favicon):before{content:"";background:var(--bg-color-blue);position:absolute;width:48px;height:48px;z-index:-1;left:50%;transform:translate(-50%);opacity:.35;top:12px;box-sizing:border-box;border-radius:32px}#bookmarkList:is(.grid-view) li a:has(.favicon):before{background:var(--bg-color-blue);width:36px;height:36px;opacity:1;top:18px}#bookmarkList li a{color:var(--textColorDark-blue);text-decoration:none;padding:8px 24px 8px 8px;border-radius:8px;width:100%;display:flex;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#bookmarkList li a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#bookmarkList:is(.grid-view) li a span{text-align:center}.favicon{width:18px;height:18px;margin-right:5px;vertical-align:middle;filter:drop-shadow(0 0 2px rgba(0,0,0,.3))}#bookmarkList:is(.grid-view) .favicon{width:24px;height:24px}.folder{cursor:pointer;font-weight:bolder;color:var(--textColorDark-blue)}.hidden{display:none}.ui{display:block;pointer-events:none}.folder svg{margin-right:5px;vertical-align:middle}.folder ul{padding-left:20px}.folder.open>ul{display:block}#bookmarkList:is(.grid-view) .bookmark-delete-button{top:12px;right:6px}.bookmark-delete-button{background:none;border:none;color:var(--darkColor-blue);cursor:pointer;position:absolute;right:10px;top:50%;transform:translateY(-50%);opacity:0;pointer-events:none}:hover>.bookmark-delete-button{opacity:1;pointer-events:auto}.todoListCont{position:fixed;display:inline-block;margin:10px;top:var(--gap);left:var(--gap);font-size:25px;background:transparent;border:none;cursor:pointer;z-index:2}.todoListCont:hover .tooltip-text{visibility:visible;opacity:1}.todo-container{display:grid;gap:10px;padding:10px 5px;background-color:var(--bg-color-blue);border-radius:30px;box-shadow:0 4px 8px #0003;border:8px solid var(--bg-color-blue);grid-template-columns:320px;justify-items:center;position:absolute;top:85px;left:15px;max-height:430px;overflow-y:auto;box-sizing:border-box;z-index:3}.todo-container::-webkit-scrollbar{width:5px}.todo-container::-webkit-scrollbar-track{background-color:transparent;margin-top:108px;margin-bottom:11px}.todo-container::-webkit-scrollbar-thumb{background-color:var(--darkColor-blue);border-radius:3px}.todo-container::-webkit-scrollbar-thumb:hover{background-color:var(--darkerColor-blue);border-radius:3px}@-moz-document url-prefix(){.todo-container{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}}#todoAdd{height:40px;border-radius:100px;padding:1px 13px 0;border:none;font-size:1.5rem;background-color:var(--darkColor-blue);color:#fff;scale:.78}#todoAdd:hover{background-color:var(--darkerColor-blue);color:#fff;cursor:pointer}#todoAdd:active{transform:scale(.9)}.theme-transition #todoAdd{transition:all .3s}#todoInput{width:100%;height:80%;margin:auto auto auto 16px;outline:none;border:none;background-color:#0000;padding:0 2px;font-size:1rem}.dark-theme #todoInput{color:#fff}#todoInput::placeholder{color:#757575}.todo-container .searchbar-content{background:var(--accentLightTint-blue);padding:0;border-radius:20px;width:100%}.todolist{width:100%;display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:flex-start}.todolistitem{width:100%;display:flex;background-color:var(--darkColor-blue);color:#fff;border-radius:8px;list-style-type:none;font-size:1rem;padding:12px 56px 12px 32px;-webkit-user-select:none;user-select:none;cursor:pointer;position:relative;word-break:break-word}.todolistitem:before{content:"";position:absolute;height:18px;width:18px;border-radius:50%;background:url("data:image/svg+xml,%3csvg%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M21%2012C21%2016.9706%2016.9706%2021%2012%2021C7.02944%2021%203%2016.9706%203%2012C3%207.02944%207.02944%203%2012%203C16.9706%203%2021%207.02944%2021%2012Z'%20stroke='%23FFFFFF'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") no-repeat center center/contain;top:50%;transform:translateY(-50%);left:8px;transition:all .3s ease;-webkit-user-select:none;user-select:none}.todolistitem.checked:before{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='%23FFFFFF'%20viewBox='0%200%2040%2040'%20style='transform:%20scale(0.9);%20transform-origin:%20center;'%3e%3cpath%20d='M20,0C8.974,0,0,8.973,0,20c0,11.027,8.974,20,20,20c11.029,0,20-8.973,20-20C40,8.973,31.029,0,20,0z%20M28.818,17.875%20l-8.562,8.564c-0.596,0.595-1.377,0.893-2.158,0.893c-0.779,0-1.561-0.298-2.156-0.893l-4.758-4.758%20c-1.191-1.191-1.191-3.124,0-4.313c1.191-1.192,3.121-1.192,4.314,0l2.6,2.6l6.408-6.407c1.188-1.189,3.123-1.189,4.312,0%20C30.01,14.752,30.01,16.684,28.818,17.875z'%3e%3c/path%3e%3c/svg%3e")}.todolistitem.checked{color:#ccc;text-decoration:line-through}.todolistitem .todoremovebtn,.todolistitem .todopinbtn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:24px;height:24px;font-size:22px;line-height:1.2;color:var(--bg-color-blue);text-align:center;border-radius:50%;transition:all .3s ease;-webkit-user-select:none;user-select:none}.todolistitem .todoremovebtn{scale:1.05}.todolistitem .todoremovebtn:hover{color:#fff}.todolistitem .todopinbtn{right:28px;background:url(/todo-pin-stroke.svg) no-repeat center center/contain}.todolistitem.pinned .todopinbtn{background-image:url("data:image/svg+xml,%3csvg%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20style='transform:%20scale(0.95);%20transform-origin:%20center;'%20fill-rule='evenodd'%20clip-rule='evenodd'%20opacity='0.9'%20d='M22%2012C22%2017.5228%2017.5228%2022%2012%2022C6.47715%2022%202%2017.5228%202%2012C2%206.47715%206.47715%202%2012%202C17.5228%202%2022%206.47715%2022%2012ZM14.1096%208.41878L15.592%209.90258C16.598%2010.9095%2017.1009%2011.413%2016.9836%2011.9557C16.8662%2012.4985%2016.2003%2012.7487%2014.8684%2013.2491L13.9463%2013.5955C13.5896%2013.7295%2013.4113%2013.7965%2013.2736%2013.9157C13.2134%2013.9679%2013.1594%2014.027%2013.1129%2014.0918C13.0068%2014.2397%2012.9562%2014.4236%2012.855%2014.7913C12.6249%2015.6276%2012.5099%2016.0457%2012.2359%2016.202C12.1205%2016.2679%2011.9898%2016.3025%2011.8569%2016.3023C11.5416%2016.3018%2011.2352%2015.9951%2010.6225%2015.3818L10.1497%2014.9086L8.531%2016.5299C8.23835%2016.823%207.76348%2016.8234%207.47034%2016.5308C7.17721%2016.2381%207.17683%2015.7632%207.46948%2015.4701L9.08892%2013.848C9.08871%2013.8482%209.08914%2013.8478%209.08892%2013.848L8.64262%2013.4C8.03373%2012.7905%207.72929%2012.4858%207.72731%2012.1723C7.72645%2012.0368%207.76164%2011.9035%207.82926%2011.786C7.98568%2011.5145%208.40079%2011.4%209.23097%2011.1711C9.5993%2011.0696%209.78346%2011.0188%209.9315%2010.9123C9.99792%2010.8644%2010.0583%2010.8088%2010.1114%2010.7465C10.2298%2010.6076%2010.2956%2010.4281%2010.4271%2010.069L10.7611%209.15753C11.2545%207.81078%2011.5013%207.1374%2012.0455%207.01734C12.5896%206.89728%2013.0963%207.40445%2014.1096%208.41878Z'%20fill='%23ffffff'%3e%3c/path%3e%3c/svg%3e")}.todolistitem:first-child{border-top-left-radius:18px;border-top-right-radius:18px}.todolistitem:last-child{border-bottom-left-radius:18px;border-bottom-right-radius:18px}.centerDiv{display:grid;grid-template-columns:auto auto;width:fit-content;height:fit-content;padding-bottom:calc(var(--shortcut-size) + var(--gap) * 2)}#digitalClock,#analogClock{width:300px;height:300px;border-radius:100%;position:relative}#clock svg{position:absolute;animation:clockAnm 1s}@keyframes clockAnm{0%{transform:rotate(40deg)}to{transform:rotate(0)}}.clock .centerPoint{width:20px;height:20px;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto}.clock .centerPoint .sui{position:absolute;width:20px;height:100px;background-color:var(--darkColor-blue);top:-90px;transform-origin:bottom;border-radius:10px}#hour{height:80px;top:-70px;background-color:var(--darkerColor-blue);transform:rotate(90deg);transition:transform 1.5s}#hour:after{content:"";position:absolute;width:20px;height:30px;background-color:var(--darkerColor-blue);bottom:-10px;border-radius:100px}#minute{z-index:9!important;transition:transform 1.5s}#minute:after{content:"";position:absolute;width:20px;height:30px;background-color:var(--darkColor-blue);bottom:-10px;border-radius:100px}#second{background-color:#0000;transition:transform 1s}#second:after{content:"";position:absolute;width:20px;height:20px;background-color:var(--darkColor-blue);top:-28px;border-radius:100%}.ttteexxtt{position:absolute;bottom:8px;left:10px}#userText{font-family:var(--main-font-family);font-size:1.4rem;margin-bottom:10px}#date{font-size:1.4rem}.digidate,.amPm{fill:var(--textColorDark-blue)}.digiclock{text-anchor:middle;fill:var(--darkColor-blue);font-size:8rem;font-weight:lighter;margin:auto;width:fit-content}#digihours{fill:var(--darkerColor-blue)}#digicolon{animation:blink 1s infinite}@keyframes blink{50%{opacity:0}}.leftDiv{transform:translate(-100px)}.rightDiv{position:relative;width:640px;transform:translate(100px)}.rightDiv .topDiv{height:196px;display:flex;justify-content:flex-end}.rightDiv .topDiv .lrectangle{height:100%;width:100%;border-radius:var(--round);padding:20px;position:relative}#conditionText{font-size:1.2rem;color:var(--textColorDark-blue);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:372px}.cconnt{width:calc(100% - 40px);bottom:20px;height:fit-content;position:absolute;font-size:1rem}.tilesContainer{height:50px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:20px}.tilesContainer .tiles{background-color:var(--whitishColor-blue);border-radius:22px;position:relative;height:50px}.tilesContainer .location{background-color:var(--darkColor-blue)}.tilesContainer .location .location_spn{color:#fff}.tilesContainer .tiles .icon{height:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}.tilesContainer .tiles span{position:absolute;top:0;left:46px;bottom:0;margin:auto;color:var(--textColorDark-blue);height:fit-content}.humidityBar{border-radius:20px;height:40px;width:100%;margin-bottom:20px;position:relative}.humidityBar:after{position:absolute;content:"";height:100%;width:40px;background-size:66%;background:var(--darkColor-blue) url("data:image/svg+xml,%3csvg%20width='32'%20height='32'%20viewBox='0%200%2032%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M23.476%2013.9925L16.847%203.43652C16.7508%203.30153%2016.6238%203.19148%2016.4764%203.11555C16.3291%203.03962%2016.1657%203%2016%203C15.8343%203%2015.6709%203.03962%2015.5236%203.11555C15.3762%203.19148%2015.2492%203.30153%2015.153%203.43652L8.494%2014.0425C7.56889%2015.5348%207.05357%2017.2446%207%2018.9995C7%2021.3865%207.94821%2023.6757%209.63604%2025.3635C11.3239%2027.0513%2013.6131%2027.9995%2016%2027.9995C18.3869%2027.9995%2020.6761%2027.0513%2022.364%2025.3635C24.0518%2023.6757%2025%2021.3865%2025%2018.9995C24.9425%2017.2253%2024.4167%2015.4979%2023.476%2013.9925ZM16%2025.9995C14.1442%2025.9971%2012.3651%2025.2589%2011.0529%2023.9466C9.74064%2022.6344%209.00238%2020.8553%209%2018.9995C9.05315%2017.6011%209.47321%2016.2413%2010.218%2015.0565L11.153%2013.5665L21.227%2023.6405C20.5727%2024.3818%2019.7683%2024.9755%2018.8672%2025.3824C17.9661%2025.7893%2016.9887%2025.999%2016%2025.9995Z'%20fill='white'/%3e%3c/svg%3e") no-repeat center center;right:0;border-radius:100%}.humidityBar .thinLine{position:absolute;width:calc(100% - 60px);background-color:var(--whitishColor-blue);height:6px;border-radius:10px;top:0;bottom:0;margin:auto}.humidityBar .slider{height:100%;width:calc(10% - 60px);min-width:42%;background-color:var(--darkColor-blue);border-radius:100px;position:absolute;transition:width 1s}#humidityLevel{color:#fff;width:fit-content;position:absolute;bottom:0;top:0;margin:auto;left:20px;height:fit-content}.rightDiv .topDiv .rAndakar{position:relative;height:100%;aspect-ratio:1/1;margin-left:var(--gap);animation:rAndAnm 1s}@keyframes rAndAnm{0%{transform:rotate(-45deg)}to{transform:rotate(0)}}.rightDiv .topDiv .rAndakar .wInfo{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;transform:translate(14px);width:100px;height:80%}#temp{font-size:3.5rem;font-weight:700;color:var(--darkerColor-blue);margin:auto;width:fit-content}.tempUnit{font-size:.4em;position:relative;top:-1.1em;left:3px;color:var(--darkColor-blue)}#wIcon{width:80px;height:80px;margin-top:-11px;margin-left:-30px}.searchbar{margin-top:var(--gap);width:100%;height:60px;border-radius:var(--round);position:relative;outline:2px solid rgba(0,0,0,0);transition:outline .3s}.searchbar.active{outline:2px solid var(--darkColor-blue)}.searchbar .searchIcon{width:30px;height:30px;position:absolute;margin-top:14px;margin-left:14px}.searchbar-content{display:flex;align-items:center;height:100%;padding-right:10px}#searchQ{flex-grow:1;height:80%;top:0;bottom:0;outline:none;border:none;background-color:#0000;padding:0 2px;margin:auto auto auto 55px;font-size:1rem}#searchQ::placeholder{color:#757575}.searchControls{margin-left:10px;right:10px;display:flex;align-items:center;height:100%}.micIcon{width:40px;height:40px;margin-right:10px;display:flex;align-items:center;position:relative;justify-content:center;color:var(--darkColor-blue);cursor:pointer;border-radius:50%;padding:3px;box-sizing:border-box;background-color:var(--whitishColor-blue);border:2px solid transparent}.theme-transition .micIcon{transition:all .5s}.micIcon:after{content:"";position:absolute;width:40px;height:40px;border-radius:100%;border:2px solid transparent;top:-4px;left:-4px}.micActive:after,.micIcon:hover:after{border-left:2px dotted var(--darkColor-blue);border-right:2px solid var(--darkColor-blue);border-top:2px dashed var(--darkerColor-blue);border-bottom:2px dashed var(--darkerColor-blue);animation:micAnimation 1s ease-in-out infinite;transition:all .5s}.micIcon:hover{background-color:#fffffff2}@keyframes micAnimation{0%{transform:rotate(0)}37%{transform:rotate(-20deg)}69%{transform:rotate(20deg)}to{transform:rotate(0)}}.enterBtn{right:10px;top:0;bottom:0;margin:auto;height:40px;padding:0 26px;font-size:1.1rem;margin-left:.5rem}#enterBtn:hover{background-color:var(--darkColor-blue);color:#fff;cursor:pointer}#enterBtn:active{transform:scale(.9)}.theme-transition #enterBtn{transition:all .3s}.searchWithCont{margin-top:var(--gap);border-radius:var(--round);position:relative;display:flex;font-size:1rem}.searchWithCont .hint{width:200px;height:100px;display:flex;align-items:center;justify-content:center;padding:10px;position:relative;margin-right:16px;border-radius:var(--round)}.searchWithCont .hint:after{content:"";position:absolute;width:6px;height:100%;background-color:var(--accentLightTint-blue);border-radius:3px;right:-20px}.searchEnginesContainer{display:flex;flex-wrap:wrap;gap:20px;padding-left:20px}.searchEnginesContainer .search-engine{border-radius:20px;height:40px;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}.searchEnginesContainer .search-engine svg{width:30px;height:30px;background-color:var(--darkColor-blue);border-radius:100%;margin-left:4px;padding:3px}.searchEnginesContainer .search-engine label{margin:0 16px 0 10px;cursor:pointer}.search-engine input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--whitishColor-blue);width:22px;height:22px;border-radius:50%;border:2px solid var(--whitishColor-blue);outline:none;margin-right:8px;cursor:pointer}.search-engine input[type=radio]:checked{background-color:var(--darkColor-blue)}.theme-transition .search-engine input[type=radio]{transition:.2s}#shortcuts-section{pointer-events:none;display:flex;justify-content:center;width:100%;height:calc(var(--shortcut-size) + var(--gap) * 2);position:absolute;left:0;right:0;bottom:0;margin:auto}#shortcuts-section .wrapper{position:relative;height:fit-content;display:inline-flex;align-items:stretch;width:fit-content}#shortcuts-section #flexMonitor{position:absolute;height:100%;visibility:hidden}#shortcuts-section #defaultMonitor{position:absolute;height:calc(var(--shortcut-size) + var(--gap) + var(--shortcut-bar-gap-and-padding));visibility:hidden}.shortcutsContainer{pointer-events:auto;transition:transform .5s;margin-top:calc(var(--gap) - var(--shortcut-bar-gap-and-padding));max-width:calc(var(--max-shortcut-bar-width) - mod(var(--max-shortcut-bar-width) - var(--shortcut-bar-gap-and-padding),var(--shortcut-size) + var(--shortcut-bar-gap-and-padding)));display:flex;flex-wrap:wrap;padding:var(--shortcut-bar-gap-and-padding);justify-content:center;width:fit-content;gap:26px}.shortcutsContainer:before{border-radius:34px;content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--accentLightTint-blue);z-index:-1;opacity:var(--always-show-dock-background);transition:opacity .5s;pointer-events:none}.shortcutsContainer.showBackground:before{opacity:1}.shortcutsContainer .shortcuts{position:relative;transition:all .3s;isolation:isolate}.shortcutsContainer .shortcuts:hover{transform:translateY(-10px) scale(1.03);border-radius:100px}.shortcuts .shortcut-name{visibility:hidden;position:absolute;bottom:-30px;right:0;left:50%;transform:translate(-50%);margin:auto;width:fit-content;text-align:center;color:var(--textColorDark-blue);opacity:0;transition:all .3s;font-size:1rem;white-space:nowrap}.shortcuts:hover .shortcut-name{visibility:visible;opacity:1}.shortcutsContainer .shortcuts a{border-radius:100px;display:block;height:var(--shortcut-size);width:var(--shortcut-size)}.shortcutsContainer .shortcuts a:has(svg){background:radial-gradient(var(--accentLightTint-blue) 66%,transparent 66%)}.shortcutsContainer .shortcuts a:has(img){background-color:var(--darkColor-blue)}.shortcutsContainer .shortcuts a svg{height:100%;width:100%}.shortcutsContainer .shortcuts .shortcutLogoContainer{border-radius:50%;display:flex;justify-content:center;align-items:center;height:100%;width:100%}.shortcutsContainer .shortcuts .shortcutLogoContainer img{height:100%;width:100%;border-radius:100%}.aiToolsCont{height:50px;width:fit-content;overflow-x:hidden;border-radius:100px;position:fixed;left:var(--gap);bottom:var(--gap);margin:auto;display:flex;max-width:calc(100% - 140px);overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.aiToolsCont::-webkit-scrollbar{display:none}.aiToolsCont .hangno{background-color:var(--accentLightTint-blue);height:100%;display:flex;align-items:center;justify-content:center;padding:0 16px;border-radius:100px;z-index:2;cursor:pointer}.aiToolsCont .hangno .icon{width:26px;height:26px;margin-right:12px}.aiToolsCont .hangno .label{font-size:1rem;color:var(--textColorDark-blue);cursor:pointer;width:fit-content;min-width:61px}.aiToolsCont .toolsCont{display:none;position:relative;margin-left:30px;transition:all .5s;gap:0;transform-origin:left;transform:scale(.5) translate(-70px);opacity:.2}.aiToolsCont .toolsCont:before{content:"";position:absolute;height:100%;width:6px;background-color:var(--accentLightTint-blue);border-radius:6px;left:-18px}#firefly{width:103px}.aiToolsCont .toolsCont a{background-color:var(--accentLightTint-blue);height:100%;display:flex;align-items:center;justify-content:center;padding:0 16px;border-radius:100px;text-decoration:none;color:var(--textColorDark-blue);font-size:1rem;transition:all .3s ease}.aiToolsCont .toolsCont a:hover{background-color:var(--bg-color-blue);box-shadow:inset 0 0 0 1px var(--darkColor-blue)}.aiToolsCont .toolsCont .tIcon{width:26px;height:26px;margin-right:12px}@media screen and (max-width: 1400px){.leftDiv{transform:translate(-50px)}.rightDiv{transform:translate(50px)}}@media screen and (max-width: 1200px){body{display:block}.shortcutsContainer{margin-top:210px}.centerDiv{grid-template-columns:auto;position:absolute;left:0;right:0;margin:var(--gap) auto auto}.leftDiv{transform:translate(0);margin-bottom:var(--gap)}.rightDiv{transform:translate(0)}.ttteexxtt{height:fit-content;width:fit-content;bottom:0;top:0;left:300px;margin:auto auto auto var(--gap)}}.menuBar{background-color:#0000004f;-webkit-backdrop-filter:blur(15px) saturate(160%);backdrop-filter:blur(15px) saturate(160%);position:fixed;width:100%;height:100%;z-index:9999;opacity:0;transition:all .5s;overflow:hidden}.menuBar .menuCont{position:absolute;right:0;height:100%;width:400px;transition:all .5s;transform:translate(100%);background-color:var(--accentLightTint-blue);border-bottom-left-radius:var(--round)}.menuBar .menuCont .topRounder{width:var(--round);height:var(--round);position:absolute;left:-30px}.menuCont .topDiv{width:100%;height:100px;background-color:var(--bg-color-blue);position:relative}.menuCont .topDiv:after{position:absolute;content:"";width:100%;height:var(--gap);background-color:var(--accentLightTint-blue);border-top-left-radius:var(--round);border-top-right-radius:var(--round);bottom:0}.menuCont .topDiv h1{font-size:1.6rem;width:fit-content;height:fit-content;color:var(--textColorDark-blue);position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;transform:translateY(-39%)}.menuCont .optCont{width:100%;height:calc(100% - 140px);transition:all .6s;transform:translate(100%);opacity:0;overflow-y:scroll;overflow-x:hidden}.menuCont .optCont .page{width:100%;padding:0 var(--gap) var(--gap) var(--gap);position:absolute;transition:all .6s}.menuCont .optCont::-webkit-scrollbar{width:6px}.menuCont .optCont::-webkit-scrollbar-track{background:transparent}.menuCont .optCont::-webkit-scrollbar-thumb{background:var(--darkColor-blue);border-radius:3px}.menuCont .optCont::-webkit-scrollbar-thumb:hover{background:var(--darkerColor-blue);border-radius:3px}@-moz-document url-prefix(){.menuCont .optCont{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}}.menuBar .optCont .tilesCont{width:100%;height:50px;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.tilesCont .tiles{background-color:var(--darkColor-blue);border-radius:20px;font-size:1rem;color:var(--accentLightTint-blue);display:flex;align-items:center;text-decoration:none;transition:background-color .3s ease}.tilesCont .tiles:hover{background-color:var(--darkerColor-blue)}.tilesCont .tiles .icon{width:24px;height:24px;margin-left:13px;margin-right:13px}.divider{height:6px;width:100px;background-color:#fff;border-radius:3px;margin:20px auto}.switch{position:relative;display:inline-block;min-width:60px;height:34px;margin-left:8px}.switch input{display:none}.toggle{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-color-blue);transition:.4s;border-radius:34px}.toggle:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:var(--accentLightTint-blue);transition:.4s;border-radius:50%}#shortcutEditButton{fill:var(--darkerColor-blue);display:flex;align-items:center;justify-content:center;border:none;border-radius:34px;cursor:pointer;transition:.3s all;margin:0 auto;background:none;height:100%;width:100%}.toggleTextsCont .ttcont.inactive{opacity:.5;pointer-events:none}input:checked+.toggle{background-color:var(--darkColor-blue)}input:checked+.toggle:before{transform:translate(26px)}md-outlined-text-field#userproxy{width:-webkit-fill-available;background-color:var(--acentLightTint-blue);font-family:var(--main-font-family);color:var(--textColorDark-blue)}md-outlined-text-field#userLoc{width:-webkit-fill-available;background-color:var(--acentLightTint-blue);font-family:var(--main-font-family);color:var(--textColorDark-blue)}md-outlined-text-field#userAPI{width:-webkit-fill-available;background-color:var(--acentLightTint-blue);font-family:var(--main-font-family);color:var(--textColorDark-blue)}.toggleTextsCont .ttcont{display:flex;height:50px;justify-content:space-between;align-items:center;margin-bottom:20px}.unflex{display:block!important}.ttcont input{width:100%;margin-top:6px;height:30px;border-radius:10px;border:none;outline:none;padding:0 11px}.ttcont .texts .bigText{font-size:1.2rem;color:var(--textColorDark-blue)}.ttcont .texts .infoText{font-size:.9rem;color:var(--textColorDark-blue);opacity:.86;margin-top:-3px}.bottom{display:flex;justify-content:space-between;margin-top:12px}.bottom a{text-decoration:none;color:var(--darkColor-blue);font-size:1rem;transition:color .3s ease}.bottom a:hover{color:var(--darkerColor-blue)}.bottom button{border:none;color:#fff;background-color:var(--darkColor-blue);padding:6px 20px;font-size:1rem;border-radius:100px;cursor:pointer}.resetbtn{width:-webkit-fill-available;width:-moz-available;border:none;color:#fff;background-color:var(--darkColor-blue);padding:6px 20px;font-size:1rem;border-radius:100px;cursor:pointer;transition:background-color .3s ease}.resetbtn:hover{background-color:var(--darkerColor-blue)}.resetbtn:active{background-color:var(--bg-color-blue);color:var(--darkerColor-blue)}.topBar{display:flex;justify-content:space-between;align-items:center;height:50px;position:sticky;top:0;left:0;right:0;z-index:1000;background-color:var(--accentLightTint-blue)}#backButton{fill:var(--textColorDark-blue);border:none;background:none;cursor:pointer}.rightButtons{display:flex;gap:24px}#newShortcutButton svg{transition:transform .3s ease}#newShortcutButton:active svg{transform:scale(1.2)}.rotateResetButton{transform:rotate(-360deg);transition:transform .3s ease}#resetButton,#newShortcutButton{fill:var(--textColorDark-blue);border:none;background:none;cursor:pointer}#newShortcutButton.inactive{opacity:.5;pointer-events:none}.pageTitle{margin-top:10px;width:100%;font-size:1.6rem;color:var(--textColorDark-blue)}#editShortcutsListInfo{font-size:.8rem;margin-top:5px;margin-bottom:var(--gap);text-align:justify}.shortcutSettingsEntry{width:100%;display:flex;height:50px;justify-content:space-between;align-items:center;margin-bottom:20px}.shortcutSettingsEntry input{width:calc(100% - var(--gap));background:none;border:none}.shortcutSettingsEntry .shortcutName{font-size:1.2rem;color:var(--textColorDark-blue);text-overflow:ellipsis}.shortcutSettingsEntry .URL{font-size:.9rem;color:var(--textColorDark-blue);opacity:.86;margin-top:-3px;text-overflow:ellipsis}.delete button{fill:var(--textColorDark-blue);display:flex;align-items:center;justify-content:center;width:60px;height:34px;background:var(--bg-color-blue);border:none;border-radius:34px;cursor:pointer;transition:.3s all}.delete button:hover{fill:#fff;background:var(--darkColor-blue)}.delete button.inactive{opacity:.5;pointer-events:none}.addShortcutContainer button{fill:#fff;background:var(--darkColor-blue);position:absolute;display:flex;align-items:center;justify-content:center;width:60px;height:34px;border:none;border-radius:34px;cursor:pointer;transition:.3s all}#userproxy,#userLoc,#userAPI{color:var(--textColorDark-blue);background-color:var(--whitishColor-blue)}.themingStuff{margin-top:11px;position:relative;width:100%;height:50px;display:flex;justify-content:space-between;gap:var(--gap)}.languageSection{width:100%;height:50px;display:flex;justify-content:space-between;gap:var(--gap);margin-top:30px}.languageSelector{background-color:var(--whitishColor-blue);align-items:center;justify-content:center;height:fit-content;width:240px;border:2px solid transparent;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;grid-gap:10px;color:var(--textColorDark-blue);border-radius:26px;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;padding:12px 12px 12px 13px}@-moz-document url-prefix(){.languageSelector{scrollbar-width:thin;scrollbar-color:var(--darkColor-blue) transparent}}.languageSelector::-webkit-scrollbar{width:6px}.languageSelector::-webkit-scrollbar-track{background-color:transparent}.languageSelector::-webkit-scrollbar-thumb{background-color:var(--bg-color-blue);border-radius:3px}.languageSelector:focus{border:2px solid var(--darkColor-blue);outline:none}.colorsContainer{background-color:var(--whitishColor-blue);align-items:center;justify-content:center;height:fit-content;width:-webkit-fill-available;display:initial;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;grid-gap:10px;padding:10px;border-radius:26px}.colorsContainer input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;height:36px;width:36px;border-radius:18px;outline:none;cursor:pointer}.colorsContainer input[value=blue]{background-color:#4382ec}.colorsContainer input[value=yellow]{background-color:#fc0}.colorsContainer input[value=red]{background-color:#ec4343}.colorsContainer input[value=green]{background-color:#5cba5c}.colorsContainer input[value=cyan]{background-color:#00ced1}.colorsContainer input[value=orange]{background-color:#ec844d}.colorsContainer input[value=purple]{background-color:#9563b5}.colorsContainer input[value=pink]{background-color:#ec5e78}.colorsContainer input[value=brown]{background-color:#705347}.colorsContainer input[value=silver]{background-color:#9e9e9e}.colorsContainer input[value=grey]{background:linear-gradient(45deg,#bb4dee,#f8b880)}.colorsContainer input[value=dark]{background-color:#171717}.colorsContainer input[type=radio]:checked:after{position:absolute;content:"";width:36px;height:36px;background:url("data:image/svg+xml,%3csvg%20width='50'%20height='50'%20viewBox='0%200%2050%2050'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M47.9167%2024.9997L42.8334%2019.208L43.5417%2011.5413L36.0209%209.83301L32.0834%203.20801L25%206.24967L17.9167%203.20801L13.9792%209.83301L6.45837%2011.5205L7.16671%2019.1872L2.08337%2024.9997L7.16671%2030.7913L6.45837%2038.4788L13.9792%2040.1872L17.9167%2046.8122L25%2043.7497L32.0834%2046.7913L36.0209%2040.1663L43.5417%2038.458L42.8334%2030.7913L47.9167%2024.9997ZM20.8334%2035.4163L12.5%2027.083L15.4375%2024.1455L20.8334%2029.5205L34.5625%2015.7913L37.5%2018.7497L20.8334%2035.4163Z'%20fill='white'/%3e%3c/svg%3e") center center no-repeat;background-size:74%}.themingStuff .btn{background-color:var(--whitishColor-blue);height:100%;aspect-ratio:1/1;right:0;border-radius:100%;z-index:2}.languageIcon{background-color:var(--whitishColor-blue);height:100%;aspect-ratio:1/1;right:0;border-radius:100%;z-index:2;display:flex;justify-content:center;align-items:center;margin-top:4.5px}.uploadClearContainer{margin-top:124px;justify-content:space-between;gap:10px}.uploadButton{width:245px}#imageUpload{display:none}.backupRestoreContainer{width:100%;height:38px;margin-top:33px;margin-left:-10px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.backupRestoreBtn{display:flex;align-items:center;justify-content:center;gap:9px;font-size:.9rem;cursor:pointer;border:none;background-color:var(--bg-color-blue);color:var(--darkerColor-blue);border-radius:20px;transition:background-color .3s ease}.backupRestoreBtn:hover{background-color:var(--darkColor-blue);color:#fffffff5}.backupRestoreBtn:active{background-color:var(--darkerColor-blue);color:#fffffff5}.spacer{height:23px}#colorPicker{display:none}.colorPickerLabel{grid-column:span 3;width:100%;background:var(--accentLightTint-blue);height:100%;border-radius:100px;display:flex;text-align:center;justify-content:center;font-size:.8rem;line-height:35px;cursor:pointer;border:2px solid transparent;transition:background-color .3s ease}.colorPickerLabel:hover{background:var(--bg-color-blue)}#menuButton{position:fixed;right:var(--gap);bottom:var(--gap);cursor:pointer}#menuCloseButton{position:absolute;left:0;width:42px;height:42px;max-width:100%;background-color:var(--bg-color-blue);color:var(--textColorDark-blue);font-size:1rem;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border-radius:100px;overflow:hidden;transition:all .4s;cursor:pointer;margin-left:20px;margin-top:-20px}#menuCloseButton:hover{width:105px;background-color:#fff}#menuCloseButton:after{content:"Close";padding-right:12px;opacity:0;transform:translate(-20px);animation:.6s menuCloseButtonHoverReverse forwards;z-index:1}#menuCloseButton:hover:after{content:"Close";padding-right:12px;padding-left:36px;animation:.6s menuCloseButtonHover forwards;animation-delay:.1s}@keyframes menuCloseButtonHover{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes menuCloseButtonHoverReverse{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}#menuCloseButton .icon{position:absolute;left:6px;background-color:#fff;width:30px;height:30px;border-radius:100px;transition:.4s;z-index:2}#menuCloseButton:hover .icon{transform:translate(0) rotate(90deg)}.dropdown-item{display:flex;gap:8px;align-items:center}.dropdown-btn{background:none;border:none}.dropdown{position:relative;display:inline-block}.dropdown-content{background:var(--accentLightTint-blue);border-radius:16px;display:none;position:absolute;min-width:160px;box-shadow:0 8px 16px #0003;z-index:1;top:50px;left:-15px;overflow:hidden;max-height:192px}.dropdown-content .dropdown-item{padding:8px 16px;cursor:pointer}#default-dropdown-item .engine-name{display:none}.dropdown-content .engine-name{font-size:1rem}.dropdown-item{position:relative}.dropdown-item.selected:not(*[data-default]):before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--bg-color-blue);opacity:.8;z-index:-1}#default-dropdown-item{outline:none!important}*[id$=-dropdown]:not(.dropdown-content .dropdown-item:nth-child(1)){bottom:3px}.search-dropdown .dropdown-item svg{width:33px;height:33px;margin-left:0;padding:2px;background-color:var(--darkColor-blue);border-radius:100%}#LoadingScreen{background:var(--Loading-Screen-Color);display:flex;position:fixed;height:100%;width:100%;top:0;left:0;z-index:99999} diff --git a/dist/background.js b/dist/svgs/0 Don't DELETE any of them similarity index 100% rename from dist/background.js rename to dist/svgs/0 Don't DELETE any of them diff --git a/dist/svgs/andakar.svg b/dist/svgs/andakar.svg new file mode 100644 index 00000000..ef7940d3 --- /dev/null +++ b/dist/svgs/andakar.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/bing.svg b/dist/svgs/bing.svg new file mode 100644 index 00000000..5a0f528e --- /dev/null +++ b/dist/svgs/bing.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/bookmarksSearch.svg b/dist/svgs/bookmarksSearch.svg new file mode 100644 index 00000000..1554f037 --- /dev/null +++ b/dist/svgs/bookmarksSearch.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/dist/svgs/brave.svg b/dist/svgs/brave.svg new file mode 100644 index 00000000..69ef9eb9 --- /dev/null +++ b/dist/svgs/brave.svg @@ -0,0 +1,30 @@ + + + + + + + diff --git a/src/defaultWeather.svg b/dist/svgs/defaultWeather.svg similarity index 100% rename from src/defaultWeather.svg rename to dist/svgs/defaultWeather.svg diff --git a/dist/svgs/duck.svg b/dist/svgs/duck.svg new file mode 100644 index 00000000..9feb1203 --- /dev/null +++ b/dist/svgs/duck.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/feels.svg b/dist/svgs/feels.svg new file mode 100644 index 00000000..ff5eb357 --- /dev/null +++ b/dist/svgs/feels.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/google.svg b/dist/svgs/google.svg new file mode 100644 index 00000000..ff0c0d03 --- /dev/null +++ b/dist/svgs/google.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/humidity.svg b/dist/svgs/humidity.svg new file mode 100644 index 00000000..3eef1a75 --- /dev/null +++ b/dist/svgs/humidity.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/location.svg b/dist/svgs/location.svg new file mode 100644 index 00000000..e2564d46 --- /dev/null +++ b/dist/svgs/location.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/rounder.svg b/dist/svgs/rounder.svg new file mode 100644 index 00000000..33c43b80 --- /dev/null +++ b/dist/svgs/rounder.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/dist/svgs/searchIcon.svg b/dist/svgs/searchIcon.svg new file mode 100644 index 00000000..22a5b534 --- /dev/null +++ b/dist/svgs/searchIcon.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/adobe-firefly.svg b/dist/svgs/shortcuts_icons/adobe-firefly.svg new file mode 100644 index 00000000..b5de619f --- /dev/null +++ b/dist/svgs/shortcuts_icons/adobe-firefly.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/shortcuts_icons/bard.svg b/dist/svgs/shortcuts_icons/bard.svg new file mode 100644 index 00000000..c8a4695d --- /dev/null +++ b/dist/svgs/shortcuts_icons/bard.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/dist/svgs/shortcuts_icons/chatgpt.svg b/dist/svgs/shortcuts_icons/chatgpt.svg new file mode 100644 index 00000000..8296a70b --- /dev/null +++ b/dist/svgs/shortcuts_icons/chatgpt.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/shortcuts_icons/email.svg b/dist/svgs/shortcuts_icons/email.svg new file mode 100644 index 00000000..11dcfcbc --- /dev/null +++ b/dist/svgs/shortcuts_icons/email.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/facebook.svg b/dist/svgs/shortcuts_icons/facebook.svg new file mode 100644 index 00000000..9403148b --- /dev/null +++ b/dist/svgs/shortcuts_icons/facebook.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/feedback.svg b/dist/svgs/shortcuts_icons/feedback.svg new file mode 100644 index 00000000..f816571e --- /dev/null +++ b/dist/svgs/shortcuts_icons/feedback.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/github-shortcut.svg b/dist/svgs/shortcuts_icons/github-shortcut.svg new file mode 100644 index 00000000..2a934e05 --- /dev/null +++ b/dist/svgs/shortcuts_icons/github-shortcut.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/svgs/shortcuts_icons/github.svg b/dist/svgs/shortcuts_icons/github.svg new file mode 100644 index 00000000..6cbe6ce7 --- /dev/null +++ b/dist/svgs/shortcuts_icons/github.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/instagram.svg b/dist/svgs/shortcuts_icons/instagram.svg new file mode 100644 index 00000000..7405a48c --- /dev/null +++ b/dist/svgs/shortcuts_icons/instagram.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/invalid-url.svg b/dist/svgs/shortcuts_icons/invalid-url.svg new file mode 100644 index 00000000..5809da44 --- /dev/null +++ b/dist/svgs/shortcuts_icons/invalid-url.svg @@ -0,0 +1,4 @@ + + + diff --git a/dist/svgs/shortcuts_icons/offline.svg b/dist/svgs/shortcuts_icons/offline.svg new file mode 100644 index 00000000..81d2c55d --- /dev/null +++ b/dist/svgs/shortcuts_icons/offline.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/dist/svgs/shortcuts_icons/reddit.svg b/dist/svgs/shortcuts_icons/reddit.svg new file mode 100644 index 00000000..9acb882e --- /dev/null +++ b/dist/svgs/shortcuts_icons/reddit.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/telegram.svg b/dist/svgs/shortcuts_icons/telegram.svg new file mode 100644 index 00000000..a314fcb1 --- /dev/null +++ b/dist/svgs/shortcuts_icons/telegram.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/twitter.svg b/dist/svgs/shortcuts_icons/twitter.svg new file mode 100644 index 00000000..6ab76903 --- /dev/null +++ b/dist/svgs/shortcuts_icons/twitter.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/whatsApp.svg b/dist/svgs/shortcuts_icons/whatsApp.svg new file mode 100644 index 00000000..e8487f1f --- /dev/null +++ b/dist/svgs/shortcuts_icons/whatsApp.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/shortcuts_icons/youtube.svg b/dist/svgs/shortcuts_icons/youtube.svg new file mode 100644 index 00000000..83673123 --- /dev/null +++ b/dist/svgs/shortcuts_icons/youtube.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/starishShape.svg b/dist/svgs/starishShape.svg new file mode 100644 index 00000000..3ddaba72 --- /dev/null +++ b/dist/svgs/starishShape.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/theme.svg b/dist/svgs/theme.svg new file mode 100644 index 00000000..5af71cb2 --- /dev/null +++ b/dist/svgs/theme.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/tick.svg b/dist/svgs/tick.svg similarity index 100% rename from src/tick.svg rename to dist/svgs/tick.svg diff --git a/dist/svgs/todo-check-fill.svg b/dist/svgs/todo-check-fill.svg new file mode 100644 index 00000000..411e5f5b --- /dev/null +++ b/dist/svgs/todo-check-fill.svg @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/dist/svgs/todo-check-stroke.svg b/dist/svgs/todo-check-stroke.svg new file mode 100644 index 00000000..4b300a97 --- /dev/null +++ b/dist/svgs/todo-check-stroke.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/dist/svgs/todo-pin-fill.svg b/dist/svgs/todo-pin-fill.svg new file mode 100644 index 00000000..318b7e02 --- /dev/null +++ b/dist/svgs/todo-pin-fill.svg @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/dist/svgs/todo-pin-stroke.svg b/dist/svgs/todo-pin-stroke.svg new file mode 100644 index 00000000..7435fd0d --- /dev/null +++ b/dist/svgs/todo-pin-stroke.svg @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/dist/svgs/x.svg b/dist/svgs/x.svg new file mode 100644 index 00000000..36d37f81 --- /dev/null +++ b/dist/svgs/x.svg @@ -0,0 +1,3 @@ + + + diff --git a/dist/svgs/youtube.svg b/dist/svgs/youtube.svg new file mode 100644 index 00000000..cf5e2403 --- /dev/null +++ b/dist/svgs/youtube.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/todo-pin-stroke.svg b/dist/todo-pin-stroke.svg new file mode 100644 index 00000000..7435fd0d --- /dev/null +++ b/dist/todo-pin-stroke.svg @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/dist/tools/languagesAnalysis.html b/dist/tools/languagesAnalysis.html new file mode 100644 index 00000000..a2f7320c --- /dev/null +++ b/dist/tools/languagesAnalysis.html @@ -0,0 +1,482 @@ + + + + + + + Language Key Analysis + + + + + + + + + + + + + + + + + + + + + + + + + +
      + 🌟 + Language Key Analysis Tool + +
      +
      +
      +

      Language Key Analysis Results

      +

      + This page is a tool designed to analyze language keys in the project. English serves as the reference language for + comparison. The tool identifies missing or extra keys in other languages and highlights the complete ones. +

      + + +
      +
      + + + diff --git a/index.html b/index.html deleted file mode 100644 index 9c441454..00000000 --- a/index.html +++ /dev/null @@ -1,655 +0,0 @@ - - - - - - - New Tab - - - - - - - - - -
      -
      - -
      -
      - OK -
      -
      -
      -
      - - -
      - - - - -
      -
      -
      -
      -
      -
      -
      - - - - - - Thu 9 - - - 6:59 - - -
      - - - -
      - - -
      -
      -
      - -
      - -
      -
      - -
      Hello! How are you today?
      -
      -
      -
      -
      -
      Humidity
      -
      -
      -
      -
      -
      - - device_thermostat - -
      - Seems -
      -
      -
      - my_location - -
      - Earth -
      -
      - -
      -
      - - -
      - - - - -
      -
      - wq -
      -
      -
      - - - - -
      - - - - -
      - -
      - Search With -
      -
      -
      - - Google - -
      -
      - - Duck - -
      -
      - - Bing - -
      -
      - - Brave - -
      -
      - - YouTube - -
      - -
      -
      - -
      - -
      - - -
      -
      - -
      -
      -
      -
      -
      -
      -
      - - - - - - - - - - - - - - edit - - - - - - \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 64eaf1d8..1f088d2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,1782 +1,1658 @@ { - "name": "MYNT v3 rewrite", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "dependencies": { - "@material/web": "^2.2.0", - "@rollup/plugin-node-resolve": "^15.3.0", - "lit": "^3.2.1", - "rollup": "^4.24.0", - "sass": "^1.80.3" - }, - "devDependencies": { - "vite": "^5.4.9", - "vite-plugin-static-copy": "^2.0.0" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@lit-labs/ssr-dom-shim": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.2.1.tgz", - "integrity": "sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==", - "license": "BSD-3-Clause" - }, - "node_modules/@lit/reactive-element": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.4.tgz", - "integrity": "sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==", - "license": "BSD-3-Clause", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.2.0" - } - }, - "node_modules/@material/web": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@material/web/-/web-2.2.0.tgz", - "integrity": "sha512-k1Pi7f04qDRkHfIEdcnL++udN+x5Oq34R47n0Fk7Xo49uz9aKb6ZkO42jC6uvMH0ahOiFDktX9txHgYMDvNa+A==", - "license": "Apache-2.0", - "workspaces": [ - "catalog" - ], - "dependencies": { - "lit": "^2.7.4 || ^3.0.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@parcel/watcher": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", - "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", - "license": "MIT", - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.4.1", - "@parcel/watcher-darwin-arm64": "2.4.1", - "@parcel/watcher-darwin-x64": "2.4.1", - "@parcel/watcher-freebsd-x64": "2.4.1", - "@parcel/watcher-linux-arm-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-musl": "2.4.1", - "@parcel/watcher-linux-x64-glibc": "2.4.1", - "@parcel/watcher-linux-x64-musl": "2.4.1", - "@parcel/watcher-win32-arm64": "2.4.1", - "@parcel/watcher-win32-ia32": "2.4.1", - "@parcel/watcher-win32-x64": "2.4.1" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", - "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", - "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", - "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", - "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", - "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", - "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", - "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", - "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", - "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", - "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", - "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", - "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@rollup/plugin-node-resolve": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", - "integrity": "sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==", - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "@types/resolve": "1.20.2", - "deepmerge": "^4.2.2", - "is-module": "^1.0.0", - "resolve": "^1.22.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^2.78.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.2.tgz", - "integrity": "sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", - "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", - "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", - "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", - "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", - "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", - "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", - "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", - "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", - "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", - "cpu": [ - "ppc64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", - "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", - "cpu": [ - "riscv64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", - "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", - "cpu": [ - "s390x" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", - "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", - "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", - "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", - "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", - "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "license": "MIT" - }, - "node_modules/@types/resolve": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", - "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", - "license": "MIT" - }, - "node_modules/@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "license": "Apache-2.0", - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", - "license": "MIT" - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "license": "MIT" - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/lit": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/lit/-/lit-3.2.1.tgz", - "integrity": "sha512-1BBa1E/z0O9ye5fZprPtdqnc0BFzxIxTTOO/tQFmyC/hj1O3jL4TfmLBw0WEwjAokdLwpclkvGgDJwTIh0/22w==", - "license": "BSD-3-Clause", - "dependencies": { - "@lit/reactive-element": "^2.0.4", - "lit-element": "^4.1.0", - "lit-html": "^3.2.0" - } - }, - "node_modules/lit-element": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.1.1.tgz", - "integrity": "sha512-HO9Tkkh34QkTeUmEdNYhMT8hzLid7YlMlATSi1q4q17HE5d9mrrEHJ/o8O2D0cMi182zK1F3v7x0PWFjrhXFew==", - "license": "BSD-3-Clause", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.2.0", - "@lit/reactive-element": "^2.0.4", - "lit-html": "^3.2.0" - } - }, - "node_modules/lit-html": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.2.1.tgz", - "integrity": "sha512-qI/3lziaPMSKsrwlxH/xMgikhQ0EGOX2ICU73Bi/YHFvz2j/yMCIrw4+puF2IpQ4+upd3EWbvnHM9+PnJn48YA==", - "license": "BSD-3-Clause", - "dependencies": { - "@types/trusted-types": "^2.0.2" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "license": "MIT" - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "license": "MIT" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.1.0", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "license": "MIT", - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rollup": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", - "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.6" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.24.0", - "@rollup/rollup-android-arm64": "4.24.0", - "@rollup/rollup-darwin-arm64": "4.24.0", - "@rollup/rollup-darwin-x64": "4.24.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", - "@rollup/rollup-linux-arm-musleabihf": "4.24.0", - "@rollup/rollup-linux-arm64-gnu": "4.24.0", - "@rollup/rollup-linux-arm64-musl": "4.24.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", - "@rollup/rollup-linux-riscv64-gnu": "4.24.0", - "@rollup/rollup-linux-s390x-gnu": "4.24.0", - "@rollup/rollup-linux-x64-gnu": "4.24.0", - "@rollup/rollup-linux-x64-musl": "4.24.0", - "@rollup/rollup-win32-arm64-msvc": "4.24.0", - "@rollup/rollup-win32-ia32-msvc": "4.24.0", - "@rollup/rollup-win32-x64-msvc": "4.24.0", - "fsevents": "~2.3.2" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/sass": { - "version": "1.80.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.3.tgz", - "integrity": "sha512-ptDWyVmDMVielpz/oWy3YP3nfs7LpJTHIJZboMVs8GEC9eUmtZTZhMHlTW98wY4aEorDfjN38+Wr/XjskFWcfA==", - "license": "MIT", - "dependencies": { - "@parcel/watcher": "^2.4.1", - "chokidar": "^4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tslib": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", - "license": "0BSD" - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/vite": { - "version": "5.4.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz", - "integrity": "sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vite-plugin-static-copy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-2.0.0.tgz", - "integrity": "sha512-b/quFjTUa/RY9t3geIyeeT2GtWEoRI0GawYFFjys5iMLGgVP638NTGu0RoMjwmi8MoZZ3BQw4OQvb1GpVcXZDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "chokidar": "^3.5.3", - "fast-glob": "^3.2.11", - "fs-extra": "^11.1.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0" - } - }, - "node_modules/vite-plugin-static-copy/node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/vite-plugin-static-copy/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - } - } + "name": "better-material-you-newtab", + "version": "4.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "better-material-you-newtab", + "version": "4.0.0", + "dependencies": { + "@material/web": "^2.2.0", + "lit": "^3.2.1", + "sass": "^1.80.3" + }, + "devDependencies": { + "vite": "^5.4.9", + "vite-plugin-static-copy": "^2.0.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lit-labs/ssr-dom-shim": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.2.1.tgz", + "integrity": "sha512-wx4aBmgeGvFmOKucFKY+8VFJSYZxs9poN3SDNQFF6lT6NrQUnHiPB2PWz2sc4ieEcAaYYzN+1uWahEeTq2aRIQ==", + "license": "BSD-3-Clause" + }, + "node_modules/@lit/reactive-element": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.4.tgz", + "integrity": "sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==", + "license": "BSD-3-Clause", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.2.0" + } + }, + "node_modules/@material/web": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@material/web/-/web-2.2.0.tgz", + "integrity": "sha512-k1Pi7f04qDRkHfIEdcnL++udN+x5Oq34R47n0Fk7Xo49uz9aKb6ZkO42jC6uvMH0ahOiFDktX9txHgYMDvNa+A==", + "license": "Apache-2.0", + "workspaces": [ + "catalog" + ], + "dependencies": { + "lit": "^2.7.4 || ^3.0.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "license": "MIT", + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", + "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", + "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", + "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", + "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", + "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", + "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", + "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", + "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", + "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", + "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", + "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", + "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", + "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", + "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", + "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", + "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "license": "Apache-2.0", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-extra": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "license": "MIT" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/lit": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/lit/-/lit-3.2.1.tgz", + "integrity": "sha512-1BBa1E/z0O9ye5fZprPtdqnc0BFzxIxTTOO/tQFmyC/hj1O3jL4TfmLBw0WEwjAokdLwpclkvGgDJwTIh0/22w==", + "license": "BSD-3-Clause", + "dependencies": { + "@lit/reactive-element": "^2.0.4", + "lit-element": "^4.1.0", + "lit-html": "^3.2.0" + } + }, + "node_modules/lit-element": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.1.1.tgz", + "integrity": "sha512-HO9Tkkh34QkTeUmEdNYhMT8hzLid7YlMlATSi1q4q17HE5d9mrrEHJ/o8O2D0cMi182zK1F3v7x0PWFjrhXFew==", + "license": "BSD-3-Clause", + "dependencies": { + "@lit-labs/ssr-dom-shim": "^1.2.0", + "@lit/reactive-element": "^2.0.4", + "lit-html": "^3.2.0" + } + }, + "node_modules/lit-html": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.2.1.tgz", + "integrity": "sha512-qI/3lziaPMSKsrwlxH/xMgikhQ0EGOX2ICU73Bi/YHFvz2j/yMCIrw4+puF2IpQ4+upd3EWbvnHM9+PnJn48YA==", + "license": "BSD-3-Clause", + "dependencies": { + "@types/trusted-types": "^2.0.2" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "license": "MIT", + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", + "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.24.0", + "@rollup/rollup-android-arm64": "4.24.0", + "@rollup/rollup-darwin-arm64": "4.24.0", + "@rollup/rollup-darwin-x64": "4.24.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", + "@rollup/rollup-linux-arm-musleabihf": "4.24.0", + "@rollup/rollup-linux-arm64-gnu": "4.24.0", + "@rollup/rollup-linux-arm64-musl": "4.24.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", + "@rollup/rollup-linux-riscv64-gnu": "4.24.0", + "@rollup/rollup-linux-s390x-gnu": "4.24.0", + "@rollup/rollup-linux-x64-gnu": "4.24.0", + "@rollup/rollup-linux-x64-musl": "4.24.0", + "@rollup/rollup-win32-arm64-msvc": "4.24.0", + "@rollup/rollup-win32-ia32-msvc": "4.24.0", + "@rollup/rollup-win32-x64-msvc": "4.24.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/sass": { + "version": "1.80.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.3.tgz", + "integrity": "sha512-ptDWyVmDMVielpz/oWy3YP3nfs7LpJTHIJZboMVs8GEC9eUmtZTZhMHlTW98wY4aEorDfjN38+Wr/XjskFWcfA==", + "license": "MIT", + "dependencies": { + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tslib": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", + "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", + "license": "0BSD" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/vite": { + "version": "5.4.9", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz", + "integrity": "sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-static-copy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-2.0.0.tgz", + "integrity": "sha512-b/quFjTUa/RY9t3geIyeeT2GtWEoRI0GawYFFjys5iMLGgVP638NTGu0RoMjwmi8MoZZ3BQw4OQvb1GpVcXZDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": "^3.5.3", + "fast-glob": "^3.2.11", + "fs-extra": "^11.1.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0" + } + }, + "node_modules/vite-plugin-static-copy/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/vite-plugin-static-copy/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + } + } } diff --git a/package.json b/package.json index b2e6b45a..91a6f61d 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { - "name": "MYNT", - "version": "3.1.5", + "name": "better-material-you-newtab", + "version": "4.0.0", "scripts": { - "dev": "vite", - "build": "vite build" + "dev": "vite --host", + "build": "rimraf dist && vite build" }, "dependencies": { "@material/web": "^2.2.0", diff --git a/src/app.js b/src/app.js index 1aba2a37..c6fb667d 100644 --- a/src/app.js +++ b/src/app.js @@ -1,260 +1,1043 @@ +//import '/home/ubuntu/BetterMaterialYouNewTab/node_modules/@material/web/all.js'; +//import '/home/ubuntu/BetterMaterialYouNewTab/node_modules/@material/web/icon/icon.js' // Import Material Web components import '@material/web/all.js'; import '@material/web/icon/icon.js'; -import translations from '/src/languages.js'; +// Function to detect which browser is being used +const isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor); +const isFirefox = typeof browser !== "undefined"; +// const isFirefox = navigator.userAgent.toLowerCase().indexOf("firefox") > -1; +const isEdge = /Edg/.test(navigator.userAgent); +const isBrave = navigator.brave && navigator.brave.isBrave; // Detect Brave +const isDesktop = !/Android|iPhone|iPad|iPod/.test(navigator.userAgent); // Check if the device is not mobile + let proxyurl; let clocktype; let hourformat; -function getLanguageStatus(key) { - return localStorage.getItem(key); -} -window.addEventListener('DOMContentLoaded', async () => { - try { - // Load the API key, location and proxy from localStorage - const savedApiKey = localStorage.getItem("weatherApiKey"); - const userAPIInput = document.getElementById("userAPI"); - const savedLocation = localStorage.getItem("weatherLocation"); - const userLocInput = document.getElementById("userLoc"); - const savedProxy = localStorage.getItem("proxy"); - const userProxyInput = document.getElementById("userproxy"); - if (savedApiKey) { - userAPIInput.value = savedApiKey; - } - if (savedLocation) { - userLocInput.value = savedLocation; - } - if (savedProxy) { - userProxyInput.value = savedProxy; + +window.addEventListener("DOMContentLoaded", async () => { + // Cache DOM elements + const userAPIInput = document.getElementById("userAPI"); + const userLocInput = document.getElementById("userLoc"); + const userProxyInput = document.getElementById("userproxy"); + const saveAPIButton = document.getElementById("saveAPIbtn"); + const saveLocButton = document.getElementById("saveLocbtn"); + const useGPSButton = document.getElementById("useGPSbtn"); + const saveProxyButton = document.getElementById("saveproxybtn"); + const resetbtn = document.getElementById("resetsettingsbtn"); + const resetapi = document.getElementById("resetAPIbtn"); + const resetproxy = document.getElementById("resetproxybtn"); + const proxyhostbtn = document.getElementById("HostproxyButton"); + // Load saved data from localStorage + const savedApiKey = localStorage.getItem("weatherApiKey"); + const savedLocation = localStorage.getItem("weatherLocation"); + const savedProxy = localStorage.getItem("proxy"); + const defaultProxyURL = "https://mynt-proxy.rhythmcorehq.com"; + // Pre-fill input fields with saved data + if (savedLocation) userLocInput.value = savedLocation; + if (savedApiKey) { + userAPIInput.value = savedApiKey; + resetapi.style.display = "block"; + saveAPIButton.style.display = "none"; + } else { + resetapi.style.display = "none"; + saveAPIButton.style.removeProperty("display"); + } + + // Add event listener to reset API but ton + resetapi.addEventListener("click", () => { + showDialog({ + headline: 'Reset Weather API Key?', + icon: 'warning', + textBtn: 'Yes', + tonalBtn: 'No', + formText: "Are you sure you want to reset the Weather API key? to the default key", + onTextBtnClick: () => { + localStorage.removeItem("weatherApiKey"); + location.reload(); + }, + onTonalBtnClick: () => { + return; + }, + onIgnored: () => { + return; + } + }); + + }); + resetproxy.addEventListener("click", () => { + showDialog({ + headline: 'Reset Proxy URL?', + icon: 'warning', + textBtn: 'Yes', + tonalBtn: 'No', + formText: "Are you sure you want to reset the Proxy URL to the default URL?\n\nIt is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + onTextBtnClick: () => { + localStorage.removeItem("proxy"); + location.reload(); + }, + onTonalBtnClick: () => { + return; + }, + onIgnored: () => { + return; + } + }); + }); + + //Default proxy url + + + // Function to simulate button click on Enter key press + function handleEnterPress(event, buttonId) { + if (event.key === "Enter") { + document.getElementById(buttonId).click(); } - function exportLocalStorage() { - const localStorageData = JSON.stringify(localStorage); - const blob = new Blob([localStorageData], { type: 'application/json' }); - const url = URL.createObjectURL(blob); - - const a = document.createElement('a'); - a.href = url; - a.download = 'Material-You-NewTab-Settings.json'; - document.body.appendChild(a); - a.click(); - document.body.removeChild(a); - URL.revokeObjectURL(url); - } - - - const saveAPIButton = document.getElementById("saveAPIbtn"); - const saveLocButton = document.getElementById("saveLocbtn"); - const resetbtn = document.getElementById("resetsettings"); - const exportbtn = document.getElementById("exportbtn"); - const importbtn = document.getElementById("fileInputbtn"); - const saveProxyButton = document.getElementById("saveproxybtn"); - - exportbtn.addEventListener("click", () => { - exportLocalStorage(); + } + + // Add event listeners for handling Enter key presses + userAPIInput.addEventListener("keydown", (event) => handleEnterPress(event, "saveAPIbtn")); + userLocInput.addEventListener("keydown", (event) => handleEnterPress(event, "saveLocbtn")); + userProxyInput.addEventListener("keydown", (event) => handleEnterPress(event, "saveproxybtn")); + + // Save API key to localStorage + saveAPIButton.addEventListener("click", () => { + const apiKey = userAPIInput.value.trim(); + localStorage.setItem("weatherApiKey", apiKey); + userAPIInput.value = ""; + showDialog({ + headline: 'API Key Saved', + icon: 'done', + textBtn: 'I will Refresh later', + tonalBtn: 'OK', + formText: "API Key saved successfully. Page need to be Refreshed to apply changes.", + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } }); - - importbtn.addEventListener("click", () => { - document.getElementById('fileInput').click(); + }); + + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; + // Reset settings (clear localStorage) + resetbtn.addEventListener("click", () => { + showDialog({ + headline: 'Reset All Settings?', + icon: 'delete_forever', + textBtn: 'Reset', + tonalBtn: 'Cancel', + formText: translations[currentLanguage]?.confirmRestore || translations["en"].confirmRestore, + onTextBtnClick: () => { + localStorage.clear(); + location.reload(); + }, + onTonalBtnClick: () => { + return; + }, + onIgnored: () => { + return; + } }); - document.getElementById('fileInput').addEventListener('change', handleFileSelect); + }); - function handleFileSelect(event) { - const file = event.target.files[0]; - if (!file) return; - - const reader = new FileReader(); - reader.onload = function(e) { - try { - const data = JSON.parse(e.target.result); - for (const key in data) { - localStorage.setItem(key, data[key]); + // Save the proxy to localStorage + saveProxyButton.addEventListener("click", () => { + let proxyurl = userProxyInput.value.trim(); + // If the input is empty, use the default proxy. + if (proxyurl === "") { + proxyurl = defaultProxyURL; + } else { + // Validate if input starts with "http://" or "https://" + if (!(proxyurl.startsWith("http://") || proxyurl.startsWith("https://"))) { + // Automatically correct input by adding "http:/"" if not present + proxyurl = "http://" + proxyurl; + } + document.getElementById("userproxy").value = ""; + // Remove trailing slash if exists + if (proxyurl.endsWith("/")) { + proxyurl = proxyurl.slice(0, -1); // Remove the last character ("/") + } + } + // Set the proxy in localStorage, clear the input, and reload the page + localStorage.setItem("proxy", proxyurl); + userProxyInput.value = proxyurl; + showDialog({ + headline: 'Proxy Saved', + icon: 'done', + textBtn: 'I will Refresh later', + tonalBtn: 'OK', + formText: "Proxy URL saved successfully. Page will Refresh to apply changes.", + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } + }); + }); + + // Default Weather API key + const weatherApiKeys = [ + "d36ce712613d4f21a6083436240910", + "db0392b338114f208ee135134240312", + "de5f7396db034fa2bf3140033240312", + "c64591e716064800992140217240312", + "9b3204c5201b4b4d8a2140330240312", + "eb8a315c15214422b60140503240312", + "cd148ebb1b784212b74140622240312", + "7ae67e219af54df2840140801240312", + "0a6bc8a404224c8d89953341241912", + "f59e58d7735d4739ae953115241912" + ]; + const defaultApiKey = weatherApiKeys[Math.floor(Math.random() * weatherApiKeys.length)]; + + // Determine API key and proxy URL to use + const apiKey = savedApiKey || defaultApiKey; + proxyurl = savedProxy || defaultProxyURL; + + // Determine the location to use + let currentUserLocation = savedLocation; + + // Flag indicating whether to use GPS + const useGPS = JSON.parse(localStorage.getItem("useGPS")); + + // Fetch weather data based on a location + async function fetchWeather(location) { + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; + try { + let parsedData = JSON.parse(localStorage.getItem("weatherParsedData")); + const weatherParsedTime = parseInt(localStorage.getItem("weatherParsedTime")); + const weatherParsedLocation = localStorage.getItem("weatherParsedLocation"); + const weatherParsedLang = localStorage.getItem("weatherParsedLang"); + + const retentionTime = savedApiKey ? 120000 : 960000; // 2 min for user-entered API key, 16 min otherwise + + if (!parsedData || ((Date.now() - weatherParsedTime) > retentionTime) || (weatherParsedLocation !== currentUserLocation) || (weatherParsedLang !== currentLanguage)) { + // Fetch weather data using Weather API + let weatherApi = `https://api.weatherapi.com/v1/current.json?key=${apiKey}&q=${currentUserLocation}&aqi=no&lang=${currentLanguage}`; + let data = await fetch(weatherApi); + parsedData = await data.json(); + if (!parsedData.error) { + // Extract only the necessary fields before saving + const filteredData = { + location: { + name: parsedData.location.name, + }, + current: { + condition: { + text: parsedData.current.condition.text, + icon: parsedData.current.condition.icon, + }, + temp_c: parsedData.current.temp_c, + temp_f: parsedData.current.temp_f, + humidity: parsedData.current.humidity, + feelslike_c: parsedData.current.feelslike_c, + feelslike_f: parsedData.current.feelslike_f, + }, + }; + + // Save filtered weather data to localStorage + localStorage.setItem("weatherParsedData", JSON.stringify(filteredData)); + localStorage.setItem("weatherParsedTime", Date.now()); // Save time of last fetching + localStorage.setItem("weatherParsedLocation", currentUserLocation); // Save user location + localStorage.setItem("weatherParsedLang", currentLanguage); // Save language preference + } + UpdateWeather(); + } else { + setTimeout(UpdateWeather, 25); + } + + function UpdateWeather() { + // Weather data + const conditionText = parsedData.current.condition.text; + const tempCelsius = Math.round(parsedData.current.temp_c); + const tempFahrenheit = Math.round(parsedData.current.temp_f); + const humidity = parsedData.current.humidity; + const feelsLikeCelsius = parsedData.current.feelslike_c; + const feelsLikeFahrenheit = parsedData.current.feelslike_f; + + // Update DOM elements with the weather data + document.getElementById("conditionText").textContent = conditionText; + + // Localize and display temperature and humidity + const localizedHumidity = localizeNumbers(humidity.toString(), currentLanguage); + const localizedTempCelsius = localizeNumbers(tempCelsius.toString(), currentLanguage); + const localizedFeelsLikeCelsius = localizeNumbers(feelsLikeCelsius.toString(), currentLanguage); + const localizedTempFahrenheit = localizeNumbers(tempFahrenheit.toString(), currentLanguage); + const localizedFeelsLikeFahrenheit = localizeNumbers(feelsLikeFahrenheit.toString(), currentLanguage); + + // Set humidity level + const humidityLabel = translations[currentLanguage]?.humidityLevel || translations["en"].humidityLevel; // Fallback to English if translation is missing + document.getElementById("humidityLevel").textContent = `${humidityLabel} ${localizedHumidity}%`; + + // Event Listener for the Fahrenheit toggle + const fahrenheitCheckbox = document.getElementById("fahrenheitCheckbox"); + const updateTemperatureDisplay = () => { + const tempElement = document.getElementById("temp"); + const feelsLikeElement = document.getElementById("feelsLike"); + const feelsLikeLabel = translations[currentLanguage]?.feelsLike || translations["en"].feelsLike; + + if (fahrenheitCheckbox.selected) { + // Update temperature + tempElement.textContent = localizedTempFahrenheit; + const tempUnitF = document.createElement("span"); + tempUnitF.className = "tempUnit"; + tempUnitF.textContent = "°F"; + tempElement.appendChild(tempUnitF); + + // TODO: Change, it's hard-coded for cs language + // Update feels like + const feelsLikeFUnit = currentLanguage === 'cs' ? ' °F' : '°F'; + feelsLikeElement.textContent = `${feelsLikeLabel} ${localizedFeelsLikeFahrenheit}${feelsLikeFUnit}`; + } else { + // Update temperature + tempElement.textContent = localizedTempCelsius; + const tempUnitC = document.createElement("span"); + tempUnitC.className = "tempUnit"; + tempUnitC.textContent = "°C"; + tempElement.appendChild(tempUnitC); + + // TODO: Change, it's hard-coded for cs language + // Update feels like + const feelsLikeCUnit = currentLanguage === 'cs' ? ' °C' : '°C'; + feelsLikeElement.textContent = `${feelsLikeLabel} ${localizedFeelsLikeCelsius}${feelsLikeCUnit}`; } - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Settings Imported Successfully!"; - document.getElementById('alertform').innerText = "Settings has been Imported Successfully!, Page Refresh Recommended"; - alert.show(); - alert.addEventListener('close', () => { - location.reload(); - }); - - } catch (error) { - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Error While Importing Settings"; - document.getElementById('alertform').innerText = 'Error importing settings: ' + error.message; - alert.show(); + }; + updateTemperatureDisplay(); + + // Setting weather Icon + const newWIcon = parsedData.current.condition.icon; + const weatherIcon = newWIcon.replace("//cdn", "https://cdn"); + document.getElementById("wIcon").src = weatherIcon; + + // TODO: Change, it's hard-coded for only few languages + // Define minimum width for the slider based on the language + const humidityMinWidth = { + idn: "47%", + hu: "48%", + en: "42%", // Default for English and others + }; + const slider = document.getElementById("slider"); + slider.style.minWidth = humidityMinWidth[currentLanguage] || humidityMinWidth["en"]; + + // Set slider width based on humidity + if (humidity > 40) { + slider.style.width = `calc(${humidity}% - 60px)`; } - }; - - reader.readAsText(file); - } - // Add an event listener to save the API key when the "Save" button is clicked - saveAPIButton.addEventListener("click", () => { - const apiKey = userAPIInput.value; - // Save the API key to localStorage - localStorage.setItem("weatherApiKey", apiKey); - document.getElementById("userAPI").value = ""; - location.reload(); - }); - - saveLocButton.addEventListener("click", () => { - const userLocation = userLocInput.value; - // Save the location to localStorage - localStorage.setItem("weatherLocation", userLocation); - document.getElementById("userLoc").value = ""; - location.reload(); - }); - resetbtn.addEventListener("click", () => { - const resetdialog =document.getElementById("resetdialog"); + + // Update location + var city = parsedData.location.name; + // var city = "Thiruvananthapuram"; + var maxLength = 10; + var limitedText = city.length > maxLength ? city.substring(0, maxLength) + "..." : city; + document.getElementById("location").textContent = limitedText; + + } + } catch (error) { + console.error("Error fetching weather data:", error); + const savedApiKey = localStorage.getItem("weatherApiKey"); + if (savedApiKey) { + showDialog({ + headline: 'Weather Data Unavailable', + icon: 'error', + textBtn: 'Reset API Key', + tonalBtn: 'Cancel', + formText: "Failed to fetch weather data. Please check your API key and location or internet connection.\n\n Click 'Reset API Key' to reset the Weather API key to the default value.", + onTextBtnClick: () => { + localStorage.removeItem("weatherApiKey"); + setTimeout(() => { + showDialog({ + headline: 'Successfully Reset API Key', + icon: 'done', + textBtn: 'I will Refresh later', + tonalBtn: 'OK', + formText: "The Weather API key has been reset to the default value. Page need to be Refreshed to apply changes.", + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } + }); + }, 1500); + }, + onTonalBtnClick: () => { + return; + }, + onIgnored: () => { + return; + } + })} + else{ + showAlert("Weather Data Unavailable", "Failed to fetch weather data. Please check your API key and location or internet connection."); + } + } + } + + function showAlert(title, description) { + const menuBar = document.getElementById("menuBar"); + if (menuBar.style.display === "none") { + const alert = document.getElementById("alertbody"); + document.getElementById('alertbodyheadline').innerText = title; + document.getElementById('alertbodyform').innerText = description; + alert.show(); + } + else { + const alert = document.getElementById("menualertbody"); + document.getElementById('menualertbodyheadline').innerText = title; + document.getElementById('menualertbodyform').innerText = description; + alert.show(); + } + } + function showDialog({ headline, icon, textBtn, tonalBtn, formText, onTextBtnClick, onTonalBtnClick, onIgnored }) { + const menuBar = document.getElementById("menuBar"); + if (menuBar.style.display === "none") { + const resetdialog = document.getElementById("resetdialog"); + document.getElementById('dialogheadline').innerText = headline; + document.getElementById('dialogicon').innerText = icon; + document.getElementById('dialogtextbtn').innerText = textBtn; + document.getElementById('dialogtonaltbtn').innerText = tonalBtn; + document.getElementById('form').innerText = formText; resetdialog.show(); -resetdialog.addEventListener('close', () => { - const cancelClicked = resetdialog.returnValue === 'cancel'; - const deleteClicked = resetdialog.returnValue === 'delete'; - if(deleteClicked){ - localStorage.clear(); - location.reload(); - }else{ - return; + + // Remove any existing event listeners + resetdialog.removeEventListener('close', handleDialogClose); + + // Define the event handler function + function handleDialogClose() { + const output = resetdialog.returnValue; + if (output === 'txtbtn') { + onTextBtnClick(); + } else if (output === 'tonalbtn') { + onTonalBtnClick(); + } else { + onIgnored(); + } + } + + // Add the event listener + resetdialog.addEventListener('close', handleDialogClose); + } else { + const resetdialog = document.getElementById("menuresetdialog"); + document.getElementById('menudialogheadline').innerText = headline; + document.getElementById('menudialogicon').innerText = icon; + document.getElementById('menudialogtextbtn').innerText = textBtn; + document.getElementById('menudialogtonaltbtn').innerText = tonalBtn; + document.getElementById('menuform').innerText = formText; + resetdialog.show(); + + // Remove any existing event listeners + resetdialog.removeEventListener('close', handleDialogClose); + + // Define the event handler function + function handleDialogClose() { + const output = resetdialog.returnValue; + if (output === 'txtbtn') { + onTextBtnClick(); + } else if (output === 'tonalbtn') { + onTonalBtnClick(); + } else { + onIgnored(); + } + } + + // Add the event listener + resetdialog.addEventListener('close', handleDialogClose); + } + } + + // Make showAlert function available globally + window.showAlert = showAlert; + window.showDialog = showDialog; + + // Show welcome alert only on the first load + if (!localStorage.getItem("firstLoadCompleted")) { + showWelcomeDialog(); } - }); - + function showWelcomeDialog() { + showDialog({ + headline: 'Welcome to Better Material You NewTab', + icon: 'info', + textBtn: 'Privacy Policy', + tonalBtn: 'Agree & Continue', + formText: `This is the homepage of your browser. You can customize it by clicking on the pencil icon on the bottom right corner.\n\nBy clicking 'Agree & Continue', you agree to our Privacy Policy.`, + onTextBtnClick: () => { + window.location.href = "/privacy-policy.html"; + }, + onTonalBtnClick: () => { + localStorage.setItem("firstLoadCompleted", "true"); + }, + onIgnored: () => { + setTimeout(showWelcomeDialog, 1000); + } }); - saveProxyButton.addEventListener("click", () => { - const proxyurl = userProxyInput.value; - - if (proxyurl.startsWith("http://") || proxyurl.startsWith("https://")) { - if (!proxyurl.endsWith("/")) { - // Save the proxy to localStorage - localStorage.setItem("proxy", proxyurl); - document.getElementById("userproxy").value = ""; - location.reload(); + } + + + // Function to fetch GPS-based location + async function fetchGPSLocation() { + try { + const getLocationFromGPS = () => { + return new Promise((resolve, reject) => { + navigator.geolocation.getCurrentPosition( + (position) => { + resolve({ + latitude: position.coords.latitude, + longitude: position.coords.longitude, + }); + }, + (error) => reject(error), + { timeout: 4000 } + ); + }); + }; + + const { latitude, longitude } = await getLocationFromGPS(); + return `${latitude},${longitude}`; + } catch (error) { + console.error("GPS Location retrieval failed: ", error); + } + } + + // Fetch location dynamically based on user preference + await (async function initializeLocation() { + try { + if (useGPS) { + try { + // Use GPS for dynamic location + currentUserLocation = await fetchGPSLocation(); + } catch { + // Silent failover } - else { - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Invalid proxy"; - document.getElementById('alertform').innerText = "There shouldn't be / at the end of the link"; - alert.show(); + } + + if (!currentUserLocation) { + // Fallback to IP-based location if no manual input + const geoLocation = "https://ipinfo.io/json/"; + const locationData = await fetch(geoLocation); + const parsedLocation = await locationData.json(); + currentUserLocation = parsedLocation.loc; + } + + // Fetch weather data + fetchWeather(currentUserLocation); + } catch (error) { + console.error("Failed to determine location:", error); + currentUserLocation = "auto:ip"; + fetchWeather(currentUserLocation); + } + })(); + + // Handle "Use GPS" button click + useGPSButton.addEventListener("click", () => { + // Set the flag to use GPS dynamically and remove manual location + localStorage.setItem("useGPS", true); + localStorage.removeItem("weatherLocation"); + location.reload(); + }); + + // Handle manual location input + saveLocButton.addEventListener("click", () => { + const userLocation = userLocInput.value.trim(); + localStorage.setItem("weatherLocation", userLocation); + localStorage.setItem("useGPS", false); + userLocInput.value = ""; + fetchWeather(userLocation); + location.reload(); + }); +}); +// ---------------------------end of weather stuff-------------------- + +// ------------------------ Bookmark System ----------------------------------- +// DOM Variables +const bookmarkButton = document.getElementById("bookmarkButton"); +const bookmarkSidebar = document.getElementById("bookmarkSidebar"); +const bookmarkList = document.getElementById("bookmarkList"); +const bookmarkSearch = document.getElementById("bookmarkSearch"); +const bookmarkSearchClearButton = document.getElementById("clearSearchButton"); +const bookmarkViewGrid = document.getElementById("bookmarkViewGrid"); +const bookmarkViewList = document.getElementById("bookmarkViewList"); + +var bookmarksAPI; +if (isFirefox && browser.bookmarks) { + bookmarksAPI = browser.bookmarks; +} else if (typeof chrome !== "undefined" && chrome.bookmarks) { + bookmarksAPI = chrome.bookmarks; +} else { + console.log("Bookmarks API is either not supported in this browser or permission is not granted by the user."); +} + +document.addEventListener("DOMContentLoaded", function () { + + bookmarkButton.addEventListener("click", function () { + toggleBookmarkSidebar(); + bookmarkSearchClearButton.click(); + }); + + bookmarkViewGrid.addEventListener("click", function () { + if (!bookmarkGridCheckbox.selected) bookmarkGridCheckbox.click(); + }); + + bookmarkViewList.addEventListener("click", function () { + if (bookmarkGridCheckbox.selected) bookmarkGridCheckbox.click(); + }); + + document.addEventListener("click", function (event) { + if (!bookmarkSidebar.contains(event.target) && !bookmarkButton.contains(event.target) && bookmarkSidebar.classList.contains("open")) { + toggleBookmarkSidebar(); + } + }); + + bookmarkSearch.addEventListener("input", function () { + const searchTerm = bookmarkSearch.value.toLowerCase(); + const bookmarks = bookmarkList.querySelectorAll("li[data-url], li.folder"); // Include both bookmarks and folders + + Array.from(bookmarks).forEach(function (bookmark) { + const text = bookmark.textContent.toLowerCase(); + const url = bookmark.dataset.url ? bookmark.dataset.url.toLowerCase() : ""; + const isFolder = bookmark.classList.contains("folder"); + + // Show bookmarks if the search term matches either the name or the URL + if (!isFolder && (text.includes(searchTerm) || url.includes(searchTerm))) { + bookmark.style.display = ""; // Show matching bookmarks + } else if (isFolder) { + // For folders, check if any child bookmarks match the search + const childBookmarks = bookmark.querySelectorAll("li[data-url]"); + let hasVisibleChild = false; + Array.from(childBookmarks).forEach(function (childBookmark) { + const childText = childBookmark.textContent.toLowerCase(); + const childUrl = childBookmark.dataset.url ? childBookmark.dataset.url.toLowerCase() : ""; + if (childText.includes(searchTerm) || childUrl.includes(searchTerm)) { + hasVisibleChild = true; + childBookmark.style.display = ""; // Show matching child bookmarks + } else { + childBookmark.style.display = "none"; // Hide non-matching child bookmarks + } + }); + + if (hasVisibleChild) { + bookmark.style.display = ""; // Show folder if it has matching child bookmarks + bookmark.classList.add("open"); // Open folder to show matching child bookmarks + } else { + bookmark.style.display = "none"; // Hide folder if no child matches + bookmark.classList.remove("open"); } } else { - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Invalid proxy"; - document.getElementById('alertform').innerText = "Only links (starting with http:// or https://) are allowed."; - alert.show(); + bookmark.style.display = "none"; // Hide non-matching bookmarks } }); - // Set the default API key - const defaultApiKey = 'd36ce712613d4f21a6083436240910'; // Default Weather API key - const defaultProxyURL = 'https://mynt-proxy.rhythmcorehq.com'; //Default proxy url - // Check if the user has entered their own API key - const userApiKey = userAPIInput.value.trim(); - const userproxyurl = userProxyInput.value.trim(); - - // Use the user's API key if available, otherwise use the default API key - const apiKey = userApiKey || defaultApiKey; - proxyurl = userproxyurl || defaultProxyURL; - // Getting current user location - const geoLocation = 'https://ipinfo.io/json/'; - const locationData = await fetch(geoLocation); - const parsedLocation = await locationData.json(); - const currentUserLocation = parsedLocation.ip; - if (currentUserLocation) { - - const locationQuery = savedLocation || currentUserLocation; - var currentLanguage = getLanguageStatus('selectedLanguage') || 'en'; - localStorage.setItem("locationQ", currentUserLocation); - var weatherApi = `https://api.weatherapi.com/v1/current.json?key=${apiKey}&q=${locationQuery}&aqi=no&lang=${currentLanguage}`; - } else { - const savedlocQ = localStorage.getItem("locationQ"); - const locationQuery = savedLocation || savedlocQ; - var currentLanguage = getLanguageStatus('selectedLanguage') || 'en'; - var weatherApi = `https://api.weatherapi.com/v1/current.json?key=${apiKey}&q=${locationQuery}&aqi=no&lang=${currentLanguage}`; - } - - - const data = await fetch(weatherApi); - const parsedData = await data.json(); - // Weather data - const conditionText = parsedData.current.condition.text; - const tempCelsius = Math.round(parsedData.current.temp_c); - const tempFahrenheit = Math.round(tempCelsius * 9 / 5 + 32); - const humidity = parsedData.current.humidity; - const feelsLikeCelsius = parsedData.current.feelslike_c; - const feelsLikeFahrenheit = Math.round(feelsLikeCelsius * 9 / 5 + 32); - - // Update DOM elements - document.getElementById("conditionText").textContent = conditionText; - document.getElementById("humidityLevel").textContent = `${translations[currentLanguage].humidityText} ${humidity}%`; - - // Event Listener for the Fahrenheit toggle - const fahrenheitCheckbox = document.getElementById("fahrenheitCheckbox"); - const updateTemperatureDisplay = () => { - if (fahrenheitCheckbox.selected) { - document.getElementById("temp").textContent = `${tempFahrenheit}°`; - document.getElementById("feelsLike").textContent = `${translations[currentLanguage].feelsLike} ${feelsLikeFahrenheit}°F`; + if (searchTerm === "") { + // Reset display for all bookmarks and folders + Array.from(bookmarks).forEach(function (bookmark) { + bookmark.style.display = ""; + if (bookmark.classList.contains("folder")) { + bookmark.classList.remove("open"); + const childList = bookmark.querySelector("ul"); + if (childList) { + childList.classList.add("hidden"); + } + } + }); + } + + // Show or hide the clear button based on the search term + bookmarkSearchClearButton.style.display = searchTerm ? "inline" : "none"; + }); + + bookmarkSearchClearButton.addEventListener("click", function () { + bookmarkSearch.value = ""; + bookmarkSearch.dispatchEvent(new Event("input")); // Trigger input event to clear search results + }); + + function toggleBookmarkSidebar() { + bookmarkSidebar.classList.toggle("open"); + bookmarkButton.classList.toggle("rotate"); + + if (bookmarkSidebar.classList.contains("open")) { + loadBookmarks(); + } + } + + // Function to load bookmarks + function loadBookmarks() { + if (!bookmarksAPI || !bookmarksAPI.getTree) { + console.error("Bookmarks API is unavailable. Please check permissions or context."); + return; + } + + bookmarksAPI.getTree().then(bookmarkTreeNodes => { + // Clear the current list + bookmarkList.innerHTML = ""; + + // Display the "Recently Added" folder + if (bookmarksAPI.getRecent) { + bookmarksAPI.getRecent(8).then(recentBookmarks => { + if (recentBookmarks.length > 0) { + const recentAddedFolder = { + title: "Recently Added", + children: recentBookmarks + }; + bookmarkList.appendChild(displayBookmarks([recentAddedFolder])); + } + }); + } + + // For Firefox: "Bookmarks Menu" and "Other Bookmarks" are distinct nodes + if (isFirefox) { + const toolbarNode = bookmarkTreeNodes[0]?.children?.find(node => node.title === "Bookmarks Toolbar"); + const menuNode = bookmarkTreeNodes[0]?.children?.find(node => node.title === "Bookmarks Menu"); + const otherNode = bookmarkTreeNodes[0]?.children?.find(node => node.title === "Other Bookmarks"); + + if (toolbarNode?.children) { + bookmarkList.appendChild(displayBookmarks(toolbarNode.children)); + } + if (menuNode?.children) { + bookmarkList.appendChild(displayBookmarks(menuNode.children)); + } + if (otherNode?.children) { + bookmarkList.appendChild(displayBookmarks(otherNode.children)); + } } else { - document.getElementById("temp").textContent = `${tempCelsius}°`; - document.getElementById("feelsLike").textContent = `${translations[currentLanguage].feelsLike} ${feelsLikeCelsius}°C`; + let default_folder = "Bookmarks bar"; + if (isEdge) { + default_folder = "Favorites bar"; + } else if (isBrave) { + default_folder = "Bookmarks"; + } + // Extract the "Main bookmarks" node and display its Children + const mainBookmarks = bookmarkTreeNodes[0]?.children?.find(node => node.title === default_folder); + + if (mainBookmarks && mainBookmarks.children) { + bookmarkList.appendChild(displayBookmarks(mainBookmarks.children)); + } + + // Extract the other "Bookmarks" folders and display them + const bookmarksBar = bookmarkTreeNodes.find(node => node.id === "0"); + if (bookmarksBar && bookmarksBar.children) { + bookmarkList.appendChild(displayBookmarks(bookmarksBar.children)); + } } - }; - updateTemperatureDisplay(); - updateusertextbox(); - // Setting weather Icon - const newWIcon = parsedData.current.condition.icon; - const weatherIcon = newWIcon.replace("//cdn", "https://cdn"); - document.getElementById("wIcon").src = weatherIcon; - - // Set slider width based on humidity - if (humidity > 40) { - document.getElementById("slider").style.width = `calc(${humidity}% - 60px)`; - } - - // Update location - // document.getElementById("location").textContent = parsedLocation.city; - var city = parsedData.location.name; - // var city = "Thiruvananthapuram"; - var maxLength = 10; - var limitedText = city.length > maxLength ? city.substring(0, maxLength) + "..." : city; - // Update the span's text content with the limited text - document.getElementById("location").textContent = limitedText; + }).catch(err => { + console.error("Error loading bookmarks:", err); + }); + } - } catch (error) { - console.error("Error fetching weather data:", error); - const alert =document.getElementById("alertbody"); - document.getElementById('alertbodyheadline').innerText = "Error fetching weather data"; - document.getElementById('alertbodyform').innerText = 'Unable to fetch weather data. Please check your location or API key.'; - alert.show(); - // Handle errors here, e.g., display an error message to the user. + function displayBookmarks(bookmarkNodes) { + let list = document.createElement("ul"); + + // Separate folders and bookmarks + const folders = bookmarkNodes.filter(node => node.children && node.children.length > 0); + const bookmarks = bookmarkNodes.filter(node => node.url); + + // Sort folders and bookmarks separately + folders.sort((a, b) => a.title.localeCompare(b.title)); + bookmarks.sort((a, b) => a.title.localeCompare(b.title)); + + // Sort folders and bookmarks separately by dateAdded + // folders.sort((a, b) => (a.dateAdded || 0) - (b.dateAdded || 0)); + // bookmarks.sort((a, b) => (a.dateAdded || 0) - (b.dateAdded || 0)); + + // Combine folders and bookmarks, placing folders first + const sortedNodes = [...folders, ...bookmarks]; + + for (let node of sortedNodes) { + if (node.id === "1") { + continue; + } + if (node.children && node.children.length > 0) { + let folderItem = document.createElement("li"); + + // Use the SVG icon from HTML + const folderIcon = document.getElementById("folderIconTemplate").cloneNode(true); + folderIcon.removeAttribute("\"id"); // Remove the id to prevent duplicates + folderItem.appendChild(folderIcon); + + folderItem.appendChild(document.createTextNode(node.title)); + folderItem.classList.add("folder"); + + // Add event listener for unfolding/folding + folderItem.addEventListener("\"click", function (event) { + event.stopPropagation(); + folderItem.classList.toggle("open"); + const subList = folderItem.querySelector("ul"); + if (subList) { + subList.classList.toggle("hidden"); + } + }); + + let subList = displayBookmarks(node.children); + subList.classList.add("hidden"); + folderItem.appendChild(subList); + + list.appendChild(folderItem); + } else if (node.url) { + let item = document.createElement("li"); + item.dataset.url = node.url; // Add URL as dataset for search functionality + let link = document.createElement("a"); + link.href = node.url; + let span = document.createElement("span"); + span.textContent = node.title; + + let favicon = document.createElement("img"); + favicon.src = `https://www.google.com/s2/favicons?domain=${new URL(node.url).hostname}&sz=48`; + favicon.classList.add("favicon"); + favicon.onerror = () => { + favicon.src = "./svgs/shortcuts_icons/offline.svg"; + }; + + // Create the delete button + let deleteButton = document.createElement("button"); + deleteButton.textContent = "✖"; + deleteButton.classList.add("bookmark-delete-button"); + + deleteButton.addEventListener("click", function (event) { + event.preventDefault(); + event.stopPropagation(); + showDialog({ + headline: 'Delete Bookmark', + icon: 'delete_forever', + textBtn: 'Delete', + tonalBtn: 'Cancel', + formText: `${(translations[currentLanguage]?.deleteBookmark || translations["en"].deleteBookmark)} "${node.title || node.url}"?`, + onTextBtnClick: () => { + + if (isFirefox) { + // Firefox API (Promise-based) + bookmarksAPI.remove(node.id).then(() => { + item.remove(); // Remove the item from the DOM + }).catch(err => { + console.error("Error removing bookmark in Firefox:", err); + }); + } else { + // Chrome API (Callback-based) + bookmarksAPI.remove(node.id, function () { + item.remove(); // Remove the item from the DOM + }); + } + }, + onTonalBtnClick: () => { + return; + }, + onIgnored: () => { + return; + } + }); + + + }); + + link.appendChild(favicon); + link.appendChild(span); + item.appendChild(link); + item.appendChild(deleteButton); // Add delete button to the item + + // Open links in the current tab or new tab if ctrl pressed + link.addEventListener("click", function (event) { + if (event.ctrlKey || event.metaKey) { + // Open in a new tab + event.preventDefault(); + if (isFirefox) { + browser.tabs.create({ url: node.url, active: false }); + } else if (isChrome) { + chrome.tabs.create({ url: node.url, active: false }); + } else { + window.open(node.url, "_blank"); + } + } else { + // Open in the current tab + event.preventDefault(); + if (isFirefox) { + browser.tabs.update({ url: node.url }); + } else if (isChrome) { + chrome.tabs.update({ url: node.url }, function () { + }); + } else { + window.location.href = node.url; + } + } + }); + list.appendChild(item); + } + } + + list.addEventListener("click", function (event) { + event.stopPropagation(); + }); + + return list; } }); -// ---------------------------end of weather stuff-------------------- -//button updates -const proxybox=document.getElementById("userproxy"); -const locationfield=document.getElementById("userLoc"); -const apifield=document.getElementById("userAPI"); -proxybox.addEventListener("input", () => { - const proxybtn=document.getElementById("saveproxybtn"); - if(proxybox.value){ - proxybtn.disabled=false; - }else{ - proxybtn.disabled=true; +// ------------------------ End of Bookmark System ----------------------------------- + +// ----------------------------------- To Do List ---------------------------------------- + +// DOM Variables +const todoContainer = document.getElementById("todoContainer"); +const todoListCont = document.getElementById("todoListCont"); +const todoulList = document.getElementById("todoullist"); +const todoAdd = document.getElementById("todoAdd"); +const todoInput = document.getElementById("todoInput"); +let todoList = {}; // Initialize todoList JSON + +// Add event listeners for Add button click or Enter key press +todoAdd.addEventListener("click", addtodoItem); +todoInput.addEventListener("keypress", (event) => { + if (event.key === "Enter") { + addtodoItem(); } }); -locationfield.addEventListener("input", () => { - const locsave=document.getElementById("saveLocbtn"); - if(locationfield.value){ - locsave.disabled=false; - }else{ - locsave.disabled=true; + +// Utility function to sanitize input +function sanitizeInput(input) { + const div = document.createElement("div"); + div.textContent = input; + return div.innerHTML; +} + +// Function to add items to the TODO list +function addtodoItem() { + const inputText = todoInput.value.trim(); // Remove useless whitespaces + if (inputText === "") { + return; // Return the function when the input is empty + } + const t = "t" + Date.now(); // Generate a Unique ID + const rawText = inputText; + todoList[t] = { title: rawText, status: "pending", pinned: false }; // Add data to the JSON variable + const li = createTodoItemDOM(t, rawText, "pending", false); // Create List item + todoulList.appendChild(li); // Append the new item to the DOM immediately + todoInput.value = ""; // Clear Input + SaveToDoData(); // Save changes +} + +function createTodoItemDOM(id, title, status, pinned) { + let li = document.createElement("li"); + li.innerHTML = sanitizeInput(title); // Sanitize before rendering in DOM + const removebtn = document.createElement("span"); // Create the Cross Icon + removebtn.setAttribute("class", "todoremovebtn"); + removebtn.textContent = "\u00d7"; + li.appendChild(removebtn); // Add the cross icon to the LI tag + li.setAttribute("class", "todolistitem"); + if (status === "completed") { + li.classList.add("checked"); + } + const pinbtn = document.createElement("span"); // Create the Cross Icon + pinbtn.setAttribute("class", "todopinbtn"); + li.appendChild(pinbtn); // Add the cross icon to the LI tag + if (pinned) { + li.classList.add("pinned"); + } + li.setAttribute("data-todoitem", id); // Set a data attribute to the li so that we can uniquely identify which li has been modified or deleted + return li; // Return the created `li` element +} + +// Event delegation for task check and remove +todoulList.addEventListener("click", (event) => { + if (event.target.tagName === "LI") { + event.target.classList.toggle("checked"); // Check the clicked LI tag + let id = event.target.dataset.todoitem; + todoList[id].status = ((todoList[id].status === "completed") ? "pending" : "completed"); // Update status + SaveToDoData(); // Save Changes + } else if (event.target.classList.contains("todoremovebtn")) { + let id = event.target.parentElement.dataset.todoitem; + event.target.parentElement.remove(); // Remove the clicked LI tag + delete todoList[id]; // Remove the deleted List item data + SaveToDoData(); // Save Changes + } else if (event.target.classList.contains("todopinbtn")) { + event.target.parentElement.classList.toggle("pinned"); // Check the clicked LI tag + let id = event.target.parentElement.dataset.todoitem; + todoList[id].pinned = ((todoList[id].pinned !== true)); // Update status + SaveToDoData(); // Save Changes } }); -apifield.addEventListener("input", () => { - const apisave=document.getElementById("saveAPIbtn"); - if(apifield.value){ - apisave.disabled=false; - }else{ - apisave.disabled=true; + +// Save JSON to local Storage +function SaveToDoData() { + localStorage.setItem("todoList", JSON.stringify(todoList)); +} + +// Fetch saved JSON and create list items using it +function ShowToDoList() { + try { + todoList = JSON.parse(localStorage.getItem("todoList")) || {}; // Parse stored data or initialize empty + const fragment = document.createDocumentFragment(); // Create a DocumentFragment + for (let id in todoList) { + const todo = todoList[id]; + const li = createTodoItemDOM(id, todo.title, todo.status, todo.pinned); // Create `li` elements + fragment.appendChild(li); // Add `li` to the fragment + } + todoulList.appendChild(fragment); // Append all `li` to the `ul` at once + } catch (error) { + console.error("Error loading from localStorage:", error); + localStorage.setItem("todoList", "{}"); // Reset corrupted data + } +} + +// Code to reset the List on the Next Day +let todoLastUpdateDate = localStorage.getItem("todoLastUpdateDate"); // Get the date of last update +let todoCurrentDate = new Date().toLocaleDateString(); // Get current date +if (todoLastUpdateDate === todoCurrentDate) { + ShowToDoList(); +} else { + // Modify the list when last update date and the current date does not match + localStorage.setItem("todoLastUpdateDate", todoCurrentDate); + todoList = JSON.parse(localStorage.getItem("todoList")) || {}; + for (let id in todoList) { + if (todoList[id].pinned === false) { + if (todoList[id].status === "completed") { + delete todoList[id]; // Remove the Unpinned and Completed list item data + } + } else { + todoList[id].status = "pending"; // Reset status of pinned items + } + } + SaveToDoData(); + ShowToDoList(); +} + +// Toggle menu and tooltip visibility +todoListCont.addEventListener("click", function (event) { + const isMenuVisible = todoContainer.style.display === "grid"; + + // Toggle menu visibility + todoContainer.style.display = isMenuVisible ? "none" : "grid"; + + // Add or remove the class to hide the tooltip + if (!isMenuVisible) { + todoListCont.classList.add("menu-open"); // Hide tooltip + todoInput.focus(); // Auto focus on input box + } else { + todoListCont.classList.remove("menu-open"); // Restore tooltip + } +}); + +// Close menu when clicking outside +document.addEventListener("click", function (event) { + const isClickInside = + todoContainer.contains(event.target) || todoListCont.contains(event.target) || event.target.classList.contains("todoremovebtn"); + + if (!isClickInside && todoContainer.style.display === "grid") { + todoContainer.style.display = "none"; // Hide menu + todoListCont.classList.remove("menu-open"); // Restore tooltip } + + event.stopPropagation(); }); + +// ------------------------------- End of To Do List ------------------------------------- + // Retrieve current time and calculate initial angles var currentTime = new Date(); var initialSeconds = currentTime.getSeconds(); @@ -275,18 +1058,90 @@ let intervalId; let secondreset = false; let hourreset = false; let minreset = false; + +function initializeClockType() { + const savedClockType = localStorage.getItem("clocktype"); + clocktype = savedClockType ? savedClockType : "analog"; // Default to "analog" if nothing is saved + localStorage.setItem("clocktype", clocktype); // Ensure it's set in local storage +} + +// Call this function to initialize the clock type +initializeClockType(); + +function updateDate() { + if (clocktype === "analog") { + var currentTime = new Date(); + var dayOfWeek = currentTime.getDay(); + var dayOfMonth = currentTime.getDate(); + var month = currentTime.getMonth(); + + // Define the current language + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; + + // Get the translated name of the day + var dayName; + if ( + translations[currentLanguage] && + translations[currentLanguage].days && + translations[currentLanguage].days[dayOfWeek] + ) { + dayName = translations[currentLanguage].days[dayOfWeek]; + } else { + dayName = translations["en"].days[dayOfWeek]; // Fallback to English day name + } + + // Get the translated name of the month + var monthName; + if ( + translations[currentLanguage] && + translations[currentLanguage].months && + translations[currentLanguage].months[month] + ) { + monthName = translations[currentLanguage].months[month]; + } else { + monthName = translations["en"].months[month]; // Fallback to English month name + } + + // Localize the day of the month + var localizedDayOfMonth = localizeNumbers(dayOfMonth.toString(), currentLanguage); + + const dateDisplay = { + bn: `${dayName}, ${localizedDayOfMonth} ${monthName}`, + mr: `${dayName}, ${localizedDayOfMonth} ${monthName}`, + np: `${dayName}, ${localizedDayOfMonth} ${monthName}`, + zh: `${monthName}${dayOfMonth}日${dayName}`, + cs: `${dayName}, ${dayOfMonth}. ${monthName}`, + hi: `${dayName}, ${dayOfMonth} ${monthName}`, + it: `${dayName.substring(0, 3)} ${dayOfMonth} ${monthName.substring(0, 3)}`, + ja: `${dayName.substring(0, 1)}, ${monthName}${dayOfMonth}`, + ko: `${dayName.substring(0, 1)}, ${monthName} ${dayOfMonth}일`, + pt: `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName.substring(0, 3)}`, + ru: `${dayName.substring(0, 2)}, ${dayOfMonth} ${monthName.substring(0, 4)}.`, + es: `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName.substring(0, 3)}`, + tr: `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName}`, + uz: `${dayName.substring(0, 3)}, ${dayOfMonth}-${monthName}`, + vi: `${dayName}, ngày ${dayOfMonth} ${monthName}`, + idn: `${dayName}, ${dayOfMonth} ${monthName}`, + fr: `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName.substring(0, 3)}`, // Jeudi, 5 avril + az: `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName.substring(0, 3)}`, + sl: `${dayName}, ${dayOfMonth}. ${monthName.substring(0, 3)}.`, + hu: `${monthName.substring(0, 3)} ${dayOfMonth}, ${dayName}`, // Dec 22, Kedd + default: `${dayName.substring(0, 3)}, ${monthName.substring(0, 3)} ${dayOfMonth}` // Sun, Dec 22 + }; + document.getElementById("date").innerText = dateDisplay[currentLanguage] || dateDisplay.default; + } +} + function updateanalogclock() { var currentTime = new Date(); var initialSeconds = currentTime.getSeconds(); var initialMinutes = currentTime.getMinutes(); var initialHours = currentTime.getHours(); - // Initialize cumulative rotations - - let cumulativeSecondRotation = initialSeconds * 6; // 6° par seconde - let cumulativeMinuteRotation = initialMinutes * 6 + (initialSeconds / 10); // 6° par minute + ajustement pour les secondes - let cumulativeHourRotation = (30 * initialHours + initialMinutes / 2); + let cumulativeSecondRotation = initialSeconds * 6; // 6° per second + let cumulativeMinuteRotation = initialMinutes * 6 + (initialSeconds / 10); // 6° per minute + adjustment for seconds + let cumulativeHourRotation = (30 * initialHours + initialMinutes / 2); // 30° per hour + adjustment for minutes if (secondreset) { document.getElementById("second").style.transition = "none"; document.getElementById("second").style.transform = `rotate(0deg)`; @@ -305,99 +1160,174 @@ function updateanalogclock() { hourreset = false; return; } - if (cumulativeSecondRotation == 0) { + if (cumulativeSecondRotation === 0) { document.getElementById("second").style.transition = "transform 1s ease"; document.getElementById("second").style.transform = `rotate(361deg)`; secondreset = true; - } else if (secondreset != true) { + } else if (secondreset !== true) { document.getElementById("second").style.transition = "transform 1s ease"; document.getElementById("second").style.transform = `rotate(${cumulativeSecondRotation}deg)`; } - if (cumulativeMinuteRotation == 0) { + + if (cumulativeMinuteRotation === 0) { document.getElementById("minute").style.transition = "transform 1s ease"; document.getElementById("minute").style.transform = `rotate(361deg)`; minreset = true; - } else if (minreset != true) { + } else if (minreset !== true) { document.getElementById("minute").style.transition = "transform 1s ease"; document.getElementById("minute").style.transform = `rotate(${cumulativeMinuteRotation}deg)`; - } if (cumulativeHourRotation == 0) { + } - document.getElementById("hour").style.transition = "transform 1s ease"; - document.getElementById("hour").style.transform = `rotate(361deg)`; + if (cumulativeHourRotation === 0 && currentTime.getHours() === 0 && currentTime.getMinutes() === 0) { + document.getElementById("hour").style.transition = "none"; // Instantly reset at midnight + document.getElementById("hour").style.transform = `rotate(0deg)`; hourreset = true; - } else if (hourreset != true) { - document.getElementById("hour").style.transition = "transform 1s ease"; // Transition fluide + } else if (hourreset !== true) { + document.getElementById("hour").style.transition = "transform 1s ease"; document.getElementById("hour").style.transform = `rotate(${cumulativeHourRotation}deg)`; } - // Get the day of the week (0 = Sunday, 1 = Monday, ..., 6 = Saturday) - var dayOfWeek = currentTime.getDay(); - // Get the day of the month (1 - 31) - var dayOfMonth = currentTime.getDate(); - // Get the month (0 = January, 1 = February, ..., 11 = December) - var month = currentTime.getMonth(); + // Update date immediately + updateDate(); +} - // Define the current language - var currentLanguage = getLanguageStatus('selectedLanguage') || 'en'; +function getGreeting() { + const currentHour = new Date().getHours(); + let greetingKey; - // Get the translated name of the day and month - var dayName = translations[currentLanguage].days[dayOfWeek]; - var monthName = translations[currentLanguage].months[month]; - const clocktype1 = localStorage.getItem("clocktype"); - if (clocktype1 == "analog") { - // Language formatting - if (currentLanguage === 'pt') { - // Portuguese formatting: "day of the week, day of the month" - document.getElementById("date").innerText = `${dayName.substring(0, 3)}, ${dayOfMonth} ${monthName.substring(0, 3)} `; - } else if (currentLanguage === 'hi' || currentLanguage === 'bn') { - // Hindi and Bangla formatting: Show full name for month - document.getElementById("date").innerText = `${dayName}, ${dayOfMonth} ${monthName}`; - } else { - // English formatting: "day of the month name" - document.getElementById("date").innerText = `${dayName.substring(0, 3)}, ${monthName.substring(0, 3)} ${dayOfMonth} `; - } + // Determine the greeting key based on the current hour + if (currentHour < 12) { + greetingKey = "morning"; + } else if (currentHour < 17) { + greetingKey = "afternoon"; + } else { + greetingKey = "evening"; } -} + // Get the user's language setting + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; // Default to English + + // Check if the greeting is available for the selected language + if ( + translations[currentLanguage] && + translations[currentLanguage].greeting && + translations[currentLanguage].greeting[greetingKey] + ) { + return translations[currentLanguage].greeting[greetingKey]; + } else { + // Fallback to English greeting if the currentLanguage or greeting key is missing + return translations["en"].greeting[greetingKey]; + } +} function updatedigiClock() { const hourformatstored = localStorage.getItem("hourformat"); - if (hourformatstored) { - if (hourformatstored == "true") { - hourformat = true; - } else if (hourformatstored == "false") { - hourformat = false; - } + let hourformat = hourformatstored === "true"; // Default to false if null + const greetingCheckbox = document.getElementById("greetingcheckbox"); + const isGreetingEnabled = localStorage.getItem("greetingEnabled") === "true"; + greetingCheckbox.selected = isGreetingEnabled; + + const now = new Date(); + const dayOfWeek = now.getDay(); // Get day of the week (0-6) + const dayOfMonth = now.getDate(); // Get current day of the month (1-31) + + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; + + // Get translated day name + let dayName; + if ( + translations[currentLanguage] && + translations[currentLanguage].days && + translations[currentLanguage].days[dayOfWeek] + ) { + dayName = translations[currentLanguage].days[dayOfWeek]; } else { - hourformat = false; + dayName = translations["en"].days[dayOfWeek]; // Fallback to English day name } - const now = new Date(); - const options = { weekday: 'short', day: 'numeric' }; - const dateString = now.toLocaleDateString('en-US', options); - const timeOptions = { hour: '2-digit', minute: '2-digit', hour12: hourformat }; - const timeString = now.toLocaleTimeString('en-US', timeOptions); - const formattedTimeString = timeString.replace(/ (AM|PM)/, ''); + // Localize the day of the month + const localizedDayOfMonth = localizeNumbers(dayOfMonth.toString(), currentLanguage); + + // Determine the translated short date string based on language + const dateFormats = { + az: `${dayName} ${dayOfMonth}`, + bn: `${dayName}, ${localizedDayOfMonth}`, + mr: `${dayName}, ${localizedDayOfMonth}`, + np: `${dayName}, ${localizedDayOfMonth}`, + zh: `${dayOfMonth}日${dayName}`, + cs: `${dayName}, ${dayOfMonth}.`, + hi: `${dayName}, ${dayOfMonth}`, + ja: `${dayOfMonth} ${dayName.substring(0, 1)}`, + ko: `${dayOfMonth} ${dayName.substring(0, 1)}`, + pt: `${dayName}, ${dayOfMonth}`, + ru: `${dayOfMonth} ${dayName.substring(0, 2)}`, + vi: `${dayOfMonth} ${dayName}`, + idn: `${dayOfMonth} ${dayName}`, + fr: `${dayName} ${dayOfMonth}`, // Mardi 11 + hu: `${dayName} ${dayOfMonth}`, // Kedd 11 + default: `${dayOfMonth} ${dayName.substring(0, 3)}`, // 24 Thu + }; + const dateString = dateFormats[currentLanguage] || dateFormats.default; - document.getElementById('digidate').textContent = dateString; - document.getElementById('digiclock').textContent = formattedTimeString; + // Handle time formatting based on the selected language + let timeString; + let period = ""; // For storing AM/PM equivalent - let greeting; - const currentHour = now.getHours(); + // Array of languages to use "en-US" format + const specialLanguages = ["tr", "zh", "ja", "ko", "hu"]; // Languages with NaN in locale time format + const localizedLanguages = ["bn", "mr", "np"]; + // Force the "en-US" format for Bengali, otherwise, it will be localized twice, resulting in NaN - if (currentHour < 12) { - greeting = "Good Morning!"; - } else if (currentHour < 18) { - greeting = "Good Afternoon!"; + // Set time options and determine locale based on the current language + const timeOptions = { hour: "2-digit", minute: "2-digit", hour12: hourformat }; + const locale = specialLanguages.includes(currentLanguage) || localizedLanguages.includes(currentLanguage) ? "en-US" : currentLanguage; + timeString = now.toLocaleTimeString(locale, timeOptions); + + // Split the time and period (AM/PM) if in 12-hour format + if (hourformat) { + [timeString, period] = timeString.split(' '); // Split AM/PM if present + } + + // Split the hours and minutes from the localized time string + let [hours, minutes] = timeString.split(':'); + + // Remove leading zero from hours in 12-hour format + if (hourformat) { + hours = parseInt(hours, 10).toString(); // Remove leading zero + } + + // Localize hours and minutes for the selected language + const localizedHours = localizeNumbers(hours, currentLanguage); + const localizedMinutes = localizeNumbers(minutes, currentLanguage); + + // Update the hour, colon, and minute text elements + document.getElementById("digihours").textContent = localizedHours; + document.getElementById("digicolon").textContent = ":"; // Static colon + document.getElementById("digiminutes").textContent = localizedMinutes; + + // Manually set the period for special languages if 12-hour format is enabled + if (hourformat && specialLanguages.includes(currentLanguage)) { + period = parseInt(hours, 10) < 12 ? "AM" : "PM"; + } + + // Display AM/PM if in 12-hour format + if (hourformat) { + document.getElementById("amPm").textContent = period; // Show AM/PM based on calculated period } else { - greeting = "Good Evening!"; + document.getElementById("amPm").textContent = ""; // Clear AM/PM for 24-hour format } - const clocktype1 = localStorage.getItem("clocktype"); - if (clocktype1 == "digital") { + // Update the translated date + document.getElementById("digidate").textContent = dateString; - document.getElementById("date").innerText = greeting; + const clocktype1 = localStorage.getItem("clocktype"); + if (clocktype1 === "digital" && isGreetingEnabled) { + document.getElementById("date").innerText = getGreeting(); + } else if (clocktype1 === "digital") { + document.getElementById("date").innerText = ""; // Hide the greeting } } + +// Function to start the clock function startClock() { if (!intervalId) { // Only set interval if not already set intervalId = setInterval(updateanalogclock, 500); @@ -410,104 +1340,277 @@ function stopClock() { intervalId = null; // Reset intervalId } -clocktype = localStorage.getItem("clocktype"); -if (!clocktype) { - localStorage.setItem("clocktype", "analog"); - clocktype = localStorage.getItem("clocktype"); -} +// Initial clock display displayClock(); -setInterval(updatedigiClock, 1000); -if (clocktype) { - if (clocktype == "digital") { - updatedigiClock(); - } else if (clocktype == "analog") { - if (document.visibilityState === 'visible') { - startClock(); - } - } -} else { - if (document.visibilityState === 'visible') { +setInterval(updatedigiClock, 1000); // Update digital clock every second + +// Start or stop clocks based on clock type and visibility state +if (clocktype === "digital") { + updatedigiClock(); +} else if (clocktype === "analog") { + if (document.visibilityState === "visible") { startClock(); + updateDate(); // Immediately update date when clock is analog } } + +// Event listener for visibility change document.addEventListener("visibilitychange", function () { - if (document.visibilityState === 'visible') { + if (document.visibilityState === "visible") { startClock(); // Start the clock if the tab is focused + updateDate(); // Update date when the tab becomes visible } else { stopClock(); // Stop the clock if the tab is not focused } }); function displayClock() { - const analogClock = document.getElementById('analogClock'); - const digitalClock = document.getElementById('digitalClock'); - - if (clocktype === 'analog') { - analogClock.style.display = 'block'; // Show the analog clock - digitalClock.style.display = 'none'; // Hide the digital clock - } else if (clocktype === 'digital') { - digitalClock.style.display = 'block'; // Show the digital clock - analogClock.style.display = 'none'; // Hide the analog clock + const analogClock = document.getElementById("analogClock"); + const digitalClock = document.getElementById("digitalClock"); + + if (clocktype === "analog") { + analogClock.style.display = "block"; // Show the analog clock + digitalClock.style.display = "none"; // Hide the digital clock + } else if (clocktype === "digital") { + digitalClock.style.display = "block"; // Show the digital clock + analogClock.style.display = "none"; // Hide the analog clock } - } -const userTextDiv = document.getElementById("userTextt"); -userTextDiv.addEventListener("input", function () { - localStorage.setItem("userText", userTextDiv.value); + +// Call updateanalogclock when the document is fully loaded +document.addEventListener("DOMContentLoaded", function () { + updateanalogclock(); }); -function updateusertextbox() { - const userTextDiv = document.getElementById("userTextt"); + +// End of clock display +//button updates +const proxybox = document.getElementById("userproxy"); +const locationfield = document.getElementById("userLoc"); +const apifield = document.getElementById("userAPI"); +const resetapi = document.getElementById("resetAPIbtn"); +const resetproxy = document.getElementById("resetproxybtn"); +const proxyhostbtn = document.getElementById("HostproxyButton"); + +const savedApiKey = localStorage.getItem("weatherApiKey"); +const savedProxy = localStorage.getItem("proxy"); +proxybox.addEventListener("input", () => { + const proxybtn = document.getElementById("saveproxybtn"); + if (proxybox.value) { + proxybtn.disabled = false; + if (savedProxy) { + resetproxy.style.display = "none"; + proxybtn.style.removeProperty("display"); + proxyhostbtn.textContent = "Host Your Own Proxy"; + } + } else { + proxybtn.disabled = true; + if (savedProxy) { + resetproxy.style.display = "block"; + proxybtn.style.display = "none"; + proxyhostbtn.textContent = "Host Your Own"; + } + } +}); +locationfield.addEventListener("input", () => { + const locsave = document.getElementById("saveLocbtn"); + if (locationfield.value) { + locsave.disabled = false; + } else { + locsave.disabled = true; + } +}); +apifield.addEventListener("input", () => { + const apisave = document.getElementById("saveAPIbtn"); + if (apifield.value) { + apisave.disabled = false; + if (savedApiKey) { + resetapi.style.display = "none"; + apisave.style.removeProperty("display"); + } + } else { + apisave.disabled = true; + if (savedApiKey) { + resetapi.style.display = "block"; + apisave.style.display = "none"; + } + } +}); +document.addEventListener("DOMContentLoaded", () => { + const userTextDiv = document.getElementById("userText"); + const userTextCheckbox = document.getElementById("userTextCheckbox"); + + // Load and apply the checkbox state + const isUserTextVisible = localStorage.getItem("userTextVisible") !== "false"; + userTextCheckbox.selected = isUserTextVisible; + userTextDiv.style.display = isUserTextVisible ? "block" : "none"; + + // Toggle userText display based on checkbox state + userTextCheckbox.addEventListener("change", () => { + const isVisible = userTextCheckbox.selected; + userTextDiv.style.display = isVisible ? "block" : "none"; + localStorage.setItem("userTextVisible", isVisible); + }); + + // Set the default language to English if no language is saved + const savedLang = localStorage.getItem("selectedLanguage") || "en"; + applyLanguage(savedLang); + + // Load the stored text if it exists const storedValue = localStorage.getItem("userText"); if (storedValue) { userTextDiv.value = storedValue; + } else { + // Fallback to the placeholder based on the selected language + const placeholder = userTextDiv.dataset.placeholder || translations["en"].userText; // Fallback to English + userTextDiv.value = placeholder; } - const usertextcheckbox = document.getElementById('usertextcheckbox'); -const usertextbox = document.getElementById('userTextt'); -if(usertextcheckbox.selected){ - usertextbox.style.display = 'block'; -}else{ - usertextbox.style.display = 'none'; -} -} -// Showing border or outline in when you click on searchbar -const searchbar = document.getElementById('searchbar'); -searchbar.addEventListener('click', function () { - const searchInput2 = document.getElementById("searchQ"); - searchbar.classList.toggle('active'); - if (searchInput2.value !== "") { - showResultBox() - } + // Handle input event + userTextDiv.addEventListener("input", function () { + localStorage.setItem("userText", userTextDiv.value); + }); + + // Remove placeholder text when the user starts editing + userTextDiv.addEventListener("focus", function () { + if (userTextDiv.value === userTextDiv.dataset.placeholder) { + userTextDiv.value = ""; // Clear the placeholder when focused + } + }); + + // Restore placeholder if the user leaves the div empty after editing + userTextDiv.addEventListener("blur", function () { + if (userTextDiv.value === "") { + userTextDiv.value = userTextDiv.dataset.placeholder; // Show the placeholder again if empty + } + }); }); -document.addEventListener('click', function (event) { + +// Showing border or outline when you click on the searchbar +const searchbar = document.getElementById("searchbar"); +searchbar.addEventListener("click", function (event) { + event.stopPropagation(); // Stop the click event from propagating to the document + searchbar.classList.add("active"); +}); + +document.addEventListener("click", function (event) { // Check if the clicked element is not the searchbar if (!searchbar.contains(event.target)) { - searchbar.classList.remove('active'); + searchbar.classList.remove("active"); } }); -const storedEngine = localStorage.getItem("selectedSearchEngine"); -if(!storedEngine){ - localStorage.setItem("selectedSearchEngine",1) -} -//search function + +// Search function document.addEventListener("DOMContentLoaded", () => { + const dropdown = document.querySelector(".dropdown-content"); + + document.addEventListener("click", (event) => { + if (dropdown.style.display === "block") { + event.stopPropagation(); + dropdown.style.display = "none"; + } + }) + + document.querySelector(".dropdown-btn").addEventListener("click", function (event) { + const resultBox = document.getElementById("resultBox"); + if (resultBox.classList.toString().includes("show")) return; + dropdown.style.display = dropdown.style.display === "block" ? "none" : "block"; + }); + const enterBTN = document.getElementById("entrbtn"); const searchInput = document.getElementById("searchQ"); const searchEngineRadio = document.getElementsByName("search-engine"); + const searchDropdowns = document.querySelectorAll('[id$="-dropdown"]:not(*[data-default])'); + const defaultEngine = document.querySelector('#default-dropdown-item div[id$="-dropdown"]'); + + const sortDropdown = () => { + // Change the elements to the array + const elements = Array.from(searchDropdowns); + + // Sort the dropdown + const sortedDropdowns = elements.sort((a, b) => { + const engineA = parseInt(a.getAttribute("data-engine"), 10); + const engineB = parseInt(b.getAttribute("data-engine"), 10); + + return engineA - engineB; + }) + + // get the parent + const parent = sortedDropdowns[0]?.parentNode; + + // Append the items. if parent exists. + if (parent) { + sortedDropdowns.forEach(item => parent.appendChild(item)); + } + } + + // This will add event listener for click in the search bar + searchDropdowns.forEach(element => { + element.addEventListener("click", () => { + const engine = element.getAttribute("data-engine"); + const radioButton = document.querySelector(`input[type="radio"][value="engine${engine}"]`); + const selector = `*[data-engine-name=${element.getAttribute("data-engine-name")}]`; + + // console.log(element, selector); + + radioButton.checked = true; + + // Swap The dropdown. and sort them + swapDropdown(selector); + sortDropdown() + + localStorage.setItem("selectedSearchEngine", radioButton.value); + }); + }); + + // Make entire search-engine div clickable + document.querySelectorAll(".search-engine").forEach((engineDiv) => { + engineDiv.addEventListener("click", () => { + const radioButton = engineDiv.querySelector('input[type="radio"]'); + + radioButton.checked = true; + + const radioButtonValue = radioButton.value.charAt(radioButton.value.length - 1); + + const selector = `[data-engine="${radioButtonValue}"]`; + + // Swap The dropdown. + swapDropdown(selector); + sortDropdown() + + localStorage.setItem("selectedSearchEngine", radioButton.value); + }); + }); + + /** + * Swap attributes and contents between the default engine and a selected element. + * @param {HTMLElement} defaultEngine - The current default engine element. + * @param {HTMLElement} selectedElement - The clicked or selected element. + */ + function swapDropdown(selectedElement) { + // Swap innerHTML + const element = document.querySelector(selectedElement); + const tempHTML = defaultEngine.innerHTML; + defaultEngine.innerHTML = element.innerHTML; + element.innerHTML = tempHTML; + + // Swap attributes + ["data-engine", "data-engine-name", "id"].forEach(attr => { + const tempAttr = defaultEngine.getAttribute(attr); + defaultEngine.setAttribute(attr, element.getAttribute(attr)); + element.setAttribute(attr, tempAttr); + }); + } // Function to perform search function performSearch() { - - //var selectedOption = document.querySelector('input[name="search-engine"]:checked').value; + var selectedOption = document.querySelector('input[name="search-engine"]:checked').value; var searchTerm = searchInput.value; - const storedSearchEngine = localStorage.getItem("selectedSearchEngine"); - var selectedOption = `engine${storedSearchEngine}`; var searchEngines = { - engine1: 'https://www.google.com/search?q=', - engine2: 'https://duckduckgo.com/?q=', - engine3: 'https://bing.com/?q=', - engine4: 'https://search.brave.com/search?q=', - engine5: 'https://www.youtube.com/results?search_query=' + engine1: "https://www.google.com/search?q=", + engine2: "https://duckduckgo.com/?q=", + engine3: "https://bing.com/?q=", + engine4: "https://search.brave.com/search?q=", + engine5: "https://www.youtube.com/results?search_query=" }; if (searchTerm !== "") { @@ -525,259 +1628,1257 @@ document.addEventListener("DOMContentLoaded", () => { } }); - // Set selected search engine from local storage - // Initialize selected search engine and removed chips -const storedSearchEngine = localStorage.getItem("selectedSearchEngine"); -const storedRemovedChips = JSON.parse(localStorage.getItem("removedChips")) || []; -let selectedChipNumber = 1; -const chipsContainer = document.querySelector('.chips-container'); - -// Chip data for restoration -const chipData = [ - { id: 'chip1', label: 'Google' }, - { id: 'chip2', label: 'Duck' }, - { id: 'chip3', label: 'Bing' }, - { id: 'chip4', label: 'Brave' }, - { id: 'chip5', label: 'YouTube' } -]; - -// Function to remove a chip element by its ID -function removeChipById(chipId) { - const chip = document.getElementById(chipId); - if (chip) { - chip.remove(); + const storedSearchEngine = localStorage.getItem("selectedSearchEngine"); + + if (storedSearchEngine) { + // Find Serial Number - SN with the help of charAt. + const storedSearchEngineSN = storedSearchEngine.charAt(storedSearchEngine.length - 1); + const defaultDropdownSN = document.querySelector("*[data-default]").getAttribute("data-engine"); + + // check if the default selected search engine is same as the stored one. + if (storedSearchEngineSN !== defaultDropdownSN) { + // The following line will find out the appropriate dropdown for the selected search engine. + const selector = `*[data-engine="${storedSearchEngineSN}"]`; + + swapDropdown(selector); + sortDropdown(); + } + + const selectedRadioButton = document.querySelector(`input[name="search-engine"][value="${storedSearchEngine}"]`); + if (selectedRadioButton) { + selectedRadioButton.checked = true; + } + } + + const dropdownItems = document.querySelectorAll(".dropdown-item:not(*[data-default])"); + let selectedIndex = -1; + + // Function to update the selected item + function updateSelection() { + // let hasSelected = []; + dropdownItems.forEach((item, index) => { + + item.addEventListener("mouseenter", () => { + item.classList.add("selected"); + }) + item.addEventListener("mouseleave", () => { + item.classList.remove("selected"); + }) + + if (index === selectedIndex) { + item.focus() + item.classList.add("selected"); + } else { + item.focus() + item.classList.remove("selected"); + } + }); + } + + // Event listener for keydown events to navigate up/down + document.querySelector(".dropdown").addEventListener("keydown", function (event) { + if (dropdown.style.display === "block") { + if (event.key === "ArrowDown") { + selectedIndex = (selectedIndex + 1) % dropdownItems.length; // Move down, loop around + } else if (event.key === "ArrowUp") { + selectedIndex = (selectedIndex - 1 + dropdownItems.length) % dropdownItems.length; // Move up, loop around + } else if (event.key === "Enter") { + const selector = ".dropdown-content .selected"; + const engine = element.getAttribute("data-engine"); + const radioButton = document.querySelector(`input[type="radio"][value="engine${engine}"]`); + + radioButton.checked = true; + + // Swap The dropdown. and sort them + swapDropdown(selector); + sortDropdown() + } + updateSelection(); + } + }); + + // Initial setup for highlighting + updateSelection(); + + // Event listener for search engine radio buttons + searchEngineRadio.forEach((radio) => { + radio.addEventListener("change", () => { + const selectedOption = document.querySelector('input[name="search-engine"]:checked').value; + localStorage.setItem("selectedSearchEngine", selectedOption); + }); + }); + // -----Theme stay changed even if user reload the page--- + // 🔴🟠🟡🟢🔵🟣⚫️⚪️🟤 + const storedTheme = localStorage.getItem(themeStorageKey); + if (storedTheme) { + applySelectedTheme(storedTheme); + const selectedRadioButton = document.querySelector(`.colorPlate[value="${storedTheme}"]`); + if (selectedRadioButton) { + selectedRadioButton.checked = true; + } + } + // Remove Loading Screen When the DOM and the Theme has Loaded + document.getElementById("LoadingScreen").style.display = "none"; + // it is necessary for some elements not to blink when the page is reloaded + setTimeout(() => { + document.documentElement.classList.add("theme-transition"); + }, 25); +}); + +// -----------Voice Search------------ +function isSupportedBrowser() { + return (isChrome || isEdge) && isDesktop && !isBrave; +} + +// Set the initial state of the mic icon and checkbox based on saved state or supported browser +const micIcon = document.getElementById("micIcon"); +const micIconCheckbox = document.getElementById("micIconCheckbox"); + +// Check if there's a saved state in localStorage +const savedState = localStorage.getItem("micIconVisible"); +let isMicIconVisible; + +// If saved state exists, use it; otherwise, fallback to initial state based on browser support +if (savedState !== null) { + isMicIconVisible = savedState === "true"; +} else { + // Default state: Hide mic icon if browser is not supported + isMicIconVisible = isSupportedBrowser(); + // Save the initial state based on the user agent + localStorage.setItem("micIconVisible", isMicIconVisible); +} + +// Set the checkbox state based on the saved or default state +micIconCheckbox.selected = !isMicIconVisible; // selected hides the mic icon +if (isMicIconVisible) { + micIcon.style.display = "block"; // Mic icon is displayed +} else { + micIcon.style.display = "none"; // Hide the mic icon +} + +// Function to toggle mic icon visibility +function toggleMicIconVisibility(isVisible) { + micIcon.style.display = isVisible ? "block" : "none"; + localStorage.setItem("micIconVisible", isVisible); // Save to localStorage +} + +// Toggle mic icon display based on checkbox state +micIconCheckbox.addEventListener("change", () => { + const isChecked = micIconCheckbox.selected; + toggleMicIconVisibility(!isChecked); // selected hides the mic icon + + // Only initialize Web Speech API if the mic icon is visible + if (!isChecked) { + initializeSpeechRecognition(); + } +}); + +// Function to initialize Web Speech API if supported +function initializeSpeechRecognition() { + const searchInput = document.getElementById("searchQ"); + const resultBox = document.getElementById("resultBox"); + const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; + + // Check if the browser supports SpeechRecognition API + const isSpeechRecognitionAvailable = "webkitSpeechRecognition" in window || "SpeechRecognition" in window; + + if (isSpeechRecognitionAvailable) { + // Initialize SpeechRecognition (cross-browser compatibility) + const recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)(); + recognition.continuous = false; // Stop recognition after first result + recognition.interimResults = true; // Enable interim results for live transcription + recognition.lang = currentLanguage; // Set the language dynamically based on selected language + + let isRecognizing = false; // Flag to check if recognition is active + + // When speech recognition starts + recognition.onstart = () => { + isRecognizing = true; // Set the flag to indicate recognition is active + const selectedRadio = document.querySelector(".colorPlate:checked"); + if (selectedRadio.value !== "dark") { + micIcon.style.color = "var(--darkerColor-blue)"; + // micIcon.style.transform = "scale(1.05)"; + } + searchInput.placeholder = `${translations[currentLanguage]?.listenPlaceholder || translations["en"].listenPlaceholder}`; + micIcon.classList.add("micActive"); + }; + + // When speech recognition results are available (including interim results) + recognition.onresult = (event) => { + let transcript = ""; + // Loop through results to build the transcript text + for (let i = 0; i < event.results.length; i++) { + transcript += event.results[i][0].transcript; // Append each piece of the transcript + } + // Display the interim result in the search input + searchInput.value = transcript; + // Trigger the input event manually to update suggestions + searchInput.dispatchEvent(new Event("input")); + // If the result is final, hide the result box + if (event.results[event.results.length - 1].isFinal) { + resultBox.style.display = "none"; // Hide result box after final input + } + }; + + // When an error occurs during speech recognition + recognition.onerror = (event) => { + console.error("Speech recognition error: ", event.error); + isRecognizing = false; // Reset flag on error + }; + + // When speech recognition ends (either by user or automatically) + recognition.onend = () => { + isRecognizing = false; // Reset the flag to indicate recognition has stopped + micIcon.style.color = "var(--darkColor-blue)"; // Reset mic color + // micIcon.style.transform = "scale(1)"; // Reset scaling + micIcon.classList.remove("micActive"); + searchInput.placeholder = `${translations[currentLanguage]?.searchPlaceholder || translations["en"].searchPlaceholder}`; + }; + + // Start speech recognition when mic icon is clicked + micIcon.addEventListener("click", () => { + if (isRecognizing) { + recognition.stop(); // Stop recognition if it's already listening + } else { + recognition.start(); // Start recognition if it's not already listening + } + }); + } else { + console.warn("Speech Recognition API not supported in this browser."); } } -const restorechipsbtn = document.getElementById("restorechipsbtn"); - restorechipsbtn.addEventListener("click", () => { - restoreAllChips(); + +// Initialize SpeechRecognition only if the mic icon is visible +if (!micIconCheckbox.selected) { + initializeSpeechRecognition(); +} +// -----------End of Voice Search------------ + + +// Function to apply the selected theme +const radioButtons = document.querySelectorAll(".colorPlate"); +const themeStorageKey = "selectedTheme"; +const storedTheme = localStorage.getItem(themeStorageKey); +// const radioButtons = document.querySelectorAll(".colorPlate"); +// const themeStorageKey = "selectedTheme"; // For predefined themes +const customThemeStorageKey = "customThemeColor"; // For color picker +// const storedTheme = localStorage.getItem(themeStorageKey); +const storedCustomColor = localStorage.getItem(customThemeStorageKey); + +let darkThemeStyleTag; // Variable to store the dynamically added style tag + +const resetDarkTheme = () => { + // Remove the dark theme class + document.documentElement.classList.remove("dark-theme"); + + // Remove the injected dark theme style tag + if (darkThemeStyleTag) { + darkThemeStyleTag.remove(); + darkThemeStyleTag = null; + } + + // Reset inline styles that were applied specifically for dark mode + const resetElements = [ + "searchQ", + "searchIconDark", + "darkFeelsLikeIcon", + "menuButton", + "menuCloseButton", + "closeBtnX" + ]; + + resetElements.forEach((id) => { + const element = document.getElementById(id); + if (element) { + element.removeAttribute("style"); + } + }); + + // Reset fill color for elements with the class "accentColor" + const accentElements = document.querySelectorAll(".accentColor"); + accentElements.forEach((element) => { + element.style.fill = ""; // Reset fill color + }); + // Reset the CSS variables to default (for non-dark themes) + document.documentElement.style.setProperty("--bg-color-blue", "#bbd6fd"); + document.documentElement.style.setProperty("--accentLightTint-blue", "#e2eeff"); + document.documentElement.style.setProperty("--darkerColor-blue", "#3569b2"); + document.documentElement.style.setProperty("--darkColor-blue", "#4382ec"); + document.documentElement.style.setProperty("--textColorDark-blue", "#1b3041"); + document.documentElement.style.setProperty("--whitishColor-blue", "#ffffff"); +}; + + +const applySelectedTheme = (colorValue) => { + // If the selected theme is not dark, reset dark theme styles + if (colorValue !== "dark") { + resetDarkTheme(); + + // Apply styles for other themes (not dark) + if (colorValue === "blue") { + document.documentElement.style.setProperty("--bg-color-blue", "#bbd6fd"); + document.documentElement.style.setProperty("--accentLightTint-blue", "#e2eeff"); + document.documentElement.style.setProperty("--darkerColor-blue", "#3569b2"); + document.documentElement.style.setProperty("--darkColor-blue", "#4382ec"); + document.documentElement.style.setProperty("--textColorDark-blue", "#1b3041"); + document.documentElement.style.setProperty("--whitishColor-blue", "#ffffff"); + } else { + document.documentElement.style.setProperty("--bg-color-blue", `var(--bg-color-${colorValue})`); + document.documentElement.style.setProperty("--accentLightTint-blue", `var(--accentLightTint-${colorValue})`); + document.documentElement.style.setProperty("--darkerColor-blue", `var(--darkerColor-${colorValue})`); + document.documentElement.style.setProperty("--darkColor-blue", `var(--darkColor-${colorValue})`); + document.documentElement.style.setProperty("--textColorDark-blue", `var(--textColorDark-${colorValue})`); + document.documentElement.style.setProperty("--whitishColor-blue", `var(--whitishColor-${colorValue})`); + } + } + + // If the selected theme is dark + else if (colorValue === "dark") { + // Apply dark theme styles using CSS variables + document.documentElement.style.setProperty("--bg-color-blue", `var(--bg-color-${colorValue})`); + document.documentElement.style.setProperty("--accentLightTint-blue", `var(--accentLightTint-${colorValue})`); + document.documentElement.style.setProperty("--darkerColor-blue", `var(--darkerColor-${colorValue})`); + document.documentElement.style.setProperty("--darkColor-blue", `var(--darkColor-${colorValue})`); + document.documentElement.style.setProperty("--textColorDark-blue", `var(--textColorDark-${colorValue})`); + + // Add dark theme styles for specific elements + darkThemeStyleTag = document.createElement("style"); + darkThemeStyleTag.textContent = ` + .dark-theme .search-engine input[type="radio"]:checked { + background-color: #2a2a2a; + border: 2px solid #919191; + } + + .dark-theme .search-engine input[type="radio"] { + background-color: #9d9d9d ; + border: 0px solid #000000; + } + + .dark-theme .colorsContainer { + background-color: #212121; + } + + .dark-theme #themeButton { + background-color: #212121; + } + + .dark-theme #themeIconSvg, .dark-theme #languageSelectorIconSvg { + fill: #cdcdcd !important; + } + + .dark-theme .languageIcon, + .dark-theme .languageSelector { + background-color: #212121; + scrollbar-color: var(--darkerColor-blue) transparent; + } + + .dark-theme .languageSelector::-webkit-scrollbar-thumb, + .dark-theme .languageSelector::-webkit-scrollbar-thumb:hover { + background-color: var(--darkerColor-blue); + } + + .dark-theme .bottom a { + color: #a1a1a1; + } + + .dark-theme .ttcont input { + background-color: #212121 !important; + } + + .dark-theme input:checked + .toggle { + background-color: #aaaaaa; + } + + .dark-theme .tilesCont .tiles { + color: #e8e8e8; + } + + .dark-theme .resetbtn:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .resetbtn:active { + background-color: #4e4e4e; + } + + .dark-theme .savebtn:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .tiles:hover { + background-color: var(--bg-color-dark); + } + + .dark-theme .bottom a:hover { + color: var(--darkerColor-blue); + } + + .dark-theme #searchQ { + color: #fff; + } + + .dark-theme .searchbar.active { + outline: 2px solid #696969; + } + + .dark-theme #searchIconDark { + fill: #bbb !important; + } + + .dark-theme .dropdown-item.selected:not(*[data-default]):before { + background-color: #707070; + } + + .dark-theme .tilesContainer .tiles { + background-color: #212121; + } + + .dark-theme #darkFeelsLikeIcon { + fill: #fff !important; + } + + .dark-theme .humidityBar .thinLine { + background-color: #aaaaaa; + } + + .dark-theme .search-engine .darkIconForDarkTheme, .dark-theme .aiDarkIcons { + fill: #bbbbbb !important; + } + + .dark-theme .divider { + background-color: #cdcdcd; + } + + .dark-theme .shorcutDarkColor { + fill: #3c3c3c !important; + } + + .dark-theme #darkLightTint { + fill: #bfbfbf; + } + + .dark-theme .strokecolor { + stroke: #3c3c3c; + } + + .dark-theme .shortcutsContainer .shortcuts .shortcutLogoContainer { + background: radial-gradient(circle, #bfbfbf 66%, transparent 66%); + &:not(:has(svg)){ + background: var(--accentLightTint-blue); + } + } + + .dark-theme .digiclock { + fill: #909090; + } + .dark-theme .backupRestoreBtn { + background-color: var(--darkColor-dark); + } + .dark-theme .colorPickerButton { + background-color: #ffffff; + } + + .dark-theme .todolistitem .todoremovebtn { + color:#616161; + } + + .dark-theme .todolistitem .todoremovebtn:hover { + color:#888888; + } + + .dark-theme .bookmark-view-as-container .bookmark-view-as-button { + color: var(--textColorDark-blue) !important; + } + + .dark-theme #bookmarkSearch{ + background-color: #212121 !important; + } + + .dark-theme .bookmark-search-container::after { + filter: none; + } + + .dark-theme .bookmark-button svg { + fill: var(--textColorDark-blue); + } + + .dark-theme #bookmarkList:is(.grid-view) li a:has(.favicon)::after, + .dark-theme #bookmarkList:is(.grid-view) li a:has(.favicon)::before { + background: var(--darkColor-dark); + } + + .dark-theme .favicon { + filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.3)); + } + + .dark-theme .micIcon { + background-color: var(--whitishColor-dark); + } + + .dark-theme #minute, .dark-theme #minute::after, .dark-theme #second::after { + background-color: #909090; + } + + .dark-theme .dot-icon { + fill: #bfbfbf; + } + + .dark-theme .menuicon { + color: #c2c2c2; + } + + .dark-theme #menuCloseButton, .dark-theme #menuCloseButton:hover { + background-color: var(--darkColor-dark); + } + + .dark-theme #menuCloseButton .icon { + background: radial-gradient(#cdcdcd 66%, transparent 66%); + } + + .dark-theme #closeBtnX { + border: 2px solid #bdbdbd; + border-radius: 100px; + } + + .dark-theme body { + background-color: #000000; + } + + .dark-theme #HangNoAlive { + fill: #c2c2c2 !important; + } + + .dark-theme .tempUnit { + color: #dadada; + } + + .dark-theme #githab, + .dark-theme #sujhaw { + fill: #b1b1b1; + } + + .dark-theme .resultItem.active { + background-color: var(--darkColor-dark); + } + `; + document.head.appendChild(darkThemeStyleTag); + + // Apply dark theme class + document.documentElement.classList.add("dark-theme"); + + // Change fill color for elements with the class "accentColor" + const accentElements = document.querySelectorAll(".accentColor"); + accentElements.forEach((element) => { + element.style.fill = "\"#212121"; }); -// Function to restore all removed chips -function restoreAllChips() { + } + + + // Change the extension icon based on the selected theme + const iconPaths = ["blue", "yellow", "red", "green", "cyan", "orange", "purple", "pink", "brown", "silver", "grey", "dark"] + .reduce((acc, color) => { + acc[color] = `./favicon/${color}.png`; + return acc; + }, {}); + + // Function to update the extension icon based on browser + const updateExtensionIcon = (colorValue) => { + if (typeof browser !== "undefined" && browser.browserAction) { + // Firefox + browser.browserAction.setIcon({ path: iconPaths[colorValue] }); + } else if (typeof chrome !== "undefined" && chrome.action) { + // Chromium-based: Chrome, Edge, Brave + chrome.action.setIcon({ path: iconPaths[colorValue] }); + } else if (typeof safari !== "undefined") { + // Safari + safari.extension.setToolbarIcon({ path: iconPaths[colorValue] }); + } + }; + updateExtensionIcon(colorValue); + + // Change the favicon dynamically + const faviconLink = document.querySelector("link[rel='icon']"); + if (faviconLink && iconPaths[colorValue]) { + faviconLink.href = iconPaths[colorValue]; + } + ApplyLoadingColor(); +}; + +// ----Color Picker || ColorPicker---- +function darkenHexColor(hex, factor = 0.6) { + hex = hex.replace("#", ""); + let r = parseInt(hex.substring(0, 2), 16); + let g = parseInt(hex.substring(2, 4), 16); + let b = parseInt(hex.substring(4, 6), 16); + r = Math.floor(r * (1 - factor)); + g = Math.floor(g * (1 - factor)); + b = Math.floor(b * (1 - factor)); + return `#${((1 << 24) | (r << 16) | (g << 8) | b).toString(16).slice(1).toUpperCase()}`; +} + +function lightenHexColor(hex, factor = 0.85) { + hex = hex.replace("#", ""); + if (hex.length === 3) { + hex = hex.split("").map(c => c + c).join(""); + } + let r = parseInt(hex.substring(0, 2), 16); + let g = parseInt(hex.substring(2, 4), 16); + let b = parseInt(hex.substring(4, 6), 16); + r = Math.floor(r + (255 - r) * factor); + g = Math.floor(g + (255 - g) * factor); + b = Math.floor(b + (255 - b) * factor); + return `#${(1 << 24 | r << 16 | g << 8 | b).toString(16).slice(1).toUpperCase()}`; +} + +function lightestColor(hex, factor = 0.95) { + hex = hex.replace("#", ""); + if (hex.length === 3) { + hex = hex.split("").map(c => c + c).join(""); + } + let r = parseInt(hex.substring(0, 2), 16); + let g = parseInt(hex.substring(2, 4), 16); + let b = parseInt(hex.substring(4, 6), 16); + r = Math.floor(r + (255 - r) * factor); + g = Math.floor(g + (255 - g) * factor); + b = Math.floor(b + (255 - b) * factor); + return `#${(1 << 24 | r << 16 | g << 8 | b).toString(16).slice(1).toUpperCase()}`; +} + +function isNearWhite(hex, threshold = 240) { + hex = hex.replace("#", ""); + let r = parseInt(hex.substring(0, 2), 16); + let g = parseInt(hex.substring(2, 4), 16); + let b = parseInt(hex.substring(4, 6), 16); + return r > threshold && g > threshold && b > threshold; +} + +// ---- Color Picker || ColorPicker---- + +const applyCustomTheme = (color) => { + + adjustedColor = color; + if (isNearWhite(color)) { + adjustedColor = "#696969"; // Light gray if near white + } + const darkerColorHex = darkenHexColor(adjustedColor); + const lighterColorHex = lightenHexColor(adjustedColor, 0.85); + const lightTin = lightestColor(adjustedColor, 0.95); + + // resetDarkTheme(); + document.documentElement.style.setProperty("--bg-color-blue", lighterColorHex); + document.documentElement.style.setProperty("--accentLightTint-blue", lightTin); + document.documentElement.style.setProperty("--darkerColor-blue", darkerColorHex); + document.documentElement.style.setProperty("--darkColor-blue", adjustedColor); + document.documentElement.style.setProperty("--textColorDark-blue", darkerColorHex); + document.documentElement.style.setProperty("--whitishColor-blue", "#ffffff"); + document.getElementById("rangColor").style.borderColor = color; + document.getElementById("dfChecked").checked = false; + ApplyLoadingColor(); +}; + +// Load theme on page reload// Load theme on page reload +window.addEventListener("load", function () { + // console.log("Page loaded, stored theme:", storedTheme); + // console.log("Page loaded, stored custom color:", storedCustomColor); + if (storedTheme) { + applySelectedTheme(storedTheme); + } else if (storedCustomColor) { + applyCustomTheme(storedCustomColor); + } +}); + +// Handle radio button changes +const handleThemeChange = function () { + if (this.checked) { + const colorValue = this.value; + // console.log("Radio button changed, selected theme:", colorValue); + localStorage.setItem(themeStorageKey, colorValue); + localStorage.removeItem(customThemeStorageKey); // Clear custom theme + applySelectedTheme(colorValue); + } +}; + +// Remove any previously attached listeners and add only one +radioButtons.forEach(radioButton => { + radioButton.removeEventListener("change", handleThemeChange); // Remove if already attached + radioButton.addEventListener("change", handleThemeChange); // Add fresh listener +}); + +// Handle color picker changes +const handleColorPickerChange = function (event) { + const selectedColor = event.target.value; + // console.log("Color picker changed, selected color:", selectedColor); + resetDarkTheme(); // Clear dark theme if active + localStorage.setItem(customThemeStorageKey, selectedColor); // Save custom color + localStorage.removeItem(themeStorageKey); // Clear predefined theme + applyCustomTheme(selectedColor); + + // Uncheck all radio buttons + radioButtons.forEach(radio => { + radio.checked = false; + }); +}; + +// Add listeners for color picker +colorPicker.removeEventListener("input", handleColorPickerChange); // Ensure no duplicate listeners +colorPicker.addEventListener("input", handleColorPickerChange); +// colorPicker.addEventListener("change", function () { +// // console.log("Final color applied:", colorPicker.value); +// location.reload(); +// }); + + +// end of Function to apply the selected theme + +// -------------------------- Wallpaper ----------------------------- +const dbName = "ImageDB"; +const storeName = "backgroundImages"; +const timestampKey = "lastUpdateTime"; // Key to store last update time +const imageTypeKey = "imageType"; // Key to store the type of image ("random" or "upload") + +// Open IndexedDB database +function openDatabase() { + return new Promise((resolve, reject) => { + const request = indexedDB.open(dbName, 1); + request.onupgradeneeded = function (event) { + const db = event.target.result; + db.createObjectStore(storeName); + }; + request.onsuccess = (event) => resolve(event.target.result); + request.onerror = (event) => reject("Database error: " + event.target.errorCode); + }); +} + +// Save image Blob, timestamp, and type to IndexedDB +async function saveImageToIndexedDB(imageBlob, isRandom) { + const db = await openDatabase(); + return new Promise((resolve, reject) => { + const transaction = db.transaction(storeName, "readwrite"); + const store = transaction.objectStore(storeName); + + store.put(imageBlob, "backgroundImage"); // Save Blob + store.put(new Date().toISOString(), timestampKey); + store.put(isRandom ? "random" : "upload", imageTypeKey); + + transaction.oncomplete = () => resolve(); + transaction.onerror = (event) => reject("Transaction error: " + event.target.errorCode); + }); +} + +// Load image Blob, timestamp, and type from IndexedDB +async function loadImageAndDetails() { + const db = await openDatabase(); + return Promise.all([ + getFromStore(db, "backgroundImage"), + getFromStore(db, timestampKey), + getFromStore(db, imageTypeKey) + ]); +} + +function getFromStore(db, key) { + return new Promise((resolve, reject) => { + const transaction = db.transaction(storeName, "readonly"); + const store = transaction.objectStore(storeName); + const request = store.get(key); + + request.onsuccess = () => resolve(request.result); + request.onerror = (event) => reject("Request error: " + event.target.errorCode); + }); +} + +// Clear image data from IndexedDB +async function clearImageFromIndexedDB() { + const db = await openDatabase(); + return new Promise((resolve, reject) => { + const transaction = db.transaction(storeName, "readwrite"); + const store = transaction.objectStore(storeName); + store.delete("backgroundImage"); + store.delete(timestampKey); + store.delete(imageTypeKey); + + transaction.oncomplete = () => resolve(); + transaction.onerror = (event) => reject("Delete error: " + event.target.errorCode); + }); +} + +// Handle file input and save image as upload +document.getElementById("imageUpload").addEventListener("change", function (event) { + const file = event.target.files[0]; + if (file) { + const imageUrl = URL.createObjectURL(file); // Create temporary Blob URL + const image = new Image(); + + image.onload = function () { + document.body.style.setProperty("--bg-image", `url(${imageUrl})`); + saveImageToIndexedDB(file, false) + .then(() => { + updateTextBackground(true); + URL.revokeObjectURL(imageUrl); // Clean up memory + }) + .catch(error => console.error(error)); + }; + + image.src = imageUrl; + } +}); + +// Fetch and apply random image as background +const RANDOM_IMAGE_URL = "https://picsum.photos/1920/1080"; +const currentLanguage = getLanguageStatus("selectedLanguage") || "en"; +let secondconfirmation +async function applyRandomImage(showConfirmation = true) { + showDialog({ + headline: "Daily Wallpaper!", + icon: 'info', + textBtn: 'No', + tonalBtn: 'Yes', + formText: translations[currentLanguage]?.confirmWallpaper || translations["en"].confirmWallpaper, + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + secondconfirmation=true; + applyranimage() + }, + onIgnored: () => { + return; + } + }); - // Clear removedChips from localStorage and array - localStorage.removeItem("removedChips"); - storedRemovedChips.length = 0; // Clear the array - window.location.reload(true); +} +async function applyranimage(showConfirmation = true){ + if (showConfirmation && !secondconfirmation) { + return; + } + try { + const response = await fetch(RANDOM_IMAGE_URL); + const blob = await response.blob(); // Get Blob from response + const imageUrl = URL.createObjectURL(blob); + + document.body.style.setProperty("--bg-image", `url(${imageUrl})`); + await saveImageToIndexedDB(blob, true); + updateTextBackground(true); + setTimeout(() => URL.revokeObjectURL(imageUrl), 1500); // Delay URL revocation + } catch (error) { + showAlert("Something went wrong :(", `Error fetching random image: ${error.message}`); + } +} +// Function to update solid background behind userText, date, greeting and shortcut names +function updateTextBackground(hasWallpaper) { + const userText = document.getElementById("userText"); + const date = document.getElementById("date"); + const shortcuts = document.querySelectorAll(".shortcuts .shortcut-name"); + + // Update styles for userText and date + [userText, date].forEach(element => { + if (hasWallpaper) { + element.style.backgroundColor = "var(--accentLightTint-blue)"; + element.style.padding = "2px 12px"; + element.style.width = "fit-content"; + element.style.borderRadius = "10px"; + element.style.fontSize = "1.32rem"; + } else { + element.style.backgroundColor = ""; // Reset to default + element.style.padding = ""; + element.style.width = ""; + element.style.borderRadius = ""; + element.style.fontSize = ""; + } + }); + + // Update styles for shortcuts + shortcuts.forEach(shortcut => { + shortcut.style.backgroundColor = hasWallpaper ? "var(--accentLightTint-blue)" : ""; + shortcut.style.padding = hasWallpaper ? "0px 6px" : ""; + shortcut.style.borderRadius = hasWallpaper ? "5px" : ""; + }); +} + +// Check and update image on page load +function checkAndUpdateImage() { + loadImageAndDetails() + .then(([blob, savedTimestamp, imageType]) => { + const now = new Date(); + const lastUpdate = new Date(savedTimestamp); + + // No image or invalid data + if (!blob || !savedTimestamp || isNaN(lastUpdate)) { + updateTextBackground(false); + return; + } + + // Create a new Blob URL dynamically + const imageUrl = URL.createObjectURL(blob); + + if (imageType === "upload") { + document.body.style.setProperty("--bg-image", `url(${imageUrl})`); + updateTextBackground(true); + return; + } + + if (lastUpdate.toDateString() !== now.toDateString()) { + // Refresh random image if a new day + applyRandomImage(false); + } else { + // Reapply the saved random image + document.body.style.setProperty("--bg-image", `url(${imageUrl})`); + updateTextBackground(true); + } + + // Clean up the Blob URL after setting the background + setTimeout(() => URL.revokeObjectURL(imageUrl), 1500); + }) + .catch((error) => { + console.error("Error loading image details:", error); + updateTextBackground(false); + }); +} + +// Event listeners for buttons +document.getElementById("uploadTrigger").addEventListener("click", () => document.getElementById("imageUpload").click()); +document.getElementById("clearImage").addEventListener("click", function () { + loadImageAndDetails() + .then(([blob]) => { + if (!blob) { + showAlert("Something went wrong :(", translations[currentLanguage]?.Nobackgroundset || translations["en"].Nobackgroundset); + return; + } + const confirmationMessage = translations[currentLanguage]?.clearbackgroundimage || translations["en"].clearbackgroundimage; + showDialog({ + headline: "Clear Background Image?", + icon: 'warning', + textBtn: 'Yes', + tonalBtn: 'No', + formText: confirmationMessage, + onTextBtnClick: () => { + clearImageFromIndexedDB() + .then(() => { + document.body.style.removeProperty("--bg-image"); + updateTextBackground(false); + }) + .catch((error) => console.error(error)); + }, + }); + + }) + .catch((error) => console.error(error)); +}); +document.getElementById("randomImageTrigger").addEventListener("click", applyRandomImage); + +// Start image check on page load +checkAndUpdateImage(); +// ------------------------ End of BG Image -------------------------- + +// -------------------- Backup-Restore Settings ---------------------- +document.getElementById("backupBtn").addEventListener("click", backupData); +document.getElementById("restoreBtn").addEventListener("click", () => document.getElementById("fileInput").click()); +document.getElementById("fileInput").addEventListener("change", validateAndRestoreData); + +// Backup data from localStorage and IndexedDB +async function backupData() { + try { + const backup = { localStorage: {}, indexedDB: {} }; + + // Backup localStorage + for (let key in localStorage) { + if (localStorage.hasOwnProperty(key)) { + backup.localStorage[key] = localStorage.getItem(key); + } + } + + // Backup IndexedDB (ImageDB) + backup.indexedDB = await backupIndexedDB(); + + // Generate filename with current date (format: DDMMYYYY) + const date = new Date(); + const formattedDate = `${String(date.getDate()).padStart(2, "0")}${String(date.getMonth() + 1).padStart(2, "0")}${date.getFullYear()}`; + const fileName = `BMYNT_Settings_${formattedDate}.json`; + + // Create and download the backup file + const blob = new Blob([JSON.stringify(backup, null, 2)], { type: "application/json" }); + const link = document.createElement("a"); + link.href = URL.createObjectURL(blob); + link.download = fileName; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } catch (error) { + showAlert("Something went wrong :(", translations[currentLanguage]?.failedbackup || translations["en"].failedbackup + error.message); + } +} + +// Validate and restore data from a backup file +async function validateAndRestoreData(event) { + const file = event.target.files[0]; + if (!file) return; + + const reader = new FileReader(); + reader.onload = async (e) => { + try { + const backup = JSON.parse(e.target.result); + + // Validate the structure of the JSON file + if (!isValidBackupFile(backup)) { + showAlert("Something went wrong :(", translations[currentLanguage]?.invalidBackup || translations["en"].invalidBackup); + return; + } + await restoreData(backup); + showDialog({ + headline: translations[currentLanguage]?.restorecompleted || translations["en"].restorecompleted, + icon: 'done', + textBtn: 'I will Refresh later', + tonalBtn: 'OK', + formText: "Your settings have been restored successfully. Page refresh Required to apply changes.", + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } + }); + } catch (error) { + showAlert("Something went wrong :(", translations[currentLanguage]?.restorefailed || translations["en"].restorefailed + error.message); + } + }; + reader.readAsText(file); } -// Function to check for removed chips on page load -function checkAndRemoveStoredChips() { - storedRemovedChips.forEach(chipId => removeChipById(chipId)); +function isValidBackupFile(backup) { + // Check if localStorage and indexedDB exist and are objects + return !(typeof backup.localStorage !== "object" || typeof backup.indexedDB !== "object"); } -// Check if any chips are removed on page load -checkAndRemoveStoredChips(); - -// If there is a stored search engine, deselect all chips and select the stored one -if (storedSearchEngine) { - selectedChipNumber = storedSearchEngine; - const chipToSelect = document.getElementById(`chip${selectedChipNumber}`); - if (chipToSelect) { - chipToSelect.selected = true; - } -} +// Backup IndexedDB: Extract data from ImageDB -> backgroundImages +async function backupIndexedDB() { + const db = await openDatabase(); + return new Promise((resolve, reject) => { + const transaction = db.transaction(storeName, "readonly"); + const store = transaction.objectStore(storeName); + const data = {}; -// Add event listeners to chips for selection and removal -function addChipEventListeners() { - const chips = document.querySelectorAll('md-filter-chip'); + store.getAllKeys().onsuccess = (keysEvent) => { + const keys = keysEvent.target.result; - chips.forEach((chip, index) => { - chip.addEventListener('click', () => { - // Deselect all chips - chips.forEach(c => c.selected = false); - - // Select the clicked chip - chip.selected = true; - selectedChipNumber = index + 1; - - // Store the selected chip in local storage - localStorage.setItem("selectedSearchEngine", selectedChipNumber); - console.log(`Chip${selectedChipNumber} is selected.`); - }); + if (!keys.length) { + resolve({}); + return; + } - // Add event listener for chip removal - chip.addEventListener('remove', () => { - const chipId = chip.id; - // Add the removed chip to local storage - storedRemovedChips.push(chipId); - localStorage.setItem("removedChips", JSON.stringify(storedRemovedChips)); + let pending = keys.length; + keys.forEach(key => { + store.get(key).onsuccess = (getEvent) => { + const value = getEvent.target.result; + if (value instanceof Blob) { + // Convert Blob to Base64 for JSON compatibility + const reader = new FileReader(); + reader.onload = () => { + data[key] = { blob: reader.result, isBlob: true }; + if (--pending === 0) resolve(data); + }; + reader.readAsDataURL(value); + } else { + data[key] = value; + if (--pending === 0) resolve(data); + } + }; + }); + }; - // If all chips are removed, restore all of them - if (document.querySelectorAll('md-filter-chip').length === 1) { - restoreAllChips(); - addChipEventListeners(); // Re-add event listeners to restored chips - } - }); + transaction.onerror = () => reject(transaction.error); }); } -// Initial call to add event listeners -addChipEventListeners(); - // -----The stay changed even if user reload the page--- - // 🔴🟠🟡🟢🔵🟣⚫️⚪️🟤 - const storedTheme = localStorage.getItem(themeStorageKey); - if (storedTheme) { - applySelectedTheme(storedTheme); - const selectedRadioButton = document.querySelector(`.colorPlate[value = "${storedTheme}"]`); - if (selectedRadioButton) { - selectedRadioButton.checked = true; +// Restore IndexedDB: Clear and repopulate ImageDB -> backgroundImages +async function restoreIndexedDB(data) { + const db = await openDatabase(); + return new Promise((resolve, reject) => { + const transaction = db.transaction(storeName, "readwrite"); + const store = transaction.objectStore(storeName); + + store.clear(); + const entries = Object.entries(data); + let pending = entries.length; + + if (pending === 0) { + resolve(); // If no data to restore, resolve immediately + return; } - } -}); + entries.forEach(([key, value]) => { + if (value.isBlob) { + // Convert Base64 back to Blob + const blob = base64ToBlob(value.blob); + store.put(blob, key); + } else { + store.put(value, key); + } + if (--pending === 0) resolve(); + }); + transaction.onerror = () => reject(transaction.error); + }); +} -// Function to apply the selected theme -// 🔴🟠🟡🟢🔵🟣⚫️⚪️🟤 -const radioButtons = document.querySelectorAll('.colorPlate'); -const themeStorageKey = 'selectedTheme'; +// Restore data for both localStorage and IndexedDB +async function restoreData(backup) { + // Clear localStorage before restoring + localStorage.clear(); -const applySelectedTheme = (colorValue) => { - if (colorValue !== "blue") { - document.documentElement.style.setProperty('--bg-color-blue', `var(--bg-color-${colorValue})`); - document.documentElement.style.setProperty('--accentLightTint-blue', `var(--accentLightTint-${colorValue})`); - document.documentElement.style.setProperty('--darkerColor-blue', `var(--darkerColor-${colorValue})`); - document.documentElement.style.setProperty('--darkColor-blue', `var(--darkColor-${colorValue})`); - document.documentElement.style.setProperty('--tonebtn-blue', `var(--tonebtn-${colorValue})`); - document.documentElement.style.setProperty('--textColorDark-blue', `var(--textColorDark-${colorValue})`); - } else { - document.documentElement.style.setProperty('--bg-color-blue', '#BBD6FD'); - document.documentElement.style.setProperty('--accentLightTint-blue', '#E2EEFF'); - document.documentElement.style.setProperty('--darkerColor-blue', '#3569b2'); - document.documentElement.style.setProperty('--darkColor-blue', '#4382EC'); - document.documentElement.style.setProperty('--tonebtn-blue', '#2c74f1cf'); - document.documentElement.style.setProperty('--textColorDark-blue', '#1b3041'); + // Restore localStorage from backup + if (backup.localStorage) { + Object.keys(backup.localStorage).forEach(key => { + localStorage.setItem(key, backup.localStorage[key]); + }); } -}; - -radioButtons.forEach(radioButton => { - radioButton.addEventListener('change', function () { - if (this.checked) { - const colorValue = this.value; - localStorage.setItem(themeStorageKey, colorValue); - applySelectedTheme(colorValue); - } - }); -}); -// end of Function to apply the selected theme + // Restore IndexedDB from backup + if (backup.indexedDB) { + await restoreIndexedDB(backup.indexedDB); + } +} -// when User click on "AI-Tools" -const element = document.getElementById("toolsCont"); -const shortcuts = document.getElementById("shortcutsContainer"); - -document.getElementById("0NIHK").onclick = () => { - const unfoldShortcutsButton = document.getElementById("unfoldShortcutsBtn"); - if (shortcutsCheckbox.selected) { - if (element.style.display === "flex") { - shortcuts.style.display = 'flex'; - element.style.opacity = "0"; - element.style.gap = "0"; - element.style.transform = "translateX(-100%)"; - unfoldShortcutsButton.style.display = "none"; - - setTimeout(() => { - element.style.display = "none"; - shortcuts.style.display = 'flex'; - }, 500); - } else { - shortcuts.style.display = 'none'; - unfoldShortcutsButton.style.display = "block"; - element.style.display = "flex"; - setTimeout(() => { - element.style.opacity = "1"; - element.style.transform = "translateX(0)"; - }, 1); - setTimeout(() => { - element.style.gap = "12px"; - }, 300); - } - } else { - if (element.style.display === "flex") { - shortcuts.style.display = 'none'; - unfoldShortcutsButton.style.display = "none"; - element.style.opacity = "0"; - element.style.gap = "0"; - element.style.transform = "translateX(-100%)"; - setTimeout(() => { - element.style.display = "none"; - }, 500); - } else { - shortcuts.style.display = 'none'; - unfoldShortcutsButton.style.display = "none"; - element.style.display = "flex"; - setTimeout(() => { - element.style.opacity = "1"; - element.style.transform = "translateX(0)"; - }, 1); - setTimeout(() => { - element.style.gap = "12px"; - }, 300); - } +// Helper: Convert Base64 string to Blob +function base64ToBlob(base64) { + const [metadata, data] = base64.split("", ""); + const mime = metadata.match(/:(.*?);/)[1]; + const binary = atob(data); + const array = new Uint8Array(binary.length); + for (let i = 0; i < binary.length; i++) { + array[i] = binary.charCodeAt(i); } + return new Blob([array], { type: mime }); } -// ------------search suggestions --------------- -const resultBox = document.querySelector('.resultBox'); +// -------------------End of Settings ------------------------------ + + +// ------------Search Suggestions--------------- // Show the result box function showResultBox() { - resultBox.classList.add('show'); + resultBox.classList.add("show"); resultBox.style.display = "block"; } // Hide the result box function hideResultBox() { - resultBox.classList.remove('show'); + resultBox.classList.remove("show"); //resultBox.style.display = "none"; } -showResultBox() -hideResultBox() + +showResultBox(); +hideResultBox(); + document.getElementById("searchQ").addEventListener("input", async function () { const searchsuggestionscheckbox = document.getElementById("searchsuggestionscheckbox"); if (searchsuggestionscheckbox.selected) { - //var selectedOption = document.querySelector('input[name="search-engine"]:checked').value; - const storedSearchEngine = localStorage.getItem("selectedSearchEngine"); - var selectedOption = `engine${storedSearchEngine}`; + var selectedOption = document.querySelector("input[name='search-engine']:checked").value; var searchEngines = { - engine1: 'https://www.google.com/search?q=', - engine2: 'https://duckduckgo.com/?q=', - engine3: 'https://bing.com/?q=', - engine4: 'https://search.brave.com/search?q=', - engine5: 'https://www.youtube.com/results?search_query=' + engine1: "https://www.google.com/search?q=", + engine2: "https://duckduckgo.com/?q=", + engine3: "https://bing.com/?q=", + engine4: "https://search.brave.com/search?q=", + engine5: "https://www.youtube.com/results?search_query=" }; const query = this.value; const resultBox = document.getElementById("resultBox"); if (query.length > 0) { - // Fetch autocomplete suggestions - const suggestions = await getAutocompleteSuggestions(query); + try { + // Fetch autocomplete suggestions + const suggestions = await getAutocompleteSuggestions(query); - if (suggestions == "") { - hideResultBox() - } else { - // Clear the result box - resultBox.innerHTML = ''; - - // Add suggestions to the result box - suggestions.forEach((suggestion) => { - const resultItem = document.createElement("div"); - resultItem.classList.add("resultItem"); - resultItem.textContent = suggestion; - resultItem.onclick = () => { - var resultlink = searchEngines[selectedOption] + encodeURIComponent(suggestion); - window.location.href = resultlink; - }; - resultBox.appendChild(resultItem); - }); - showResultBox() - } + if (suggestions === "") { + hideResultBox(); + } else { + // Clear the result box + resultBox.innerHTML = ""; + + // Add suggestions to the result box + suggestions.forEach((suggestion, index) => { + const resultItem = document.createElement("div"); + resultItem.classList.add("resultItem"); + resultItem.textContent = suggestion; + resultItem.setAttribute("data-index", index); + resultItem.onclick = () => { + var resultlink = searchEngines[selectedOption] + encodeURIComponent(suggestion); + window.location.href = resultlink; + }; + resultBox.appendChild(resultItem); + }); + + // Check if the dropdown of search shortcut is open + const dropdown = document.querySelector(".dropdown-content"); + + if (dropdown.style.display === "block") { + dropdown.style.display = "none"; + } + + showResultBox(); + } + } catch (error) { + // Handle the error (if needed) + } } else { - hideResultBox() + hideResultBox(); + } + } +}); + +let isMouseOverResultBox = false; +// Track mouse entry and exit within the resultBox +resultBox.addEventListener("mouseenter", () => { + isMouseOverResultBox = true; + // Remove keyboard highlight + const activeItem = resultBox.querySelector(".active"); + if (activeItem) { + activeItem.classList.remove("active"); + } +}); + +resultBox.addEventListener("mouseleave", () => { + isMouseOverResultBox = false; +}); + +document.getElementById("searchQ").addEventListener("keydown", function (e) { + if (isMouseOverResultBox) { + return; // Ignore keyboard events if the mouse is in the resultBox + } + const activeItem = resultBox.querySelector(".active"); + let currentIndex = activeItem ? parseInt(activeItem.getAttribute("data-index")) : -1; + + if (resultBox.children.length > 0) { + if (e.key === "ArrowDown") { + e.preventDefault(); + if (activeItem) { + activeItem.classList.remove("active"); + } + currentIndex = (currentIndex + 1) % resultBox.children.length; + resultBox.children[currentIndex].classList.add("active"); + + // Ensure the active item is visible within the result box + const activeElement = resultBox.children[currentIndex]; + activeElement.scrollIntoView({ block: "nearest" }); + } else if (e.key === "ArrowUp") { + e.preventDefault(); + if (activeItem) { + activeItem.classList.remove("active"); + } + currentIndex = (currentIndex - 1 + resultBox.children.length) % resultBox.children.length; + resultBox.children[currentIndex].classList.add("active"); + + // Ensure the active item is visible within the result box + const activeElement = resultBox.children[currentIndex]; + activeElement.scrollIntoView({ block: "nearest" }); + } else if (e.key === "Enter" && activeItem) { + e.preventDefault(); + activeItem.click(); } } }); @@ -803,15 +2904,13 @@ function getClientParam() { async function getAutocompleteSuggestions(query) { const clientParam = getClientParam(); // Get the browser client parameter dynamically - //var selectedOption = document.querySelector('input[name="search-engine"]:checked').value; - const storedSearchEngine = localStorage.getItem("selectedSearchEngine"); - var selectedOption = `engine${storedSearchEngine}`; + var selectedOption = document.querySelector('input[name="search-engine"]:checked').value; var searchEnginesapi = { - engine1: `http://www.google.com/complete/search?client=${clientParam}&q=${encodeURIComponent(query)}`, + engine1: `https://www.google.com/complete/search?client=${clientParam}&q=${encodeURIComponent(query)}`, engine2: `https://duckduckgo.com/ac/?q=${encodeURIComponent(query)}&type=list`, - engine3: `http://www.google.com/complete/search?client=${clientParam}&q=${encodeURIComponent(query)}`, + engine3: `https://www.google.com/complete/search?client=${clientParam}&q=${encodeURIComponent(query)}`, engine4: `https://search.brave.com/api/suggest?q=${encodeURIComponent(query)}&rich=true&source=web`, - engine5: `http://www.google.com/complete/search?client=${clientParam}&ds=yt&q=${encodeURIComponent(query)}` + engine5: `https://www.google.com/complete/search?client=${clientParam}&ds=yt&q=${encodeURIComponent(query)}` }; const useproxyCheckbox = document.getElementById("useproxyCheckbox"); let apiUrl = searchEnginesapi[selectedOption]; @@ -823,7 +2922,7 @@ async function getAutocompleteSuggestions(query) { const response = await fetch(apiUrl); const data = await response.json(); - if (selectedOption === 'engine4') { + if (selectedOption === "engine4") { const suggestions = data[1].map(item => { if (item.is_entity) { return `${item.q} - ${item.name} (${item.category ? item.category : "No category"})`; @@ -837,21 +2936,21 @@ async function getAutocompleteSuggestions(query) { return data[1]; } } catch (error) { - console.error('Error fetching autocomplete suggestions:', error); + console.error("Error fetching autocomplete suggestions:", error); return []; } } - // Hide results when clicking outside document.addEventListener("click", function (event) { const searchbar = document.getElementById("searchbar"); - const resultBox = document.getElementById("resultBox"); + // const resultBox = document.getElementById("resultBox"); if (!searchbar.contains(event.target)) { - hideResultBox() + hideResultBox(); } }); +// ------------End of Search Suggestions--------------- // ------------Showing & Hiding Menu-bar --------------- const menuButton = document.getElementById("menuButton"); const menuBar = document.getElementById("menuBar"); @@ -906,7 +3005,7 @@ const openMenuBar = () => { } menuButton.addEventListener("click", () => { - if (menuBar.style.display === 'none' || menuBar.style.display === '') { + if (menuBar.style.display === "none" || menuBar.style.display === "") { openMenuBar(); } else { closeMenuBar(); @@ -925,30 +3024,6 @@ document.getElementById("menuCloseButton").onclick = () => { closeMenuBar() } - -const secondaryTabs = document.querySelectorAll('md-secondary-tab'); -const secondaryPanels = document.querySelectorAll('[role="tabpanel2"]'); - -function handleSecondaryTabClick(event) { - const selectedTab = event.currentTarget; - const selectedPanelId = selectedTab.id.replace('-tab', '-panel'); - - secondaryPanels.forEach(panel => { - panel.hidden = true; // Hide all secondary panels - }); - secondaryTabs.forEach(tab => { - tab.removeAttribute('active'); // Remove active attribute from all secondary tabs - }); - - const selectedPanel = document.getElementById(selectedPanelId); - selectedPanel.hidden = false; // Show the selected secondary panel - selectedTab.setAttribute('active', ''); // Set active attribute on selected secondary tab -} - -secondaryTabs.forEach(tab => { - tab.addEventListener('click', handleSecondaryTabClick); -}); - // --------------------------------------------------------- document.addEventListener("DOMContentLoaded", function () { @@ -958,84 +3033,89 @@ document.addEventListener("DOMContentLoaded", function () { // maximum number of shortcuts allowed const MAX_SHORTCUTS_ALLOWED = 50; - // minimum number of shortcuts allowed + // minimum number of shorcutDarkColor allowed const MIN_SHORTCUTS_ALLOWED = 1; // The new shortcut placeholder info const PLACEHOLDER_SHORTCUT_NAME = "New shortcut"; - const PLACEHOLDER_SHORTCUT_URL = "https://github.com/XengShi/materialYouNewTab"; + const PLACEHOLDER_SHORTCUT_URL = "https://rhythmcorehq.com/"; // The placeholder for an empty shortcut const SHORTCUT_NAME_PLACEHOLDER = "Shortcut Name"; const SHORTCUT_URL_PLACEHOLDER = "Shortcut URL"; const SHORTCUT_PRESET_NAMES = ["Youtube", "Gmail", "Telegram", "WhatsApp", "Instagram", "Twitter"]; - const SHORTCUT_PRESET_URLS_AND_LOGOS = new Map([["youtube.com", ` + const SHORTCUT_PRESET_URLS_AND_LOGOS = Object.freeze(new Map([["youtube.com", ` - `], ["mail.google.com", ` - - + + + + + `], ["web.telegram.org", ` - `], ["web.whatsapp.com", ` - `], ["instagram.com", ` - + + + + - `], ["twitter.com", ` + `], ["x.com", ` - - `]]); + `]])); - const SHORTCUT_DELETE_BUTTON_HTML = ` + const SHORTCUT_DELETE_BUTTON_HTML = Object.freeze(` - `; + `); - const FAVICON_CANDIDATES = (hostname) => [ - `https://${hostname}/apple-touch-icon-180x180.png`, - `https://${hostname}/apple-touch-icon-120x120.png`, - `https://${hostname}/apple-touch-icon.png` - ]; + // const FAVICON_CANDIDATES = (hostname) => [ + // `https://${hostname}/apple-touch-icon-180x180.png`, + // `https://${hostname}/apple-touch-icon-120x120.png`, + // `https://${hostname}/apple-touch-icon.png` + // ]; const GOOGLE_FAVICON_API_FALLBACK = (hostname) => `https://s2.googleusercontent.com/s2/favicons?domain_url=https://${hostname}&sz=256`; - const FAVICON_REQUEST_TIMEOUT = 5000; + // const FAVICON_REQUEST_TIMEOUT = 5000; const ADAPTIVE_ICON_CSS = `.shortcutsContainer .shortcuts .shortcutLogoContainer img { height: calc(100% / sqrt(2)) !important; width: calc(100% / sqrt(2)) !important; + filter: grayscale(1) contrast(1.4); + mix-blend-mode: lighten; }`; /* ------ Element selectors ------ */ const shortcuts = document.getElementById("shortcuts-section"); - const aiToolsCont = document.getElementById("aiToolsCont"); const shortcutsCheckbox = document.getElementById("shortcutsCheckbox"); const proxybypassField = document.getElementById("proxybypassField"); const proxyinputField = document.getElementById("proxyField"); @@ -1044,10 +3124,11 @@ document.addEventListener("DOMContentLoaded", function () { const shortcutEditField = document.getElementById("shortcutEditField"); const adaptiveIconField = document.getElementById("adaptiveIconField"); const adaptiveIconToggle = document.getElementById("adaptiveIconToggle"); - const aiToolsCheckbox = document.getElementById("aiToolsCheckbox"); + const bookmarksCheckbox = document.getElementById("bookmarksCheckbox"); + const todoListCheckbox = document.getElementById("todoListCheckbox"); + const bookmarkGridCheckbox = document.getElementById("bookmarkGridCheckbox"); const timeformatField = document.getElementById("timeformatField"); const hourcheckbox = document.getElementById("12hourcheckbox"); - const usertextcheckbox = document.getElementById("usertextcheckbox"); const digitalCheckbox = document.getElementById("digitalCheckbox"); const fahrenheitCheckbox = document.getElementById("fahrenheitCheckbox"); const shortcutEditButton = document.getElementById("shortcutEditButton"); @@ -1057,73 +3138,22 @@ document.addEventListener("DOMContentLoaded", function () { const newShortcutButton = document.getElementById("newShortcutButton"); const resetShortcutsButton = document.getElementById("resetButton"); const iconStyle = document.getElementById("iconStyle"); - const flexMonitor = document.getElementById("flexMonitor"); // monitors whether shortcuts have flex-wrap flexed - const defaultHeight = document.getElementById("defaultMonitor").clientHeight; // used to compare to previous element - const unfoldShortcutsButton = document.getElementById("unfoldShortcutsBtn"); - /* ------ Helper functions for saving and loading states ------ */ - - // Function to save checkbox state to localStorage - function saveCheckboxState(key, checkbox) { - localStorage.setItem(key, checkbox.selected ? "selected" : "unselected"); - } - - // Function to load and apply checkbox state from localStorage - function loadCheckboxState(key, checkbox) { - const savedState = localStorage.getItem(key); - checkbox.selected = savedState === "selected"; - } - - // Function to save display status to localStorage - function saveDisplayStatus(key, displayStatus) { - localStorage.setItem(key, displayStatus); - } - // Function to load and apply display status from localStorage - function loadDisplayStatus(key, element) { - const savedStatus = localStorage.getItem(key); - if (savedStatus === "flex") { - element.style.display = "flex"; - } else { - element.style.display = "none"; - } - } - - // Function to save activeness status to localStorage - function saveActiveStatus(key, activeStatus) { - localStorage.setItem(key, activeStatus) - } - - // Function to load and apply activeness status from localStorage - function loadActiveStatus(key, element) { - const savedStatus = localStorage.getItem(key); - if (savedStatus === "active") { - element.classList.remove("inactive"); - } else { - element.classList.add("inactive"); - } - } - - // Function to save style data - function saveIconStyle(key, CSS) { - localStorage.setItem(key, CSS); - } - - // Function to load style data - function loadIconStyle(key, element) { - element.innerHTML = localStorage.getItem(key); - } + // const flexMonitor = document.getElementById("flexMonitor"); // monitors whether shortcuts have flex-wrap flexed + // const defaultHeight = document.getElementById("defaultMonitor").clientHeight; // used to compare to previous element /* ------ Loading shortcuts ------ */ /** - * Function to load and apply all shortcut names and URLs from localStorage - * - * Iterates through the stored shortcuts and replaces the settings entry for the preset shortcuts with the - * stored ones. - * It then calls apply for all the shortcuts, to synchronize the changes settings entries with the actual shortcut - * container. - */ + * Function to load and apply all shortcut names and URLs from localStorage + * + * Iterates through the stored shortcuts and replaces the settings entry for the preset shortcuts with the + * stored ones. + * It then calls apply for all the shortcuts, to synchronize the changes settings entries with the actual shortcut + * container. + */ + function loadShortcuts() { let amount = localStorage.getItem("shortcutAmount"); @@ -1163,14 +3193,14 @@ document.addEventListener("DOMContentLoaded", function () { /* ------ Creating shortcut elements ------ */ /** - * Function that creates a div to be used in the shortcut edit panel of the settings. - * - * @param name The name of the shortcut - * @param url The URL of the shortcut - * @param deleteInactive Whether the delete button should be active - * @param i The index of the shortcut - * @returns {HTMLDivElement} The div to be used in the settings - */ + * Function that creates a div to be used in the shortcut edit panel of the settings. + * + * @param name The name of the shortcut + * @param url The URL of the shortcut + * @param deleteInactive Whether the delete button should be active + * @param i The index of the shortcut + * @returns {HTMLDivElement} The div to be used in the settings + */ function createShortcutSettingsEntry(name, url, deleteInactive, i) { const deleteButtonContainer = document.createElement("div"); deleteButtonContainer.className = "delete"; @@ -1207,12 +3237,12 @@ document.addEventListener("DOMContentLoaded", function () { } /** - * This function creates a shortcut to be used for the shortcut container on the main page. - * - * @param shortcutName The name of the shortcut - * @param shortcutUrl The url of the shortcut - * @param i The index of the shortcut - */ + * This function creates a shortcut to be used for the shortcut container on the main page. + * + * @param shortcutName The name of the shortcut + * @param shortcutUrl The url of the shortcut + * @param i The index of the shortcut + */ function createShortcutElement(shortcutName, shortcutUrl, i) { const shortcut = document.createElement("a"); shortcut.href = shortcutUrl; @@ -1225,7 +3255,7 @@ document.addEventListener("DOMContentLoaded", function () { if (!icon) { // if we had to pick the fallback, attempt to get a better image in the background. icon = getFallbackFavicon(shortcutUrl); - getBestIconUrl(shortcutUrl).then((iconUrl) => icon.src = iconUrl).catch(); + // getBestIconUrl(shortcutUrl).then((iconUrl) => icon.src = iconUrl).catch(); } const iconContainer = document.createElement("div"); @@ -1246,16 +3276,16 @@ document.addEventListener("DOMContentLoaded", function () { /* ------ Attaching event listeners to shortcut settings ------ */ /** - * Function to attach all required event listeners to the shortcut edit inputs in the settings. - * - * It adds three event listeners to each of the two inputs: - * 1. Blur, to save changes to the shortcut automatically. - * 2. Focus, to select all text in the input field when it is selected. - * 3. Keydown, which moves the focus to the URL field when the user presses 'Enter' in the name field, - * and removes all focus to save the changes when the user presses 'Enter' in the URL field. - * - * @param inputs a list of the two inputs these listeners should be applied to. - */ + * Function to attach all required event listeners to the shortcut edit inputs in the settings. + * + * It adds three event listeners to each of the two inputs: + * 1. Blur, to save changes to the shortcut automatically. + * 2. Focus, to select all text in the input field when it is selected. + * 3. Keydown, which moves the focus to the URL field when the user presses "Enter" in the name field, + * and removes all focus to save the changes when the user presses "Enter" in the URL field. + * + * @param inputs a list of the two inputs these listeners should be applied to. + */ function attachEventListenersToInputs(inputs) { inputs.forEach(input => { // save and apply when done @@ -1268,12 +3298,12 @@ document.addEventListener("DOMContentLoaded", function () { input.addEventListener("focus", (e) => e.target.select()); }); inputs[0].addEventListener("keydown", (e) => { - if (e.key === 'Enter') { + if (e.key === "Enter") { inputs[1].focus(); // Move focus to the URL } }); inputs[1].addEventListener("keydown", (e) => { - if (e.key === 'Enter') { + if (e.key === "Enter") { e.target.blur(); // Blur the input field } }); @@ -1283,10 +3313,10 @@ document.addEventListener("DOMContentLoaded", function () { /* ------ Saving and applying changes to shortcuts ------ */ /** - * This function stores a shortcut by saving its values in the settings panel to the local storage. - * - * @param shortcut The shortcut to be saved - */ + * This function stores a shortcut by saving its values in the settings panel to the local storage. + * + * @param shortcut The shortcut to be saved + */ function saveShortcut(shortcut) { const name = shortcut.querySelector("input.shortcutName").value; const url = shortcut.querySelector("input.URL").value; @@ -1296,14 +3326,28 @@ document.addEventListener("DOMContentLoaded", function () { } /** - * This function applies a change that has been made in the settings panel to the real shortcut in the container - * - * @param shortcut The shortcut to be applied. - */ + * This function applies a change that has been made in the settings panel to the real shortcut in the container + * + * @param shortcut The shortcut to be applied. + */ function applyShortcut(shortcut) { const shortcutName = shortcut.querySelector("input.shortcutName").value; - let url = shortcut.querySelector("input.URL").value; - const normalizedUrl = url.startsWith('https://') ? url : 'https://' + url.replace("http://", ""); + let url = shortcut.querySelector("input.URL").value.trim(); + + // URL validation function + function isValidUrl(url) { + const pattern = /^(https:\/\/|http:\/\/)?(([a-zA-Z\d-]+\.)+[a-zA-Z]{2,}|(\d{1,3}\.){3}\d{1,3})(\/[^\s]*)?$/i; + return pattern.test(url); + } + + // Validate URL before normalizing + if (!isValidUrl(url)) { + showAlertDialog("Invalid URL", "Please enter a valid URL with http or https protocol."); + url = "https://rhythmcorehq.com/404"; + } + + // Normalize URL if valid + const normalizedUrl = url.startsWith('https://') || url.startsWith('http://') ? url : 'https://' + url; const i = shortcut._index; @@ -1316,12 +3360,11 @@ document.addEventListener("DOMContentLoaded", function () { } } - /* ------ Adding, deleting, and resetting shortcuts ------ */ /** - * This function creates a new shortcut in the settings panel, then saves and applies it. - */ + * This function creates a new shortcut in the settings panel, then saves and applies it. + */ function newShortcut() { const currentAmount = parseInt(localStorage.getItem("shortcutAmount")); const newAmount = currentAmount + 1; @@ -1352,10 +3395,10 @@ document.addEventListener("DOMContentLoaded", function () { } /** - * This function deletes a shortcut and shifts all indices of the following shortcuts back by one. - * - * @param shortcut The shortcut to be deleted. - */ + * This function deletes a shortcut and shifts all indices of the following shortcuts back by one. + * + * @param shortcut The shortcut to be deleted. + */ function deleteShortcut(shortcut) { const newAmount = (localStorage.getItem("shortcutAmount") || 0) - 1; if (newAmount < MIN_SHORTCUTS_ALLOWED) return; @@ -1391,10 +3434,10 @@ document.addEventListener("DOMContentLoaded", function () { } /** - * This function resets shortcuts to their original state, namely the presets. - * - * It does this by deleting all shortcut-related data, then reloading the shortcuts. - */ + * This function resets shortcuts to their original state, namely the presets. + * + * It does this by deleting all shortcut-related data, then reloading the shortcuts. + */ function resetShortcuts() { for (let i = 0; i < (localStorage.getItem("shortcutAmount") || 0); i++) { localStorage.removeItem("shortcutName" + i); @@ -1410,98 +3453,144 @@ document.addEventListener("DOMContentLoaded", function () { /* ------ Shortcut favicon handling ------ */ /** - * This function verifies whether a URL for a favicon is valid. - * - * It does this by creating an image and setting the URL as the src, as fetch would be blocked by CORS. - * - * @param urls the array of potential URLs of favicons - * @returns {Promise} - */ - function filterFavicon(urls) { - return new Promise((resolve, reject) => { - let found = false; - - for (const url of urls) { - const img = new Image(); - img.referrerPolicy = "no-referrer"; // Don't send referrer data - img.src = url; - - img.onload = () => { - if (!found) { // Make sure to resolve only once - found = true; - resolve(url); - } - }; - } - - // If none of the URLs worked after all have been tried - setTimeout(() => { - if (!found) { - reject(); - } - }, FAVICON_REQUEST_TIMEOUT); - }); - } + * This function verifies whether a URL for a favicon is valid. + * + * It does this by creating an image and setting the URL as the src, as fetch would be blocked by CORS. + * + * @param urls the array of potential URLs of favicons + * @returns {Promise} + */ + // function filterFavicon(urls) { + // return new Promise((resolve, reject) => { + // let found = false; + + // for (const url of urls) { + // const img = new Image(); + // img.referrerPolicy = "no-referrer"; // Don't send referrer data + // img.src = url; + + // img.onload = () => { + // if (!found) { // Make sure to resolve only once + // found = true; + // resolve(url); + // } + // }; + // } + + // // If none of the URLs worked after all have been tried + // setTimeout(() => { + // if (!found) { + // reject(); + // } + // }, FAVICON_REQUEST_TIMEOUT); + // }); + // } /** - * This function returns the url to the favicon of a website, given a URL. - * - * @param urlString The url of the website for which the favicon is requested - * @return {Promise} Potentially the favicon url - */ - async function getBestIconUrl(urlString) { - const hostname = new URL(urlString).hostname; - try { - // Wait for filterFavicon to resolve with a valid URL - return await filterFavicon(FAVICON_CANDIDATES(hostname)); - } catch (error) { - return Promise.reject(); - } - } + * This function returns the url to the favicon of a website, given a URL. + * + * @param urlString The url of the website for which the favicon is requested + * @return {Promise} Potentially the favicon url + */ + // async function getBestIconUrl(urlString) { + // const hostname = new URL(urlString).hostname; + // try { + // // Wait for filterFavicon to resolve with a valid URL + // return await filterFavicon(FAVICON_CANDIDATES(hostname)); + // } catch (error) { + // return Promise.reject(); + // } + // } /** - * This function uses Google's API to immediately get a favicon, - * to be used while loading the real one and as a fallback. - * - * @param urlString the url of the website for which the favicon is requested - * @returns {HTMLImageElement} The img element representing the favicon - */ + * This function uses Google's API to immediately get a favicon, + * to be used while loading the real one and as a fallback. + * + * @param urlString the url of the website for which the favicon is requested + * @returns {HTMLImageElement} The img element representing the favicon + */ function getFallbackFavicon(urlString) { const logo = document.createElement("img"); - const hostname = new URL(urlString).hostname; - logo.src = GOOGLE_FAVICON_API_FALLBACK(hostname); + + if (hostname === "github.com") { + logo.src = "./svgs/shortcuts_icons/github-shortcut.svg"; + } else if (urlString === "https://rhythmcorehq.com/404") { + // Special case for invalid URLs + logo.src = "./svgs/shortcuts_icons/invalid-url.svg"; + } else { + logo.src = GOOGLE_FAVICON_API_FALLBACK(hostname); + + // Handle image loading error on offline scenario + logo.onerror = () => { + logo.src = "./svgs/shortcuts_icons/offline.svg"; + }; + } return logo; } /** - * This function returns the custom logo for the url associated with a preset shortcut. - * - * @param url The url of the shortcut. - * @returns {Element|null} The logo if it was found, otherwise null. - */ + * This function returns the custom logo for the url associated with a preset shortcut. + * + * @param url The url of the shortcut. + * @returns {Element|null} The logo if it was found, otherwise null. + */ function getCustomLogo(url) { const html = SHORTCUT_PRESET_URLS_AND_LOGOS.get(url.replace("https://", "")); - return html ? document.createRange().createContextualFragment(html).firstElementChild : null; + if (!html) return null; + + const template = document.createElement("template"); + template.innerHTML = html.trim(); + return template.content.firstElementChild; } + /* ------ Event Listeners ------ */ + const searchIconContainer = document.querySelectorAll(".searchIcon"); - /* ------ Proxy ------ */ + const showEngineContainer = () => { + searchIconContainer[1].style.display = "none"; + searchIconContainer[0].style.display = "block"; + document.getElementById("search-with-container").style.visibility = "visible"; + } - /** - * This function shows the proxy disclaimer. - */ - function showProxyDisclaimer() { + const hideEngineContainer = () => { + searchIconContainer[0].style.display = "none"; + searchIconContainer[1].style.display = "block"; + document.getElementById("search-with-container").style.visibility = "hidden"; + } - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Please Use Your Own Proxy"; - document.getElementById('alertform').innerText ="It is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns."; - alert.show(); + const initShortCutSwitch = (element) => { + if (element.selected) { + hideEngineContainer(); + localStorage.setItem("showShortcutSwitch", true) + } else { + showEngineContainer(); + localStorage.setItem("showShortcutSwitch", false) + } } + // ---------- Code for Hiding Search Icon And Search With Options for Search switch shortcut -------- + const element = document.getElementById("shortcut_switchcheckbox"); + element.addEventListener("change", (e) => { + initShortCutSwitch(e.target); + }) + + // Intialize shortcut switch + if (localStorage.getItem("showShortcutSwitch")) { + const isShortCutSwitchEnabled = localStorage.getItem("showShortcutSwitch").toString() === "true"; + document.getElementById("shortcut_switchcheckbox").selected = isShortCutSwitchEnabled; - /* ------ Event Listeners ------ */ + if (isShortCutSwitchEnabled) { + hideEngineContainer(); + } else if (!isShortCutSwitchEnabled) { + showEngineContainer() + } + } else { + localStorage.setItem("showShortcutSwitch", false); + } + + initShortCutSwitch(element); // Add change event listeners for the checkboxes shortcutsCheckbox.addEventListener("change", function () { @@ -1522,6 +3611,7 @@ document.addEventListener("DOMContentLoaded", function () { saveActiveStatus("adaptiveIconField", "inactive"); } }); + searchsuggestionscheckbox.addEventListener("change", function () { saveCheckboxState("searchsuggestionscheckboxState", searchsuggestionscheckbox); if (searchsuggestionscheckbox.selected) { @@ -1536,25 +3626,41 @@ document.addEventListener("DOMContentLoaded", function () { saveActiveStatus("proxyinputField", "inactive"); } }); + + if (localStorage.getItem("greetingEnabled") === null) { + localStorage.setItem("greetingEnabled", "true"); + } + const greetingCheckbox = document.getElementById("greetingcheckbox"); + const greetingField = document.getElementById("greetingField"); + greetingCheckbox.selected = localStorage.getItem("greetingEnabled") === "true"; + greetingCheckbox.disabled = localStorage.getItem("clocktype") !== "digital"; + digitalCheckbox.addEventListener("change", function () { saveCheckboxState("digitalCheckboxState", digitalCheckbox); if (digitalCheckbox.selected) { timeformatField.classList.remove("inactive"); + greetingField.classList.remove("inactive"); + greetingCheckbox.disabled = false; // Enable greeting toggle localStorage.setItem("clocktype", "digital"); clocktype = localStorage.getItem("clocktype"); displayClock(); stopClock(); saveActiveStatus("timeformatField", "active"); + saveActiveStatus("greetingField", "active"); } else { timeformatField.classList.add("inactive"); + greetingField.classList.add("inactive"); + greetingCheckbox.disabled = true; // Disable greeting toggle localStorage.setItem("clocktype", "analog"); clocktype = localStorage.getItem("clocktype"); stopClock(); startClock(); displayClock(); saveActiveStatus("timeformatField", "inactive"); + saveActiveStatus("greetingField", "inactive"); } }); + hourcheckbox.addEventListener("change", function () { saveCheckboxState("hourcheckboxState", hourcheckbox); if (hourcheckbox.selected) { @@ -1563,49 +3669,127 @@ document.addEventListener("DOMContentLoaded", function () { localStorage.setItem("hourformat", "false"); } }); - usertextcheckbox.addEventListener("change", function () { - saveCheckboxState("usertextcheckboxState", usertextcheckbox); - const usertextbox = document.getElementById('userTextt'); - if (usertextcheckbox.selected) { - usertextbox.style.display = 'block'; - } else { - usertextbox.style.display = 'none'; - } + + greetingCheckbox.addEventListener("change", () => { + localStorage.setItem("greetingEnabled", greetingCheckbox.selected); + updatedigiClock(); }); + useproxyCheckbox.addEventListener("change", function () { - saveCheckboxState("useproxyCheckboxState", useproxyCheckbox); if (useproxyCheckbox.selected) { - showProxyDisclaimer(); - proxyinputField.classList.remove("inactive"); - saveActiveStatus("proxyinputField", "active"); + // Show the disclaimer and check the user's choice + showDialog({ + headline: 'Please Use Your Own Proxy', + icon: 'warning', + textBtn: 'Ok', + tonalBtn: 'Cancel', + formText: "It is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + onTextBtnClick: () => { + saveCheckboxState("useproxyCheckboxState", useproxyCheckbox); + proxyinputField.classList.remove("inactive"); + saveActiveStatus("proxyinputField", "active"); + + }, + onTonalBtnClick: () => { + useproxyCheckbox.selected = false; + saveCheckboxState("useproxyCheckboxState", useproxyCheckbox); + proxyinputField.classList.add("inactive"); + saveActiveStatus("proxyinputField", "inactive"); + }, + onIgnored: () => { + useproxyCheckbox.selected = false; + saveCheckboxState("useproxyCheckboxState", useproxyCheckbox); + proxyinputField.classList.add("inactive"); + saveActiveStatus("proxyinputField", "inactive"); + } + }); } else { + // If the checkbox is unselected, disable the proxy + saveCheckboxState("useproxyCheckboxState", useproxyCheckbox); proxyinputField.classList.add("inactive"); saveActiveStatus("proxyinputField", "inactive"); } }); + + // Load checkbox state + loadCheckboxState("adaptiveIconToggle", adaptiveIconToggle); + // Apply CSS based on initial state + document.head.appendChild(iconStyle); + iconStyle.textContent = adaptiveIconToggle.selected ? ADAPTIVE_ICON_CSS : ""; + + // Add event listener for checkbox adaptiveIconToggle.addEventListener("change", function () { saveCheckboxState("adaptiveIconToggle", adaptiveIconToggle); if (adaptiveIconToggle.selected) { - const alert =document.getElementById("alert"); - document.getElementById('alertheadline').innerText = "Warning"; - document.getElementById('alertform').innerText = "This setting is still experimental"; - alert.show(); - saveIconStyle("iconStyle", ADAPTIVE_ICON_CSS); - iconStyle.innerHTML = ADAPTIVE_ICON_CSS; + iconStyle.textContent = ADAPTIVE_ICON_CSS; } else { - saveIconStyle("iconStyle", ""); - iconStyle.innerHTML = ""; + iconStyle.textContent = ""; } - }) + }); + + bookmarksCheckbox.addEventListener("change", function () { + let bookmarksPermission; + if (isFirefox && browser.permissions && isDesktop) { + bookmarksPermission = browser.permissions; + } else if (isChrome || isEdge || isBrave && chrome.permissions && isDesktop) { + bookmarksPermission = chrome.permissions; + } else { + showAlert("Something went wrong :(", translations[currentLanguage]?.UnsupportedBrowser || translations["en"].UnsupportedBrowser); + bookmarksCheckbox.selected = false; + saveCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + return; + } + if (bookmarksPermission !== undefined) { + if (bookmarksCheckbox.selected) { + bookmarksPermission.contains({ + permissions: ["bookmarks"] + }, function (alreadyGranted) { + if (alreadyGranted) { + bookmarkButton.style.display = "flex"; + saveDisplayStatus("bookmarksDisplayStatus", "flex"); + saveCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + } else { + bookmarksPermission.request({ + permissions: ["bookmarks"] + }, function (granted) { + if (granted) { + bookmarksAPI = chrome.bookmarks; + bookmarkButton.style.display = "flex"; + saveDisplayStatus("bookmarksDisplayStatus", "flex"); + saveCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + } else { + bookmarksCheckbox.selected = false; + saveCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + } + }); + } + }); + } else { + bookmarkButton.style.display = "none"; + saveDisplayStatus("bookmarksDisplayStatus", "none"); + saveCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + } + } + }); + - aiToolsCheckbox.addEventListener("change", function () { - saveCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); - if (aiToolsCheckbox.selected) { - aiToolsCont.style.display = "flex"; - saveDisplayStatus("aiToolsDisplayStatus", "flex"); + bookmarkGridCheckbox.addEventListener("change", function () { + saveCheckboxState("bookmarkGridCheckboxState", bookmarkGridCheckbox); + if (bookmarkGridCheckbox.checked) { + bookmarkList.classList.add("grid-view"); } else { - aiToolsCont.style.display = "none"; - saveDisplayStatus("aiToolsDisplayStatus", "none"); + bookmarkList.classList.remove("grid-view"); + } + }); + + todoListCheckbox.addEventListener("change", function () { + saveCheckboxState("todoListCheckboxState", todoListCheckbox); + if (todoListCheckbox.selected) { + todoListCont.style.display = "flex"; + saveDisplayStatus("todoListDisplayStatus", "flex"); + } else { + todoListCont.style.display = "none"; + saveDisplayStatus("todoListDisplayStatus", "none"); } }); @@ -1616,56 +3800,121 @@ document.addEventListener("DOMContentLoaded", function () { newShortcutButton.addEventListener("click", () => newShortcut()); resetShortcutsButton.addEventListener("click", () => resetShortcuts()); + function closeshortcuteditmenu() { + + overviewPage.style.display = "block" + overviewPage.style.transform = "translateX(0)"; + overviewPage.style.opacity = "1"; + shortcutEditPage.style.display = "none"; + + requestAnimationFrame(() => { + shortcutEditPage.style.transform = "translateX(120%)"; + shortcutEditPage.style.opacity = "0"; + }); + + } - // Create a ResizeObserver to watch the height changes of the shortcut container and see if it is wrapped - /*new ResizeObserver(e => { - if (shortcutsContainer.classList.contains("showBackground")) { - openShortcutDrawer() + /* ------ Page Transitions & Animations ------ */ + // Select all primary tabs and panels + const tabs = document.querySelectorAll('md-primary-tab'); + const panels = document.querySelectorAll('[role="tabpanel"]'); +const generalpanel = document.getElementById("general-panel"); +const generaltab = document.getElementById("general-tab"); +const advancedtab = document.getElementById("advanced-tab"); +const advancedpanel = document.getElementById("advanced-panel"); +const hometab = document.getElementById("home-tab"); +const homepanel = document.getElementById("home-panel"); +const appearancetab = document.getElementById("appearance-tab"); +const appearancepanel = document.getElementById("appearance-panel"); +//handleTabClick({ currentTarget: document.getElementById('shortcuts-panel') }); + function handleTabClick(event) { + closeshortcuteditmenu(); + panels.forEach(panel => (panel.hidden = true)); + tabs.forEach(tab => tab.removeAttribute('active')); + //secondaryPanels.forEach(p => (p.hidden = true)); + //secondaryTabs.forEach(t => t.removeAttribute('active')); + secondaryPanels2.forEach(p => (p.hidden = true)); + //secondaryTabs2.forEach(t => t.removeAttribute('active')); + + const selectedTab = event.currentTarget; + const selectedPanelId = selectedTab.id.replace('-tab', '-panel'); + selectedTab.setAttribute('active', ''); + if (selectedTab.id === 'settings-tab') { + generalpanel.hidden = false; + advancedpanel.hidden = true; + generaltab.setAttribute('active', ''); + advancedtab.removeAttribute('active'); + }else if (selectedTab.id === 'style-tab') { + appearancepanel.hidden = true; + homepanel.hidden = false; + hometab.setAttribute('active', ''); + appearancetab.removeAttribute('active'); } - const height = e[0].contentRect.height; - if (height === defaultHeight) { - setTimeout(() => { - unfoldShortcutsButton.style.display = "block"; - }); + document.getElementById(selectedPanelId).hidden = false; + } + + tabs.forEach(tab => { + tab.addEventListener('click', handleTabClick); + }); + + // Secondary tabs group 1 + const secondaryTabs = document.querySelectorAll('[role="secondary-tab1"]'); + const secondaryPanels = document.querySelectorAll('[role="tabpanel2"]'); + + function handleSecondaryTabClick(event) { + secondaryPanels.forEach(panel => (panel.hidden = true)); + secondaryTabs.forEach(tab => tab.removeAttribute('active')); + + const selectedTab = event.currentTarget; + const selectedPanelId = selectedTab.id.replace('-tab', '-panel'); + selectedTab.setAttribute('active', ''); + document.getElementById(selectedPanelId).hidden = false; + + + } + + secondaryTabs.forEach(tab => { + tab.addEventListener('click', handleSecondaryTabClick); + }); + + function loadActiveSecondaryTab1() { + const storedTabId = localStorage.getItem('activeSecondaryTab1'); + if (storedTabId && document.getElementById(storedTabId)) { + document.getElementById(storedTabId).click(); } else { - setTimeout(() => { - unfoldShortcutsButton.style.display = "block"; - }); + secondaryTabs[0].click(); } - }).observe(flexMonitor);*/ + } + loadActiveSecondaryTab1(); + // Secondary tabs group 2 + const secondaryTabs2 = document.querySelectorAll('[role="secondary-tab2"]'); + const secondaryPanels2 = document.querySelectorAll('[role="tabpanel3"]'); - /* ------ Page Transitions & Animations ------ */ + function handleSecondaryTab2Click(event) { + secondaryPanels2.forEach(panel => (panel.hidden = true)); + secondaryTabs2.forEach(tab => tab.removeAttribute('active')); + + const selectedTab2 = event.currentTarget; + const selectedPanelId2 = selectedTab2.id.replace('-tab', '-panel'); + selectedTab2.setAttribute('active', ''); + document.getElementById(selectedPanelId2).hidden = false; - /** - * This function sets the state of the shortcut drawer to open. - * - * This means it can be used both to open and to update the shortcut drawer. - */ - function openShortcutDrawer() { - //const translationDistance = flexMonitor.clientHeight - defaultHeight; - const translationDistance = "90"; - shortcutsContainer.style.display = "flex"; - requestAnimationFrame(() => { - shortcutsContainer.style.transform = `translateY(-${translationDistance}px)`; - shortcutsContainer.classList.add("showBackground"); - unfoldShortcutsButton.style.transform = "rotate(180deg)"; - unfoldShortcutsButton.closest(".unfoldContainer").style.transform = `translateY(-${translationDistance}px)`; - }); } - /** - * This function closes the shortcut drawer - */ - function resetShortcutDrawer() { - requestAnimationFrame(() => { - shortcutsContainer.style.display = "none"; - shortcutsContainer.style.transform = "translateY(0)"; - shortcutsContainer.classList.remove("showBackground"); - unfoldShortcutsButton.style.transform = "rotate(0)"; - unfoldShortcutsButton.closest(".unfoldContainer").style.transform = "translateY(0)"; - }); + secondaryTabs2.forEach(tab => { + tab.addEventListener('click', handleSecondaryTab2Click); + }); + + function loadActiveSecondaryTab2() { + const storedTabId2 = localStorage.getItem('activeSecondaryTab2'); + if (storedTabId2 && document.getElementById(storedTabId2)) { + document.getElementById(storedTabId2).click(); + } else { + secondaryTabs2[0].click(); + } } + loadActiveSecondaryTab2(); // When clicked, open new page by sliding it in from the right. shortcutEditButton.onclick = () => { @@ -1686,46 +3935,7 @@ document.addEventListener("DOMContentLoaded", function () { overviewPage.style.display = "none"; }, 650); } -function closeshortcuteditmenu(){ - - overviewPage.style.display = "block" - overviewPage.style.transform = "translateX(0)"; - overviewPage.style.opacity = "1"; - shortcutEditPage.style.display = "none"; - - requestAnimationFrame(() => { - shortcutEditPage.style.transform = "translateX(120%)"; - shortcutEditPage.style.opacity = "0"; - }); - -} -// Select all primary tabs -const tabs = document.querySelectorAll('md-primary-tab'); -const panels = document.querySelectorAll('[role="tabpanel"]'); - -// Function to show the selected panel and hide others -function handleTabClick(event) { - const selectedTab = event.currentTarget; - const selectedPanelId = selectedTab.id.replace('-tab', '-panel'); - closeshortcuteditmenu(); - // Hide all panels and deactivate all tabs - panels.forEach(panel => { - panel.hidden = true; // Hide all panels - }); - tabs.forEach(tab => { - tab.removeAttribute('active'); // Remove active attribute from all tabs - }); - - // Show the selected panel and activate the selected tab - const selectedPanel = document.getElementById(selectedPanelId); - selectedPanel.hidden = false; // Show the selected panel - selectedTab.setAttribute('active', ''); // Set active attribute on selected tab -} -// Add click event listeners to each tab -tabs.forEach(tab => { - tab.addEventListener('click', handleTabClick); -}); // Close page by sliding it away to the right. backButton.onclick = () => { setTimeout(() => { @@ -1746,24 +3956,12 @@ tabs.forEach(tab => { }, 650); } - // Shift up shortcuts - unfoldShortcutsButton.onclick = (e) => { - - if (!shortcutsContainer.classList.contains("showBackground")) { - e.stopPropagation(); - openShortcutDrawer(); - } - } - - document.addEventListener('click', function (event) { - // Check if the clicked element is not the shortcut container, yet the container is unfolded - if (shortcutsContainer.classList.contains("showBackground") && !shortcutsContainer.contains(event.target)) { - resetShortcutDrawer(); - } + // Rotate reset button when clicked + const resetButton = document.getElementById("resetButton"); + resetButton.addEventListener("click", () => { + resetButton.querySelector("svg").classList.toggle("rotateResetButton"); }); - - /* ------ Loading ------ */ // Load and apply the saved checkbox states and display statuses @@ -1774,15 +3972,45 @@ tabs.forEach(tab => { loadCheckboxState("useproxyCheckboxState", useproxyCheckbox); loadCheckboxState("digitalCheckboxState", digitalCheckbox); loadCheckboxState("hourcheckboxState", hourcheckbox); - loadCheckboxState("usertextcheckboxState", usertextcheckbox); loadActiveStatus("proxyinputField", proxyinputField); loadActiveStatus("timeformatField", timeformatField); + loadActiveStatus("greetingField", greetingField); loadActiveStatus("proxybypassField", proxybypassField); - loadCheckboxState("adaptiveIconToggle", adaptiveIconToggle); - loadIconStyle("iconStyle", iconStyle); - loadCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); + loadCheckboxState("bookmarksCheckboxState", bookmarksCheckbox); + loadCheckboxState("googleAppsCheckboxState", googleAppsCheckbox); + loadCheckboxState("todoListCheckboxState", todoListCheckbox); loadDisplayStatus("shortcutsDisplayStatus", shortcuts); - loadDisplayStatus("aiToolsDisplayStatus", aiToolsCont); + loadDisplayStatus("bookmarksDisplayStatus", bookmarkButton); + loadDisplayStatus("googleAppsDisplayStatus", googleAppsCont); + loadDisplayStatus("todoListDisplayStatus", todoListCont); loadCheckboxState("fahrenheitCheckboxState", fahrenheitCheckbox); + loadCheckboxState("bookmarkGridCheckboxState", bookmarkGridCheckbox); loadShortcuts(); }); + +document.addEventListener("keydown", function (event) { + if (event.key === "ArrowRight" && event.target.tagName !== "INPUT" && event.target.tagName !== "TEXTAREA" && event.target.isContentEditable !== true) { + if (bookmarksCheckbox.selected) { + bookmarkButton.click(); + } else { + bookmarksCheckbox.click(); + } + } +}); + +document.addEventListener("keydown", function (event) { + const searchInput = document.getElementById("searchQ"); + const searchBar = document.querySelector(".searchbar"); + if (event.key === "/" && event.target.tagName !== "INPUT" && event.target.tagName !== "TEXTAREA" && event.target.isContentEditable !== true) { + event.preventDefault(); + searchInput.focus(); + searchBar.classList.add("active"); + } +}); + +//------------------------- LoadingScreen -----------------------// + +function ApplyLoadingColor() { + let LoadingScreenColor = getComputedStyle(document.body).getPropertyValue("background-color"); + localStorage.setItem("LoadingScreenColor", LoadingScreenColor); +} diff --git a/src/docs/Get_WeatherAPI_Key.html b/src/docs/Get_WeatherAPI_Key.html new file mode 100644 index 00000000..b1874884 --- /dev/null +++ b/src/docs/Get_WeatherAPI_Key.html @@ -0,0 +1,206 @@ + + + + + + + WeatherAPI's API Key + + + + +

      How to Obtain a WeatherAPI's API Key

      + +
      +

      Step 1: Visit the WeatherAPI Website

      +

      Navigate to the WeatherAPI official website: https://www.weatherapi.com/.

      + WeatherAPI Homepage +
      + +
      +

      Step 2: Sign Up for an Account

      +
        +
      1. Click on the Sign Up button located at the top right corner of the homepage.
      2. +
      3. Fill in the required fields: +
          +
        • Email Address: Provide a valid email address.
        • +
        • Password: Create a secure password.
        • +
        +
      4. +
      5. Agree to the terms and conditions.
      6. +
      7. Complete the CAPTCHA verification if prompted.
      8. +
      9. Click Sign Up to create your account.
      10. +
      + Sign Up Form +

      Note: If you already have an account, click Login and proceed with your + credentials.

      +
      + +
      +

      Step 3: Verify Your Email Address

      +

      Check your email inbox for a verification email from WeatherAPI. Open the email and click on the verification + link provided.

      +

      Tip: Check your spam or junk folder if you don’t see the email in your inbox.

      +
      + +
      +

      Step 4: Log In to Your Account

      +
        +
      1. Return to the WeatherAPI website.
      2. +
      3. Click on Login.
      4. +
      5. Enter your email address and password.
      6. +
      7. Click Login to access your account.
      8. +
      + Login Page +
      + +
      +

      Step 5: Copy Your API Key

      +
        +
      1. Once logged in, go to the Dashboard.
      2. +
      3. If the API section isn’t open, locate and open it.
      4. +
      5. You will see your API key displayed with a Copy option. Click it to copy your API key. +
      6. +
      + Dashboard with API Key +
      + +
      +

      Step 6: Paste Your API Key

      +
        +
      1. Paste your API key into the WeatherAPI key field in the extension menu.
      2. +
      3. Press enter or click on Save button to integrate it.
      4. +
      + Paste API Key +
      + +
      +

      FAQs

      + +

      Why is the location inaccurate?

      +

      The extension determines your location using your IP address, which can often be imprecise. If the + detected location differs from your actual location, you can:

      +
        +
      • Manually enter your city name or geographic coordinates.
      • +
      • Use the GPS option to fetch your location for greater accuracy.
      • +
      + +

      Why do I need an API key?

      +

      An API key serves as a unique identifier for managing access and monitoring usage.

      +
        +
      • Our extension currently uses shared API keys that allow up to 10,000,000 calls per month. With + over 300,000 active users, these shared keys can reach their limit quickly. Once the limit is reached, + weather data will no longer be accessible until the limit resets the following month.
      • +
      • Using your own API key ensures that weather data remains accessible.
      • +
      + +

      What are the benefits of using my own API key?

      +

      Using your own unique API key provides several key advantages:

      +
        +
      • Analytics: Access detailed insights into your API usage with comprehensive reports + available through your account dashboard. Monitor trends and make informed decisions based on your data + usage patterns.
      • +
      • Privacy: Your API activity is securely tied only to your account, ensuring that your + data remains private and protected from unauthorized access.
      • +
      • Compliance and Monitoring: Ensure adherence to WeatherAPI's terms of service by + monitoring your usage. Track API consumption effortlessly to avoid unexpected limits or disruptions in + service.
      • +
      +
      + + + + + diff --git a/src/docs/Loading.png b/src/docs/Loading.png new file mode 100644 index 00000000..1914264c Binary files /dev/null and b/src/docs/Loading.png differ diff --git a/src/docs/PageNotFound.html b/src/docs/PageNotFound.html new file mode 100644 index 00000000..a215f371 --- /dev/null +++ b/src/docs/PageNotFound.html @@ -0,0 +1,101 @@ + + + + + + + Page Not Found + + + + +
      +

      This site can't be reached

      + +

      + Paths cross empty void
      + Seeking what once existed
      + Silence answers all. +

      + +

      Check if there is a typo in the URL.

      + +

      + Note: Only http:// or https:// protocols' shortcuts are supported for now.
      + The following are NOT supported: ftp://, data:, chrome://, and more. +

      +
      + + + \ No newline at end of file diff --git a/src/docs/feedback.html b/src/docs/feedback.html new file mode 100644 index 00000000..66727f04 --- /dev/null +++ b/src/docs/feedback.html @@ -0,0 +1,110 @@ + + + + + + + Feedback - MaterialYouNewTab + + + + + +
      +

      We Value Your Feedback

      + +
      + + + + + +
      +
      + + + diff --git a/src/favicon/blue.png b/src/favicon/blue.png new file mode 100644 index 00000000..844e8660 Binary files /dev/null and b/src/favicon/blue.png differ diff --git a/src/favicon/brown.png b/src/favicon/brown.png new file mode 100644 index 00000000..58e97052 Binary files /dev/null and b/src/favicon/brown.png differ diff --git a/src/favicon/cyan.png b/src/favicon/cyan.png new file mode 100644 index 00000000..ea1f1fd1 Binary files /dev/null and b/src/favicon/cyan.png differ diff --git a/src/favicon/dark.png b/src/favicon/dark.png new file mode 100644 index 00000000..7a2b2416 Binary files /dev/null and b/src/favicon/dark.png differ diff --git a/src/favicon/green.png b/src/favicon/green.png new file mode 100644 index 00000000..4a64d294 Binary files /dev/null and b/src/favicon/green.png differ diff --git a/src/favicon/grey.png b/src/favicon/grey.png new file mode 100644 index 00000000..46441b78 Binary files /dev/null and b/src/favicon/grey.png differ diff --git a/src/favicon/icon.ico b/src/favicon/icon.ico new file mode 100644 index 00000000..39d4386d Binary files /dev/null and b/src/favicon/icon.ico differ diff --git a/src/favicon/icon.png b/src/favicon/icon.png new file mode 100644 index 00000000..d48cd015 Binary files /dev/null and b/src/favicon/icon.png differ diff --git a/src/favicon/orange.png b/src/favicon/orange.png new file mode 100644 index 00000000..b0e7d9ca Binary files /dev/null and b/src/favicon/orange.png differ diff --git a/src/favicon/pink.png b/src/favicon/pink.png new file mode 100644 index 00000000..259854d6 Binary files /dev/null and b/src/favicon/pink.png differ diff --git a/src/favicon/purple.png b/src/favicon/purple.png new file mode 100644 index 00000000..7fa071c7 Binary files /dev/null and b/src/favicon/purple.png differ diff --git a/src/favicon/red.png b/src/favicon/red.png new file mode 100644 index 00000000..d23c2063 Binary files /dev/null and b/src/favicon/red.png differ diff --git a/src/favicon/silver.png b/src/favicon/silver.png new file mode 100644 index 00000000..011c5333 Binary files /dev/null and b/src/favicon/silver.png differ diff --git a/src/favicon/yellow.png b/src/favicon/yellow.png new file mode 100644 index 00000000..67908aa6 Binary files /dev/null and b/src/favicon/yellow.png differ diff --git a/src/fonts/Material-symbols-outlined.woff2 b/src/fonts/Material-symbols-outlined.woff2 new file mode 100644 index 00000000..b929747d Binary files /dev/null and b/src/fonts/Material-symbols-outlined.woff2 differ diff --git a/src/humidity.svg b/src/humidity.svg deleted file mode 100644 index b8b04870..00000000 --- a/src/humidity.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/index.html b/src/index.html new file mode 100644 index 00000000..b1d9214c --- /dev/null +++ b/src/index.html @@ -0,0 +1,1527 @@ + + + + + + + + New Tab + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      + info +
      +
      + + +
      +
      + +
      +
      + +
      +
      + OK +
      +
      + + + + + +
      + + + + + + + + + + + + ToDo List +
      + + + + +
      + + + +
      + +
      + + + + + Bookmarks +
      +
      +
      + +
      + + + + + + + + + + +
      + +
      +

      Bookmarks

      +
      +
      + + +
      +
      +

      View as

      +
      + + + +
      +
      +
        +
        +
        + + + + +
        + + + + + Google Apps +
        + + + + + +
        +
        + + +
        + + + + +
        +
        +
        +
        +
        +
        +
        + + + + + + Thu 9 + + + + 6 + : + 28 + + + + AM + +
        + + +
        + + +
        +
        +
        + + +
        + +
        +
        + +
        Hello! How are you today?
        +
        +
        +
        +
        +
        Humidity
        +
        +
        + +
        +
        +
        + + device_thermostat + +
        + Seems +
        +
        +
        + my_location + +
        + Earth +
        +
        + +
        +
        + + +
        + + + + +
        +
        ?
        + weatherIcon +
        +
        +
        + + + + + + + + + + +
        + +
        + + + +
        +
        +
        +
        +
        +
        +
        + + + + + + + + +
        + + + edit + + + + + \ No newline at end of file diff --git a/src/languages.js b/src/languages.js deleted file mode 100644 index 57ee5167..00000000 --- a/src/languages.js +++ /dev/null @@ -1,714 +0,0 @@ -// Translation data -const translations = { - "en": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Reset Settings", - // Shortcuts - "shortcutsText": "Shortcuts", - "enableShortcutsText": "Enable/disable shortcuts", - "editShortcutsText": "Edit Shortcuts", - "editShortcutsList": "Edit Shortcuts", - "shortcutsInfoText": "Choose which shortcuts get shown", - "adaptiveIconText": "Adaptive Icon Shapes", - "adaptiveIconInfoText": "Shortcut Icons will always be round", - "ai_tools_button": "AI-Tools", - "enable_ai_tools": "Enable/disable AI Tools shortcuts", - // Digital Clock - "digitalclocktittle": "Digital Clock", - "digitalclockinfo": "Enable/disable the Digital Clock", - "timeformattittle": "Use 12h Format", - "timeformatinfo": "Use 12 hour time format", - // Misc - "fahrenheitCelsiusCheckbox": "Switch to Fahrenheit", - "fahrenheitCelsiusText": "Refresh the page to see the updates", - "search_suggestions_button": "Search Suggestions", - "search_suggestions_text": "Enable/disable Search Suggestions", - // Proxy - "useproxytitletext": "Proxy Bypass", - "useproxyText": "If search suggestions isn't working", - "ProxyText": "CORS Bypass Proxy", - "ProxySubtext": "Add your own CORS Bypass Proxy", - "HostproxyButton": "Host Your Own Proxy", - "saveproxy": "Save", - // Location - "UserLocText": "Enter your location", - "UserLocSubtext": "If the weather location isn't correct", - "userLoc": "Your location (City/Latitude,Longitude)", - "InputOptionsButton": "Input Options", - "saveLoc": "Save", - // Weather - "WeatherApiText": "Enter your own WeatherAPI key", - "WeatherApiSubtext": "If the weather functionality isn't working", - "userAPI": "Your weatherAPI key", - "LearnMoreButton": "Learn More", - "saveAPI": "Save", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], - "months": ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], - // End of Calendar - - // Weather - "humidityText": "Humidity", - "feelsLike": "Feels", - "location": "Earth", - // End of Weather - - // New Tab Item - "conditionText": "Hello! How are you today?", - "enterBtn": "Search", - "searchPlaceholder": "Your query...", - "searchWithHint": "Search With", - "ai_tools": "AI Tools", - "userText": "Double tap to edit", - // End of Body and New Tab Items - - // toDo for "menuCloseButton:hover::after": "Close", - }, - - // Portuguese - // Machine translated some elements, please verify and delete this comment - "pt": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Redefinir Configurações", - // Shortcuts - "shortcutsText": "Atalhos", - "enableShortcutsText": "Ativar/desativar atalhos", - "editShortcutsText": "Editar Atalhos", - "editShortcutsList": "Editar Atalhos", - "shortcutsInfoText": "Escolha quais atalhos serão exibidos", - "adaptiveIconText": "Formas de Ícone Adaptativo", - "adaptiveIconInfoText": "Os ícones de atalhos serão sempre redondos", - "ai_tools_button": "Ferramentas de IA", - "enable_ai_tools": "Ativar/desativar atalhos de ferramentas de IA", - // Digital Clock - "digitalclocktittle": "Relógio Digital", - "digitalclockinfo": "Ativar/desativar o Relógio Digital", - "timeformattittle": "Usar Formato de 12h", - "timeformatinfo": "Usar formato de hora de 12 horas", - // Misc - "fahrenheitCelsiusCheckbox": "Alternar para Fahrenheit", - "fahrenheitCelsiusText": "Atualize a página para ver as atualizações", - "search_suggestions_button": "Sugestões de Pesquisa", - "search_suggestions_text": "Ativar/desativar Sugestões de Pesquisa", - // Proxy - "useproxytitletext": "Bypass de Proxy", - "useproxyText": "Se as sugestões de pesquisa não estiverem funcionando", - "ProxyText": "Proxy de Bypass CORS", - "ProxySubtext": "Adicione seu próprio Proxy de Bypass CORS", - "HostproxyButton": "Hospede Seu Próprio Proxy", - "saveproxy": "Salvar", - // Location - "UserLocText": "Insira sua localização", - "UserLocSubtext": "Se a localização do clima não estiver correta", - "userLoc": "Sua localização (Cidade/Aletitude,Longitude)", - "InputOptionsButton": "Opções de Entrada", - "saveLoc": "Salvar", - // Weather - "WeatherApiText": "Insira sua própria chave da API de Clima", - "WeatherApiSubtext": "Se a funcionalidade do clima não estiver funcionando", - "userAPI": "Sua chave da WeatherAPI", - "LearnMoreButton": "Saiba Mais", - "saveAPI": "Salvar API", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado'], - "months": ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], - // End of Calendar - - // Weather - "humidityText": "Umidade", - "feelsLike": "Sensação de", - "location": "Terra", - // End of Weather - - // New Tab Item - "conditionText": "Olá! Como você está hoje?", - "enterBtn": "Entrar", - "searchPlaceholder": "Digite sua consulta...", - "searchWithHint": "Pesquisar Com", - "ai_tools": "Ferramentas de IA", - "userText": "Toque duas vezes para editar", - // End of Body and New Tab Items -}, - - // Chinese - // Machine translated some elements, please verify and delete this comment - "zh": { - // Menu Items - "feedback": "反馈", - "resetsettings": "重置设置", - // Shortcuts - "shortcutsText": "快捷方式", - "enableShortcutsText": "启用/禁用快捷方式", - "editShortcutsText": "编辑快捷方式", - "editShortcutsList": "编辑快捷方式", - "shortcutsInfoText": "选择要显示的快捷方式", - "adaptiveIconText": "自适应图标形状", - "adaptiveIconInfoText": "快捷方式图标将始终为圆形", - "ai_tools_button": "AI工具", - "enable_ai_tools": "启用/禁用AI工具快捷方式", - // Digital Clock - "digitalclocktittle": "数字时钟", - "digitalclockinfo": "启用/禁用数字时钟", - "timeformattittle": "使用12小时格式", - "timeformatinfo": "使用12小时制时间格式", - // Misc - "fahrenheitCelsiusCheckbox": "切换到华氏温度", - "fahrenheitCelsiusText": "刷新页面以查看更新", - "search_suggestions_button": "搜索建议", - "search_suggestions_text": "启用/禁用搜索建议", - // Proxy - "useproxytitletext": "代理绕过", - "useproxyText": "如果搜索建议无法正常工作", - "ProxyText": "CORS绕过代理", - "ProxySubtext": "添加您自己的CORS绕过代理", - "HostproxyButton": "托管您自己的代理", - "saveproxy": "保存", - // Location - "UserLocText": "输入您的位置", - "UserLocSubtext": "如果天气位置不正确", - "userLoc": "您的位置(城市/纬度,经度)", - "InputOptionsButton": "输入选项", - "saveLoc": "保存", - // Weather - "WeatherApiText": "输入您自己的天气API密钥", - "WeatherApiSubtext": "如果天气功能无法正常工作", - "userAPI": "您的天气API密钥", - "LearnMoreButton": "了解更多", - "saveAPI": "保存API", - // End of Menu Items - - // Body Items - // Calendar - "days": ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'], - "months": ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], - // End of Calendar - - // Weather - "humidityText": "湿度", - "feelsLike": "体感温度", - "location": "地球", - // End of Weather - - // New Tab Item - "conditionText": "你好!今天怎么样?", - "enterBtn": "输入", - "searchPlaceholder": "输入搜索内容...", - "searchWithHint": "搜索引擎", - "ai_tools": "AI工具", - "userText": "双击可编辑", - // End of Body and New Tab Items -}, - - // Hindi - "hi": { - // Menu Items - "feedback": "प्रतिक्रिया", - "resetsettings": "सेटिंग्स रीसेट करें", - // later ----> "menuCloseButton:hover::after": "बंद करें", - // Shortcuts - "shortcutsText": "शॉर्टकट्स", - "enableShortcutsText": "शॉर्टकट्स सक्षम/अक्षम करें", - "editShortcutsText": "शॉर्टकट्स संपादित करें", - "editShortcutsList": "शॉर्टकट्स संपादित करें", - "shortcutsInfoText": "कौन से शॉर्टकट्स दिखाए जाएँ, चुनें", - "adaptiveIconText": "अनुकूल आइकन आकृतियाँ", - "adaptiveIconInfoText": "शॉर्टकट आइकन हमेशा गोल होंगे", - "ai_tools_button": "AI-उपकरण", - "enable_ai_tools": "AI उपकरणों के शॉर्टकट्स सक्षम/अक्षम करें", - // Digital Clock - "digitalclocktittle": "डिजिटल घड़ी", - "digitalclockinfo": "डिजिटल घड़ी को सक्षम/अक्षम करें", - "timeformattittle": "12 घंटे का प्रारूप उपयोग करें", - "timeformatinfo": "12 घंटे का समय प्रारूप उपयोग करें", - // Misc - "fahrenheitCelsiusCheckbox": "तापमान फारेनहाइट में बदलें", - "fahrenheitCelsiusText": "बदलाव के लिए पृष्ठ को रीफ्रेश करें", - "search_suggestions_button": "खोज सुझाव", - "search_suggestions_text": "खोज सुझाव सक्षम/अक्षम करें", - // Proxy - "useproxytitletext": "प्रॉक्सी बायपास", - "useproxyText": "यदि खोज सुझाव काम नहीं कर रहे हैं", - "ProxyText": "CORS बायपास प्रॉक्सी", - "ProxySubtext": "अपना CORS बायपास प्रॉक्सी जोड़ें", - "HostproxyButton": "अपना प्रॉक्सी संचालित करें", - "saveproxy": "दर्ज करें", - // Location - "UserLocText": "अपना स्थान दर्ज करें", - "UserLocSubtext": "यदि मौसम स्थान सटीक नहीं है", - "userLoc": "आपका स्थान (शहर/अक्षांश,देशांतर)", - "InputOptionsButton": "इनपुट विकल्प", - "saveLoc": "दर्ज करें", - // Weather - "WeatherApiText": "अपनी खुद की WeatherAPI कुंजी दर्ज करें", - "WeatherApiSubtext": "यदि मौसम सुविधा काम नहीं कर रही है", - "userAPI": "आपकी WeatherAPI कुंजी", - "LearnMoreButton": "और जानें", - "saveAPI": "दर्ज करें", - // End of Menu Items - - // Body Items - // Calendar - "days": ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display - // "days": ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full - "months": ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवंबर', 'दिसंबर'], - // "months": ['जन', 'फर', 'मार्च', 'अप्र', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'], // Truncated - - // Weather - "humidityText": "नमी", - "feelsLike": "महसूस", - "location": "पृथ्वी", - // End of Weather - - // New Tab Item - "conditionText": "नमस्ते! आप आज कैसे हैं?", - "enterBtn": "सर्च करें", - "searchPlaceholder": "यहाँ लिखें...", - "searchWithHint": "खोज माध्यम", - "ai_tools": "AI उपकरण", - "userText": "यहाँ अपना टेक्स्ट लिखें", - // End of Body and New Tab Items - }, - - // Czech - "cs": { - // Menu Items - "feedback": "Zpětná vazba", - "resetsettings": "Resetovat nastavení", - // Shortcuts - "shortcutsText": "Zkratky", - "enableShortcutsText": "Povolí/zakáže zkratky", - "editShortcutsText": "Upravit zkratky", - "editShortcutsList": "Upravit zkratky", - "shortcutsInfoText": "Vyberte, které zkratky se mají zobrazit", - "adaptiveIconText": "Adaptivní tvary ikon", - "adaptiveIconInfoText": "Ikony zkratek budou vždy kulaté", - "ai_tools_button": "AI nástroje", - "enable_ai_tools": "Povolí/zakáže zkratky AI nástrojů", - // Digital Clock - "digitalclocktittle": "Digitální hodiny", - "digitalclockinfo": "Povolí/zakáže digitální hodiny", - "timeformattittle": "Použít 12hodinový formát", - "timeformatinfo": "Použije 12hodinový formát času", - // Misc - "fahrenheitCelsiusCheckbox": "Přepnout na stupně Fahrenheita", - "fahrenheitCelsiusText": "Změny se projeví po obnovení stránky", - "search_suggestions_button": "Návrhy vyhledávání", - "search_suggestions_text": "Povolí/zakáže návrhy vyhledávání", - // Proxy - "useproxytitletext": "Obcházení proxy", - "useproxyText": "Pokud nefungují návrhy vyhledávání", - "ProxyText": "Proxy pro obcházení CORS", - "ProxySubtext": "Přidejte vlastní proxy pro obcházení CORS", - "HostproxyButton": "Provozování vlastní proxy", - "saveproxy": "Uložit", - // Location - "UserLocText": "Zadejte svou polohu", - "UserLocSubtext": "Pokud není poloha počasí správná", - "userLoc": "Vaše poloha (město / zeměpisná šířka, zeměpisná délka)", - "InputOptionsButton": "Co lze zadat", - "saveLoc": "Uložit", - // Weather - "WeatherApiText": "Zadejte svůj klíč k WeatherAPI", - "WeatherApiSubtext": "Pokud nefunguje funkce počasí", - "userAPI": "Váš klíč k WeatherAPI", - "LearnMoreButton": "Zjistit více", - "saveAPI": "Uložit", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota'], - "months": ['Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec'], - // End of Calendar - - // Weather - "humidityText": "Vlhkost", - "feelsLike": "Pocitová teplota", - "location": "Země", - // End of Weather - - // New Tab Item - "conditionText": "Dobrý den! Jak se máte?", - "enterBtn": "Vyhledat", - "searchPlaceholder": "Zadejte hledaný výraz...", - "searchWithHint": "Vyhledávat prostřednictvím", - "ai_tools": "AI nástroje", - "userText": "Upravíte dvojklikem", - // End of Body and New Tab Items -}, - - // Italian - // Machine translated some elements, please verify and delete this comment - "it": { - // Menu Items - "feedback": "Feedback", - "resetsettings": "Reimposta Impostazioni", - // Shortcuts - "shortcutsText": "Scorciatoie", - "enableShortcutsText": "Abilita/disabilita scorciatoie", - "editShortcutsText": "Modifica Scorciatoie", - "editShortcutsList": "Modifica Scorciatoie", - "shortcutsInfoText": "Scegli quali scorciatoie mostrare", - "adaptiveIconText": "Forme di Icona Adattiva", - "adaptiveIconInfoText": "Le icone delle scorciatoie saranno sempre rotonde", - "ai_tools_button": "Strumenti AI", - "enable_ai_tools": "Abilita/disabilita scorciatoie Strumenti AI", - // Digital Clock - "digitalclocktittle": "Orologio Digitale", - "digitalclockinfo": "Abilita/disabilita Orologio Digitale", - "timeformattittle": "Usa formato 12h", - "timeformatinfo": "Usa formato orario a 12 ore", - // Misc - "fahrenheitCelciusCheckbox": "Passa a Fahrenheit", - "fahrenheitCelciusText": "Ricarica la pagina per vedere gli aggiornamenti", - "search_suggestions_button": "Suggerimenti di Ricerca", - "search_suggestions_text": "Abilita/disabilita Suggerimenti di Ricerca", - // Proxy - "useproxytitletext": "Bypass Proxy", - "useproxyText": "Se i suggerimenti di ricerca non funzionano", - "ProxyText": "Proxy di Bypass CORS", - "ProxySubtext": "Aggiungi il tuo Proxy di Bypass CORS", - "HostproxyButton": "Hosta il Tuo Proxy", - "saveproxy": "Invia", - // Location - "UserLocText": "Inserisci la tua posizione", - "UserLocSubtext": "Se la posizione meteo non è corretta", - "userLoc": "La tua posizione (Città/Latitudine,Longitudine)", - "InputOptionsButton": "Opzioni di Inserimento", - "saveLoc": "Invia", - // Weather - "WeatherApiText": "Inserisci la tua chiave WeatherAPI", - "WeatherApiSubtext": "Se la funzionalità meteo non funziona", - "userAPI": "La tua chiave WeatherAPI", - "LearnMoreButton": "Scopri di più", - "saveAPI": "Invia", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], - "months": ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'], - // End of Calendar - - // Weather - "humidityText": "Umidità", - "feelsLike": "Percepito", - "location": "Terra", - // End of Weather - - // New Tab Item - "conditionText": "Ciao! Come stai oggi?", - "enterBtn": "Invia", - "searchPlaceholder": "Cerca...", - "searchWithHint": "Cerca con", - "ai_tools": "Strumenti AI", - "userText": "Clicca per modificare", - // End of Body and New Tab Items -}, - - // Turkish - // Machine translated some elements, please verify and delete this commenty - "tr": { - // Menu Items - "feedback": "Geri Bildirim", - "resetsettings": "Ayarları Sıfırla", - // Shortcuts - "shortcutsText": "Kısayollar", - "enableShortcutsText": "Kısayolları etkinleştir/devre dışı bırak", - "editShortcutsText": "Kısayolları Düzenle", - "editShortcutsList": "Kısayolları Düzenle", - "shortcutsInfoText": "Hangi kısayolların gösterileceğini seçin", - "adaptiveIconText": "Uyarlanabilir İkon Şekilleri", - "adaptiveIconInfoText": "Kısayol İkonları her zaman yuvarlak olacak", - "ai_tools_button": "AI Araçları", - "enable_ai_tools": "AI Araçları kısayollarını etkinleştir/devre dışı bırak", - // Digital Clock - "digitalclocktittle": "Dijital Saat", - "digitalclockinfo": "Dijital Saati etkinleştir/devre dışı bırak", - "timeformattittle": "12 saat Formatını Kullanın", - "timeformatinfo": "12 saat zaman formatını kullanın", - // Misc - "fahrenheitCelsiusCheckbox": "Fahrenheit'a geç", - "fahrenheitCelsiusText": "Güncellemeleri görmek için sayfayı yenileyin", - "search_suggestions_button": "Arama Önerileri", - "search_suggestions_text": "Arama Önerilerini etkinleştir/devre dışı bırak", - // Proxy - "useproxytitletext": "Proxy Atlatma", - "useproxyText": "Eğer arama önerileri çalışmıyorsa", - "ProxyText": "CORS Atlatma Proxy", - "ProxySubtext": "Kendi CORS Atlatma Proxy'nizi ekleyin", - "HostproxyButton": "Kendi Proxy'nizi Barındırın", - "saveproxy": "Gönder", - // Location - "UserLocText": "Konumunuzu girin", - "UserLocSubtext": "Hava durumu konumu doğru değilse", - "userLoc": "Konumunuz (Şehir/Enlem,Boylam)", - "InputOptionsButton": "Girdi Seçenekleri", - "saveLoc": "Gönder", - // Weather - "WeatherApiText": "Kendi Hava Durumu API anahtarınızı girin", - "WeatherApiSubtext": "Hava durumu işlevi çalışmıyorsa", - "userAPI": "Hava Durumu API anahtarınız", - "LearnMoreButton": "Daha Fazla Bilgi Edinin", - "saveAPI": "API'yi Kaydet", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'], - "months": ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'], - // End of Calendar - - // Weather - "humidityText": "Nem", - "feelsLike": "Hissedilen", - "location": "Dünya", - // End of Weather - - // New Tab Item - "conditionText": "Merhaba! Bugün nasılsın?", - "enterBtn": "Gönder", - "searchPlaceholder": "Aramanız...", - "searchWithHint": "ile Ara", - "ai_tools": "AI Araçları", - "userText": "Düzenlemek için çift dokunun", - // End of Body and New Tab Items -}, - - // Bengali - "bn": { - // Menu Items - "feedback": "প্রতিক্রিয়া", - "resetsettings": "সেটিংস রিসেট করুন", - // later ----> "menuCloseButton:hover::after": "বন্ধ করুন", - // Shortcuts - "shortcutsText": "শর্টকাট", - "enableShortcutsText": "শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন", - "editShortcutsText": "শর্টকাট সম্পাদনা করুন", - "editShortcutsList": "শর্টকাট সম্পাদনা তালিকা", - "shortcutsInfoText": "যেসব শর্টকাট প্রদর্শিত হবে তা নির্বাচন করুন", - "adaptiveIconText": "অ্যাডাপ্টিভ আইকন আকার", - "adaptiveIconInfoText": "শর্টকাট আইকন সর্বদা গোলাকার থাকবে", - "ai_tools_button": "AI সরঞ্জাম", - "enable_ai_tools": "AI সরঞ্জাম শর্টকাট সক্রিয়/নিষ্ক্রিয় করুন", - // Digital Clock - "digitalclocktittle": "ডিজিটাল ঘড়ি", - "digitalclockinfo": "ডিজিটাল ঘড়ি সক্রিয়/নিষ্ক্রিয় করুন", - "timeformattittle": "১২ ঘণ্টার ফরম্যাট ব্যবহার করুন", - "timeformatinfo": "১২ ঘণ্টার সময় ফরম্যাট ব্যবহার করুন", - // Misc - "fahrenheitCelsiusCheckbox": "ফারেনহাইটে পরিবর্তন করুন", - "fahrenheitCelsiusText": "আপডেট দেখতে পৃষ্ঠা রিফ্রেশ করুন", - "search_suggestions_button": "অনুসন্ধানের পরামর্শ", - "search_suggestions_text": "অনুসন্ধানের পরামর্শ সক্রিয়/নিষ্ক্রিয় করুন", - // Proxy - "useproxytitletext": "প্রক্সি বাইপাস", - "useproxyText": "যদি অনুসন্ধানের পরামর্শ কাজ না করে", - "ProxyText": "CORS বাইপাস প্রক্সি", - "ProxySubtext": "আপনার নিজের CORS বাইপাস প্রক্সি যোগ করুন", - "HostproxyButton": "আপনার নিজের প্রক্সি হোস্ট করুন", - "saveproxy": "প্রবেশ করুন", - // Location - "UserLocText": "আপনার অবস্থান লিখুন", - "UserLocSubtext": "যদি আবহাওয়ার অবস্থান সঠিক না হয়", - "userLoc": "আপনার অবস্থান (শহর/অক্ষাংশ,দ্রাঘিমাংশ)", - "InputOptionsButton": "ইনপুট অপশন", - "saveLoc": "প্রবেশ করুন", - // Weather - "WeatherApiText": "আপনার নিজস্ব WeatherAPI কী লিখুন", - "WeatherApiSubtext": "যদি আবহাওয়া ফিচার কাজ না করে", - "userAPI": "আপনার WeatherAPI কী", - "LearnMoreButton": "আরও জানুন", - "saveAPI": "প্রবেশ করুন", - // End of Menu Items - - // Body Items - // Calendar - "days": ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'], // Truncated for display - //"days": ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'], // Full - "months": ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'], - // "months": ['জানু', 'ফেব', 'মার্চ', 'এপ্রি', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ', 'অক্টো', 'নভে', 'ডিসে'], // Truncated - // End of Calendar - - // Weather - "humidityText": "আর্দ্রতা", - "feelsLike": "অনুভূত হয়", - "location": "পৃথিবী", - // End of Weather - - // New Tab Item - "conditionText": "হ্যালো! আপনি আজ কেমন আছেন?", - "enterBtn": "প্রবেশ করুন", - "searchPlaceholder": "আপনার প্রশ্ন লিখুন...", - "searchWithHint": "অনুসন্ধান করুন", - "ai_tools": "AI সরঞ্জাম", - "userText": "সম্পাদনা করতে ডবল ট্যাপ করুন", - // End of Body and New Tab Items - }, - - // Russian -"ru": { - // Menu Items - "feedback": "Обратная связь", - "resetsettings": "Сброс настроек", - // Shortcuts - "shortcutsText": "Ярлыки", - "enableShortcutsText": "Включить/Отключить ярлыки", - "editShortcutsText": "Редактировать ярлыки", - "editShortcutsList": "Редактировать ярлыки", - "shortcutsInfoText": "Выберите, какие ярлыки будут отображаться", - "adaptiveIconText": "Адаптивные формы значков", - "adaptiveIconInfoText": "Ярлыки всегда будут круглыми", - "ai_tools_button": "Инструменты ИИ", - "enable_ai_tools": "Включить/Отключить ярлыки инструментов ИИ", - // Digital Clock - "digitalclocktittle": "Цифровые часы", - "digitalclockinfo": "Включить/Отключить цифровые часы", - "timeformattittle": "12-часовой формат", - "timeformatinfo": "Использовать 12-часовой формат времени", - // Misc - "fahrenheitCelsiusCheckbox": "Переключить на Фаренгейт", - "fahrenheitCelsiusText": "Обновите страницу, чтобы увидеть изменения", - "search_suggestions_button": "Поисковые подсказки", - "search_suggestions_text": "Включить/Отключить поисковые подсказки", - // Proxy - "useproxytitletext": "Использовать прокси", - "useproxyText": "Если поисковые подсказки не работают", - "ProxyText": "CORS обход прокси", - "ProxySubtext": "Добавьте свой CORS-прокси", - "HostproxyButton": "Разместить свой прокси", - "saveproxy": "Применить", - // Location - "UserLocText": "Введите ваше местоположение", - "UserLocSubtext": "Если местоположение для погоды неверно", - "userLoc": "Ваше местоположение (Город/Широта,Долгота)", - "InputOptionsButton": "Опции ввода", - "saveLoc": "Применить", - // Weather - "WeatherApiText": "Введите свой ключ WeatherAPI", - "WeatherApiSubtext": "Если функция погоды не работает", - "userAPI": "Ваш ключ WeatherAPI", - "LearnMoreButton": "Узнать больше", - "saveAPI": "Применить", - // End of Menu Items - - // Body Items - // Calendar - "days": ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'], - "months": ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'], - // End of Calendar - - // Weather - "humidityText": "Влажность", - "feelsLike": "Ощущается как", - "location": "Земля", - // End of Weather - - // New Tab Item - "conditionText": "Привет! Как ты сегодня?", - "enterBtn": "Ввод", - "searchPlaceholder": "Ваш запрос...", - "searchWithHint": "Искать с помощью", - "ai_tools": "Инструменты ИИ", - "userText": "Дважды нажмите для редактирования", - // End of Body and New Tab Items -} -}; - -// Function to apply the language to the page -function applyLanguage(lang) { - if (translations[lang]) { - // Menu Items - document.getElementById('feedbackbtntext').innerText = translations[lang].feedback; - document.getElementById('resetsettingstext').innerText = translations[lang].resetsettings; - document.getElementById('shortcutsText').innerText = translations[lang].shortcutsText; - document.getElementById('enableShortcutsText').innerText = translations[lang].enableShortcutsText; - document.getElementById('editShortcutsText').innerText = translations[lang].editShortcutsText; - document.getElementById('editShortcutsList').innerText = translations[lang].editShortcutsList; - document.getElementById('shortcutsInfoText').innerText = translations[lang].shortcutsInfoText; - document.getElementById('adaptiveIconText').innerText = translations[lang].adaptiveIconText; - document.getElementById('adaptiveIconInfoText').innerText = translations[lang].adaptiveIconInfoText; - document.getElementById('ai_tools_button').innerText = translations[lang].ai_tools_button; - document.getElementById('enable_ai_tools').innerText = translations[lang].enable_ai_tools; - document.getElementById('fahrenheitCelsiusCheckbox').innerText = translations[lang].fahrenheitCelsiusCheckbox; - document.getElementById('fahrenheitCelsiusText').innerText = translations[lang].fahrenheitCelsiusText; - document.getElementById('search_suggestions_button').innerText = translations[lang].search_suggestions_button; - document.getElementById('search_suggestions_text').innerText = translations[lang].search_suggestions_text; - - // Clock - document.getElementById('digitalclocktittle').innerText = translations[lang].digitalclocktittle; - document.getElementById('digitalclockinfo').innerText = translations[lang].digitalclockinfo; - document.getElementById('timeformattittle').innerText = translations[lang].timeformattittle; - document.getElementById('timeformatinfo').innerText = translations[lang].timeformatinfo; - - // Proxy - document.getElementById('useproxytitletext').innerText = translations[lang].useproxytitletext; - document.getElementById('useproxyText').innerText = translations[lang].useproxyText; - document.getElementById('ProxySubtext').innerText = translations[lang].ProxySubtext; - document.getElementById('HostproxyButton').innerText = translations[lang].HostproxyButton; - document.getElementById('saveproxy').innerText = translations[lang].saveproxy; - - // Weather - document.getElementById('UserLocSubtext').innerText = translations[lang].UserLocSubtext; - document.getElementById('userLoc').placeholder = translations[lang].userLoc; - document.getElementById('InputOptionsButton').innerText = translations[lang].InputOptionsButton; - document.getElementById('saveLoc').innerText = translations[lang].saveLoc; - document.getElementById('WeatherApiSubtext').innerText = translations[lang].WeatherApiSubtext; - document.getElementById('userAPI').placeholder = translations[lang].userAPI; - document.getElementById('LearnMoreButton').innerText = translations[lang].LearnMoreButton; - document.getElementById('saveAPI').innerText = translations[lang].saveAPI; - - // End of Menu Items - - // Body Items - document.getElementById('conditionText').innerText = translations[lang].conditionText; - document.getElementById('enterBtn').innerText = translations[lang].enterBtn; - document.getElementById('searchQ').placeholder = translations[lang].searchPlaceholder; - document.getElementById('searchWithHint').innerText = translations[lang].searchWithHint; - document.getElementById('ai_tools').innerText = translations[lang].ai_tools; - document.getElementById('userTextt').placeholder = translations[lang].userText; - - // Weather - document.getElementById("humidityLevel").innerText = translations[lang].humidityText; - document.getElementById("feelsLike").innerText = translations[lang].feelsLike; - document.getElementById("location").innerText = translations[lang].location; - - // End of Body Items*/ - - // Save the selected language in localStorage - saveLanguageStatus('selectedLanguage', lang); - } else { - console.error('Language not found'); - } -} -// Detect language from navigator.language -document.getElementById('languageSelector').addEventListener('change', (event) => { - applyLanguage(event.target.value); - location.reload(); -}); -// Function to apply the language when the page loads -window.onload = function () { - const savedLanguage = getLanguageStatus('selectedLanguage') || 'en'; // Default language is English - if (savedLanguage) { - document.getElementById("languageSelector").value = savedLanguage; - } - applyLanguage(savedLanguage); -}; - -// Function to save the language status in localStorage -function saveLanguageStatus(key, languageStatus) { - localStorage.setItem(key, languageStatus); -} -// Function to get the language status from localStorage -function getLanguageStatus(key) { - return localStorage.getItem(key); -} -export default translations; \ No newline at end of file diff --git a/src/locales/README.md b/src/locales/README.md new file mode 100644 index 00000000..174b037e --- /dev/null +++ b/src/locales/README.md @@ -0,0 +1,24 @@ +## Adding a New Translation + +1. **Create a new translation file** + - Name the file using the appropriate language code (e.g., `de.js` for German or `ar.js` for Arabic). + - Place this file in the `locales` directory. + +2. **Add the locale to `index.html`** + - Open `index.html` and locate the `` section. + - Add your new locale script tag in the correct order, as follows: + ```html + + ``` + +3. **Test the translation** + - Verify that your translations are displayed correctly when the respective locale is selected. + +4. **Keep translations consistent** + - Follow the structure of existing translation files to ensure consistency across all locales. + +5. **Subscribe to Translation Updates for Contributors** (optional) + - Join the #195 channel or mailing list to receive notifications about new lines being added to translations. + +6. **Update the Currently Supported Languages section in the `README.md`** + - Add the new language to the list of supported languages in the README, following the existing format. diff --git a/src/locales/az.js b/src/locales/az.js new file mode 100644 index 00000000..bb8dc08a --- /dev/null +++ b/src/locales/az.js @@ -0,0 +1,138 @@ +// Azerbaijani -> az +const az = { + // Menu Items + "github": "GitHub", + "feedback": "Əlaqə", + "resetsettings": "Parametrləri sıfırla", + "menuCloseText": "Bağla", + + // Shortcuts + "shortcutsText": "Qısayollar", + "enableShortcutsText": "Yadda saxlanmış qısa yolları göstər", + "editShortcutsText": "Qısayolları redaktə et", + "shortcutsInfoText": "Göstəriləcək qısayolları seçin", + "editShortcutsList": "Saxlanmış Qısayollar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptiv ikona formaları", + "adaptiveIconInfoText": "Qısayol nişanları dairəvi görünəcək", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI Alətləri", + "enable_ai_tools": "AI Alətləri qısayollarını göstər", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Google Tətbiqləri üçün qısayolları göstər", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Rəqəmsal saat", + "digitalclockinfo": "Rəqəmsal saata keç", + "timeformattittle": "12 Saat Format", + "timeformatinfo": "12 saatlıq vaxt formatından istifadə edin", + "greetingtittle": "Xoş gəlmisiniz", + "greetinginfo": "Fərdi mətnin altında salamlama mesajını göstər", + + // Misc + "userTextTitle": "Fərdiləşdirilə bilən mətn", + "userTextInfo": "Saat altında fərdi mətni göstər", + "fahrenheitCelsiusCheckbox": "Fahrenheit rejiminə keç", + "fahrenheitCelsiusText": "Yeniləmələri görmək üçün səhifəni yeniləyin", + "micIconTitle": "Mikrofon nişanını gizlət", + "micIconInfo": "Səslə yazmaq işləmirsə", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Təklifləri axtarın", + "search_suggestions_text": "Axtarış təkliflərini aktivləşdirin", + + // Proxy + "useproxytitletext": "Proksidən keçmək", + "useproxyText": "Əgər axtarış təklifləri işləmirsə", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "Öz CORS Bypass Proxy əlavə et", + "HostproxyButton": "Öz Proxyinizi Host edin", + "saveproxy": "Saxla", + + // Location + "UserLocText": "Məkanınızı daxil edin", + "UserLocSubtext": "Hava yeri düzgün deyilsə", + "userLoc": "Məkanınız (Şəhər/Enlem, Boylam)", + "saveLoc": "Saxla", + + // Weather + "WeatherApiText": "Öz WeatherAPI açarınızı daxil edin", + "WeatherApiSubtext": "Hava funksiyası işləmirsə", + "userAPI": "Sizin WeatherAPI açarınız", + "LearnMoreButton": "Ətraflı məlumat", + "saveAPI": "Saxla", + + // Body Items + // Calendar + "days": ['Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə'], + "months": ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Salam! Bu gün necəsən?", + "humidityLevel": "Rütubət", + "feelsLike": "FeelsLike", + "location": "Dünya", + "enterBtn": "Axtar", + "searchPlaceholder": "Axtarışınız...", + "listenPlaceholder": "Dinlənir...", + "searchWithHint": "Bununla axtar", + "userText": "Bura klikləməklə redaktə edin", + + // Greeting + greeting: { + "morning": "Sabahınız xeyir!", + "afternoon": "Hər vaxtın xeyir!", + "evening": "Axşamın xeyir!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Alətləri", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Divar kağızı yükləyin", + "backupText": "Yedək", + "restoreText": "Bərpa et", + "rangColor": "Rəng seçin", + + // Dialog boxes (alerts) + "confirmWallpaper": "Gün üçün divar kağızı olaraq yeni bir şəkil təyin etmək istərdinizmi?", + "confirmRestore": "Parametrlərinizi sıfırlamaq istədiyinizə əminsiniz? Bu əməliyyatı geri qaytarmaq mümkün deyil.", + "Nobackgroundset": "Hazırda heç bir fon şəkli qurulmayıb.", + "clearbackgroundimage": "Arxa fon şəklini təmizləmək istədiyinizə əminsinizmi?", + "ProxyDisclaimer": "Bütün proksi funksiyaları defolt olaraq deaktivdir.\n\nAxtarış təkliflərini və CORS proksisini yan keçmək imkanını aktiv etsəniz, təkmil məxfilik üçün öz proksinizi yerləşdirmək tövsiyə olunur.\n\nDefolt olaraq, proksi quraşdırılacaq. https://mynt-proxy.rhythmcorehq.com ünvanına, yəni bütün məlumatlarınız bu xidmətdən keçəcək və bu, məxfiliklə bağlı narahatlıq yarada bilər.", + "failedbackup": "Yedəkləmə uğursuz oldu: ", + "restorecompleted": "Bərpa uğurla tamamlandı!", + "restorefailed": "Bərpa uğursuz oldu: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/bn.js b/src/locales/bn.js new file mode 100644 index 00000000..3f0a8720 --- /dev/null +++ b/src/locales/bn.js @@ -0,0 +1,141 @@ +// Bengali +const bn = { + // Menu Items + "github": "গিটহাব", + "feedback": "মতামত", + "resetsettings": "সেটিংস পুনরায় সেট করুন", + "menuCloseText": "বন্ধ করুন", + + // Shortcuts + "shortcutsText": "শর্টকাট", + "enableShortcutsText": "সংরক্ষিত শর্টকাটগুলি প্রদর্শন করুন", + "editShortcutsText": "শর্টকাট সম্পাদনা করুন", + "shortcutsInfoText": "যে শর্টকাটগুলো দেখাতে চান তা নির্বাচন করুন", + "editShortcutsList": "সংরক্ষিত শর্টকাট", + "editShortcutsListInfo": "\"+\" আইকনে ক্লিক করে নতুন শর্টকাট যোগ করুন অথবা বিদ্যমান শর্টকাটের নাম বা URL এ ক্লিক করে সম্পাদনা করুন।", + "adaptiveIconText": "অ্যাডাপ্টিভ আইকন", + "adaptiveIconInfoText": "শর্টকাট আইকন থিম রঙের সাথে মিলে ছোট আকারে প্রদর্শিত হবে", + "bookmarksText": "বুকমার্কস", + "bookmarksInfo": "বুকমার্কস সাইডবার দেখুন", + "ai_tools_button": "এআই সরঞ্জাম", + "enable_ai_tools": "এআই সরঞ্জামের শর্টকাট প্রদর্শন করুন", + "googleAppsMenuText": "গুগল অ্যাপস", + "googleAppsMenuInfo": "গুগল অ্যাপসের শর্টকাট প্রদর্শন করুন", + "googleAppsHover": "গুগল অ্যাপস", + + // To-do List + "todoListText": "টু ডু লিস্ট", + "todoListInfo": "দৈনিক কাজের তালিকা দেখুন", + "todoListHover": "টু ডু লিস্ট", + "todoPlaceholder": "টাস্ক যোগ করুন...", + + // Digital Clock + "digitalclocktittle": "ডিজিটাল ঘড়ি", + "digitalclockinfo": "ডিজিটাল ঘড়িতে পরিবর্তন করুন", + "timeformattittle": "১২-ঘণ্টা ফরম্যাট", + "timeformatinfo": "১২-ঘণ্টার সময় ফরম্যাট ব্যবহার করুন", + "greetingtittle": "অভিবাদন", + "greetinginfo": "কাস্টম টেক্সটের নিচে অভিবাদন দেখান", + + // Misc + "userTextTitle": "কাস্টমাইজেবল টেক্সট", + "userTextInfo": "ঘড়ির নিচে কাস্টম টেক্সট দেখান", + "fahrenheitCelsiusCheckbox": "ফারেনহাইটে পরিবর্তন করুন", + "fahrenheitCelsiusText": "পরিবর্তন প্রয়োগ করতে পেজ রিফ্রেশ করুন", + "micIconTitle": "মাইক্রোফোন আইকন লুকান", + "micIconInfo": "যদি ভয়েস টাইপিং কাজ না করে", + "hideSearchWith": "সার্চ ইঞ্জিন লুকান", + "hideSearchWithInfo": "সার্চ ইঞ্জিনের আইকনে ক্লিক করে সার্চ ইঞ্জিন পরিবর্তন করুন", + "search_suggestions_button": "সার্চ সাজেশন", + "search_suggestions_text": "সার্চ সাজেশন সক্রিয় করুন", + + // Proxy + "useproxytitletext": "প্রক্সি বাইপাস", + "useproxyText": "যদি সার্চ সাজেশন কাজ না করে", + "ProxyText": "CORS বাইপাস প্রক্সি", + "ProxySubtext": "নিজস্ব CORS বাইপাস প্রক্সি যোগ করুন", + "HostproxyButton": "নিজস্ব প্রক্সি হোস্ট করুন", + "saveproxy": "সংরক্ষণ করুন", + + // Location + "UserLocText": "আপনার অবস্থান লিখুন", + "UserLocSubtext": "যদি আবহাওয়া অবস্থান সঠিক না হয়", + "userLoc": "আপনার শহর বা স্থানাঙ্ক (অক্ষাংশ, দ্রাঘিমাংশ)", + "useGPS": "জিপিএস ব্যবহার করুন", + "saveLoc": "সংরক্ষণ করুন", + + // Weather + "WeatherApiText": "আপনার WeatherAPI কী লিখুন", + "WeatherApiSubtext": "যদি আবহাওয়ার ফাংশন কাজ না করে", + "userAPI": "আপনার WeatherAPI কী", + "LearnMoreButton": "আরও জানুন", + "saveAPI": "সংরক্ষণ করুন", + + // Body Items + // Calendar + "days": ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'], // Truncated for display + //"days": ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'], // Full + "months": ['জানুয়ারি', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'], + // "months": ['জানু', 'ফেব্রু', 'মার্চ', 'এপ্রি', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ্টে', 'অক্টো', 'নভে', 'ডিসে'], // Truncated + + // Bookmarks + "bookmarksHeading": "বুকমার্কস", + "bookmarkViewAs": "এইভাবে দেখুন", + "bookmarkViewGrid": "গ্রিড", + "bookmarkViewList": "লিস্ট", + "bookmarkSearch": "বুকমার্ক সার্চ করুন", + + // New Tab Item + "conditionText": "হ্যালো! আজ আপনি কেমন আছেন?", + "humidityLevel": "আর্দ্রতা", + "feelsLike": "অনুভূতি হয়", + "location": "পৃথিবী", + "enterBtn": "সার্চ করুন", + "searchPlaceholder": "এখানে টাইপ করুন...", + "listenPlaceholder": "শোনা হচ্ছে...", + "searchWithHint": "সার্চের মাধ্যম", + "userText": "এখানে আপনার টেক্সট লিখুন", + + // Greeting + greeting: { + "morning": "শুভ সকাল!", + "afternoon": "শুভ বিকেল!", + "evening": "শুভ সন্ধ্যা!" + }, + + // Search Engines + "googleEngine": "গুগল", + "duckEngine": "ডাকডাকগো", + "bingEngine": "বিং", + "braveEngine": "ব্রেভ", + "youtubeEngine": "ইউটিউব", + + // AI Tools + "ai_tools": "এআই টুলস", + "chatGPT": "চ্যাটজিপিটি", + "gemini": "জেমিনি", + "copilot": "কোপাইলট", + "claude": "ক্লড", + "perplexity": "পারপ্লেক্সিটি", + "firefly": "অ্যাডোবি ফায়ারফ্লাই", + "metaAI": "মেটা এআই", + + // Wallpaper and alerts + "uploadWallpaperText": "ওয়ালপেপার দিন", + "backupText": "ব্যাকআপ করুন", + "restoreText": "পুনরুদ্ধার করুন", + "rangColor": "রঙ নির্বাচন করুন", + + // Dialog boxes (alerts) + "confirmWallpaper": "আপনি কি আজকের জন্য একটি নতুন ছবি ওয়ালপেপার হিসেবে সেট করতে চান?", + "confirmRestore": "আপনি কি নিশ্চিত যে আপনি আপনার সেটিংস রিসেট করতে চান? এটি পূর্বাবস্থায় ফেরানো যাবে না।", + "Nobackgroundset": "বর্তমানে কোন ব্যাকগ্রাউন্ড ইমেজ সেট করা হয়নি।", + "clearbackgroundimage": "আপনি কি ব্যাকগ্রাউন্ড ইমেজ মুছে ফেলতে চান?", + "ProxyDisclaimer": "সমস্ত প্রক্সি ফিচার ডিফল্টভাবে বন্ধ থাকে।\n\nআপনি যদি সার্চ সাজেশন এবং CORS বাইপাস প্রক্সি সক্রিয় করেন, তাহলে উন্নত গোপনীয়তার জন্য আপনার নিজস্ব প্রক্সি হোস্ট করার পরামর্শ দেওয়া হয়।\n\nডিফল্টভাবে প্রক্সি https://mynt-proxy.rhythmcorehq.com এ সেট করা হবে, যার মানে আপনার সমস্ত ডেটা এই পরিষেবার মাধ্যমে যাবে, যা গোপনীয়তার ঝুঁকি তৈরি করতে পারে।", + "failedbackup": "ব্যাকআপ ব্যর্থ: ", + "restorecompleted": "পুনরুদ্ধার সফলভাবে সম্পন্ন হয়েছে!", + "restorefailed": "পুনরুদ্ধার ব্যর্থ: ", + "invalidBackup": "অবৈধ ব্যাকআপ ফাইল", + "deleteBookmark": "আপনি কি নিশ্চিত যে আপনি বুকমার্কটি মুছে ফেলতে চান?", + "UnsupportedBrowser": "আপনার ব্রাউজারে বুকমার্ক সমর্থিত নয়", +}; diff --git a/src/locales/cs.js b/src/locales/cs.js new file mode 100644 index 00000000..394f022e --- /dev/null +++ b/src/locales/cs.js @@ -0,0 +1,138 @@ +// Czech -> cs +const cs = { + // Menu Items + "github": "GitHub", + "feedback": "Zpětná vazba", + "resetsettings": "Resetovat nastavení", + "menuCloseText": "Zavřít", + + // Shortcuts + "shortcutsText": "Zkratky", + "enableShortcutsText": "Zobrazí zkratky", + "editShortcutsText": "Upravit zkratky", + "shortcutsInfoText": "Vyberte, které zkratky se mají zobrazit", + "editShortcutsList": "Uložené zkratky", + "editShortcutsListInfo": "Nové zkratky můžete přidat klepnutím na ikonku „+“. Upravit existující můžete klepnutím na název nebo URL adresu zkratky.", + "adaptiveIconText": "Adaptivní tvary ikon", + "adaptiveIconInfoText": "Ikony zkratek se zmenší", + "bookmarksText": "Záložky", + "bookmarksInfo": "Zobrazí boční panel se záložkami", + "ai_tools_button": "AI nástroje", + "enable_ai_tools": "Zobrazí zkratky AI nástrojů", + "googleAppsMenuText": "Google aplikace", + "googleAppsMenuInfo": "Zobrazí zkratky Google aplikací", + "googleAppsHover": "Google aplikace", + + // To-do List + "todoListText": "Seznam úkolů", + "todoListInfo": "Zobrazí denní seznam úkolů", + "todoListHover": "Seznam úkolů", + "todoPlaceholder": "Přidat úkol...", + + // Digital Clock + "digitalclocktittle": "Digitální hodiny", + "digitalclockinfo": "Přepne hodiny na digitální", + "timeformattittle": "12hodinový formát", + "timeformatinfo": "Použije se 12hodinový formát času", + "greetingtittle": "Pozdrav", + "greetinginfo": "Zobrazí pozdrav pod upravitelným textem", + + // Misc + "userTextTitle": "Upravitelný text", + "userTextInfo": "Zobrazí upravitelný text pod hodinami", + "fahrenheitCelsiusCheckbox": "Přepnout na stupně Fahrenheita", + "fahrenheitCelsiusText": "Změny se projeví po obnovení stránky", + "micIconTitle": "Skrýt ikonu mikrofonu", + "micIconInfo": "Pokud nefunguje hlasové vyhledávání", + "hideSearchWith": "Skrýt vyhledávače", + "hideSearchWithInfo": "Mezi vyhledávači přepnete klepnutím na jejich ikonky", + "search_suggestions_button": "Návrhy ve vyhledávání", + "search_suggestions_text": "Zapne návrhy vyhledávání", + + // Proxy + "useproxytitletext": "Obcházení proxy", + "useproxyText": "Pokud nefungují návrhy ve vyhledávání", + "ProxyText": "Proxy pro obcházení CORS", + "ProxySubtext": "Nastavte si vlastní proxy pro obcházení CORS", + "HostproxyButton": "Provozování vlastní proxy", + "saveproxy": "Uložit", + + // Location + "UserLocText": "Zadejte svou polohu", + "UserLocSubtext": "Pokud není správná poloha počasí", + "userLoc": "Město nebo souřadnice (šířka, délka)", + "saveLoc": "Uložit", + + // Weather + "WeatherApiText": "Zadejte svůj klíč k WeatherAPI", + "WeatherApiSubtext": "Pokud nefunguje funkce počasí", + "userAPI": "Váš klíč k WeatherAPI", + "LearnMoreButton": "Zjistit více", + "saveAPI": "Uložit", + + // Body Items + // Calendar + "days": ["neděle", "pondělí", "úterý", "středa", "čtvrtek", "pátek", "sobota"], + "months": ["ledna", "února", "března", "dubna", "května", "června", "července", "srpna", "září", "října", "listopadu", "prosince"], + + // Bookmarks + "bookmarksHeading": "Záložky", + "bookmarkViewAs" : "Způsob zobrazení", + "bookmarkViewGrid" : "Mřížka", + "bookmarkViewList" : "Seznam", + "bookmarkSearch": "Vyhledejte záložku", + + // New Tab Item + "conditionText": "Dobrý den! Jak se máte?", + "humidityLevel": "Vlhkost", + "feelsLike": "Pocitová teplota", + "location": "Země", + "enterBtn": "Vyhledat", + "searchPlaceholder": "Zadejte hledaný výraz...", + "listenPlaceholder": "Poslouchám...", + "searchWithHint": "Vyhledávat prostřednictvím", + "userText": "Upravíte po kliknutí", + + // Greeting + "greeting": { + "morning": "Dobré ráno!", + "afternoon": "Dobré odpoledne!", + "evening": "Dobrý večer!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI nástroje", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Nahrát tapetu", + "backupText": "Zálohovat", + "restoreText": "Obnovit", + "rangColor": "Vybrat barvu", + + // Dialog boxes (alerts) + "confirmWallpaper": "Přejete si nastavit nový obrázek jako denní tapetu?", + "confirmRestore": "Opravdu si přejete resetovat nastavení? Tuto akci nelze zvrátit.", + "Nobackgroundset": "Aktuálně nemáte nastavený žádný obrázek na pozadí.", + "clearbackgroundimage": "Opravdu si přejete smazat obrázek na pozadí?", + "ProxyDisclaimer": "Všechny funkce proxy jsou ve výchozím nastavení vypnuté.\n\nPokud zapnete našeptávání ve vyhledávání s proxy pro obcházení CORS, pro lepší zabezpečení vám důrazně doporučujeme hostovat si vlastní proxy.\n\nVe výchozím nastavení je proxy nastavena na https://mynt-proxy.rhythmcorehq.com, což znamená, že všechna vaše data procházejí skrz tuto službu. To může vyvolat obavy o soukromí.", + "failedbackup": "Zálohování selhalo: ", + "restorecompleted": "Obnova ze zálohy byla úspěšně dokončena!", + "restorefailed": "Obnova ze zálohy selhala: ", + "invalidBackup": "Neplatný soubor se zálohou", + "deleteBookmark": "Opravdu si přejete smazat tuto záložku?", + "UnsupportedBrowser": "Ve vašem prohlížeči nejsou záložky podporované", +}; diff --git a/src/locales/en.js b/src/locales/en.js new file mode 100644 index 00000000..74cacf16 --- /dev/null +++ b/src/locales/en.js @@ -0,0 +1,139 @@ +// English (Default) +const en = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Reset Settings", + "menuCloseText": "Close", + + // Shortcuts + "shortcutsText": "Shortcuts", + "enableShortcutsText": "Show saved shortcuts", + "editShortcutsText": "Edit Shortcuts", + "shortcutsInfoText": "Choose which shortcuts get shown", + "editShortcutsList": "Saved Shortcuts", + "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptive Icons", + "adaptiveIconInfoText": "Shortcut icons will match the theme color and appear smaller", + "bookmarksText": "Bookmarks", + "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI-Tools", + "enable_ai_tools": "Show shortcuts for AI tools", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Show shortcuts for Google Apps", + "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + "todoListText": "To Do List", + "todoListInfo": "Show a daily To Do list", + "todoListHover": "ToDo List", // Keep this short + "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Digital Clock", + "digitalclockinfo": "Switch to the digital clock", + "timeformattittle": "12-Hour Format", + "timeformatinfo": "Use 12-hour time format", + "greetingtittle": "Greeting", + "greetinginfo": "Show greeting below custom text", + + // Misc + "userTextTitle": "Customizable Text", + "userTextInfo": "Show custom text below the clock", + "fahrenheitCelsiusCheckbox": "Switch to Fahrenheit", + "fahrenheitCelsiusText": "Refresh the page to apply changes", + "micIconTitle": "Hide Microphone Icon", + "micIconInfo": "If voice typing is not working", + "hideSearchWith": "Hide Search Engines", + "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Search Suggestions", + "search_suggestions_text": "Enable search suggestions", + + // Proxy + "useproxytitletext": "Proxy Bypass", + "useproxyText": "If search suggestions aren't working", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "Add your own CORS bypass proxy", + "HostproxyButton": "Host Your Own Proxy", + "saveproxy": "Save", + + // Location + "UserLocText": "Enter your Location", + "UserLocSubtext": "If the weather location isn't correct", + "userLoc": "Your City or Coordinates (Latitude, Longitude)", + "useGPS": "Use GPS", + "saveLoc": "Save", + + // Weather + "WeatherApiText": "Enter your WeatherAPI key", // For 'WeatherAPI' string, only transliterate + "WeatherApiSubtext": "If the weather functionality isn't working", + "userAPI": "Your weatherAPI key", + "LearnMoreButton": "Learn more", + "saveAPI": "Save", + + // Body Items + // Calendar + "days": ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], + "months": ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + + // Bookmarks + "bookmarksHeading": "Bookmarks", + "bookmarkViewAs": "View as", + "bookmarkViewGrid": "Grid", // Keep this shorter + "bookmarkViewList": "List", // Keep this shorter + "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Hello! How are you today?", + "humidityLevel": "Humidity", + "feelsLike": "Feels", + "location": "Earth", + "enterBtn": "Search", + "searchPlaceholder": "Type here...", + "listenPlaceholder": "Listening...", + "searchWithHint": "Search With", + "userText": "Click here to edit", + + // Greeting + greeting: { + "morning": "Good Morning!", + "afternoon": "Good Afternoon!", + "evening": "Good Evening!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", // DuckDuckGo + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Tools", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Upload Wallpaper", // Keep this short + "backupText": "Backup", + "restoreText": "Restore", + "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + "Nobackgroundset": "No background image is currently set.", + "clearbackgroundimage": "Are you sure you want to clear the background image?", + "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + "failedbackup": "Backup failed: ", + "restorecompleted": "Restore completed successfully!", + "restorefailed": "Restore failed: ", + "invalidBackup": "Invalid backup file", + "deleteBookmark": "Are you sure you want to delete the bookmark?", + "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/es.js b/src/locales/es.js new file mode 100644 index 00000000..597780f8 --- /dev/null +++ b/src/locales/es.js @@ -0,0 +1,138 @@ +// Spanish -> es +const es = { + // Menu Items + "github": "GitHub", + "feedback": "Comentarios", + "resetsettings": "Restablecer configuraciones", + "menuCloseText": "Cerrar", + + // Shortcuts + "shortcutsText": "Accesos directos", + "enableShortcutsText": "Mostrar accesos directos guardados", + "editShortcutsText": "Editar accesos directos", + "shortcutsInfoText": "Elige qué accesos directos mostrar", + "editShortcutsList": "Accesos directos guardados", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Iconos adaptativos", + "adaptiveIconInfoText": "Los iconos de accesos directos serán más pequeños", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "Herramientas de IA", + "enable_ai_tools": "Mostrar accesos directos de herramientas de IA", + "googleAppsMenuText": "Aplicaciones de Google", + "googleAppsMenuInfo": "Mostrar accesos directos a las aplicaciones de Google", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Reloj digital", + "digitalclockinfo": "Cambiar a reloj digital", + "timeformattittle": "Formato de 12 horas", + "timeformatinfo": "Usar formato de 12 horas", + "greetingtittle": "Saludo", + "greetinginfo": "Mostrar saludo debajo del texto personalizado", + + // Misc + "userTextTitle": "Texto personalizable", + "userTextInfo": "Mostrar texto personalizado debajo del reloj", + "fahrenheitCelsiusCheckbox": "Cambiar a Fahrenheit", + "fahrenheitCelsiusText": "Recarga la página para aplicar cambios", + "micIconTitle": "Ocultar ícono de micrófono", + "micIconInfo": "Si la escritura por voz no está funcionando", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Sugerencias de búsqueda", + "search_suggestions_text": "Habilitar sugerencias de búsqueda", + + // Proxy + "useproxytitletext": "Omisión de proxy", + "useproxyText": "Si las sugerencias de búsqueda no funcionan", + "ProxyText": "Proxy CORS por defecto", + "ProxySubtext": "Añade tu propio proxy CORS", + "HostproxyButton": "Aloja tu propio proxy", + "saveproxy": "Guardar", + + // Location + "UserLocText": "Ingresa tu ubicación", + "UserLocSubtext": "Si la ubicación del clima es incorrecta", + "userLoc": "Tu ciudad o coordenadas (Latitud, Longitud)", + "saveLoc": "Guardar", + + // Weather + "WeatherApiText": "Ingresa tu clave de WeatherAPI", + "WeatherApiSubtext": "Si la funcionalidad del clima no funciona", + "userAPI": "Tu clave de WeatherAPI", + "LearnMoreButton": "Más información", + "saveAPI": "Guardar", + + // Body Items + // Calendar + "days": ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'], + "months": ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "¡Hola! ¿Cómo estás hoy?", + "humidityLevel": "Humedad", + "feelsLike": "Sensación", + "location": "Ubicación", + "enterBtn": "Buscar", + "searchPlaceholder": "Escribe tu búsqueda...", + "listenPlaceholder": "Escuchando...", + "searchWithHint": "Buscar con", + "userText": "Haz clic aquí para editar", + + // Greeting + greeting: { + "morning": "¡Buenos días!", + "afternoon": "¡Buenas tardes!", + "evening": "¡Buenas noches!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Herramientas de IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/fr.js b/src/locales/fr.js new file mode 100644 index 00000000..d3540e2f --- /dev/null +++ b/src/locales/fr.js @@ -0,0 +1,140 @@ +// French -> fr +const fr = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Réinitialiser les paramètres", + "menuCloseText": "Fermer", + + // Shortcuts + "shortcutsText": "Raccourcis", + "enableShortcutsText": "Afficher les raccourcis sauvegardés", + "editShortcutsText": "Modifier les raccourcis", + "shortcutsInfoText": "Choisir les raccourcis à afficher", + "editShortcutsList": "Raccourcis Sauvegardés", + 'editShortcutsListInfo': 'Vous pouvez ajouter de nouveaux raccourcis en cliquant sur l\'icône « + » ou modifier les raccourcis existants en cliquant sur le nom ou l\'URL du raccourci.', + "adaptiveIconText": "Icônes Adaptatives", + "adaptiveIconInfoText": "L'icône du raccourci correspondra à la couleur du thème et apparaîtra plus petite", + "bookmarksText": "Favoris", + "bookmarksInfo": "Afficher la barre latérale des favoris", + "ai_tools_button": "Outils IA", + "enable_ai_tools": "Afficher les raccourcis pour les Outils IA", + "googleAppsMenuText": "Apps Google", + "googleAppsMenuInfo": "Afficher les raccourcis pour les Applications Google", + "googleAppsHover": "Apps Google", + + // To-do List + "todoListText": "Liste To-Do", + "todoListInfo": "Afficher une liste de tâches quotidiennes", + "todoListHover": "Liste To-Do", + "todoPlaceholder": "Ajouter une tâche...", + + // Digital Clock + "digitalclocktittle": "Horloge Numérique", + "digitalclockinfo": "Passer à l'horloge numérique", + "timeformattittle": "Format 12h", + "timeformatinfo": "Utiliser le format 12h", + "greetingtittle": "Salutation", + "greetinginfo": "Afficher la salutation sous le texte personnalisé", + + // Misc + "userTextTitle": "Texte personnalisé", + "userTextInfo": "Afficher le texte personnalisé sous l'horloge", + "fahrenheitCelsiusCheckbox": "Passer à Fahrenheit", + "fahrenheitCelsiusText": "Actualiser la page pour appliquer les changements", + "micIconTitle": "Masquer l'Icône du Microphone", + "micIconInfo": "Si la saisie vocale ne fonctionne pas", + "hideSearchWith": "Masquer les Moteurs de Recherche", + "hideSearchWithInfo": "Passez d'un moteur de recherche à l'autre en cliquant sur son icône", + "search_suggestions_button": "Suggestions de Recherche", + "search_suggestions_text": "Activer les suggestions de recherche", + + // Proxy + "useproxytitletext": "Contournement du Proxy", + "useproxyText": "Si les suggestions de recherche ne fonctionnent pas", + "ProxyText": "Proxy de contournement CORS", + "ProxySubtext": "Ajouter votre propre proxy de contournement CORS", + "HostproxyButton": "Hébergez votre propre proxy", + "saveproxy": "Enregistrer", + + // Location + "UserLocText": "Saisissez votre localisation", + "UserLocSubtext": "Si la localisation de la météo n'est pas correct", + "userLoc": "Votre ville ou vos coordonnées (Latitude, Longitude)", + "useGPS": "Utiliser le GPS", + "saveLoc": "Enregistrer", + + // Weather + "WeatherApiText": "Entrez votre clé WeatherAPI", + "WeatherApiSubtext": "Si la fonctionnalité météo ne fonctionne pas", + "userAPI": "Your weatherAPI key", + "LearnMoreButton": "En savoir plus", + "saveAPI": "Enregistrer", + + // Body Items + // Calendar + "days": ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'], + "months": ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'], + + // Bookmarks + "bookmarksHeading": "Favoris", + "bookmarkViewAs": "Afficher en", + "bookmarkViewGrid": "Grille", + "bookmarkViewList": "Liste", + "bookmarkSearch": "Rechercher un favori", + + // New Tab Item + "conditionText": "Bonjour, comment allez-vous?", + "humidityLevel": "Humidité", + "feelsLike": "Ressenti", + "location": "Terre", + "enterBtn": "Rechercher", + "searchPlaceholder": "Saisissez ici...", + "listenPlaceholder": "Écoute...", + "searchWithHint": "Rechercher avec", + "userText": "Cliquez ici pour modifier", + + // Greeting + greeting: { + "morning": "Bonjour!", + "afternoon": "Bonsoir!", + "evening": "Bonne nuit!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Outils IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Uploader un fond d'ecran", + "backupText": "Sauvegarder", + "restoreText": "Restaurer", + "rangColor": "Choisir la couleur", + + // Dialog boxes (alerts) + "confirmWallpaper": "Souhaitez-vous définir une nouvelle image comme fond d'écran pour la journée?", + "confirmRestore": "Êtes-vous sûr de vouloir réinitialiser vos paramètres? Cette action ne peut être annulée.", + "Nobackgroundset": "Aucune image de fond n'est actuellement définie.", + "clearbackgroundimage": "Êtes-vous sûr de vouloir effacer l'image de fond?", + "ProxyDisclaimer": "Toutes les fonctions du proxy sont désactivées par défaut.\n\nSi vous activez les suggestions de recherche et le proxy de contournement CORS, il est fortement recommandé d'héberger votre propre proxy pour une meilleure confidentialité.\n\nPar défaut, le proxy sera réglé sur https://mynt-proxy.rhythmcorehq.com, ce qui signifie que toutes vos données passeront par ce service, ce qui peut poser des problèmes de confidentialité.", + "failedbackup": "Échec de la sauvegarde: ", + "restorecompleted": "Restauration terminée avec succès!", + "restorefailed": "Échec de la restauration: ", + "invalidBackup": "Fichier de sauvegarde invalide", + "deleteBookmark": "Êtes-vous sûr de vouloir supprimer le favori?", + "UnsupportedBrowser": "Les favoris ne sont pas supportés dans votre navigateur.", + "BookmarksDenied": "L'autorisation pour les favoris n'a pas été accordée." +}; diff --git a/src/locales/hi.js b/src/locales/hi.js new file mode 100644 index 00000000..a01ce550 --- /dev/null +++ b/src/locales/hi.js @@ -0,0 +1,141 @@ +// Hindi +const hi = { + // Menu Items + "github": "गिटहब", + "feedback": "प्रतिक्रिया", + "resetsettings": "सेटिंग्स रीसेट करें", + "menuCloseText": "बंद करें", + + // Shortcuts + "shortcutsText": "शॉर्टकट्स", + "enableShortcutsText": "सहेजे गए शॉर्टकट प्रदर्शित करें", + "editShortcutsText": "शॉर्टकट्स संपादित करें", + "shortcutsInfoText": "निर्धारित करें कि कौन से शॉर्टकट दिखेंगे", + "editShortcutsList": "सहेजे गए शॉर्टकट", + "editShortcutsListInfo": "आप \"+\" आइकन पर क्लिक करके नए शॉर्टकट्स जोड़ सकते हैं या शॉर्टकट के नाम या URL पर क्लिक करके मौजूदा शॉर्टकट्स को संपादित कर सकते हैं।", + "adaptiveIconText": "अनुकूलनीय आइकन", + "adaptiveIconInfoText": "शॉर्टकट आइकन थीम रंग से मेल खाते हुए छोटे आकार में दिखेंगे", + "bookmarksText": "बुकमार्क्स", + "bookmarksInfo": "बुकमार्क्स साइडबार दिखाएँ", + "ai_tools_button": "AI-उपकरण", + "enable_ai_tools": "AI उपकरणों के शॉर्टकट्स प्रदर्शित करें", + "googleAppsMenuText": "गूगल ऐप्स", + "googleAppsMenuInfo": "गूगल ऐप्स के शॉर्टकट्स प्रदर्शित करें", + "googleAppsHover": "गूगल ऐप्स", + + // To-do List + "todoListText": "कार्य सूची", + "todoListInfo": "दैनिक कार्यों की सूची देखें", + "todoListHover": "कार्य सूची", + "todoPlaceholder": "कार्य जोड़ें...", + + // Digital Clock + "digitalclocktittle": "डिजिटल घड़ी", + "digitalclockinfo": "डिजिटल घड़ी पर स्विच करें", + "timeformattittle": "12 घंटे का प्रारूप", + "timeformatinfo": "12 घंटे का समय प्रारूप उपयोग करें", + "greetingtittle": "अभिवादन", + "greetinginfo": "कस्टम टेक्स्ट के नीचे अभिवादन दिखाएँ", + + // Misc + "userTextTitle": "कस्टमाइज़ेबल टेक्स्ट", + "userTextInfo": "घड़ी के नीचे कस्टम टेक्स्ट दिखाएँ", + "fahrenheitCelsiusCheckbox": "तापमान फ़ारेनहाइट में बदलें", + "fahrenheitCelsiusText": "बदलाव के लिए पृष्ठ को रीफ्रेश करें", + "micIconTitle": "माइक्रोफोन आइकन छिपाएँ", + "micIconInfo": "अगर वॉइस टाइपिंग काम नहीं कर रहा है", + "hideSearchWith": "सर्च इंजन छिपाएं", + "hideSearchWithInfo": "आइकन पर क्लिक करके सर्च इंजन बदलें", + "search_suggestions_button": "खोज सुझाव", + "search_suggestions_text": "खोज सुझाव सक्षम करें", + + // Proxy + "useproxytitletext": "प्रॉक्सी बायपास", + "useproxyText": "यदि खोज सुझाव काम नहीं कर रहे हैं", + "ProxyText": "CORS बायपास प्रॉक्सी", + "ProxySubtext": "अपना CORS बायपास प्रॉक्सी जोड़ें", + "HostproxyButton": "अपना प्रॉक्सी संचालित करें", + "saveproxy": "सहेजें", + + // Location + "UserLocText": "अपना स्थान दर्ज करें", + "UserLocSubtext": "यदि मौसम का स्थान सही नहीं है", + "userLoc": "आपका शहर या निर्देशांक (अक्षांश, देशांतर)", + "useGPS": "GPS का उपयोग करें", + "saveLoc": "सहेजें", + + // Weather + "WeatherApiText": "अपनी WeatherAPI कुंजी दर्ज करें", + "WeatherApiSubtext": "यदि मौसम की सुविधा काम नहीं कर रही है", + "userAPI": "आपकी WeatherAPI कुंजी", + "LearnMoreButton": "और जानें", + "saveAPI": "सहेजें", + + // Body Items + // Calendar + "days": ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display + // "days": ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full + "months": ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवंबर', 'दिसंबर'], + // "months": ['जन', 'फर', 'मार्च', 'अप्र', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'], // Truncated + + // Bookmarks + "bookmarksHeading": "बुकमार्क्स", + "bookmarkViewAs": "इस रूप में देखें", + "bookmarkViewGrid": "ग्रिड", + "bookmarkViewList": "लिस्ट", + "bookmarkSearch": "बुकमार्क खोजें", + + // New Tab Item + "conditionText": "नमस्ते! आप आज कैसे हैं?", + "humidityLevel": "नमी", + "feelsLike": "महसूस", + "location": "पृथ्वी", + "enterBtn": "सर्च करें", + "searchPlaceholder": "यहाँ लिखें...", + "listenPlaceholder": "सुन रहे हैं...", + "searchWithHint": "खोज माध्यम", + "userText": "यहाँ अपना टेक्स्ट लिखें", + + // Greeting + greeting: { + "morning": "सुप्रभात!", + "afternoon": "शुभ अपराह्न!", + "evening": "शुभ संध्या!" + }, + + // Search Engines + "googleEngine": "गूगल", + "duckEngine": "डकडकगो", + "bingEngine": "बिंग", + "braveEngine": "ब्रेव", + "youtubeEngine": "यूट्यूब", + + // AI Tools + "ai_tools": "AI उपकरण", + "chatGPT": "चैटGPT", + "gemini": "जेमिनी", + "copilot": "कोपायलट", + "claude": "क्लॉड", + "perplexity": "पर्प्लेक्सिटी", + "firefly": "एडोबी फायरफ्लाई", + "metaAI": "मेटा AI", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर सेट करें", + "backupText": "बैकअप करें", + "restoreText": "रिस्टोर करें", + "rangColor": "रंग चुनें", + + // Dialog boxes (alerts) + "confirmWallpaper": "क्या आप आज के लिए एक नई छवि को वॉलपेपर के रूप में सेट करना चाहेंगे?", + "confirmRestore": "क्या आप अपनी सेटिंग्स रीसेट करना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।", + "Nobackgroundset": "कोई बैकग्राउंड छवि वर्तमान में सेट नहीं है।", + "clearbackgroundimage": "क्या आप बैकग्राउंड छवि को हटाना चाहते हैं?", + "ProxyDisclaimer": "सभी प्रॉक्सी फीचर डिफ़ॉल्ट रूप से बंद रहते हैं।\n\nयदि आप खोज सुझाव और CORS बायपास प्रॉक्सी सक्षम करते हैं, तो गोपनीयता बढ़ाने के लिए अपना प्रॉक्सी होस्ट करना अत्यधिक अनुशंसित है।\n\nडिफ़ॉल्ट रूप से प्रॉक्सी को https://mynt-proxy.rhythmcorehq.com पर सेट किया जाएगा, जिसका अर्थ है कि आपका सारा डेटा इस सेवा से गुजरेगा, जिससे गोपनीयता संबंधित चिंताएँ हो सकती हैं।", + "failedbackup": "बैकअप विफल: ", + "restorecompleted": "पुनर्स्थापना सफलतापूर्वक पूरी हुई!", + "restorefailed": "पुनर्स्थापना विफल: ", + "invalidBackup": "अमान्य बैकअप फ़ाइल", + "deleteBookmark": "क्या आप बुकमार्क डिलीट करना चाहते हैं?", + "UnsupportedBrowser": "आपके ब्राउज़र में बुकमार्क समर्थित नहीं हैं", +}; diff --git a/src/locales/hu.js b/src/locales/hu.js new file mode 100644 index 00000000..65dcef2f --- /dev/null +++ b/src/locales/hu.js @@ -0,0 +1,140 @@ +// Hungarian +const hu = { + // Menu Items + "feedback": "Visszajelzés", + "resetsettings": "Beállítások visszaállítása", + "menuCloseText": "Bezárás", + + // Shortcuts + "shortcutsText": "Parancsikonok", + "enableShortcutsText": "Parancsikonok megjelenítése", + "editShortcutsText": "Parancsikonok szerkesztése", + "shortcutsInfoText": "Válassza ki a parancsikonokat, amelyeket meg szeretné jeleníteni a kezdőképernyőn", + "editShortcutsList": "Elmentett parancsikonok", + "editShortcutsListInfo": "Új parancsikonokat adhatsz hozzá a \"+\" ikonra kattintva, vagy szerkesztheted a meglévőket a parancsikon nevére vagy URL címére kattintva.", + "adaptiveIconText": "Alkalmazkodó ikonformák", + "adaptiveIconInfoText": "Parancsikonok kisebbnek fognak tűnni", + "bookmarksText": "Könyvjelzők", + "bookmarksInfo": "Könyvjelzők oldalsáv megjelenítése", + "ai_tools_button": "MI-Eszközök", + "enable_ai_tools": "Parancsikon az MI-eszközökhöz", + "googleAppsMenuText": "Google Alkalmazások", + "googleAppsMenuInfo": "Parancsikonok a Google alkalmazásaihoz", + "googleAppsHover": "Google Appok", + + // To-do List + "todoListText": "Teendő lista", + "todoListInfo": "Napi teendők lista megjelenítése", + "todoListHover": "Teendő lista", + "todoPlaceholder": "Feladat hozzáadása...", + + // Digital Clock + "digitalclocktittle": "Digitális óra", + "digitalclockinfo": "Váltás a digitális órára", + "timeformattittle": "12 órás formátum", + "timeformatinfo": "12 órás időformátum használata", + "greetingtittle": "Üdvözlés", + "greetinginfo": "Üdvözlet megjelenítése az egyéni szöveg alatt", + + // Misc + "userTextTitle": "Testreszabható szöveg", + "userTextInfo": "Egyéni szöveg megjelenítése az óra alatt", + "fahrenheitCelsiusCheckbox": "Fahrenheit használata", + "fahrenheitCelsiusText": "Frissítsd az oldalt a módosítások alkalmazásához", + "micIconTitle": "Mikrofon ikon elrejtése", + "micIconInfo": "Ha a hangalapú gépelés nem működik", + "hideSearchWith": "Keresőmotorok elrejtése", + "hideSearchWithInfo": "Váltás a keresőmotorok között az ikonra kattintva", + "search_suggestions_button": "Keresési javaslatok", + "search_suggestions_text": "Keresési javaslatok bekapcsolása", + + // Proxy + "useproxytitletext": "Proxy megkerülése", + "useproxyText": "Ha a keresési javaslatok nem működnek", + "ProxyText": "CORS megkerülő proxy", + "ProxySubtext": "Saját CORS megkerülő proxy hozzáadása", + "HostproxyButton": "Saját proxy üzemeltetése", + "saveproxy": "Mentés", + + // Location + "UserLocText": "Add meg a tartózkodási helyed", + "UserLocSubtext": "Ha az időjárás helye nem megfelelő", + "userLoc": "A városod vagy koordinátáid (földrajzi szélesség, hosszúság)", + "saveLoc": "Mentés", + + // Weather + "WeatherApiText": "Add meg a WeatherAPI kulcsodat", + "WeatherApiSubtext": "Ha az időjárási funkciók nem működnek", + "userAPI": "A weatherAPI kulcsod", + "LearnMoreButton": "További információk", + "saveAPI": "Mentés", + + // Body Items + // Calendar + "days": ['Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'], + "months": ['Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'], + + // Weather + "humidityLevel": "Páratartalom", + "feelsLike": "Érzés", + "location": "Föld", + + // Bookmarks + "bookmarksHeading": "Könyvjelzők", + "bookmarkViewAs": "Megjelenítés mint", + "bookmarkViewGrid": "Rács", + "bookmarkViewList": "Lista", + "bookmarkSearch": "Könyvjező keresése", + + // New Tab Item + "conditionText": "Szia! Hogy vagy ma?", + "enterBtn": "Keresés", + "searchPlaceholder": "Írj ide...", + "listenPlaceholder": "Hallgatlak...", + "searchWithHint": "Keresés a következővel", + "userText": "Kattints ide a szerkesztéshez", + + // Greeting + greeting: { + "morning": "Jó reggelt!", + "afternoon": "Jó napot!", + "evening": "Jó estét!" + }, + + // Search Engines and rest + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "MI Eszközök", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + "github": "GitHub", + + // Wallpaper and alerts + "uploadWallpaperText": "Háttérkép feltöltése", + "backupText": "Mentés", + "restoreText": "Visszaállítás", + "rangColor": "Szín kiválasztása", + + // Dialog boxes (alerts) + "confirmWallpaper": "Szeretnél egy újabb képet beállítani a napi háttérképednek?", + "confirmRestore": "Biztos, hogy vissza akarja állítani a beállításokat? Ezt a műveletet nem lehet visszacsinálni.", + "Nobackgroundset": "Jelenleg nincs beállítva háttérkép.", + "clearbackgroundimage": "Biztos, hogy törölni szeretnéd a háttérképet?", + "ProxyDisclaimer": "Alapértelmezés szerint minden proxy funkció ki van kapcsolva.\n\nHa engedélyezed a keresési javaslatokat és a CORS megkerülő proxy-t, erősen ajánlott saját proxy-t üzemeltetni a fokozott adatvédelem érdekében.\n\n\nA proxy alapértelmezés szerint a https://mynt-proxy.rhythmcorehq.com beállítással működik, ami azt jelenti, hogy minden adat ezen a szolgáltatáson keresztül fog menni, ami adatvédelmi aggályokat vethet fel.", + "failedbackup": "Sikertelen mentés: ", + "restorecompleted": "A visszaállítás sikeresen befejeződött!", + "restorefailed": "Sikertelen visszaállítás: ", + "invalidBackup": "Érvénytelen mentési fájl", + "deleteBookmark": "Biztos, hogy törölni szeretnéd a könyvjelzőt?", + "UnsupportedBrowser": "A könyvjelzők nem támogatottak a böngészőben", +}; diff --git a/src/locales/idn.js b/src/locales/idn.js new file mode 100644 index 00000000..00e6d252 --- /dev/null +++ b/src/locales/idn.js @@ -0,0 +1,138 @@ +// Indonesian -> idn +const idn = { + // Menu Items + "github": "GitHub", + "feedback": "Umpan Balik", + "resetsettings": "Setelan Awal", + "menuCloseText": "Tutup", + + // Shortcuts + "shortcutsText": "Pintasan", + "enableShortcutsText": "Menampilkan Pintasan", + "editShortcutsText": "Ubah Pintasan", + "shortcutsInfoText": "Pilih pintasan apa yang akan ditampilkan", + "editShortcutsList": "Pintasan Tersimpan", + 'editShortcutsListInfo': 'Anda dapat menambahkan pintasan baru dengan mengeklik ikon "+" atau mengedit pintasan yang sudah ada dengan mengeklik nama pintasan atau URL', + "adaptiveIconText": "Penyesuaian Bentuk Ikon", + "adaptiveIconInfoText": "Ikon pintasan akan terlihat lebih kecil", + "bookmarksText": "Markah Buku", + "bookmarksInfo": "Tampilkan sisi markah buku", + "ai_tools_button": "Utilitas AI", + "enable_ai_tools": "Tampilkan pintasan untuk utilitas AI", + "googleAppsMenuText": "Google Apps", + "googleAppsMenuInfo": "Tampilkan pintasan untuk Google Apps", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + "todoListText": "To-Do List", + "todoListInfo": "Tampilkan To-Do list harian", + "todoListHover": "To-Do List", + "todoPlaceholder": "Tambah tugas...", + + // Digital Clock + "digitalclocktittle": "Jam Digital", + "digitalclockinfo": "Ubah menjadi jam digital", + "timeformattittle": "Format 12-Jam", + "timeformatinfo": "Menggunakan format 12-jam", + "greetingtittle": "Sapaan", + "greetinginfo": "Tampilkan sapaan di bawah teks kustom", + + // Misc + "userTextTitle": "Teks Kostumisasi", + "userTextInfo": "Tampilkan teks kustom di bawah jam", + "fahrenheitCelsiusCheckbox": "Ubah menjadi Fahrenheit", + "fahrenheitCelsiusText": "Muat ulang halaman untuk mengaplikasikan perubahan", + "micIconTitle": "Sembunyikan Ikon Microfon", + "micIconInfo": "Jika voice typing tidak berfungsi", + "hideSearchWith": "Sembunyikan Mesin Pencarian", + "hideSearchWithInfo": "Ubah mesin pencarian dengan cara mengeklik ikon", + "search_suggestions_button": "Saran Pencarian", + "search_suggestions_text": "Mengaktifkan saran pencarian", + + // Proxy + "useproxytitletext": "Pemintas Proksi", + "useproxyText": "Jika saran pencarian tidak berfungsi", + "ProxyText": "Pemintas proksi CORS", + "ProxySubtext": "Tambahkan pemintas proksi CORS anda sendiri", + "HostproxyButton": "Host proksi anda sendiri", + "saveproxy": "Simpan", + + // Location + "UserLocText": "Masukkan Lokasi Anda", + "UserLocSubtext": "Jika lokasi cuaca tidak berfungsi", + "userLoc": "Kota atau Koordinat anda (Lintang, Bujur)", + "saveLoc": "Simpan", + + // Weather + "WeatherApiText": "Masukkan kunci WeatherAPI anda", + "WeatherApiSubtext": "Jika fungsionalitas cuaca tidak berfungsi", + "userAPI": "Kunci weatherAPI anda", + "LearnMoreButton": "Pelajari lebih lanjut", + "saveAPI": "Simpan", + + // Body Items + // Calendar + "days": ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'], + "months": ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'], + + // Bookmarks + "bookmarksHeading": "Markah Buku", + "bookmarkViewAs": "Lihat sebagai", + "bookmarkViewGrid": "Kisi-kisi", + "bookmarkViewList": "Daftar", + "bookmarkSearch": "Cari markah buku", + + // New Tab Item + "conditionText": "Halo! Bagaimana kabarmu hari ini?", + "humidityLevel": "Kelembapan", + "feelsLike": "Terasa", + "location": "Bumi", + "enterBtn": "Telusuri", + "searchPlaceholder": "Ketik disini...", + "listenPlaceholder": "Mendengarkan...", + "searchWithHint": "Cari Dengan", + "userText": "Klik disini untuk mengubah tulisan", + + // Greeting + greeting: { + "morning": "Selamat Pagi!", + "afternoon": "Selamat Sore!", + "evening": "Selamat Malam!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Utilitas AI", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Unggah Wallpaper", + "backupText": "Cadangkan", + "restoreText": "Pulihkan", + "rangColor": "Pilih warna", + + // Dialog boxes (alerts) + "confirmWallpaper": "Apakah anda ingin memasang gambar baru sebagai wallpaper harian anda?", + "confirmRestore": "Apakah anda yakin ingin mengatur ulang setelan anda? Tindakan ini tidak dapat dibatalkan.", + "Nobackgroundset": "Tidak ada gambar latar belakang yang dipasang saat ini.", + "clearbackgroundimage": "Apakah anda yakin ingin menghapus gambar latar belakang?", + "ProxyDisclaimer": "Semua fitur proxy dimatikan secara default.\n\nJika anda mengaktifkan saran pencarian dan proxy bypass CORS, sangat disarankan untuk meng-host proxy anda sendiri untuk privasi yang lebih baik.\n\nSecara default, proxy akan diatur ke https://mynt-proxy.rhythmcorehq.com, yang berarti semua data anda akan melewati layanan ini, yang mungkin saja dapat menimbulkan kekhawatiran privasi.", + "failedbackup": "Pencadangan gagal: ", + "restorecompleted": "Pemulihan berhasil dengan sukses!", + "restorefailed": "Pemulihan gagal: ", + "invalidBackup": "File cadangan tidak valid", + "deleteBookmark": "Apakah anda yakin untuk menghapus markah buku?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/it.js b/src/locales/it.js new file mode 100644 index 00000000..cbe9e305 --- /dev/null +++ b/src/locales/it.js @@ -0,0 +1,140 @@ +// Italian +const it = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Reimposta Impostazioni", + "menuCloseText": "Chiudi", + + // Shortcuts + "shortcutsText": "Scorciatoie", + "enableShortcutsText": "Abilita/disabilita scorciatoie", + "editShortcutsText": "Modifica Scorciatoie", + "shortcutsInfoText": "Scegli quali scorciatoie mostrare", + "editShortcutsList": "Scorciatoie Salvate", + "editShortcutsListInfo": "Puoi aggiungere nuove scorciatoie cliccando l'icona \"+\" o modificiare le esistenti cliccando il nome della scorciatoia o dell'URL.", + "adaptiveIconText": "Forme di Icona Adattiva", + "adaptiveIconInfoText": "Le icone delle scorciatoie saranno sempre rotonde", + "bookmarksText": "Segnalibri", + "bookmarksInfo": "Mostra segnalibri sulla barra laterale", + "ai_tools_button": "Strumenti IA", + "enable_ai_tools": "Abilita/disabilita scorciatoie Strumenti IA", + "googleAppsMenuText": "App Google", + "googleAppsMenuInfo": "Mostra collegamenti App Google", + "googleAppsHover": "App di Google", // Keep this shorter + + // To-do List + "todoListText": "Lista cose da fare", + "todoListInfo": "Mostra una lista di cose da fare giornaliera", + "todoListHover": "Lista ToDo", // Keep this short + "todoPlaceholder": "Aggiungi attività...", + + // Digital Clock + "digitalclocktittle": "Orologio Digitale", + "digitalclockinfo": "Abilita/disabilita Orologio Digitale", + "timeformattittle": "Usa formato 12h", + "timeformatinfo": "Usa formato orario a 12 ore", + "greetingtittle": "Saluto", + "greetinginfo": "Mostra il saluto sotto il testo personalizzato", + + // Misc + "userTextTitle": "Testo personalizzabile", + "userTextInfo": "Mostra il testo personalizzato sotto l'orologio", + "fahrenheitCelsiusCheckbox": "Passa a Fahrenheit", + "fahrenheitCelsiusText": "Ricarica la pagina per vedere gli aggiornamenti", + "micIconTitle": "Nascondi icona del microfono", + "micIconInfo": "Se la digitazione vocale non funziona", + "hideSearchWith": "Nascondi motori di ricerca", + "hideSearchWithInfo": "Scegli tra i motori di ricerca cliccando l'icona", + "search_suggestions_button": "Suggerimenti di Ricerca", + "search_suggestions_text": "Abilita/disabilita Suggerimenti di Ricerca", + + // Proxy + "useproxytitletext": "Bypass Proxy", + "useproxyText": "Se i suggerimenti di ricerca non funzionano", + "ProxyText": "Proxy di Bypass CORS", + "ProxySubtext": "Aggiungi il tuo Proxy di Bypass CORS", + "HostproxyButton": "Hosta il Tuo Proxy", + "saveproxy": "Salva", + + // Location + "UserLocText": "Inserisci la tua posizione", + "UserLocSubtext": "Se la posizione meteo non è corretta", + "userLoc": "La tua posizione (Città/Latitudine,Longitudine)", + "useGPS": "Usa il GPS", + "saveLoc": "Salva", + + // Weather + "WeatherApiText": "Inserisci la tua chiave WeatherAPI", + "WeatherApiSubtext": "Se la funzionalità meteo non funziona", + "userAPI": "La tua chiave WeatherAPI", + "LearnMoreButton": "Scopri di più", + "saveAPI": "Salva", + + // Body Items + // Calendar + "days": ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], + "months": ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'], + + // Bookmarks + "bookmarkHeading": "Segnalibri", + "bookmarkViewAs": "Visualizza come", + "bookmarkViewGrid": "Griglia", // Keep this shorter + "bookmarkViewList": "Elenco", // Keep this shorter + "bookmarkSearch": "Cerca segnalibro", + + // New Tab Item + "conditionText": "Ciao! Come stai oggi?", + "humidityLevel": "Umidità", + "feelsLike": "Percepito", + "location": "Terra", + "enterBtn": "Cerca", + "searchPlaceholder": "Cerca...", + "listenPlaceholder": "Ascoltando...", + "searchWithHint": "Cerca con", + "userText": "Clicca qui per modificare", + + // Greeting + greeting: { + "morning": "Buongiorno!", + "afternoon": "Buon pomeriggio!", + "evening": "Buona sera!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Strumenti IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Carica immagine", + "backupText": "Backup", + "restoreText": "Ripristina", + "rangColor": "Scegli colore", + + // Dialog boxes (alerts) + "confirmWallpaper": "Vuoi impostare una nuova immagine come sfondo per oggi?", + "confirmRestore": "Sei sicuro di voler reimpostare le impostazioni? Questa azione non può essere annullata.", + "Nobackgroundset": "Nessuna immagine di sfondo è attualmente impostata.", + "clearbackgroundimage": "Sei sicuro di voler rimuovere l'immagine di sfondo?", + "ProxyDisclaimer": "Tutte le funzionalità del proxy sono disattivate di default.\n\nSe abiliti i suggerimenti di ricerca e il proxy per il bypass CORS, è fortemente consigliato usare un proprio proxy per una maggiore privacy.\n\nIl proxy predefinito sarà configurato su https://mynt-proxy.rhythmcorehq.com, il che significa che tutti i tuoi dati passeranno attraverso questo servizio, con possibili rischi per la privacy.", + "failedbackup": "Backup fallito: ", + "restorecompleted": "Ripristino completato con successo!", + "restorefailed": "Ripristino fallito: ", + "invalidBackup": "File di backup non valido", + "deleteBookmark": "Sei sicuro di voler eliminare il segnalibro?", + "UnsupportedBrowser": "I segnalibri non sono supportati nel tuo browser", + "BookmarksDenied": "Il permesso per i segnalibri non è stato concesso.", +}; diff --git a/src/locales/ja.js b/src/locales/ja.js new file mode 100644 index 00000000..936c851e --- /dev/null +++ b/src/locales/ja.js @@ -0,0 +1,137 @@ +// Japanese -> ja +const ja = { + // Menu Items + "github": "GitHub", + "feedback": "フィードバック", + "resetsettings": "設定をリセット", + "menuCloseText": "閉じる", + + // Shortcuts + "shortcutsText": "ショートカット", + "enableShortcutsText": "保存されたショートカットを表示", + "editShortcutsText": "ショートカットを編集", + "shortcutsInfoText": "表示するショートカットを選択", + "editShortcutsList": "保存されたショートカット", + "editShortcutsListInfo": "\"+\" アイコンをクリックして新しいショートカットを追加したり、ショートカット名またはURLをクリックして既存のショートカットを編集したりできます", + "adaptiveIconText": "アダプティブアイコン", + "adaptiveIconInfoText": "ショートカットアイコンは小さく表示されます", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AIツール", + "enable_ai_tools": "AIツールのショートカットを表示", + "googleAppsMenuText": "Googleアプリ", + "googleAppsMenuInfo": "Googleアプリのショートカットを表示", + "googleAppsHover": "Googleアプリ", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "デジタル時計", + "digitalclockinfo": "デジタル時計に変更", + "timeformattittle": "12時間形式", + "timeformatinfo": "12時間形式を使用", + "greetingtittle": "あいさつ", + "greetinginfo": "カスタムテキストの下にあいさつを表示", + + // Misc + "userTextTitle": "カスタムテキスト", + "userTextInfo": "時計の下にカスタムテキストを表示", + "fahrenheitCelsiusCheckbox": "華氏に変更", + "fahrenheitCelsiusText": "変更を適用するにはページを再読み込み", + "micIconTitle": "マイクアイコンを非表示", + "micIconInfo": "音声入力が動作しない場合", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "検索候補", + "search_suggestions_text": "検索候補を有効にする", + + // Proxy + "useproxytitletext": "プロキシ使用", + "useproxyText": "検索候補が機能しない場合", + "ProxyText": "デフォルトCORSプロキシ", + "ProxySubtext": "独自のCORSプロキシを追加", + "HostproxyButton": "独自のプロキシをホスト", + "saveproxy": "保存", + + // Location + "UserLocText": "場所を入力", + "UserLocSubtext": "天気の地域が正しくない場合", + "userLoc": "都市または座標(緯度、経度)", + "saveLoc": "保存", + + // Weather + "WeatherApiText": "WeatherAPIキーを入力", + "WeatherApiSubtext": "天気機能が動作しない場合", + "userAPI": "WeatherAPIキー", + "LearnMoreButton": "詳細情報", + "saveAPI": "保存", + + // Body Items + // Calendar + "days": ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'], + "months": ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewAsGrid": "Grid", // Keep this shorter + // "bookmarkViewAsList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "こんにちは!本日の調子はいかがですか?", + "humidityLevel": "湿度", + "feelsLike": "体感温度", + "location": "場所", + "enterBtn": "検索", + "searchPlaceholder": "検索キーワードを入力...", + "listenPlaceholder": "聴き取り中...", + "searchWithHint": "次で検索", + "userText": "ここをクリックして編集", + + // Greeting + greeting: { + "morning": "おはようございます!", + "afternoon": "こんにちは!", + "evening": "こんばんは!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AIツール", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + // "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/ko.js b/src/locales/ko.js new file mode 100644 index 00000000..463986b7 --- /dev/null +++ b/src/locales/ko.js @@ -0,0 +1,137 @@ +// Korean -> ko +const ko = { + // Menu Items + "github": "깃허브", + "feedback": "피드백", + "resetsettings": "설정 초기화", + "menuCloseText": "닫기", + + // Shortcuts + "shortcutsText": "단축키", + "enableShortcutsText": "저장된 단축키 표시", + "editShortcutsText": "단축키 편집", + "shortcutsInfoText": "표시할 단축키 선택", + "editShortcutsList": "저장된 단축키", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing shortcuts by clicking on the shortcut name or URL.", + "adaptiveIconText": "적응형 아이콘 모양", + "adaptiveIconInfoText": "단축 아이콘이 더 작게 표시됩니다", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI 도구", + "enable_ai_tools": "AI 도구 단축키 표시", + "googleAppsMenuText": "Google 앱", + "googleAppsMenuInfo": "Google 앱 바로가기 표시", + "googleAppsHover": "구글 앱", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "디지털 시계", + "digitalclockinfo": "디지털 시계로 전환", + "timeformattittle": "12시간 형식", + "timeformatinfo": "12시간 형식 사용", + "greetingtittle": "인사말", + "greetinginfo": "사용자 정의 텍스트 아래에 인사말 표시", + + // Misc + "userTextTitle": "사용자 정의 텍스트", + "userTextInfo": "시계 아래에 사용자 정의 텍스트 표시", + "fahrenheitCelsiusCheckbox": "화씨로 전환", + "fahrenheitCelsiusText": "변경 사항을 적용하려면 페이지를 새로 고침하십시오", + "micIconTitle": "마이크 아이콘 숨기기", + "micIconInfo": "음성 입력이 작동하지 않으면", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "검색 제안", + "search_suggestions_text": "검색 제안 활성화", + + // Proxy + "useproxytitletext": "프록시 우회", + "useproxyText": "검색 제안이 작동하지 않으면", + "ProxyText": "CORS 우회 프록시", + "ProxySubtext": "자신의 CORS 우회 프록시 추가", + "HostproxyButton": "자신의 프록시 호스팅", + "saveproxy": "저장", + + // Location + "UserLocText": "위치 입력", + "UserLocSubtext": "날씨 위치가 정확하지 않으면", + "userLoc": "당신의 도시 또는 좌표 (위도, 경도)", + "saveLoc": "저장", + + // Weather + "WeatherApiText": "WeatherAPI 키 입력", + "WeatherApiSubtext": "날씨 기능이 작동하지 않으면", + "userAPI": "당신의 WeatherAPI 키", + "LearnMoreButton": "자세히 알아보기", + "saveAPI": "저장", + + // Body Items + // Calendar + "days": ['일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'], + "months": ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "안녕하세요! 오늘 기분은 어떠세요?", + "humidityLevel": "습도", + "feelsLike": "체감", + "location": "지구", + "enterBtn": "검색", + "searchPlaceholder": "검색어를 입력하세요...", + "listenPlaceholder": "듣고 있습니다...", + "searchWithHint": "검색 방법", + "userText": "편집하려면 클릭하세요", + + // Greeting + greeting: { + "morning": "좋은 아침!", + "afternoon": "좋은 오후!", + "evening": "좋은 저녁!" + }, + + // Search Engines + "googleEngine": "구글", + "duckEngine": "덕덕고", + "bingEngine": "빙", + "braveEngine": "브레이브", + "youtubeEngine": "유튜브", + + // AI Tools + "ai_tools": "AI 도구", + "chatGPT": "챗GPT", + "gemini": "제미니", + "copilot": "코파일럿", + "perplexity": "퍼플렉시티", + "firefly": "어도비 파이어플라이", + // "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/mr.js b/src/locales/mr.js new file mode 100644 index 00000000..ed3eaf90 --- /dev/null +++ b/src/locales/mr.js @@ -0,0 +1,139 @@ +// Marathi +const mr = { + // Menu Items + "github": "गिटहब", + "feedback": "प्रतिसाद", + "resetsettings": "सेटिंग्ज रीसेट करा", + "menuCloseText": "बंद करा", + + // Shortcuts + "shortcutsText": "शॉर्टकट्स", + "enableShortcutsText": "जतन केलेले शॉर्टकट दाखवा", + "editShortcutsText": "शॉर्टकट्स संपादित करा", + "shortcutsInfoText": "कोणते शॉर्टकट दाखवायचे ते निवडा", + "editShortcutsList": "जतन केलेले शॉर्टकट्स", + 'editShortcutsListInfo': 'आपण "+" आयकॉनवर क्लिक करून नवीन शॉर्टकट्स जोडू शकता किंवा शॉर्टकटच्या नावावर किंवा URL वर क्लिक करून विद्यमान शॉर्टकट्स संपादित करू शकता.', + "adaptiveIconText": "अनुकूल आयकॉन आकार", + "adaptiveIconInfoText": "शॉर्टकट आयकॉन छोटे दिसतील", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI साधने", + "enable_ai_tools": "AI साधनांसाठी शॉर्टकट्स दाखवा", + "googleAppsMenuText": "गुगल ॲप्स", + "googleAppsMenuInfo": "गुगल ॲप्ससाठी शॉर्टकट्स दाखवा", + "googleAppsHover": "गुगल ॲप्स", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "डिजिटल घड्याळ", + "digitalclockinfo": "डिजिटल घड्याळावर स्विच करा", + "timeformattittle": "१२-तासांचा फॉरमॅट", + "timeformatinfo": "१२-तासांचा वेळ फॉरमॅट वापरा", + "greetingtittle": "शुभेच्छा", + "greetinginfo": "सानुकूल मजकुराखाली शुभेच्छा दाखवा", + + // Misc + "userTextTitle": "सानुकूल मजकूर", + "userTextInfo": "घड्याळाखाली सानुकूल मजकूर दाखवा", + "fahrenheitCelsiusCheckbox": "फॅरेनहाइटमध्ये बदल करा", + "fahrenheitCelsiusText": "बदल लागू करण्यासाठी पृष्ठ रीफ्रेश करा", + "micIconTitle": "मायक्रोफोन आयकॉन लपवा", + "micIconInfo": "जर व्हॉइस टायपिंग कार्यरत नसेल", + "hideSearchWith": "सर्च इंजिन सिलेक्टर लपवा", + "hideSearchWithInfo": "आयकॉनवर क्लिक करून सर्च इंजिन बदला", + "search_suggestions_button": "शोध सूचना", + "search_suggestions_text": "शोध सूचना सक्षम करा", + + // Proxy + "useproxytitletext": "प्रॉक्सी बायपास", + "useproxyText": "जर शोध सूचना कार्यरत नसतील", + "ProxyText": "CORS बायपास प्रॉक्सी", + "ProxySubtext": "आपला स्वतःचा CORS बायपास प्रॉक्सी जोडा", + "HostproxyButton": "आपला प्रॉक्सी होस्ट करा", + "saveproxy": "जतन करा", + + // Location + "UserLocText": "आपले स्थान प्रविष्ट करा", + "UserLocSubtext": "जर हवामानाचे स्थान बरोबर नसेल", + "userLoc": "आपले शहर किंवा समन्वय (अक्षांश, रेखांश)", + "saveLoc": "जतन करा", + + // Weather + "WeatherApiText": "आपली WeatherAPI की प्रविष्ट करा", + "WeatherApiSubtext": "जर हवामान कार्यरत नसेल", + "userAPI": "आपली WeatherAPI कळी", + "LearnMoreButton": "अधिक जाणून घ्या", + "saveAPI": "जतन करा", + + // Body Items + // Calendar + "days": ['रवि', 'सोम', 'मंगळ', 'बुध', 'गुरु', 'शुक्र', 'शनि'], // Truncated for display + // "days": ['रविवार', 'सोमवार', 'मंगळवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], // Full + "months": ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ऑगस्ट', 'सप्टेंबर', 'ऑक्टोबर', 'नोव्हेंबर', 'डिसेंबर'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "नमस्कार! तुम्ही आज कसे आहात?", + "humidityLevel": "आर्द्रता", + "feelsLike": "वाटते", + "location": "पृथ्वी", + "enterBtn": "शोधा", + "searchPlaceholder": "येथे लिहा...", + "listenPlaceholder": "ऐकत आहे...", + "searchWithHint": "यासह शोधा", + "userText": "येथे आपला मजकूर लिहा", + + // Greeting + greeting: { + "morning": "शुभ सकाळ!", + "afternoon": "शुभ दुपार!", + "evening": "शुभ संध्याकाळ!" + }, + + // Search Engines + "googleEngine": "गुगल", + "duckEngine": "डकडकगो", + "bingEngine": "बिंग", + "braveEngine": "ब्रेव्ह", + "youtubeEngine": "यूट्यूब", + + // AI Tools + "ai_tools": "AI साधने", + "chatGPT": "चॅटGPT", + "gemini": "जेमिनी", + "copilot": "कोपायलट", + "claude": "क्लॉड", + "perplexity": "पर्प्लेक्सिटी", + "firefly": "अडोबी फायरफ्लाय", + "metaAI": "मेटा AI", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर सेट करा", + "backupText": "बॅकअप करा", + "restoreText": "पुनर्संचयित करा", + "rangColor": "रंग निवडा", + + // Dialog boxes (alerts) + "confirmWallpaper": "तुम्हाला आजचा वॉलपेपर बदलायचा आहे का?", + "confirmRestore": "तुम्हाला तुमचे सेटिंग्स रीसेट करायचे आहेत का? हि क्रिया परत केली जाऊ शकत नाही.", + "Nobackgroundset": "सद्यस्थितीत कोणतीही पार्श्वभूमी सेट केलेली नाही.", + "clearbackgroundimage": "तुम्हाला पार्श्वभूमी इमेज क्लिअर करायची आहे का?", + "ProxyDisclaimer": "सर्व प्रॉक्सी फीचर्स डिफॉल्टनुसार बंद असतात.\n\nजर तुम्ही सर्च सुजेशन्स आणि CORS बायपास प्रॉक्सी सक्षम केले, तर गोपनीयतेसाठी तुमची स्वतःची प्रॉक्सी होस्ट करणे अत्यंत शिफारसीय आहे.\n\nडिफॉल्टनुसार, प्रॉक्सी https://mynt-proxy.rhythmcorehq.com म्हणून सेट केले जाईल, म्हणजे तुमचे सर्व डेटा या सर्विसमधून जाईल, ज्यामुळे गोपनीयतेच्या संदर्भात धोका होऊ शकतो.", + "failedbackup": "बॅकअप अयशस्वी: ", + "restorecompleted": "पुनर्संचयित यशस्वी झाले!", + "restorefailed": "पुनर्संचयित अयशस्वी: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/np.js b/src/locales/np.js new file mode 100644 index 00000000..9eeb466e --- /dev/null +++ b/src/locales/np.js @@ -0,0 +1,167 @@ +// Nepali +const np = { + // Menu Items + github: "गिटहब", + feedback: "प्रतिक्रिया", + resetsettings: "सेटिङहरू रिसेट गर्नुहोस्", + menuCloseText: "मेनु बन्द गर्नुहोस्", + + // Shortcuts + shortcutsText: "सर्टकटहरू", + enableShortcutsText: "Saved गरिएका सर्टकटहरू देखाउनुहोस्", + editShortcutsText: "सर्टकटहरू परिवर्तन गर्नुहोस्", + shortcutsInfoText: "कुन सर्टकटहरू देखाइन्छ छनौट गर्नुहोस्", + editShortcutsList: "Saved सर्टकटहरू", + editShortcutsListInfo: + 'तपाईंले "+" आइकनमा क्लिक गरेर नयाँ सर्टकटहरू थप्न सक्नुहुन्छ वा सर्टकट नाम वा URL मा क्लिक गरेर अवस्थितहरूलाई परिवर्तन गर्न सक्नुहुन्छ।', + adaptiveIconText: "अनुकूल आइकनहरू", + adaptiveIconInfoText: + "सर्टकट आइकनहरू विषयवस्तुको रङसँग मेल खाने र साना देखिनेछन्", + bookmarksText: "बुकमार्कहरू", + bookmarksInfo: "बुकमार्क साइडबार देखाउनुहोस्", + ai_tools_button: "AI-उपकरणहरू", + enable_ai_tools: "AI उपकरणहरूका लागि सर्टकटहरू देखाउनुहोस्", + googleAppsMenuText: "गुगल एप्स", + googleAppsMenuInfo: "गुगल एप्सका लागि सर्टकटहरू देखाउनुहोस्", + googleAppsHover: "गुगल एप्स", + + // Todo List + todoListText: "गर्नुपर्ने कार्यहरु", + todoListInfo: "दैनिक गर्नुपर्ने कार्यहरु देखाउनुहोस ", + todoListHover: "गर्नुपर्ने कार्यहरु", + todoPlaceholder: "गर्नु पर्ने काम थप्नुहोस...", + + // Digital Clock + digitalclocktittle: "डिजिटल घडी", + digitalclockinfo: "डिजिटल घडीमा परिवर्तन गर्नुहोस्", + timeformattittle: "12-घण्टा ढाँचा", + timeformatinfo: "12-घण्टा समय ढाँचा प्रयोग गर्नुहोस्", + greetingtittle: "अभिवादन", + greetinginfo: "अनुकूलन पाठ अभिवादनको तल देखाउनुहोस्", + + // Misc + userTextTitle: "अनुकूलन योग्य पाठ", + userTextInfo: "घडीको तल अनुकूलन पाठ देखाउनुहोस्", + fahrenheitCelsiusCheckbox: "फरेनहाइट मा स्विच गर्नुहोस्", + fahrenheitCelsiusText: "परिवर्तनहरू लागू गर्न रिफ्रेस गर्नुहोस्", + micIconTitle: "माइक्रोफोन आइकन लुकाउनुहोस्", + micIconInfo: "यदि भ्वाइस टाइपिङले काम गरिरहेको छैन भने", + hideSearchWith: "खोज इन्जिनहरू लुकाउनुहोस्", + hideSearchWithInfo: + "यसको आइकनमा क्लिक गरेर खोज इन्जिनहरू बीच स्विच गर्नुहोस्", + search_suggestions_button: "खोज सुझावहरू", + search_suggestions_text: "खोज सुझावहरू सक्षम गर्नुहोस्", + + // Proxy + useproxytitletext: "Proxy Bypass", + useproxyText: "यदि खोज सुझावहरूले काम गरिरहेको छैन भने", + ProxyText: "CORS Bypass Proxy", + ProxySubtext: "आफ्नो CORS bypass proxy थप्नुहोस्", + HostproxyButton: "तपाईंको आफ्नै proxy host गर्नुहोस्", + saveproxy: "Save", + + // Location + UserLocText: "आफ्नो स्थान प्रविष्ट गर्नुहोस्", + UserLocSubtext: "मौसम स्थान सही छैन भने", + userLoc: "तपाईंको शहर वा निर्देशांक (अक्षांश, देशान्तर)", + useGPS: "GPS प्रयोग गर्नुहोस्", + saveLoc: "Save", + + // Weather + WeatherApiText: "आफ्नो WeatherAPI Key प्रविष्ट गर्नुहोस्", + WeatherApiSubtext: "यदि मौसम कार्यक्षमता काम गरिरहेको छैन भने", + userAPI: "तपाईंको weatherAPI key", + LearnMoreButton: "थप जान्नुहोस्", + saveAPI: "Save", + + // Body Items + // Calendar + days: [ + "आइतबार", + "सोमबार", + "मङ्गलबार", + "बुधबार", + "बिहीबार", + "शुक्रबार", + "शनिबार", + ], + + months: [ + "जानेवारी", + "फेब्रुवारी", + "मार्च", + "एप्रिल", + "मे", + "जून", + "जुलै", + "ऑगस्ट", + "सप्टेंबर", + "ऑक्टोबर", + "नोव्हेंबर", + "डिसेंबर", + ], + + // Bookmarks + bookmarksHeading: "बुकमार्कहरू", + bookmarkViewAs: "को रूपमा हेर्नुहोस्", + bookmarkViewGrid: "ग्रिड", + bookmarkViewList: "सूची", + bookmarkSearch: "बुकमार्क खोज्नुहोस्", + + // New Tab Item + conditionText: "नमस्ते! तपाइलाई आज कस्तो छ?", + humidityLevel: "आर्द्रता", + feelsLike: "महसुस हुन्छ", + location: "पृथ्वी", + enterBtn: "खोज्नुहोस्", + searchPlaceholder: "कृपया यहाँ लेख्नुहोस्", + listenPlaceholder: "सुन्दै...", + searchWithHint: "साथ खोज्नुहोस्", + userText: "तपाईं यहाँ लेख्न सक्नुहुन्छ", + + // Greeting + greeting: { + morning: "शुभ प्रभात!", + afternoon: "शुभ दिउँसो!", + evening: "शुभ साँझ!", + }, + + // Search Engines + googleEngine: "गूगल", + duckEngine: "डकडकगो", + bingEngine: "बिंग", + braveEngine: "ब्रेव", + youtubeEngine: "यूट्यूब", + + // AI Tools + ai_tools: "AI उपकरणहरू", + chatGPT: "ChatGPT", + gemini: "Gemini", + copilot: "Copilot", + claude: "Claude", + perplexity: "Perplexity", + firefly: "Adobe Firefly", + metaAI: "Meta AI", + + // Wallpaper and alerts + uploadWallpaperText: "वालपेपर अपलोड गर्नुहोस्", + backupText: "ब्याकअप", + restoreText: "पुनर्स्थापना गर्नुहोस्", + rangColor: "रंग छान्नुहोस्", + + // Dialog boxes (alerts) + confirmWallpaper: + "के तपाईं दिनको लागि आफ्नो वालपेपरको रूपमा नयाँ छवि सेट गर्न चाहनुहुन्छ?", + confirmRestore: + "के तपाइँ तपाइँको सेटिङहरू रिसेट गर्न निश्चित हुनुहुन्छ? यो कार्य पुनर्स्थापना गर्न सकिँदैन।", + Nobackgroundset: "हाल कुनै पनि पृष्ठभूमि फोटो सेट गरिएको छैन।", + clearbackgroundimage: "के तपाइँ पृष्ठभूमि फोटो हटाउन निश्चित हुनुहुन्छ?", + ProxyDisclaimer: + "सबै प्रोक्सी सुविधाहरू पूर्वनिर्धारित रूपमा बन्द छन्।\n\nयदि तपाईंले खोज सुझावहरू र CORS बाइपास प्रोक्सी सक्षम गर्नुभयो भने, परिष्कृत गोपनीयताको लागि तपाईंको आफ्नै प्रोक्सी होस्ट गर्न दृढ रूपमा सिफारिस गरिन्छ।\n\nपूर्वनिर्धारित रूपमा, प्रोक्सीलाई https://mynt-proxy.rhythmcorehq.com मा सेट गरिनेछ, जसको अर्थ तपाइँको सबै डेटा यस सेवा मार्फत जानेछ, जसले गोपनीयता चिन्ताहरू खडा गर्न सक्छ।", + failedbackup: "ब्याकअप असफल भयो: ", + restorecompleted: "पुनर्स्थापना सफलतापूर्वक सम्पन्न भयो!", + restorefailed: "ब्याकअप असफल भयो: ", + invalidBackup: "अवैध ब्याकअप फाइल", + deleteBookmark: "के तपाइँ निश्चित रूपमा बुकमार्क मेटाउन चाहनुहुन्छ?", + UnsupportedBrowser: "बुकमार्कहरू तपाईंको ब्राउजरमा समर्थित छैनन्", +}; diff --git a/src/locales/pt.js b/src/locales/pt.js new file mode 100644 index 00000000..f3f61fef --- /dev/null +++ b/src/locales/pt.js @@ -0,0 +1,139 @@ +// Portuguese (Brazil) +const pt = { + // Menu Items + "github": "GitHub", + "feedback": "Feedback", + "resetsettings": "Redefinir Configurações", + "menuCloseText": "Fechar", + + // Shortcuts + "shortcutsText": "Atalhos", + "enableShortcutsText": "Mostrar atalhos salvos", + "editShortcutsText": "Editar Atalhos", + "shortcutsInfoText": "Escolha quais atalhos serão exibidos", + "editShortcutsList": "Atalhos Salvos", + "editShortcutsListInfo": "Você pode adicionar novos atalhos clicando no ícone \"+\" ou editar os existentes clicando no nome ou URL do atalho", + "adaptiveIconText": "Ícones Adaptativos", + "adaptiveIconInfoText": "Os ícones de atalho aparecerão redondos", + "bookmarksText": "Favoritos", + "bookmarksInfo": "Mostrar barra lateral de favoritos", + "ai_tools_button": "Ferramentas de IA", + "enable_ai_tools": "Mostrar atalhos para ferramentas de IA", + "googleAppsMenuText": "Apps Google", + "googleAppsMenuInfo": "Mostrar atalhos para Apps Google", + "googleAppsHover": "Apps do Google", + + // To-do List + "todoListText": "Lista de Tarefas", + "todoListInfo": "Mostrar uma Lista de Tarefas", + "todoListHover": "Lista de Tarefas", + "todoPlaceholder": "Adicionar tarefa...", + + // Digital Clock + "digitalclocktittle": "Relógio Digital", + "digitalclockinfo": "Mudar para o relógio digital", + "timeformattittle": "Formato 12 Horas", + "timeformatinfo": "Usar formato de 12 horas", + "greetingtittle": "Saudação", + "greetinginfo": "Mostrar saudação abaixo do texto personalizado", + + // Misc + "userTextTitle": "Texto Personalizável", + "userTextInfo": "Mostrar texto personalizado abaixo do relógio", + "fahrenheitCelsiusCheckbox": "Mudar para Fahrenheit", + "fahrenheitCelsiusText": "Atualize a página para aplicar as mudanças", + "micIconTitle": "Ocultar Ícone do Microfone", + "micIconInfo": "Se o ditado por voz não estiver funcionando", + "hideSearchWith": "Ocultar o Motor de Busca", + "hideSearchWithInfo": "Alternar entre os motores de busca clicando no ícone", + "search_suggestions_button": "Sugestões de Pesquisa", + "search_suggestions_text": "Ativar sugestões de pesquisa", + + // Proxy + "useproxytitletext": "Bypass de Proxy", + "useproxyText": "Se as sugestões de pesquisa não estiverem funcionando", + "ProxyText": "Proxy de Bypass CORS", + "ProxySubtext": "Adicione seu próprio proxy de bypass CORS", + "HostproxyButton": "Hospede seu próprio proxy", + "saveproxy": "Salvar", + + // Location + "UserLocText": "Digite sua Localização", + "UserLocSubtext": "Se a localização do clima não estiver correta", + "userLoc": "Sua Cidade ou Coordenadas (Latitude, Longitude)", + "useGPS": "Usar GPS", + "saveLoc": "Salvar", + + // Weather + "WeatherApiText": "Digite sua chave WeatherAPI", + "WeatherApiSubtext": "Se a funcionalidade do clima não estiver funcionando", + "userAPI": "Sua chave weatherAPI", + "LearnMoreButton": "Saiba mais", + "saveAPI": "Salvar", + + // Body Items + // Calendar + "days": ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado'], + "months": ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], + + // Bookmarks + "bookmarksHeading": "Favoritos", + "bookmarkViewAs": "Visualizar como", + "bookmarkViewGrid": "Grade", + "bookmarkViewList": "Lista", + "bookmarkSearch": "Pesquisar favorito", + + // New Tab Item + "conditionText": "Olá! Como você está hoje?", + "humidityLevel": "Umidade", + "feelsLike": "Sensação de", + "location": "Terra", + "enterBtn": "Pesquisar", + "searchPlaceholder": "Digite aqui...", + "listenPlaceholder": "Ouvindo...", + "searchWithHint": "Pesquisar Com", + "userText": "Clique aqui para editar", + + // Greeting + greeting: { + "morning": "Bom dia!", + "afternoon": "Boa tarde!", + "evening": "Boa noite!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Ferramentas de IA", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Enviar Papel de Parede", + "backupText": "Backup", + "restoreText": "Restaurar", + "rangColor": "Escolher cor", + + // Dialog boxes (alerts) + "confirmWallpaper": "Você gostaria de definir uma nova imagem como seu papel de parede para o dia?", + "confirmRestore": "Você tem certeza de que deseja redefinir suas configurações? Esta ação não pode ser desfeita.", + "Nobackgroundset": "Nenhuma imagem de fundo está atualmente definida.", + "clearbackgroundimage": "Você tem certeza de que deseja limpar a imagem de fundo?", + "ProxyDisclaimer": "Todos os recursos de proxy estão desativados por padrão.\n\nSe você ativar sugestões de pesquisa e o proxy de contorno CORS, é altamente recomendável hospedar seu próprio proxy para maior privacidade.\n\nPor padrão, o proxy será definido como https://mynt-proxy.rhythmcorehq.com, o que significa que todos os seus dados passarão por este serviço, o que pode levantar preocupações de privacidade.", + "failedbackup": "Falha no backup: ", + "restorecompleted": "Restauração concluída com sucesso!", + "restorefailed": "Restauração falhou: ", + "invalidBackup": "Arquivo de backup inválido", + "deleteBookmark": "Você tem certeza de que deseja excluir o favorito?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/ru.js b/src/locales/ru.js new file mode 100644 index 00000000..55c9999c --- /dev/null +++ b/src/locales/ru.js @@ -0,0 +1,138 @@ +// Russian -> ru +const ru = { + // Menu Items + "github": "GitHub", + "feedback": "Отзывы", + "resetsettings": "Сброс настроек", + "menuCloseText": "Закрыть", + + // Shortcuts + "shortcutsText": "Ярлыки", + "enableShortcutsText": "Включить/Отключить ярлыки", + "editShortcutsText": "Редактировать ярлыки", + "shortcutsInfoText": "Выберите, какие ярлыки будут отображаться", + "editShortcutsList": "Сохранёные ярлыки", + 'editShortcutsListInfo': 'Вы можете добавить новые ярлыки нажав на "+" или отредактировать существующие, щёлкнув на ярлык или URL.', + "adaptiveIconText": "Адаптивные формы значков", + "adaptiveIconInfoText": "Ярлыки всегда будут круглыми", + "bookmarksText": "Закладки", + "bookmarksInfo": "Показать боковую панель закладок", + "ai_tools_button": "Инструменты ИИ", + "enable_ai_tools": "Включить/Отключить ярлыки ИИ", + "googleAppsMenuText": "Приложения Google", + "googleAppsMenuInfo": "Показать ярлыки для приложений Google", + "googleAppsHover": "Гугл приложения", + + // To-do List + "todoListText": "To-do лист", + "todoListInfo": "Показать ежедневный список дел", + "todoListHover": "To-do лист", + "todoPlaceholder": "Добавить задачу...", + + // Digital Clock + "digitalclocktittle": "Цифровые часы", + "digitalclockinfo": "Включить/Отключить цифровые часы", + "timeformattittle": "12-часовой формат", + "timeformatinfo": "Использовать 12-часовой формат времени", + "greetingtittle": "Приветствие", + "greetinginfo": "Показать приветствие под вашим текстом", + + // Misc + "userTextTitle": "Настраиваемый текст", + "userTextInfo": "Отображение текста под часами", + "fahrenheitCelsiusCheckbox": "Использовать Фаренгейт", + "fahrenheitCelsiusText": "Обновите страницу, чтобы применить", + "micIconTitle": "Скрыть значок микрофона", + "micIconInfo": "Если голосовой ввод не работает", + "hideSearchWith": "Скрыть поисковые системы", + "hideSearchWithInfo": "Переключайте поисковые системы, щёлкая по их значку", + "search_suggestions_button": "Поисковые подсказки", + "search_suggestions_text": "Включить/Отключить поисковые подсказки", + + // Proxy + "useproxytitletext": "Использовать прокси", + "useproxyText": "Если поисковые подсказки не работают", + "ProxyText": "CORS обход прокси", + "ProxySubtext": "Добавьте свой CORS-прокси", + "HostproxyButton": "Разместить свой прокси", + "saveproxy": "Сохранить", + + // Location + "UserLocText": "Введите ваше местоположение", + "UserLocSubtext": "Если местоположение для погоды неверно", + "userLoc": "Ваше местоположение (Город/Широта,Долгота)", + "saveLoc": "Сохранить", + + // Weather + "WeatherApiText": "Введите свой ключ WeatherAPI", + "WeatherApiSubtext": "Если функция погоды не работает", + "userAPI": "Ваш ключ WeatherAPI", + "LearnMoreButton": "Узнать больше", + "saveAPI": "Сохранить", + + // Body Items + // Calendar + "days": ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'], + "months": ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'], + + // Bookmarks + "bookmarksHeading": "Закладки", + "bookmarkViewAs": "Отображение", + "bookmarkViewGrid": "Сетка", + "bookmarkViewList": "Лист", + "bookmarkSearch": "Поиск закладки", + + // New Tab Item + "conditionText": "Привет! Как ты сегодня?", + "humidityLevel": "Влажность", + "feelsLike": "Ощущается", + "location": "Земля", + "enterBtn": "Поиск", + "searchPlaceholder": "Ваш запрос...", + "listenPlaceholder": "Слушаю...", + "searchWithHint": "Искать с", + "userText": "Нажмите здесь, чтобы редактировать", + + // Greeting + greeting: { + "morning": "Доброе утро!", + "afternoon": "Добрый день!", + "evening": "Добрый вечер!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Нейросети", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Загрузить обои", + "backupText": "Экспорт", + "restoreText": "Восстановить", + "rangColor": "Выбрать цвет", + + // Dialog boxes (alerts) + "confirmWallpaper": "Хотите установить новое изображение в качестве обоев на весь день?", + "confirmRestore": "Вы уверены, что хотите сбросить настройки? Это действие нельзя отменить.", + "Nobackgroundset": "В настоящее время обои не установлены.", + "clearbackgroundimage": "Вы уверены что хотите убрать обои?", + "ProxyDisclaimer": "По умолчанию все функции прокси отключены.\n\nЕсли вы включите поисковые предложения и прокси для обхода CORS, настоятельно рекомендуется разместить собственный прокси для повышения конфиденциальности.\n\nПо умолчанию прокси будет установлен на https://mynt-proxy.rhythmcorehq.com, то есть все ваши данные будут проходить через этот сервис, что может вызвать проблемы с конфиденциальностью.", + "failedbackup": "Резервное копирование не удалось: ", + "restorecompleted": "Восстановление настроек успешно завершено!", + "restorefailed": "Восстановление настроек не удалось: ", + "invalidBackup": "Недопустимый файл резервной копии.", + "deleteBookmark": "Вы уверены, что хотите удалить эту закладку?", + "UnsupportedBrowser": "Закладки не поддерживаются в вашем браузере.", +}; diff --git a/src/locales/sl.js b/src/locales/sl.js new file mode 100644 index 00000000..25b58dc1 --- /dev/null +++ b/src/locales/sl.js @@ -0,0 +1,138 @@ +// Slovenian -> sl +const sl = { + // Menu Items + "github": "GitHub", + "feedback": "Povratne informacije", + "resetsettings": "Ponastavi nastavitve", + "menuCloseText": "Zapri", + + // Shortcuts + "shortcutsText": "Bližnjice", + "enableShortcutsText": "Prikaži shranjene bližnjice", + "editShortcutsText": "Uredi bližnjice", + "shortcutsInfoText": "Izberite, katere bližnjice bodo prikazane", + "editShortcutsList": "Shranjene bližnjice", + 'editShortcutsListInfo': 'Dodate lahko nove bližnjice s klikom na ikono "+" ali uredite obstoječe s klikom na ime bližnjice ali URL.', + "adaptiveIconText": "Prilagodljive oblike ikon", + "adaptiveIconInfoText": "Ikone bodo videti manjše", + "bookmarksText": "Zaznamki", + "bookmarksInfo": "Prikaži stransko vrstico z zaznamki", + "ai_tools_button": "AI-orodja", + "enable_ai_tools": "Prikaži bližnjice za AI orodja", + "googleAppsMenuText": "Google Aplikacije", + "googleAppsMenuInfo": "Prikaži bližnjice za Google aplikacije", + "googleAppsHover": "Google Aplikacije", + + // To-do List + "todoListText": "Seznam opravil", + "todoListInfo": "Prikaži dnevni seznam opravil", + "todoListHover": "Seznam opravil", + "todoPlaceholder": "Dodaj nalogo...", + + // Digital Clock + "digitalclocktittle": "Digitalna ura", + "digitalclockinfo": "Preklopi na digitalno uro", + "timeformattittle": "12-urni format", + "timeformatinfo": "Uporabi 12-urni časovni format", + "greetingtittle": "Pozdrav", + "greetinginfo": "Prikaži pozdrav pod prilagojenim besedilom", + + // Misc + "userTextTitle": "Uporabniško prilagodljivo besedilo", + "userTextInfo": "Prikaži uporabniško prilagodljivo besedilo pod uro", + "fahrenheitCelsiusCheckbox": "Preklopi na Fahrenheit", + "fahrenheitCelsiusText": "Osvežite stran za uveljavitev sprememb", + "micIconTitle": "Skrij ikono mikrofona", + "micIconInfo": "Če glasovno tipkanje ne deluje", + "hideSearchWith": "Skrij iskalnike", + "hideSearchWithInfo": "Preklapljajte med iskalniki s klikom na ikono", + "search_suggestions_button": "Predlogi za iskanje", + "search_suggestions_text": "Omogoči predloge za iskanje", + + // Proxy + "useproxytitletext": "Proxy obid", + "useproxyText": "Če predlogi za iskanje ne delujejo", + "ProxyText": "Proxy obid za CORS", + "ProxySubtext": "Dodajte svoj proxy obid za CORS", + "HostproxyButton": "Gostite svoj proxy", + "saveproxy": "Shrani", + + // Location + "UserLocText": "Vnesite svojo lokacijo", + "UserLocSubtext": "Če lokacija vremena ni pravilna", + "userLoc": "Vaše mesto ali koordinate (geografska širina, dolžina)", + "saveLoc": "Shrani", + + // Weather + "WeatherApiText": "Vnesite svoj WeatherAPI ključ", + "WeatherApiSubtext": "Če vremenska funkcionalnost ne deluje", + "userAPI": "Vaš WeatherAPI ključ", + "LearnMoreButton": "Izvedite več", + "saveAPI": "Shrani", + + // Body Items + // Calendar + "days": ['nedelja', 'ponedeljek', 'torek', 'sreda', 'četrtek', 'petek', 'sobota'], + "months": ['januar', 'februar', 'marec', 'april', 'maj', 'junij', 'julij', 'avgust', 'september', 'oktober', 'november', 'december'], + + // Bookmarks + "bookmarksHeading": "Zaznamki", + "bookmarkViewAs": "Prikaži kot", + "bookmarkViewGrid": "Mreža", + "bookmarkViewList": "Seznam", + "bookmarkSearch": "Išči zaznamek", + + // New Tab Item + "conditionText": "Živijo! Kako ste danes?", + "humidityLevel": "Vlažnost", + "feelsLike": "Občutek", + "location": "Zemlja", + "enterBtn": "Išči", + "searchPlaceholder": "Vnesite tukaj...", + "listenPlaceholder": "Poslušam...", + "searchWithHint": "Išči z", + "userText": "Kliknite tukaj za urejanje", + + // Greeting + greeting: { + "morning": "Dobro jutro!", + "afternoon": "Dober dan!", + "evening": "Dober večer!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI orodja", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Naloži ozadje", + "backupText": "Varnostna kopija", + "restoreText": "Obnovi", + "rangColor": "Izberi barvo", + + // Dialog boxes (alerts) + "confirmWallpaper": "Ali želite nastaviti novo sliko kot ozadje danes?", + "confirmRestore": "Ali ste prepričani, da želite ponastaviti nastavitve? To dejanje ni mogoče razveljaviti.", + "Nobackgroundset": "Trenutno ni nastavljena nobena slika za ozadje.", + "clearbackgroundimage": "Ali ste prepričani, da želite odstraniti sliko ozadja?", + "ProxyDisclaimer": "Vse funkcije proxyja so privzeto izklopljene.\n\nČe omogočite predloge za iskanje in proxy za obvoz CORS, je močno priporočljivo, da gostite svoj proxy za boljšo zasebnost.\n\nPrivzeto bo proxy nastavljen na https://mynt-proxy.rhythmcorehq.com, kar pomeni, da bodo vsi vaši podatki šli skozi to storitev, kar lahko predstavlja tveganje za zasebnost.", + "failedbackup": "Varnostna kopija ni uspela: ", + "restorecompleted": "Obnovitev je bila uspešna!", + "restorefailed": "Obnovitev ni uspela: ", + "invalidBackup": "Neveljavna datoteka za varnostno kopijo", + "deleteBookmark": "Ali ste prepričani, da želite odstraniti zaznamek?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/tr.js b/src/locales/tr.js new file mode 100644 index 00000000..036c0cda --- /dev/null +++ b/src/locales/tr.js @@ -0,0 +1,138 @@ +// Turkish +const tr = { + // Menu Items + "github": "GitHub", + "feedback": "Geri Bildirim", + "resetsettings": "Ayarları Sıfırla", + "menuCloseText": "Kapat", + + // Shortcuts + "shortcutsText": "Kısayollar", + "enableShortcutsText": "Kaydedilen kısayolları göster", + "editShortcutsText": "Kısayolları Düzenle", + "shortcutsInfoText": "Hangi kısayolların gösterileceğini seçin", + "editShortcutsList": "Kaydedilen Kısayollar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Uyarlanabilir İkon Şekilleri", + "adaptiveIconInfoText": "Kısayol ikonları yuvarlak görünecek", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI Araçları", + "enable_ai_tools": "AI Araçları kısayollarını göster", + "googleAppsMenuText": "Google Uygulamaları", + "googleAppsMenuInfo": "Google Uygulamaları için kısayollarını göster", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Dijital Saat", + "digitalclockinfo": "Dijital saate geçiş yap", + "timeformattittle": "12 Saat Formatı", + "timeformatinfo": "12 saat zaman formatını kullanın", + "greetingtittle": "Hoşgeldiniz", + "greetinginfo": "Özel metinin altında hoşgeldiniz mesajını göster", + + // Misc + "userTextTitle": "Özelleştirilebilir Metin", + "userTextInfo": "Saatin altında özel metin göster", + "fahrenheitCelsiusCheckbox": "Fahrenheit'a geç", + "fahrenheitCelsiusText": "Güncellemeleri görmek için sayfayı yenileyin", + "micIconTitle": "Mikrofon Simgesini Gizle", + "micIconInfo": "Eğer sesli yazma çalışmıyorsa", + // "hideSearchWith": "Arama Motorlarını Gizle", + // "hideSearchWithInfo": "İkonuna tıklayarak arama motorları arasında geçiş yapın", + "search_suggestions_button": "Arama Önerileri", + "search_suggestions_text": "Arama Önerilerini etkinleştir", + + // Proxy + "useproxytitletext": "Proxy Atlatma", + "useproxyText": "Eğer arama önerileri çalışmıyorsa", + "ProxyText": "CORS Atlatma Proxy", + "ProxySubtext": "Kendi CORS Atlatma Proxy'nizi ekleyin", + "HostproxyButton": "Kendi Proxy'nizi Barındırın", + "saveproxy": "Kaydet", + + // Location + "UserLocText": "Konumunuzu girin", + "UserLocSubtext": "Hava durumu konumu doğru değilse", + "userLoc": "Konumunuz (Şehir/Enlem,Boylam)", + "saveLoc": "Kaydet", + + // Weather + "WeatherApiText": "Kendi WeatherAPI anahtarınızı girin", + "WeatherApiSubtext": "Hava durumu işlevi çalışmıyorsa", + "userAPI": "WeatherAPI anahtarınız", + "LearnMoreButton": "Daha Fazla Bilgi Edinin", + "saveAPI": "Kaydet", + + // Body Items + // Calendar + "days": ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'], + "months": ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Merhaba! Bugün nasılsın?", + "humidityLevel": "Nem", + "feelsLike": "Hissediyor", + "location": "Dünya", + "enterBtn": "Arama Yap", + "searchPlaceholder": "Aramanız...", + "listenPlaceholder": "Dinliyor...", + "searchWithHint": "ile Ara", + "userText": "Buraya tıklayarak düzenleyin", + + // Greeting + greeting: { + "morning": "Günaydın!", + "afternoon": "İyi öğleden sonra!", + "evening": "İyi akşamlar!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Araçları", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; diff --git a/src/locales/uz.js b/src/locales/uz.js new file mode 100644 index 00000000..cb4bd976 --- /dev/null +++ b/src/locales/uz.js @@ -0,0 +1,138 @@ +// Uzbek -> uz +const uz = { + // Menu Items + "github": "GitHub", + "feedback": "Fikr-mulohaza", + "resetsettings": "Sozlamalarni tiklash", + "menuCloseText": 'Yopish', + + // Shortcuts + "shortcutsText": "Tezkor tugmalar", + "enableShortcutsText": "Tezkor tugmalarni ko'rsatish", + "editShortcutsText": "Tezkor tugmalarni tahrirlash", + "shortcutsInfoText": "Qaysi tezkor tugmalarni ko'rsatishni tanlang", + "editShortcutsList": "Saqlangan Tezkor tugmalar", + // "editShortcutsListInfo": "You can add new shortcuts by clicking the \"+\" icon or edit existing ones by clicking on the shortcut name or URL.", + "adaptiveIconText": "Adaptiv ikonlar shakllari", + "adaptiveIconInfoText": "Tezkor tugmalar doimiy ravishda doiraviy bo'ladi", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI-instrumentlar", + "enable_ai_tools": "Tezkor tugmalarni ko'rsatish AI-instrumentlar", + "googleAppsMenuText": "Google Dasturlari", + "googleAppsMenuInfo": "Google Dasturlariga qisqacha havolani ko'rsating", + // "googleAppsHover": "Google Apps", // Keep this shorter + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "Digital Clock", + "digitalclockinfo": "Digital Clockga o'tish", + "timeformattittle": "12-soat format", + "timeformatinfo": "12-soat formatni qo'llang", + "greetingtittle": "Salomlashish", + "greetinginfo": "Savatchadagi text pastdagi salomlashishni ko'rsatish", + + // Misc + "userTextTitle": "Tahrirlash mumkin bo'lgan matn", + "userTextInfo": "Savatchadagi text pastdagi salomlashishni ko'rsatish", + "fahrenheitCelsiusCheckbox": "Fahrenheitga o'tish", + "fahrenheitCelsiusText": "Sahifani yangilash, o'zgarishlarni qo'llash", + "micIconTitle": "Mikrofon belgisini yashirish", + "micIconInfo": "Agar ovozli yozish ishlamasa", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "Izlash tavsiyalari", + "search_suggestions_text": "Izlash tavsiyalarini yoqish", + + // Proxy + "useproxytitletext": "Proxy Bypass", + "useproxyText": "Izlash tavsiyalari ishlamaydi", + "ProxyText": "CORS Bypass Proxy", + "ProxySubtext": "O'zingizning CORS bypass proxyni qo'shing", + "HostproxyButton": "O'zingizning proxyni joylash", + "saveproxy": "Saqlash", + + // Location + "UserLocText": "O'zingizning joylashganligingizni kiriting", + "UserLocSubtext": "Agar havo joylashuvi noto'g'ri bo'lsa", + "userLoc": "O'zingizning shahringiz yoki koordinatalaringiz (Kenglik, Uzunlik)", + "saveLoc": "Saqlash", + + // Weather + "WeatherApiText": "O'zingizning WeatherAPI kalitini kiriting", + "WeatherApiSubtext": "Agar havo funktsiyasi ishlamaydi", + "userAPI": "O'zingizning WeatherAPI kaliti", + "LearnMoreButton": "Bilish", + "saveAPI": "Saqlash", + + // Body Items + // Calendar + "days": ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'], + "months": ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "Salom! Siz bugun qanday holatdasiz?", + "humidityLevel": "Namlik", + "feelsLike": "Uxshaydi", + "location": "Yer", + "enterBtn": "Izlash", + "searchPlaceholder": "Sizning savolingiz...", + "listenPlaceholder": "Tinglayapman...", + "searchWithHint": "Bular bilan izlash", + "userText": "Buni tahrirlash", + + // Greeting + greeting: { + "morning": "Xayrli tong!", + "afternoon": "Xayrli tushlik!", + "evening": "Xayrli kech!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI Texnikalar", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; \ No newline at end of file diff --git a/src/locales/vi.js b/src/locales/vi.js new file mode 100644 index 00000000..865fe31a --- /dev/null +++ b/src/locales/vi.js @@ -0,0 +1,139 @@ +// Vietnamese +const vi = { + // Menu Items + "github": "GitHub", + "feedback": "Phản hồi", + "resetsettings": "Đặt lại cài đặt gốc", + "menuCloseText": "Đóng", + + // Shortcuts + "shortcutsText": "Phím tắt", + "enableShortcutsText": "Bật/tắt phím tắt", + "editShortcutsText": "Chỉnh sửa Phím tắt", + "shortcutsInfoText": "Chọn các phím tắt muốn hiển thị", + "editShortcutsList": "Chỉnh sửa danh sách Phím tắt", + "editShortcutsListInfo": "Bạn có thể thêm phím tắt mới bằng cách nhấp vào biểu tượng \"+\" hoặc chỉnh sửa phím tắt hiện có bằng cách nhấp vào tên phím tắt hoặc URL.", + "adaptiveIconText": "Hình dạng biểu tượng Thích ứng", + "adaptiveIconInfoText": "Biểu tượng phím tắt sẽ luôn là hình tròn", + "bookmarksText": "Dấu trang", + "bookmarksInfo": "Hiển thị thanh bên dấu trang", + "ai_tools_button": "Công cụ AI", + "enable_ai_tools": "Bật/tắt các phím tắt công cụ AI", + "googleAppsMenuText": "Ứng dụng Google", + "googleAppsMenuInfo": "Hiển thị các phím tắt cho Ứng dụng Google", + "googleAppsHover": "Ứng dụng Google", + + // To-do List + "todoListText": "Danh sách việc cần làm", + "todoListInfo": "Hiển thị danh sách việc cần làm hàng ngày", + "todoListHover": "Việc cần làm", + "todoPlaceholder": "Thêm nhiệm vụ...", + + // Digital Clock + "digitalclocktittle": "Đồng hồ kỹ thuật số", + "digitalclockinfo": "Bật/tắt đồng hồ Kỹ thuật số", + "timeformattittle": "Sử dụng định dạng 12 giờ", + "timeformatinfo": "Sử dụng định dạng thời gian 12 giờ", + "greetingtittle": "Lời chào", + "greetinginfo": "Hiển thị lời chào dưới văn bản tùy chỉnh", + + // Misc + "userTextTitle": "Văn bản tùy chỉnh", + "userTextInfo": "Hiển thị văn bản tùy chỉnh dưới đồng hồ", + "fahrenheitCelsiusCheckbox": "Chuyển sang Fahrenheit", + "fahrenheitCelsiusText": "Tải lại trang để thấy cập nhật", + "micIconTitle": "Ẩn biểu tượng mic", + "micIconInfo": "Nếu gõ bằng giọng nói không hoạt động", + "hideSearchWith": "Ẩn công cụ tìm kiếm", + "hideSearchWithInfo": "Chuyển đổi giữa các công cụ tìm kiếm bằng cách nhấp vào biểu tượng của nó", + "search_suggestions_button": "Gợi ý tìm kiếm", + "search_suggestions_text": "Bật/tắt gợi ý tìm kiếm", + + // Proxy + "useproxytitletext": "Bỏ qua Proxy", + "useproxyText": "Nếu gợi ý tìm kiếm không hoạt động", + "ProxyText": "Proxy bỏ qua CORS", + "ProxySubtext": "Thiết lập proxy bỏ qua CORS của bạn.", + "HostproxyButton": "Lưu trữ proxy của riêng bạn", + "saveproxy": "Lưu", + + // Location + "UserLocText": "Nhập vị trí của bạn", + "UserLocSubtext": "Nếu vị trí thời tiết không chính xác", + "userLoc": "Thành phố hoặc tọa độ của bạn (Vĩ độ, Kinh độ)", + "useGPS": "Sử dụng GPS", + "saveLoc": "Lưu", + + // Weather + "WeatherApiText": "Nhập khóa WeatherAPI của bạn", + "WeatherApiSubtext": "Nếu tính năng thời tiết không hoạt động", + "userAPI": "Khóa WeatherAPI của bạn", + "LearnMoreButton": "Tìm hiểu Thêm", + "saveAPI": "Lưu", + + // Body Items + // Calendar + "days": ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'], + "months": ['Tháng Một', 'Tháng Hai', 'Tháng Ba', 'Tháng Tư', 'Tháng Năm', 'Tháng Sáu', 'Tháng Bảy', 'Tháng Tám', 'Tháng Chín', 'Tháng Mười', 'Tháng Mười Một', 'Tháng Mười Hai'], + + // Bookmarks + "bookmarksHeading": "Dấu trang", + "bookmarkViewAs": "Dạng xem", + "bookmarkViewGrid": "Lưới", + "bookmarkViewList": "Danh sách", + "bookmarkSearch": "Tìm dấu trang", + + // New Tab Item + "conditionText": "Xin chào! Bạn cảm thấy thế nào hôm nay?", + "humidityLevel": "Độ ẩm", + "feelsLike": "Cảm giác như", + "location": "Trái Đất", + "enterBtn": "Tìm kiếm", + "searchPlaceholder": "Nhập câu hỏi của bạn...", + "listenPlaceholder": "Đang nghe...", + "searchWithHint": "Tìm kiếm Với", + "userText": "Nhấp vào đây để chỉnh sửa", + + // Greeting + greeting: { + "morning": "Chào buổi sáng!", + "afternoon": "Chào buổi chiều!", + "evening": "Chào buổi tối!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "DuckDuckGo", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "Công cụ AI", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + "uploadWallpaperText": "Tải hình nền", + "backupText": "Sao lưu", + "restoreText": "Khôi phục", + "rangColor": "Chọn màu", + + // Dialog boxes (alerts) + "confirmWallpaper": "Bạn có muốn đặt một hình ảnh mới làm hình nền cho ngày không?", + "confirmRestore": "Bạn có chắc chắn muốn đặt lại cài đặt của mình không? Hành động này không thể hoàn tác.", + "Nobackgroundset": "Hiện tại chưa có hình nền nào được thiết lập.", + "clearbackgroundimage": "Bạn có chắc chắn muốn xóa hình nền không?", + "ProxyDisclaimer": "Theo mặc định, mọi tính năng của proxy đều bị tắt.\n\nNếu bạn bật gợi ý tìm kiếm và bỏ qua proxy CORS, chúng tôi khuyên bạn nên lưu trữ proxy riêng để tăng cường quyền riêng tư.\n\nTheo mặc định, proxy sẽ được đặt thành https://mynt-proxy.rhythmcorehq.com, nghĩa là mọi dữ liệu của bạn sẽ đi qua dịch vụ này, điều này có thể gây ra lo ngại về quyền riêng tư.", + "failedbackup": "Sao lưu không thành công: ", + "restorecompleted": "Đã khôi phục thành công!", + "restorefailed": "Khôi phục không thành công: ", + "invalidBackup": "Tệp sao lưu không hợp lệ", + "deleteBookmark": "Bạn có chắc chắn muốn xóa dấu trang không?", + "UnsupportedBrowser": "Dấu trang không được hỗ trợ trong trình duyệt của bạn", +}; diff --git a/src/locales/zh.js b/src/locales/zh.js new file mode 100644 index 00000000..9630aeaa --- /dev/null +++ b/src/locales/zh.js @@ -0,0 +1,138 @@ +// Chinese (Simplified) -> zh +const zh = { + // Menu Items + "github": "GitHub", + "feedback": "反馈", + "resetsettings": "重置设置", + "menuCloseText": "关闭", + + // Shortcuts + "shortcutsText": "快捷方式", + "enableShortcutsText": "显示已保存的快捷方式", + "editShortcutsText": "编辑快捷方式", + "shortcutsInfoText": "选择要显示的快捷方式", + "editShortcutsList": "已保存的快捷方式", + "editShortcutsListInfo": "您可以通过单击“+”图标添加新的快捷方式,或通过单击快捷方式名称或 URL 来编辑现有快捷方式", + "adaptiveIconText": "自适应图标形状", + "adaptiveIconInfoText": "快捷方式图标将显示为圆形", + // "bookmarksText": "Bookmarks", + // "bookmarksInfo": "Show bookmarks sidebar", + "ai_tools_button": "AI 工具", + "enable_ai_tools": "显示 AI 工具快捷方式", + "googleAppsMenuText": "谷歌应用", + "googleAppsMenuInfo": "显示谷歌应用的快捷方式", + "googleAppsHover": "谷歌应用", + + // To-do List + // "todoListText": "To Do List", + // "todoListInfo": "Show a daily To Do list", + // "todoListHover": "ToDo List", // Keep this short + // "todoPlaceholder": "Add task...", + + // Digital Clock + "digitalclocktittle": "数字时钟", + "digitalclockinfo": "切换到数字时钟", + "timeformattittle": "12 小时制", + "timeformatinfo": "使用 12 小时制时间格式", + "greetingtittle": "问候语", + "greetinginfo": "在自定义文本下显示问候语", + + // Misc + "userTextTitle": "自定义文本", + "userTextInfo": "在时钟下方显示自定义文本", + "fahrenheitCelsiusCheckbox": "切换到华氏温度", + "fahrenheitCelsiusText": "刷新页面以应用更改", + "micIconTitle": "隐藏麦克风图标", + "micIconInfo": "如果语音输入无法使用", + // "hideSearchWith": "Hide Search Engines", + // "hideSearchWithInfo": "Switch between search engines by clicking its icon", + "search_suggestions_button": "搜索建议", + "search_suggestions_text": "启用搜索建议", + + // Proxy + "useproxytitletext": "代理绕过", + "useproxyText": "如果搜索建议无法正常工作", + "ProxyText": "CORS 绕过代理", + "ProxySubtext": "添加您的地址以绕过CORS限制", + "HostproxyButton": "托管您自己的代理", + "saveproxy": "保存", + + // Location + "UserLocText": "输入您的位置", + "UserLocSubtext": "如果天气位置不正确", + "userLoc": "您的城市或坐标(纬度,经度)", + "saveLoc": "保存", + + // Weather + "WeatherApiText": "输入您的 WeatherAPI 密钥", + "WeatherApiSubtext": "如果天气功能无法正常工作", + "userAPI": "您的 WeatherAPI 密钥", + "LearnMoreButton": "了解更多", + "saveAPI": "保存", + + // Body Items + // Calendar + "days": ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'], + "months": ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], + + // Bookmarks + // "bookmarksHeading": "Bookmarks", + // "bookmarkViewAs": "View as", + // "bookmarkViewGrid": "Grid", // Keep this shorter + // "bookmarkViewList": "List", // Keep this shorter + // "bookmarkSearch": "Search bookmark", + + // New Tab Item + "conditionText": "你好!今天感觉怎么样?", + "humidityLevel": "湿度", + "feelsLike": "体感温度", + "location": "地球", + "enterBtn": "搜索", + "searchPlaceholder": "输入搜索内容...", + "listenPlaceholder": "正在聆听...", + "searchWithHint": "搜索引擎", + "userText": "点击这里以编辑", + + // Greeting + greeting: { + "morning": "早上好!", + "afternoon": "下午好!", + "evening": "晚上好!" + }, + + // Search Engines + "googleEngine": "Google", + "duckEngine": "Duck", + "bingEngine": "Bing", + "braveEngine": "Brave", + "youtubeEngine": "YouTube", + + // AI Tools + "ai_tools": "AI 工具", + "chatGPT": "ChatGPT", + "gemini": "Gemini", + "copilot": "Copilot", + "claude": "Claude", + "perplexity": "Perplexity", + "firefly": "Adobe Firefly", + "metaAI": "Meta AI", + + // Wallpaper and alerts + // "uploadWallpaperText": "Upload Wallpaper", // Keep this short + // "backupText": "Backup", + // "restoreText": "Restore", + // "rangColor": "Pick color", // Keep this short + + // Dialog boxes (alerts) + // "confirmWallpaper": "Would you like to set a new image as your wallpaper for the day?", + // "confirmRestore": "Are you sure you want to reset your settings? This action cannot be undone.", + // "Nobackgroundset": "No background image is currently set.", + // "clearbackgroundimage": "Are you sure you want to clear the background image?", + // "ProxyDisclaimer": "All proxy features are off by default.\n\nIf you enable search suggestions and CORS bypass proxy, it is strongly recommended to host your own proxy for enhanced privacy.\n\nBy default, the proxy will be set to https://mynt-proxy.rhythmcorehq.com, meaning all your data will go through this service, which may pose privacy concerns.", + // "failedbackup": "Backup failed: ", + // "restorecompleted": "Restore completed successfully!", + // "restorefailed": "Restore failed: ", + // "invalidBackup": "Invalid backup file", + // "deleteBookmark": "Are you sure you want to delete the bookmark?", + // "UnsupportedBrowser": "Bookmarks are not supported in your browser", +}; \ No newline at end of file diff --git a/src/manifest.json b/src/manifest.json deleted file mode 100644 index 47ae81d9..00000000 --- a/src/manifest.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "manifest_version": 3, - "name": "Material You NewTab", - "version": "3.1.5", - "description": "A Simple New Tab (browser's home page) inspired by Google's 'Material You' design.", -"permissions": [ - "webRequest" -], - "background": { - "service_worker": "background.js" - }, - "icons": { - "48": "icon.png" - }, - "action": { - "default_icon": "icon.png" - }, - "chrome_url_overrides": { - "newtab": "index.html" - } -} diff --git a/src/root/icon128.png b/src/root/icon128.png new file mode 100644 index 00000000..844e8660 Binary files /dev/null and b/src/root/icon128.png differ diff --git a/src/root/icon16.png b/src/root/icon16.png new file mode 100644 index 00000000..fc2521a8 Binary files /dev/null and b/src/root/icon16.png differ diff --git a/src/icon.png b/src/root/icon48.png similarity index 100% rename from src/icon.png rename to src/root/icon48.png diff --git a/src/root/manifest(firefox).json b/src/root/manifest(firefox).json new file mode 100644 index 00000000..e9fedad5 --- /dev/null +++ b/src/root/manifest(firefox).json @@ -0,0 +1,27 @@ +{ + "manifest_version": 2, + "name": "Better Material You NewTab", + "version": "4.0", + "description": "A Simple New Tab (browser's home page) inspired by Google's 'Material You' design.", + "permissions": [ + "bookmarks", + "https://www.google.com/complete/search*", + "https://duckduckgo.com/ac/*", + "https://search.brave.com/api/suggest*" + ], + "background": { + "scripts": ["background.js"], + "persistent": true + }, + "icons": { + "16": "icon16.png", + "48": "icon48.png", + "128": "icon128.png" + }, + "browser_action": { + "default_icon": "icon48.png" + }, + "chrome_url_overrides": { + "newtab": "index.html" + } +} diff --git a/src/root/manifest.json b/src/root/manifest.json new file mode 100644 index 00000000..3b4c0c56 --- /dev/null +++ b/src/root/manifest.json @@ -0,0 +1,23 @@ +{ + "manifest_version": 3, + "name": "Better Material You NewTab", + "version": "4.0.0", + "description": "A Simple New Tab (browser's home page) inspired by Google's 'Material You' design.", + "optional_permissions": ["bookmarks"], + "host_permissions": [ + "https://www.google.com/complete/search*", + "https://duckduckgo.com/ac/*", + "https://search.brave.com/api/suggest*" +], + "icons": { + "16": "icon16.png", + "48": "icon48.png", + "128": "icon128.png" + }, + "action": { + "default_icon": "icon48.png" + }, + "chrome_url_overrides": { + "newtab": "index.html" + } +} diff --git a/src/root/privacy-policy.html b/src/root/privacy-policy.html new file mode 100644 index 00000000..90b82166 --- /dev/null +++ b/src/root/privacy-policy.html @@ -0,0 +1,103 @@ + + + + + + + Privacy Policy for Better Material You NewTab Extension + + + + + + +
        +

        Privacy Policy for "Better Material You NewTab" Extension

        + +

        Introduction

        +

        "Better Material You NewTab" is an open-source extension designed to enhance the appearance of your browser’s + default home page and new tab. This extension was originally created as a personal project using HTML, CSS, + and JavaScript. Due to positive feedback, it was later made available on Firefox and Chrome stores.

        + +

        Community Contributions

        +

        Since its release, many talented developers have contributed to improving the extension through GitHub. These + contributors have added new features and fixed bugs, making the extension even better. Each pull request is + carefully reviewed, tested, and verified to ensure it meets our standards before merging.

        + +

        Data Collection and Permissions

        +

        This extension does not require any permissions and does not collect, store, or share any user data. Our team + has no intention to track or collect any personal information; this is a project focused solely on providing + a better browsing experience.

        + +

        About Voice Search and Microphone Permission

        +

        The extension uses the Web Speech API for voice search. When you click the microphone icon, the browser will + prompt for microphone access, which is managed entirely by the browser. The microphone is used solely for + speech-to-text functionality during searches, and you will be notified by the browser whenever the + microphone is accessed.

        + +

        Transparency and Security

        +

        While we strive to keep our code secure, we acknowledge that no project is 100% immune to potential issues. + In rare cases, unintended code or errors could be introduced through contributions. We encourage users to + review the source code directly on GitHub for peace of mind. Use this extension only when you are fully + comfortable with its contents.

        + +

        Thank You

        +

        Thank you for your trust in the "Better Material You NewTab" extension, and we hope it enhances your browsing + experience with every new tab you open!

        + +
        + + + + diff --git a/src/scripts/README.md b/src/scripts/README.md new file mode 100644 index 00000000..9ca80206 --- /dev/null +++ b/src/scripts/README.md @@ -0,0 +1,23 @@ +# Contributing to the Project + +## Adding a New Feature + +1. **Create a new script file** + - Name the file appropriately to reflect the feature you're adding. For example, if your feature involves animations, the file could be named `animation-feature.js`. + - Place this new file in the `scripts` directory. + + +3. **Integrate the script into the project** + - Open `index.html` and locate the `` section. + - Add your script as follows: + ```html + + ``` + +4. **Develop your feature** + - Implement your functionality within the script. Write clean, maintainable code and follow any existing coding standards used in the project. + +--- + +## Additional Notes +Ensure you've read the [code of conduct](../CODE_OF_CONDUCT.md) and the [contributing](../CONTRIBUTING.md). diff --git a/src/scripts/ai-tools.js b/src/scripts/ai-tools.js new file mode 100644 index 00000000..ed284578 --- /dev/null +++ b/src/scripts/ai-tools.js @@ -0,0 +1,86 @@ +// when User click on "AI-Tools" +const element = document.getElementById("toolsCont"); +const shortcuts = document.getElementById("shortcutsContainer"); + +function toggleShortcuts(event) { + const shortcutsCheckbox = document.getElementById("shortcutsCheckbox"); + + if (shortcutsCheckbox.selected) { + if (element.style.display === "flex") { + shortcuts.style.display = "flex"; + element.style.opacity = "0"; + element.style.gap = "0"; + element.style.transform = "translateX(-100%)"; + + setTimeout(() => { + element.style.display = "none"; + shortcuts.style.display = "flex"; + }, 500); + } else { + shortcuts.style.display = "none"; + element.style.display = "flex"; + setTimeout(() => { + element.style.opacity = "1"; + element.style.transform = "translateX(0)"; + }, 1); + setTimeout(() => { + element.style.gap = "12px"; + }, 300); + } + } else { + if (element.style.display === "flex") { + shortcuts.style.display = "none"; + element.style.opacity = "0"; + element.style.gap = "0"; + element.style.transform = "translateX(-100%)"; + setTimeout(() => { + element.style.display = "none"; + }, 500); + } else { + shortcuts.style.display = "none"; + element.style.display = "flex"; + setTimeout(() => { + element.style.opacity = "1"; + element.style.transform = "translateX(0)"; + }, 1); + setTimeout(() => { + element.style.gap = "12px"; + }, 300); + } + } + // Prevent outside click handler from triggering + if (event) event.stopPropagation(); +} + + +// Collapse when clicking outside toolsCont +document.addEventListener("click", (event) => { + if (!element.contains(event.target) && element.style.display === "flex") { + toggleShortcuts(); + } +}); + +document.getElementById("0NIHK").onclick = toggleShortcuts; + +// + + +document.addEventListener("DOMContentLoaded", function () { + const aiToolsCont = document.getElementById("aiToolsCont"); + const aiToolsCheckbox = document.getElementById("aiToolsCheckbox"); + + aiToolsCheckbox.addEventListener("change", function () { + saveCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); + if (aiToolsCheckbox.selected) { + aiToolsCont.style.display = "flex"; + saveDisplayStatus("aiToolsDisplayStatus", "flex"); + } else { + aiToolsCont.style.display = "none"; + saveDisplayStatus("aiToolsDisplayStatus", "none"); + toggleShortcuts() + } + }); + + loadCheckboxState("aiToolsCheckboxState", aiToolsCheckbox); + loadDisplayStatus("aiToolsDisplayStatus", aiToolsCont); +}); diff --git a/src/scripts/google-app-menu.js b/src/scripts/google-app-menu.js new file mode 100644 index 00000000..902b22b0 --- /dev/null +++ b/src/scripts/google-app-menu.js @@ -0,0 +1,51 @@ + +// ------------------------Google App Menu----------------------------------- +const iconContainer = document.getElementById("iconContainer"); +const googleAppsCont = document.getElementById("googleAppsCont"); + +// Toggle menu and tooltip visibility +googleAppsCont.addEventListener("click", function (event) { + const isMenuVisible = iconContainer.style.display === "grid"; + + // Toggle menu visibility + iconContainer.style.display = isMenuVisible ? "none" : "grid"; + + // Add or remove the class to hide the tooltip + if (!isMenuVisible) { + googleAppsCont.classList.add("menu-open"); // Hide tooltip + } else { + googleAppsCont.classList.remove("menu-open"); // Restore tooltip + } + + event.stopPropagation(); +}); + +// Close menu when clicking outside +document.addEventListener("click", function (event) { + const isClickInside = + iconContainer.contains(event.target) || googleAppsCont.contains(event.target); + + if (!isClickInside && iconContainer.style.display === "grid") { + iconContainer.style.display = "none"; // Hide menu + googleAppsCont.classList.remove("menu-open"); // Restore tooltip + } +}); +// ------------------------End of Google App Menu Setup----------------------------------- + +// + +document.addEventListener("DOMContentLoaded", function () { + const googleAppsCont = document.getElementById("googleAppsCont"); + loadDisplayStatus("googleAppsDisplayStatus", googleAppsCont); + + googleAppsCheckbox.addEventListener("change", function () { + saveCheckboxState("googleAppsCheckboxState", googleAppsCheckbox); + if (googleAppsCheckbox.selected) { + googleAppsCont.style.display = "flex"; + saveDisplayStatus("googleAppsDisplayStatus", "flex"); + } else { + googleAppsCont.style.display = "none"; + saveDisplayStatus("googleAppsDisplayStatus", "none"); + } + }); +}); diff --git a/src/scripts/languages.js b/src/scripts/languages.js new file mode 100644 index 00000000..1d3e3f4f --- /dev/null +++ b/src/scripts/languages.js @@ -0,0 +1,295 @@ + +// Translation data +const translations = { + en: en, // English + pt: pt, // Portuguese-BR + zh: zh, // Chinese (Simplified) + hi: hi, // Hindi + hu: hu, // Hungarian + cs: cs, // Czech + it: it, // Italian + tr: tr, // Turkish + bn: bn, // Bengali + vi: vi, // Vietnamese + ru: ru, // Russian + uz: uz, // Uzbek + es: es, // Spanish + ja: ja, // Japanese + ko: ko, // Korean + idn: idn, // Indonesian + mr: mr, // Marathi + fr: fr, // French + az: az, // Azerbaijani + sl: sl, // Slovenian + np: np, // Nepali +}; + +// Define the width of the menu container for each language +const menuWidths = { + en: '400px', + pt: '470px', + bn: '416px', + uz: '455px', + vi: '445px', + cs: '452px', + es: '446px', + hi: '408px', + hu: '445px', + ja: '444px', + ru: '400px', + it: '437px', + idn: '435px', + tr: '418px', + fr: '475px', + az: '418px', + sl: '470px', + np: '430px', + // Add more languages and widths as needed +}; + +const numberMappings = { + "bn": { '0': '০', '1': '১', '2': '২', '3': '৩', '4': '৪', '5': '৫', '6': '৬', '7': '৭', '8': '৮', '9': '৯' }, + "mr": { '0': '०', '1': '१', '2': '२', '3': '३', '4': '४', '5': '५', '6': '६', '7': '७', '8': '८', '9': '९' }, + "np": { '0': '०', '1': '१', '2': '२', '3': '३', '4': '४', '5': '५', '6': '६', '7': '७', '8': '८', '9': '९' }, + // Add more languages as needed, Ensure it is supported in the fonts +}; + +function localizeNumbers(text, language) { + const map = numberMappings[language]; // Get the numeral map for the current language + + // Define languages that use a comma as the decimal separator instead of a dot + const specialDecimalLanguages = ['cs', 'it', 'pt', 'ru', 'tr', 'vi', 'uz', 'es', 'ko', 'idn', 'fr', 'az', 'sl', 'hu']; // Add more languages here as needed + + if (specialDecimalLanguages.includes(language)) { + // Replace decimal point with a comma for specific languages + text = text.replace('.', ','); + } + // Apply digit localization if the numeral map exists + if (map) { + text = text.replace(/\d/g, (digit) => map[digit] || digit); + } + return text; // Return the localized text +} + +// Function to apply the language to the page +function applyLanguage(lang) { + // Mapping of text elements and their translation keys + const translationMap = [ + 'feedback', + 'resetsettings', + 'shortcutsText', + 'enableShortcutsText', + 'editShortcutsText', + 'shortcutsInfoText', + 'editShortcutsList', + 'editShortcutsListInfo', + 'adaptiveIconText', + 'adaptiveIconInfoText', + 'ai_tools_button', + 'enable_ai_tools', + 'googleAppsMenuText', + 'googleAppsMenuInfo', + 'todoListText', + 'todoListInfo', + 'fahrenheitCelsiusCheckbox', + 'fahrenheitCelsiusText', + 'micIconTitle', + 'micIconInfo', + 'hideSearchWith', + 'hideSearchWithInfo', + 'search_suggestions_button', + 'search_suggestions_text', + 'digitalclocktittle', + 'digitalclockinfo', + 'timeformattittle', + 'timeformatinfo', + 'greetingtittle', + 'greetinginfo', + 'userTextTitle', + 'userTextInfo', + 'useproxytitletext', + 'useproxyText', + 'ProxyText', + 'ProxySubtext', + 'HostproxyButton', + 'saveproxy', + 'UserLocText', + 'UserLocSubtext', + 'useGPS', + 'saveLoc', + 'WeatherApiText', + 'WeatherApiSubtext', + 'LearnMoreButton', + 'saveAPI', + 'conditionText', + 'enterBtn', + 'searchWithHint', + 'ai_tools', + 'humidityLevel', + 'feelsLike', + 'location', + 'googleEngine', + 'duckEngine', + 'bingEngine', + 'braveEngine', + 'youtubeEngine', + 'chatGPT', + 'gemini', + 'copilot', + 'claude', + 'perplexity', + 'firefly', + 'metaAI', + 'github', + 'googleAppsHover', + 'todoListHover', + 'uploadWallpaperText', + 'backupText', + 'restoreText', + 'rangColor', + 'bookmarksText', + 'bookmarksInfo', + 'bookmarksHeading', + 'bookmarkViewAs', + 'bookmarkViewGrid', + 'bookmarkViewList', + ]; + + // Specific mapping for placeholders + const placeholderMap = [ + { id: 'userLoc', key: 'userLoc' }, + { id: 'userAPI', key: 'userAPI' }, + { id: 'searchQ', key: 'searchPlaceholder' }, + { id: 'todoInput', key: 'todoPlaceholder' }, + { id: 'bookmarkSearch', key: 'bookmarkSearch' } + ]; + + // Mapping of elements and their different translation keys + const elementsMap = [ + { id: 'todoListHeading', key: 'todoListText' }, + { id: 'googleEngineDD', key: 'googleEngine' }, + { id: 'duckEngineDD', key: 'duckEngine' }, + { id: 'bingEngineDD', key: 'bingEngine' }, + { id: 'braveEngineDD', key: 'braveEngine' }, + { id: 'youtubeEngineDD', key: 'youtubeEngine' }, + { id: 'bookmarksHover', key: 'bookmarksHeading' }, + ]; + + // Function to apply translations + function applyTranslations(items, isPlaceholder) { + items.forEach(item => { + // Get the element by its ID + const element = document.getElementById(item.id || item); + if (element) { + // Use 'key' if defined, otherwise use 'id' as the translation key + const key = item.key || item; + // Get the translation, fallback to English if not found in the current language + const translation = translations[lang]?.[key] || translations['en']?.[key]; + + // Apply the translation to either placeholder or innerText + if (isPlaceholder) { + element.placeholder = translation; + } else { + element.innerText = translation; + } + } + }); + } + + // Apply the translations + applyTranslations(placeholderMap, true); // For placeholders + applyTranslations(elementsMap, false); // For innerTexts with different IDs and keys + applyTranslations(translationMap, false); // For innerTexts with same ID and keys + + // For userText + const userTextDiv = document.getElementById('userText'); + if (translations[lang]) { + const placeholder = translations[lang]?.userText || translations['en'].userText; + userTextDiv.dataset.placeholder = placeholder; // Update the placeholder in data attribute + // Only set the text content if there's nothing in localStorage + if (!localStorage.getItem("userText")) { + userTextDiv.innerText = placeholder; + } + } + + // Update hover text for #menuCloseButton + const menuCloseButton = document.getElementById('menuCloseButton'); + if (menuCloseButton) { + const hoverText = translations[lang]?.menuCloseText || translations['en'].menuCloseText; + menuCloseButton.setAttribute('data-lang', hoverText); + } + + // Update the width of the menu container based on the language + const menuCont = document.querySelector('.menuBar .menuCont'); + if (menuCont) { + menuCont.style.width = menuWidths[lang] || menuWidths['en']; + } + + // Dynamically update the font family based on the language + const root = document.documentElement; + const commonFontStack = "'poppins', 'Poppins', sans-serif"; + if (lang === 'vi') { + root.style.setProperty('--main-font-family', `'Be Vietnam Pro', ${commonFontStack}`); + } else { + root.style.setProperty('--main-font-family', commonFontStack); + } + + // Save the selected language in localStorage + saveLanguageStatus('selectedLanguage', lang); +} + +// Detect language from navigator.language +document.getElementById('languageSelector').addEventListener('change', (event) => { + applyLanguage(event.target.value); + showDialog({ + headline: 'Language Changed', + icon: 'done', + textBtn: 'I will Refresh Later', + tonalBtn: 'OK', + formText: `The language has been changed to '${event.target.value.toUpperCase()}'. The page will refresh to apply the changes.`, + onTextBtnClick: () => { + return; + }, + onTonalBtnClick: () => { + location.reload(); + }, + onIgnored: () => { + return; + } + }); +}); + +// Function to apply the language when the page loads +window.onload = function () { + const savedLanguage = getLanguageStatus('selectedLanguage') || 'en'; // Default language is English + if (savedLanguage) { + document.getElementById("languageSelector").value = savedLanguage; + } + applyLanguage(savedLanguage); + const savedProxy = localStorage.getItem("proxy"); + const resetproxy = document.getElementById("resetproxybtn"); + const proxyhostbtn = document.getElementById("HostproxyButton"); + const saveProxyButton = document.getElementById("saveproxybtn"); + const userProxyInput = document.getElementById("userproxy"); + const defaultProxyURL = "https://mynt-proxy.rhythmcorehq.com"; //Default proxy url + if (savedProxy && savedProxy !== defaultProxyURL) { + userProxyInput.value = savedProxy; + resetproxy.style.display = "block"; + saveProxyButton.style.display = "none"; + proxyhostbtn.textContent = "Host Your Own"; + }else{ + resetproxy.style.display = "none"; + saveProxyButton.style.removeProperty("display"); + proxyhostbtn.textContent = "Host Your Own Proxy"; + } +}; + +// Function to save the language status in localStorage +function saveLanguageStatus(key, languageStatus) { + localStorage.setItem(key, languageStatus); +} + +// Function to get the language status from localStorage +function getLanguageStatus(key) { + return localStorage.getItem(key); +} diff --git a/src/scripts/preload.js b/src/scripts/preload.js new file mode 100644 index 00000000..f8146ba3 --- /dev/null +++ b/src/scripts/preload.js @@ -0,0 +1,2 @@ +// Set Loading Screen Color before Everything Loads +document.documentElement.style.setProperty('--Loading-Screen-Color',localStorage.getItem('LoadingScreenColor') || "#bbd6fd"); \ No newline at end of file diff --git a/src/scripts/save-load-states.js b/src/scripts/save-load-states.js new file mode 100644 index 00000000..05b46c03 --- /dev/null +++ b/src/scripts/save-load-states.js @@ -0,0 +1,50 @@ +/* ------ Helper functions for saving and loading states ------ */ + +// Function to save checkbox state to localStorage +function saveCheckboxState(key, checkbox) { + localStorage.setItem(key, checkbox.selected ? "selected" : "unselected"); +} + +// Function to load and apply checkbox state from localStorage +function loadCheckboxState(key, checkbox) { + const savedState = localStorage.getItem(key); + checkbox.selected = savedState === "selected"; + if (key === "bookmarkGridCheckboxState") { + if (!savedState) { + bookmarkGridCheckbox.click(); + } else { + bookmarkGridCheckbox.click(); + bookmarkGridCheckbox.click(); + } + } +} + +// Function to save display status to localStorage +function saveDisplayStatus(key, displayStatus) { + localStorage.setItem(key, displayStatus); +} + +// Function to load and apply display status from localStorage +function loadDisplayStatus(key, element) { + const savedStatus = localStorage.getItem(key); + if (savedStatus === "flex") { + element.style.display = "flex"; + } else { + element.style.display = "none"; + } +} + +// Function to save activeness status to localStorage +function saveActiveStatus(key, activeStatus) { + localStorage.setItem(key, activeStatus) +} + +// Function to load and apply activeness status from localStorage +function loadActiveStatus(key, element) { + const savedStatus = localStorage.getItem(key); + if (savedStatus === "active") { + element.classList.remove("inactive"); + } else { + element.classList.add("inactive"); + } +} diff --git a/src/styles.scss b/src/styles.scss index 1eec90ab..c887051f 100644 --- a/src/styles.scss +++ b/src/styles.scss @@ -1,101 +1,165 @@ -/*@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');*/ -/* @import url('https://fonts.googleapis.com/css2?family=Borel&family=Poppins&display=swap'); */ -@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1'); - +@import url("https://fonts.googleapis.com/css2?family=Poppins&display=swap"); +@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro&display=swap"); +//@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0'); +/* fallback */ +@font-face { + font-family: 'Material Symbols Outlined'; + font-style: normal; + font-weight: 400; + src: url(fonts/Material-symbols-outlined.woff2) format('woff2'); + } + + .material-symbols-outlined { + font-family: 'Material Symbols Outlined'; + font-weight: normal; + font-style: normal; + font-size: 24px; + line-height: 1; + letter-spacing: normal; + text-transform: none; + display: inline-block; + white-space: nowrap; + word-wrap: normal; + direction: ltr; + -webkit-font-smoothing: antialiased; + } @font-face { - font-family: 'poppins'; - src: url('fonts/Poppins-Regular.ttf') format('truetype'); + font-family: "poppins"; + src: url(fonts/Poppins-Regular.ttf) format("truetype"); } - -* { - box-sizing: border-box; +*:not([class^="md-icon"]) { + box-sizing: border-box; + font-family: var(--main-font-family); } - :root { - font-family: 'poppins', 'Poppins', sans-serif; - /* 🔵🔵🔵 */ - /* ⚠️ Please don't change the color value for this one (if ? then you have to change all colorCode in JavaScript file too */ - --bg-color-blue: #BBD6FD; - --accentLightTint-blue: #E2EEFF; - --darkerColor-blue: #3569b2; - --darkColor-blue: #4382EC; - --tonebtn-blue: #2c74f1cf; - --textColorDark-blue: #1b3041; - - /* 🔴🔴🔴 */ - --bg-color-red: #FDBDBD; - --accentLightTint-red: #ffe7e7; - --darkerColor-red: #B23535; - --darkColor-red: #EC4343; - --tonebtn-red: #f12c2cc4; - --textColorDark-red: #411B1B; - - /*Peela*/ - --bg-color-yellow: #edea8c; - --accentLightTint-yellow: #fff2c2; - --darkerColor-yellow: #CCA243; - --darkColor-yellow: #f4d837; - --tonebtn-yellow: #f1e12cbc; - --textColorDark-yellow: #5B5428; - - /* 🟢🟢🟢 */ - --bg-color-green: #C7E4C7; - --accentLightTint-green: #E1F1E1; - --darkerColor-green: #458245; - --darkColor-green: #5CBA5C; - --tonebtn-green: #39e417b1; - --textColorDark-green: #1B411B; - - /* Cyan */ - --bg-color-cyan: #9bffff; + /* Default font */ + --main-font-family: "poppins", "Poppins", sans-serif, "Material Symbols Outlined"; + /* 🔵🔵🔵 */ + /* ⚠️ Please don't change the color value or names for Blue (if ? modifying code would be difficult */ + --bg-color-blue: #bbd6fd; + --accentLightTint-blue: #e2eeff; + --darkerColor-blue: #3569b2; + --darkColor-blue: #4382ec; + --textColorDark-blue: #1b3041; + --whitishColor-blue: #ffffff; + + /* 🔴🔴🔴 */ + --bg-color-red: #fdbdbd; + --accentLightTint-red: #ffe7e7; + --darkerColor-red: #b23535; + --darkColor-red: #ec4343; + --textColorDark-red: #411b1b; + --whitishColor-red: #ffffff; + + /* 🟡🟡🟡 */ + --bg-color-yellow: #ffed80; + --accentLightTint-yellow: #fff6c3; + --darkerColor-yellow: #ae9502; + --darkColor-yellow: #d1a93d; + --textColorDark-yellow: #2f2707; + --whitishColor-yellow: #ffffff; + + /* 🟢🟢🟢 */ + --bg-color-green: #c7e4c7; + --accentLightTint-green: #e1f1e1; + --darkerColor-green: #458245; + --darkColor-green: #5cba5c; + --textColorDark-green: #1b411b; + --whitishColor-green: #ffffff; + + /* Cyan */ + /* --bg-color-cyan: #9bffff; --accentLightTint-cyan: #d5ffff; --darkerColor-cyan: #5E9CA0; --darkColor-cyan: #00CED1; - --tonebtn-cyan: #2cbcf1bf; - --textColorDark-cyan: #08354B; - - /* 🩷💗🩷 */ - --bg-color-pink: #F9C8D6; - --accentLightTint-pink: #FFEBF2; - --darkerColor-pink: #B24B64; - --darkColor-pink: #EC5E78; - --tonebtn-pink: #cd2cf1b6; - --textColorDark-pink: #411B28; - - /* 🟠🟠🟠 */ - --bg-color-orange: #FFD8B2; - --accentLightTint-orange: #FFEDD5; - --darkerColor-orange: #B26D3E; - --darkColor-orange: #EC844D; - --tonebtn-orange: #f18f2ccf; - --textColorDark-orange: #412B1E; - - /* 🟣🟣🟣 */ - --bg-color-purple: #DAC2E8; - --accentLightTint-purple: #E9E2F3; - --darkerColor-purple: #724B8F; - --darkColor-purple: #9563B5; - --tonebtn-purple: #712cf1cf; - --textColorDark-purple: #2D1B3E; - - /* Dark Kaala */ - --bg-color-dark: #505050; - --accentLightTint-dark: #818181; - --darkerColor-dark: #010208; - --darkColor-dark: #434343; - --tonebtn-dark: #020813c3; - --textColorDark-dark: #010208; - /* Global variables */ - --gap: 30px; - --round: 30px; - - /* Shortcut bar */ - --max-shortcut-bar-width: 60vw; - --shortcut-bar-gap-and-padding: 10px; - --shortcut-size: 50px; - --always-show-dock-background: 0; - - --md-icon-font:'Material Symbols Rounded'; + --textColorDark-cyan: #08354B; */ + + --bg-color-cyan: #9cefef; + --accentLightTint-cyan: #d5ffff; + --darkerColor-cyan: #07787f; + --darkColor-cyan: #09b2b4; + --textColorDark-cyan: #08354b; + --whitishColor-cyan: #ffffff; + + /* 🩷💗🩷 */ + --bg-color-pink: #f9c8d6; + --accentLightTint-pink: #ffebf2; + --darkerColor-pink: #b24b64; + --darkColor-pink: #ec5e78; + --textColorDark-pink: #411b28; + --whitishColor-pink: #ffffff; + + /* 🟠🟠🟠 */ + --bg-color-orange: #ffd8b2; + --accentLightTint-orange: #ffedd5; + --darkerColor-orange: #b26d3e; + --darkColor-orange: #ec844d; + --textColorDark-orange: #412b1e; + --whitishColor-orange: #ffffff; + + /* 🟣🟣🟣 */ + --bg-color-purple: #dac2e8; + --accentLightTint-purple: #e9e2f3; + --darkerColor-purple: #724b8f; + --darkColor-purple: #9563b5; + --textColorDark-purple: #2d1b3e; + --whitishColor-purple: #ffffff; + + /* ⚪ Silver */ + --bg-color-silver: #c6c6c6; + --accentLightTint-silver: #e5e5e5; + --darkerColor-silver: #6f6f6f; + --darkColor-silver: #9e9e9e; + --textColorDark-silver: #333333; + --whitishColor-silver: #ffffff; + + /* 🟤🟤🟤 */ + --bg-color-brown: #dfc28d; + --accentLightTint-brown: #eae3c9; + --darkerColor-brown: #4e3930; + --darkColor-brown: #705347; + --textColorDark-brown: #16100d; + --whitishColor-brown: #ffffff; + + /* 🩶🩶🩶 Grey */ + /* --bg-color-pink: #f9c8d6; + --accentLightTint-pink: #ffebf2; + --darkerColor-pink: #b24b64; + --darkColor-pink: #ec5e78; + --textColorDark-pink: #411b28; + --whitishColor-pink: #ffffff; */ + + + --bg-color-grey: #ffccbf; + --accentLightTint-grey: #fdf1ef; + --darkerColor-grey: #f67455; + --darkColor-grey: #9c29ba; + --textColorDark-grey: #441730; + --whitishColor-grey: #ffffff; + + + /* ⚫⚫⚫ */ + --bg-color-dark: #171615; + --accentLightTint-dark: #3c3c3c; + --darkerColor-dark: #eeeeee; + --darkColor-dark: #212121; + --textColorDark-dark: #d6d6d6; + --whitishColor-dark: #cccccc; + + /* ----------------- */ + + /* Global variables */ + --gap: 30px; + --round: 30px; + + /* Shortcut bar */ + --max-shortcut-bar-width: 60vw; + --shortcut-bar-gap-and-padding: 10px; + --shortcut-size: 50px; + --always-show-dock-background: 0; + + /* material web components */ + --md-icon-font:'Material Symbols Outlined'; --md-primary-tab-container-color:#ffffff00; --md-icon-size:32px; --md-icon-button-icon-size: 32px; @@ -113,11 +177,21 @@ --md-sys-color-on-primary-container: var(--accentLightTint-blue); --md-filter-chip-outline-color: var(--accentLightTint-blue); --md-filter-chip-label-text-color:var(--textColorDark-blue); + --md-secondary-tab-label-text-color:var(--textColorDark-blue); + --md-primary-tab-label-text-color:var(--textColorDark-blue); + --md-secondary-tab-icon-color:var(--textColorDark-blue); + --md-filled-text-field-text-color:var(--textColorDark-blue); + --md-filled-text-field-input-text-color:var(--textColorDark-blue); + --md-filled-text-field-hover-lable-text-color:var(--textColorDark-blue); + --md-filled-text-field-hover-input-text-color:var(--textColorDark-blue); + --md-filled-text-field-foucs-lable-text-color:var(--textColorDark-blue); + --md-filled-text-field-focus-input-text-color:var(--textColorDark-blue); + --md-primary-tab-icon-color:var(--textColorDark-blue); --md-filled-tonal-button-label-text-font: 'poppins'; --md-filled-button-label-text-font: 'poppins'; --md-outlined-button-label-text-font: 'poppins'; --md-text-button-label-text-font: 'poppins'; - --md-sys-color-secondary-container: var(--tonebtn-blue); + --md-sys-color-secondary-container: var(--darkColor-blue); --md-sys-color-on-secondary-container: #ffffff; --md-filter-chip-label-text-font: 'poppins', serif; --md-primary-tab-label-text-font: 'poppins', serif; @@ -125,450 +199,1316 @@ --md-dialog-supporting-text-font: 'poppins', serif; --md-secondary-tab-container-color:var(--accentLightTint-blue); --md-elevated-button-label-text-font: 'poppins', serif; - --md-elevated-button-icon-color:var(--accentLightTint-blue); - --md-elevated-button-hover-icon-color:var(--accentLightTint-blue); - --md-elevated-button-focus-icon-color:var(--accentLightTint-blue); - --md-elevated-button-label-text-color:var(--accentLightTint-blue); - --md-elevated-button-hover-label-text-color:var(--accentLightTint-blue); - --md-elevated-button-focus-label-text-color:var(--accentLightTint-blue); + --md-elevated-button-icon-color:var(--textColorDark-blue); + --md-elevated-button-hover-icon-color:var(--textColorDark-blue); + --md-elevated-button-focus-icon-color:var(--textColorDark-blue); + --md-elevated-button-label-text-color:var(--textColorDark-blue); + --md-elevated-button-hover-label-text-color:var(--textColorDark-blue); + --md-elevated-button-focus-label-text-color:var(--textColorDark-blue); --md-elevated-button-container-color:var(--darkColor-blue); -} - -.resultBox { - max-height: 250px; - overflow-y: auto; - - position: absolute; - top: 1; - left: 0; - width: 100%; - border-radius: var(--round); - - padding: 10px; - scrollbar-width: none; /* For Firefox */ - - /* Initially hidden */ - opacity: 0; - z-index: -1000; - transform: translateY(-70px); - transition: opacity 0.5s ease, transform 0.5s ease, z-index 0.5s ease; - pointer-events: none; + --md-outlined-icon-button-icon-color:var(--textColorDark-blue); + --md-outlined-icon-button-hover-icon-color:var(--textColorDark-blue); + --md-outlined-icon-button-focus-icon-color:var(--textColorDark-blue); + --md-outlined-icon-button-pressed-icon-color:var(--textColorDark-blue); + --md-outlined-text-field-input-text-font: 'poppins', serif; + --md-outlined-text-field-lable-text-font: 'poppins', serif; + --md-outlined-text-field-supporting-text-font: 'poppins', serif; + --md-outlined-text-field-input-text-color: var(--textColorDark-blue); + --md-outlined-text-field-focus-lable-text-color: var(--textColorDark-blue); + --md-outlined-text-field-focus-input-text-color: var(--textColorDark-blue); + --md-outlined-text-field-lable-text-color: var(--textColorDark-blue); + --md-outlined-text-field-input-text-color: var(--textColorDark-blue); + --md-outlined-text-field-supporting-text-color: var(--textColorDark-blue); + --md-outlined-text-field-hover-supporting-text-color: var(--textColorDark-blue); } -.resultBox::-webkit-scrollbar { - display: none; /* For Chrome, Safari, and Edge */ -} - -/* Visible state: when you want the result box to appear */ -.resultBox.show { - opacity: 1; - visibility: visible; - transform: translateY(0); - z-index: 1000; - pointer-events: all; -} - -.resultItem { - padding: 10px; - cursor: pointer; - font-size: 1.2rem; - color: var(--textColorDark-blue); -} - -.resultItem:hover { - background-color: var(--darkColor-blue); - border-radius: 15px; - color: #fff; -} /* Theme */ /* ⚫🟣🔵🔴🟡🟢🟠⚪ */ .accentColor { - fill: var(--darkColor-blue); + fill: var(--darkColor-blue); } .bgLightTint { - fill: var(--accentLightTint-blue); - background-color: var(--accentLightTint-blue); + fill: var(--accentLightTint-blue); + background-color: var(--accentLightTint-blue); +} + +.strokecolor { + stroke: var(--darkColor-blue); } .lessDark { - background-color: var(--bg-color-blue); - fill: var(--bg-color-blue); + background-color: var(--bg-color-blue); + fill: var(--bg-color-blue); } /* ⚫🟣🟡🔵🔴🟠⚪🟢 */ - +.colorPickerButton{ + width: -webkit-fill-available; +} +#languageSelector{ + width: -webkit-fill-available; +} html { - height: 100%; - width: 100%; - margin: 0; + height: 100%; + width: 100%; + margin: 0; + scrollbar-width: none; /* For Firefox */ +} + +.html::-webkit-scrollbar { + display: none; } body { - font-family: 'poppins', 'Poppins', sans-serif; - margin: 0; - padding: 0; - background-color: var(--bg-color-blue); - color: var(--textColorDark-blue); - display: flex; - align-items: center; - justify-content: center; - width: 100%; - min-height: 100%; + background-color: var(--bg-color-blue); + color: var(--textColorDark-blue); + display: flex; + align-items: center; + justify-content: center; + width: 100%; + min-height: 100%; + /* background-color: red; */ + overflow: auto; + background-image: var(--bg-image, none); + background-size: cover; + background-repeat: no-repeat; + background-position: center; + background-attachment: fixed; + height: 100vh; /* Ensure the image fits the viewport height */ + margin: 0; /* Remove margin to avoid unwanted spacing */ +} + + +/* Search suggestions box */ +.resultBox { + max-height: 222px; + overflow-y: auto; + position: absolute; + bottom: -100px; + left: 0; + width: 100%; + border-radius: 25px; + padding: 5px 10px; + scrollbar-width: none; + /* Initially hidden */ + opacity: 0; + z-index: -1000; + transform: translateY(-70px); + transition: opacity 0.5s ease, transform 0.5s ease, z-index 0.5s ease; + pointer-events: none; +} + +@media screen and (max-height: 700px) { + .resultBox { + max-height: 180px; + bottom: -60px; + } } -.centerDiv { - display: grid; - grid-template-columns: auto auto; - width: fit-content; - height: fit-content; - /* background-color: #17a638; */ - /* always leave enough space for the shortcuts bar at the bottom */ - padding-bottom: calc(var(--shortcut-size) + var(--gap) * 2); +.resultBox::-webkit-scrollbar { + display: none; + /* For Chrome, Safari, and Edge */ } -md-outlined-text-field#userproxy { - width: -webkit-fill-available; + +/* Visible state: when you want the result box to appear */ +.resultBox.show { + opacity: 1; + visibility: visible; + transform: translateY(0); + z-index: 1000; + pointer-events: all; } -md-outlined-text-field#userLoc { - width: -webkit-fill-available; + +.resultItem { + padding: 8px; + cursor: pointer; + font-size: 1.1rem; + color: var(--textColorDark-blue); } -md-outlined-text-field#userAPI { - width: -webkit-fill-available; + +.resultItem.active, +.resultItem:hover { + background-color: var(--darkColor-blue); + border-radius: 15px; + color: #fff; } /* Button container styling */ .button-container { display: flex; - flex-wrap: wrap; /* Allows buttons to wrap onto the next line */ - justify-content: center; /* Center the buttons even when wrapped */ - gap: 16px; /* Add space between buttons */ + margin-left: -11.5px; + width: 365px; + justify-content: flex-end; + gap: 16px; margin-bottom: 20px; + flex-direction: column; } - /* For smaller screens or tight spaces */ .button-container md-filled-button, md-outlined-button { flex: 1 1 auto; /* Ensure buttons take up available space */ min-width: 150px; /* Adjust as needed for your design */ } -.icon { - margin-bottom: 3px; +/* ----------------- Google App Menu CSS Setup ----------------- */ +/* Dot Icon Container Styling */ +.googleAppsCont { + position: fixed; + display: inline-block; + margin: 10px; + top: var(--gap); + right: var(--gap); + font-size: 25px; + /* Set the size of the dots */ + background: transparent; + border: none; + cursor: pointer; + z-index: 2; + /* Set z-index */ +} + +/* Styling for the SVG icon */ +.dot-icon { + fill: var(--darkColor-blue); + /* Icon color */ + background-color: var(--accentLightTint-blue); + border-radius: 25%; + padding: 1px; + cursor: pointer; +} + +.theme-transition .dot-icon{ + transition: fill 0.3s ease; +} + +/* Click effect for the icon */ +.dot-icon:active { + fill: var(--darkerColor-blue); +} + +/* Tooltip Text Styling */ +.tooltip-text { + visibility: hidden; + background-color: var(--darkColor-blue); + color: rgba(255, 255, 255, 0.9); + text-align: center; + padding: 5px; + border-radius: 8px; + position: absolute; + top: 120%; + /* Position below the icon */ + left: 50%; + transform: translateX(-50%); + font-size: 12px; + opacity: 0; + transition: opacity 0.3s ease; + white-space: nowrap; + z-index: 3; + /* Set z-index */ +} + +/* Show tooltip on hover */ +.googleAppsCont:hover .tooltip-text { + visibility: visible; + opacity: 1; +} + +/* Ensure tooltip remains hidden when menu is visible */ +.menu-open .tooltip-text { + visibility: hidden !important; + opacity: 0 !important; +} + +/* Separator Styling */ +.separator { + width: 100%; + height: 1px; + background-color: var(--darkColor-blue); + /* Adjust color as needed */ + margin: 10px 0; + /* Adjust spacing as needed */ +} + +/* Add Separator in Icon Container */ +.icon-container .separator { + grid-column: span 3; + /* Ensure separator spans across all columns */ +} + +/* Icon Container Styling (Placed Below Dot Icon) */ +.icon-container { + display: grid; + gap: 10px; + padding: 20px 10px; + background-color: var(--accentLightTint-blue); + border-radius: 30px; + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); + border: 8px solid var(--bg-color-blue); + grid-template-columns: repeat(3, 1fr); + /* 3 icons per row */ + justify-items: center; + /* Center icons within each grid cell */ + position: absolute; + top: 85px; + right: 15px; + max-height: calc(40px * 3 + 10px * 2 + 290px); + /* Limit to 12 icons (3 rows * icon size + gaps) */ + overflow-y: auto; + /* Add vertical scrollbar when needed */ + box-sizing: border-box; + z-index: 3; /* This should be higher that z-index of [.googleAppsCont] */ +} + +/* Individual Icon Item Styling */ +.icon-item { + display: flex; + flex-direction: column; + align-items: center; + text-align: center; + padding: 10px; + border-radius: 10px; + transition: transform 0.3s ease, background-color 0.3s ease; + text-decoration: none; + cursor: pointer; + position: relative; + min-width: 100px; + /* Ensure consistent width */ + background-color: var(--accentLightTint-blue); + /* Default background */ +} + +/* Icon Styling */ +.menuicon { + color: var(--darkColor-blue); + width: 40px; + height: 40px; + margin-bottom: 8px; +} + +/* Label Styling */ +.label { + font-size: 14px; + color: var(--textColorDark-blue); +} + +/* Short Label (Default) */ +.label.short { + display: block; +} + +/* Full Label (Hidden by Default) */ +.label.full { + display: none; + white-space: pre-line; + /* Ensure text retains line breaks */ + text-align: center; + /* Center align text */ + position: absolute; + font-size: 0.8rem; + bottom: 0; +} + +/* Hover Effect for Icon Item */ +.icon-item:hover { + background-color: var(--bg-color-blue); + transform: scale(1.1); + /* Add zoom-in effect */ +} + +/* Show Full Label on Hover for Multi-word Labels */ +.icon-item:hover .label.full { + display: block; +} + +.icon-item:hover .label.short { + display: block; + /* Ensure single-word labels remain visible */ +} + +.icon-item:hover .label.short.one { + display: none; + /* Ensure single-word labels remain visible */ +} + +/* Customize scrollbar to appear on the border */ +/* For Chrome, Edge, Safari */ +.icon-container::-webkit-scrollbar { + width: 5px; +} + +.icon-container::-webkit-scrollbar-track { + background-color: transparent; + margin: 11px 0; +} + +.icon-container::-webkit-scrollbar-thumb { + background-color: var(--darkColor-blue); + border-radius: 3px; +} + +.icon-container::-webkit-scrollbar-thumb:hover { + background-color: var(--darkerColor-blue); + border-radius: 3px; +} + +/* For Firefox */ +@-moz-document url-prefix() { + .icon-container { + scrollbar-width: thin; + scrollbar-color: var(--darkColor-blue) transparent; + } +} +/* ----------------- End of Google App Menu ----------------- */ + +/* ----------------- Start of Bookmark System ----------------- */ + +#bookmarksContainer { + background-color: #0000004f; + backdrop-filter: blur(15px) saturate(160%); + position: fixed; + width: 100%; + height: 100%; + z-index: 2; + opacity: 0; + transition: all 0.5s; + pointer-events: none; + z-index: 4; +} + +#bookmarksContainer:has(.bookmark-sidebar.open) { + opacity: 1; + pointer-events: auto; +} + +.bookmark-button { + position: fixed; + display: inline-block; + margin: 10px; + top: var(--gap); + right: var(--gap); + font-size: 25px; + background-color: var(--accentLightTint-blue); + border: none; + cursor: pointer; + z-index: 2; + padding: 6px; + border-radius: 25%; + transition: right 0.3s ease; +} + +.bookmark-button:has(~ .googleAppsCont[style="display: flex;"]) { + right: calc(2 * var(--gap) + 36px); +} + +/* Show tooltip on hover */ +.bookmark-button:hover .tooltip-text { + visibility: visible; + opacity: 1; +} + +.bookmark-button svg { + fill: var(--darkColor-blue); + background-color: var(--accentLightTint-blue); +} + +.bookmark-sidebar { + width: 380px; + position: fixed; + right: -380px; + top: 0; + height: 100%; + background-color: var(--accentLightTint-blue); + color: white; + transition: right 0.3s ease; + z-index: 5; + display: block; + border-radius: 0 0 0 var(--round); + box-sizing: border-box; +} + +.bookmark-sidebar .topOutRoundCorner{ + position: absolute; + width: 30px; + height: 30px; + left: -30px; +} + +.bookmark-sidebar-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 0 10px; +} + +.bookmark-sidebar.open { + right: 0; +} + +body #bookmarkButton.bookmark-button.rotate { + color: var(--accentLightTint-blue); + right: 412px; + z-index: 5; +} + +.bookmark-sidebar-header { + padding: 30px 20px 50px 20px; + background-color: var(--bg-color-blue); +} + +.bookmark-sidebar-header h2 { + color: var(--textColorDark-blue); + text-align: center; + font-size: 1.5rem; + flex-grow: 1; +} + +.bookmark-search-container { + position: relative; + width: 100%; + padding: 30px 10px 16px 10px; + border-radius: var(--round); + display: flex; + align-items: center; + justify-content: center; + background-color: var(--accentLightTint-blue); + margin-top: -30px; + position: relative; +} + +.bookmark-search-container::after { + content: ''; + background: url('./svgs/bookmarksSearch.svg') no-repeat center / contain; + width: 18px; + filter: invert(1); + height: 18px; + opacity: 0.5; + left: 9%; + top: calc(50% + 7px); + transform: translateY(-50%); + position: absolute; +} + +#bookmarkSearch { + width: 95%; + padding: 10px 36px 10px 43px; + border-radius: var(--round); + font-size: 16px; + background-color: var(--whitishColor-blue); + color: var(--textColorDark-blue); + outline: none !important; + border: none !important; +} + +#bookmarkSearch::placeholder { + color: var(--textColorDark-blue); + opacity: 0.7; +} + +#clearSearchButton { + position: absolute; + right: 9%; + top: calc(50% + 7px); + transform: translateY(-50%); + background: none; + border: none; + color: var(--textColorDark-blue); + cursor: pointer; + display: none; /* Hidden by default */ +} + +#bookmarkList { + list-style-type: none; + padding: 0; + margin: 0; + text-align: left; + height: calc(100% - 230px); + overflow-y: auto; /* Add vertical scrollbar */ + overflow-x: hidden; +} + +#bookmarkList::-webkit-scrollbar { + width: 6px; +} + +#bookmarkList::-webkit-scrollbar-track { + background-color: transparent; +} + +#bookmarkList::-webkit-scrollbar-thumb { + background-color: var(--darkColor-blue); + border-radius: 3px; +} + +#bookmarkList::-webkit-scrollbar-thumb:hover { + background-color: var(--darkerColor-blue); + border-radius: 3px; +} + +/* For Firefox */ +@-moz-document url-prefix() { + #bookmarkList { + scrollbar-width: thin; + scrollbar-color: var(--darkColor-blue) transparent; + } +} + +.bookmark-view-as-container { + display: flex; + box-sizing: border-box; + width: 100%; + justify-content: space-between; + align-items: center; + padding: 8px 32px; + & h3 { + font-size: 1rem; + color: var(--darkerColor-blue); + } +} + +.bookmark-view-as-container .bookmark-view-as-button { + background: transparent; + border-radius: 20px; + border: 2px solid var(--darkColor-blue); + color: var(--darkColor-blue); + min-width: 60px; + font-size: 12px; + padding: 2px 9px; + margin-left: 10px; + cursor: pointer; +} +.bookmark-view-as-container #bookmarkGridCheckbox:is(:checked) ~ #bookmarkViewGrid, +.bookmark-view-as-container #bookmarkGridCheckbox:is(:not(:checked)) ~ #bookmarkViewList { + background: var(--darkColor-blue); + color: white; +} + +#bookmarkList ul { + padding-left: 10px; + list-style-type: none; + font-weight: normal; +} + +#bookmarkList .folder ul{ + padding-top: 10px; +} + +#bookmarkList li { + padding: 2px; + border: none; + position: relative; +} +#bookmarkList li:is(.folder) { + padding: 10px 0 10px 10px; +} + +#bookmarkList li:not(.folder) { + display: flex; + width: calc(100% - 10px); +} + +#bookmarkList:is(.grid-view) ul:not(.hidden), #bookmarkList:is(.grid-view) .folder.open > ul { + display: grid; + grid-template-columns: 25% 25% 25% 25%; + + .folder { + grid-column: span 4; + } +} + +#bookmarkList:is(.grid-view) li:not(.folder) { + width: 100%; + padding-bottom: 6px; +} + +#bookmarkList:is(.grid-view) li a { + padding: 2px; + flex-direction: column; +} +#bookmarkList:is(.grid-view) li a .favicon { + margin: 20px auto 24px auto; +} +#bookmarkList:is(.grid-view) li a:has(.favicon)::after, #bookmarkList:is(.grid-view) li a:has(.favicon)::before { + content: ''; + background: var(--bg-color-blue); + position: absolute; + width: 48px; + height: 48px; + z-index: -1; + left: 50%; + transform: translateX(-50%); + opacity: 0.35; + top: 12px; + box-sizing: border-box; + border-radius: 32px; +} +#bookmarkList:is(.grid-view) li a:has(.favicon)::before { + background: var(--bg-color-blue); + width: 36px; + height: 36px; + opacity: 1; + top: 18px; +} + +#bookmarkList li a { + color: var(--textColorDark-blue); + text-decoration: none; + /* word-break: break-word; */ + padding: 8px; + padding-right: 24px; + border-radius: 8px; + width: 100%; + display: flex; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +#bookmarkList li a span { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +#bookmarkList:is(.grid-view) li a span { + text-align: center; +} + + +.favicon { + width: 18px; + height: 18px; + margin-right: 5px; + vertical-align: middle; + filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.3)); +} + +#bookmarkList:is(.grid-view) .favicon { + width: 24px; + height: 24px; +} + +.folder { + cursor: pointer; + font-weight: bolder; + color: var(--textColorDark-blue); +} + +.hidden { + display: none; +} + +.ui { + display: block; + pointer-events: none; /* Make ui class button unclickable */ +} + +.folder svg { + margin-right: 5px; /* Adjust this value for more or less space */ + vertical-align: middle; /* Aligns the icon with the text */ +} + +.folder ul { + padding-left: 20px; +} + +.folder.open > ul { + display: block; +} + +#bookmarkList:is(.grid-view) .bookmark-delete-button { + top: 12px; + right: 6px; +} + +.bookmark-delete-button { + background: none; + border: none; + color: var(--darkColor-blue); + cursor: pointer; + position: absolute; + right: 10px; /* Position it to the right */ + top: 50%; + transform: translateY(-50%); + opacity: 0; + pointer-events: none; +} + +:hover > .bookmark-delete-button { + opacity: 1; + pointer-events: auto; +} + +/* ----------------- End of Bookmark System ----------------- */ + +/* ------------------ To Do List Section -------------------- */ + +.todoListCont { + position: fixed; + display: inline-block; + margin: 10px; + top: var(--gap); + left: var(--gap); + font-size: 25px; + background: transparent; + border: none; + cursor: pointer; + z-index: 2; + /* Set z-index */ +} + +/* Show tooltip on hover */ +.todoListCont:hover .tooltip-text { + visibility: visible; + opacity: 1; +} + +.todo-container { + display: grid; + gap: 10px; + padding: 10px 5px; + background-color: var(--bg-color-blue); + border-radius: 30px; + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); + border: 8px solid var(--bg-color-blue); + grid-template-columns: 320px; + justify-items: center; + position: absolute; + top: 85px; + left: 15px; + max-height: calc(40px * 3 + 10px * 2 + 290px); + overflow-y: auto; + box-sizing: border-box; + z-index: 3; +} + +.todo-container::-webkit-scrollbar { + width: 5px; +} + +.todo-container::-webkit-scrollbar-track { + background-color: transparent; + margin-top: 108px; + margin-bottom: 11px; +} + +.todo-container::-webkit-scrollbar-thumb { + background-color: var(--darkColor-blue); + border-radius: 3px; +} + +.todo-container::-webkit-scrollbar-thumb:hover { + background-color: var(--darkerColor-blue); + border-radius: 3px; +} + +/* For Firefox */ +@-moz-document url-prefix() { + .todo-container { + scrollbar-width: thin; + scrollbar-color: var(--darkColor-blue) transparent; + } +} + +#todoAdd { + height: 40px; + border-radius: 100px; + padding: 1px 13px 0 13px; + border: none; + font-size: 1.5rem; + background-color: var(--darkColor-blue); + color: white; + scale: 0.78; +} + +#todoAdd:hover { + background-color: var(--darkerColor-blue); + color: #fff; + cursor: pointer; +} + +#todoAdd:active { + transform: scale(0.9); +} + +.theme-transition #todoAdd { + transition: all 0.3s; +} + +#todoInput { + width: 100%; + height: 80%; + margin: auto auto auto 16px; + outline: none; + border: none; + background-color: #00000000; + padding: 0 2px; + font-size: 1rem; +} + +.dark-theme #todoInput { + color: #FFF; +} + +/* Default placeholder color */ +#todoInput::placeholder { + color: #757575; +} + +.todo-container .searchbar-content { + background: var(--accentLightTint-blue); + padding: 0; + border-radius: 20px; + width: 100%; +} + +.todolist{ + width: 100%; + display: flex; + flex-direction: column; + gap: 8px; + justify-content: center; + align-items: flex-start; +} + +.todolistitem{ + width: 100%; + display: flex; + background-color: var(--darkColor-blue); + color: #FFF; + border-radius: 8px; + list-style-type: none; + font-size: 1rem; + padding: 12px 56px 12px 32px; + user-select: none; + cursor: pointer; + position: relative; + word-break: break-word; +} + +.todolistitem::before{ + content: ''; + position: absolute; + height: 18px; + width: 18px; + border-radius: 50%; + background: url('./svgs/todo-check-stroke.svg') no-repeat center center / contain; + top: 50%; + transform: translateY(-50%); + left: 8px; + transition: all 0.3s ease; + user-select: none; +} + +.todolistitem.checked::before{ + background-image: url('./svgs/todo-check-fill.svg'); +} + +.todolistitem.checked{ + color: #CCC; + text-decoration: line-through; +} + +.todolistitem .todoremovebtn, .todolistitem .todopinbtn { + position: absolute; + right: 6px; + top: 50%; + transform: translateY(-50%); + width: 24px; + height: 24px; + font-size: 22px; + line-height: 1.2; + color: var(--bg-color-blue); + text-align: center; + border-radius: 50%; + transition: all 0.3s ease; + user-select: none; +} + +.todolistitem .todoremovebtn { + scale: 1.05; +} + +.todolistitem .todoremovebtn:hover { + color: #FFF; +} + +.todolistitem .todopinbtn { + right: 28px; + background: url('./svgs/todo-pin-stroke.svg') no-repeat center center / contain; +} + +.todolistitem.pinned .todopinbtn { + background-image: url('./svgs/todo-pin-fill.svg'); +} + +.todolistitem:first-child { + border-top-left-radius: 18px; + border-top-right-radius: 18px; +} +.todolistitem:last-child { + border-bottom-left-radius: 18px; + border-bottom-right-radius: 18px; +} + +/* ---------------------------------------------------------- */ + +.centerDiv { + display: grid; + grid-template-columns: auto auto; + width: fit-content; + height: fit-content; + /* background-color: #17a638; */ + /* always leave enough space for the shortcuts bar at the bottom */ + padding-bottom: calc(var(--shortcut-size) + var(--gap) * 2); } + /* ____________Clock_____________________---- */ #digitalClock { - width: 300px; - height: 300px; - border-radius: 100%; - position: relative; + width: 300px; + height: 300px; + border-radius: 100%; + position: relative; } + #analogClock { - width: 300px; - height: 300px; - border-radius: 100%; - position: relative; + width: 300px; + height: 300px; + border-radius: 100%; + position: relative; } + #clock svg { - position: absolute; - animation: clockAnm 1s; + position: absolute; + animation: clockAnm 1s; } @keyframes clockAnm { - from { - transform: rotate(40deg); - } + from { + transform: rotate(40deg); + } - to { - transform: rotate(0deg); - } + to { + transform: rotate(0deg); + } } .clock .centerPoint { - width: 20px; - height: 20px; - position: absolute; - left: 0; - right: 0; - top: 0; - bottom: 0; - margin: auto; + width: 20px; + height: 20px; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: auto; } .clock .centerPoint .sui { - position: absolute; - width: 20px; - height: 100px; - background-color: var(--darkColor-blue); - top: -90px; - transform-origin: bottom; - border-radius: 10px; + position: absolute; + width: 20px; + height: 100px; + background-color: var(--darkColor-blue); + top: -90px; + transform-origin: bottom; + border-radius: 10px; } #hour { - height: 80px; - top: -70px; - background-color: var(--darkerColor-blue); - transform: rotate(90deg); - transition: transform 1.50s; + height: 80px; + top: -70px; + background-color: var(--darkerColor-blue); + transform: rotate(90deg); + transition: transform 1.5s; } #hour::after { - content: ""; - position: absolute; - width: 20px; - height: 30px; - background-color: var(--darkerColor-blue); - bottom: -10px; - border-radius: 100px; + content: ""; + position: absolute; + width: 20px; + height: 30px; + background-color: var(--darkerColor-blue); + bottom: -10px; + border-radius: 100px; } #minute { - z-index: 9 !important; - transition: transform 1.50s; + z-index: 9 !important; + transition: transform 1.5s; } #minute::after { - content: ""; - position: absolute; - width: 20px; - height: 30px; - background-color: var(--darkColor-blue); - bottom: -10px; - border-radius: 100px; + content: ""; + position: absolute; + width: 20px; + height: 30px; + background-color: var(--darkColor-blue); + bottom: -10px; + border-radius: 100px; } #second { - background-color: #00000000; - transition: transform 1s; + background-color: #00000000; + transition: transform 1s; } #second::after { - content: ""; - position: absolute; - width: 20px; - height: 20px; - background-color: var(--darkColor-blue); - top: -28px; - border-radius: 100%; + content: ""; + position: absolute; + width: 20px; + height: 20px; + background-color: var(--darkColor-blue); + top: -28px; + border-radius: 100%; } /* ---------------------- */ .ttteexxtt { - position: absolute; - /* background-color: yellow; */ - bottom: 18px; - /*Because search engines has margin-bottom 20px*/ - left: 5px; + position: absolute; + /* background-color: yellow; */ + /*bottom: 18px; */ + /*Because search engines has margin-bottom 20px*/ + bottom: 8px; + left: 10px; + /*text-align: center; */ } #userText { - font-family: 'poppins', serif; - font-size: 1.4rem; - margin-bottom: 10px; + font-family: var(--main-font-family); + font-size: 1.4rem; + margin-bottom: 10px; } #date { - font-size: 1.4rem; + font-size: 1.4rem; } -.digidate{ - fill:var(--darkerColor-blue) + +.digidate { + fill: var(--textColorDark-blue); +} + +.amPm { + fill: var(--textColorDark-blue); } + .digiclock { - text-anchor:middle; - fill: var(--darkColor-blue); - font-size: 8rem; - font-weight: lighter; - /* background-color: yellow; */ - margin: auto; - width: fit-content; + text-anchor: middle; + fill: var(--darkColor-blue); + font-size: 8rem; + font-weight: lighter; + /* background-color: yellow; */ + margin: auto; + width: fit-content; +} + +#digihours { + fill: var(--darkerColor-blue); } + +#digicolon { + animation: blink 1s infinite; +} + +@keyframes blink { + 50% { + opacity: 0; + } +} + /* __________end of clock___________________ */ .leftDiv { - /* padding-right: 100px; */ - transform: translateX(-100px); - /* background-color: rgba(102, 51, 153, 0.404); */ - /* height: fit-content; */ + /* padding-right: 100px; */ + transform: translateX(-100px); + /* background-color: rgba(102, 51, 153, 0.404); */ + /* height: fit-content; */ } .rightDiv { - position: relative; - width: 640px; - transform: translateX(100px); + position: relative; + width: 640px; + transform: translateX(100px); } .rightDiv .topDiv { - height: 196px; - display: flex; - justify-content: flex-end; + height: 196px; + display: flex; + justify-content: flex-end; } /* lrectangle______________________ */ .rightDiv .topDiv .lrectangle { - height: 100%; - width: 100%; - border-radius: var(--round); - padding: 20px; - position: relative; + height: 100%; + width: 100%; + border-radius: var(--round); + padding: 20px; + position: relative; } #conditionText { - font-size: 1.2rem; - color: var(--textColorDark-blue); + font-size: 1.2rem; + color: var(--textColorDark-blue); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 372px; } .cconnt { - width: calc(100% - 40px); - bottom: 20px; - height: fit-content; - position: absolute; - font-size: 1rem; + width: calc(100% - 40px); + bottom: 20px; + height: fit-content; + position: absolute; + font-size: 1rem; } .tilesContainer { - height: 50px; - width: 100%; - display: grid; - grid-template-columns: 1fr 1fr; - gap: 20px; + height: 50px; + width: 100%; + display: grid; + grid-template-columns: 1fr 1fr; + gap: 20px; } .tilesContainer .tiles { - background-color: #ffffff; - border-radius: 22px; - position: relative; - height: 50px; + background-color: var(--whitishColor-blue); + border-radius: 22px; + position: relative; + height: 50px; } .tilesContainer .location { - background-color: var(--darkColor-blue); + background-color: var(--darkColor-blue); } .tilesContainer .location .location_spn { - color: #fff; + color: #fff; } .tilesContainer .tiles .icon { - height: 100%; - aspect-ratio: 1/1; - display: flex; - align-items: center; - justify-content: center; + height: 100%; + aspect-ratio: 1/1; + display: flex; + align-items: center; + justify-content: center; } .tilesContainer .tiles span { - position: absolute; - top: 0; - left: 46px; - bottom: 0; - margin: auto; - color: var(--textColorDark-blue); - height: fit-content; + position: absolute; + top: 0; + left: 46px; + bottom: 0; + margin: auto; + color: var(--textColorDark-blue); + height: fit-content; } - - .humidityBar { - border-radius: 20px; - height: 40px; - width: 100%; - margin-bottom: 20px; - position: relative; + border-radius: 20px; + height: 40px; + width: 100%; + margin-bottom: 20px; + position: relative; } .humidityBar::after { - position: absolute; - content: ""; - height: 100%; - width: 40px; - background-size: 66%; - background: var(--darkColor-blue) url("./humidity.svg") no-repeat center center; - right: 0; - border-radius: 100%; + position: absolute; + content: ""; + height: 100%; + width: 40px; + background-size: 66%; + background: var(--darkColor-blue) url("./svgs/humidity.svg") no-repeat center + center; + right: 0; + border-radius: 100%; } .humidityBar .thinLine { - position: absolute; - width: calc(100% - 60px); - background-color: white; - height: 6px; - border-radius: 10px; - top: 0; - bottom: 0; - margin: auto; + position: absolute; + width: calc(100% - 60px); + background-color: var(--whitishColor-blue); + height: 6px; + border-radius: 10px; + top: 0; + bottom: 0; + margin: auto; } .humidityBar .slider { - height: 100%; - width: calc(10% - 60px); - /*100-60px because humidityIconContainer is 40px Width and 20px is margin which is = to 60*/ - min-width: 42%; - background-color: var(--darkColor-blue); - border-radius: 100px; - position: absolute; - transition: width 1s; + height: 100%; + width: calc(10% - 60px); + /*100-60px because humidityIconContainer is 40px Width and 20px is margin which is = to 60*/ + min-width: 42%; + background-color: var(--darkColor-blue); + border-radius: 100px; + position: absolute; + transition: width 1s; } #humidityLevel { - color: #fff; - /* background-color: yellow; */ - width: fit-content; - position: absolute; - bottom: 0; - top: 0; - margin: auto; - left: 20px; - height: fit-content; + color: #fff; + width: fit-content; + position: absolute; + bottom: 0; + top: 0; + margin: auto; + left: 20px; + height: fit-content; } -/* End of _____________________- */ +/* End of _____________________- */ /* ------------Weather Pill------------- */ .rightDiv .topDiv .rAndakar { - position: relative; - height: 100%; - aspect-ratio: 1/1; - margin-left: var(--gap); - animation: rAndAnm 1s; - /* transition: rotate 1s; */ + position: relative; + height: 100%; + aspect-ratio: 1/1; + margin-left: var(--gap); + animation: rAndAnm 1s; + /* transition: rotate 1s; */ } @keyframes rAndAnm { - from { - transform: rotate(-45deg); - } + from { + transform: rotate(-45deg); + } - to { - transform: rotate(0deg); - } + to { + transform: rotate(0deg); + } } .rightDiv .topDiv .rAndakar .wInfo { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - margin: auto; - transform: translateX(14px); - width: 100px; - height: 80%; - /* background-color: #17a638; */ + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + margin: auto; + transform: translateX(14px); + width: 100px; + height: 80%; } #temp { - font-size: 3.5rem; - font-weight: bold; - color: var(--darkerColor-blue); - /* background-color: yellow; */ - margin: auto; - width: fit-content; + font-size: 3.5rem; + font-weight: bold; + color: var(--darkerColor-blue); + margin: auto; + width: fit-content; +} + +.tempUnit { + font-size: 0.4em; + position: relative; + top: -1.1em; + left: 3px; + color: var(--darkColor-blue); } #wIcon { - width: 80px; - height: 80px; - margin-top: -20px; - margin-left: -40px; - /* background-color: olive; */ + width: 80px; + height: 80px; + margin-top: -11px; + margin-left: -30px; } /* ------------End of Weather Pill------------- */ @@ -577,40 +1517,135 @@ md-outlined-button { /* _____________Searchbar___________________ */ .searchbar { - margin-top: var(--gap); - width: 100%; - height: 60px; - border-radius: var(--round); - /* background-color: var(--accentLightTint-blue); */ - position: relative; - outline: 2px solid #00000000; - transition: outline 0.3s; + margin-top: var(--gap); + width: 100%; + height: 60px; + border-radius: var(--round); + /* background-color: var(--accentLightTint-blue); */ + position: relative; + outline: 2px solid #00000000; + transition: outline 0.3s; } .searchbar.active { - outline: 2px solid var(--darkColor-blue); + outline: 2px solid var(--darkColor-blue); +} +.searchbar .searchIcon { + width: 30px; + height: 30px; + position: absolute; + margin-top: 14px; + margin-left: 14px; } - +.searchbar-content { + display: flex; + align-items: center; + height: 100%; + padding-right: 10px; +} #searchQ { - display: block; - position: absolute; - height: 80%; - width: calc(100% - 120px); - top: 0; - bottom: 0; - margin: auto auto auto 20px; - outline: none; - border: none; - background-color: #00000000; - border-radius: 100px; - padding: 0 40px; - font-size: 1rem; + flex-grow: 1; + height: 80%; + top: 0; + bottom: 0; + margin: auto auto auto 20px; + outline: none; + border: none; + background-color: #00000000; + padding: 0 2px; + margin-left: 55px; + font-size: 1rem; +} + +/* Default placeholder color */ +#searchQ::placeholder { + color: #757575; +} + +/* Placeholder color when the condition is met */ +/* #searchQ.darker-placeholder::placeholder { + color: #3c3c3c; +} */ + +.searchControls { + margin-left: 10px; + right: 10px; + display: flex; + align-items: center; + height: 100%; +} + +/* --------- .micIcon------------- */ + +.micIcon { + width: 40px; + height: 40px; + margin-right: 10px; + display: flex; + align-items: center; + position: relative; + justify-content: center; + color: var(--darkColor-blue); + cursor: pointer; + border-radius: 50%; + padding: 3px; + box-sizing: border-box; + background-color: var(--whitishColor-blue); + /* transition: all 0.5s; */ + border: 2px solid transparent; +} + +.theme-transition .micIcon { + transition: all 0.5s; } +.micIcon::after { + content: ""; + position: absolute; + width: 40px; + height: 40px; + border-radius: 100%; + border: 2px solid transparent; + top: -4px; + left: -4px; +} + +.micActive::after, +.micIcon:hover::after { + border-left: 2px dotted var(--darkColor-blue); + border-right: 2px solid var(--darkColor-blue); + border-top: 2px dashed var(--darkerColor-blue); + border-bottom: 2px dashed var(--darkerColor-blue); + animation: micAnimation 1s ease-in-out infinite; + transition: all 0.5s; +} + +.micIcon:hover { + background-color: #fffffff2; +} + +@keyframes micAnimation { + 0% { + transform: rotate(0deg); + } + + 37% { + transform: rotate(-20deg); + } + + 69% { + transform: rotate(20deg); + } + + 100% { + transform: rotate(0deg); + } +} + +/* ---------End of .micIcon------------- */ .enterBtn { - position: absolute; right: 10px; top: 0; bottom: 0; @@ -618,938 +1653,1197 @@ md-outlined-button { height: 40px; padding: 0 26px; font-size: 1.1rem; + margin-left: 0.5rem; } - -.spacer { - height: 50px; /* Adjust this value to create space */ +#enterBtn:hover { + background-color: var(--darkColor-blue); + color: #fff; + cursor: pointer; } - -/* ________________End of Searchbar______________________ */ -.searchIcon { - position: absolute; - margin-top: 14px; - margin-left: 14px; +#enterBtn:active { + transform: scale(0.9); } -.searchEnginesContainer .search-engine { - /* background-color: var(--accentLightTint-blue); */ - border-radius: 20px; - height: 40px; - display: flex; - align-items: center; - justify-content: center; - position: relative; + +.theme-transition #enterBtn { + transition: all 0.3s; } +/* ________________End of Searchbar______________________ */ .searchWithCont { - margin-top: var(--gap); - border-radius: var(--round); - position: relative; - display: flex; - font-size: 1rem; + margin-top: var(--gap); + border-radius: var(--round); + position: relative; + display: flex; + font-size: 1rem; } .searchWithCont .hint { - /* background-color: var(--accentLightTint-blue); */ - width: 200px; - height: 100px; - display: flex; - align-items: center; - justify-content: center; - padding: 10px; - position: relative; - margin-right: 16px; - border-radius: var(--round); + /* background-color: var(--accentLightTint-blue); */ + width: 200px; + height: 100px; + display: flex; + align-items: center; + justify-content: center; + padding: 10px; + position: relative; + margin-right: 16px; + border-radius: var(--round); } .searchWithCont .hint::after { - content: ""; - position: absolute; - width: 6px; - height: 100%; - background-color: var(--accentLightTint-blue); - border-radius: 3px; - right: -20px; + content: ""; + position: absolute; + width: 6px; + height: 100%; + background-color: var(--accentLightTint-blue); + border-radius: 3px; + right: -20px; } .searchEnginesContainer { - display: flex; - flex-wrap: wrap; - padding-left: 20px; - gap: 5px; + display: flex; + flex-wrap: wrap; + gap: 20px; + padding-left: 20px; } -/* ----------Shortcuts----------------- */ -#shortcuts-section { - pointer-events: none; - display: flex; - justify-content: center; - width: 100%; - height: calc(var(--shortcut-size) + var(--gap) * 2); - position: fixed; - left: 0; - right: 0; - bottom: 0; - margin: auto; +.searchEnginesContainer .search-engine { + /* background-color: var(--accentLightTint-blue); */ + border-radius: 20px; + height: 40px; + display: flex; + align-items: center; + justify-content: center; + position: relative; + cursor: pointer; } -#shortcuts-section .unfoldContainer { - transition: transform 0.5s; - position: absolute; - width: 100%; - top: 0; - display: flex; - justify-content: center; +.searchEnginesContainer .search-engine svg{ + width: 30px; + height: 30px; + background-color: var(--darkColor-blue); + border-radius: 100%; + margin-left: 4px; + padding: 3px; } -#shortcuts-section #unfoldShortcutsBtn { - display: none; - pointer-events: auto; - fill: var(--textColorDark-blue); - background: none; - border: none; - cursor: pointer; - z-index: 1; - transition: 0.2s all; - transform-origin: 50% 25%; +.searchEnginesContainer .search-engine label { + margin: 0 16px 0 10px; + cursor: pointer; +} + +/* -----------Radio Button Customizing------------ */ +.search-engine input[type="radio"] { + appearance: none; + -webkit-appearance: none; + -moz-appearance: none; + background-color: var(--whitishColor-blue); + width: 22px; + height: 22px; + border-radius: 50%; + border: 2px solid var(--whitishColor-blue); + outline: none; + margin-right: 8px; + cursor: pointer; + /* transition: 0.2s; */ +} + +.search-engine input[type="radio"]:checked { + background-color: var(--darkColor-blue); +} + +.theme-transition .search-engine input[type="radio"] { + transition: 0.2s; +} + +/* -----------end of Radio Button Customizing------------ */ + +/* ----------Shortcuts----------------- */ + +#shortcuts-section { + pointer-events: none; + display: flex; + justify-content: center; + width: 100%; + height: calc(var(--shortcut-size) + var(--gap) * 2); + position: absolute; + /* background: gold; */ + left: 0; + right: 0; + bottom: 0; + margin: auto; } #shortcuts-section .wrapper { - position: relative; - height: fit-content; - display: inline-flex; /* make sure elements are next to each other */ - align-items: stretch; /* make sure both elements grow to the same height */ - width: fit-content; + position: relative; + height: fit-content; + display: inline-flex; + /* make sure elements are next to each other */ + align-items: stretch; + /* make sure both elements grow to the same height */ + width: fit-content; } /* Invisible element tracking height changes */ #shortcuts-section #flexMonitor { - position: absolute; - height: 100%; /* This will match the height of .shortcutsContainer, which it is supposed to monitor */ - visibility: hidden; - } + position: absolute; + height: 100%; + /* This will match the height of .shortcutsContainer, which it is supposed to monitor */ + visibility: hidden; +} /* Invisible element to get standard height */ #shortcuts-section #defaultMonitor { - position: absolute; - /* This is the standard height of one row */ - height: calc(var(--shortcut-size) + var(--gap) + var(--shortcut-bar-gap-and-padding)); - visibility: hidden; - } + position: absolute; + /* This is the standard height of one row */ + height: calc( + var(--shortcut-size) + var(--gap) + var(--shortcut-bar-gap-and-padding) + ); + visibility: hidden; +} .shortcutsContainer { - pointer-events: auto; - transition: transform 0.5s; - margin-top: calc(var(--gap) - var(--shortcut-bar-gap-and-padding)); - max-width: calc( - var(--max-shortcut-bar-width) - - mod( - var(--max-shortcut-bar-width) - var(--shortcut-bar-gap-and-padding), - var(--shortcut-size) + var(--shortcut-bar-gap-and-padding) - ) - ); - display: flex; - flex-wrap: wrap; - padding: var(--shortcut-bar-gap-and-padding); - justify-content: left; - width: fit-content; - gap: var(--gap) var(--shortcut-bar-gap-and-padding); + pointer-events: auto; + transition: transform 0.5s; + margin-top: calc(var(--gap) - var(--shortcut-bar-gap-and-padding)); + max-width: calc( + var(--max-shortcut-bar-width) - + mod( + var(--max-shortcut-bar-width) - var(--shortcut-bar-gap-and-padding), + var(--shortcut-size) + var(--shortcut-bar-gap-and-padding) + ) + ); + display: flex; + flex-wrap: wrap; + padding: var(--shortcut-bar-gap-and-padding); + justify-content: center; + width: fit-content; + /* gap: var(--gap) var(--shortcut-bar-gap-and-padding); */ + gap: 26px; } .shortcutsContainer::before { - border-radius: 34px; - content: ''; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: var(--accentLightTint-blue); - z-index: -1; - opacity: var(--always-show-dock-background); - transition: opacity 0.5s; - pointer-events: none; + border-radius: 34px; + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: var(--accentLightTint-blue); + z-index: -1; + opacity: var(--always-show-dock-background); + transition: opacity 0.5s; + pointer-events: none; } .shortcutsContainer.showBackground::before { - opacity: 1; + opacity: 1; } .shortcutsContainer .shortcuts { - position: relative; - transition: all 0.3s; + position: relative; + transition: all 0.3s; + isolation: isolate; } .shortcutsContainer .shortcuts:hover { - transform: translateY(-10px) scale(1.06); - box-shadow: 0 5px 10px var(--accentLightTint-blue); - border-radius: 100px; + transform: translateY(-10px) scale(1.03); + /* box-shadow: 0 5px 10px var(--accentLightTint-blue); */ + border-radius: 100px; } .shortcuts .shortcut-name { - visibility: hidden; - position: absolute; - bottom: -30px; - right: 0; - left: 50%; - transform: translateX(-50%); - /* Center horizontally */ - margin: auto; - /* background-color: #000000d7; */ - width: fit-content; - text-align: center; - color: var(--textColorDark-blue); - opacity: 0; - transition: all 0.3s; - font-size: 1rem; - white-space: nowrap; + visibility: hidden; + position: absolute; + bottom: -30px; + right: 0; + left: 50%; + transform: translateX(-50%); + /* Center horizontally */ + margin: auto; + width: fit-content; + text-align: center; + color: var(--textColorDark-blue); + opacity: 0; + transition: all 0.3s; + font-size: 1rem; + white-space: nowrap; } .shortcuts:hover .shortcut-name { - visibility: visible; - opacity: 1; + visibility: visible; + opacity: 1; } .shortcutsContainer .shortcuts a { - border-radius: 100px; - display: block; - height: var(--shortcut-size); - width: var(--shortcut-size); + border-radius: 100px; + display: block; + height: var(--shortcut-size); + width: var(--shortcut-size); } .shortcutsContainer .shortcuts a:has(svg) { - background-color: var(--accentLightTint-blue); + background: radial-gradient(var(--accentLightTint-blue) 66%, transparent 66%); } .shortcutsContainer .shortcuts a:has(img) { - background-color: var(--darkColor-blue); + background-color: var(--darkColor-blue); } .shortcutsContainer .shortcuts a svg { - height: 100%; - width: 100%; + height: 100%; + width: 100%; } .shortcutsContainer .shortcuts .shortcutLogoContainer { - border-radius: 50%; - display: flex; - justify-content: center; - align-items: center; - height: 100%; - width: 100%; + border-radius: 50%; + display: flex; + justify-content: center; + align-items: center; + height: 100%; + width: 100%; } .shortcutsContainer .shortcuts .shortcutLogoContainer img { - height: 100%; - width: 100%; - border-radius: 100%; + height: 100%; + width: 100%; + border-radius: 100%; } - /* ----------end of Shortcuts----------------- */ /* -----------Ai-Tools----------------- */ .aiToolsCont { - height: 50px; - width: fit-content; - /* background-color: yellow; */ - overflow-x: hidden; - border-radius: 100px; - position: absolute; - left: var(--gap); - bottom: var(--gap); - margin: auto; - display: flex; + height: 50px; + width: fit-content; + /* background-color: yellow; */ + overflow-x: hidden; + border-radius: 100px; + position: fixed; + left: var(--gap); + bottom: var(--gap); + margin: auto; + display: flex; + + max-width: calc(100% - 140px); + overflow-x: scroll; + overflow-y: hidden; + scrollbar-width: none; /* Firefox */ + -ms-overflow-style: none; /* IE and Edge */ +} +.aiToolsCont::-webkit-scrollbar { + display: none; /* Chrome, Safari, Edge, Opera */ } - -.aiToolsCont .hangno { - background-color: var(--accentLightTint-blue); - height: 100%; - display: flex; - align-items: center; - justify-content: center; - padding: 0 16px; - border-radius: 100px; - z-index: 2; + +.aiToolsCont .hangno { + background-color: var(--accentLightTint-blue); + height: 100%; + /* width: 131px; */ + display: flex; + align-items: center; + justify-content: center; + padding: 0 16px; + border-radius: 100px; + z-index: 2; + cursor: pointer; } .aiToolsCont .hangno .icon { - width: 26px; - height: 26px; - margin-right: 12px; + width: 26px; + height: 26px; + margin-right: 12px; } .aiToolsCont .hangno .label { - font-size: 1rem; - color: var(--textColorDark-blue); - cursor: default; + font-size: 1rem; + color: var(--textColorDark-blue); + cursor: pointer; + width: fit-content; + min-width: 61px; /* 61px is working fine for english lang */ } .aiToolsCont .toolsCont { - /* display: flex; */ - display: none; - /* background-color: orange; */ - position: relative; - margin-left: 30px; - transition: all 500ms; - gap: 0; - transform-origin: left; - transform: scale(0.5) translateX(-70px); - opacity: 0.2; + /* display: flex; */ + display: none; + /* background-color: orange; */ + position: relative; + margin-left: 30px; + transition: all 500ms; + gap: 0; + transform-origin: left; + transform: scale(0.5) translateX(-70px); + opacity: 0.2; } .aiToolsCont .toolsCont::before { - content: ""; - position: absolute; - height: 100%; - width: 6px; - background-color: var(--accentLightTint-blue); - border-radius: 6px; - left: -18px; + content: ""; + position: absolute; + height: 100%; + width: 6px; + background-color: var(--accentLightTint-blue); + border-radius: 6px; + left: -18px; +} +#firefly{ + width: 103px; } .aiToolsCont .toolsCont a { - background-color: var(--accentLightTint-blue); - height: 100%; - display: flex; - align-items: center; - justify-content: center; - padding: 0 16px; - border-radius: 100px; - text-decoration: none; - color: var(--textColorDark-blue); - font-size: 1rem; + background-color: var(--accentLightTint-blue); + height: 100%; + display: flex; + align-items: center; + justify-content: center; + padding: 0 16px; + border-radius: 100px; + text-decoration: none; + color: var(--textColorDark-blue); + font-size: 1rem; + transition: all 0.3s ease; } -.aiToolsCont .toolsCont .tIcon { - width: 26px; - height: 26px; - /* background-color: turquoise; */ - margin-right: 12px; +.aiToolsCont .toolsCont a:hover { + background-color: var(--bg-color-blue); + box-shadow: inset 0 0 0 1px var(--darkColor-blue); } +.aiToolsCont .toolsCont .tIcon { + width: 26px; + height: 26px; + /* background-color: turquoise; */ + margin-right: 12px; +} /* -----------End of Ai-Tools---------- */ - /* -------media query ------------------- */ @media screen and (max-width: 1400px) { - .leftDiv { - transform: translateX(-50px); - } + .leftDiv { + transform: translateX(-50px); + } - .rightDiv { - transform: translateX(50px); - } + .rightDiv { + transform: translateX(50px); + } } @media screen and (max-width: 1200px) { - body { - display: block; - } - - .centerDiv { - /* display: grid; */ - grid-template-columns: auto; - /* width: fit-content; */ - /* height: 500px; */ - /* background-color: orange; */ - position: absolute; - left: 0; - right: 0; - margin: var(--gap) auto auto; - } - - .leftDiv { - transform: translateX(0px); - /* background-color: green; */ - margin-bottom: var(--gap); - } - - .rightDiv { - /* position: relative; + body { + display: block; + } + + .shortcutsContainer { + margin-top: 210px; + } + + .centerDiv { + /* display: grid; */ + grid-template-columns: auto; + /* width: fit-content; */ + /* height: 500px; */ + /* background-color: orange; */ + position: absolute; + left: 0; + right: 0; + margin: var(--gap) auto auto; + } + + .leftDiv { + transform: translateX(0px); + /* background-color: green; */ + margin-bottom: var(--gap); + } + + .rightDiv { + /* position: relative; width: 640px; */ - transform: translateX(0px); - /* background-color: rgba(0, 0, 255, 0.159); */ - } - - .ttteexxtt { - /* background-color: yellow; */ - height: fit-content; - width: fit-content; - bottom: 0; - top: 0; - left: 300px; - /*Because Clock width is 300px*/ - margin: auto auto auto var(--gap); - - } + transform: translateX(0px); + /* background-color: rgba(0, 0, 255, 0.159); */ + } + + .ttteexxtt { + /* background-color: yellow; */ + height: fit-content; + width: fit-content; + bottom: 0; + top: 0; + left: 300px; + /*Because Clock width is 300px*/ + margin: auto auto auto var(--gap); + } } /* ---------------Menu-bar-css---------------- */ .menuBar { - background-color: #0000004f; - backdrop-filter: blur(15px) saturate(170%); - position: fixed; - width: 100%; - height: 100%; - z-index: 9999; - opacity: 0; - /*we are increasing opacity in js file*/ - transition: all 0.5s; - overflow: hidden; + background-color: #0000004f; + backdrop-filter: blur(15px) saturate(160%); + position: fixed; + width: 100%; + height: 100%; + z-index: 9999; + opacity: 0; + /*we are increasing opacity in js file*/ + transition: all 0.5s; + overflow: hidden; } .menuBar .menuCont { - position: absolute; - right: 0; - height: 100%; - width: 400px; - transition: all 0.5s; - transform: translateX(100%); - background-color: var(--accentLightTint-blue); - border-bottom-left-radius: var(--round); + position: absolute; + right: 0; + height: 100%; + width: 400px; + /* change on some languages for fix the buttons */ + transition: all 0.5s; + transform: translateX(100%); + background-color: var(--accentLightTint-blue); + border-bottom-left-radius: var(--round); } .menuBar .menuCont .topRounder { - width: var(--round); - /*30px*/ - height: var(--round); - /* background-color: #17a638; */ - position: absolute; - left: -30px; - /* transform: translateX(-100%); */ + width: var(--round); + /*30px*/ + height: var(--round); + /* background-color: #17a638; */ + position: absolute; + left: -30px; + /* transform: translateX(-100%); */ } .menuCont .topDiv { - width: 100%; - height: 100px; - /*🚦🛺 🚜*/ - background-color: var(--bg-color-blue); - position: relative; + width: 100%; + height: 100px; + /*🚦🛺 🚜*/ + background-color: var(--bg-color-blue); + position: relative; } .menuCont .topDiv::after { - position: absolute; - content: ""; - width: 100%; - height: var(--gap); - background-color: var(--accentLightTint-blue); - border-top-left-radius: var(--round); - border-top-right-radius: var(--round); - bottom: 0; + position: absolute; + content: ""; + width: 100%; + height: var(--gap); + background-color: var(--accentLightTint-blue); + border-top-left-radius: var(--round); + border-top-right-radius: var(--round); + bottom: 0; } .menuCont .topDiv h1 { - font-size: 1.6rem; - /* background-color: yellow; */ - width: fit-content; - height: fit-content; - color: var(--textColorDark-blue); - position: absolute; - left: 0; - right: 0; - top: 0; - bottom: 0; - margin: auto; - transform: translateY(-50%); + font-size: 1.6rem; + /* background-color: yellow; */ + width: fit-content; + height: fit-content; + color: var(--textColorDark-blue); + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: auto; + transform: translateY(-39%); } .menuCont .optCont { - width: 100%; - height: calc(100% - 140px); - /*for this 👁️ look above at🚦🛺 🚜*/ - /* background-color: oldlace; */ - transition: all 0.6s; - transform: translateX(100%); - opacity: 0; - overflow-y: auto; /* Allow vertical scrolling only */ - overflow-x: hidden; /* Hide horizontal overflow */ + width: 100%; + height: calc(100% - 140px); + /*for this 👁️ look above at🚦🛺 🚜*/ + /* background-color: oldlace; */ + transition: all 0.6s; + transform: translateX(100%); + opacity: 0; + overflow-y: scroll; + /* Allow vertical scrolling only */ + overflow-x: hidden; + /* Hide horizontal overflow */ } .menuCont .optCont .page { - width: 100%; - padding: 0 var(--gap) var(--gap) var(--gap); - position: absolute; - transition: all 0.6s; + width: 100%; + padding: 0 var(--gap) var(--gap) var(--gap); + position: absolute; + transition: all 0.6s; } /* -----------Scrollbar for menu---------------- */ /* For WebKit browsers (Chrome, Safari) */ .menuCont .optCont::-webkit-scrollbar { - width: 2px; - /* Width of the scrollbar */ + width: 6px; + /* Width of the scrollbar */ } /* Track */ .menuCont .optCont::-webkit-scrollbar-track { - background: transparent; - /* Background of the track */ + background: transparent; + /* Background of the track */ } /* Handle */ .menuCont .optCont::-webkit-scrollbar-thumb { - background: var(--darkColor-blue); - /* Color of the scrollbar handle */ - border-radius: 2px; - /* Rounded corners for the scrollbar handle */ + background: var(--darkColor-blue); + /* Color of the scrollbar handle */ + border-radius: 3px; + /* Rounded corners for the scrollbar handle */ +} + +.menuCont .optCont::-webkit-scrollbar-thumb:hover { + background: var(--darkerColor-blue); + border-radius: 3px; } /* For Firefox */ -.menuCont .optCont { - scrollbar-width: thin; - /* Makes the scrollbar thin */ - scrollbar-color: var(--darkColor-blue) transparent; - /* Handle color and track color */ +@-moz-document url-prefix() { + .menuCont .optCont { + scrollbar-width: thin; + scrollbar-color: var(--darkColor-blue) transparent; + /* Handle color and track color */ + } } /* -------------End of Scrollbar for menu-------------- */ - .menuBar .optCont .tilesCont { - width: 100%; - /* height: 50px; */ - /* background-color: #17a638; */ - display: grid; - grid-template-columns: 1fr 1fr; - gap: var(--gap); + width: 100%; + height: 50px; + /* background-color: #17a638; */ + display: grid; + grid-template-columns: 1fr 1fr; + gap: var(--gap); } .tilesCont .tiles { - background-color: var(--darkColor-blue); - border-radius: 20px; - font-size: 1rem; - color: var(--accentLightTint-blue); - display: flex; - align-items: center; - text-decoration: none; + background-color: var(--darkColor-blue); + border-radius: 20px; + font-size: 1rem; + color: var(--accentLightTint-blue); + display: flex; + align-items: center; + text-decoration: none; + transition: background-color 0.3s ease; +} + +.tilesCont .tiles:hover { + background-color: var(--darkerColor-blue); } .tilesCont .tiles .icon { - width: 24px; - height: 24px; - margin-left: 13px; - margin-right: 13px; + width: 24px; + height: 24px; + margin-left: 13px; + margin-right: 13px; } .divider { - height: 6px; - width: 100px; - background-color: #fff; - border-radius: 3px; - margin: 20px auto; + height: 6px; + width: 100px; + background-color: #fff; + border-radius: 3px; + margin: 20px auto; } /* --- 🔴⚪🟡style for toggle buttons---- */ .switch { - position: relative; - display: inline-block; - width: 60px; - height: 34px; + position: relative; + display: inline-block; + min-width: 60px; + height: 34px; + margin-left: 8px; } /* Hide the default checkbox input */ .switch input { - display: none; + display: none; } /* Styling for the slider */ .toggle { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: var(--bg-color-blue); - /* Background color when off */ - transition: 0.4s; - border-radius: 34px; + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: var(--bg-color-blue); + /* Background color when off */ + transition: 0.4s; + border-radius: 34px; } /* Styling for the slider when it's in the "on" position */ .toggle:before { - position: absolute; - content: ""; - height: 26px; - width: 26px; - left: 4px; - bottom: 4px; - background-color: var(--accentLightTint-blue); - /* Slider color when on */ - transition: 0.4s; - border-radius: 50%; - + position: absolute; + content: ""; + height: 26px; + width: 26px; + left: 4px; + bottom: 4px; + background-color: var(--accentLightTint-blue); + /* Slider color when on */ + transition: 0.4s; + border-radius: 50%; } #shortcutEditButton { - fill: var(--textColorDark-blue); - display: flex; - align-items: center; - justify-content: center; - border: none; - border-radius: 34px; - cursor: pointer; - transition: 0.3s all; - margin: 0 auto; - background: none; - height: 100%; - width: 100%; + fill: var(--darkerColor-blue); + display: flex; + align-items: center; + justify-content: center; + border: none; + border-radius: 34px; + cursor: pointer; + transition: 0.3s all; + margin: 0 auto; + background: none; + height: 100%; + width: 100%; } .toggleTextsCont .ttcont.inactive { - opacity: 0.5; - pointer-events: none; + opacity: 0.5; + pointer-events: none; } /* Apply styles when the input is checked (on) */ input:checked + .toggle { - background-color: var(--darkColor-blue); - /* Background color when on */ + background-color: var(--darkColor-blue); + /* Background color when on */ } input:checked + .toggle:before { - transform: translateX(26px); + transform: translateX(26px); +} +md-outlined-text-field#userproxy { + width: -webkit-fill-available; + background-color: var(--acentLightTint-blue); + font-family: var(--main-font-family); + color: var(--textColorDark-blue); +} +md-outlined-text-field#userLoc { + width: -webkit-fill-available; + background-color: var(--acentLightTint-blue); + font-family: var(--main-font-family); + color: var(--textColorDark-blue); +} +md-outlined-text-field#userAPI { + width: -webkit-fill-available; + background-color: var(--acentLightTint-blue); + font-family: var(--main-font-family); + color: var(--textColorDark-blue); } - /* --- END OF 🔴⚪🟡style for toggle buttons---- */ .toggleTextsCont .ttcont { - display: flex; - height: 50px; - justify-content: space-between; - align-items: center; - margin-bottom: 20px; + display: flex; + height: 50px; + justify-content: space-between; + align-items: center; + margin-bottom: 20px; } .unflex { - display: block !important; + display: block !important; } .ttcont input { - width: 100%; - margin-top: 6px; - height: 30px; - border-radius: 10px; - border: none; - outline: none; - padding: 0 11px; + width: 100%; + margin-top: 6px; + height: 30px; + border-radius: 10px; + border: none; + outline: none; + padding: 0 11px; } .ttcont .texts .bigText { - font-size: 1.2rem; - color: var(--textColorDark-blue); + font-size: 1.2rem; + color: var(--textColorDark-blue); } .ttcont .texts .infoText { - font-size: 0.9rem; - color: var(--textColorDark-blue); - opacity: 0.86; - margin-top: -3px; + font-size: 0.9rem; + color: var(--textColorDark-blue); + opacity: 0.86; + margin-top: -3px; } .bottom { - /* background-color: #17a638; */ - display: flex; - justify-content: space-between; - margin-top: 12px; + /* background-color: #17a638; */ + display: flex; + justify-content: space-between; + margin-top: 12px; } .bottom a { - text-decoration: none; - color: var(--darkColor-blue); - font-size: 1rem; + text-decoration: none; + color: var(--darkColor-blue); + font-size: 1rem; + transition: color 0.3s ease; +} + +.bottom a:hover { + color: var(--darkerColor-blue); } .bottom button { - border: none; - color: #fff; - background-color: var(--darkColor-blue); - padding: 6px 20px; - font-size: 1rem; - border-radius: 100px; - cursor: pointer; + border: none; + color: #fff; + background-color: var(--darkColor-blue); + padding: 6px 20px; + font-size: 1rem; + border-radius: 100px; + cursor: pointer; } + .resetbtn { - width: -webkit-fill-available; - border: none; - color: #fff; - background-color: var(--darkColor-blue); - padding: 6px 20px; - font-size: 1rem; - border-radius: 100px; - cursor: pointer; + width: -webkit-fill-available; + width: -moz-available; + border: none; + color: #fff; + background-color: var(--darkColor-blue); + padding: 6px 20px; + font-size: 1rem; + border-radius: 100px; + cursor: pointer; + transition: background-color 0.3s ease; +} + +.resetbtn:hover { + background-color: var(--darkerColor-blue); +} + +.resetbtn:active { + background-color: var(--bg-color-blue); + color: var(--darkerColor-blue); } + .topBar { - display: flex; - justify-content: space-between; - align-items: center; - height: 60px; - position: sticky; - top: 0; - left: 0; - right: 0; - z-index: 1000; - background-color: var(--accentLightTint-blue); + display: flex; + justify-content: space-between; + align-items: center; + height: 50px; + position: sticky; + top: 0; + left: 0; + right: 0; + z-index: 1000; + background-color: var(--accentLightTint-blue); } #backButton { - fill: var(--textColorDark-blue); - border: none; - background: none; - cursor: pointer; + fill: var(--textColorDark-blue); + border: none; + background: none; + cursor: pointer; } .rightButtons { - display: flex; - gap: 24px; + display: flex; + gap: 24px; +} + +#newShortcutButton svg { + transition: transform 0.3s ease; +} + +#newShortcutButton:active svg { + transform: scale(1.2); +} + +.rotateResetButton { + transform: rotate(-360deg); + transition: transform 0.3s ease; } #resetButton, #newShortcutButton { - fill: var(--textColorDark-blue); - border: none; - background: none; - cursor: pointer; + fill: var(--textColorDark-blue); + border: none; + background: none; + cursor: pointer; } #newShortcutButton.inactive { - opacity: 0.5; - pointer-events: none; + opacity: 0.5; + pointer-events: none; } .pageTitle { - margin: var(--gap) 0; - width: 100%; - font-size: 1.8rem; - color: var(--textColorDark-blue); + margin-top: 10px; + width: 100%; + font-size: 1.6rem; + color: var(--textColorDark-blue); +} + +#editShortcutsListInfo { + font-size: 0.8rem; + margin-top: 5px; + margin-bottom: var(--gap); + text-align: justify; } .shortcutSettingsEntry { - width: 100%; - display: flex; - height: 50px; - justify-content: space-between; - align-items: center; - margin-bottom: 20px; + width: 100%; + display: flex; + height: 50px; + justify-content: space-between; + align-items: center; + margin-bottom: 20px; } .shortcutSettingsEntry input { - width: calc(100% - var(--gap)); - background: none; - border: none; + width: calc(100% - var(--gap)); + background: none; + border: none; } .shortcutSettingsEntry .shortcutName { - font-size: 1.2rem; - color: var(--textColorDark-blue); - text-overflow: ellipsis; + font-size: 1.2rem; + color: var(--textColorDark-blue); + text-overflow: ellipsis; } .shortcutSettingsEntry .URL { - font-size: 0.9rem; - color: var(--textColorDark-blue); - opacity: 0.86; - margin-top: -3px; - text-overflow: ellipsis; + font-size: 0.9rem; + color: var(--textColorDark-blue); + opacity: 0.86; + margin-top: -3px; + text-overflow: ellipsis; } .delete button { - fill: var(--textColorDark-blue); - display: flex; - align-items: center; - justify-content: center; - width: 60px; - height: 34px; - background: var(--bg-color-blue); - border: none; - border-radius: 34px; - cursor: pointer; - transition: 0.3s all; + fill: var(--textColorDark-blue); + display: flex; + align-items: center; + justify-content: center; + width: 60px; + height: 34px; + background: var(--bg-color-blue); + border: none; + border-radius: 34px; + cursor: pointer; + transition: 0.3s all; } .delete button:hover { - fill: white; - background: var(--darkColor-blue); + fill: white; + background: var(--darkColor-blue); } .delete button.inactive { - opacity: 0.5; - pointer-events: none; + opacity: 0.5; + pointer-events: none; } .addShortcutContainer button { - fill: white; - background: var(--darkColor-blue); - position: absolute; - display: flex; - align-items: center; - justify-content: center; - width: 60px; - height: 34px; - border: none; - border-radius: 34px; - cursor: pointer; - transition: 0.3s all; + fill: white; + background: var(--darkColor-blue); + position: absolute; + display: flex; + align-items: center; + justify-content: center; + width: 60px; + height: 34px; + border: none; + border-radius: 34px; + cursor: pointer; + transition: 0.3s all; +} + +/* Placeholder InputText color*/ +#userproxy { + color: var(--textColorDark-blue); + background-color: var(--whitishColor-blue); +} + +#userLoc { + color: var(--textColorDark-blue); + background-color: var(--whitishColor-blue); +} + +#userAPI { + color: var(--textColorDark-blue); + background-color: var(--whitishColor-blue); } /* ---------------Menu-bar-css---------------- */ /* --------------Theming stuff------------------ */ -.themingStuff, .languageSection { - width: 100%; - height: 50px; - display: flex; - /* align-items: center; */ - justify-content: space-between; - gap: var(--gap); - /* background-color: yellow; */ +.themingStuff{ + margin-top: 11px; + position: relative; + width: 100%; + height: 50px; + display: flex; + justify-content: space-between; + gap: var(--gap); } -.userTextt{ - display: none; + +.languageSection { + width: 100%; + height: 50px; + display: flex; + justify-content: space-between; + gap: var(--gap); + margin-top: 30px; } + .languageSelector { - background-color: #ffffffe8; - align-items: center; - justify-content: center; - height: fit-content; - /* width: 80%; */ - width: 240px; - border: 2px solid transparent; /* adding transparent border on focus it will be turned to theme color*/ - display: grid; - grid-template-columns: repeat(5, 1fr); - /* 5 divs in the first row */ - grid-auto-rows: auto; - grid-gap: 10px; - padding: 12px; - color: var(--textColorDark-blue); - /* padding-right: 0px; */ - border-radius: 26px; - appearance: none; /* Remove default browser styles */ - -webkit-appearance: none; /* For Safari */ - -moz-appearance: none; /* For Firefox */ - cursor: pointer; - padding-left: 13px; + background-color: var(--whitishColor-blue); + align-items: center; + justify-content: center; + height: fit-content; + /* width: 80%; */ + width: 240px; + border: 2px solid transparent; + /* adding transparent border on focus it will be turned to theme color*/ + display: grid; + grid-template-columns: repeat(5, 1fr); + /* 5 divs in the first row */ + grid-auto-rows: auto; + grid-gap: 10px; + padding: 12px; + color: var(--textColorDark-blue); + /* padding-right: 0px; */ + border-radius: 26px; + appearance: none; + /* Remove default browser styles */ + -webkit-appearance: none; + /* For Safari */ + -moz-appearance: none; + /* For Firefox */ + cursor: pointer; + padding-left: 13px; + + @-moz-document url-prefix() { + /* Scrollbar styles for Firefox */ + scrollbar-width: thin; + scrollbar-color: var(--darkColor-blue) transparent; + } +} + +/* Scrollbar styles for Chrome, Edge, Safari */ +.languageSelector::-webkit-scrollbar { + width: 6px; +} + +.languageSelector::-webkit-scrollbar-track { + background-color: transparent; +} + +.languageSelector::-webkit-scrollbar-thumb { + background-color: var(--bg-color-blue); + border-radius: 3px; } .languageSelector:focus { - border: 2px solid var(--darkColor-blue); /* color matching border on focus */ - outline: none; /* Removes the default outline */ + border: 2px solid var(--darkColor-blue); + /* color matching border on focus */ + outline: none; + /* Removes the default outline */ } .colorsContainer { - background-color: #ffffffe8; - align-items: center; - justify-content: center; - height: fit-content; - width: fit-content; - - display: grid; - grid-template-columns: repeat(5, 1fr); - /* 5 divs in the first row */ - grid-auto-rows: auto; - grid-gap: 10px; - padding: 10px; - /* padding-right: 0px; */ - border-radius: 26px; - - + background-color: var(--whitishColor-blue); + align-items: center; + justify-content: center; + height: fit-content; + width: -webkit-fill-available; + + display: initial; + grid-template-columns: repeat(5, 1fr); + /* 5 divs in the first row */ + grid-auto-rows: auto; + grid-gap: 10px; + padding: 10px; + /* padding-right: 0px; */ + border-radius: 26px; } .colorsContainer input[type="radio"] { - appearance: none; - -webkit-appearance: none; - -moz-appearance: none; - background-color: #fff; - height: 36px; - width: 36px; - border-radius: 18px; - outline: none; - /* margin-right: 10px; */ - cursor: pointer; + appearance: none; + -webkit-appearance: none; + -moz-appearance: none; + background-color: #fff; + height: 36px; + width: 36px; + border-radius: 18px; + outline: none; + /* margin-right: 10px; */ + cursor: pointer; } .colorsContainer input[value="blue"] { - background-color: #4382EC; + background-color: #4382ec; } .colorsContainer input[value="yellow"] { - background-color: #f3f05a; + background-color: #ffcc00; } .colorsContainer input[value="red"] { - background-color: #f91d1d; + background-color: #ec4343; } .colorsContainer input[value="green"] { - background-color: #17a638; + background-color: #5cba5c; } .colorsContainer input[value="cyan"] { - background-color: #2acdf5; + background-color: #00ced1; } .colorsContainer input[value="orange"] { - background-color: orange; + background-color: #ec844d; } .colorsContainer input[value="purple"] { - background-color: #b830de; + background-color: #9563b5; } .colorsContainer input[value="pink"] { - background-color: #e41b9e; + background-color: #ec5e78; +} + +.colorsContainer input[value="brown"] { + background-color: #705347; +} + +.colorsContainer input[value="silver"] { + background-color: #9e9e9e; +} + +.colorsContainer input[value="grey"] { + background: linear-gradient(45deg,#bb4dee, #f8b880); } .colorsContainer input[value="dark"] { - background-color: #282828; + background-color: #171717; } .colorsContainer input[type="radio"]:checked::after { - position: absolute; - content: ""; - width: 36px; - height: 36px; - background: url("./tick.svg") center center no-repeat; - background-size: 74%; + position: absolute; + content: ""; + width: 36px; + height: 36px; + background: url("./svgs/tick.svg") center center no-repeat; + background-size: 74%; } .themingStuff .btn { - display: flex; - justify-content: center; - align-items: center; - background-color: rgba(255, 255, 255, 0.9098039216); - height: 100%; - aspect-ratio: 1 / 1; - right: 0; - border-radius: 100%; - z-index: 2; - cursor: pointer; + background-color: var(--whitishColor-blue); + height: 100%; + aspect-ratio: 1/1; + right: 0; + border-radius: 100%; + z-index: 2; } - .languageIcon { - background-color: #ffffffe8; + background-color: var(--whitishColor-blue); + height: 100%; + aspect-ratio: 1/1; + right: 0; + border-radius: 100%; + z-index: 2; + display: flex; + justify-content: center; + align-items: center; + margin-top: 4.5px; +} + +/* Upload/Clear Buttons */ +.uploadClearContainer { + //display: flex; + margin-top: 124px; + justify-content: space-between; + gap: 10px; +} + +/* --------- Styling for Upload/Random/Clear Buttons --------- */ +.uploadButton { + width: 245px; +} + + +/* File input remains hidden */ +#imageUpload { + display: none; +} + +/* --------- Style for Backup and Restore buttons --------- */ +.backupRestoreContainer { + width: 100%; + height: 38px; + margin-top: 33px; + margin-left: -10px; + display: grid; + grid-template-columns: 1fr 1fr; + gap: 15px; +} + +.backupRestoreBtn { + display: flex; + align-items: center; + justify-content: center; + gap: 9px; + font-size: 0.9rem; + cursor: pointer; + border: none; + background-color: var(--bg-color-blue); + color: var(--darkerColor-blue); + border-radius: 20px; + transition: background-color 0.3s ease; +} + +.backupRestoreBtn:hover { + background-color: var(--darkColor-blue); + color: #fffffff5; +} + +.backupRestoreBtn:active { + background-color: var(--darkerColor-blue); + color: #fffffff5; +} + +.spacer { + height: 23px; + /* Adjust this value to create space */ +} + +/* #darkTheme { + grid-column: span 2; + width: 82px; +} */ + +/* */ +#colorPicker{ + display: none; +} +.colorPickerLabel{ + grid-column: span 3; + width: 100%; + background: var(--accentLightTint-blue); height: 100%; - aspect-ratio: 1/1; - right: 0; - border-radius: 100%; - z-index: 2; - cursor: pointer; + border-radius: 100px; display: flex; + text-align: center; justify-content: center; - align-items: center; + font-size: 0.8rem; + line-height: 35px; + cursor: pointer; + border: 2px solid transparent; + transition: background-color 0.3s ease; } - -#darkTheme { - grid-column: span 2; - width: 82px; +.colorPickerLabel:hover{ + background: var(--bg-color-blue); } +/* */ -/* -----------end of theming stuff---------------- */ +/* -----------End of theming stuff---------------- */ #menuButton { position: fixed; @@ -1559,11 +2853,9 @@ input:checked + .toggle:before { } - /* ---------------------- */ #menuCloseButton { position: absolute; /* Change to absolute positioning */ - bottom: 0; /* Aligns to the top */ left: 0; /* Aligns to the left */ width: 42px; height: 42px; @@ -1580,7 +2872,8 @@ input:checked + .toggle:before { overflow: hidden; transition: all 0.4s; cursor: pointer; - margin-left: 20px; /* Remove margin */ + margin-left: 20px; + margin-top: -20px; } @@ -1650,3 +2943,95 @@ input:checked + .toggle:before { #menuCloseButton:hover .icon{ transform: translateX(0) rotate(90deg); } + + +/* --------- Search engines Dropdown css --------- */ +.dropdown-item { + display: flex; + gap: 8px; + align-items: center; +} + +.dropdown-btn { + background: none; + border: none; +} + +.dropdown { + position: relative; + display: inline-block; +} + +.dropdown-content { + background: var(--accentLightTint-blue); + border-radius: 16px; + display: none; + position: absolute; + min-width: 160px; + box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); + z-index: 1; + top: 50px; + left: -15px; + overflow: hidden; + max-height: 192px; +} + +.dropdown-content .dropdown-item { + padding: 8px 16px; + cursor: pointer; +} + +#default-dropdown-item .engine-name { + display: none; +} + +.dropdown-content .engine-name { + font-size: 1rem; +} + +.dropdown-item { + position: relative; +} + +.dropdown-item.selected:not(*[data-default]):before { + /* border-radius: 16px; */ + content: ""; + position: absolute; + top: 0px; + left: 0; + right: 0; + bottom: 0px; + background-color: var(--bg-color-blue); + opacity: 0.8; + z-index: -1; +} + +#default-dropdown-item { + outline: none !important; +} + +*[id$="-dropdown"]:not(.dropdown-content .dropdown-item:nth-child(1)) { + bottom: 3px; +} + +.search-dropdown .dropdown-item svg { + width: 33px; + height: 33px; + margin-left: 0; + padding: 2px; + background-color: var(--darkColor-blue); + border-radius: 100%; +} + + +/* ---------------------- Loading Screen --------------------------- */ +#LoadingScreen { + background: var(--Loading-Screen-Color); + display: flex; + position: fixed; + height: 100%; + width: 100%; + top: 0; + left: 0; + z-index: 99999; +} diff --git a/src/svgs/0 Don't DELETE any of them b/src/svgs/0 Don't DELETE any of them new file mode 100644 index 00000000..e69de29b diff --git a/src/svgs/andakar.svg b/src/svgs/andakar.svg new file mode 100644 index 00000000..ef7940d3 --- /dev/null +++ b/src/svgs/andakar.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/bing.svg b/src/svgs/bing.svg new file mode 100644 index 00000000..5a0f528e --- /dev/null +++ b/src/svgs/bing.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/bookmarksSearch.svg b/src/svgs/bookmarksSearch.svg new file mode 100644 index 00000000..1554f037 --- /dev/null +++ b/src/svgs/bookmarksSearch.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/src/svgs/brave.svg b/src/svgs/brave.svg new file mode 100644 index 00000000..69ef9eb9 --- /dev/null +++ b/src/svgs/brave.svg @@ -0,0 +1,30 @@ + + + + + + + diff --git a/src/svgs/defaultWeather.svg b/src/svgs/defaultWeather.svg new file mode 100644 index 00000000..e5c99c8d --- /dev/null +++ b/src/svgs/defaultWeather.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/duck.svg b/src/svgs/duck.svg new file mode 100644 index 00000000..9feb1203 --- /dev/null +++ b/src/svgs/duck.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/feels.svg b/src/svgs/feels.svg new file mode 100644 index 00000000..ff5eb357 --- /dev/null +++ b/src/svgs/feels.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/google.svg b/src/svgs/google.svg new file mode 100644 index 00000000..ff0c0d03 --- /dev/null +++ b/src/svgs/google.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/humidity.svg b/src/svgs/humidity.svg new file mode 100644 index 00000000..3eef1a75 --- /dev/null +++ b/src/svgs/humidity.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/location.svg b/src/svgs/location.svg new file mode 100644 index 00000000..e2564d46 --- /dev/null +++ b/src/svgs/location.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/rounder.svg b/src/svgs/rounder.svg new file mode 100644 index 00000000..33c43b80 --- /dev/null +++ b/src/svgs/rounder.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/svgs/searchIcon.svg b/src/svgs/searchIcon.svg new file mode 100644 index 00000000..22a5b534 --- /dev/null +++ b/src/svgs/searchIcon.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/adobe-firefly.svg b/src/svgs/shortcuts_icons/adobe-firefly.svg new file mode 100644 index 00000000..b5de619f --- /dev/null +++ b/src/svgs/shortcuts_icons/adobe-firefly.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/shortcuts_icons/bard.svg b/src/svgs/shortcuts_icons/bard.svg new file mode 100644 index 00000000..c8a4695d --- /dev/null +++ b/src/svgs/shortcuts_icons/bard.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/svgs/shortcuts_icons/chatgpt.svg b/src/svgs/shortcuts_icons/chatgpt.svg new file mode 100644 index 00000000..8296a70b --- /dev/null +++ b/src/svgs/shortcuts_icons/chatgpt.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/shortcuts_icons/email.svg b/src/svgs/shortcuts_icons/email.svg new file mode 100644 index 00000000..11dcfcbc --- /dev/null +++ b/src/svgs/shortcuts_icons/email.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/facebook.svg b/src/svgs/shortcuts_icons/facebook.svg new file mode 100644 index 00000000..9403148b --- /dev/null +++ b/src/svgs/shortcuts_icons/facebook.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/feedback.svg b/src/svgs/shortcuts_icons/feedback.svg new file mode 100644 index 00000000..f816571e --- /dev/null +++ b/src/svgs/shortcuts_icons/feedback.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/github-shortcut.svg b/src/svgs/shortcuts_icons/github-shortcut.svg new file mode 100644 index 00000000..2a934e05 --- /dev/null +++ b/src/svgs/shortcuts_icons/github-shortcut.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/svgs/shortcuts_icons/github.svg b/src/svgs/shortcuts_icons/github.svg new file mode 100644 index 00000000..6cbe6ce7 --- /dev/null +++ b/src/svgs/shortcuts_icons/github.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/instagram.svg b/src/svgs/shortcuts_icons/instagram.svg new file mode 100644 index 00000000..7405a48c --- /dev/null +++ b/src/svgs/shortcuts_icons/instagram.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/invalid-url.svg b/src/svgs/shortcuts_icons/invalid-url.svg new file mode 100644 index 00000000..5809da44 --- /dev/null +++ b/src/svgs/shortcuts_icons/invalid-url.svg @@ -0,0 +1,4 @@ + + + diff --git a/src/svgs/shortcuts_icons/offline.svg b/src/svgs/shortcuts_icons/offline.svg new file mode 100644 index 00000000..81d2c55d --- /dev/null +++ b/src/svgs/shortcuts_icons/offline.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/src/svgs/shortcuts_icons/reddit.svg b/src/svgs/shortcuts_icons/reddit.svg new file mode 100644 index 00000000..9acb882e --- /dev/null +++ b/src/svgs/shortcuts_icons/reddit.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/telegram.svg b/src/svgs/shortcuts_icons/telegram.svg new file mode 100644 index 00000000..a314fcb1 --- /dev/null +++ b/src/svgs/shortcuts_icons/telegram.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/twitter.svg b/src/svgs/shortcuts_icons/twitter.svg new file mode 100644 index 00000000..6ab76903 --- /dev/null +++ b/src/svgs/shortcuts_icons/twitter.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/whatsApp.svg b/src/svgs/shortcuts_icons/whatsApp.svg new file mode 100644 index 00000000..e8487f1f --- /dev/null +++ b/src/svgs/shortcuts_icons/whatsApp.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/shortcuts_icons/youtube.svg b/src/svgs/shortcuts_icons/youtube.svg new file mode 100644 index 00000000..83673123 --- /dev/null +++ b/src/svgs/shortcuts_icons/youtube.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/starishShape.svg b/src/svgs/starishShape.svg new file mode 100644 index 00000000..3ddaba72 --- /dev/null +++ b/src/svgs/starishShape.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/theme.svg b/src/svgs/theme.svg new file mode 100644 index 00000000..5af71cb2 --- /dev/null +++ b/src/svgs/theme.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/tick.svg b/src/svgs/tick.svg new file mode 100644 index 00000000..add8b26e --- /dev/null +++ b/src/svgs/tick.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/todo-check-fill.svg b/src/svgs/todo-check-fill.svg new file mode 100644 index 00000000..411e5f5b --- /dev/null +++ b/src/svgs/todo-check-fill.svg @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/src/svgs/todo-check-stroke.svg b/src/svgs/todo-check-stroke.svg new file mode 100644 index 00000000..4b300a97 --- /dev/null +++ b/src/svgs/todo-check-stroke.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/src/svgs/todo-pin-fill.svg b/src/svgs/todo-pin-fill.svg new file mode 100644 index 00000000..318b7e02 --- /dev/null +++ b/src/svgs/todo-pin-fill.svg @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/src/svgs/todo-pin-stroke.svg b/src/svgs/todo-pin-stroke.svg new file mode 100644 index 00000000..7435fd0d --- /dev/null +++ b/src/svgs/todo-pin-stroke.svg @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/src/svgs/x.svg b/src/svgs/x.svg new file mode 100644 index 00000000..36d37f81 --- /dev/null +++ b/src/svgs/x.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/svgs/youtube.svg b/src/svgs/youtube.svg new file mode 100644 index 00000000..cf5e2403 --- /dev/null +++ b/src/svgs/youtube.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/tools/languagesAnalysis.html b/src/tools/languagesAnalysis.html new file mode 100644 index 00000000..a2f7320c --- /dev/null +++ b/src/tools/languagesAnalysis.html @@ -0,0 +1,482 @@ + + + + + + + Language Key Analysis + + + + + + + + + + + + + + + + + + + + + + + + + +
        + 🌟 + Language Key Analysis Tool + +
        +
        +
        +

        Language Key Analysis Results

        +

        + This page is a tool designed to analyze language keys in the project. English serves as the reference language for + comparison. The tool identifies missing or extra keys in other languages and highlights the complete ones. +

        + + +
        +
        + + + diff --git a/todo.txt b/todo.txt new file mode 100644 index 00000000..e69de29b diff --git a/vite.config.js b/vite.config.js index f83c64b4..6d00189e 100644 --- a/vite.config.js +++ b/vite.config.js @@ -3,6 +3,7 @@ import path from 'path'; import { viteStaticCopy } from 'vite-plugin-static-copy'; export default defineConfig({ + root: path.resolve(__dirname, 'src'), // Set the root directory to src resolve: { alias: { '@': path.resolve(__dirname, './src'), @@ -19,26 +20,38 @@ export default defineConfig({ viteStaticCopy({ targets: [ { - src: 'src/manifest.json', // Path to manifest.json in src - dest: '.' // Copy to the root of dist/ + src: 'root/*', + dest: '.' }, { - src: 'src/background.js', - dest: '.' + src: 'svgs/*', + dest: 'svgs' + }, + { + src: 'favicon/*', + dest: 'favicon' + }, + { + src: 'scripts/*', + dest: 'scripts' + }, + { + src: 'docs/*', + dest: 'docs' }, { - src: 'src/languages.js', - dest: './src/' + src: 'locales/*', + dest: 'locales' }, { - src: 'src/icon.png', // Path to icon.png in src - dest: '.' // Copy to the root of dist/ + src: 'tools/*', + dest: 'tools' } ] }) ], build: { - outDir: 'dist', // Ensure output is in dist folder + outDir: path.resolve(__dirname, 'dist'), // Ensure output is in dist folder rollupOptions: { output: { entryFileNames: 'app.js', // Set the main JS file name