1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/locale-en-Q3w1qYHg.js","assets/rolldown-runtime-DwynqlJ6.js","assets/applyServerDefaults-B3GW07Qn.js","assets/navigationStore-Dd5UN9Dn.js","assets/vendor-state-i3jb-oRH.js","assets/vendor-dnd-Bdjc1axw.js","assets/syncedStorage-Bn09z4Iz.js","assets/public-websites-seed-Yn52xus_.js","assets/supabase-DcCJ1NjG.js","assets/helpers-BzLZZMGf.js","assets/api-C5A9NsDb.js","assets/spaces-DunAg0jM.js","assets/privacyMode-Sntaz2e6.js","assets/onboarding-BjqSLc_T.js","assets/onboardingFunnelMetrics-ALszCuaL.js","assets/App-XyP6jYgJ.js","assets/vendor-react-zCSridww.js","assets/cardSurfaceStyles-CVrLbmmD.js","assets/desktopPetWindow-BKRedSnv.js","assets/useTranslation-CRDOaNdG.js","assets/todoReminders-DGpNthPh.js","assets/vendor-ui-ByBXTYhd.js","assets/CategoryWorkspace-UNRQZoFl.js","assets/ComponentIcon-DqBysL_5.js","assets/CommandLineIcon-G4Tk3UbW.js","assets/ArrowRightIcon-B-M8Hi0_.js","assets/DocumentArrowDownIcon-BPsAJVjX.js","assets/ChevronDownIcon-jnAihG3z.js","assets/ChatBubbleLeftRightIcon-D366Uk_s.js","assets/CheckCircleIcon-C0EE_Sti.js","assets/XCircleIcon-D527iVpD.js","assets/LockClosedIcon-CZwiloaR.js","assets/EyeIcon-BWIIaSI6.js","assets/GlobeAltIcon-CmHRvFUk.js","assets/LinkIcon-Cyn3bWRq.js","assets/MagnifyingGlassIcon-BySaNQrT.js","assets/MinusIcon-hw5wbo7Y.js","assets/PaperAirplaneIcon-DSnR2kYp.js","assets/PlusCircleIcon-9NEpwdl2.js","assets/ShieldCheckIcon-Dw_6lA0t.js","assets/SparklesIcon-CXwjwhD-.js","assets/TrashIcon-Ddfl76zY.js","assets/desktopPet-B5V-4FdM.js","assets/localToolCatalog-DQ59-9js.js","assets/memoCatalog-Btfn3mbz.js","assets/openExternalUrl-DSXTzQzA.js","assets/routineStore-MJXol_Hy.js","assets/browserBookmarkImport-BG3j2dLv.js","assets/websiteAutofill-DKlMbZe6.js","assets/widgetI18n-Cjd7-1QY.js","assets/aiFeatureQuotas-BjWvamSc.js","assets/CheckCircleIcon-D_GQi0Hr.js","assets/categoryI18n-CM25v4C3.js","assets/visibleSidebarCategories-SEH9Bu-d.js","assets/localizeWebsite--6bBmT4t.js","assets/MobileSectionMenu-BYOmtWnX.js","assets/AdaptiveHeaderNavigation-Cyx3R6dW.js","assets/ConfirmDialog-ChOZwG6U.js","assets/navigationUndo-DtHSnJ1-.js","assets/WidgetAppearancePreviewContext-D59ii11W.js","assets/aiGenerateButtonStyles-DLUAm9TV.js","assets/window-BtxHJ3OY.js","assets/core-DK51H2k3.js","assets/event-az8T4LCr.js","assets/DesktopPetWindow-Cc0Dbnfs.js","assets/desktopPetCatalog-D_P-LqRq.js","assets/desktopPetVoice-BsM4WWaL.js","assets/widgetPanelEvents-DURfytat.js","assets/DesktopPetWindow-C_OXWPYB.css"])))=>i.map(i=>d[i]); 2import{r as e}from"./rolldown-runtime-DwynqlJ6.js";import{n as t,r as a}from"./vendor-react-zCSridww.js";import{n as o,r as i}from"./vendor-state-i3jb-oRH.js";!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver(e=>{for(const a of e)if("childList"===a.type)for(const e of a.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)}).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();var r=e(a(),1),s="https://sjvuykmvjckelbrvjtse.supabase.co\r\n".replace(/\/$/,"")||"",n="sb_publishable_tFCc2HdyrSJ38WS4GZ2YqA_W6ipGA6f",l=Boolean(s&&"sb_publishable_tFCc2HdyrSJ38WS4GZ2YqA_W6ipGA6f"),d=`${s}/auth/v1`,c=`${s}/rest/v1`,m=[{code:"en",path:"",direction:"ltr",name:"English",nativeName:"English"},{code:"en-US",path:"en-us",direction:"ltr",name:"English (United States)",nativeName:"English (US)"},{code:"en-CA",path:"en-ca",direction:"ltr",name:"English (Canada)",nativeName:"English (Canada)"},{code:"en-GB",path:"en-gb",direction:"ltr",name:"English (United Kingdom)",nativeName:"English (UK)"},{code:"zh-CN",path:"zh",direction:"ltr",name:"Simplified Chinese",nativeName:"ç®ä½ä¸æ"},{code:"fr",path:"fr",direction:"ltr",name:"French",nativeName:"Français"},{code:"nl",path:"nl",direction:"ltr",name:"Dutch",nativeName:"Nederlands"},{code:"ko",path:"ko",direction:"ltr",name:"Korean",nativeName:"íêµì´"},{code:"ar",path:"ar",direction:"rtl",name:"Arabic",nativeName:"Ø§ÙØ¹Ø±Ø¨ÙØ©"},{code:"hi",path:"hi",direction:"ltr",name:"Hindi",nativeName:"हिनà¥à¤¦à¥"},{code:"zh-TW",path:"zh-tw",direction:"ltr",name:"Traditional Chinese",nativeName:"ç¹é«ä¸æ"},{code:"es",path:"es",direction:"ltr",name:"Spanish",nativeName:"Español"},{code:"pt-PT",path:"pt-pt",direction:"ltr",name:"Portuguese (Portugal)",nativeName:"Português (PT)"},{code:"pt-BR",path:"pt-br",direction:"ltr",name:"Portuguese (Brazil)",nativeName:"Português (BR)"},{code:"ru",path:"ru",direction:"ltr",name:"Russian",nativeName:"Ð ÑÑÑкий"},{code:"de",path:"de",direction:"ltr",name:"German",nativeName:"Deutsch"},{code:"ja",path:"ja",direction:"ltr",name:"Japanese",nativeName:"æ¥æ¬èª"},{code:"it",path:"it",direction:"ltr",name:"Italian",nativeName:"Italiano"},{code:"pl",path:"pl",direction:"ltr",name:"Polish",nativeName:"Polski"},{code:"tr",path:"tr",direction:"ltr",name:"Turkish",nativeName:"Türkçe"},{code:"vi",path:"vi",direction:"ltr",name:"Vietnamese",nativeName:"Tiếng Viá»t"},{code:"id",path:"id",direction:"ltr",name:"Indonesian",nativeName:"Bahasa Indonesia"},{code:"bn",path:"bn",direction:"ltr",name:"Bengali",nativeName:"বাà¦à¦²à¦¾"}
2,{code:"ur",path:"ur",direction:"rtl",name:"Urdu",nativeName:"اردÙ"},{code:"fa",path:"fa",direction:"rtl",name:"Persian",nativeName:"ÙØ§Ø±Ø³Û"},{code:"th",path:"th",direction:"ltr",name:"Thai",nativeName:"à¹à¸à¸¢"},{code:"uk",path:"uk",direction:"ltr",name:"Ukrainian",nativeName:"УкÑаÑнÑÑка"},{code:"ro",path:"ro",direction:"ltr",name:"Romanian",nativeName:"RomânÄ"},{code:"ms",path:"ms",direction:"ltr",name:"Malay",nativeName:"Bahasa Melayu"},{code:"fil",path:"fil",direction:"ltr",name:"Filipino",nativeName:"Filipino"},{code:"ta",path:"ta",direction:"ltr",name:"Tamil",nativeName:"தமிழà¯"},{code:"te",path:"te",direction:"ltr",name:"Telugu",nativeName:"à°¤à±à°²à±à°à±"},{code:"mr",path:"mr",direction:"ltr",name:"Marathi",nativeName:"मराठà¥"},{code:"sw",path:"sw",direction:"ltr",name:"Swahili",nativeName:"Kiswahili"},{code:"he",path:"he",direction:"rtl",name:"Hebrew",nativeName:"×¢×ר×ת"},{code:"cs",path:"cs",direction:"ltr",name:"Czech",nativeName:"ÄeÅ¡tina"},{code:"dsb",path:"dsb",direction:"ltr",name:"Lower Sorbian",nativeName:"DolnoserbÅ¡Äina"},{code:"el",path:"el",direction:"ltr",name:"Greek",nativeName:"Îλληνικά"},{code:"es-AR",path:"es-ar",direction:"ltr",name:"Spanish (Argentina)",nativeName:"Español (Argentina)"},{code:"es-CL",path:"es-cl",direction:"ltr",name:"Spanish (Chile)",nativeName:"Español (Chile)"},{code:"es-ES",path:"es-es",direction:"ltr",name:"Spanish (Spain)",nativeName:"Español (España)"},{code:"es-MX",path:"es-mx",direction:"ltr",name:"Spanish (Mexico)",nativeName:"Español (México)"},{code:"fi",path:"fi",direction:"ltr",name:"Finnish",nativeName:"suomi"},{code:"fur",path:"fur",direction:"ltr",name:"Friulian",nativeName:"Furlan"},{code:"fy-NL",path:"fy-nl",direction:"ltr",name:"West Frisian",nativeName:"Frysk"},{code:"hr",path:"hr",direction:"ltr",name:"Croatian",nativeName:"Hrvatski"},{code:"hsb",path:"hsb",direction:"ltr",name:"Upper Sorbian",nativeName:"Hornjoserbsce"},{code:"hu",path:"hu",direction:"ltr",name:"Hungarian",nativeName:"magyar"},{code:"ia",path:"ia",direction:"ltr",name:"Interlingua",nativeName:"Interlingua"},{code:"ka",path:"ka",direction:"ltr",name:"Georgian",nativeName:"á¥áá áá£áá"},{code:"kab",path:"kab",direction:"ltr",name:"Kabyle",nativeName:"Taqbaylit"},{code:"nb-NO",path:"nb-no",direction:"ltr",name:"Norwegian BokmÃ¥l",nativeName:"Norsk bokmÃ¥l"},{code:"nn-NO",path:"nn-no",direction:"ltr",name:"Norwegian Nynorsk",nativeName:"Norsk nynorsk"},{code:"sk",path:"sk",direction:"ltr",name:"Slovak",nativeName:"slovenÄina"},{code:"sl",path:"sl",direction:"ltr",name:"Slovenian",nativeName:"SlovenÅ¡Äina"}
2,{code:"sq",path:"sq",direction:"ltr",name:"Albanian",nativeName:"Shqip"},{code:"sv-SE",path:"sv-se",direction:"ltr",name:"Swedish",nativeName:"Svenska"}],p={},u=function(e,t,a){let o=Promise.resolve();if(t&&t.length>0){const e=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),r=a?.nonce||a?.getAttribute("nonce");i=t.map(t=>{var a;if(t=function(e){return"/"+e}(t),a=t,(t=import.meta.resolve?import.meta.resolve(a):new URL(a,import.meta.url).href)in p)return;p[t]=!0;const o=t.endsWith(".css");for(let r=e.length-1;r>=0;r--){const a=e[r];if(a.href===t&&(!o||"stylesheet"===a.rel))return}const i=document.createElement("link");return i.rel=o?"stylesheet":"modulepreload",o||(i.as="script"),i.crossOrigin="",i.href=t,r&&i.setAttribute("nonce",r),document.head.appendChild(i),o?new Promise((e,a)=>{i.addEventListener("load",e),i.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${t}`)))}):void 0}),o=Promise.all(i.map(e=>Promise.resolve(e).then(e=>({status:"fulfilled",value:e}),e=>({status:"rejected",reason:e}))))}var i;function r(e){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return o.then(t=>{for(const e of t||[])"rejected"===e.status&&r(e.reason);return e().catch(r)})},_={},h={en:()=>u(()=>import("./locale-en-Q3w1qYHg.js").then(e=>e.n),__vite__mapDeps([0,1])),"en-US":()=>u(()=>import("./locale-en-US-CsfZPFgo.js"),[]),"en-CA":()=>u(()=>import("./locale-en-CA-CJ0XeQUA.js"),[]),"en-GB":()=>u(()=>import("./locale-en-GB-C8E5JoQn.js"),[]),"zh-CN":()=>u(()=>import("./locale-zh-CN-ALlyVvOT.js"),[]),fr:()=>u(()=>import("./locale-fr-YuEQjbCm.js"),[]),nl:()=>u(()=>import("./locale-nl--uD_X9Qr.js"),[]),ko:()=>u(()=>import("./locale-ko-DDmtvoWQ.js"),[]),ar:()=>u(()=>import("./locale-ar-tvepDF_f.js"),[]),hi:()=>u(()=>import("./locale-hi-JCDY7PTm.js"),[]),"zh-TW":()=>u(()=>import("./locale-zh-TW-DiY9T3kW.js"),[]),es:()=>u(()=>import("./locale-es-Br-SrTiM.js"),[]),"pt-PT":()=>u(()=>import("./locale-pt-PT-DDF4Xkg1.js"),[]),"pt-BR":()=>u(()=>import("./locale-pt-BR-DUqHUVMv.js"),[]),ru:()=>u(()=>import("./locale-ru-Be3ZmVi2.js"),[]),de:()=>u(()=>import("./locale-de-6FSzW7fO.js"),[]),ja:()=>u(()=>import("./locale-ja-C5gu7_jZ.js"),[]),it:()=>u(()=>import("./locale-it-X187Zglx.js"),[]),pl:()=>u(()=>import("./locale-pl-B_lL_wSJ.js"),[]),tr:()=>u(()=>import("./locale-tr-LTXCUg1Y.js"),[]),vi:()=>u(()=>import("./locale-vi-D1Nge9Wi.js"),[]),id:()=>u(()=>import("./locale-id-BxBvcwjb.js"),[]),bn:()=>u(()=>import("./locale-bn-Dhcb30tu.js"),[]),ur:()=>u(()=>import("./locale-ur-Bd2c2pfd.js"),[]),fa:()=>u(()=>import("./locale-fa-DQAU5eFX.js"),[]),th:()=>u(()=>import("./locale-th-Ddt-jJ2I.js"),[]),uk:()=>u(()=>import("./locale-uk-nsuWH0mb.js"),[]),ro:()=>u(()=>import("./locale-ro-B7hPnn6V.js"),[]),ms:()=>u(()=>import("./locale-ms-BYVtcEHv.js"),[]),fil:()=>u(()=>import("./locale-fil-CRRpbNbL.js"),[]),ta:()=>u(()=>import("./locale-ta-LCt2pW3i.js"),[]),te:()=>u(()=>import("./locale-te-DYFUQ0HT.js"),[]),mr:()=>u(()=>import("./locale-mr-BhMczjy_.js"),[]),sw:()=>u(()=>import("./locale-sw-CZ0Km-6t.js"),[]),he:()=>u(()=>import("./locale-he-CYgdiz_J.js"),[]),cs:()=>u(()=>import("./locale-cs-nLKvo54g.js"),[]),dsb:()=>u(()=>import("./locale-dsb-B4Q9m9w4.js"),[]),el:()=>u(()=>import("./locale-el-GSUucKaC.js"),[]),"es-AR":()=>u(()=>import("./locale-es-AR-BBRHQEH4.js"),[]),"es-CL":()=>u(()=>import("./locale-es-CL-BmA3CjTK.js"),[]),"es-ES":()=>u(()=>import("./locale-es-ES-ihJh-law.js"),[]),"es-MX":()=>u(()=>import("./locale-es-MX-BiYm82PW.js"),[]),fi:()=>u(()=>import("./locale-fi-BC2eFnq8.js"),[]),fur:()=>u(()=>import("./locale-fur-DfG8Af-0.js"),[]),"fy-NL":()=>u(()=>import("./locale-fy-NL-Bp3EZfMG.js"),[]),hr:()=>u(()=>import("./locale-hr-CATy-AZ9.js"),[]),hsb:()=>u(()=>import("./locale-hsb-BlbrvLnQ.js"),[]),hu:()=>u(()=>import("./locale-hu-BzXNCw9i.js"),[]),ia:()=>u(()=>import("./locale-ia-DhLS_gPr.js"),[]),ka:()=>u(()=>import("./locale-ka-B98xiYpt.js"),[]),kab:()=>u(()=>import("./locale-kab-XfKETJh6.js"),[]),"nb-NO":()=>u(()=>import("./locale-nb-NO-BmxW35rr.js"),[]),"nn-NO":()=>u(()=>import("./locale-nn-NO-UJIa_oFo.js"),[]),sk:()=>u(()=>import("./locale-sk-CnLa6jFL.js"),[]),sl:()=>u(()=>import("./locale-sl-CT-gnjeF.js"),[]),sq:()=>u(()=>import("./locale-sq-DlR3GVFv.js"),[]),"sv-SE":()=>u(()=>import("./locale-sv-SE-C_6v9hrP.js"),[])},g=new Map,b=new Set,w=e=>(b.add(e),()=>b.delete(e)),f=e=>_[e],T=e=>{if(_[e])return Promise.resolve(_[e]);const t=g.get(e);if(t)return t;const a=h[e]().then(t=>{const a=t.default;return _[e]=a,g.delete(e),(()=>{for(const e of b)e()})(),a}).catch(t=>{if(g.delete(e),"en"===e)throw t;return T("en")});return g.set(e,a),a},v=m.map(({code:e,name:t,nativeName:a})=>({code:e,name:t,nativeName:a})),y=()=>"undefined"!=typeof window&&"__TAURI_INTERNALS__"in window,L=e=>{const t=[];for(let a=0;a<e.length;a+=1){const o=e.key(a);if(!o||!/aisnav/i.test(o))continue;const i=e.getItem(o);if(null===i)continue;const r=o.replace(/AISNAV/g,"LIKEDTABS").replace(/AIsNav/g,"LikedTabs").replace(/AisNav/g,"LikedTabs").replace(/aisnav/g,"likedtabs");r!==o&&t.push({oldKey:o,newKey:r,value:i})}for(const{oldKey:a,newKey:o,value:i}of t)null===e.getItem(o)&&e.setItem(o,i),e.removeItem(a)},E=()=>
2{try{L(window.localStorage)}catch{}try{L(window.sessionStorage)}catch{}},k="language-preference-explicit",A=e=>e.trim().replace(/_/g,"-").toLowerCase(),I=Object.fromEntries(Object.entries({zh:"zh-CN","zh-CN":"zh-CN","zh-Hans":"zh-CN","zh-Hans-CN":"zh-CN","zh-TW":"zh-TW","zh-Hant":"zh-TW","zh-Hant-TW":"zh-TW",en:"en","en-US":"en-US","en-CA":"en-CA","en-GB":"en-GB",fr:"fr","fr-FR":"fr",nl:"nl","nl-NL":"nl",ko:"ko","ko-KR":"ko",ar:"ar","ar-SA":"ar",hi:"hi","hi-IN":"hi",es:"es","es-AR":"es-AR","es-CL":"es-CL","es-ES":"es-ES","es-MX":"es-MX",pt:"pt-PT","pt-PT":"pt-PT","pt-BR":"pt-BR",ru:"ru","ru-RU":"ru",de:"de","de-DE":"de",ja:"ja","ja-JP":"ja",it:"it","it-IT":"it",pl:"pl","pl-PL":"pl",tr:"tr","tr-TR":"tr",vi:"vi","vi-VN":"vi",id:"id","id-ID":"id",bn:"bn","bn-BD":"bn",ur:"ur","ur-PK":"ur",fa:"fa","fa-IR":"fa",th:"th","th-TH":"th",uk:"uk","uk-UA":"uk",ro:"ro","ro-RO":"ro",ms:"ms","ms-MY":"ms",fil:"fil","fil-PH":"fil",ta:"ta","ta-IN":"ta",te:"te","te-IN":"te",mr:"mr","mr-IN":"mr",sw:"sw","sw-KE":"sw",he:"he","he-IL":"he",cs:"cs","cs-CZ":"cs",dsb:"dsb",el:"el","el-GR":"el",fi:"fi","fi-FI":"fi",fur:"fur",fy:"fy-NL","fy-NL":"fy-NL",hr:"hr","hr-HR":"hr",hsb:"hsb",hu:"hu","hu-HU":"hu",ia:"ia",ka:"ka","ka-GE":"ka",kab:"kab",nb:"nb-NO","nb-NO":"nb-NO",nn:"nn-NO","nn-NO":"nn-NO",sk:"sk","sk-SK":"sk",sl:"sl","sl-SI":"sl",sq:"sq","sq-AL":"sq",sv:"sv-SE","sv-SE":"sv-SE"}).map(([e,t])=>[A(e),t])),j=e=>{if("string"!=typeof e)return;const t=A(e);if(!t)return;const a=v.map(e=>e.code),o=I[t];if(o)return o;const i=a.find(e=>A(e)===t);if(i)return i;const r=t.split("-")[0],s=I[r];return s||a.find(e=>A(e).startsWith(`${r}-`))},P=(e=("undefined"==typeof navigator?[]:navigator.languages.length>0?navigator.languages:[navigator.language]))=>{for(const t of e){const e=j(t);if(e)return e}return"en"},C=(e,t)=>{if("string"==typeof e)try{const t=JSON.parse(e),a=j(t.state?.currentLanguage);if(a)return a}catch{}return void 0===t?P():P(t)},R=e=>{if(!e||"object"!=typeof e)return!1;const t=e;return"string"==typeof t.search_id&&Number.isFinite(t.occurred_at)&&"number"==typeof t.results_count&&Number.isInteger(t.results_count)&&t.results_count>0&&(e=>"main_search_bar"===e||"simple_search_widget"===e)(t.source)&&"boolean"==typeof t.result_clicked&&(void 0===t.result_type||(e=>"website"===e||"widget"===e)(t.result_type))},O=(e,t)=>{try{const a=JSON.parse(e.getItem("likedtabs:site-search-metrics")??"[]");if(!Array.isArray(a))return[];const o=(e=>e-2592e6)(t);return a.filter(R).filter(e=>e.occurred_at>=o&&e.occurred_at<=t).sort((e,t)=>e.occurred_at-t.occurred_at).slice(-500)}catch{return[]}},D=(e,t)=>{e.setItem("likedtabs:site-search-metrics",JSON.stringify(t))},S=e=>e??(()=>{if("undefined"==typeof window)return null;try{return window.localStorage}catch{return null}})(),V=new Set(["localhost","127.0.0.1","::1"]),N=/(?:Googlebot|Google-InspectionTool|AdsBot-Google|APIs-Google|Mediapartners-Google|bingbot|BingPreview|DuckDuckBot|Baiduspider|Yandex(?:Bot|Images|MobileBot)|Yahoo! Slurp|Sogou|Exabot|Applebot|PetalBot|Bytespider|GPTBot|ChatGPT-User|ClaudeBot|PerplexityBot|CCBot|Amazonbot|SemrushBot|AhrefsBot|MJ12bot|DotBot|facebookexternalhit|facebot|Twitterbot|LinkedInBot|Slackbot|Discordbot|TelegramBot|UptimeRobot|Pingdom|StatusCake)/i,B=e=>N.test(e),G=()=>"undefined"==typeof window||(!0===window.__LIKEDTABS_ANALYTICS_DISABLED__||"undefined"!=typeof navigator&&B(navigator.userAgent)),M=()=>{return"undefined"!=typeof window&&(e=window.location.hostname,!V.has(e.trim().toLowerCase())&&!G());var e},x="likedtabs_qualified_visit_tracked",W="likedtabs_internal_traffic",U=["utm_source","utm_medium","utm_campaign","utm_content"],H=/^[a-z0-9][a-z0-9._-]{0,63}$/i,q=()=>{if("undefined"==typeof window)return!1;const e=new URLSearchParams(window.location.search),t=e.get("likedtabs_internal")??e.get("aisnav_internal");return"1"===t||"true"===t?(window.localStorage.setItem(W,"true"),!0):"0"===t||"false"===t?(window.localStorage.removeItem(W),!1):"true"===window.localStorage.getItem(W)},z=()=>{const e="undefined"!=typeof navigator&&B(navigator.userAgent);return{traffic_type:q()?"internal":"external",traffic_quality:e?"bot_like":"normal",bot_like:e}},F=(e,t={})=>{G()||"undefined"!=typeof window&&"function"==typeof window.gtag&&window.gtag("event",e,{...z(),...t})},K=e=>{const{source:t,...a}=e;return{...a,...void 0===t?{}:{action_source:t}}},$=()=>"undefined"==typeof window?{}:U.reduce((e,t)=>
2{const a=new URLSearchParams(window.location.search).get(t)?.trim();return a&&H.test(a)&&(e[t]=a.toLowerCase()),e},{});var J=()=>"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`search-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`;function Y(e){((e,t=Date.now(),a)=>{if(!e.search_id||!Number.isInteger(e.results_count)||e.results_count<=0)return;const o=S(a);if(!o)return;const i=O(o,t).filter(t=>t.search_id!==e.search_id);D(o,[...i,{...e,occurred_at:t,result_clicked:!1}].slice(-500))})(e),F("site_search",K(e))}function Q(e){((e,t,a=Date.now(),o)=>{const i=S(o);if(!i||!e)return;const r=O(i,a),s=r.findIndex(t=>t.search_id===e);s<0||r[s].result_clicked||(r[s]={...r[s],result_clicked:!0,result_type:t},D(i,r))})(e.search_id,e.result_type),F("search_result_click",e)}function X(e){F("scroll_depth",e)}function Z(e){F("qualified_visit",e)}function ee(e){F("install_cta_click",{...$(),...e})}function te(e){F("online_demo_open",{...$(),...e})}var ae=e=>e.replace(/\S+@\S+/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_|_$/g,"").slice(0,64)||"unknown";function oe(e){F("auth_start",e)}function ie(e){F("sign_up",{...$(),...e})}function re(e){F("login",e)}function se(e){const{message:t,...a}=e;F("auth_error",{...a,reason:ae(t)})}function ne(e){F("core_action",K({action_name:e.action_name,source:e.source})),"undefined"!=typeof window&&"true"!==window.sessionStorage.getItem(x)&&(window.sessionStorage.setItem(x,"true"),Z({qualification_reason:"core_action",page_path:window.location.pathname}))}function le(e){ne({action_name:"add_website",source:e.source}),F("add_website",K({source:e.source}))}function de(e){ne({action_name:"browser_bookmarks"===e.import_type?"import_bookmarks":"external_new_tab"===e.import_type?"import_external_new_tab":"import_navigation",source:"import_export_panel",value:e.added_count+(e.updated_count??0)}),F("import_navigation",e)}function ce(e){ne({action_name:"export_navigation",source:"import_export_panel",value:e.website_count}),F("export_navigation",e)}function me(e){ne({action_name:"open_tool_detail",source:e.source}),F("open_tool_detail",K({source:e.source}))}function pe(e){ne({action_name:"visit_official_site",source:e.source}),F("visit_official_site",K({source:e.source}))}function ue(e){ne({action_name:"switch_view_mode",item_id:e.mode,source:e.source}),F("switch_view_mode",K(e))}function _e(e){ne({action_name:"switch_space",item_id:e.space_id,item_name:e.space_name,source:e.source}),F("switch_space",K({source:e.source}))}function he(e){ne({action_name:"switch_category",item_id:e.category_id,item_name:e.category_name,source:e.source}),F("switch_category",K({source:e.source}))}function ge(e){F("category_navigation_experiment",e)}function be(e){F("low_quality_visit",{...e,transport_type:"beacon"})}function we(e,t){G()||"undefined"!=typeof window&&window.gtag&&window.gtag("event",e,{...z(),...t})}var fe={categorySelect(e){we("category_select",{category_id:e})},toggleFavorite(e,t){we("toggle_favorite",{website_name:e,is_favorite:t})},deleteWebsite(e){we("delete_website",{website_name:e})},themeChange(e){we("theme_change",{theme:e})},languageChange(e){we("language_change",{language:e})},appModeView(e){we("app_mode_view",{mode:e})}},Te=v,ve=new Set(["ar","he","fa","ur"]),ye=e=>ve.has(e),Le=e=>{if("undefined"==typeof document)return;const t=document.documentElement;t.lang=e,t.dir=ye(e)?"rtl":"ltr"},Ee=()=>{try{return C(localStorage.getItem("language-storage"))}catch(e){return P()}},ke=i()(o(e=>({currentLanguage:Ee(),setLanguage:(t,a="user")=>{"user"===a&&(()=>{try{localStorage.setItem(k,"1")}catch{}})(),e({currentLanguage:t}),Le(t),fe.languageChange(t)},getLanguageOption:e=>Te.find(t=>t.code===e)}),{name:"language-storage",merge:(e,t)=>{return{...t,currentLanguage:(a=e?.currentLanguage,o=t.currentLanguage,j(a)??o)};var a,o}}));Le(ke.getState().currentLanguage);var Ae=[{id:"home",path:"/",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"about",path:"/about",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"guestbook",path:"/guestbook",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"submit",path:"/submit",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"welcome",path:"/welcome",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"useCases",path:"/use-cases",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"trust",path:"/trust",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"simpleMode",path:"/simplemode",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"blog",path:"/blog",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"replaceChromeNewTab2026",path:"/blog/replace-chrome-new-tab-2026",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"likedTabsVsTobyVsTabliss",path:"/blog/likedtabs-vs-toby-vs-tabliss",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"chatgptVsClaudeVsGemini2026",path:"/blog/chatgpt-vs-claude-vs-gemini-2026",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"bestBookmarkManagerChrome2026",path:"/blog/best-bookmark-manager-chrome-2026",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"howToOrganizeAiTools2026",path:"/blog/how-to-organize-ai-tools-browser",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"windowsShutdownShortcuts",path:"/blog/windows-11-shutdown-shortcuts",routerManaged:!0,routeLocaleCoverage:"en-zh",alternateLocaleCoverage:"en-zh"},{id:"dailyPost",path:"/blog/:dailySlug",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"alternativeComparison",path:"/alternatives/:competitor",routerManaged:!0,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryAll",path:"/ai-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryWriting",path:"/ai-writing-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryCoding",path:"/ai-coding-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryImage",path:"/ai-image-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryVideo",path:"/ai-video-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryProductivity",path:"/ai-productivity-tools",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directoryBookmarks",path:"/ai-bookmark-manager",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"directorySimple",path:"/simple-new-tab",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"privacy",path:"/privacy",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"all"},{id:"toolDetail",path:"/tools/:slug",routerManaged:!1,routeLocaleCoverage:"all",alternateLocaleCoverage:"available"}],Ie=m,je=(Ie.map(({code:e})=>e),"https://likedtabs.com"),Pe=new Map(Ie.map(e=>[e.code,e])),Ce=new Map(Ie.filter(({path:e})=>e).map(({code:e,path:t})=>[t.toLowerCase(),e])),Re=e=>(e.startsWith("/")?e:`/${e}`)||"/",Oe=e=>
2Re(e).split("/").filter(Boolean)[0]?.toLowerCase()??"",De=e=>{const t=Re(e),a=Oe(t);return Ce.has(a)?t.replace(new RegExp(`^/${a}(?=/|$)`,"i"),"")||"/":t},Se=e=>Re(e).split(/[?#]/,1)[0].replace(/\/+$/,"")||"/",Ve=e=>"all"===e?Ie:Ie.filter(({code:e})=>"en"===e||"zh-CN"===e),Ne=e=>{const t=De(e);return Ae.find(({path:e})=>((e,t)=>{const a=Se(e).split("/").filter(Boolean),o=Se(t).split("/").filter(Boolean);return a.length===o.length&&o.every((e,t)=>e.startsWith(":")||e===a[t])})(t,e))},Be=e=>Ce.get(Oe(e))??"en",Ge=e=>{const t=Ne(e);if(!t)return null;const a=Be(e);return Ve(t.routeLocaleCoverage).some(({code:e})=>e===a)?a:null},Me=(e,t)=>{const a=De(t),o=Pe.get(e)?.path;return o?`/${o}${a}`:a},xe=(e,t)=>{const a=Me(e,t);return a.endsWith("/")?a:`${a}/`},We=(e,t,a="",o="")=>`${Me(e,t)}${a}${o}`,Ue=e=>{const t=De(e),a=Ne(t),o=Ve("all"===a?.alternateLocaleCoverage?"all":"en-zh"),i=`${je}${xe("en",t)}`;return[...o.map(({code:e})=>({hrefLang:e,href:`${je}${xe(e,t)}`})),{hrefLang:"x-default",href:i}]},He=e=>Pe.get(e)?.direction??"ltr",qe={components:{blogComments:{anonymous:"Anonymous",cancelReply:"Cancel reply",deleted:"This comment was deleted by moderation.",description:"Comments are reviewed before they appear publicly.",empty:"No published comments yet.",loadError:"Comments could not be loaded.",loading:"Loading commentsâ¦",loadingMore:"Loading more commentsâ¦",loadMore:"Load more comments",loadMoreError:"More comments could not be loaded.",message:"Comment",messagePlaceholder:"Share a useful question or experienceâ¦",nickname:"Name (optional)",pending:"Thanks â your comment is awaiting review.",rateLimited:"Too many comments. Please try again in a few minutes.",reply:"Reply",replyingTo:"Replying to {{name}}",report:"Report",reportError:"The report could not be sent. Your reason is still here.",reporting:"Sendingâ¦",reportPlaceholder:"Describe the issueâ¦",reportReason:"Why should this comment be reviewed?",reportReceived:"Thanks â the report was sent to the moderation queue.",retry:"Try again",submit:"Submit for review",submitError:"Your comment could not be submitted. Your text is still here.",submitReport:"Send report",submitting:"Submittingâ¦",title:"Discussion"},guestbook:{badge:"Guestbook",counter:"{{count}}/500",deleteConfirm:"Delete this message?",deleted:"Deleted by admin",deletePending:"Deletingâ¦",emailLabel:"Email (optional, never shown publicly)",emailPlaceholder:"[email protected]",empty:"No messages yet. Be the first to say hi.",error:"Could not send the message. Please try again.",lead:"Have feedback, an idea, or just want to say hi? Drop a note below. No login needed â your message shows up under an anonymous handle.",loading:"Loading messagesâ¦",messageLabel:"Message",messagePlaceholder:"Write what you want to shareâ¦",nicknameLabel:"Nickname (optional)",nicknamePlaceholder:"How should we call you?",noBackend:"Supabase is not configured in this environment. The guestbook is read-only for now.",relativeDays:"{{count}} d ago",relativeHours:"{{count}} hr ago",relativeMinutes:"{{count}} min ago",relativeNow:"just now",submit:"Send",submitting:"Sendingâ¦",success:"Thanks â your message is up.",title:"Leave a message",visitor:"Visitor"}},nav:{about:"About",allTools:"All AI tools",ariaLabel:"Marketing navigation",blog:"Blog",coding:"Coding tools",guestbook:"Guestbook",home:"Home",image:"Image tools",install:"Install",newTab:"New tab manager",open:"Open app",productivity:"Productivity tools",simple:"Simple mode",submit:"Submit favorite",tools:"AI tools",video:"Video tools",writing:"Writing tools"},pages:JSON.parse('{"about":{"badge":"About LikedTabs","ctaText":"If you know a useful website or AI tool, submit it for review. Approved links can be added to the public database.","ctaTitle":"Help build a better website directory.","h1":"About us","open":"Open LikedTabs","p1":"LikedTabs is a personal productivity navigation and smart new tab product. We want to put useful websites, AI tools, personal bookmarks, and public recommendations into one clear entry point.","p2":"The product will keep improving high-quality website collection, cross-device sync, PWA installation, shared navigation pages, and user-submitted recommendation review.","principles":[{"body":"Prioritize useful, stable, clear websites and AI tools.","title":"Quality first"},{"body":"Help users find entry points for writing, coding, design, learning, and entertainment.","title":"Daily workflows"},{"body":"Public recommendations go through review before they enter the shared database.","title":"Human review"}],"seo":{"description":"Learn about LikedTabs, a personal productivity navigation and smart new tab product for bookmarks, useful websites, AI tools, and public re
2commendations.","title":"About - LikedTabs"},"submit":"Submit favorite"},"blogIndex":{"contentType":"Content type","empty":"No articles match the current filters.","filters":{"all":"All articles","comparison":"Comparisons","guide":"Guides"},"h1":"Blog","lead":"AI tool comparisons, bookmark managers, and browser workflow guides.","posts":{"best-bookmark-manager-chrome-2026":{"badge":"Comparison · 2026","description":"Chrome\'s default bookmarks are a mess. Here are 7 extensions that actually fix it â compared on organisation, search, sync, and price.","readTime":"7 min read","title":"Best bookmark manager for Chrome in 2026: 7 tools compared"},"chatgpt-vs-claude-vs-gemini-2026":{"badge":"AI Comparison · 2026","description":"Honest dimension-by-dimension comparison of the four dominant AI assistants â coding, writing, research, context window, privacy, and pricing.","readTime":"9 min read","title":"ChatGPT vs Claude vs Gemini vs DeepSeek: which AI should you use in 2026?"},"how-to-organize-ai-tools-browser":{"badge":"Setup Guide · 2026","description":"Stop re-typing URLs every time. Build a fast, organised AI workspace in Chrome â grouped by workflow context, not alphabetically by name.","readTime":"6 min read","title":"How to organise your AI tools in the browser: the 2026 setup guide"},"likedtabs-vs-toby-vs-tabliss":{"badge":"Comparison · 2026","description":"Three popular Chrome new tab replacements compared dimension by dimension â setup, bookmarks, AI tools, sync, privacy, and pricing.","readTime":"6 min read","title":"LikedTabs vs Toby vs Tabliss: which Chrome new tab fits you?"},"replace-chrome-new-tab-2026":{"badge":"Comparison · 2026","description":"Honest comparison of LikedTabs, Tabliss, Momentum, Toby, Workona, Start.me, Speed Dial 2, and Infinity. Pick the one that fits your workflow.","readTime":"8 min read","title":"Replace Chrome\'s new tab in 2026: 8 options compared"}},"readArticle":"Read article","searchLabel":"Search articles","searchPlaceholder":"Title, summary, or type","seo":{"description":"Honest comparisons of AI assistants, Chrome extensions, bookmark managers, and browser workflow setups â so you open the right tool faster every day.","title":"LikedTabs Blog â AI tools, bookmark managers, and browser productivity guides"}},"directory":{"categories":{"all":{"description":"Browse a curated AI tools directory by task, save favorites, and turn LikedTabs into your daily AI work hub.","lead":"Find tools for writing, coding, design, video, research, automation, and daily productivity in one searchable directory.","name":"All AI tools","title":"Find useful AI tools without digging through endless lists."},"bookmarks":{"description":"Use LikedTabs as a smart browser new tab and bookmark manager for useful websites and AI tools.","lead":"Organize favorite websites, bookmarks, and AI tools on one searchable new tab page.","name":"New tab and bookmark manager","title":"Turn your browser new tab into a personal work hub."},"coding":{"description":"AI coding tools for code generation, debugging, code review, documentation, and developer productivity.","lead":"Browse tools for code generation, debugging, documentation, technical search, and developer workflows.","name":"AI coding tools","title":"Ship code faster with AI assistants built for developers."},"image":{"description":"Curated AI image tools for generation, editing, background removal, upscaling, mockups, and design assets.","lead":"Find tools for image generation, editing, background removal, upscaling, mockups, and design assets.","name":"AI image tools","title":"Generate, edit, and upscale images with AI."},"productivity":{"description":"Build a focused work hub with AI productivity tools for notes, tasks, meetings, automation, and agents.","lead":"Find tools for notes, tasks, meetings, automation, agents, and personal productivity.","name":"AI productivity tools","title":"Get more done with AI agents and workflow tools."},"simple":{"description":"A clean simple mode for launching AI tools, search engines, and useful websites from one fast new tab page.","lead":"Keep search and useful websites in a calm, lightweight browser start page.","name":"Simple new tab","t
2itle":"A faster, cleaner new tab for AI tools and everyday websites."},"video":{"description":"AI video tools for generation, editing, voice over, subtitles, and creative production.","lead":"Find tools for video generation, editing, voice synthesis, subtitles, animation, and creative production.","name":"AI video tools","title":"Create and edit video with AI."},"writing":{"description":"Hand-picked AI writing tools for first drafts, rewriting, grammar, summaries, translation, study notes, and professional communication.","lead":"Find tools for drafts, rewriting, grammar, summaries, translation, and marketing copy.","name":"AI writing tools","title":"Write, rewrite, summarise, and polish content faster."}},"common":{"eyebrow":"AI tools directory","faqTitle":"Frequently asked questions","fast":"Fast","fastBody":"Search, save, and launch useful tools","newTab":"New tab","newTabBody":"Built for a focused browser start page","noResults":"No matching tools found.","open":"Open LikedTabs","openTool":"Open tool","recommendedCount":"{{count}} recommended AI tools","recommendedLead":"Browse useful tools selected for this task.","recommendedTitle":"Recommended tools","scenariosLead":"Combine useful tools into a workflow and keep them one click away.","scenariosTitle":"Real workflows","searchPlaceholder":"Search tools","toolFallbackDescription":"{{name}} is a {{category}} tool. Open its official website to review current features, availability, and pricing."}},"guestbook":{"seo":{"description":"Leave feedback, ideas, or a quick note for the LikedTabs team.","title":"Guestbook - LikedTabs"}},"privacy":{"back":"Back to LikedTabs","h1":"Privacy Policy","lastUpdated":"Last updated: 2026-05-20","scope":"Applies to likedtabs.com and the LikedTabs Chrome extension.","sections":[{"items":["We do not sell your data or share it with advertisers.","We do not read your browsing history. Page access is limited to OG/Twitter preview metadata when you save the current page and selected text when you use quote capture.","You can export and delete your data at any time."],"paragraphs":["LikedTabs is a smart new tab and personal navigation product. We store as little data as possible. Most data stays in your browser; only the navigation snapshot you choose to sync leaves your device."],"title":"Summary"},{"items":["Saved websites, bookmarks, custom categories, favorites, and category order.","Interface preferences such as language, theme, mode, and layout.","Daily routines created in the routines widget."],"paragraphs":["By default, with no account required, the website and extension store data in localStorage and chrome.storage. This data never leaves your device unless you sign in and choose to sync."],"title":"Locally stored data"},{"paragraphs":["Only if you sign in, your navigation snapshot is synced to Supabase so it can follow you across devices. We store your sign-in email, an encrypted password hash, the navigation snapshot, and sync timestamps. We never see your raw password."],"title":"Account data","items":[]},{"paragraphs":["If you submit a website recommendation, we store its URL, title, description, and category for admin review.","The likedtabs.com website uses Google Analytics (gtag.js) for aggregate traffic signals such as page views, country, referrer, and anonymized IP. The Chrome extension contains no analytics, tracking pixels, or third-party scripts."],"title":"Submissions and analytics","items":[]},{"paragraphs":["To display icons, the website and extension load favicons from Google favicon CDN hosts t0.gstatic.com and t1-t3.gstatic.com. Saved URLs are sent only to fetch the icon; no other data is sent."],"title":"Website icons","items":[]},{"items":["tabs: read the current tab URL and title when you choose to save that page; browsing history is not read.","storage: keep local navigation state inside the extension.","activeTab + scripting: after you choose Save, read only OG/Twitter preview-image metadata from that same current page; selected text is read only when you use quote capture.","chrome_url_overrides.newtab: replace the default Chrome new tab.","chrome_settings_overrides.homepage and startup_pages: optionally make LikedTabs the homepage and startup page.","Host access for likedtabs.com, localhost:3002, and the Supabase project URL: sync with the web app and account backend.","A content script on likedtabs.com and localhost:3002 only: exchange navigation state with the extension; it does not run on other sites."],"paragraphs":["LikedTabs requests these permissions only for the purposes listed:"],"title":"Chrome extension permissions"},{"items":["Local data stays in your browser on your device.","Synced account data is stored by Supabase in a regional data center managed by Supabase Inc.","Website analytics is stored on Google Analytics servers."],"title":"Where data is stored","paragraphs":[]},{"items":["Export: Settings > Import / Export downloads your navigation data as JSON.","Delete locally: clear browser data or use Settings > Reset.","Delete from our servers: email the address below; we will remove your account and synced snapshot within 30 days."],"title":"Your rights","paragraphs":[]},{"paragraphs":["LikedTabs is not directed at children under 13, and we do not knowingly collect data from children.","If this policy changes materially, we will update the date above and announce the change on the website."],"title":"Children and policy changes","items":[]}
2,{"paragraphs":["Questions or deletion requests: [email protected]"],"title":"Contact","items":[]}],"seo":{"description":"LikedTabs privacy policy: what data the website and Chrome extension handle, where it is stored, and how to export or delete it.","title":"Privacy Policy - LikedTabs"}},"submit":{"appQuestion":"Want to use the navigation page directly?","badge":"Submit favorite","error":"Submit failed. Please try again later.","fields":{"category":"Category / subcategory","description":"Short description","email":"Contact email","name":"Website name","note":"Additional note","tags":"Tags","url":"Website URL"},"h1":"Submit a recommended website","lead":"Recommend useful websites, AI tools, or resources to LikedTabs. Your submission will enter the Supabase review queue first, then admins can approve it for the public database.","noSupabase":"Supabase is not configured in this environment. Before production, add VITE_SUPABASE_URL and VITE_SUPABASE_ANON_KEY, then run the Supabase SQL.","open":"Open LikedTabs","placeholders":{"category":"Writing, Coding, Entertainment","description":"What problem does this website solve, and who is it for?","email":"Optional, used only if more information is needed","name":"For example ChatGPT","note":"Optional, such as why you recommend it, whether it is free, or whether login is required","tags":"AI, Design, Free","url":"https://example.com"},"seo":{"description":"Recommend a website or AI tool to LikedTabs. Submissions go to Supabase for admin review before being added to the public database.","title":"Submit Favorite - LikedTabs"},"steps":{"back":"Back","counter":"Step","headings":["Website link","Product details","Contact details","Review before submitting"],"labels":["Website","Details","Contact","Preview"],"next":"Continue","notProvided":"Not provided","of":"of","previewLead":"Confirm how this recommendation will enter the admin review queue.","progressLabel":"Submission progress"},"submit":"Submit for admin review","submitting":"Submitting...","success":"Submitted. It will be added to the public database after admin approval.","tips":["Please submit a real, accessible URL.","A clear description helps admins choose the right category.","Duplicate, broken, or low-quality links may not be added to the public database."],"validation":{"duplicateUrl":"This website is already listed. Use a different URL or contact us to update it.","invalidEmail":"Enter a valid contact email or leave this field empty.","invalidUrl":"Enter a real HTTP(S) website URL before submitting.","nameRequired":"Enter a website name before submitting.","urlRequired":"Enter a website URL before submitting."}}}'),submitCredits:{authError:"Sign-in failed. Check your email and password and try again.",costNotice:"Submitting costs 900 AI membership credits. If your submission is rejected, 890 credits are refunded. Approved sites stay listed in the public directory for one month.",emailPlaceholder:"Email",insufficientCredits:"You don't have enough AI membership credits to submit (900 required).",loginRequired:"Sign in to submit a website recommendation. This helps us prevent duplicate and abusive submissions and keep quality high.",passwordPlaceholder:"Password",signIn:"Sign in",signUp:"Create account"}},ze={components:{blogComments:{anonymous:"å¿å访客",cancelReply:"åæ¶åå¤",deleted:"æ¤è¯è®ºå·²è¢«å®¡æ ¸å é¤ã",description:"è¯è®ºç»å®¡æ ¸åæä¼å
¬å¼æ¾ç¤ºã",empty:"è¿æ²¡æå·²å
¬å¼è¯è®ºã",loadError:"è¯è®ºææ¶æ æ³å è½½ã",loading:"æ£å¨å è½½è¯è®ºâ¦",loadingMore:"æ£å¨å è½½æ´å¤è¯è®ºâ¦",loadMore:"å è½½æ´å¤è¯è®º",loadMoreError:"æ´å¤è¯è®ºææ¶æ æ³å è½½ã",message:"è¯è®º",messagePlaceholder:"å享æå¸®å©çé®é¢æä½¿ç¨ç»éªâ¦",nickname:"æµç§°ï¼å¯éï¼",pending:"谢谢ï¼ä½ çè¯è®ºæ£å¨çå¾
å®¡æ ¸ã",rateLimited:"æäº¤è¿äºé¢ç¹ï¼è¯·å åéååè¯ã",reply:"åå¤",replyingTo:"æ£å¨åå¤ {{name}}",report:"举æ¥",reportError:"ä¸¾æ¥æäº¤å¤±è´¥ï¼å¡«åçåå ä»å¨è¿éã",reporting:"æ£å¨æäº¤â¦",reportPlaceholder:"说æå
·ä½é®é¢â¦",reportReason:"为ä»ä¹è¿æ¡è¯è®ºéè¦å®¡æ ¸ï¼
2",reportReceived:"谢谢ï¼ä¸¾æ¥å·²åéè³å®¡æ ¸éåã",retry:"éè¯",submit:"æäº¤å®¡æ ¸",submitError:"è¯è®ºæäº¤å¤±è´¥ï¼è¾å
¥å
容已ä¿çã",submitReport:"æäº¤ä¸¾æ¥",submitting:"æ£å¨æäº¤â¦",title:"讨论"},guestbook:{badge:"èç³»æä»¬",counter:"{{count}}/500",deleteConfirm:"ç¡®å®å é¤è¿æ¡çè¨ï¼",deleted:"已被管çåå é¤",deletePending:"å é¤ä¸â¦",emailLabel:"é®ç®±ï¼å¯éï¼ä¸ä¼å
¬å¼ï¼",emailPlaceholder:"ä½ çé®ç®±å°å",empty:"è¿æ²¡æçè¨ï¼æ¬¢è¿ç¬¬ä¸ä¸ªææå¼ã",error:"åé失败ï¼è¯·ç¨ååè¯ã",lead:"æåé¦ãæ³æ³æè
åªæ¯æ³æä¸ªæå¼ï¼åå¨ä¸é¢å°±å¥½ãæ éç»å½ââä½ ççè¨ä¼ä»¥å¿åæµç§°æ¾ç¤ºã",loading:"å è½½çè¨ä¸â¦",messageLabel:"çè¨",messagePlaceholder:"åä¸ä½ æ³è¯´çâ¦",nicknameLabel:"æµç§°ï¼å¯éï¼",nicknamePlaceholder:"æ³è®©æä»¬æä¹ç§°å¼ä½ ï¼",noBackend:"å½åç¯å¢æ²¡æé
ç½® Supabaseï¼çè¨æ¿æä¸ºåªè¯»ã",relativeDays:"{{count}} 天å",relativeHours:"{{count}} å°æ¶å",relativeMinutes:"{{count}} åéå",relativeNow:"åå",submit:"åé",submitting:"åéä¸â¦",success:"å·²åéï¼è°¢è°¢ä½ ççè¨ã",title:"çè¨æ¿",visitor:"游客"}},nav:{about:"å
³äºæä»¬",allTools:"å
¨é¨ AI å·¥å
·",ariaLabel:"è¥é导èª",blog:"å客",coding:"AI ç¼ç¨",guestbook:"çè¨æ¿",home:"é¦é¡µ",image:"AI å¾å",install:"å®è£
",newTab:"æ°æ ç¾é¡µç®¡ç",open:"æå¼åºç¨",productivity:"AI æç",simple:"ç®æ´æ¨¡å¼",submit:"æ·»å æ¨èæ¶è",tools:"AI å·¥å
·",video:"AI è§é¢",writing:"AI åä½"},pages:JSON.parse('{"about":{"badge":"å
³äº LikedTabs","ctaText":"å¦æä½ åç°å¼å¾æ¶å½çç½ç«æ AI å·¥å
·ï¼å¯ä»¥æäº¤æ¨èã管çåå®¡æ ¸éè¿åä¼å å
¥å
Œ
±æ°æ®åºã","ctaTitle":"ä¸èµ·å®åæ´å¥½çç½ç«å¯¼èªåºã","h1":"å
³äºæä»¬","open":"æå¼ LikedTabs","p1":"LikedTabs æ¯ä¸ä¸ªä¸ªäººæç导èªåæºè½æ°æ ç¾é¡µäº§åãæä»¬å¸ææå¸¸ç¨ç½ç«ãAI å·¥å
·ã个人æ¶èåå
Œ
±æ¨èæ¾å¨ä¸ä¸ªæ¸
æ°çå
¥å£éã","p2":"产å伿ç»ä¼åé«è´¨éç½åæ¶å½ã跨设å¤åæ¥ãPWA å®è£
ãå享导èªé¡µåç¨æ·æ¨èå®¡æ ¸æµç¨ã","principles":[{"body":"ä¼å
æ¶å½ç¨³å®ãæ¸
æ°ãæçå®ä½¿ç¨ä»·å¼çç½ç«å AI å·¥å
·ã","title":"éè§è´¨é"},{"body":"è®©ç¨æ·å¨åä½ãå¼åã设计ãå¦ä¹ å危乿¶é½è½å¿«éæ¾å°å
¥å£ã","title":"é¢åæ¥å¸¸"},{"body":"å
Œ
±æ¨èå
è¿å
¥å¾
å®¡æ ¸æµç¨ï¼åå°ä½è´¨éãé夿失æé¾æ¥ã","title":"äººå·¥å®¡æ ¸"}],"seo":{"description":"äºè§£ LikedTabsï¼ä¸ä¸ªå´ç»å¸¸ç¨ç½ç«ãæ¶èæ´çãAI å·¥å
·åæµè§å¨æ°æ ç¾é¡µæçåºæ¯æå»ºç个人导èªäº§åã","title":"å
³äºæä»¬ - LikedTabs"},"submit":"æ·»å æ¨èæ¶è"},"blogIndex":{"contentType":"å
容类å","empty":"没æç¬¦åå½åæ¡ä»¶çæç« ã","filters":{"all":"å
¨é¨æç« ","comparison":"横å对æ¯","guide":"æå"},"h1":"å客","lead":"AI å·¥å
·å¯¹æ¯ã书ç¾ç®¡çåæµè§å¨å·¥ä½æµæåã","posts":{"best-bookmark-manager-chrome-2026":{"badge":"横åå¯¹æ¯ Â· 2026","description":"Chrome èªå¸¦ä¹¦ç¾åè½å·²ç»è½ä¼ã7 款æ©å±ä»æ¶èé度ãæç´¢ã跨设å¤åæ¥åå®ä»·å
¨é¢è¯æµã","readTime":"é
读约 7 åé","title":"2026 å¹´æå¥½ç¨ç Chrome 书ç¾ç®¡çæä»¶ï¼7 款横å对æ¯"},"chatgpt-vs-claude-vs-gemini-2026":{"badge":"AI å¯¹æ¯ Â· 2026","description":"åå¤§ä¸»æµ AI 婿é维度è¯å®å¯¹æ¯ââåä½ãç¼ç¨ãé¿ææ¡£ãèç½æç´¢ãæ°å¦æ¨çãéç§åå®ä»·å
¨é¢è¯æµã","readTime":"é
读约 9 åé","title":"ChatGPT vs Claude vs Gemini vs DeepSeekï¼2026 年该ç¨åªä¸ªï¼"},"how-to-organize-ai-tools-browser":{"badge":"æå»ºæå · 2026","description":"ä¸åæ¯æ¬¡éæ°æ¾ç½åãæå·¥ä½åºæ¯è䏿¯å·¥å
·åç§°ï¼10 åéå¨ Chrome éæå»ºä¸å¥å¿«éãæåºç AI å·¥å
·å·¥ä½åºã","readTime":"é
读约 6 åé","title":"å¦ä½å¨æµè§å¨æ´çä½ ç AI å·¥å
·ï¼2026 年工使µæå»ºæå"},"likedtabs-vs-toby-vs-tabliss":{"badge":"横åå¯¹æ¯ Â· 2026","description":"䏿¬¾çé¨ Chrome æ°æ ç¾é¡µæ¿æ¢æ¹æ¡é维度对æ¯ââå®è£
ã书ç¾ãAI å·¥å
·ã忥ãéç§åå®ä»·ã","readTime":"é
读约 6 åé","title":"LikedTabs vs Toby vs Tablissï¼åªæ¬¾ Chrome æ°æ ç¾é¡µéåä½ ï¼"},"replace-chrome-new-tab-2026":{"badge":"横åå¯¹æ¯ Â· 2026","description":"è¯å®å¯¹æ¯ LikedTabsãTablissãMomentumãTobyãWorkonaãStart.meãSpeed Dial 2ãInfinityï¼æå·¥ä½æµæä¸æ¬¾ã","readTime":"é
读约 8 åé","title":"2026 å¹´æ¿ä»£ Chrome æ°æ ç¾é¡µï¼8 æ¬¾æ¹æ¡å¯¹æ¯"}}
2,"readArticle":"é
读å
¨æ","searchLabel":"æç´¢æç« ","searchPlaceholder":"æ é¢ãæè¦æç±»å","seo":{"description":"AI 婿坹æ¯ãChrome æ©å±è¯æµã书ç¾ç®¡çæå·§åæµè§å¨å·¥ä½æµæå»ºæåï¼å©ä½ æ¯å¤©æ´å¿«æå¼æ£ç¡®çç½ç«åå·¥å
·ã","title":"LikedTabs å客 â AI å·¥å
·ã书ç¾ç®¡çåæµè§å¨æçæå"}},"directory":{"categories":{"all":{"description":"æä»»å¡æµè§ç²¾é AI å·¥å
·ï¼æ¶èå¸¸ç¨æå¡ï¼æ LikedTabs åææ¥å¸¸ AI å·¥ä½å
¥å£ã","lead":"å¨ä¸ä¸ªå¯æç´¢ç®å½ä¸æ¥æ¾åä½ãç¼ç¨ã设计ãè§é¢ãç ç©¶ãèªå¨å忥叏æçå·¥å
·ã","name":"å
¨é¨ AI å·¥å
·","title":"æä»»å¡æ¾å°å®ç¨ç AI å·¥å
·ï¼ä¸åç¿»æ¾æ å°½å表ã"},"bookmarks":{"description":"æ LikedTabs ç¨ä½æºè½æ°æ ç¾é¡µå书ç¾ç®¡çå¨ï¼é䏿´çå®ç¨ç½ç«ä¸ AI å·¥å
·ã","lead":"å¨ä¸ä¸ªå¯æç´¢çæ°æ ç¾é¡µæ´ç常ç¨ç½ç«ã书ç¾å AI å·¥å
·ã","name":"æ°æ ç¾é¡µå书ç¾ç®¡çå¨","title":"ææµè§å¨æ°æ ç¾é¡µåæä¸ªäººå·¥ä½å
¥å£ã"},"coding":{"description":"ç¨äºä»£ç çæãè°è¯ã代ç 审æ¥ãææ¡£åå¼åæçç AI ç¼ç¨å·¥å
·ã","lead":"æµè§ä»£ç çæãè°è¯ãææ¡£ãææ¯æç´¢åå¼å工使µå·¥å
·ã","name":"AI ç¼ç¨å·¥å
·","title":"ç¨é¢åå¼åè
ç AI 婿æ´å¿«äº¤ä»ä»£ç ã"},"image":{"description":"ç²¾éç¨äºçæãç¼è¾ãèæ¯ç§»é¤ãæ¾å¤§ãæ ·æºåè®¾è®¡ç´ æç AI å¾åå·¥å
·ã","lead":"æ¥æ¾å¾ççæãç¼è¾ãèæ¯ç§»é¤ãæ¾å¤§ãæ ·æºåè®¾è®¡ç´ æå·¥å
·ã","name":"AI å¾åå·¥å
·","title":"ç¨ AI çæãç¼è¾åæ¾å¤§å¾çã"},"productivity":{"description":"ç¨ç¬è®°ãä»»å¡ãä¼è®®ãèªå¨ååæºè½ä½å·¥å
·æé 䏿³¨å·¥ä½å
¥å£ã","lead":"æ¥æ¾ç¬è®°ãä»»å¡ãä¼è®®ãèªå¨åãæºè½ä½å个人æçå·¥å
·ã","name":"AI æçå·¥å
·","title":"ç¨ AI æºè½ä½å工使µå·¥å
·å®ææ´å¤äºæ
ã"},"simple":{"description":"éè¿ä¸ä¸ªå¿«éæ°æ ç¾é¡µçç®æ´æ¨¡å¼æå¼ AI å·¥å
·ãæç´¢å¼æåå®ç¨ç½ç«ã","lead":"å¨å®éãè½»éçæµè§å¨èµ·å§é¡µä¿çæç´¢å常ç¨ç½ç«ã","name":"ç®æ´æ°æ ç¾é¡µ","title":"æ´å¿«ãæ´æ¸
ç½å°æå¼ AI å·¥å
·åæ¥å¸¸ç½ç«ã"},"video":{"description":"ç¨äºçæãç¼è¾ãé
é³ãåå¹ååæå¶ä½ç AI è§é¢å·¥å
·ã","lead":"æ¥æ¾è§é¢çæãç¼è¾ãè¯é³åæãåå¹ãå¨ç»ååæå¶ä½å·¥å
·ã","name":"AI è§é¢å·¥å
·","title":"ç¨ AI å建åç¼è¾è§é¢ã"},"writing":{"description":"ç²¾éç¨äºåç¨¿ãæ¹åãè¯æ³æ£æ¥ãæ»ç»ãç¿»è¯ãå¦ä¹ ç¬è®°åä¸ä¸æ²éç AI åä½å·¥å
·ã","lead":"æ¥æ¾åç¨¿ãæ¹åãè¯æ³ãæ»ç»ãç¿»è¯åè¥éææ¡å·¥å
·ã","name":"AI åä½å·¥å
·","title":"æ´å¿«å®æåä½ãæ¹åãæ»ç»å润è²ã"}},"common":{"eyebrow":"AI å·¥å
·å¯¼èª","faqTitle":"常è§é®é¢","fast":"å¿«é","fastBody":"æç´¢ãæ¶èå¹¶å¿«éæå¼å¸¸ç¨å·¥å
·","newTab":"æ°æ ç¾é¡µ","newTabBody":"éåä½ä¸ºæµè§å¨å·¥ä½å
¥å£","noResults":"æ²¡ææ¾å°å¹é
çå·¥å
·ã","open":"æå¼ LikedTabs","openTool":"æå¼å·¥å
·","recommendedCount":"{{count}} 个æ¨è AI å·¥å
·","recommendedLead":"æµè§éåå½åä»»å¡çç²¾éå·¥å
·ã","recommendedTitle":"æ¨èå·¥å
·","scenariosLead":"æå®ç¨å·¥å
·ç»åæå·¥ä½æµï¼éæ¶ä¸é®æå¼ã","scenariosTitle":"çå®å·¥ä½æµ","searchPlaceholder":"æç´¢å·¥å
·","toolFallbackDescription":"{{name}} æ¯ä¸æ¬¾{{category}}å·¥å
·ã请æå¼å
¶å®æ¹ç½ç«æ¥çææ°åè½ãå¯ç¨æ
åµåå®ä»·ã"}},"guestbook":{"seo":{"description":"ç» LikedTabs çä¸åé¦ãæ³æ³æä¸å¥ç®åé®åã","title":"çè¨æ¿ - LikedTabs"}},"privacy":{"back":"è¿å LikedTabs","h1":"éç§æ¿ç","lastUpdated":"æè¿æ´æ°ï¼2026-05-20","scope":"éç¨äº likedtabs.com ç½ç«å LikedTabs Chrome æ©å±ã","sections":[{"items":["æä»¬ä¸ä¼åºå®ä½ çæ°æ®ï¼ä¹ä¸ä¼ä¸å¹¿ååå
±äº«ä½ çæ°æ®ã","æä»¬ä¸ä¼è¯»åä½ çæµè§åå²ã页é¢è®¿é®ä»
éäºä¿åå½å页颿¶è¯»å OG/Twitter é¢è§å
æ°æ®ï¼ä»¥åä½¿ç¨æå½ééæ¶è¯»åå·²éæåã","ä½ å¯ä»¥éæ¶å¯¼åºåå é¤èªå·±çæ°æ®ã"],"paragraphs":["LikedTabs æ¯æºè½æ°æ ç¾é¡µå个人导èªäº§åãæä»¬å°½å¯è½å°å°å卿°æ®ï¼å¤§å¤æ°æ°æ®çå¨ä½ çæµè§å¨ä¸ï¼åªæä½ 鿩忥ç导èªå¿«ç
§ä¼ç¦»å¼è®¾å¤ã"],"title":"æ¦è¿°"},{"items":["ä¿åçç½ç«ã书ç¾ãèªå®ä¹åç±»ãæ¶è夹åå类顺åºã","è¯è¨ã主é¢ã模å¼åå¸å±ççé¢å好ã","卿¥å¸¸ä»»å¡ç»ä»¶ä¸åå»ºçæ¥å¸¸ä»»å¡ã"],"paragraphs":["é»è®¤æ
åµä¸æ éè´¦å·ï¼ç½ç«åæ©å±ä¼ææ°æ®ä¿åå¨ localStorage å chrome.storage ä¸ãé¤éä½ ç»å½å¹¶éæ©åæ¥ï¼å¦åè¿äºæ°æ®ä¸ä¼ç¦»å¼ä½ ç设å¤ã"],"title":"æ¬å°åå¨çæ°æ®"},{"paragraphs":["åªæå¨ä½ ç»å½åï¼å¯¼èªå¿«ç
§æä¼åæ¥å° Supabaseï¼ä»¥ä¾¿è·¨è®¾å¤ä½¿ç¨ãæä»¬ä¼åå¨ç»å½é®ç®±ãå å¯åçå¯ç åå¸ã导èªå¿«ç
§å忥æ¶é´æ³ï¼æä»¬æ æ³çå°ä½ çåå§å¯ç ã"],"title":"è´¦å·æ°æ®","items":[]},{"paragraphs":["å¦æä½ æäº¤ç½ç«æ¨èï¼æä»¬ä¼ä¿å该ç½ç«ç URLãæ é¢ãæè¿°ååç±»ï¼ä¾ç®¡çåå®¡æ ¸ã","likedtabs.com ç½ç«ä½¿ç¨ Google Analyticsï¼gtag.jsï¼ç»è®¡é¡µé¢æµè§ãå½å®¶æå°åºãæ¥æºåå¿åå IP çæ±æ»æµéä¿¡å·ãChrome æ©å±ä¸å
å«åæèæ¬ãè·è¸ªåç´ æç¬¬ä¸æ¹èæ¬ã"],"title":"ç½ç«æ¨èä¸åæ","items":[]},{"paragraphs":["ä¸ºäºæ¾ç¤ºå¾æ ï¼ç½ç«åæ©å±ä¼ä» Google favicon CDN ä¸»æº t0.gstatic.
2com å t1-t3.gstatic.com å è½½ faviconãä¿åç URL åªä¼ç¨äºè·å徿 ï¼ä¸ä¼åéå
¶ä»æ°æ®ã"],"title":"ç½ç«å¾æ ","items":[]},{"items":["tabsï¼å¨ä½ éæ©ä¿åå½å页颿¶è¯»åå½åæ ç¾é¡µç URL åæ é¢ï¼ä¸ä¼è¯»åæµè§åå²ã","storageï¼å¨æ©å±ä¸ä¿åæ¬å°å¯¼èªç¶æã","activeTab + scriptingï¼éæ©ä¿ååï¼ä»
ä»åä¸ä¸ªå½å页é¢è¯»å OG/Twitter é¢è§å¾çå
æ°æ®ï¼ä»
å¨ä½¿ç¨æå½ééæ¶è¯»åå·²éæåã","chrome_url_overrides.newtabï¼æ¿æ¢ Chrome é»è®¤æ°æ ç¾é¡µã","chrome_settings_overrides.homepage å startup_pagesï¼å¯éå°æ LikedTabs 设为主页åå¯å¨é¡µã","likedtabs.comãlocalhost:3002 å Supabase é¡¹ç® URL ç主æºè®¿é®æéï¼ä¸ç½é¡µåºç¨åè´¦å·åç«¯åæ¥ã","ä»
å¨ likedtabs.com å localhost:3002 è¿è¡çå
å®¹èæ¬ï¼ä¸æ©å±äº¤æ¢å¯¼èªç¶æï¼ä¸ä¼å¨å
¶ä»ç½ç«è¿è¡ã"],"paragraphs":["LikedTabs åªä¸ºä¸åç¨éç³è¯·è¿äºæéï¼"],"title":"Chrome æ©å±æé"},{"items":["æ¬å°æ°æ®ä¿åå¨ä½ ç设å¤åæµè§å¨ä¸ã","忥çè´¦å·æ°æ®ç± Supabase åå¨å¨ Supabase Inc. 管ççåºåæ°æ®ä¸å¿ã","ç½ç«åææ°æ®åå¨å¨ Google Analytics æå¡å¨ã"],"title":"æ°æ®åæ¾ä½ç½®","paragraphs":[]},{"items":["导åºï¼å¨â设置 > 导å
¥ / 导åºâ䏿宿´å¯¼èªæ°æ®ä¸è½½ä¸º JSONã","æ¬å°å é¤ï¼æ¸
餿µè§å¨æ°æ®ï¼æä½¿ç¨â设置 > éç½®âã","仿å¡å¨å é¤ï¼å䏿¹é®ç®±åé请æ±ï¼æä»¬ä¼å¨ 30 天å
å é¤ä½ çè´¦å·ååæ¥å¿«ç
§ã"],"title":"ä½ çæå©","paragraphs":[]},{"paragraphs":["LikedTabs ä¸é¢å 13 å²ä»¥ä¸å¿ç«¥ï¼æä»¬ä¸ä¼æ
ææ¶éå¿ç«¥æ°æ®ã","å¦ææ¬æ¿çåçé大ååï¼æä»¬ä¼æ´æ°ä¸æ¹æ¥æï¼å¹¶å¨ç½ç«ä¸å
¬åã"],"title":"æªæå¹´äººåæ¿çåæ´","items":[]},{"paragraphs":["é®é¢æå é¤è¯·æ±ï¼[email protected]"],"title":"èç³»","items":[]}],"seo":{"description":"LikedTabs éç§æ¿çï¼è¯´æç½ç«å Chrome æ©å±ä¼å¤çåªäºæ°æ®ãæ°æ®åæ¾å¨åªéï¼ä»¥åå¦ä½å¯¼åºæå 餿°æ®ã","title":"éç§æ¿ç - LikedTabs"}},"submit":{"appQuestion":"æ³ç´æ¥ä½¿ç¨å¯¼èªé¡µï¼","badge":"æ·»å æ¨èæ¶è","error":"æäº¤å¤±è´¥ï¼è¯·ç¨ååè¯ã","fields":{"category":"åç±» / ååç±»","description":"ç®çä»ç»","email":"èç³»é®ç®±","name":"ç½ç«åç§°","note":"è¡¥å
说æ","tags":"æ ç¾","url":"ç½ç«é¾æ¥"},"h1":"æ·»å æ¨èç½ç«","lead":"æä½ 认为å¼å¾æ¶å½çç½ç«ãAI å·¥å
·æèµæºæ¨èç» LikedTabsãæäº¤åä¼å
è¿å
¥ Supabase å¾
å®¡æ ¸è¡¨ï¼ç®¡çå确认质éãåç±»å龿¥æææ§åååå¸å°å
Œ
±æ°æ®åºã","noSupabase":"å½åç¯å¢è¿æ²¡æé
ç½® Supabaseãä¸çº¿åè¯·å¨ .env éé
ç½® VITE_SUPABASE_URL å VITE_SUPABASE_ANON_KEYï¼å¹¶æ§è¡ Supabase SQLã","open":"æå¼ LikedTabs","placeholders":{"category":"åä½, ç¼ç¨, 娱ä¹","description":"è¿ä¸ªç½ç«ä¸»è¦è§£å³ä»ä¹é®é¢ï¼éåè°ä½¿ç¨ï¼","email":"å¯éï¼ç¨äºéè¦è¡¥å
ä¿¡æ¯æ¶èç³»","name":"ä¾å¦ ChatGPT","note":"å¯éï¼ä¾å¦æ¨èçç±ãæ¯å¦å
è´¹ãæ¯å¦éè¦ç»å½ç","tags":"AI, 设计, å
è´¹","url":"https://example.com"},"seo":{"description":"å LikedTabs æ¨èå¼å¾æ¶å½çç½ç«æ AI å·¥å
·ï¼æäº¤åè¿å
¥ Supabase å¾
å®¡æ ¸å表ï¼ç®¡çå确认åå å
¥å
Œ
±æ°æ®åºã","title":"æ·»å æ¨èæ¶è - LikedTabs"},"steps":{"back":"è¿å","counter":"第","headings":["ç½ç«é¾æ¥","产å详æ
","è系信æ¯","æäº¤åæ ¸å¯¹"],"labels":["ç½ç«","详æ
","èç³»","é¢è§"],"next":"ç»§ç»","notProvided":"æªå¡«å","of":"æ¥ï¼å
±","previewLead":"è¯·ç¡®è®¤è¿æ¡æ¨èè¿å
¥ç®¡çåå®¡æ ¸éåæ¶æ¾ç¤ºçä¿¡æ¯ã","progressLabel":"æäº¤è¿åº¦"},"submit":"æäº¤ç»ç®¡çåå®¡æ ¸","submitting":"æäº¤ä¸...","success":"å·²æäº¤ï¼ç®¡çåå®¡æ ¸éè¿åä¼å å
¥å
Œ
±æ°æ®åºã","tips":["请尽éæäº¤çå®å¯è®¿é®çç½åã","æè¿°è¶æ¸
æ¥ï¼ç®¡çåè¶å®¹æå¤æéåçåç±»ã","éå¤ã失ææä½è´¨é龿¥å¯è½ä¸ä¼è¢«å å
¥å
Œ
±æ°æ®åºã"],"validation":{"duplicateUrl":"è¿ä¸ªç½ç«å·²ç»æ¶å½ã请使ç¨å
¶ä»ç
2½åï¼æèç³»æä»¬æ´æ°ç°ææ¡ç®ã","invalidEmail":"请è¾å
¥ææçèç³»é®ç®±ï¼æå°æ¤å段ç空ã","invalidUrl":"æäº¤å请è¾å
¥çå®ç HTTP(S) ç½ç«é¾æ¥ã","nameRequired":"æäº¤å请è¾å
¥ç½ç«åç§°ã","urlRequired":"æäº¤å请è¾å
¥ç½ç«é¾æ¥ã"}}}'),submitCredits:{authError:"ç»å½å¤±è´¥ï¼è¯·æ£æ¥é®ç®±åå¯ç åéè¯ã",costNotice:"æäº¤éè¦æ¶è 900 个 AI ä¼å积åï¼å¦æªéè¿å®¡æ ¸ï¼å°éè¿ 890 积åï¼éè¿å®¡æ ¸çç½ç«ä¼å¨å
Œ
±ç®å½å±ç¤º 1 个æã",emailPlaceholder:"é®ç®±",insufficientCredits:"AI ä¼å积åä¸è¶³ï¼æ æ³æäº¤ï¼éè¦ 900 积åï¼ã",loginRequired:"æäº¤æ¨èç½ç«éè¦å
ç»å½ï¼ç¨äºé²æ¢éå¤åæ»¥ç¨æäº¤ï¼ä¿è¯å
容质éã",passwordPlaceholder:"å¯ç ",signIn:"ç»å½",signUp:"注å"}},Fe=Object.assign({
2"./ar.json":()=>u(()=>import("./ar-B5ibtVur.js"),[]),
2"./bn.json":()=>u(()=>import("./bn--caaamUa.js"),[]),
2"./cs.json":()=>u(()=>import("./cs-BF7DlZls.js"),[]),
2"./de.json":()=>u(()=>import("./de-CXcxvHtn.js"),[]),
2"./dsb.json":()=>u(()=>import("./dsb-dlQYH3y3.js"),[]),
2"./el.json":()=>u(()=>import("./el-lUE_g2Vu.js"),[]),
2"./en-CA.json":()=>u(()=>import("./en-CA-BqU6R3pH.js"),[]),
2"./en-GB.json":()=>u(()=>import("./en-GB-BqU6R3pH.js"),[]),
2"./en-US.json":()=>u(()=>import("./en-US-BqU6R3pH.js"),[]),
2"./es-AR.json":()=>u(()=>import("./es-AR-C3Cl6Z9k.js"),[]),
2"./es-CL.json":()=>u(()=>import("./es-CL-C3Cl6Z9k.js"),[]),
2"./es-ES.json":()=>u(()=>import("./es-ES-C3Cl6Z9k.js"),[]),
2"./es-MX.json":()=>u(()=>import("./es-MX-C3Cl6Z9k.js"),[]),
2"./es.json":()=>u(()=>import("./es-C3Cl6Z9k.js"),[]),
2"./fa.json":()=>u(()=>import("./fa-OmPXjmqh.js"),[]),
2"./fi.json":()=>u(()=>import("./fi-CBot3E1p.js"),[]),
2"./fil.json":()=>u(()=>import("./fil-BGlYvucZ.js"),[]),
2"./fr.json":()=>u(()=>import("./fr-BivIuglq.js"),[]),
2"./fur.json":()=>u(()=>import("./fur-Cqz2P0-5.js"),[]),
2"./fy-NL.json":()=>u(()=>import("./fy-NL-DGOLe5v-.js"),[]),
2"./he.json":()=>u(()=>import("./he-DUQZaYiV.js"),[]),
2"./hi.json":()=>u(()=>import("./hi-BWdVnOdQ.js"),[]),
2"./hr.json":()=>u(()=>import("./hr-BRiQqfTl.js"),[]),
2"./hsb.json":()=>u(()=>import("./hsb-C03hnkUe.js"),[]),
2"./hu.json":()=>u(()=>import("./hu-COdONhOz.js"),[]),
2"./ia.json":()=>u(()=>import("./ia-BxV42gfk.js"),[]),
2"./id.json":()=>u(()=>import("./id-DO-IWi7T.js"),[]),
2"./it.json":()=>u(()=>import("./it-BMOojjgX.js"),[]),
2"./ja.json":()=>u(()=>import("./ja-CECdi0_S.js"),[]),
2"./ka.json":()=>u(()=>import("./ka-DloDJRZq.js"),[]),
2"./kab.json":()=>u(()=>import("./kab-D5GeGcWG.js"),[]),
2"./ko.json":()=>u(()=>import("./ko-C3RjhBNE.js"),[]),
2"./mr.json":()=>u(()=>import("./mr-DQAzbjk4.js"),[]),
2"./ms.json":()=>u(()=>import("./ms-CG5fXo1I.js"),[]),
2"./nb-NO.json":()=>u(()=>import("./nb-NO-WzLHH5sC.js"),[]),
2"./nl.json":()=>u(()=>import("./nl-CRIw6Iyd.js"),[]),
2"./nn-NO.json":()=>u(()=>import("./nn-NO-D-D--CB3.js"),[]),
2"./pl.json":()=>u(()=>import("./pl-BUopHnNh.js"),[]),
2"./pt-BR.json":()=>u(()=>import("./pt-BR-44DedbTJ.js"),[]),
2"./pt-PT.json":()=>u(()=>import("./pt-PT-44DedbTJ.js"),[]),
2"./ro.json":()=>u(()=>import("./ro-dSs7tx3n.js"),[]),
2"./ru.json":()=>u(()=>import("./ru-C4SdRFwL.js"),[]),
2"./sk.json":()=>u(()=>import("./sk-CcYBf5FU.js"),[]),
2"./sl.json":()=>u(()=>import("./sl-ectbv6Lr.js"),[]),
2"./sq.json":()=>u(()=>import("./sq-DzVRKYq7.js"),[]),
2"./sv-SE.json":()=>u(()=>import("./sv-SE-tQgCFFqu.js"),[]),
2"./sw.json":()=>u(()=>import("./sw-JuQKsUU-.js"),[]),
2"./ta.json":()=>u(()=>import("./ta-C0UbIbEK.js"),[]),
2"./te.json":()=>u(()=>import("./te-C5zlzIjO.js"),[]),
2"./th.json":()=>u(()=>import("./th-BpDziHfc.js"),[]),
2"./tr.json":()=>u(()=>import("./tr-_slj9oVn.js"),[]),
2"./uk.json":()=>u(()=>import("./uk-CfNMwNPH.js"),[]),
2"./ur.json":()=>u(()=>import("./ur-DcSvLF-V.js"),[]),
2"./vi.json":()=>u(()=>import("./vi-Ce9Vyehq.js"),[]),
2"./zh-TW.json":()=>u(()=>import("./zh-TW-lVMACi8d.js"),[])}),Ke={en:qe,"zh-CN":ze},$e=new Map,Je=new Set,Ye=qe,Qe=e=>(Je.add(e),()=>Je.delete(e)),Xe=e=>Ke[e],Ze=e=>{const t=Ke[e];if(t)return Promise.resolve(t);const a=$e.get(e);if(a)return a;const o=Fe[`./${e}.json`];if(!o)return Promise.resolve(qe);const i=o().then(t=>(Ke[e]=t.default,$e.delete(e),(()=>{for(const e of Je)e()})(),t.default)).catch(t=>($e.delete(e),qe));return $e.set(e,i),i},et={useCases:{cases:[{id:"ai-power-user",persona:"AI power user",title:"Compare four AI models without juggling tabs",pitch:"Put ChatGPT, Claude, Gemini, and Perplexity in one space instead of reopening each service from browser history.",pain:"Every morning starts with finding and loading the same assistants. The repeated setup costs time and breaks focus.",workflow:[{step:"Create a Daily AI space",body:"Set LikedTabs as the Chrome new tab and add a space named Daily AI."},{step:"Pin the assistants",body:"Add ChatGPT, Claude, Gemini, and Perplexity, then keep Poe or Hugging Face as a fallback."},{step:"Add context tools",body:"Pin Notion for notes and DeepL for translated comparisons."}],tools:["ChatGPT","Claude","Gemini","Perplexity","Notion","DeepL","Poe"],outcome:"A new tab becomes a direct launch point for every assistant, with less repetitive searching and faster comparisons."},{id:"student",persona:"Student and researcher",title:"One space per class instead of one crowded bookmarks bar",pitch:"Separate course portals, papers, videos, notes, and AI tools into spaces for each class or research project.",pain:"Course links, papers, notes, and AI services are mixed together, so finding the right resource during a deadline takes too long.",workflow:[{step:"Create one space per class",body:"Name each space after a course or project, such as CS 410 or Thesis."},{step:"Pin the core resources",body:"Add the course portal, syllabus, Drive folder, Notion workspace, videos, and reference papers."},{step:"Add the right AI tools",body:"Use Claude or ChatGPT for explanations, DeepL for papers, Wolfram Alpha for maths, and Anki for review."}],tools:["Notion","Google Drive","Claude","DeepL","Google Scholar","Anki"],outcome:"Switching spaces switches context. Finished courses can be archived without cluttering current work."},{tools:["GitHub","Cursor","Stack Overflow","Claude","ChatGPT","Hugging Face"],id:"developer",persona:"Creator and developer",title:"A focused start surface for the way you actually code",pitch:"Create separate spaces for coding, debugging, and shipping so each work mode opens the right context.",pain:"GitHub, documentation, error tracking, AI assistants, and deployment dashboards are spread across stale browser windows.",workflow:[{step:"Create Code, Debug, and Ship spaces",body:"Each space represents a work mode and replaces manual tab rearranging."},{step:"Give each space the right tools",body:"Put GitHub and docs in Code, Stack Overflow and error tracking in Debug, and CI plus deployment dashboards in Ship."},{step:"Use fast search",body:"Search pinned sites from the address bar instead of scanning every open tab."}],outcome:"Every work mode starts with its own context, reducing tab clutter and mental overhead."}],seo:{title:"LikedTabs Use Cases â Real Setups for AI Users, Students, and Developers",description:"See how AI power users, students, and developers configure LikedTabs as their daily new tab through three concrete workflows."},badge:"Use cases",h1:"Three real ways people set up LikedTabs as their new tab.",lead:"These are three concrete daily workflows, with the exact tools and spaces each person pins so the right resource is one click away.",primaryCta:"Install Chrome extension",secondaryCta:"Try LikedTabs online",caseLabel:"Case {{number}} · {{persona}}",headings:{pain:"The problem",workflow:"The setup",tools:"Tools pinned",outcome:"What changes"},closing:{title:"These are three examples. Your workflow can be different.",body:"Install the extension, create a first space, and add the websites and tools you genuinely open every day.",primary:"Install Chrome extension",secondary:"Try LikedTabs online"}},alternatives:{badge:"Migration guide",seoTitle:"LikedTabs vs {{name}}: a practical new-tab migration guide",seoDescription:"A source-linked overview of {{name}} and LikedTabs, with an honest bookmark migration path and LikedTabs security checks.",h1:"Moving from {{name}}? Keep the useful parts, then choose what comes next.",lead:"This is a capability overview, not a scorecard. Competitor descriptions link to their public store listings; LikedTabs claims point to features you can try or verify.",reportedTitle:"What {{name}} says it offers",source:"Open the primary source",checked:"Source checked",likedTabsTitle:"What LikedTabs gives you",likedTabs:["Organize websites and AI tools into spaces and categories.","Keep search destinations and saved links intact, with a public local extension audit.","Import standard browser bookmarks, plus direct WeTab and iTab backup support."],migrationTitle:"Bring your links across",directBackup:"Direct backup importer",browserBookmarks:"Standard bookmark importer",migrationCta:"Open LikedTabs",trustTitle:"Check the security claims yourself",trustBody:"Read the permissions and no-rewrite commitments, then run the local extension audit if you install the extension.",trustCta:"Read security and transparency",relatedTitle:"Compare another starting point",relatedCta:"LikedTabs vs {{name}}",comparisons:{wetab:{sourceLabel:"WeTab Chrome Web Store listing",reportedCapabilities:"Its listing describes configurable widgets, website icons, search engines, themes, and optional account backup and sync.",importGuide:"In LikedTabs, choose Add website â Import, then select the WeTab backup file. The importer detects the WeTab format and preserves its folders."},itab:{sourceLabel:"iTab Chrome Web Store listing",reportedCapabilities:"Its listing describes widgets, custom shortcuts and search engines, and says that browser bookmarks can be imported.",importGuide:"In LikedTabs, choose Add website â Import, then select the iTab backup file. The importer detects the iTab format and keeps its source folders."},infinity:{sourceLabel:"Infinity New Tab Chrome Web Store listing",reportedCapabilities:"Its listing describes shortcuts, bookmarks, search, weather, to-dos, notes, wallpapers, and history management.",importGuide:"Export browser bookmarks as Netscape HTML, then choose Add website â Import in LikedTabs. LikedTabs imports HTML and Chromium Bookmarks JSON; no Infinity-specific backup parser is claimed here."},monknow:{sourceLabel:"MONKNOW Chrome Web Store listing",reportedCapabilities:"Its listing describes website groups, data sync, theme controls, custom icons, and optional browser-bookmark import.",importGuide:"Export browser bookmarks as Netscape HTML, then choose Add website â Import in LikedTabs. LikedTabs imports HTML and Chromium Bookmarks JSON; no MONKNOW-specific backup parser is claimed here."}}}},tt={useCases:{cases:[{workflow:[{step:"åå»ºâæ¥å¸¸ AIâ空é´",body:"æ LikedTabs 设为 Chrome æ°æ ç¾é¡µï¼åæ°å»ºä¸ä¸ªåä¸ºâæ¥å¸¸ AIâç空é´ã"},{step:"åºå®å¯¹è¯å©æ",body:"å å
¥ ChatGPTãClaudeãGemini å Perplexityï¼å¹¶ç¨ Poe æ Hugging Face ä½ä¸ºå¤ç¨ã"},{step:"å å
¥ä¸ä¸æå·¥å
·",body:"åºå® Notion è®°å½çæ¡ï¼å¹¶ç¨ DeepL 对ç
§ç¿»è¯ã"}],tools:["ChatGPT","Claude","Gemini","Perplexity","Notion","DeepL","Poe"],id:"ai-power-user",persona:"AI éåº¦ç¨æ·",title:"åæ¶æ¯è¾å个 AI 模åï¼ä¸åæ¥å忢æ ç¾é¡µ",pitch:"æ ChatGPTãClaudeãGemini å Perplexity æ¾è¿åä¸ç©ºé´ï¼ä¸å¿
æ¯å¤©ä»æµè§åå²éæ°æå¼ã",pain:"æ¯å¤©æ©ä¸é½è¦å¯»æ¾å¹¶å è½½ç¸åç AI 婿ï¼éå¤å夿¢æµªè´¹æ¶é´ï¼ä¹ä¼ææä¸æ³¨ã",outcome:"æ°æ ç¾é¡µç´æ¥æä¸ºææå©æçå¯å¨å
¥å£ï¼åå°éå¤æç´¢ï¼æ´å¿«å®ææ¨ªåæ¯è¾ã"},{id:"student",tools:["Notion","Google Drive","Claude","DeepL","Google Scholar","Anki"],persona:"å¦çåç ç©¶è
",title:"æ¯é¨è¯¾ç¨ä¸ä¸ªç©ºé´ï¼ä¸åæ¤å¨å䏿¡ä¹¦ç¾æ é",pitch:"æè¯¾ç¨æç 究项ç®ï¼æè¯¾ç¨é¨æ·ã论æãè§é¢ãç¬è®°å AI å·¥å
·åå°ä¸å空é´ã",pain:"课ç¨é¾æ¥ã论æãç¬è®°å AI æå¡å
¨æ··å¨ä¸èµ·ï¼ä¸´è¿æªæ¢æ¥ææ¶å¾é¾å¿«éæ¾å°æ£ç¡®èµæã",workflow:[{step:"æ¯é¨è¯¾ç¨å建ä¸ä¸ªç©ºé´",body:"ä»¥è¯¾ç¨æé¡¹ç®å½åï¼ä¾å¦âCS 410âæâæ¯ä¸è®ºæâã"},{step:"åºå®æ ¸å¿èµæ",body:"å å
¥è¯¾ç¨é¨æ·ãæå¦å¤§çº²ãDrive æä»¶å¤¹ãNotion å·¥ä½åºãè§é¢ååè论æã"},{step:"å å
¥éåç AI å·¥å
·",body:"ç¨ Claude æ ChatGPT è§£éæ¦å¿µãDeepL é
读论æãWolfram Alpha 计ç®ãAnki å¤ä¹ ã"}],outcome:"åæ¢ç©ºé´å°±çäºåæ¢ä¸ä¸æï¼è¯¾ç¨ç»æåå¯ä»¥å½æ¡£ï¼ä¸ä¼å¹²æ°å½åå·¥ä½ã"},{id:"developer",persona:"åä½è
åå¼åè
",title:"æçå®ç¼ç æ¹å¼æé 䏿³¨çèµ·å§é¡µ",pitch:"为ç¼ç ãè°è¯ååå¸åå«å»ºç«ç©ºé´ï¼è®©æ¯ç§å·¥ä½æ¨¡å¼æå¼æ£ç¡®çä¸ä¸æã",pain:"GitHubãææ¡£ãéè¯¯çæ§ãAI 婿åé¨ç½²é¢æ¿æ£è½å¨å¤ä¸ªè¿æçæµè§å¨çªå£ä¸ã",workflow:[{step:"å建 CodeãDebug å Ship 空é´",body:"æ¯ä¸ªç©ºé´å¯¹åºä¸ç§å·¥ä½æ¨¡å¼ï¼ä¸å¿
åæå¨éææ ç¾é¡µã"},{step:"ç»æ¯ä¸ªç©ºé´æ¾å
¥æ£ç¡®å·¥å
·",body:"Code æ¾ GitHub åææ¡£ï¼Debug æ¾ Stack Overflow åéè¯¯çæ§ï¼Ship æ¾ CI åé¨ç½²é¢æ¿ã"},{step:"使ç¨å¿«éæç´¢",body:"ç´æ¥ä»å°åæ æç´¢å·²åºå®çç½ç«ï¼ä¸å¿
é个æ¥çæå¼çæ ç¾é¡µã"}
2],tools:["GitHub","Cursor","Stack Overflow","Claude","ChatGPT","Hugging Face"],outcome:"æ¯ç§å·¥ä½æ¨¡å¼é½ä»èªå·±çä¸ä¸æå¯å¨ï¼åå°æ ç¾é¡µæä¹±å认ç¥è´æ
ã"}],seo:{title:"LikedTabs ä½¿ç¨æ¡ä¾ â AI ç¨æ·ãå¦çåå¼åè
ççå®é
ç½®",description:"çç AI éåº¦ç¨æ·ãå¦çåå¼åè
å¦ä½éè¿ä¸å¥å
·ä½å·¥ä½æµï¼æ LikedTabs é
ç½®ææ¯å¤©ä½¿ç¨çæ°æ ç¾é¡µã"},badge:"ä½¿ç¨æ¡ä¾",h1:"ä¸ç§æ LikedTabs è®¾ä¸ºæ°æ ç¾é¡µççå®ç¨æ³ã",lead:"ä¸é¢æ¯ä¸å¥å
·ä½çæ¥å¸¸å·¥ä½æµï¼ä»¥åæ¯ç±»ç¨æ·åºå®çå·¥å
·å空é´ï¼è®©æéèµæºå§ç»åªé䏿¬¡ç¹å»ã",primaryCta:"å®è£
Chrome æ©å±",secondaryCta:"å¨çº¿è¯ç¨ LikedTabs",caseLabel:"æ¡ä¾ {{number}} · {{persona}}",headings:{pain:"忥çé®é¢",workflow:"é
ç½®æ¹å¼",tools:"åºå®çå·¥å
·",outcome:"带æ¥çåå"},closing:{title:"è¿åªæ¯ä¸ä¸ªä¾åï¼ä½ ç工使µå¯ä»¥å®å
¨ä¸åã",body:"å®è£
æ©å±ï¼å建第ä¸ä¸ªç©ºé´ï¼åå å
¥ä½ æ¯å¤©çæ£ä¼æå¼çç½ç«åå·¥å
·ã",primary:"å®è£
Chrome æ©å±",secondary:"å¨çº¿è¯ç¨ LikedTabs"}},alternatives:{badge:"è¿ç§»æå",seoTitle:"LikedTabs ä¸ {{name}}ï¼å®ç¨çæ°æ ç¾é¡µè¿ç§»æå",seoDescription:"éè¿ä¸ææ¥æºäºè§£ {{name}} ä¸ LikedTabsï¼å¹¶æ¥çè¯å®ç书ç¾è¿ç§»è·¯å¾å LikedTabs å®å
¨èªæ¥å
¥å£ã",h1:"åå¤ä» {{name}} è¿ç§»ï¼ä¿ççæ£æç¨çé¨åï¼åå³å®ä¸ä¸æ¥ã",lead:"è¿æ¯è½å说æï¼ä¸æ¯æåæ¦ãç«åæè¿°é¾æ¥å°å
¬å¼ååºé¡µé¢ï¼LikedTabs ç说æåæåå¯ä»¥è¯ç¨æèªè¡éªè¯çåè½ã",reportedTitle:"{{name}} å
¬å¼è¯´æä¸ååºçè½å",source:"æå¼ä¸ææ¥æº",checked:"æ¥æºæ ¸å¯¹æ¥æ",likedTabsTitle:"LikedTabs æä¾ä»ä¹",likedTabs:["ç¨ç©ºé´ååç±»æ´çç½ç«ä¸ AI å·¥å
·ã","ä¿ææç´¢ç®æ åå·²ä¿å龿¥ä¸è¢«æ¹åï¼å¹¶æä¾å
¬å¼çæ¬å°æ©å±å®¡è®¡ã","导å
¥æ åæµè§å¨ä¹¦ç¾ï¼å¹¶ç´æ¥æ¯æ WeTab ä¸ iTab å¤ä»½ã"],migrationTitle:"è¿å
¥ä½ ç龿¥",directBackup:"ç´æ¥å¤ä»½å¯¼å
¥å¨",browserBookmarks:"æ å书ç¾å¯¼å
¥å¨",migrationCta:"æå¼ LikedTabs",trustTitle:"èªå·±æ ¸å¯¹å®å
¨æ¿è¯º",trustBody:"æ¥çæéåâ䏿¹åâæ¿è¯ºï¼å®è£
æ©å±åï¼è¿å¯ä»¥è¿è¡æ¬å°æ©å±å®¡è®¡ã",trustCta:"é
读å®å
¨ä¸éæè¯´æ",relatedTitle:"æ¯è¾å
¶ä»èµ·ç¹",relatedCta:"LikedTabs ä¸ {{name}}",comparisons:{wetab:{sourceLabel:"WeTab Chrome ç½ä¸åºç¨åºè¯´æ",reportedCapabilities:"å
¶ååºè¯´æååºå¯é
ç½®å°ç»ä»¶ãç½ç«å¾æ ãæç´¢å¼æã主é¢ï¼ä»¥åå¯éçè´¦å·å¤ä»½å忥ã",importGuide:"å¨ LikedTabs ä¸éæ©âæ·»å ç½ç« â 导å
¥âï¼åéæ© WeTab å¤ä»½æä»¶ã导å
¥å¨ä¼è¯å« WeTab æ ¼å¼å¹¶ä¿çæä»¶å¤¹ã"},itab:{sourceLabel:"iTab Chrome ç½ä¸åºç¨åºè¯´æ",reportedCapabilities:"å
¶ååºè¯´æååºå°ç»ä»¶ãèªå®ä¹å¿«æ·æ¹å¼åæç´¢å¼æï¼å¹¶è¯´ææ¯æå¯¼å
¥æµè§å¨ä¹¦ç¾ã",importGuide:"å¨ LikedTabs ä¸éæ©âæ·»å ç½ç« â 导å
¥âï¼åéæ© iTab å¤ä»½æä»¶ã导å
¥å¨ä¼è¯å« iTab æ ¼å¼å¹¶ä¿çæ¥æºæä»¶å¤¹ã"},infinity:{sourceLabel:"Infinity New Tab Chrome ç½ä¸åºç¨åºè¯´æ",reportedCapabilities:"å
¶ååºè¯´æååºå¿«æ·æ¹å¼ã书ç¾ãæç´¢ã天æ°ãå¾
åãç¬è®°ãå£çº¸ååå²ç®¡çã",importGuide:"å
å°æµè§å¨ä¹¦ç¾å¯¼åºä¸º Netscape HTMLï¼åå¨ LikedTabs ä¸éæ©âæ·»å ç½ç« â 导å
¥âãLikedTabs æ¯æ HTML å Chromium Bookmarks JSONï¼è¿éä¸å£°ç§°æä¾ Infinity ä¸ç¨å¤ä»½è§£æå¨ã"},monknow:{sourceLabel:"MONKNOW Chrome ç½ä¸åºç¨åºè¯´æ",reportedCapabilities:"å
¶ååºè¯´æååºç½ç«åç»ãæ°æ®åæ¥ã䏻颿§å¶ãèªå®ä¹å¾æ åå¯éçæµè§å¨ä¹¦ç¾å¯¼å
¥ã",importGuide:"å
å°æµè§å¨ä¹¦ç¾å¯¼åºä¸º Netscape HTMLï¼åå¨ LikedTabs ä¸éæ©âæ·»å ç½ç« â 导å
¥âãLikedTabs æ¯æ HTML å Chromium Bookmarks JSONï¼è¿éä¸å£°ç§°æä¾ MONKNOW ä¸ç¨å¤ä»½è§£æå¨ã"}}}},at=Object.assign({
2"./ar.json":()=>u(()=>import("./ar-CeksX1_o.js"),[]),
2"./bn.json":()=>u(()=>import("./bn-f3V0wt3o.js"),[]),
2"./cs.json":()=>u(()=>import("./cs-B2NHydvg.js"),[]),
2"./de.json":()=>u(()=>import("./de-Dx1QDdkg.js"),[]),
2"./dsb.json":()=>u(()=>import("./dsb-BHlgv3gJ.js"),[]),
2"./el.json":()=>u(()=>import("./el-C0wDijvW.js"),[]),
2"./en-CA.json":()=>u(()=>import("./en-CA-6IFKX41G.js"),[]),
2"./en-GB.json":()=>u(()=>import("./en-GB-DjhD8s5T.js"),[]),
2"./en-US.json":()=>u(()=>import("./en-US-ZqOGJO-7.js"),[]),
2"./es-AR.json":()=>u(()=>import("./es-AR-D347np9I.js"),[]),
2"./es-CL.json":()=>u(()=>import("./es-CL-Pi0QZWhV.js"),[]),
2"./es-ES.json":()=>u(()=>import("./es-ES-gtq2i3Tr.js"),[]),
2"./es-MX.json":()=>u(()=>import("./es-MX-CvyWSpP2.js"),[]),
2"./es.json":()=>u(()=>import("./es-cWHP6H4u.js"),[]),
2"./fa.json":()=>u(()=>import("./fa-CszKgwvK.js"),[]),
2"./fi.json":()=>u(()=>import("./fi-jTedOUys.js"),[]),
2"./fil.json":()=>u(()=>import("./fil-Bq035blz.js"),[]),
2"./fr.json":()=>u(()=>import("./fr-B17bOHvd.js"),[]),
2"./fur.json":()=>u(()=>import("./fur-BIH93P8f.js"),[]),
2"./fy-NL.json":()=>u(()=>import("./fy-NL-BIsHwM2q.js"),[]),
2"./he.json":()=>u(()=>import("./he-Cx-TEDXj.js"),[]),
2"./hi.json":()=>u(()=>import("./hi-COdRqMBN.js"),[]),
2"./hr.json":()=>u(()=>import("./hr-DRV3qd08.js"),[]),
2"./hsb.json":()=>u(()=>import("./hsb-CWnOsehh.js"),[]),
2"./hu.json":()=>u(()=>import("./hu-CkdnMRKY.js"),[]),
2"./ia.json":()=>u(()=>import("./ia-CDDVCoWB.js"),[]),
2"./id.json":()=>u(()=>import("./id-DRmMhlFd.js"),[]),
2"./it.json":()=>u(()=>import("./it-Dpx1XpwL.js"),[]),
2"./ja.json":()=>u(()=>import("./ja-CJ3rUeZ9.js"),[]),
2"./ka.json":()=>u(()=>import("./ka-Dqo1dJPH.js"),[]),
2"./kab.json":()=>u(()=>import("./kab-DB04ZIY-.js"),[]),
2"./ko.json":()=>u(()=>import("./ko-DS84cYvC.js"),[]),
2"./mr.json":()=>u(()=>import("./mr-Ci30m3KC.js"),[]),
2"./ms.json":()=>u(()=>import("./ms-Cn7zyvCf.js"),[]),
2"./nb-NO.json":()=>u(()=>import("./nb-NO-M9n6b3c2.js"),[]),
2"./nl.json":()=>u(()=>import("./nl-CjLAVUAW.js"),[]),
2"./nn-NO.json":()=>u(()=>import("./nn-NO-CJiQz19P.js"),[]),
2"./pl.json":()=>u(()=>import("./pl-DIMtj0ZA.js"),[]),
2"./pt-BR.json":()=>u(()=>import("./pt-BR-D9HLhA_K.js"),[]),
2"./pt-PT.json":()=>u(()=>import("./pt-PT-B-o_Vtrj.js"),[]),
2"./ro.json":()=>u(()=>import("./ro-CYLxkLb2.js"),[]),
2"./ru.json":()=>u(()=>import("./ru-CoY9GbQa.js"),[]),
2"./sk.json":()=>u(()=>import("./sk-TJEgiu7H.js"),[]),
2"./sl.json":()=>u(()=>import("./sl-BupKj5Nk.js"),[]),
2"./sq.json":()=>u(()=>import("./sq-BvO51W-G.js"),[]),
2"./sv-SE.json":()=>u(()=>import("./sv-SE-BPCgmfD0.js"),[]),
2"./sw.json":()=>u(()=>import("./sw-D5q_WI8L.js"),[]),
2"./ta.json":()=>u(()=>import("./ta-Cxr3cOCQ.js"),[]),
2"./te.json":()=>u(()=>import("./te-DfdpGYaq.js"),[]),
2"./th.json":()=>u(()=>import("./th-Dt82nvwW.js"),[]),
2"./tr.json":()=>u(()=>import("./tr-B7CnHipZ.js"),[]),
2"./uk.json":()=>u(()=>import("./uk-CT6JDgf7.js"),[]),
2"./ur.json":()=>u(()=>import("./ur-CGp9Ih3N.js"),[]),
2"./vi.json":()=>u(()=>import("./vi-B_nPeRWn.js"),[]),
2"./zh-TW.json":()=>u(()=>import("./zh-TW-BJocdVJt.js"),[])
2}),ot={en:et,"zh-CN":tt},it=new Map,rt=new Set,st=et,nt=e=>(rt.add(e),()=>rt.delete(e)),lt=e=>ot[e],dt=e=>{const t=ot[e];if(t)return Promise.resolve(t);const a=it.get(e);if(a)return a;const o=at[`./${e}.json`];if(!o)return Promise.resolve(et);const i=o().then(t=>(ot[e]=t.default,it.delete(e),(()=>{for(const e of rt)e()})(),t.default)).catch(t=>(it.delete(e),et));return it.set(e,i),i},ct=async()=>{const{applyServerDefaultsForFreshVisitor:e}=await u(async()=>{const{applyServerDefaultsForFreshVisitor:e}=await(import("./applyServerDefaults-B3GW07Qn.js"));return{applyServerDefaultsForFreshVisitor:e}},__vite__mapDeps([2,3,4,1,5,6,7,8,9,10,11,12,13,14]));e()},mt=async()=>{const{installAnalyticsQueue:e}=await u(async()=>{const{installAnalyticsQueue:e}=await(import("./thirdParty-BTKx19Zb.js"));return{installAnalyticsQueue:e}},[]);e(),function(){if("undefined"==typeof window)return;if(G())return;const e=z();window.__LIKEDTABS_TRAFFIC_CONTEXT__=e,"function"==typeof window.gtag&&window.gtag("set","user_properties",e)}();const{startEngagementHeartbeat:t}=await u(async()=>{const{startEngagementHeartbeat:e}=await(import("./engagementHeartbeat-CjQvlHjN.js"));return{startEngagementHeartbeat:e}},[]);t()},pt="likedtabs:app-route-ready",ut=()=>{window.dispatchEvent(new Event(pt))},_t=t(),ht=(e,t)=>{try{Promise.resolve(t()).catch(e=>{})}catch(a){}},gt=()=>{try{const e=new URLSearchParams(window.location.search),t=e.get("ref");if(!t)return;localStorage.setItem("pending-referral",t),e.delete("ref");const a=e.toString(),o=window.location.pathname+(a?`?${a}`:"")+window.location.hash;window.history.replaceState({},"",o)}catch{}},bt=()=>{try{return C(localStorage.getItem("language-storage"))}catch{return C(null)}},wt=()=>{const{pathname:e,search:t,hash:a}=window.location;if(!Ne(e))return;if((e=>Ce.get(Oe(e))??null)(e))return;const o=(()=>{try{return"1"===localStorage.getItem(k)}catch{return!1}})()?bt():P();if("en"===o)return;const i=We(o,e,t,a),r=new URL(i,window.location.origin).pathname;Ge(r)===o&&window.history.replaceState(window.history.state,"",i)},ft=async()=>{const e=Ge(window.location.pathname)??bt(),t=Ge(window.location.pathname);if(t){ke.setState({currentLanguage:e}),Le(e);const a=T(e),o=[Ze(t),a],i=Ne(window.location.pathname);"useCases"!==i?.id&&"alternativeComparison"!==i?.id||o.push(dt(t)),await Promise.all(o);const r=await a;return void(document.title=r.extension.manifest.appName)}await T(e)},Tt=(e,t=3e3)=>{"requestIdleCallback"in window&&window.requestIdleCallback?window.requestIdleCallback(e,{timeout:t}):window.setTimeout(e,t)},vt="desktopCacheCleared",yt=r.createRoot(document.getElementById("root")),Lt=async()=>{ht(0,E),ht(0,gt),wt(),(()=>{if(!s)return;const e=document.createElement("link");e.rel="preconnect",e.href=s,e.crossOrigin="anonymous",document.head.appendChild(e)})();const e=u(()=>import("./App-XyP6jYgJ.js").then(e=>e.t),__vite__mapDeps([15,1,16,5,4,17,6,14,18,19]));await ft();const{default:t}=await e;let a=!1,o=0;const i=()=>{a||(a=!0,window.removeEventListener(pt,i),window.clearTimeout(o),window.setTimeout(()=>{Tt(()=>{ht(0,mt),ht(0,async()=>{const{startTodoReminderScheduler:e}=await u(async()=>{const{startTodoReminderScheduler:e}=await(import("./todoReminders-DGpNthPh.js"));return{startTodoReminderScheduler:e}},__vite__mapDeps([20,21,1,5,22,16,17,4,19,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,3,6,7,8,9,10,11,12,13,14,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60]));e()}),ht(0,()=>(async e=>{const{markRoutineCompletedByUrl:t,useRoutineStore:a}=await u(async()=>{const{markRoutineCompletedByUrl:e,useRoutineStore:t}=await import("./routineStore-MJXol_Hy.js").then(e=>e.r);return{markRoutineCompletedByUrl:e,useRoutineStore:t}},__vite__mapDeps([46,1,4,5,42,6,12,9,43]));a.getState().ensureDefaultRoutines(),t(e)})(window.location.href)),ht(0,ct)})},5e3))};window.addEventListener(pt,i,{once:!0}),o=window.setTimeout(i,6e4),yt.render((0,_t.jsx)(t,{})),(async()=>{if(!y())return;let e=!1,t=!1;try{if("serviceWorker"in navigator){const t=await navigator.serviceWorker.getRegistrations();e=(await Promise.all(t.map(e=>e.unregister()))).some(Boolean)}}catch(a){}try{if("caches"in window){const e=await window.caches.keys(),a=await Promise.all(e.map(e=>window.caches.delete(e)));t=e.length>0||a.some(Boolean)}}catch(a){}(e||t)&&(sessionStorage.getItem(vt)||(sessionStorage.setItem(vt,"1"),window.location.reload()))})(),(()=>{if(y())return;const e=()=>{u(async()=>{const{registerLikedTabsServiceWorker:e}=await(import("./registerServiceWorker-D-R8BOpW.js"));return{registerLikedTabsServiceWorker:e}},[]).then(({registerLikedTabsServiceWorker:e})=>{e()}).catch(e=>{})},t=()=>{window.setTimeout(()=>Tt(e),1e4)};"complete"===document.readyState?t():window.addEventListener("load",t,{once:!0})})()};(async()=>
2{if(y())try{const{getCurrentWindow:e}=await u(async()=>{const{getCurrentWindow:e}=await(import("./window-BtxHJ3OY.js"));return{getCurrentWindow:e}},__vite__mapDeps([61,62,63]));if("desktop-pet"===e().label){const e=u(()=>import("./DesktopPetWindow-Cc0Dbnfs.js"),__vite__mapDeps([64,1,16,5,18,19,8,7,9,13,14,42,4,6,12,43,65,49,66,67,68]));await T(ke.getState().currentLanguage);const{DesktopPetWindow:t}=await e;return void yt.render((0,_t.jsx)(t,{}))}}catch(e){return void yt.render((0,_t.jsx)("div",{role:"alert",className:"p-4 text-sm text-red-700",children:"æ æ³è¯å«å½åæ¡é¢çªå£ï¼è¯·éæ°å¯å¨ LikedTabsã"}))}await Lt()})();export{m as $,ce as A,ie as B,z as C,ge as D,oe as E,ue as F,G,_e as H,te as I,v as J,M as K,Z as L,ee as M,re as N,he as O,be as P,u as Q,X as R,J as S,se as T,me as U,Y as V,pe as W,T as X,f as Y,w as Z,Ae as _,nt as a,ke as b,Ze as c,Ue as d,n as et,xe as f,Me as g,Ie as h,dt as i,l as it,de as j,ne as k,Qe as l,We as m,st as n,c as nt,Ye as o,He as p,y as q,lt as r,s as rt,Xe as s,ut as t,d as tt,Be as u,ye as v,le as w,fe as x,Te as y,Q as z};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.