super-time-tracker-ui 0.1.30 → 0.1.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/standalone/next-output/BUILD_ID +1 -1
- package/dist/standalone/next-output/app-path-routes-manifest.json +1 -0
- package/dist/standalone/next-output/build-manifest.json +3 -3
- package/dist/standalone/next-output/routes-manifest.json +6 -0
- package/dist/standalone/next-output/server/app/_global-error.html +1 -1
- package/dist/standalone/next-output/server/app/_global-error.rsc +1 -1
- package/dist/standalone/next-output/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/next-output/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/standalone/next-output/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/standalone/next-output/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/standalone/next-output/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/standalone/next-output/server/app/_not-found/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/login/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/login/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/offline/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/offline/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/pomodoro/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/pomodoro/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/register/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/register/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/reporting/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/reporting/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/ai-suggestions/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/ai-suggestions/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/cloud-sync/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/cloud-sync/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/data/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/data/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/display/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/display/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/goals/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/goals/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/notifications/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/notifications/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/pomodoro/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/pomodoro/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/settings/quick-actions/page/app-paths-manifest.json +3 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page/build-manifest.json +17 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page/next-font-manifest.json +11 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page/react-loadable-manifest.json +1 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page/server-reference-manifest.json +4 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page.js +16 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page.js.nft.json +1 -0
- package/dist/standalone/next-output/server/app/settings/quick-actions/page_client-reference-manifest.js +3 -0
- package/dist/standalone/next-output/server/app/settings/tags/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/settings/tags/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/sheets/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/sheets/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app/today/page.js.nft.json +1 -1
- package/dist/standalone/next-output/server/app/today/page_client-reference-manifest.js +1 -1
- package/dist/standalone/next-output/server/app-paths-manifest.json +1 -0
- package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0.ztg_g._.js +1 -1
- package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0a7wn1j._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0r4hd.l.js +4 -0
- package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0bowsf1._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0k~hq1g._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0oqgod_._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_002dssm._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_00ic3j9._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_00x~ete._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_07p~0bg._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/{_10n~~xo._.js → _088~qfj._.js} +3 -3
- package/dist/standalone/next-output/server/chunks/ssr/_08qe8j9._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0agxxbf._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_0c0txs~._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_0cxg26n._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0l6-7m4._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_0m.iebm._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0nnp~ae._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0q~8_bm._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0v9kigy._.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/_0y3ypyx._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_13crob-._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_13y76jr._.js +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_next-internal_server_app_settings_quick-actions_page_actions_031bu28.js +3 -0
- package/dist/standalone/next-output/server/chunks/ssr/components_tracker-app_tsx_0qs9.7y._.js +1 -1
- package/dist/standalone/next-output/server/middleware-build-manifest.js +3 -3
- package/dist/standalone/next-output/server/middleware-manifest.json +1 -1
- package/dist/standalone/next-output/server/next-font-manifest.js +1 -1
- package/dist/standalone/next-output/server/next-font-manifest.json +4 -0
- package/dist/standalone/next-output/server/pages/500.html +1 -1
- package/dist/standalone/next-output/static/chunks/0.4obx1-sv46-.js +1 -0
- package/dist/standalone/next-output/static/chunks/029pvmqxn_t4z.js +1 -0
- package/dist/standalone/next-output/static/chunks/04~.lbegcwd41.js +1 -0
- package/dist/standalone/next-output/static/chunks/05tg.ske01w0a.js +1 -0
- package/dist/standalone/next-output/static/chunks/06xf_oh5oqbs2.js +1 -0
- package/dist/standalone/next-output/static/chunks/09acxdggb87~w.js +1 -0
- package/dist/standalone/next-output/static/chunks/09tjbwcc~3p_e.js +1 -0
- package/dist/standalone/next-output/static/chunks/0crn_fc6.6569.js +1 -0
- package/dist/standalone/next-output/static/chunks/0fkr5kz7p1r5l.js +1 -0
- package/dist/standalone/next-output/static/chunks/0lhj2p9.4g20~.js +1 -0
- package/dist/standalone/next-output/static/chunks/0o4zvrm3q.9k3.js +1 -0
- package/dist/standalone/next-output/static/chunks/0pqilbd~jphqs.css +3 -0
- package/dist/standalone/next-output/static/chunks/0q05k1wfzh4_a.js +1 -0
- package/dist/standalone/next-output/static/chunks/0vov8ngx9~8m2.js +1 -0
- package/dist/standalone/next-output/static/chunks/0watkjb-fw0vn.js +1 -0
- package/dist/standalone/next-output/static/chunks/{0znvz4n7decra.js → 0x9s1xcq69ppx.js} +5 -5
- package/dist/standalone/next-output/static/chunks/0xj4dodycy1oc.js +1 -0
- package/dist/standalone/next-output/static/chunks/12eaief5vtso9.js +1 -0
- package/dist/standalone/next-output/static/chunks/13-nw2q_c_9mk.js +1 -0
- package/dist/standalone/next-output/static/chunks/14jtaz5s.4ih1.js +1 -0
- package/dist/standalone/package.json +1 -1
- package/package.json +1 -1
- package/dist/standalone/next-output/server/chunks/ssr/_0-hc~ba._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_00_8gfw._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_059wg4v._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_08dnxqq._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_0hs4c5u._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_0nz4ym1._.js +0 -3
- package/dist/standalone/next-output/server/chunks/ssr/_0wg9~zr._.js +0 -3
- package/dist/standalone/next-output/static/chunks/00rjs5ywh4_np.css +0 -3
- package/dist/standalone/next-output/static/chunks/03d24rbiv.lx7.js +0 -1
- package/dist/standalone/next-output/static/chunks/03flgrd7bw9r5.js +0 -1
- package/dist/standalone/next-output/static/chunks/041fttxys-zjw.js +0 -1
- package/dist/standalone/next-output/static/chunks/055~9w5b9lao5.js +0 -1
- package/dist/standalone/next-output/static/chunks/09mbpw08eiqwx.js +0 -1
- package/dist/standalone/next-output/static/chunks/0bw3uow4-~3fr.js +0 -1
- package/dist/standalone/next-output/static/chunks/0d2d-s..s8cfz.js +0 -1
- package/dist/standalone/next-output/static/chunks/0h72~3~6gq3fn.js +0 -1
- package/dist/standalone/next-output/static/chunks/0hhu330gm_fnl.js +0 -1
- package/dist/standalone/next-output/static/chunks/0ls_5qyf15z5_.js +0 -1
- package/dist/standalone/next-output/static/chunks/0n0.21h11yrv2.js +0 -1
- package/dist/standalone/next-output/static/chunks/0n2~cs.u7bygu.js +0 -1
- package/dist/standalone/next-output/static/chunks/0sywv5h95uodq.js +0 -1
- package/dist/standalone/next-output/static/chunks/0xccil3r~k_7n.js +0 -1
- package/dist/standalone/next-output/static/chunks/0~z41.7~3tpw3.js +0 -1
- package/dist/standalone/next-output/static/chunks/14oa3e0hktvxi.js +0 -1
- package/dist/standalone/next-output/static/chunks/15ixzo9s2kj_o.js +0 -1
- /package/dist/standalone/next-output/static/{Ohbr2ePvonj7GxdJPkXBY → gS32e4Tv_70ot1IWBJddE}/_buildManifest.js +0 -0
- /package/dist/standalone/next-output/static/{Ohbr2ePvonj7GxdJPkXBY → gS32e4Tv_70ot1IWBJddE}/_clientMiddlewareManifest.js +0 -0
- /package/dist/standalone/next-output/static/{Ohbr2ePvonj7GxdJPkXBY → gS32e4Tv_70ot1IWBJddE}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[75654,a=>{"use strict";var b=a.i(39752);a.s(["SettingsIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),(0,b.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},34435,a=>{"use strict";var b=a.i(39752);a.s(["HamburgerIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4 text-muted",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M4 7h16"}),(0,b.jsx)("path",{d:"M4 12h16"}),(0,b.jsx)("path",{d:"M4 17h16"})]})}])},96359,a=>{"use strict";var b=a.i(34542),c=a.i(46299);a.s(["use_escape_to_cancel",0,function(a,d=!0){let e=(0,b.useRef)(a);e.current=a,(0,b.useEffect)(()=>{if(!d)return;let a=a=>{"Escape"!==a.key||(0,c.is_modal_dialog_open)()||(a.preventDefault(),e.current())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d])}])},26846,a=>{"use strict";var b=a.i(82508),c=a.i(34542),d=a.i(9301),e=a.i(63577),f=a.i(7048);a.s(["use_supabase_auth_session",0,function(){let a=(0,b.useRouter)(),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(!1),k=(0,e.is_supabase_configured)();return(0,c.useEffect)(()=>{if(!k)return;let a=(0,d.create_browser_supabase_client)();a.auth.getSession().then(({data:{session:a}})=>{h(a?.user.email??null)}).catch(()=>{h(null)});let{data:{subscription:b}}=a.auth.onAuthStateChange((a,b)=>{h(b?.user.email??null)});return()=>{b.unsubscribe()}},[k]),{is_configured:k,email:g,is_pending:i,sign_out:(0,c.useCallback)(async()=>{j(!0);try{await fetch("/api/auth/signout",{method:"POST"});let b=(0,d.create_browser_supabase_client)();await b.auth.signOut().catch(()=>{}),(0,f.notify_settings_saved)("Signed out"),a.refresh()}finally{j(!1)}},[a])}}])},61995,41194,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/",label:"Tracker",match:a=>"/"===a}];function f(){return(0,b.jsx)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,b.jsx)("path",{d:"M17.5 19a4.5 4.5 0 0 0 0-9 6.5 6.5 0 0 0-12.6 1.5A4 4 0 0 0 6 19h11.5z"})})}a.s(["TrackerNavLinks",0,function(){let a=(0,d.usePathname)()??"/";return(0,b.jsx)("div",{className:"scrollbar-none flex min-w-0 flex-1 items-center gap-1 overflow-x-auto whitespace-nowrap py-0.5 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden min-[980px]:overflow-visible",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)(c.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:d.href,"aria-current":e?"page":void 0,children:d.label},d.href)})})}],61995);var g=a.i(26846);a.s(["TopbarCloudStatus",0,function(){let{email:a,is_configured:c}=(0,g.use_supabase_auth_session)();return c&&null!==a?(0,b.jsxs)("div",{className:"group relative flex items-center",children:[(0,b.jsx)("span",{className:"inline-flex h-8 w-8 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-accent","aria-label":`Cloud sync active for ${a}`,role:"img",children:(0,b.jsx)(f,{})}),(0,b.jsx)("div",{role:"tooltip",className:"pointer-events-none absolute right-0 top-full z-50 mt-1.5 w-max max-w-[min(18rem,calc(100vw-2.5rem))] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-within:opacity-100",children:(0,b.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,b.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,b.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:a,children:a})]})})]}):null}],41194)},41615,a=>{"use strict";a.s(["build_auth_page_href",0,function(a,b){let c="sign_in"===a?"/login":"/register",d=b.trim();return 0===d.length||"/"===d?c:`${c}?next=${encodeURIComponent(d)}`}])},28958,a=>{"use strict";a.s(["write_document_preference_cookies",0,function(a){if("u"<typeof document)return;let b="path=/; max-age=31536000; SameSite=Lax";void 0!==a.theme_mode&&(document.cookie=`stt-theme-mode=${a.theme_mode}; ${b}`),void 0!==a.theme&&(document.cookie=`stt-theme=${a.theme}; ${b}`),void 0!==a.palette&&(document.cookie=`stt-palette=${a.palette}; ${b}`),void 0!==a.compact_lists&&(document.cookie=`stt-compact-lists=${a.compact_lists?"true":"false"}; ${b}`)}],28958)},81764,34569,a=>{"use strict";a.s(["apply_theme",0,function(a){document.documentElement.setAttribute("data-theme",a)}],81764);var b=a.i(72958);a.s(["write_stored_theme",0,function(a){try{window.localStorage.setItem("super-time-tracker-theme",a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}}],34569)},44404,65020,84089,22592,a=>{"use strict";let b=new Set(a.i(75049).topbar_quick_action_ids),c=["today","reporting","pomodoro"];a.s(["parse_topbar_quick_actions",0,function(a){try{let d=JSON.parse(a);if(!Array.isArray(d))return c;let e=d.filter(a=>"string"==typeof a&&b.has(a));return Array.from(new Set(e))}catch{return c}}],44404);var d=a.i(52345),e=a.i(70827);let f=(0,d.create_ui_preference_store)({storage_key:e.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:e.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});function g(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}a.s(["cloud_sync_enabled_preference",0,f],65020),a.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return g()}],84089);var h=a.i(81764),i=a.i(7048),j=a.i(29698),k=a.i(44103),l=a.i(28958),m=a.i(34569);a.s(["toggle_theme",0,function(){let a="dark"===g()?"light":"dark";(0,h.apply_theme)(a),(0,m.write_stored_theme)(a),j.theme_mode_preference.write(a),(0,l.write_document_preference_cookies)({theme_mode:a,theme:a}),j.theme_mode_preference.notify(),(0,k.notify_theme_subscribers)(),(0,i.notify_settings_saved)()}],22592)},79334,73948,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508),e=a.i(34542),f=a.i(34435),g=a.i(41615),h=a.i(7048),i=a.i(44404),j=a.i(11937),k=a.i(65020),l=a.i(26749),m=a.i(54212),n=a.i(74365),o=a.i(84089),p=a.i(44103),q=a.i(22592),r=a.i(75049),s=a.i(96359),t=a.i(26846);let u="block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit no-underline hover:bg-surface-hover disabled:cursor-not-allowed disabled:opacity-55",v={today:{href:"/today",label:"Today"},sheets:{href:"/sheets",label:"Sheets"},reporting:{href:"/reporting",label:"Reporting"},pomodoro:{href:"/pomodoro",label:"Pomodoro"},"manage-tags":{href:"/settings/tags",label:"Manage tags"},"sync-settings":{href:"/settings/cloud-sync",label:"Sync settings"}},w=new Set(["manage-tags","pomodoro","sync-settings"]);a.s(["TopbarOverflowMenu",0,function(){let a=(0,d.useRouter)(),x=(0,d.usePathname)()??"/",y=(0,e.useSyncExternalStore)(p.subscribe_theme,o.get_theme_snapshot,o.get_theme_server_snapshot),z=(0,e.useSyncExternalStore)(k.cloud_sync_enabled_preference.subscribe,k.cloud_sync_enabled_preference.get_snapshot,k.cloud_sync_enabled_preference.get_server_snapshot),A=(0,e.useSyncExternalStore)(m.tracker_shortcut_map_preference.subscribe,m.tracker_shortcut_map_preference.get_snapshot,m.tracker_shortcut_map_preference.get_server_snapshot),B=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),C=(0,j.parse_tracker_shortcut_map)(A),D=new Set((0,i.parse_topbar_quick_actions)(B)),E=r.topbar_quick_action_ids.filter(a=>!D.has(a)),F=Array.from(new Set([...Array.from(w),...E])),{email:G,is_configured:H,is_pending:I,sign_out:J}=(0,t.use_supabase_auth_session)(),[K,L]=(0,e.useState)(!1),M=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!K)return;let a=a=>{null===M.current||M.current.contains(a.target)||L(!1)};return document.addEventListener("pointerdown",a),()=>{document.removeEventListener("pointerdown",a)}},[K]);let N=()=>{L(!1)};return(0,s.use_escape_to_cancel)(N,K),(0,b.jsxs)("div",{className:"relative shrink-0",ref:M,children:[(0,b.jsx)("button",{type:"button",className:"inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent","aria-label":"Open menu","aria-expanded":K,"aria-haspopup":"menu",onClick:()=>L(a=>!a),children:(0,b.jsx)(f.HamburgerIcon,{})}),K?(0,b.jsxs)("ul",{className:"absolute right-0 top-full z-50 mt-1.5 min-w-56 list-none rounded-md border border-panel-border bg-panel p-1.5 shadow-md",role:"menu",children:[H&&null!==G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:G,children:G})}):null,F.map(a=>{let d=v[a];return(0,b.jsx)("li",{role:"none",children:(0,b.jsx)(c.default,{href:d.href,className:u,role:"menuitem",onClick:N,children:d.label})},a)}),H?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitemcheckbox","aria-checked":"true"===z,onClick:()=>{let a="true"===z?"false":"true";k.cloud_sync_enabled_preference.write(a),k.cloud_sync_enabled_preference.notify(),(0,h.notify_settings_saved)("true"===a?"Cloud sync enabled":"Cloud sync disabled"),"true"===a&&null!==G&&(0,n.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"true"===z?"Pause cloud sync":"Resume cloud sync"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===z?"On":"Off"})]})})}):null,(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),(0,q.toggle_theme)()},suppressHydrationWarning:!0,children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsxs)("span",{children:["dark"===y?"Dark":"Light"," theme"]}),(0,b.jsx)("span",{"aria-hidden":"true",children:"dark"===y?"☾":"☀"})]})})}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{let a;N(),a=C.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:a,shiftKey:"?"===a,bubbles:!0}))},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"Keyboard shortcuts"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),H?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),a.push((0,g.build_auth_page_href)("sign_in",x))},children:"Sign in"})}):(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:`${u} text-danger`,role:"menuitem",disabled:I,onClick:()=>{N(),J()},children:I?"Signing out…":"Sign out"})})]}):null]}):null]})}],79334);let x=[{id:"today",href:"/today",label:"Today"},{id:"sheets",href:"/sheets",label:"Sheets"},{id:"reporting",href:"/reporting",label:"Reporting"},{id:"pomodoro",href:"/pomodoro",label:"Pomodoro"},{id:"manage-tags",href:"/settings/tags",label:"Tags"},{id:"sync-settings",href:"/settings/cloud-sync",label:"Sync"}];a.s(["TopbarQuickActions",0,function(){let a=(0,d.usePathname)()??"/",f=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),g=(0,e.useMemo)(()=>(0,i.parse_topbar_quick_actions)(f),[f]);if(0===g.length)return null;let h=x.filter(a=>g.includes(a.id));return 0===h.length?null:(0,b.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:h.map(d=>{let e=a.startsWith(d.href);return(0,b.jsx)(c.default,{href:d.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":e?"page":void 0,children:d.label},d.id)})})}],73948)},98790,a=>{"use strict";var b=a.i(39752),c=a.i(61995),d=a.i(41194),e=a.i(79334),f=a.i(73948),g=a.i(62988),h=a.i(82508),i=a.i(75654);function j(){let a=((0,h.usePathname)()??"/").startsWith("/settings");return(0,b.jsx)(g.default,{href:"/settings",className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted no-underline hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent${a?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":a?"page":void 0,children:(0,b.jsx)(i.SettingsIcon,{})})}function k({current:a,parent:c}){return(0,b.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,b.jsxs)("ol",{className:"m-0 flex min-w-0 list-none flex-wrap items-center gap-1.5 p-0 text-[0.85rem]",children:[(0,b.jsx)("li",{children:(0,b.jsx)(g.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==c?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{children:void 0!==c.href?(0,b.jsx)(g.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:c.href,children:c.label}):(0,b.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:c.label})})]}):null,(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:a})]})})}a.s(["TrackerTopbar",0,function({breadcrumb:a}={}){return(0,b.jsx)("header",{className:"relative z-1 border-b border-panel-border bg-[color-mix(in_srgb,var(--panel)_92%,var(--background))] shadow-sm backdrop-blur-[10px]",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-[1120px] min-h-13 flex-wrap items-center gap-x-4 gap-y-2 px-4 py-2 sm:px-5",children:[(0,b.jsx)("span",{className:"inline-flex min-w-0 shrink items-center font-mono text-[0.72rem] font-semibold uppercase leading-tight tracking-[0.08em] text-accent whitespace-nowrap",children:"super-time-tracker"}),void 0!==a?(0,b.jsx)("div",{className:"min-w-0 flex-1",children:(0,b.jsx)(k,{current:a.current,parent:a.parent})}):null,(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 min-[980px]:ml-auto min-[980px]:w-auto min-[980px]:justify-end",children:[(0,b.jsx)(c.TrackerNavLinks,{}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,b.jsx)(f.TopbarQuickActions,{}),(0,b.jsx)(d.TopbarCloudStatus,{}),(0,b.jsx)(j,{}),(0,b.jsx)(e.TopbarOverflowMenu,{})]})]})]})})}],98790)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_0m.iebm._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[26846,a=>{"use strict";var b=a.i(82508),c=a.i(34542),d=a.i(9301),e=a.i(63577),f=a.i(7048);a.s(["use_supabase_auth_session",0,function(){let a=(0,b.useRouter)(),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(!1),k=(0,e.is_supabase_configured)();return(0,c.useEffect)(()=>{if(!k)return;let a=(0,d.create_browser_supabase_client)();a.auth.getSession().then(({data:{session:a}})=>{h(a?.user.email??null)}).catch(()=>{h(null)});let{data:{subscription:b}}=a.auth.onAuthStateChange((a,b)=>{h(b?.user.email??null)});return()=>{b.unsubscribe()}},[k]),{is_configured:k,email:g,is_pending:i,sign_out:(0,c.useCallback)(async()=>{j(!0);try{await fetch("/api/auth/signout",{method:"POST"});let b=(0,d.create_browser_supabase_client)();await b.auth.signOut().catch(()=>{}),(0,f.notify_settings_saved)("Signed out"),a.refresh()}finally{j(!1)}},[a])}}])},61995,41194,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/",label:"Tracker",match:a=>"/"===a}];function f(){return(0,b.jsx)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,b.jsx)("path",{d:"M17.5 19a4.5 4.5 0 0 0 0-9 6.5 6.5 0 0 0-12.6 1.5A4 4 0 0 0 6 19h11.5z"})})}a.s(["TrackerNavLinks",0,function(){let a=(0,d.usePathname)()??"/";return(0,b.jsx)("div",{className:"scrollbar-none flex min-w-0 flex-1 items-center gap-1 overflow-x-auto whitespace-nowrap py-0.5 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden min-[980px]:overflow-visible",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)(c.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:d.href,"aria-current":e?"page":void 0,children:d.label},d.href)})})}],61995);var g=a.i(26846);a.s(["TopbarCloudStatus",0,function(){let{email:a,is_configured:c}=(0,g.use_supabase_auth_session)();return c&&null!==a?(0,b.jsxs)("div",{className:"group relative flex items-center",children:[(0,b.jsx)("span",{className:"inline-flex h-8 w-8 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-accent","aria-label":`Cloud sync active for ${a}`,role:"img",children:(0,b.jsx)(f,{})}),(0,b.jsx)("div",{role:"tooltip",className:"pointer-events-none absolute right-0 top-full z-50 mt-1.5 w-max max-w-[min(18rem,calc(100vw-2.5rem))] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-within:opacity-100",children:(0,b.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,b.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,b.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:a,children:a})]})})]}):null}],41194)},34435,a=>{"use strict";var b=a.i(39752);a.s(["HamburgerIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4 text-muted",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M4 7h16"}),(0,b.jsx)("path",{d:"M4 12h16"}),(0,b.jsx)("path",{d:"M4 17h16"})]})}])},41615,a=>{"use strict";a.s(["build_auth_page_href",0,function(a,b){let c="sign_in"===a?"/login":"/register",d=b.trim();return 0===d.length||"/"===d?c:`${c}?next=${encodeURIComponent(d)}`}])},28958,a=>{"use strict";a.s(["write_document_preference_cookies",0,function(a){if("u"<typeof document)return;let b="path=/; max-age=31536000; SameSite=Lax";void 0!==a.theme_mode&&(document.cookie=`stt-theme-mode=${a.theme_mode}; ${b}`),void 0!==a.theme&&(document.cookie=`stt-theme=${a.theme}; ${b}`),void 0!==a.palette&&(document.cookie=`stt-palette=${a.palette}; ${b}`),void 0!==a.compact_lists&&(document.cookie=`stt-compact-lists=${a.compact_lists?"true":"false"}; ${b}`)}],28958)},81764,34569,a=>{"use strict";a.s(["apply_theme",0,function(a){document.documentElement.setAttribute("data-theme",a)}],81764);var b=a.i(72958);a.s(["write_stored_theme",0,function(a){try{window.localStorage.setItem("super-time-tracker-theme",a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}}],34569)},44404,65020,84089,22592,a=>{"use strict";let b=new Set(a.i(75049).topbar_quick_action_ids),c=["today","reporting","pomodoro"];a.s(["parse_topbar_quick_actions",0,function(a){try{let d=JSON.parse(a);if(!Array.isArray(d))return c;let e=d.filter(a=>"string"==typeof a&&b.has(a));return Array.from(new Set(e))}catch{return c}}],44404);var d=a.i(52345),e=a.i(70827);let f=(0,d.create_ui_preference_store)({storage_key:e.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:e.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});function g(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}a.s(["cloud_sync_enabled_preference",0,f],65020),a.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return g()}],84089);var h=a.i(81764),i=a.i(7048),j=a.i(29698),k=a.i(44103),l=a.i(28958),m=a.i(34569);a.s(["toggle_theme",0,function(){let a="dark"===g()?"light":"dark";(0,h.apply_theme)(a),(0,m.write_stored_theme)(a),j.theme_mode_preference.write(a),(0,l.write_document_preference_cookies)({theme_mode:a,theme:a}),j.theme_mode_preference.notify(),(0,k.notify_theme_subscribers)(),(0,i.notify_settings_saved)()}],22592)},96359,a=>{"use strict";var b=a.i(34542),c=a.i(46299);a.s(["use_escape_to_cancel",0,function(a,d=!0){let e=(0,b.useRef)(a);e.current=a,(0,b.useEffect)(()=>{if(!d)return;let a=a=>{"Escape"!==a.key||(0,c.is_modal_dialog_open)()||(a.preventDefault(),e.current())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d])}])},79334,73948,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508),e=a.i(34542),f=a.i(34435),g=a.i(41615),h=a.i(7048),i=a.i(44404),j=a.i(11937),k=a.i(65020),l=a.i(26749),m=a.i(54212),n=a.i(74365),o=a.i(84089),p=a.i(44103),q=a.i(22592),r=a.i(75049),s=a.i(96359),t=a.i(26846);let u="block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit no-underline hover:bg-surface-hover disabled:cursor-not-allowed disabled:opacity-55",v={today:{href:"/today",label:"Today"},sheets:{href:"/sheets",label:"Sheets"},reporting:{href:"/reporting",label:"Reporting"},pomodoro:{href:"/pomodoro",label:"Pomodoro"},"manage-tags":{href:"/settings/tags",label:"Manage tags"},"sync-settings":{href:"/settings/cloud-sync",label:"Sync settings"}},w=new Set(["manage-tags","pomodoro","sync-settings"]);a.s(["TopbarOverflowMenu",0,function(){let a=(0,d.useRouter)(),x=(0,d.usePathname)()??"/",y=(0,e.useSyncExternalStore)(p.subscribe_theme,o.get_theme_snapshot,o.get_theme_server_snapshot),z=(0,e.useSyncExternalStore)(k.cloud_sync_enabled_preference.subscribe,k.cloud_sync_enabled_preference.get_snapshot,k.cloud_sync_enabled_preference.get_server_snapshot),A=(0,e.useSyncExternalStore)(m.tracker_shortcut_map_preference.subscribe,m.tracker_shortcut_map_preference.get_snapshot,m.tracker_shortcut_map_preference.get_server_snapshot),B=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),C=(0,j.parse_tracker_shortcut_map)(A),D=new Set((0,i.parse_topbar_quick_actions)(B)),E=r.topbar_quick_action_ids.filter(a=>!D.has(a)),F=Array.from(new Set([...Array.from(w),...E])),{email:G,is_configured:H,is_pending:I,sign_out:J}=(0,t.use_supabase_auth_session)(),[K,L]=(0,e.useState)(!1),M=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!K)return;let a=a=>{null===M.current||M.current.contains(a.target)||L(!1)};return document.addEventListener("pointerdown",a),()=>{document.removeEventListener("pointerdown",a)}},[K]);let N=()=>{L(!1)};return(0,s.use_escape_to_cancel)(N,K),(0,b.jsxs)("div",{className:"relative shrink-0",ref:M,children:[(0,b.jsx)("button",{type:"button",className:"inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent","aria-label":"Open menu","aria-expanded":K,"aria-haspopup":"menu",onClick:()=>L(a=>!a),children:(0,b.jsx)(f.HamburgerIcon,{})}),K?(0,b.jsxs)("ul",{className:"absolute right-0 top-full z-50 mt-1.5 min-w-56 list-none rounded-md border border-panel-border bg-panel p-1.5 shadow-md",role:"menu",children:[H&&null!==G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:G,children:G})}):null,F.map(a=>{let d=v[a];return(0,b.jsx)("li",{role:"none",children:(0,b.jsx)(c.default,{href:d.href,className:u,role:"menuitem",onClick:N,children:d.label})},a)}),H?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitemcheckbox","aria-checked":"true"===z,onClick:()=>{let a="true"===z?"false":"true";k.cloud_sync_enabled_preference.write(a),k.cloud_sync_enabled_preference.notify(),(0,h.notify_settings_saved)("true"===a?"Cloud sync enabled":"Cloud sync disabled"),"true"===a&&null!==G&&(0,n.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"true"===z?"Pause cloud sync":"Resume cloud sync"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===z?"On":"Off"})]})})}):null,(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),(0,q.toggle_theme)()},suppressHydrationWarning:!0,children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsxs)("span",{children:["dark"===y?"Dark":"Light"," theme"]}),(0,b.jsx)("span",{"aria-hidden":"true",children:"dark"===y?"☾":"☀"})]})})}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{let a;N(),a=C.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:a,shiftKey:"?"===a,bubbles:!0}))},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"Keyboard shortcuts"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),H?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),a.push((0,g.build_auth_page_href)("sign_in",x))},children:"Sign in"})}):(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:`${u} text-danger`,role:"menuitem",disabled:I,onClick:()=>{N(),J()},children:I?"Signing out…":"Sign out"})})]}):null]}):null]})}],79334);let x=[{id:"today",href:"/today",label:"Today"},{id:"sheets",href:"/sheets",label:"Sheets"},{id:"reporting",href:"/reporting",label:"Reporting"},{id:"pomodoro",href:"/pomodoro",label:"Pomodoro"},{id:"manage-tags",href:"/settings/tags",label:"Tags"},{id:"sync-settings",href:"/settings/cloud-sync",label:"Sync"}];a.s(["TopbarQuickActions",0,function(){let a=(0,d.usePathname)()??"/",f=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),g=(0,e.useMemo)(()=>(0,i.parse_topbar_quick_actions)(f),[f]);if(0===g.length)return null;let h=x.filter(a=>g.includes(a.id));return 0===h.length?null:(0,b.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:h.map(d=>{let e=a.startsWith(d.href);return(0,b.jsx)(c.default,{href:d.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":e?"page":void 0,children:d.label},d.id)})})}],73948)},75654,a=>{"use strict";var b=a.i(39752);a.s(["SettingsIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),(0,b.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},98790,a=>{"use strict";var b=a.i(39752),c=a.i(61995),d=a.i(41194),e=a.i(79334),f=a.i(73948),g=a.i(62988),h=a.i(82508),i=a.i(75654);function j(){let a=((0,h.usePathname)()??"/").startsWith("/settings");return(0,b.jsx)(g.default,{href:"/settings",className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted no-underline hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent${a?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":a?"page":void 0,children:(0,b.jsx)(i.SettingsIcon,{})})}function k({current:a,parent:c}){return(0,b.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,b.jsxs)("ol",{className:"m-0 flex min-w-0 list-none flex-wrap items-center gap-1.5 p-0 text-[0.85rem]",children:[(0,b.jsx)("li",{children:(0,b.jsx)(g.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==c?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{children:void 0!==c.href?(0,b.jsx)(g.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:c.href,children:c.label}):(0,b.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:c.label})})]}):null,(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:a})]})})}a.s(["TrackerTopbar",0,function({breadcrumb:a}={}){return(0,b.jsx)("header",{className:"relative z-1 border-b border-panel-border bg-[color-mix(in_srgb,var(--panel)_92%,var(--background))] shadow-sm backdrop-blur-[10px]",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-[1120px] min-h-13 flex-wrap items-center gap-x-4 gap-y-2 px-4 py-2 sm:px-5",children:[(0,b.jsx)("span",{className:"inline-flex min-w-0 shrink items-center font-mono text-[0.72rem] font-semibold uppercase leading-tight tracking-[0.08em] text-accent whitespace-nowrap",children:"super-time-tracker"}),void 0!==a?(0,b.jsx)("div",{className:"min-w-0 flex-1",children:(0,b.jsx)(k,{current:a.current,parent:a.parent})}):null,(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 min-[980px]:ml-auto min-[980px]:w-auto min-[980px]:justify-end",children:[(0,b.jsx)(c.TrackerNavLinks,{}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,b.jsx)(f.TopbarQuickActions,{}),(0,b.jsx)(d.TopbarCloudStatus,{}),(0,b.jsx)(j,{}),(0,b.jsx)(e.TopbarOverflowMenu,{})]})]})]})})}],98790)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_0nnp~ae._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[41615,a=>{"use strict";a.s(["build_auth_page_href",0,function(a,b){let c="sign_in"===a?"/login":"/register",d=b.trim();return 0===d.length||"/"===d?c:`${c}?next=${encodeURIComponent(d)}`}])},26846,a=>{"use strict";var b=a.i(82508),c=a.i(34542),d=a.i(9301),e=a.i(63577),f=a.i(7048);a.s(["use_supabase_auth_session",0,function(){let a=(0,b.useRouter)(),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(!1),k=(0,e.is_supabase_configured)();return(0,c.useEffect)(()=>{if(!k)return;let a=(0,d.create_browser_supabase_client)();a.auth.getSession().then(({data:{session:a}})=>{h(a?.user.email??null)}).catch(()=>{h(null)});let{data:{subscription:b}}=a.auth.onAuthStateChange((a,b)=>{h(b?.user.email??null)});return()=>{b.unsubscribe()}},[k]),{is_configured:k,email:g,is_pending:i,sign_out:(0,c.useCallback)(async()=>{j(!0);try{await fetch("/api/auth/signout",{method:"POST"});let b=(0,d.create_browser_supabase_client)();await b.auth.signOut().catch(()=>{}),(0,f.notify_settings_saved)("Signed out"),a.refresh()}finally{j(!1)}},[a])}}])},61995,41194,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/",label:"Tracker",match:a=>"/"===a}];function f(){return(0,b.jsx)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,b.jsx)("path",{d:"M17.5 19a4.5 4.5 0 0 0 0-9 6.5 6.5 0 0 0-12.6 1.5A4 4 0 0 0 6 19h11.5z"})})}a.s(["TrackerNavLinks",0,function(){let a=(0,d.usePathname)()??"/";return(0,b.jsx)("div",{className:"scrollbar-none flex min-w-0 flex-1 items-center gap-1 overflow-x-auto whitespace-nowrap py-0.5 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden min-[980px]:overflow-visible",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)(c.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:d.href,"aria-current":e?"page":void 0,children:d.label},d.href)})})}],61995);var g=a.i(26846);a.s(["TopbarCloudStatus",0,function(){let{email:a,is_configured:c}=(0,g.use_supabase_auth_session)();return c&&null!==a?(0,b.jsxs)("div",{className:"group relative flex items-center",children:[(0,b.jsx)("span",{className:"inline-flex h-8 w-8 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-accent","aria-label":`Cloud sync active for ${a}`,role:"img",children:(0,b.jsx)(f,{})}),(0,b.jsx)("div",{role:"tooltip",className:"pointer-events-none absolute right-0 top-full z-50 mt-1.5 w-max max-w-[min(18rem,calc(100vw-2.5rem))] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-within:opacity-100",children:(0,b.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,b.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,b.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:a,children:a})]})})]}):null}],41194)},34435,a=>{"use strict";var b=a.i(39752);a.s(["HamburgerIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4 text-muted",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M4 7h16"}),(0,b.jsx)("path",{d:"M4 12h16"}),(0,b.jsx)("path",{d:"M4 17h16"})]})}])},28958,a=>{"use strict";a.s(["write_document_preference_cookies",0,function(a){if("u"<typeof document)return;let b="path=/; max-age=31536000; SameSite=Lax";void 0!==a.theme_mode&&(document.cookie=`stt-theme-mode=${a.theme_mode}; ${b}`),void 0!==a.theme&&(document.cookie=`stt-theme=${a.theme}; ${b}`),void 0!==a.palette&&(document.cookie=`stt-palette=${a.palette}; ${b}`),void 0!==a.compact_lists&&(document.cookie=`stt-compact-lists=${a.compact_lists?"true":"false"}; ${b}`)}],28958)},81764,34569,a=>{"use strict";a.s(["apply_theme",0,function(a){document.documentElement.setAttribute("data-theme",a)}],81764);var b=a.i(72958);a.s(["write_stored_theme",0,function(a){try{window.localStorage.setItem("super-time-tracker-theme",a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}}],34569)},44404,65020,84089,22592,a=>{"use strict";let b=new Set(a.i(75049).topbar_quick_action_ids),c=["today","reporting","pomodoro"];a.s(["parse_topbar_quick_actions",0,function(a){try{let d=JSON.parse(a);if(!Array.isArray(d))return c;let e=d.filter(a=>"string"==typeof a&&b.has(a));return Array.from(new Set(e))}catch{return c}}],44404);var d=a.i(52345),e=a.i(70827);let f=(0,d.create_ui_preference_store)({storage_key:e.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:e.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});function g(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}a.s(["cloud_sync_enabled_preference",0,f],65020),a.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return g()}],84089);var h=a.i(81764),i=a.i(7048),j=a.i(29698),k=a.i(44103),l=a.i(28958),m=a.i(34569);a.s(["toggle_theme",0,function(){let a="dark"===g()?"light":"dark";(0,h.apply_theme)(a),(0,m.write_stored_theme)(a),j.theme_mode_preference.write(a),(0,l.write_document_preference_cookies)({theme_mode:a,theme:a}),j.theme_mode_preference.notify(),(0,k.notify_theme_subscribers)(),(0,i.notify_settings_saved)()}],22592)},96359,a=>{"use strict";var b=a.i(34542),c=a.i(46299);a.s(["use_escape_to_cancel",0,function(a,d=!0){let e=(0,b.useRef)(a);e.current=a,(0,b.useEffect)(()=>{if(!d)return;let a=a=>{"Escape"!==a.key||(0,c.is_modal_dialog_open)()||(a.preventDefault(),e.current())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d])}])},79334,73948,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508),e=a.i(34542),f=a.i(34435),g=a.i(41615),h=a.i(7048),i=a.i(44404),j=a.i(11937),k=a.i(65020),l=a.i(26749),m=a.i(54212),n=a.i(74365),o=a.i(84089),p=a.i(44103),q=a.i(22592),r=a.i(75049),s=a.i(96359),t=a.i(26846);let u="block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit no-underline hover:bg-surface-hover disabled:cursor-not-allowed disabled:opacity-55",v={today:{href:"/today",label:"Today"},sheets:{href:"/sheets",label:"Sheets"},reporting:{href:"/reporting",label:"Reporting"},pomodoro:{href:"/pomodoro",label:"Pomodoro"},"manage-tags":{href:"/settings/tags",label:"Manage tags"},"sync-settings":{href:"/settings/cloud-sync",label:"Sync settings"}},w=new Set(["manage-tags","pomodoro","sync-settings"]);a.s(["TopbarOverflowMenu",0,function(){let a=(0,d.useRouter)(),x=(0,d.usePathname)()??"/",y=(0,e.useSyncExternalStore)(p.subscribe_theme,o.get_theme_snapshot,o.get_theme_server_snapshot),z=(0,e.useSyncExternalStore)(k.cloud_sync_enabled_preference.subscribe,k.cloud_sync_enabled_preference.get_snapshot,k.cloud_sync_enabled_preference.get_server_snapshot),A=(0,e.useSyncExternalStore)(m.tracker_shortcut_map_preference.subscribe,m.tracker_shortcut_map_preference.get_snapshot,m.tracker_shortcut_map_preference.get_server_snapshot),B=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),C=(0,j.parse_tracker_shortcut_map)(A),D=new Set((0,i.parse_topbar_quick_actions)(B)),E=r.topbar_quick_action_ids.filter(a=>!D.has(a)),F=Array.from(new Set([...Array.from(w),...E])),{email:G,is_configured:H,is_pending:I,sign_out:J}=(0,t.use_supabase_auth_session)(),[K,L]=(0,e.useState)(!1),M=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!K)return;let a=a=>{null===M.current||M.current.contains(a.target)||L(!1)};return document.addEventListener("pointerdown",a),()=>{document.removeEventListener("pointerdown",a)}},[K]);let N=()=>{L(!1)};return(0,s.use_escape_to_cancel)(N,K),(0,b.jsxs)("div",{className:"relative shrink-0",ref:M,children:[(0,b.jsx)("button",{type:"button",className:"inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent","aria-label":"Open menu","aria-expanded":K,"aria-haspopup":"menu",onClick:()=>L(a=>!a),children:(0,b.jsx)(f.HamburgerIcon,{})}),K?(0,b.jsxs)("ul",{className:"absolute right-0 top-full z-50 mt-1.5 min-w-56 list-none rounded-md border border-panel-border bg-panel p-1.5 shadow-md",role:"menu",children:[H&&null!==G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:G,children:G})}):null,F.map(a=>{let d=v[a];return(0,b.jsx)("li",{role:"none",children:(0,b.jsx)(c.default,{href:d.href,className:u,role:"menuitem",onClick:N,children:d.label})},a)}),H?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitemcheckbox","aria-checked":"true"===z,onClick:()=>{let a="true"===z?"false":"true";k.cloud_sync_enabled_preference.write(a),k.cloud_sync_enabled_preference.notify(),(0,h.notify_settings_saved)("true"===a?"Cloud sync enabled":"Cloud sync disabled"),"true"===a&&null!==G&&(0,n.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"true"===z?"Pause cloud sync":"Resume cloud sync"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===z?"On":"Off"})]})})}):null,(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),(0,q.toggle_theme)()},suppressHydrationWarning:!0,children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsxs)("span",{children:["dark"===y?"Dark":"Light"," theme"]}),(0,b.jsx)("span",{"aria-hidden":"true",children:"dark"===y?"☾":"☀"})]})})}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{let a;N(),a=C.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:a,shiftKey:"?"===a,bubbles:!0}))},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"Keyboard shortcuts"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),H?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),a.push((0,g.build_auth_page_href)("sign_in",x))},children:"Sign in"})}):(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:`${u} text-danger`,role:"menuitem",disabled:I,onClick:()=>{N(),J()},children:I?"Signing out…":"Sign out"})})]}):null]}):null]})}],79334);let x=[{id:"today",href:"/today",label:"Today"},{id:"sheets",href:"/sheets",label:"Sheets"},{id:"reporting",href:"/reporting",label:"Reporting"},{id:"pomodoro",href:"/pomodoro",label:"Pomodoro"},{id:"manage-tags",href:"/settings/tags",label:"Tags"},{id:"sync-settings",href:"/settings/cloud-sync",label:"Sync"}];a.s(["TopbarQuickActions",0,function(){let a=(0,d.usePathname)()??"/",f=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),g=(0,e.useMemo)(()=>(0,i.parse_topbar_quick_actions)(f),[f]);if(0===g.length)return null;let h=x.filter(a=>g.includes(a.id));return 0===h.length?null:(0,b.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:h.map(d=>{let e=a.startsWith(d.href);return(0,b.jsx)(c.default,{href:d.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":e?"page":void 0,children:d.label},d.id)})})}],73948)},75654,a=>{"use strict";var b=a.i(39752);a.s(["SettingsIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),(0,b.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},98790,a=>{"use strict";var b=a.i(39752),c=a.i(61995),d=a.i(41194),e=a.i(79334),f=a.i(73948),g=a.i(62988),h=a.i(82508),i=a.i(75654);function j(){let a=((0,h.usePathname)()??"/").startsWith("/settings");return(0,b.jsx)(g.default,{href:"/settings",className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted no-underline hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent${a?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":a?"page":void 0,children:(0,b.jsx)(i.SettingsIcon,{})})}function k({current:a,parent:c}){return(0,b.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,b.jsxs)("ol",{className:"m-0 flex min-w-0 list-none flex-wrap items-center gap-1.5 p-0 text-[0.85rem]",children:[(0,b.jsx)("li",{children:(0,b.jsx)(g.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==c?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{children:void 0!==c.href?(0,b.jsx)(g.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:c.href,children:c.label}):(0,b.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:c.label})})]}):null,(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:a})]})})}a.s(["TrackerTopbar",0,function({breadcrumb:a}={}){return(0,b.jsx)("header",{className:"relative z-1 border-b border-panel-border bg-[color-mix(in_srgb,var(--panel)_92%,var(--background))] shadow-sm backdrop-blur-[10px]",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-[1120px] min-h-13 flex-wrap items-center gap-x-4 gap-y-2 px-4 py-2 sm:px-5",children:[(0,b.jsx)("span",{className:"inline-flex min-w-0 shrink items-center font-mono text-[0.72rem] font-semibold uppercase leading-tight tracking-[0.08em] text-accent whitespace-nowrap",children:"super-time-tracker"}),void 0!==a?(0,b.jsx)("div",{className:"min-w-0 flex-1",children:(0,b.jsx)(k,{current:a.current,parent:a.parent})}):null,(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 min-[980px]:ml-auto min-[980px]:w-auto min-[980px]:justify-end",children:[(0,b.jsx)(c.TrackerNavLinks,{}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,b.jsx)(f.TopbarQuickActions,{}),(0,b.jsx)(d.TopbarCloudStatus,{}),(0,b.jsx)(j,{}),(0,b.jsx)(e.TopbarOverflowMenu,{})]})]})]})})}],98790)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_0q~8_bm._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[28958,a=>{"use strict";a.s(["write_document_preference_cookies",0,function(a){if("u"<typeof document)return;let b="path=/; max-age=31536000; SameSite=Lax";void 0!==a.theme_mode&&(document.cookie=`stt-theme-mode=${a.theme_mode}; ${b}`),void 0!==a.theme&&(document.cookie=`stt-theme=${a.theme}; ${b}`),void 0!==a.palette&&(document.cookie=`stt-palette=${a.palette}; ${b}`),void 0!==a.compact_lists&&(document.cookie=`stt-compact-lists=${a.compact_lists?"true":"false"}; ${b}`)}],28958)},26846,a=>{"use strict";var b=a.i(82508),c=a.i(34542),d=a.i(9301),e=a.i(63577),f=a.i(7048);a.s(["use_supabase_auth_session",0,function(){let a=(0,b.useRouter)(),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(!1),k=(0,e.is_supabase_configured)();return(0,c.useEffect)(()=>{if(!k)return;let a=(0,d.create_browser_supabase_client)();a.auth.getSession().then(({data:{session:a}})=>{h(a?.user.email??null)}).catch(()=>{h(null)});let{data:{subscription:b}}=a.auth.onAuthStateChange((a,b)=>{h(b?.user.email??null)});return()=>{b.unsubscribe()}},[k]),{is_configured:k,email:g,is_pending:i,sign_out:(0,c.useCallback)(async()=>{j(!0);try{await fetch("/api/auth/signout",{method:"POST"});let b=(0,d.create_browser_supabase_client)();await b.auth.signOut().catch(()=>{}),(0,f.notify_settings_saved)("Signed out"),a.refresh()}finally{j(!1)}},[a])}}])},61995,41194,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/",label:"Tracker",match:a=>"/"===a}];function f(){return(0,b.jsx)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,b.jsx)("path",{d:"M17.5 19a4.5 4.5 0 0 0 0-9 6.5 6.5 0 0 0-12.6 1.5A4 4 0 0 0 6 19h11.5z"})})}a.s(["TrackerNavLinks",0,function(){let a=(0,d.usePathname)()??"/";return(0,b.jsx)("div",{className:"scrollbar-none flex min-w-0 flex-1 items-center gap-1 overflow-x-auto whitespace-nowrap py-0.5 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden min-[980px]:overflow-visible",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)(c.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:d.href,"aria-current":e?"page":void 0,children:d.label},d.href)})})}],61995);var g=a.i(26846);a.s(["TopbarCloudStatus",0,function(){let{email:a,is_configured:c}=(0,g.use_supabase_auth_session)();return c&&null!==a?(0,b.jsxs)("div",{className:"group relative flex items-center",children:[(0,b.jsx)("span",{className:"inline-flex h-8 w-8 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-accent","aria-label":`Cloud sync active for ${a}`,role:"img",children:(0,b.jsx)(f,{})}),(0,b.jsx)("div",{role:"tooltip",className:"pointer-events-none absolute right-0 top-full z-50 mt-1.5 w-max max-w-[min(18rem,calc(100vw-2.5rem))] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-within:opacity-100",children:(0,b.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,b.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,b.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:a,children:a})]})})]}):null}],41194)},34435,a=>{"use strict";var b=a.i(39752);a.s(["HamburgerIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4 text-muted",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M4 7h16"}),(0,b.jsx)("path",{d:"M4 12h16"}),(0,b.jsx)("path",{d:"M4 17h16"})]})}])},41615,a=>{"use strict";a.s(["build_auth_page_href",0,function(a,b){let c="sign_in"===a?"/login":"/register",d=b.trim();return 0===d.length||"/"===d?c:`${c}?next=${encodeURIComponent(d)}`}])},81764,34569,a=>{"use strict";a.s(["apply_theme",0,function(a){document.documentElement.setAttribute("data-theme",a)}],81764);var b=a.i(72958);a.s(["write_stored_theme",0,function(a){try{window.localStorage.setItem("super-time-tracker-theme",a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}}],34569)},44404,65020,84089,22592,a=>{"use strict";let b=new Set(a.i(75049).topbar_quick_action_ids),c=["today","reporting","pomodoro"];a.s(["parse_topbar_quick_actions",0,function(a){try{let d=JSON.parse(a);if(!Array.isArray(d))return c;let e=d.filter(a=>"string"==typeof a&&b.has(a));return Array.from(new Set(e))}catch{return c}}],44404);var d=a.i(52345),e=a.i(70827);let f=(0,d.create_ui_preference_store)({storage_key:e.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:e.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});function g(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}a.s(["cloud_sync_enabled_preference",0,f],65020),a.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return g()}],84089);var h=a.i(81764),i=a.i(7048),j=a.i(29698),k=a.i(44103),l=a.i(28958),m=a.i(34569);a.s(["toggle_theme",0,function(){let a="dark"===g()?"light":"dark";(0,h.apply_theme)(a),(0,m.write_stored_theme)(a),j.theme_mode_preference.write(a),(0,l.write_document_preference_cookies)({theme_mode:a,theme:a}),j.theme_mode_preference.notify(),(0,k.notify_theme_subscribers)(),(0,i.notify_settings_saved)()}],22592)},96359,a=>{"use strict";var b=a.i(34542),c=a.i(46299);a.s(["use_escape_to_cancel",0,function(a,d=!0){let e=(0,b.useRef)(a);e.current=a,(0,b.useEffect)(()=>{if(!d)return;let a=a=>{"Escape"!==a.key||(0,c.is_modal_dialog_open)()||(a.preventDefault(),e.current())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d])}])},79334,73948,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508),e=a.i(34542),f=a.i(34435),g=a.i(41615),h=a.i(7048),i=a.i(44404),j=a.i(11937),k=a.i(65020),l=a.i(26749),m=a.i(54212),n=a.i(74365),o=a.i(84089),p=a.i(44103),q=a.i(22592),r=a.i(75049),s=a.i(96359),t=a.i(26846);let u="block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit no-underline hover:bg-surface-hover disabled:cursor-not-allowed disabled:opacity-55",v={today:{href:"/today",label:"Today"},sheets:{href:"/sheets",label:"Sheets"},reporting:{href:"/reporting",label:"Reporting"},pomodoro:{href:"/pomodoro",label:"Pomodoro"},"manage-tags":{href:"/settings/tags",label:"Manage tags"},"sync-settings":{href:"/settings/cloud-sync",label:"Sync settings"}},w=new Set(["manage-tags","pomodoro","sync-settings"]);a.s(["TopbarOverflowMenu",0,function(){let a=(0,d.useRouter)(),x=(0,d.usePathname)()??"/",y=(0,e.useSyncExternalStore)(p.subscribe_theme,o.get_theme_snapshot,o.get_theme_server_snapshot),z=(0,e.useSyncExternalStore)(k.cloud_sync_enabled_preference.subscribe,k.cloud_sync_enabled_preference.get_snapshot,k.cloud_sync_enabled_preference.get_server_snapshot),A=(0,e.useSyncExternalStore)(m.tracker_shortcut_map_preference.subscribe,m.tracker_shortcut_map_preference.get_snapshot,m.tracker_shortcut_map_preference.get_server_snapshot),B=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),C=(0,j.parse_tracker_shortcut_map)(A),D=new Set((0,i.parse_topbar_quick_actions)(B)),E=r.topbar_quick_action_ids.filter(a=>!D.has(a)),F=Array.from(new Set([...Array.from(w),...E])),{email:G,is_configured:H,is_pending:I,sign_out:J}=(0,t.use_supabase_auth_session)(),[K,L]=(0,e.useState)(!1),M=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!K)return;let a=a=>{null===M.current||M.current.contains(a.target)||L(!1)};return document.addEventListener("pointerdown",a),()=>{document.removeEventListener("pointerdown",a)}},[K]);let N=()=>{L(!1)};return(0,s.use_escape_to_cancel)(N,K),(0,b.jsxs)("div",{className:"relative shrink-0",ref:M,children:[(0,b.jsx)("button",{type:"button",className:"inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent","aria-label":"Open menu","aria-expanded":K,"aria-haspopup":"menu",onClick:()=>L(a=>!a),children:(0,b.jsx)(f.HamburgerIcon,{})}),K?(0,b.jsxs)("ul",{className:"absolute right-0 top-full z-50 mt-1.5 min-w-56 list-none rounded-md border border-panel-border bg-panel p-1.5 shadow-md",role:"menu",children:[H&&null!==G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:G,children:G})}):null,F.map(a=>{let d=v[a];return(0,b.jsx)("li",{role:"none",children:(0,b.jsx)(c.default,{href:d.href,className:u,role:"menuitem",onClick:N,children:d.label})},a)}),H?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitemcheckbox","aria-checked":"true"===z,onClick:()=>{let a="true"===z?"false":"true";k.cloud_sync_enabled_preference.write(a),k.cloud_sync_enabled_preference.notify(),(0,h.notify_settings_saved)("true"===a?"Cloud sync enabled":"Cloud sync disabled"),"true"===a&&null!==G&&(0,n.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"true"===z?"Pause cloud sync":"Resume cloud sync"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===z?"On":"Off"})]})})}):null,(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),(0,q.toggle_theme)()},suppressHydrationWarning:!0,children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsxs)("span",{children:["dark"===y?"Dark":"Light"," theme"]}),(0,b.jsx)("span",{"aria-hidden":"true",children:"dark"===y?"☾":"☀"})]})})}),(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{let a;N(),a=C.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:a,shiftKey:"?"===a,bubbles:!0}))},children:(0,b.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,b.jsx)("span",{children:"Keyboard shortcuts"}),(0,b.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),H?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===G?(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:u,role:"menuitem",onClick:()=>{N(),a.push((0,g.build_auth_page_href)("sign_in",x))},children:"Sign in"})}):(0,b.jsx)("li",{role:"none",children:(0,b.jsx)("button",{type:"button",className:`${u} text-danger`,role:"menuitem",disabled:I,onClick:()=>{N(),J()},children:I?"Signing out…":"Sign out"})})]}):null]}):null]})}],79334);let x=[{id:"today",href:"/today",label:"Today"},{id:"sheets",href:"/sheets",label:"Sheets"},{id:"reporting",href:"/reporting",label:"Reporting"},{id:"pomodoro",href:"/pomodoro",label:"Pomodoro"},{id:"manage-tags",href:"/settings/tags",label:"Tags"},{id:"sync-settings",href:"/settings/cloud-sync",label:"Sync"}];a.s(["TopbarQuickActions",0,function(){let a=(0,d.usePathname)()??"/",f=(0,e.useSyncExternalStore)(l.topbar_quick_actions_preference.subscribe,l.topbar_quick_actions_preference.get_snapshot,l.topbar_quick_actions_preference.get_server_snapshot),g=(0,e.useMemo)(()=>(0,i.parse_topbar_quick_actions)(f),[f]);if(0===g.length)return null;let h=x.filter(a=>g.includes(a.id));return 0===h.length?null:(0,b.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:h.map(d=>{let e=a.startsWith(d.href);return(0,b.jsx)(c.default,{href:d.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":e?"page":void 0,children:d.label},d.id)})})}],73948)},75654,a=>{"use strict";var b=a.i(39752);a.s(["SettingsIcon",0,function(){return(0,b.jsxs)("svg",{className:"block h-4 w-4",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,b.jsx)("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),(0,b.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},98790,a=>{"use strict";var b=a.i(39752),c=a.i(61995),d=a.i(41194),e=a.i(79334),f=a.i(73948),g=a.i(62988),h=a.i(82508),i=a.i(75654);function j(){let a=((0,h.usePathname)()??"/").startsWith("/settings");return(0,b.jsx)(g.default,{href:"/settings",className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-panel-border bg-ghost-bg text-muted no-underline hover:bg-surface-hover hover:text-foreground focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent${a?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":a?"page":void 0,children:(0,b.jsx)(i.SettingsIcon,{})})}function k({current:a,parent:c}){return(0,b.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,b.jsxs)("ol",{className:"m-0 flex min-w-0 list-none flex-wrap items-center gap-1.5 p-0 text-[0.85rem]",children:[(0,b.jsx)("li",{children:(0,b.jsx)(g.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==c?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{children:void 0!==c.href?(0,b.jsx)(g.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:c.href,children:c.label}):(0,b.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:c.label})})]}):null,(0,b.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,b.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:a})]})})}a.s(["TrackerTopbar",0,function({breadcrumb:a}={}){return(0,b.jsx)("header",{className:"relative z-1 border-b border-panel-border bg-[color-mix(in_srgb,var(--panel)_92%,var(--background))] shadow-sm backdrop-blur-[10px]",children:(0,b.jsxs)("div",{className:"mx-auto flex max-w-[1120px] min-h-13 flex-wrap items-center gap-x-4 gap-y-2 px-4 py-2 sm:px-5",children:[(0,b.jsx)("span",{className:"inline-flex min-w-0 shrink items-center font-mono text-[0.72rem] font-semibold uppercase leading-tight tracking-[0.08em] text-accent whitespace-nowrap",children:"super-time-tracker"}),void 0!==a?(0,b.jsx)("div",{className:"min-w-0 flex-1",children:(0,b.jsx)(k,{current:a.current,parent:a.parent})}):null,(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 min-[980px]:ml-auto min-[980px]:w-auto min-[980px]:justify-end",children:[(0,b.jsx)(c.TrackerNavLinks,{}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,b.jsx)(f.TopbarQuickActions,{}),(0,b.jsx)(d.TopbarCloudStatus,{}),(0,b.jsx)(j,{}),(0,b.jsx)(e.TopbarOverflowMenu,{})]})]})]})})}],98790)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_0v9kigy._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},85930,a=>{"use strict";var b=a.i(39752),c=a.i(85393),d=a.i(98790);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},69749,a=>{"use strict";a.s(["get_input_class_name",0,function(a="default"){let b="box-border max-w-full min-w-0 w-full rounded-[0.65rem] border border-panel-border bg-input-bg px-3 py-2.5 font-inherit text-inherit transition-[background-color,border-color] duration-200 focus:border-input-focus-border focus:outline-none";return"compact"===a?`${b} px-2.5 py-2`:b}])},56924,a=>{"use strict";a.s(["normalize_stored_tag",0,function(a){let b=a.trim().replace(/^@+/,"");if(0===b.length)throw Error("Tag name must not be empty.");if(!/^\w+$/.test(b))throw Error("Tags may only contain letters, numbers, and underscores.");return`@${b}`}])},48174,a=>{"use strict";a.s(["format_display_tag",0,function(a){return a.startsWith("@")?a:`@${a}`}])},30354,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(48174),e=a.i(69749),f=a.i(56924);a.s(["TagAutocompleteInput",0,function({id:a,value:g,known_tags:h,placeholder:i,disabled:j=!1,autoFocus:k=!1,on_change:l}){let m=(0,c.useRef)(null),n=(0,c.useRef)(null),o=(0,c.useRef)(null),[p,q]=(0,c.useState)(0),[r,s]=(0,c.useState)(0),t=function(a,b){let c=a.slice(0,b),d=c.lastIndexOf("@");if(-1===d)return null;let e=c.slice(d+1);return/\s/.test(e)?null:{query:e,start_index:d,end_index:b}}(g,p),u=null===t?[]:function(a,b,c=10){let d=b.toLowerCase();return a.filter(a=>{let b=a.replace(/^@/,"").toLowerCase();return 0===d.length||b.startsWith(d)}).slice(0,c)}(h,t.query),v=null!==t&&function(a,b){if(!/^\w+$/.test(a))return!1;let c=a.toLowerCase();return b.some(a=>{try{return(0,f.normalize_stored_tag)(a).slice(1).toLowerCase()===c}catch{return!1}})}(t.query,h),w=null!==t&&u.length>0&&!v&&!j;(0,c.useLayoutEffect)(()=>{null!==o.current&&null!==m.current&&(m.current.setSelectionRange(o.current,o.current),q(o.current),o.current=null)},[g]),(0,c.useEffect)(()=>{s(0)},[g,p,u.length]);let x=()=>{q(m.current?.selectionStart??g.length)},y=()=>{s(0)},z=a=>{let b,c,e;if(null===t)return;let{next_text:f,next_cursor:h}=(b=(0,d.format_display_tag)(a),c=g.slice(0,t.start_index),e=g.slice(t.end_index),{next_text:`${c}${b}${e}`,next_cursor:c.length+b.length});o.current=h,l(f),y()};return(0,b.jsxs)("div",{className:"relative min-w-0",children:[(0,b.jsx)("input",{ref:m,id:a,type:"text",className:(0,e.get_input_class_name)(),value:g,placeholder:i,disabled:j,autoFocus:k,autoComplete:"off","aria-autocomplete":"list","aria-expanded":w,"aria-controls":w?`${a}-tag-suggestions`:void 0,onChange:a=>{l(a.target.value),q(a.target.selectionStart??a.target.value.length)},onClick:x,onKeyUp:x,onKeyDown:a=>{if(w){if("ArrowDown"===a.key){a.preventDefault(),s(a=>(a+1)%u.length);return}if("ArrowUp"===a.key){a.preventDefault(),s(a=>(a-1+u.length)%u.length);return}if("Enter"===a.key||"Tab"===a.key){a.preventDefault();let b=u[r];void 0!==b&&z(b);return}"Escape"===a.key&&(a.preventDefault(),y())}},onBlur:()=>{window.setTimeout(y,120)}}),w?(0,b.jsx)("ul",{ref:n,id:`${a}-tag-suggestions`,role:"listbox",className:"absolute left-0 right-0 top-full z-20 mt-1 max-h-48 list-none overflow-y-auto rounded-md border border-panel-border bg-panel p-1.5 shadow-md",children:u.map((a,c)=>(0,b.jsx)("li",{role:"option","aria-selected":c===r,children:(0,b.jsx)("button",{type:"button",className:`block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit hover:bg-surface-hover ${c===r?"bg-surface-hover":""}`,onMouseDown:b=>{b.preventDefault(),z(a)},children:(0,d.format_display_tag)(a)})},a))}):null]})}],30354)},64617,a=>{"use strict";a.s(["POMODORO_DEFAULT_SETTINGS",0,{work_minutes:25,short_break_minutes:5,long_break_minutes:15,rounds_before_long_break:4,auto_start_next_phase:!0,check_in_on_work_start:!0,work_entry_description:"Pomodoro focus"},"POMODORO_DEFAULT_STATE",0,{phase:"work",status:"idle",completed_work_sessions:0,deadline_at_ms:null,paused_remaining_ms:null},"POMODORO_STORAGE_KEY",0,"super-time-tracker-pomodoro"])},98670,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(30354),e=a.i(85930),f=a.i(64617);a.s(["PomodoroSettingsView",0,function({known_tags:a}){let[g,h]=(0,c.useState)(f.POMODORO_DEFAULT_SETTINGS),[i,j]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{},[]),(0,c.useEffect)(()=>{},[i,g]),(0,b.jsx)(e.SettingsPageLayout,{breadcrumb:{current:"Pomodoro",parent:{label:"Settings",href:"/settings"}},title:"Pomodoro",description:"Focus and break durations, auto-start behavior, and tracker check-in defaults.",children:(0,b.jsxs)("ul",{className:"m-0 grid w-full list-none grid-cols-1 gap-2 p-0 md:grid-cols-2","aria-label":"Pomodoro settings",children:[(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Work minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.work_minutes,onChange:a=>{h(b=>({...b,work_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Short break minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.short_break_minutes,onChange:a=>{h(b=>({...b,short_break_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Long break minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.long_break_minutes,onChange:a=>{h(b=>({...b,long_break_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Rounds before long break"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.rounds_before_long_break,onChange:a=>{h(b=>({...b,rounds_before_long_break:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex items-start gap-2.5",children:[(0,b.jsx)("input",{type:"checkbox",className:"mt-0.5 shrink-0",checked:g.auto_start_next_phase,onChange:a=>{h(b=>({...b,auto_start_next_phase:a.target.checked}))}}),(0,b.jsxs)("span",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Auto-start next phase"}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"Continue automatically when a focus or break phase ends."})]})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex items-start gap-2.5",children:[(0,b.jsx)("input",{type:"checkbox",className:"mt-0.5 shrink-0",checked:g.check_in_on_work_start,onChange:a=>{h(b=>({...b,check_in_on_work_start:a.target.checked}))}}),(0,b.jsxs)("span",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Start tracker entry on focus start"}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"When you start a focus phase, create a new entry on your active sheet."})]})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Focus entry description (supports @tags)"}),(0,b.jsx)(d.TagAutocompleteInput,{id:"pomodoro-settings-work-entry-description",value:g.work_entry_description,known_tags:a,placeholder:"Pomodoro focus @pomodoro @focus",on_change:a=>{h(b=>({...b,work_entry_description:a}))}}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"Used when a focus phase creates a new tracker entry on the active sheet."})]})})]})})}])}];
|
|
1
|
+
module.exports=[85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/quick-actions",label:"Quick actions",match:a=>a.startsWith("/settings/quick-actions")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},85930,a=>{"use strict";var b=a.i(39752),c=a.i(85393),d=a.i(98790);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},69749,a=>{"use strict";a.s(["get_input_class_name",0,function(a="default"){let b="box-border max-w-full min-w-0 w-full rounded-[0.65rem] border border-panel-border bg-input-bg px-3 py-2.5 font-inherit text-inherit transition-[background-color,border-color] duration-200 focus:border-input-focus-border focus:outline-none";return"compact"===a?`${b} px-2.5 py-2`:b}])},56924,a=>{"use strict";a.s(["normalize_stored_tag",0,function(a){let b=a.trim().replace(/^@+/,"");if(0===b.length)throw Error("Tag name must not be empty.");if(!/^\w+$/.test(b))throw Error("Tags may only contain letters, numbers, and underscores.");return`@${b}`}])},48174,a=>{"use strict";a.s(["format_display_tag",0,function(a){return a.startsWith("@")?a:`@${a}`}])},30354,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(48174),e=a.i(69749),f=a.i(56924);a.s(["TagAutocompleteInput",0,function({id:a,value:g,known_tags:h,placeholder:i,disabled:j=!1,autoFocus:k=!1,on_change:l}){let m=(0,c.useRef)(null),n=(0,c.useRef)(null),o=(0,c.useRef)(null),[p,q]=(0,c.useState)(0),[r,s]=(0,c.useState)(0),t=function(a,b){let c=a.slice(0,b),d=c.lastIndexOf("@");if(-1===d)return null;let e=c.slice(d+1);return/\s/.test(e)?null:{query:e,start_index:d,end_index:b}}(g,p),u=null===t?[]:function(a,b,c=10){let d=b.toLowerCase();return a.filter(a=>{let b=a.replace(/^@/,"").toLowerCase();return 0===d.length||b.startsWith(d)}).slice(0,c)}(h,t.query),v=null!==t&&function(a,b){if(!/^\w+$/.test(a))return!1;let c=a.toLowerCase();return b.some(a=>{try{return(0,f.normalize_stored_tag)(a).slice(1).toLowerCase()===c}catch{return!1}})}(t.query,h),w=null!==t&&u.length>0&&!v&&!j;(0,c.useLayoutEffect)(()=>{null!==o.current&&null!==m.current&&(m.current.setSelectionRange(o.current,o.current),q(o.current),o.current=null)},[g]),(0,c.useEffect)(()=>{s(0)},[g,p,u.length]);let x=()=>{q(m.current?.selectionStart??g.length)},y=()=>{s(0)},z=a=>{let b,c,e;if(null===t)return;let{next_text:f,next_cursor:h}=(b=(0,d.format_display_tag)(a),c=g.slice(0,t.start_index),e=g.slice(t.end_index),{next_text:`${c}${b}${e}`,next_cursor:c.length+b.length});o.current=h,l(f),y()};return(0,b.jsxs)("div",{className:"relative min-w-0",children:[(0,b.jsx)("input",{ref:m,id:a,type:"text",className:(0,e.get_input_class_name)(),value:g,placeholder:i,disabled:j,autoFocus:k,autoComplete:"off","aria-autocomplete":"list","aria-expanded":w,"aria-controls":w?`${a}-tag-suggestions`:void 0,onChange:a=>{l(a.target.value),q(a.target.selectionStart??a.target.value.length)},onClick:x,onKeyUp:x,onKeyDown:a=>{if(w){if("ArrowDown"===a.key){a.preventDefault(),s(a=>(a+1)%u.length);return}if("ArrowUp"===a.key){a.preventDefault(),s(a=>(a-1+u.length)%u.length);return}if("Enter"===a.key||"Tab"===a.key){a.preventDefault();let b=u[r];void 0!==b&&z(b);return}"Escape"===a.key&&(a.preventDefault(),y())}},onBlur:()=>{window.setTimeout(y,120)}}),w?(0,b.jsx)("ul",{ref:n,id:`${a}-tag-suggestions`,role:"listbox",className:"absolute left-0 right-0 top-full z-20 mt-1 max-h-48 list-none overflow-y-auto rounded-md border border-panel-border bg-panel p-1.5 shadow-md",children:u.map((a,c)=>(0,b.jsx)("li",{role:"option","aria-selected":c===r,children:(0,b.jsx)("button",{type:"button",className:`block w-full cursor-pointer rounded-[0.45rem] border-0 bg-transparent px-2.5 py-1.5 text-left font-inherit text-[0.85rem] text-inherit hover:bg-surface-hover ${c===r?"bg-surface-hover":""}`,onMouseDown:b=>{b.preventDefault(),z(a)},children:(0,d.format_display_tag)(a)})},a))}):null]})}],30354)},64617,a=>{"use strict";a.s(["POMODORO_DEFAULT_SETTINGS",0,{work_minutes:25,short_break_minutes:5,long_break_minutes:15,rounds_before_long_break:4,auto_start_next_phase:!0,check_in_on_work_start:!0,work_entry_description:"Pomodoro focus"},"POMODORO_DEFAULT_STATE",0,{phase:"work",status:"idle",completed_work_sessions:0,deadline_at_ms:null,paused_remaining_ms:null},"POMODORO_STORAGE_KEY",0,"super-time-tracker-pomodoro"])},98670,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(30354),e=a.i(85930),f=a.i(64617);a.s(["PomodoroSettingsView",0,function({known_tags:a}){let[g,h]=(0,c.useState)(f.POMODORO_DEFAULT_SETTINGS),[i,j]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{},[]),(0,c.useEffect)(()=>{},[i,g]),(0,b.jsx)(e.SettingsPageLayout,{breadcrumb:{current:"Pomodoro",parent:{label:"Settings",href:"/settings"}},title:"Pomodoro",description:"Focus and break durations, auto-start behavior, and tracker check-in defaults.",children:(0,b.jsxs)("ul",{className:"m-0 grid w-full list-none grid-cols-1 gap-2 p-0 md:grid-cols-2","aria-label":"Pomodoro settings",children:[(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Work minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.work_minutes,onChange:a=>{h(b=>({...b,work_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Short break minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.short_break_minutes,onChange:a=>{h(b=>({...b,short_break_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Long break minutes"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.long_break_minutes,onChange:a=>{h(b=>({...b,long_break_minutes:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Rounds before long break"}),(0,b.jsx)("input",{type:"number",min:1,step:1,className:"rounded-md border border-panel-border bg-background px-3 py-2",value:g.rounds_before_long_break,onChange:a=>{h(b=>({...b,rounds_before_long_break:Math.max(1,Number.parseInt(a.target.value,10)||1)}))}})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex items-start gap-2.5",children:[(0,b.jsx)("input",{type:"checkbox",className:"mt-0.5 shrink-0",checked:g.auto_start_next_phase,onChange:a=>{h(b=>({...b,auto_start_next_phase:a.target.checked}))}}),(0,b.jsxs)("span",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Auto-start next phase"}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"Continue automatically when a focus or break phase ends."})]})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex items-start gap-2.5",children:[(0,b.jsx)("input",{type:"checkbox",className:"mt-0.5 shrink-0",checked:g.check_in_on_work_start,onChange:a=>{h(b=>({...b,check_in_on_work_start:a.target.checked}))}}),(0,b.jsxs)("span",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Start tracker entry on focus start"}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"When you start a focus phase, create a new entry on your active sheet."})]})]})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm md:col-span-2",children:(0,b.jsxs)("label",{className:"flex flex-col gap-2",children:[(0,b.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Focus entry description (supports @tags)"}),(0,b.jsx)(d.TagAutocompleteInput,{id:"pomodoro-settings-work-entry-description",value:g.work_entry_description,known_tags:a,placeholder:"Pomodoro focus @pomodoro @focus",on_change:a=>{h(b=>({...b,work_entry_description:a}))}}),(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"Used when a focus phase creates a new tracker entry on the active sheet."})]})})]})})}])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_0y3ypyx._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[19702,a=>{"use strict";a.s(["ACTIVE_SHEET_COOKIE_NAME",0,"stt-active-sheet","ACTIVE_SHEET_STORAGE_KEY",0,"super-time-tracker-active-sheet","COMPACT_LISTS_STORAGE_KEY",0,"super-time-tracker-compact-lists","DEFAULT_SHEET_FIXED_NAME_COOKIE_NAME",0,"stt-default-sheet-fixed-name","DEFAULT_SHEET_FIXED_NAME_STORAGE_KEY",0,"super-time-tracker-default-sheet-fixed-name","DEFAULT_SHEET_SESSION_MODE_COOKIE_NAME",0,"stt-default-sheet-session-mode","DEFAULT_SHEET_SESSION_MODE_DEFAULT",0,"last_viewed","DEFAULT_SHEET_SESSION_MODE_STORAGE_KEY",0,"super-time-tracker-default-sheet-session-mode","SHEET_TAG_FILTERS_STORAGE_KEY",0,"super-time-tracker-sheet-tag-filters"])},85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},57077,a=>{"use strict";var b=a.i(7048);a.s(["persist_ui_preference",0,function(a,c){a.read()!==c&&(a.write(c),a.notify(),(0,b.notify_settings_saved)())}])},14945,a=>{"use strict";a.s(["get_entry_list_sort_options",0,function(){return[{value:"newest",label:"Newest"},{value:"oldest",label:"Oldest"},{value:"duration",label:"Duration"},{value:"description",label:"Description"}]}])},27623,a=>{"use strict";var b=a.i(39752);a.s(["SettingRadioGroup",0,function({name:a,legend:c,description:d,value:e,options:f,disabled:g=!1,on_change:h}){var i;return(0,b.jsxs)("fieldset",{className:"m-0 border-0 p-0",children:[(0,b.jsx)("legend",{className:"m-0 mb-1 text-[0.95rem] font-semibold",children:c}),void 0!==d?(0,b.jsx)("p",{className:"m-0 mb-2 text-[0.8rem] leading-snug text-muted",children:d}):null,(0,b.jsx)("div",{className:(i=f.length)<=2||i<=4?"grid grid-cols-1 gap-1.5 sm:grid-cols-2":"grid grid-cols-1 gap-1.5 sm:grid-cols-2 lg:grid-cols-3",children:f.map(c=>{let d=c.value===e;return(0,b.jsxs)("label",{className:`flex h-full cursor-pointer flex-col gap-2 rounded-md border px-2.5 py-2 transition-colors duration-150 ${d?"border-accent-border bg-accent-soft":"border-panel-border hover:bg-surface-hover"}`,children:[(0,b.jsxs)("span",{className:"flex items-start gap-2",children:[(0,b.jsx)("input",{type:"radio",className:"mt-0.5 shrink-0",name:a,value:c.value,checked:d,disabled:g,onChange:()=>h(c.value)}),(0,b.jsx)("span",{className:"text-[0.9rem] font-semibold leading-snug",children:c.label})]}),void 0!==c.description?(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:c.description}):null]},c.value)})})]})}],27623)}];
|
|
1
|
+
module.exports=[19702,a=>{"use strict";a.s(["ACTIVE_SHEET_COOKIE_NAME",0,"stt-active-sheet","ACTIVE_SHEET_STORAGE_KEY",0,"super-time-tracker-active-sheet","COMPACT_LISTS_STORAGE_KEY",0,"super-time-tracker-compact-lists","DEFAULT_SHEET_FIXED_NAME_COOKIE_NAME",0,"stt-default-sheet-fixed-name","DEFAULT_SHEET_FIXED_NAME_STORAGE_KEY",0,"super-time-tracker-default-sheet-fixed-name","DEFAULT_SHEET_SESSION_MODE_COOKIE_NAME",0,"stt-default-sheet-session-mode","DEFAULT_SHEET_SESSION_MODE_DEFAULT",0,"last_viewed","DEFAULT_SHEET_SESSION_MODE_STORAGE_KEY",0,"super-time-tracker-default-sheet-session-mode","SHEET_TAG_FILTERS_STORAGE_KEY",0,"super-time-tracker-sheet-tag-filters"])},85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/quick-actions",label:"Quick actions",match:a=>a.startsWith("/settings/quick-actions")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},57077,a=>{"use strict";var b=a.i(7048);a.s(["persist_ui_preference",0,function(a,c){a.read()!==c&&(a.write(c),a.notify(),(0,b.notify_settings_saved)())}])},14945,a=>{"use strict";a.s(["get_entry_list_sort_options",0,function(){return[{value:"newest",label:"Newest"},{value:"oldest",label:"Oldest"},{value:"duration",label:"Duration"},{value:"description",label:"Description"}]}])},27623,a=>{"use strict";var b=a.i(39752);a.s(["SettingRadioGroup",0,function({name:a,legend:c,description:d,value:e,options:f,disabled:g=!1,on_change:h}){var i;return(0,b.jsxs)("fieldset",{className:"m-0 border-0 p-0",children:[(0,b.jsx)("legend",{className:"m-0 mb-1 text-[0.95rem] font-semibold",children:c}),void 0!==d?(0,b.jsx)("p",{className:"m-0 mb-2 text-[0.8rem] leading-snug text-muted",children:d}):null,(0,b.jsx)("div",{className:(i=f.length)<=2||i<=4?"grid grid-cols-1 gap-1.5 sm:grid-cols-2":"grid grid-cols-1 gap-1.5 sm:grid-cols-2 lg:grid-cols-3",children:f.map(c=>{let d=c.value===e;return(0,b.jsxs)("label",{className:`flex h-full cursor-pointer flex-col gap-2 rounded-md border px-2.5 py-2 transition-colors duration-150 ${d?"border-accent-border bg-accent-soft":"border-panel-border hover:bg-surface-hover"}`,children:[(0,b.jsxs)("span",{className:"flex items-start gap-2",children:[(0,b.jsx)("input",{type:"radio",className:"mt-0.5 shrink-0",name:a,value:c.value,checked:d,disabled:g,onChange:()=>h(c.value)}),(0,b.jsx)("span",{className:"text-[0.9rem] font-semibold leading-snug",children:c.label})]}),void 0!==c.description?(0,b.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:c.description}):null]},c.value)})})]})}],27623)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_13crob-._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},59659,5796,a=>{"use strict";var b=a.i(87281);function c(){}function d(){(0,b.is_greedy_cloud_sync_enabled)()&&c()}a.i(63577),a.i(51652),a.i(74365),Promise.resolve(),a.s(["schedule_tracker_db_cloud_sync",0,d],5796),a.s(["push_tracker_db_cloud_after_change",0,function(){(0,b.is_greedy_cloud_sync_enabled)()?d():c()}],59659)},19325,a=>{"use strict";var b=a.i(39752),c=a.i(82508),d=a.i(34542),e=a.i(59659),f=a.i(53030),g=a.i(89969);a.s(["BackupRestoreSetting",0,function({db_path:a}){let h=(0,c.useRouter)(),{confirm:i}=(0,f.use_confirm_dialog)(),j=(0,d.useRef)(null),[k,l]=(0,d.useState)(null),[m,n]=(0,d.useState)(null),[o,p]=(0,d.useState)(!1),[q,r]=(0,d.useState)(!1),s=async()=>{p(!0),l(null),n(null);try{let a=await fetch("/api/backup");if(!a.ok){let b=await a.json();throw Error(b.error??"Download failed")}let b=await a.blob(),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download="db.json",d.click(),URL.revokeObjectURL(c),n("Backup downloaded.")}catch(a){l(a instanceof Error?a.message:String(a))}finally{p(!1)}},t=async a=>{let b=a.target.files?.[0];if((a.target.value="",void 0!==b)&&await i({title:"Restore backup?",message:"This will replace your current time tracker data with the uploaded backup file. This cannot be undone.",confirmLabel:"Restore",variant:"danger"})){r(!0),l(null),n(null);try{let a,c=await b.text();try{a=JSON.parse(c)}catch{throw Error("Invalid backup file: file is not valid JSON.")}let d=await fetch("/api/backup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!d.ok){let a=await d.json();throw Error(a.error??"Restore failed")}n("Backup restored. Opening tracker…"),(0,e.push_tracker_db_cloud_after_change)(),h.push("/"),h.refresh()}catch(a){l(a instanceof Error?a.message:String(a))}finally{r(!1)}}},u=o||q;return(0,b.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Backup and restore"}),(0,b.jsx)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:"Download a copy of your database or replace it with a previously saved backup file."})]}),(0,b.jsx)("p",{className:"m-0 overflow-wrap-anywhere font-mono text-[0.65rem] leading-snug text-muted",title:a,children:a}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,g.get_button_class_name)("ghost","small"),disabled:u,onClick:()=>void s(),children:o?"Downloading…":"Download backup"}),(0,b.jsx)("button",{type:"button",className:(0,g.get_button_class_name)("danger","small"),disabled:u,onClick:()=>{j.current?.click()},children:q?"Restoring…":"Restore from file"}),(0,b.jsx)("input",{ref:j,type:"file",accept:"application/json,.json",className:"hidden",onChange:a=>void t(a)})]}),null!==m?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-accent",children:m}):null,null!==k?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-danger",children:k}):null]})}],19325)},23470,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(89969);function e(a){let b=a.replaceAll('"','""');return`"${b}"`}function f(a){return a.replaceAll("|","\\|").replaceAll("\n"," ")}a.s(["DbExportSetting",0,function({db:a}){let[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(null),k=(0,c.useMemo)(()=>a.sheets.reduce((a,b)=>a+b.entries.length,0),[a.sheets]),l=b=>{j(null),h(null);try{var c,d,g,i,k,l;let j,m,n,o,p="json"===b?(c=a,JSON.stringify(c,null,2)):"csv"===b?(j=a.sheets.flatMap(a=>a.entries.map(b=>{let c=new Date(b.start).toISOString(),d=null===b.end?"":new Date(b.end).toISOString(),f=null===b.end?"":String(Math.max(0,b.end-b.start)/6e4),g=b.notes.map(a=>a.text).join(" | ");return[a.name,String(b.id),b.description,b.tags.join(" "),c,d,f,String(b.notes.length),g].map(e).join(",")})),["sheet_name,entry_id,description,tags,start_iso,end_iso,duration_minutes,note_count,notes",...j].join("\n")):function(a){let b=[],c=new Date().toISOString(),d=a.sheets.reduce((a,b)=>a+b.entries.length,0);for(let e of(b.push("# super-time-tracker export"),b.push(""),b.push(`- Exported at: ${c}`),b.push(`- Active sheet: ${a.activeSheetName??"none"}`),b.push(`- Sheets: ${a.sheets.length}`),b.push(`- Entries: ${d}`),b.push(""),a.sheets)){if(b.push(`## ${e.name}`),b.push(""),b.push(`- Active entry ID: ${e.activeEntryID??"none"}`),b.push(`- Entries: ${e.entries.length}`),b.push(""),0===e.entries.length){b.push("_No entries_"),b.push("");continue}for(let a of(b.push("| ID | Description | Tags | Start | End | Duration | Notes |"),b.push("| --- | --- | --- | --- | --- | --- | --- |"),e.entries)){let c=new Date(a.start).toISOString(),d=null===a.end?"running":new Date(a.end).toISOString(),e=null===a.end?"running":`${Math.max(0,a.end-a.start)/6e4} min`,g=0===a.tags.length?"-":a.tags.map(a=>`@${a}`).join(" "),h=0===a.notes.length?"-":a.notes.map(a=>a.text).join(" / ");b.push(`| ${a.id} | ${f(a.description)} | ${f(g)} | ${c} | ${d} | ${e} | ${f(h)} |`)}b.push("")}return b.join("\n")}(a),q=`super-time-tracker-export.${(d=b,"json"===d?"json":"csv"===d?"csv":"md")}`,r=(g=b,"json"===g?"application/json":"csv"===g?"text/csv;charset=utf-8":"text/markdown;charset=utf-8");i=q,k=p,l=r,m=new Blob([k],{type:l}),n=URL.createObjectURL(m),(o=document.createElement("a")).href=n,o.download=i,o.click(),URL.revokeObjectURL(n),h(`Downloaded ${q}`)}catch(a){j(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Database export"}),(0,b.jsxs)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:[a.sheets.length," sheets and ",k," entries ready to export."]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("json"),children:"Export JSON"}),(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("csv"),children:"Export CSV"}),(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("markdown"),children:"Export Markdown"})]}),null!==g?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-accent",children:g}):null,null!==i?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-danger",children:i}):null]})}])}];
|
|
1
|
+
module.exports=[85393,a=>{"use strict";var b=a.i(39752),c=a.i(62988),d=a.i(82508);let e=[{href:"/settings",label:"General",match:a=>"/settings"===a},{href:"/settings/display",label:"Display & layout",match:a=>a.startsWith("/settings/display")},{href:"/settings/quick-actions",label:"Quick actions",match:a=>a.startsWith("/settings/quick-actions")},{href:"/settings/goals",label:"Goals",match:a=>a.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:a=>a.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:a=>a.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:a=>a.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:a=>a.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:a=>a.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:a=>a.startsWith("/settings/tags")}];a.s(["SettingsNav",0,function(){let a=(0,d.usePathname)()??"/settings";return(0,b.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,b.jsx)("ul",{className:"scrollbar-none m-0 flex w-full list-none gap-1 overflow-x-auto p-0 pb-1 [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden max-[860px]:flex-row min-[861px]:flex-col min-[861px]:gap-0.5 min-[861px]:overflow-visible min-[861px]:pb-0",children:e.map(d=>{let e=d.match(a);return(0,b.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,b.jsx)(c.default,{href:d.href,"aria-current":e?"page":void 0,className:`block whitespace-nowrap rounded-md px-3 py-2 text-[0.9rem] no-underline transition-colors duration-150 min-[861px]:whitespace-normal ${e?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:d.label})},d.href)})})})}])},59659,5796,a=>{"use strict";var b=a.i(87281);function c(){}function d(){(0,b.is_greedy_cloud_sync_enabled)()&&c()}a.i(63577),a.i(51652),a.i(74365),Promise.resolve(),a.s(["schedule_tracker_db_cloud_sync",0,d],5796),a.s(["push_tracker_db_cloud_after_change",0,function(){(0,b.is_greedy_cloud_sync_enabled)()?d():c()}],59659)},19325,a=>{"use strict";var b=a.i(39752),c=a.i(82508),d=a.i(34542),e=a.i(59659),f=a.i(53030),g=a.i(89969);a.s(["BackupRestoreSetting",0,function({db_path:a}){let h=(0,c.useRouter)(),{confirm:i}=(0,f.use_confirm_dialog)(),j=(0,d.useRef)(null),[k,l]=(0,d.useState)(null),[m,n]=(0,d.useState)(null),[o,p]=(0,d.useState)(!1),[q,r]=(0,d.useState)(!1),s=async()=>{p(!0),l(null),n(null);try{let a=await fetch("/api/backup");if(!a.ok){let b=await a.json();throw Error(b.error??"Download failed")}let b=await a.blob(),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download="db.json",d.click(),URL.revokeObjectURL(c),n("Backup downloaded.")}catch(a){l(a instanceof Error?a.message:String(a))}finally{p(!1)}},t=async a=>{let b=a.target.files?.[0];if((a.target.value="",void 0!==b)&&await i({title:"Restore backup?",message:"This will replace your current time tracker data with the uploaded backup file. This cannot be undone.",confirmLabel:"Restore",variant:"danger"})){r(!0),l(null),n(null);try{let a,c=await b.text();try{a=JSON.parse(c)}catch{throw Error("Invalid backup file: file is not valid JSON.")}let d=await fetch("/api/backup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!d.ok){let a=await d.json();throw Error(a.error??"Restore failed")}n("Backup restored. Opening tracker…"),(0,e.push_tracker_db_cloud_after_change)(),h.push("/"),h.refresh()}catch(a){l(a instanceof Error?a.message:String(a))}finally{r(!1)}}},u=o||q;return(0,b.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Backup and restore"}),(0,b.jsx)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:"Download a copy of your database or replace it with a previously saved backup file."})]}),(0,b.jsx)("p",{className:"m-0 overflow-wrap-anywhere font-mono text-[0.65rem] leading-snug text-muted",title:a,children:a}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,g.get_button_class_name)("ghost","small"),disabled:u,onClick:()=>void s(),children:o?"Downloading…":"Download backup"}),(0,b.jsx)("button",{type:"button",className:(0,g.get_button_class_name)("danger","small"),disabled:u,onClick:()=>{j.current?.click()},children:q?"Restoring…":"Restore from file"}),(0,b.jsx)("input",{ref:j,type:"file",accept:"application/json,.json",className:"hidden",onChange:a=>void t(a)})]}),null!==m?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-accent",children:m}):null,null!==k?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-danger",children:k}):null]})}],19325)},23470,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(89969);function e(a){let b=a.replaceAll('"','""');return`"${b}"`}function f(a){return a.replaceAll("|","\\|").replaceAll("\n"," ")}a.s(["DbExportSetting",0,function({db:a}){let[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(null),k=(0,c.useMemo)(()=>a.sheets.reduce((a,b)=>a+b.entries.length,0),[a.sheets]),l=b=>{j(null),h(null);try{var c,d,g,i,k,l;let j,m,n,o,p="json"===b?(c=a,JSON.stringify(c,null,2)):"csv"===b?(j=a.sheets.flatMap(a=>a.entries.map(b=>{let c=new Date(b.start).toISOString(),d=null===b.end?"":new Date(b.end).toISOString(),f=null===b.end?"":String(Math.max(0,b.end-b.start)/6e4),g=b.notes.map(a=>a.text).join(" | ");return[a.name,String(b.id),b.description,b.tags.join(" "),c,d,f,String(b.notes.length),g].map(e).join(",")})),["sheet_name,entry_id,description,tags,start_iso,end_iso,duration_minutes,note_count,notes",...j].join("\n")):function(a){let b=[],c=new Date().toISOString(),d=a.sheets.reduce((a,b)=>a+b.entries.length,0);for(let e of(b.push("# super-time-tracker export"),b.push(""),b.push(`- Exported at: ${c}`),b.push(`- Active sheet: ${a.activeSheetName??"none"}`),b.push(`- Sheets: ${a.sheets.length}`),b.push(`- Entries: ${d}`),b.push(""),a.sheets)){if(b.push(`## ${e.name}`),b.push(""),b.push(`- Active entry ID: ${e.activeEntryID??"none"}`),b.push(`- Entries: ${e.entries.length}`),b.push(""),0===e.entries.length){b.push("_No entries_"),b.push("");continue}for(let a of(b.push("| ID | Description | Tags | Start | End | Duration | Notes |"),b.push("| --- | --- | --- | --- | --- | --- | --- |"),e.entries)){let c=new Date(a.start).toISOString(),d=null===a.end?"running":new Date(a.end).toISOString(),e=null===a.end?"running":`${Math.max(0,a.end-a.start)/6e4} min`,g=0===a.tags.length?"-":a.tags.map(a=>`@${a}`).join(" "),h=0===a.notes.length?"-":a.notes.map(a=>a.text).join(" / ");b.push(`| ${a.id} | ${f(a.description)} | ${f(g)} | ${c} | ${d} | ${e} | ${f(h)} |`)}b.push("")}return b.join("\n")}(a),q=`super-time-tracker-export.${(d=b,"json"===d?"json":"csv"===d?"csv":"md")}`,r=(g=b,"json"===g?"application/json":"csv"===g?"text/csv;charset=utf-8":"text/markdown;charset=utf-8");i=q,k=p,l=r,m=new Blob([k],{type:l}),n=URL.createObjectURL(m),(o=document.createElement("a")).href=n,o.download=i,o.click(),URL.revokeObjectURL(n),h(`Downloaded ${q}`)}catch(a){j(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Database export"}),(0,b.jsxs)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:[a.sheets.length," sheets and ",k," entries ready to export."]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("json"),children:"Export JSON"}),(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("csv"),children:"Export CSV"}),(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost","small"),onClick:()=>l("markdown"),children:"Export Markdown"})]}),null!==g?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-accent",children:g}):null,null!==i?(0,b.jsx)("p",{className:"m-0 text-[0.82rem] text-danger",children:i}):null]})}])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_13y76jr._.js.map
|