super-time-tracker-ui 0.1.32 → 0.1.33

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.
Files changed (328) hide show
  1. package/bin/stt-ui.js +4 -4
  2. package/dist/standalone/next-output/BUILD_ID +1 -1
  3. package/dist/standalone/next-output/app-path-routes-manifest.json +5 -0
  4. package/dist/standalone/next-output/build-manifest.json +5 -5
  5. package/dist/standalone/next-output/routes-manifest.json +30 -0
  6. package/dist/standalone/next-output/server/app/_global-error/page/build-manifest.json +2 -2
  7. package/dist/standalone/next-output/server/app/_global-error.html +1 -1
  8. package/dist/standalone/next-output/server/app/_global-error.rsc +1 -1
  9. package/dist/standalone/next-output/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  10. package/dist/standalone/next-output/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/dist/standalone/next-output/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/dist/standalone/next-output/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/dist/standalone/next-output/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/dist/standalone/next-output/server/app/_not-found/page/build-manifest.json +2 -2
  15. package/dist/standalone/next-output/server/app/_not-found/page.js +1 -2
  16. package/dist/standalone/next-output/server/app/_not-found/page.js.nft.json +1 -1
  17. package/dist/standalone/next-output/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/dist/standalone/next-output/server/app/api/command-palette/route/app-paths-manifest.json +3 -0
  19. package/dist/standalone/next-output/server/app/api/command-palette/route/build-manifest.json +9 -0
  20. package/dist/standalone/next-output/server/app/api/command-palette/route/server-reference-manifest.json +4 -0
  21. package/dist/standalone/next-output/server/app/api/command-palette/route.js +6 -0
  22. package/dist/standalone/next-output/server/app/api/command-palette/route.js.nft.json +1 -0
  23. package/dist/standalone/next-output/server/app/api/command-palette/route_client-reference-manifest.js +3 -0
  24. package/dist/standalone/next-output/server/app/api/entries/search/route/app-paths-manifest.json +3 -0
  25. package/dist/standalone/next-output/server/app/api/entries/search/route/build-manifest.json +9 -0
  26. package/dist/standalone/next-output/server/app/api/entries/search/route/server-reference-manifest.json +4 -0
  27. package/dist/standalone/next-output/server/app/api/entries/search/route.js +7 -0
  28. package/dist/standalone/next-output/server/app/api/entries/search/route.js.nft.json +1 -0
  29. package/dist/standalone/next-output/server/app/api/entries/search/route_client-reference-manifest.js +3 -0
  30. package/dist/standalone/next-output/server/app/api/entry/delete-bulk/route.js +1 -1
  31. package/dist/standalone/next-output/server/app/api/entry/delete-bulk/route.js.nft.json +1 -1
  32. package/dist/standalone/next-output/server/app/api/entry/merge/route/app-paths-manifest.json +3 -0
  33. package/dist/standalone/next-output/server/app/api/entry/merge/route/build-manifest.json +9 -0
  34. package/dist/standalone/next-output/server/app/api/entry/merge/route/server-reference-manifest.json +4 -0
  35. package/dist/standalone/next-output/server/app/api/entry/merge/route.js +7 -0
  36. package/dist/standalone/next-output/server/app/api/entry/merge/route.js.nft.json +1 -0
  37. package/dist/standalone/next-output/server/app/api/entry/merge/route_client-reference-manifest.js +3 -0
  38. package/dist/standalone/next-output/server/app/api/entry/move/route.js +1 -1
  39. package/dist/standalone/next-output/server/app/api/entry/move/route.js.nft.json +1 -1
  40. package/dist/standalone/next-output/server/app/api/entry/move-bulk/route.js +1 -1
  41. package/dist/standalone/next-output/server/app/api/entry/move-bulk/route.js.nft.json +1 -1
  42. package/dist/standalone/next-output/server/app/api/entry/route.js +2 -2
  43. package/dist/standalone/next-output/server/app/api/entry/route.js.nft.json +1 -1
  44. package/dist/standalone/next-output/server/app/api/entry/split/route/app-paths-manifest.json +3 -0
  45. package/dist/standalone/next-output/server/app/api/entry/split/route/build-manifest.json +9 -0
  46. package/dist/standalone/next-output/server/app/api/entry/split/route/server-reference-manifest.json +4 -0
  47. package/dist/standalone/next-output/server/app/api/entry/split/route.js +8 -0
  48. package/dist/standalone/next-output/server/app/api/entry/split/route.js.nft.json +1 -0
  49. package/dist/standalone/next-output/server/app/api/entry/split/route_client-reference-manifest.js +3 -0
  50. package/dist/standalone/next-output/server/app/api/focus-nudges/status/route.js +1 -1
  51. package/dist/standalone/next-output/server/app/api/focus-nudges/status/route.js.nft.json +1 -1
  52. package/dist/standalone/next-output/server/app/api/in/route.js +1 -1
  53. package/dist/standalone/next-output/server/app/api/in/route.js.nft.json +1 -1
  54. package/dist/standalone/next-output/server/app/api/note/route.js +1 -1
  55. package/dist/standalone/next-output/server/app/api/note/route.js.nft.json +1 -1
  56. package/dist/standalone/next-output/server/app/api/out/route.js +2 -2
  57. package/dist/standalone/next-output/server/app/api/out/route.js.nft.json +1 -1
  58. package/dist/standalone/next-output/server/app/api/sheet/active/route.js +1 -1
  59. package/dist/standalone/next-output/server/app/api/sheet/active/route.js.nft.json +1 -1
  60. package/dist/standalone/next-output/server/app/api/sheet/route.js +1 -1
  61. package/dist/standalone/next-output/server/app/api/sheet/route.js.nft.json +1 -1
  62. package/dist/standalone/next-output/server/app/api/state/route.js +1 -1
  63. package/dist/standalone/next-output/server/app/api/state/route.js.nft.json +1 -1
  64. package/dist/standalone/next-output/server/app/api/sync/import/route.js +1 -1
  65. package/dist/standalone/next-output/server/app/api/sync/import/route.js.nft.json +1 -1
  66. package/dist/standalone/next-output/server/app/api/sync/merge-on-load/route.js +1 -1
  67. package/dist/standalone/next-output/server/app/api/sync/merge-on-load/route.js.nft.json +1 -1
  68. package/dist/standalone/next-output/server/app/api/sync/pull/route.js +1 -1
  69. package/dist/standalone/next-output/server/app/api/sync/pull/route.js.nft.json +1 -1
  70. package/dist/standalone/next-output/server/app/api/sync/push/route.js +1 -1
  71. package/dist/standalone/next-output/server/app/api/sync/push/route.js.nft.json +1 -1
  72. package/dist/standalone/next-output/server/app/api/tags/route.js +1 -1
  73. package/dist/standalone/next-output/server/app/api/tags/route.js.nft.json +1 -1
  74. package/dist/standalone/next-output/server/app/login/page/build-manifest.json +2 -2
  75. package/dist/standalone/next-output/server/app/login/page.js +1 -2
  76. package/dist/standalone/next-output/server/app/login/page.js.nft.json +1 -1
  77. package/dist/standalone/next-output/server/app/login/page_client-reference-manifest.js +1 -1
  78. package/dist/standalone/next-output/server/app/offline/page/build-manifest.json +2 -2
  79. package/dist/standalone/next-output/server/app/offline/page.js +1 -2
  80. package/dist/standalone/next-output/server/app/offline/page.js.nft.json +1 -1
  81. package/dist/standalone/next-output/server/app/offline/page_client-reference-manifest.js +1 -1
  82. package/dist/standalone/next-output/server/app/page/build-manifest.json +2 -2
  83. package/dist/standalone/next-output/server/app/page.js +2 -3
  84. package/dist/standalone/next-output/server/app/page.js.nft.json +1 -1
  85. package/dist/standalone/next-output/server/app/page_client-reference-manifest.js +1 -1
  86. package/dist/standalone/next-output/server/app/pomodoro/page/build-manifest.json +2 -2
  87. package/dist/standalone/next-output/server/app/pomodoro/page.js +2 -3
  88. package/dist/standalone/next-output/server/app/pomodoro/page.js.nft.json +1 -1
  89. package/dist/standalone/next-output/server/app/pomodoro/page_client-reference-manifest.js +1 -1
  90. package/dist/standalone/next-output/server/app/register/page/build-manifest.json +2 -2
  91. package/dist/standalone/next-output/server/app/register/page.js +1 -2
  92. package/dist/standalone/next-output/server/app/register/page.js.nft.json +1 -1
  93. package/dist/standalone/next-output/server/app/register/page_client-reference-manifest.js +1 -1
  94. package/dist/standalone/next-output/server/app/reporting/page/build-manifest.json +2 -2
  95. package/dist/standalone/next-output/server/app/reporting/page.js +2 -3
  96. package/dist/standalone/next-output/server/app/reporting/page.js.nft.json +1 -1
  97. package/dist/standalone/next-output/server/app/reporting/page_client-reference-manifest.js +1 -1
  98. package/dist/standalone/next-output/server/app/search/page/app-paths-manifest.json +3 -0
  99. package/dist/standalone/next-output/server/app/search/page/build-manifest.json +17 -0
  100. package/dist/standalone/next-output/server/app/search/page/next-font-manifest.json +11 -0
  101. package/dist/standalone/next-output/server/app/search/page/react-loadable-manifest.json +1 -0
  102. package/dist/standalone/next-output/server/app/search/page/server-reference-manifest.json +4 -0
  103. package/dist/standalone/next-output/server/app/search/page.js +16 -0
  104. package/dist/standalone/next-output/server/app/search/page.js.nft.json +1 -0
  105. package/dist/standalone/next-output/server/app/search/page_client-reference-manifest.js +3 -0
  106. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page/build-manifest.json +2 -2
  107. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page.js +1 -2
  108. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page.js.nft.json +1 -1
  109. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page_client-reference-manifest.js +1 -1
  110. package/dist/standalone/next-output/server/app/settings/cloud-sync/page/build-manifest.json +2 -2
  111. package/dist/standalone/next-output/server/app/settings/cloud-sync/page.js +1 -2
  112. package/dist/standalone/next-output/server/app/settings/cloud-sync/page.js.nft.json +1 -1
  113. package/dist/standalone/next-output/server/app/settings/cloud-sync/page_client-reference-manifest.js +1 -1
  114. package/dist/standalone/next-output/server/app/settings/data/page/build-manifest.json +2 -2
  115. package/dist/standalone/next-output/server/app/settings/data/page.js +2 -3
  116. package/dist/standalone/next-output/server/app/settings/data/page.js.nft.json +1 -1
  117. package/dist/standalone/next-output/server/app/settings/data/page_client-reference-manifest.js +1 -1
  118. package/dist/standalone/next-output/server/app/settings/display/page/build-manifest.json +2 -2
  119. package/dist/standalone/next-output/server/app/settings/display/page.js +1 -2
  120. package/dist/standalone/next-output/server/app/settings/display/page.js.nft.json +1 -1
  121. package/dist/standalone/next-output/server/app/settings/display/page_client-reference-manifest.js +1 -1
  122. package/dist/standalone/next-output/server/app/settings/goals/page/build-manifest.json +2 -2
  123. package/dist/standalone/next-output/server/app/settings/goals/page.js +2 -3
  124. package/dist/standalone/next-output/server/app/settings/goals/page.js.nft.json +1 -1
  125. package/dist/standalone/next-output/server/app/settings/goals/page_client-reference-manifest.js +1 -1
  126. package/dist/standalone/next-output/server/app/settings/notifications/page/build-manifest.json +2 -2
  127. package/dist/standalone/next-output/server/app/settings/notifications/page.js +1 -2
  128. package/dist/standalone/next-output/server/app/settings/notifications/page.js.nft.json +1 -1
  129. package/dist/standalone/next-output/server/app/settings/notifications/page_client-reference-manifest.js +1 -1
  130. package/dist/standalone/next-output/server/app/settings/page/build-manifest.json +2 -2
  131. package/dist/standalone/next-output/server/app/settings/page.js +2 -3
  132. package/dist/standalone/next-output/server/app/settings/page.js.nft.json +1 -1
  133. package/dist/standalone/next-output/server/app/settings/page_client-reference-manifest.js +1 -1
  134. package/dist/standalone/next-output/server/app/settings/pomodoro/page/build-manifest.json +2 -2
  135. package/dist/standalone/next-output/server/app/settings/pomodoro/page.js +2 -3
  136. package/dist/standalone/next-output/server/app/settings/pomodoro/page.js.nft.json +1 -1
  137. package/dist/standalone/next-output/server/app/settings/pomodoro/page_client-reference-manifest.js +1 -1
  138. package/dist/standalone/next-output/server/app/settings/quick-actions/page/build-manifest.json +2 -2
  139. package/dist/standalone/next-output/server/app/settings/quick-actions/page.js +1 -2
  140. package/dist/standalone/next-output/server/app/settings/quick-actions/page.js.nft.json +1 -1
  141. package/dist/standalone/next-output/server/app/settings/quick-actions/page_client-reference-manifest.js +1 -1
  142. package/dist/standalone/next-output/server/app/settings/tags/page/build-manifest.json +2 -2
  143. package/dist/standalone/next-output/server/app/settings/tags/page.js +2 -3
  144. package/dist/standalone/next-output/server/app/settings/tags/page.js.nft.json +1 -1
  145. package/dist/standalone/next-output/server/app/settings/tags/page_client-reference-manifest.js +1 -1
  146. package/dist/standalone/next-output/server/app/sheets/page/build-manifest.json +2 -2
  147. package/dist/standalone/next-output/server/app/sheets/page.js +2 -3
  148. package/dist/standalone/next-output/server/app/sheets/page.js.nft.json +1 -1
  149. package/dist/standalone/next-output/server/app/sheets/page_client-reference-manifest.js +1 -1
  150. package/dist/standalone/next-output/server/app/today/page/build-manifest.json +2 -2
  151. package/dist/standalone/next-output/server/app/today/page.js +2 -3
  152. package/dist/standalone/next-output/server/app/today/page.js.nft.json +1 -1
  153. package/dist/standalone/next-output/server/app/today/page_client-reference-manifest.js +1 -1
  154. package/dist/standalone/next-output/server/app-paths-manifest.json +5 -0
  155. package/dist/standalone/next-output/server/chunks/0z~i_next_dist_esm_build_templates_app-route_0~jv_po.js +3 -0
  156. package/dist/standalone/next-output/server/chunks/{[root-of-the-server]__0ixkum3._.js → [root-of-the-server]__01ng47y._.js} +2 -2
  157. package/dist/standalone/next-output/server/chunks/{[root-of-the-server]__0.ztg_g._.js → [root-of-the-server]__02bnr5q._.js} +2 -2
  158. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0daa86i._.js +3 -0
  159. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0hwik-5._.js +3 -0
  160. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0lbu8mm._.js +3 -0
  161. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0n.~.zo._.js +3 -0
  162. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0n~maxn._.js +3 -0
  163. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0pave79._.js +3 -0
  164. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0qj~x3r._.js +3 -0
  165. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0skolig._.js +3 -0
  166. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0traxfq._.js +3 -0
  167. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0u_4s37._.js +3 -0
  168. package/dist/standalone/next-output/server/chunks/{[root-of-the-server]__0qxlpdo._.js → [root-of-the-server]__0vivr1t._.js} +2 -2
  169. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0vjnznw._.js +3 -0
  170. package/dist/standalone/next-output/server/chunks/{[root-of-the-server]__01dpndl._.js → [root-of-the-server]__0wp5dks._.js} +2 -2
  171. package/dist/standalone/next-output/server/chunks/{[root-of-the-server]__0g~~yai._.js → [root-of-the-server]__0~_od9c._.js} +2 -2
  172. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0~gka7i._.js +3 -0
  173. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0~zviro._.js +1 -1
  174. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__13y14r6._.js +3 -0
  175. package/dist/standalone/next-output/server/chunks/{_0y.amf.._.js → _009-tpl._.js} +2 -2
  176. package/dist/standalone/next-output/server/chunks/_0p0-odp._.js +3 -0
  177. package/dist/standalone/next-output/server/chunks/{_0vzosja._.js → _0rz1whw._.js} +2 -2
  178. package/dist/standalone/next-output/server/chunks/_next-internal_server_app_api_command-palette_route_actions_0n5r28j.js +3 -0
  179. package/dist/standalone/next-output/server/chunks/_next-internal_server_app_api_entries_search_route_actions_09m9ljm.js +3 -0
  180. package/dist/standalone/next-output/server/chunks/_next-internal_server_app_api_entry_merge_route_actions_047yt1x.js +3 -0
  181. package/dist/standalone/next-output/server/chunks/_next-internal_server_app_api_entry_split_route_actions_0g-iltq.js +3 -0
  182. package/dist/standalone/next-output/server/chunks/ssr/0z~i_next_dist_04bpslp._.js +1 -1
  183. package/dist/standalone/next-output/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0huho7_.js +4 -0
  184. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__052~wmx._.js +1 -1
  185. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__07_7oid._.js +3 -0
  186. package/dist/standalone/next-output/server/chunks/ssr/{[root-of-the-server]__0x6yv3u._.js → [root-of-the-server]__0c786vx._.js} +2 -2
  187. package/dist/standalone/next-output/server/chunks/ssr/{[root-of-the-server]__0gi2idc._.js → [root-of-the-server]__0d6wmgd._.js} +2 -2
  188. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0d9ak_~._.js +3 -0
  189. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0d~vgg9._.js +3 -0
  190. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0hpcspt._.js +3 -0
  191. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0kp.3u5._.js +3 -0
  192. package/dist/standalone/next-output/server/chunks/ssr/{[root-of-the-server]__0yrs18n._.js → [root-of-the-server]__0laah33._.js} +2 -2
  193. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0n8s9zq._.js +1 -1
  194. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0qwn._e._.js +3 -0
  195. package/dist/standalone/next-output/server/chunks/ssr/{[root-of-the-server]__0_wxrlk._.js → [root-of-the-server]__0teulir._.js} +2 -2
  196. package/dist/standalone/next-output/server/chunks/ssr/{[root-of-the-server]__0hx9602._.js → [root-of-the-server]__0xp50ux._.js} +2 -2
  197. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0yz-q3-._.js +3 -0
  198. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__113s7hk._.js +3 -0
  199. package/dist/standalone/next-output/server/chunks/ssr/_0-a9ia4._.js +3 -0
  200. package/dist/standalone/next-output/server/chunks/ssr/_002dssm._.js +1 -1
  201. package/dist/standalone/next-output/server/chunks/ssr/_00x~ete._.js +1 -1
  202. package/dist/standalone/next-output/server/chunks/ssr/_01m_4io._.js +3 -0
  203. package/dist/standalone/next-output/server/chunks/ssr/_036rv.y._.js +3 -0
  204. package/dist/standalone/next-output/server/chunks/ssr/{_0_k2414._.js → _04.8jwp._.js} +2 -2
  205. package/dist/standalone/next-output/server/chunks/ssr/_040_y99._.js +3 -0
  206. package/dist/standalone/next-output/server/chunks/ssr/_07p~0bg._.js +1 -1
  207. package/dist/standalone/next-output/server/chunks/ssr/_0dxq_sx._.js +3 -0
  208. package/dist/standalone/next-output/server/chunks/ssr/_0hcz.gb._.js +3 -0
  209. package/dist/standalone/next-output/server/chunks/ssr/_0lhrvkv._.js +3 -0
  210. package/dist/standalone/next-output/server/chunks/ssr/_0l~yvzl._.js +3 -0
  211. package/dist/standalone/next-output/server/chunks/ssr/_0m.iebm._.js +1 -1
  212. package/dist/standalone/next-output/server/chunks/ssr/_0nnp~ae._.js +1 -1
  213. package/dist/standalone/next-output/server/chunks/ssr/_0p5_u-y._.js +3 -0
  214. package/dist/standalone/next-output/server/chunks/ssr/_0q~8_bm._.js +1 -1
  215. package/dist/standalone/next-output/server/chunks/ssr/_0rv4ope._.js +3 -0
  216. package/dist/standalone/next-output/server/chunks/ssr/_0s_1q6-._.js +3 -0
  217. package/dist/standalone/next-output/server/chunks/ssr/_0s_yzxz._.js +3 -0
  218. package/dist/standalone/next-output/server/chunks/ssr/_0t2td71._.js +3 -0
  219. package/dist/standalone/next-output/server/chunks/ssr/_0v9kigy._.js +1 -1
  220. package/dist/standalone/next-output/server/chunks/ssr/_0woiueg._.js +3 -0
  221. package/dist/standalone/next-output/server/chunks/ssr/_0zgllyb._.js +3 -0
  222. package/dist/standalone/next-output/server/chunks/ssr/_10c-dv7._.js +3 -0
  223. package/dist/standalone/next-output/server/chunks/ssr/{_088~qfj._.js → _10~dvb4._.js} +3 -3
  224. package/dist/standalone/next-output/server/chunks/ssr/_11je2nt._.js +3 -0
  225. package/dist/standalone/next-output/server/chunks/ssr/_1218olc._.js +3 -0
  226. package/dist/standalone/next-output/server/chunks/ssr/_next-internal_server_app_search_page_actions_0koh-tf.js +3 -0
  227. package/dist/standalone/next-output/server/chunks/ssr/components_0isp.qn._.js +3 -0
  228. package/dist/standalone/next-output/server/chunks/ssr/components_0rm~268._.js +1 -1
  229. package/dist/standalone/next-output/server/chunks/ssr/components_0s502iu._.js +3 -0
  230. package/dist/standalone/next-output/server/chunks/ssr/components_reporting-view_tsx_0-0ofcv._.js +1 -1
  231. package/dist/standalone/next-output/server/chunks/ssr/components_supabase-auth-form_tsx_0s9lt-1._.js +3 -0
  232. package/dist/standalone/next-output/server/chunks/ssr/components_today-focus-view_tsx_0~eac-w._.js +1 -1
  233. package/dist/standalone/next-output/server/chunks/ssr/components_tracker-app_tsx_0qs9.7y._.js +1 -1
  234. package/dist/standalone/next-output/server/middleware-build-manifest.js +5 -5
  235. package/dist/standalone/next-output/server/middleware-manifest.json +1 -1
  236. package/dist/standalone/next-output/server/next-font-manifest.js +1 -1
  237. package/dist/standalone/next-output/server/next-font-manifest.json +4 -0
  238. package/dist/standalone/next-output/server/pages/500.html +1 -1
  239. package/dist/standalone/next-output/static/chunks/0-pivfzfhyz.5.js +1 -0
  240. package/dist/standalone/next-output/static/chunks/0.e7_ejd.-kzx.js +1 -0
  241. package/dist/standalone/next-output/static/chunks/{0x9s1xcq69ppx.js → 005x4jqipr75n.js} +5 -5
  242. package/dist/standalone/next-output/static/chunks/02~oo04e0po4k.css +3 -0
  243. package/dist/standalone/next-output/static/chunks/033lk~e30imyc.js +1 -0
  244. package/dist/standalone/next-output/static/chunks/03lov4c0_c3q~.js +1 -0
  245. package/dist/standalone/next-output/static/chunks/049ufrw2rog87.js +1 -0
  246. package/dist/standalone/next-output/static/chunks/04d2c_i-luh3o.js +1 -0
  247. package/dist/standalone/next-output/static/chunks/08sdj449boiec.js +1 -0
  248. package/dist/standalone/next-output/static/chunks/09u_29en-yaxy.js +1 -0
  249. package/dist/standalone/next-output/static/chunks/0ahw3noqs1atp.js +1 -0
  250. package/dist/standalone/next-output/static/chunks/0e7vf6ybvzpet.js +1 -0
  251. package/dist/standalone/next-output/static/chunks/0hse41v5a2z.p.js +1 -0
  252. package/dist/standalone/next-output/static/chunks/0kehy4rq7thp9.js +1 -0
  253. package/dist/standalone/next-output/static/chunks/0pq_8wz65_8e..js +1 -0
  254. package/dist/standalone/next-output/static/chunks/0q1lqhczpaxed.js +1 -0
  255. package/dist/standalone/next-output/static/chunks/0s_kkoslz7uoy.js +1 -0
  256. package/dist/standalone/next-output/static/chunks/0tee7--l8~1jx.js +1 -0
  257. package/dist/standalone/next-output/static/chunks/0ufz8oxu3.gqp.js +1 -0
  258. package/dist/standalone/next-output/static/chunks/0xalmh45.srx..js +1 -0
  259. package/dist/standalone/next-output/static/chunks/0xeacy6yprulb.js +1 -0
  260. package/dist/standalone/next-output/static/chunks/0xmqo9jexa_hl.js +1 -0
  261. package/dist/standalone/next-output/static/chunks/{0ztw.xdr4egi9.js → 0y7vk2q__th4g.js} +2 -2
  262. package/dist/standalone/next-output/static/chunks/0yd454vuc8vdt.js +1 -0
  263. package/dist/standalone/next-output/static/chunks/10hpcjpra-dzn.js +1 -0
  264. package/dist/standalone/next-output/static/chunks/151m05291h.pl.js +1 -0
  265. package/dist/standalone/next-output/static/chunks/175d60.wup0de.js +1 -0
  266. package/dist/standalone/next-output/static/chunks/17gch824k4dm8.js +1 -0
  267. package/dist/standalone/next-output/static/chunks/{turbopack-09e2mm19twlrw.js → turbopack-01utszc95mtf1.js} +1 -1
  268. package/dist/standalone/package.json +13 -4
  269. package/dist/standalone/public/sw.js +1 -0
  270. package/package.json +13 -4
  271. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0-xbdkv._.js +0 -3
  272. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__00_xlkl._.js +0 -3
  273. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__02io6cv._.js +0 -3
  274. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__07sy349._.js +0 -3
  275. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0l9xtqh._.js +0 -3
  276. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0o1mjxc._.js +0 -3
  277. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0s7i732._.js +0 -3
  278. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0wtdkb3._.js +0 -3
  279. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__13n2uo8._.js +0 -3
  280. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0-0rjzr._.js +0 -3
  281. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__01xqr3d._.js +0 -3
  282. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0_b2z9m._.js +0 -3
  283. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0bowsf1._.js +0 -3
  284. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0dvku3t._.js +0 -3
  285. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0k~hq1g._.js +0 -3
  286. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0wtu388._.js +0 -3
  287. package/dist/standalone/next-output/server/chunks/ssr/_00aklen._.js +0 -3
  288. package/dist/standalone/next-output/server/chunks/ssr/_00ic3j9._.js +0 -3
  289. package/dist/standalone/next-output/server/chunks/ssr/_08qe8j9._.js +0 -3
  290. package/dist/standalone/next-output/server/chunks/ssr/_0_aptb7._.js +0 -3
  291. package/dist/standalone/next-output/server/chunks/ssr/_0axgv9-._.js +0 -3
  292. package/dist/standalone/next-output/server/chunks/ssr/_0c0txs~._.js +0 -3
  293. package/dist/standalone/next-output/server/chunks/ssr/_0cm4hy2._.js +0 -3
  294. package/dist/standalone/next-output/server/chunks/ssr/_0cxg26n._.js +0 -3
  295. package/dist/standalone/next-output/server/chunks/ssr/_0l6-7m4._.js +0 -3
  296. package/dist/standalone/next-output/server/chunks/ssr/_0s1f~0y._.js +0 -3
  297. package/dist/standalone/next-output/server/chunks/ssr/_0xrc5.~._.js +0 -3
  298. package/dist/standalone/next-output/server/chunks/ssr/_0y3ypyx._.js +0 -3
  299. package/dist/standalone/next-output/server/chunks/ssr/_0ycs85o._.js +0 -3
  300. package/dist/standalone/next-output/server/chunks/ssr/_0zk9gtm._.js +0 -3
  301. package/dist/standalone/next-output/server/chunks/ssr/_13crob-._.js +0 -3
  302. package/dist/standalone/next-output/server/chunks/ssr/_13y76jr._.js +0 -3
  303. package/dist/standalone/next-output/server/chunks/ssr/lib_0c0z4q-._.js +0 -3
  304. package/dist/standalone/next-output/static/chunks/0.4obx1-sv46-.js +0 -1
  305. package/dist/standalone/next-output/static/chunks/029pvmqxn_t4z.js +0 -1
  306. package/dist/standalone/next-output/static/chunks/04~.lbegcwd41.js +0 -1
  307. package/dist/standalone/next-output/static/chunks/05tg.ske01w0a.js +0 -1
  308. package/dist/standalone/next-output/static/chunks/06xf_oh5oqbs2.js +0 -1
  309. package/dist/standalone/next-output/static/chunks/09acxdggb87~w.js +0 -1
  310. package/dist/standalone/next-output/static/chunks/09tjbwcc~3p_e.js +0 -1
  311. package/dist/standalone/next-output/static/chunks/0ate7k1rcitu0.js +0 -1
  312. package/dist/standalone/next-output/static/chunks/0crn_fc6.6569.js +0 -1
  313. package/dist/standalone/next-output/static/chunks/0fkr5kz7p1r5l.js +0 -1
  314. package/dist/standalone/next-output/static/chunks/0lhj2p9.4g20~.js +0 -1
  315. package/dist/standalone/next-output/static/chunks/0o4zvrm3q.9k3.js +0 -1
  316. package/dist/standalone/next-output/static/chunks/0pqilbd~jphqs.css +0 -3
  317. package/dist/standalone/next-output/static/chunks/0q05k1wfzh4_a.js +0 -1
  318. package/dist/standalone/next-output/static/chunks/0vov8ngx9~8m2.js +0 -1
  319. package/dist/standalone/next-output/static/chunks/0watkjb-fw0vn.js +0 -1
  320. package/dist/standalone/next-output/static/chunks/0x5_m1_cuacap.js +0 -1
  321. package/dist/standalone/next-output/static/chunks/0xj4dodycy1oc.js +0 -1
  322. package/dist/standalone/next-output/static/chunks/0yi4m~~80yeqj.js +0 -1
  323. package/dist/standalone/next-output/static/chunks/12eaief5vtso9.js +0 -1
  324. package/dist/standalone/next-output/static/chunks/13-nw2q_c_9mk.js +0 -1
  325. package/dist/standalone/next-output/static/chunks/14jtaz5s.4ih1.js +0 -1
  326. /package/dist/standalone/next-output/static/{gS32e4Tv_70ot1IWBJddE → X1tXHWU8OQsHkaFGwq5aW}/_buildManifest.js +0 -0
  327. /package/dist/standalone/next-output/static/{gS32e4Tv_70ot1IWBJddE → X1tXHWU8OQsHkaFGwq5aW}/_clientMiddlewareManifest.js +0 -0
  328. /package/dist/standalone/next-output/static/{gS32e4Tv_70ot1IWBJddE → X1tXHWU8OQsHkaFGwq5aW}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,42552,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return l}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(44066)._(e.r(78677)),i=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=e.pathname||"",o=e.hash||"",l=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),l&&"object"==typeof l&&(l=String(a.urlQueryToSearchParams(l)));let u=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||i.test(n))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${s}${u}${o}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},37879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let n=e.r(29158);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=a(e,n)),t&&(s.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},59246,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(31047),s=e.r(63334);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},10364,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},45958,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return _}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(44066),i=e.r(54710),o=a._(e.r(29158)),l=e.r(42552),c=e.r(61717),u=e.r(37879),d=e.r(31047),p=e.r(20321);e.r(90503);let h=e.r(38520),f=e.r(19947),m=e.r(59246),b=e.r(99046);function g(t){var r,n;let s,a,g,[_,y]=(0,o.useOptimistic)(f.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:k,as:j,children:w,prefetch:N=null,passHref:S,replace:C,shallow:E,scroll:T,onClick:P,onMouseEnter:O,onTouchStart:L,legacyBehavior:R=!1,onNavigate:A,transitionTypes:M,ref:q,unstable_dynamicOnHover:$,...D}=t;s=w,R&&("string"==typeof s||"number"==typeof s)&&(s=(0,i.jsx)("a",{children:s}));let U=o.default.useContext(c.AppRouterContext),I=!1!==N,W=!1!==N?null===(n=N)||"auto"===n?b.FetchStrategy.PPR:b.FetchStrategy.Full:b.FetchStrategy.PPR,K="string"==typeof(r=j||k)?r:(0,l.formatUrl)(r);if(R){if(s?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=o.default.Children.only(s)}let B=R?a&&"object"==typeof a&&a.ref:q,F=o.default.useCallback(e=>(null!==U&&(v.current=(0,f.mountLinkInstance)(e,K,U,W,I,y)),()=>{v.current&&((0,f.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,f.unmountPrefetchableInstance)(e)}),[I,K,U,W,y]),z={ref:(0,u.useMergedRef)(F,B),onClick(t){R||"function"!=typeof P||P(t),R&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!U||t.defaultPrevented||function(t,r,n,s,a,i,l){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){s&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(91087);o.default.startTransition(()=>{d(r,s?"replace":"push",!1===a?h.ScrollBehavior.NoScroll:h.ScrollBehavior.Default,n.current,l)})}}(t,K,v,C,T,A,M)},onMouseEnter(e){R||"function"!=typeof O||O(e),R&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),U&&I&&(0,f.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){R||"function"!=typeof L||L(e),R&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),U&&I&&(0,f.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,d.isAbsoluteUrl)(K)?z.href=K:R&&!S&&("a"!==a.type||"href"in a.props)||(z.href=(0,p.addBasePath)(K)),g=R?o.default.cloneElement(a,z):(0,i.jsx)("a",{...D,...z,children:s}),(0,i.jsx)(x.Provider,{value:_,children:g})}e.r(10364);let x=(0,o.createContext)(f.IDLE_LINK_STATUS),_=()=>(0,o.useContext)(x);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},77882,e=>{"use strict";var t=e.i(71060),r=e.i(29158),n=e.i(83105),s=e.i(32417),a=e.i(46549);e.s(["use_supabase_auth_session",0,function(){let e=(0,t.useRouter)(),[i,o]=(0,r.useState)(null),[l,c]=(0,r.useState)(!1),u=(0,s.is_supabase_configured)();return(0,r.useEffect)(()=>{if(!u)return;let e=(0,n.create_browser_supabase_client)();e.auth.getSession().then(({data:{session:e}})=>{o(e?.user.email??null)}).catch(()=>{o(null)});let{data:{subscription:t}}=e.auth.onAuthStateChange((e,t)=>{o(t?.user.email??null)});return()=>{t.unsubscribe()}},[u]),{is_configured:u,email:i,is_pending:l,sign_out:(0,r.useCallback)(async()=>{c(!0);try{await fetch("/api/auth/signout",{method:"POST"});let t=(0,n.create_browser_supabase_client)();await t.auth.signOut().catch(()=>{}),(0,a.notify_settings_saved)("Signed out"),e.refresh()}finally{c(!1)}},[e])}}])},45200,648,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060);let s=[{href:"/",label:"Tracker",match:e=>"/"===e}];function a(){return(0,t.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,t.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"})})}e.s(["TrackerNavLinks",0,function(){let e=(0,n.usePathname)()??"/";return(0,t.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:s.map(n=>{let s=n.match(e);return(0,t.jsx)(r.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:n.href,"aria-current":s?"page":void 0,children:n.label},n.href)})})}],45200);var i=e.i(77882);e.s(["TopbarCloudStatus",0,function(){let{email:e,is_configured:r}=(0,i.use_supabase_auth_session)();return r&&null!==e?(0,t.jsxs)("div",{className:"group relative flex items-center",children:[(0,t.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 ${e}`,role:"img",children:(0,t.jsx)(a,{})}),(0,t.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,t.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,t.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:e,children:e})]})})]}):null}],648)},37399,e=>{"use strict";var t=e.i(54710);e.s(["HamburgerIcon",0,function(){return(0,t.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,t.jsx)("path",{d:"M4 7h16"}),(0,t.jsx)("path",{d:"M4 12h16"}),(0,t.jsx)("path",{d:"M4 17h16"})]})}])},90463,e=>{"use strict";e.s(["build_auth_page_href",0,function(e,t){let r="sign_in"===e?"/login":"/register",n=t.trim();return 0===n.length||"/"===n?r:`${r}?next=${encodeURIComponent(n)}`}])},73205,2268,76003,38240,e=>{"use strict";let t=new Set(e.i(22373).topbar_quick_action_ids),r=["today","search","reporting","pomodoro"];e.s(["parse_topbar_quick_actions",0,function(e){try{let n=JSON.parse(e);if(!Array.isArray(n))return r;let s=n.filter(e=>"string"==typeof e&&t.has(e));return Array.from(new Set(s))}catch{return r}}],73205);var n=e.i(34869),s=e.i(92629);let a=(0,n.create_ui_preference_store)({storage_key:s.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:s.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:e=>"true"===e||"false"===e});function i(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}e.s(["cloud_sync_enabled_preference",0,a],2268),e.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return i()}],76003);var o=e.i(17798),l=e.i(46549),c=e.i(10464),u=e.i(35434),d=e.i(61834),p=e.i(81553);e.s(["toggle_theme",0,function(){let e="dark"===i()?"light":"dark";(0,o.apply_theme)(e),(0,p.write_stored_theme)(e),c.theme_mode_preference.write(e),(0,d.write_document_preference_cookies)({theme_mode:e,theme:e}),c.theme_mode_preference.notify(),(0,u.notify_theme_subscribers)(),(0,l.notify_settings_saved)()}],38240)},25204,e=>{"use strict";var t=e.i(29158),r=e.i(72074);e.s(["use_escape_to_cancel",0,function(e,n=!0){let s=(0,t.useRef)(e);s.current=e,(0,t.useEffect)(()=>{if(!n)return;let e=e=>{"Escape"!==e.key||(0,r.is_modal_dialog_open)()||(e.preventDefault(),s.current())};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[n])}])},1976,76080,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060),s=e.i(29158),a=e.i(37399),i=e.i(90463),o=e.i(46549),l=e.i(73205),c=e.i(66295),u=e.i(2268),d=e.i(32792),p=e.i(90299),h=e.i(28274),f=e.i(76003),m=e.i(35434),b=e.i(38240),g=e.i(22373),x=e.i(25204),_=e.i(77882);let y="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"},search:{href:"/search",label:"Search"},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"}},k=new Set(["manage-tags","pomodoro","sync-settings"]);e.s(["TopbarOverflowMenu",0,function(){let e=(0,n.useRouter)(),j=(0,n.usePathname)()??"/",w=(0,s.useSyncExternalStore)(m.subscribe_theme,f.get_theme_snapshot,f.get_theme_server_snapshot),N=(0,s.useSyncExternalStore)(u.cloud_sync_enabled_preference.subscribe,u.cloud_sync_enabled_preference.get_snapshot,u.cloud_sync_enabled_preference.get_server_snapshot),S=(0,s.useSyncExternalStore)(p.tracker_shortcut_map_preference.subscribe,p.tracker_shortcut_map_preference.get_snapshot,p.tracker_shortcut_map_preference.get_server_snapshot),C=(0,s.useSyncExternalStore)(d.topbar_quick_actions_preference.subscribe,d.topbar_quick_actions_preference.get_snapshot,d.topbar_quick_actions_preference.get_server_snapshot),E=(0,c.parse_tracker_shortcut_map)(S),T=new Set((0,l.parse_topbar_quick_actions)(C)),P=g.topbar_quick_action_ids.filter(e=>!T.has(e)),O=Array.from(new Set([...Array.from(k),...P])),{email:L,is_configured:R,is_pending:A,sign_out:M}=(0,_.use_supabase_auth_session)(),[q,$]=(0,s.useState)(!1),D=(0,s.useRef)(null);(0,s.useEffect)(()=>{if(!q)return;let e=e=>{null===D.current||D.current.contains(e.target)||$(!1)};return document.addEventListener("pointerdown",e),()=>{document.removeEventListener("pointerdown",e)}},[q]);let U=()=>{$(!1)};return(0,x.use_escape_to_cancel)(U,q),(0,t.jsxs)("div",{className:"relative shrink-0",ref:D,children:[(0,t.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":q,"aria-haspopup":"menu",onClick:()=>$(e=>!e),children:(0,t.jsx)(a.HamburgerIcon,{})}),q?(0,t.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:[R&&null!==L?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:L,children:L})}):null,O.map(e=>{let n=v[e];return(0,t.jsx)("li",{role:"none",children:(0,t.jsx)(r.default,{href:n.href,className:y,role:"menuitem",onClick:U,children:n.label})},e)}),R?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitemcheckbox","aria-checked":"true"===N,onClick:()=>{let e="true"===N?"false":"true";u.cloud_sync_enabled_preference.write(e),u.cloud_sync_enabled_preference.notify(),(0,o.notify_settings_saved)("true"===e?"Cloud sync enabled":"Cloud sync disabled"),"true"===e&&null!==L&&(0,h.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"true"===N?"Pause cloud sync":"Resume cloud sync"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===N?"On":"Off"})]})})}):null,(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{U(),(0,b.toggle_theme)()},suppressHydrationWarning:!0,children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsxs)("span",{children:["dark"===w?"Dark":"Light"," theme"]}),(0,t.jsx)("span",{"aria-hidden":"true",children:"dark"===w?"☾":"☀"})]})})}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{let e;U(),e=E.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:e,shiftKey:"?"===e,bubbles:!0}))},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"Keyboard shortcuts"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),R?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===L?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{U(),e.push((0,i.build_auth_page_href)("sign_in",j))},children:"Sign in"})}):(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:`${y} text-danger`,role:"menuitem",disabled:A,onClick:()=>{U(),M()},children:A?"Signing out…":"Sign out"})})]}):null]}):null]})}],1976);let j=[{id:"today",href:"/today",label:"Today"},{id:"search",href:"/search",label:"Search"},{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"}];e.s(["TopbarQuickActions",0,function(){let e=(0,n.usePathname)()??"/",a=(0,s.useSyncExternalStore)(d.topbar_quick_actions_preference.subscribe,d.topbar_quick_actions_preference.get_snapshot,d.topbar_quick_actions_preference.get_server_snapshot),i=(0,s.useMemo)(()=>(0,l.parse_topbar_quick_actions)(a),[a]);if(0===i.length)return null;let o=j.filter(e=>i.includes(e.id));return 0===o.length?null:(0,t.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:o.map(n=>{let s=e.startsWith(n.href);return(0,t.jsx)(r.default,{href:n.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":s?"page":void 0,children:n.label},n.id)})})}],76080)},29539,e=>{"use strict";var t=e.i(54710);e.s(["SettingsIcon",0,function(){return(0,t.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,t.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,t.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},75404,e=>{"use strict";var t=e.i(54710),r=e.i(45200),n=e.i(648),s=e.i(1976),a=e.i(76080),i=e.i(45958),o=e.i(71060),l=e.i(29539);function c(){let e=((0,o.usePathname)()??"/").startsWith("/settings");return(0,t.jsx)(i.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${e?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":e?"page":void 0,children:(0,t.jsx)(l.SettingsIcon,{})})}function u({current:e,parent:r}){return(0,t.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,t.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,t.jsx)("li",{children:(0,t.jsx)(i.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==r?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{children:void 0!==r.href?(0,t.jsx)(i.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:r.href,children:r.label}):(0,t.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:r.label})})]}):null,(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:e})]})})}e.s(["TrackerTopbar",0,function({breadcrumb:e}={}){return(0,t.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,t.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,t.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!==e?(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)(u,{current:e.current,parent:e.parent})}):null,(0,t.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,t.jsx)(r.TrackerNavLinks,{}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,t.jsx)(a.TopbarQuickActions,{}),(0,t.jsx)(n.TopbarCloudStatus,{}),(0,t.jsx)(c,{}),(0,t.jsx)(s.TopbarOverflowMenu,{})]})]})]})})}],75404)},42800,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060);let s=[{href:"/settings",label:"General",match:e=>"/settings"===e},{href:"/settings/display",label:"Display & layout",match:e=>e.startsWith("/settings/display")},{href:"/settings/quick-actions",label:"Quick actions",match:e=>e.startsWith("/settings/quick-actions")},{href:"/settings/goals",label:"Goals",match:e=>e.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:e=>e.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:e=>e.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:e=>e.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:e=>e.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:e=>e.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:e=>e.startsWith("/settings/tags")}];e.s(["SettingsNav",0,function(){let e=(0,n.usePathname)()??"/settings";return(0,t.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,t.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:s.map(n=>{let s=n.match(e);return(0,t.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,t.jsx)(r.default,{href:n.href,"aria-current":s?"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 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:n.label})},n.href)})})})}])},77352,e=>{"use strict";var t=e.i(54710),r=e.i(42800),n=e.i(75404);e.s(["SettingsPageLayout",0,function({breadcrumb:e,title:s,description:a,children:i}){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.TrackerTopbar,{breadcrumb:e}),(0,t.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,t.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,t.jsx)(r.SettingsNav,{})]}),(0,t.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,t.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:s}),void 0!==a?(0,t.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:a}):null]}),i]})]})]})}])},90873,e=>{"use strict";var t=e.i(54710),r=e.i(29158);let n="inline-flex shrink-0 cursor-pointer items-center gap-1.5";e.s(["Checkbox",0,function({checked:e,disabled:s=!1,indeterminate:a=!1,nested:i=!1,on_change:o,label:l,aria_label:c,className:u}){let d=(0,r.useRef)(null);(0,r.useEffect)(()=>{null!==d.current&&(d.current.indeterminate=a)},[a]);let p=void 0===u?n:`${n} ${u}`,h=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("input",{ref:d,type:"checkbox",className:"peer absolute m-0 h-px w-px overflow-hidden opacity-0",checked:e,disabled:s,"aria-label":i&&void 0===l?c:void 0,onChange:o}),(0,t.jsx)("span",{className:'relative block h-[0.85rem] w-[0.85rem] shrink-0 rounded-[0.2rem] border border-panel-border bg-input-bg box-border transition-[background-color,border-color] duration-150 peer-checked:border-accent peer-checked:bg-accent peer-indeterminate:border-accent peer-indeterminate:bg-accent peer-focus-visible:outline peer-focus-visible:outline-2 peer-focus-visible:outline-input-focus-border peer-focus-visible:outline-offset-1 peer-disabled:cursor-not-allowed peer-disabled:opacity-55 after:absolute after:left-1/2 after:top-[44%] after:hidden after:h-[0.28rem] after:w-[0.45rem] after:-translate-x-1/2 after:-translate-y-[60%] after:rotate-[-45deg] after:border-b-[1.5px] after:border-l-[1.5px] after:border-accent-text-on after:content-[""] peer-checked:after:block peer-indeterminate:after:top-1/2 peer-indeterminate:after:block peer-indeterminate:after:h-[1.5px] peer-indeterminate:after:w-[0.45rem] peer-indeterminate:after:-translate-x-1/2 peer-indeterminate:after:-translate-y-1/2 peer-indeterminate:after:rotate-0 peer-indeterminate:after:border-0 peer-indeterminate:after:bg-accent-text-on',"aria-hidden":"true"})]});return i?(0,t.jsx)("span",{className:p,children:h}):(0,t.jsxs)("label",{className:p,"aria-label":void 0===l?c:void 0,children:[h,void 0===l?null:(0,t.jsx)("span",{className:"select-none text-[0.8rem] leading-tight text-muted",children:l})]})}])},49996,e=>{"use strict";var t=e.i(54710),r=e.i(29158),n=e.i(90873),s=e.i(77352),a=e.i(52405),i=e.i(46549),o=e.i(73205),l=e.i(66295),c=e.i(32792),u=e.i(90299),d=e.i(22373);let p={help:"Show keyboard shortcuts","check-in":"Check in","check-out":"Check out","edit-entry":"Edit active entry","add-note":"Add note",pomodoro:"Open Pomodoro","previous-sheet":"Previous sheet","next-sheet":"Next sheet"},h={today:"Today",search:"Search entries",sheets:"Sheets",reporting:"Reporting",pomodoro:"Pomodoro","manage-tags":"Tag management","sync-settings":"Sync settings"};e.s(["QuickActionsSettingsView",0,function(){let[e,f]=(0,r.useState)(!1),m=(0,r.useSyncExternalStore)(u.tracker_shortcut_map_preference.subscribe,u.tracker_shortcut_map_preference.get_snapshot,u.tracker_shortcut_map_preference.get_server_snapshot),b=(0,r.useSyncExternalStore)(c.topbar_quick_actions_preference.subscribe,c.topbar_quick_actions_preference.get_snapshot,c.topbar_quick_actions_preference.get_server_snapshot),g=(0,r.useMemo)(()=>(0,l.parse_tracker_shortcut_map)(m),[m]),x=(0,r.useMemo)(()=>(0,o.parse_topbar_quick_actions)(b),[b]),[_,y]=(0,r.useState)(g);(0,r.useEffect)(()=>{f(!0)},[]),(0,r.useEffect)(()=>{y(g)},[g]);let v=(0,r.useMemo)(()=>{let e=new Map;for(let t of d.tracker_shortcut_action_ids){let r=g[t];e.set(r,(e.get(r)??0)+1)}return new Set(Array.from(e.entries()).filter(([,e])=>e>1).map(([e])=>e))},[g]);return e?(0,t.jsx)(s.SettingsPageLayout,{breadcrumb:{current:"Quick actions",parent:{label:"Settings",href:"/settings"}},title:"Quick actions config",description:"Customize keyboard shortcuts and topbar shortcuts.",children:(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("section",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Keyboard shortcuts"}),(0,t.jsx)("p",{className:"m-0 mt-1 text-[0.8rem] leading-snug text-muted",children:"Choose one key per action. If a key is reused, only the first matching action will trigger."}),(0,t.jsx)("div",{className:"mt-3 grid grid-cols-1 gap-2 md:grid-cols-2",children:d.tracker_shortcut_action_ids.map(e=>{let r=g[e],n=_[e]??r,s=v.has(r),o=n!==r;return(0,t.jsxs)("div",{className:"grid min-h-20 content-center grid-cols-[minmax(0,1fr)_3.5rem] items-center gap-2 rounded-md border border-panel-border px-2.5 py-2",children:[(0,t.jsx)("span",{className:"text-[0.86rem]",children:p[e]}),(0,t.jsx)("input",{type:"text",className:`${(0,a.get_input_class_name)("compact")} h-8 w-14 justify-self-end px-2 text-center`,value:"?"===n?"?":n.toUpperCase(),readOnly:!0,onKeyDown:t=>((e,t)=>{if("Enter"===t.key){let r;t.preventDefault();let n=_[e];1===n.length&&(r={...g,[e]:n},u.tracker_shortcut_map_preference.write(JSON.stringify(r)),u.tracker_shortcut_map_preference.notify(),(0,i.notify_settings_saved)("Quick actions updated"));return}if("Escape"===t.key){t.preventDefault(),y(t=>({...t,[e]:g[e]}));return}if(1!==t.key.length)return;let r=t.key.toLowerCase();/^[a-z\[\]\?]$/.test(r)&&(t.preventDefault(),y(t=>({...t,[e]:r})))})(e,t),onFocus:e=>e.currentTarget.select(),"aria-label":`${p[e]} shortcut`}),(0,t.jsx)("span",{className:`col-span-2 text-[0.72rem] ${s?"text-danger":o?"text-muted":"text-transparent"}`,children:s?"Duplicate":o?"Press Enter to save":"Ready"})]},e)})})]}),(0,t.jsxs)("section",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Topbar shortcuts"}),(0,t.jsx)("p",{className:"m-0 mt-1 text-[0.8rem] leading-snug text-muted",children:"Show quick links in the topbar on larger screens."}),(0,t.jsx)("div",{className:"mt-3 flex flex-wrap gap-3",children:d.topbar_quick_action_ids.map(e=>(0,t.jsx)(n.Checkbox,{checked:x.includes(e),on_change:()=>{let t;return t=x.includes(e)?x.filter(t=>t!==e):[...x,e],void(c.topbar_quick_actions_preference.write(JSON.stringify(t)),c.topbar_quick_actions_preference.notify(),(0,i.notify_settings_saved)("Topbar shortcuts updated"))},label:h[e]},e))})]})]})}):(0,t.jsx)(s.SettingsPageLayout,{breadcrumb:{current:"Quick actions",parent:{label:"Settings",href:"/settings"}},title:"Quick actions config",description:"Customize keyboard shortcuts and topbar shortcuts.",children:(0,t.jsx)("p",{className:"m-0 text-[0.85rem] text-muted",children:"Loading quick action settings…"})})}])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,68120,e=>{"use strict";var t=e.i(54710),a=e.i(71060),r=e.i(29158),s=e.i(32584),n=e.i(56812);let l=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],o=[0,6,12,18];function i({heatmap:e,duration_format:a,week_starts_on:s}){let l=(0,n.week_starts_on_to_index)(s),u=(0,r.useMemo)(()=>Array.from({length:7},(e,t)=>(l+t)%7),[l]),x=(0,r.useMemo)(()=>{let t=new Map;for(let a of e)t.set(`${a.weekdayIndex}-${a.hourIndex}`,a.totalMs);return t},[e]),f=(0,r.useMemo)(()=>e.reduce((e,t)=>Math.max(e,t.totalMs),0),[e]),h=(0,r.useMemo)(()=>e.reduce((e,t)=>e+t.totalMs,0),[e]);return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-3 rounded-md border border-panel-border bg-panel p-4 shadow-sm",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h3",{className:"m-0 text-[0.95rem] font-semibold",children:"Activity heatmap"}),(0,t.jsx)("p",{className:"m-0 text-[0.78rem] text-muted",children:"When during the week you usually track time."})]}),0===h?(0,t.jsx)("p",{className:"m-0 py-6 text-center text-[0.85rem] text-muted",children:"Once you start logging time, your weekly rhythm appears here."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsx)("div",{className:"min-w-[420px] pb-1",children:(0,t.jsxs)("div",{className:"grid grid-cols-[2rem_1fr] gap-x-2",children:[(0,t.jsx)("div",{}),(0,t.jsx)("div",{className:"relative h-3.5 w-full",children:o.map(e=>(0,t.jsx)("span",{className:"absolute -translate-x-1/2 text-[0.65rem] font-medium uppercase tracking-[0.06em] text-muted",style:{left:`${e/24*100}%`},children:c(e)},e))}),u.map(e=>(0,t.jsx)(d,{weekday_index:e,cell_lookup:x,max_cell_ms:f,duration_format:a},e))]})})}),(0,t.jsxs)("footer",{className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1 text-[0.72rem] text-muted",children:[(0,t.jsx)("span",{children:"Less"}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:[.15,.35,.6,.85,1].map(e=>(0,t.jsx)("span",{className:"inline-block h-3 w-4 rounded-sm",style:{backgroundColor:m(e)}},e))}),(0,t.jsx)("span",{children:"More"})]})]})}function d({weekday_index:e,cell_lookup:a,max_cell_ms:r,duration_format:n}){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"self-center text-[0.7rem] font-medium uppercase tracking-[0.06em] text-muted",children:l[e]}),(0,t.jsx)("div",{className:"grid gap-[2px]",style:{gridTemplateColumns:"repeat(24, minmax(0, 1fr))"},children:Array.from({length:24},(o,i)=>{let d=a.get(`${e}-${i}`)??0;return(0,t.jsx)("span",{className:"block aspect-square min-h-[14px] rounded-[3px]",style:{backgroundColor:m(r>0?d/r:0)},title:`${l[e]} ${c(i)}: ${(0,s.format_duration)(d,n)}`},i)})})]})}function c(e){return 0===e?"12a":12===e?"12p":e<12?`${e}a`:`${e-12}p`}function m(e){if(e<=0)return"color-mix(in srgb, var(--surface-raised) 80%, transparent)";let t=Math.min(100,Math.round(90*e)+10);return`color-mix(in srgb, var(--accent) ${t}%, transparent)`}function u(e){return Math.round(100*e)/100}function x({daily_buckets:e,duration_format:a,title:n="Time over days",subtitle:l}){let o=(0,r.useMemo)(()=>e.slice(-60),[e]),i=(0,r.useMemo)(()=>o.reduce((e,t)=>Math.max(e,t.totalMs),0),[o]),d=(0,r.useMemo)(()=>o.reduce((e,t)=>e+t.totalMs,0),[o]),c=(0,r.useMemo)(()=>{let e=o.filter(e=>e.totalMs>0).length;return 0===e?0:d/e},[o,d]),m=l??(0===o.length?"No data in this period.":`${o.length} day${1===o.length?"":"s"} \xb7 avg ${(0,s.format_duration)(c,a)} on active days`);return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-3 rounded-md border border-panel-border bg-panel p-4 shadow-sm",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h3",{className:"m-0 text-[0.95rem] font-semibold",children:n}),(0,t.jsx)("p",{className:"m-0 text-[0.78rem] text-muted",children:m})]}),0===o.length?(0,t.jsx)("p",{className:"m-0 py-6 text-center text-[0.85rem] text-muted",children:"Track time to populate this chart."}):(0,t.jsx)("div",{className:"flex h-44 items-end gap-[3px] overflow-x-auto pb-2",children:o.map(e=>{let r=i>0?u(e.totalMs/i*100):0,n=0===e.weekdayIndex||6===e.weekdayIndex,l=e.totalMs>0;return(0,t.jsx)("div",{className:"flex h-full min-w-[6px] flex-1 flex-col justify-end",title:`${e.dateLabel} \xb7 ${(0,s.format_duration)(e.totalMs,a)}`,role:"img","aria-label":`${e.dateLabel}: ${(0,s.format_duration)(e.totalMs,a)}`,children:(0,t.jsx)("div",{className:`w-full rounded-t-sm transition-all ${l?n?"bg-accent/60":"bg-accent":"bg-surface-raised"}`,style:{height:l?`${Math.max(2,r)}%`:"2px"}})},e.dateMs)})}),(0,t.jsxs)("footer",{className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1 text-[0.72rem] text-muted",children:[(0,t.jsx)("span",{children:o.length>0?`${o[0].dateLabel} → ${o[o.length-1].dateLabel}`:""}),(0,t.jsxs)("span",{children:["Total ",(0,s.format_duration)(d,a)," · Peak"," ",(0,s.format_duration)(i,a)]})]})]})}var f=e.i(55437);function h({stats:e,duration_format:a}){let r=Math.round(100*(e.daysInMonth>0?e.trackedDays/e.daysInMonth:0));return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-5 rounded-md border border-panel-border bg-panel p-5 shadow-sm","aria-label":"Month in review",style:{backgroundImage:"linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 60%, transparent) 0%, transparent 70%)"},children:[(0,t.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{className:"text-[0.7rem] font-semibold uppercase tracking-[0.08em] text-accent",children:"Month in review"}),(0,t.jsx)("h2",{className:"m-0 text-[1.25rem] font-[650] tracking-tight",children:e.monthLabel}),(0,t.jsx)("p",{className:"m-0 text-[0.85rem] text-muted",children:0===e.totalMs?"No time tracked this month yet — start a timer to fill this in.":`Tracked on ${e.trackedDays} of ${e.daysInMonth} days (${r}%).`})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",children:[(0,t.jsx)(g,{label:"Total this month",value:(0,s.format_duration)(e.totalMs,a),detail:0===e.totalMs?"—":`${(0,s.format_duration)(e.averageActiveDayMs,a)} per active day`}),(0,t.jsx)(g,{label:"Best day",value:0===e.bestDayMs?"—":(0,s.format_duration)(e.bestDayMs,a),detail:e.bestDayLabel??"No tracked days yet"}),(0,t.jsx)(g,{label:"Top sheet",value:e.topSheetName??"—",detail:0===e.topSheetMs?"No tracked sheets":(0,s.format_duration)(e.topSheetMs,a)}),(0,t.jsx)(g,{label:"Top tag",value:e.topTag??"—",detail:0===e.topTagMs?"Tag entries to surface":(0,s.format_duration)(e.topTagMs,a)})]}),(0,t.jsxs)("ul",{className:"m-0 grid grid-cols-1 gap-2 p-0 text-[0.85rem] sm:grid-cols-3",children:[(0,t.jsx)(p,{label:"Current streak",value:`${e.currentStreakDays} day${1===e.currentStreakDays?"":"s"}`}),(0,t.jsx)(p,{label:"Longest streak",value:`${e.longestStreakDays} day${1===e.longestStreakDays?"":"s"}`}),(0,t.jsx)(p,{label:"Longest entry",value:0===e.longestEntryMs?"—":(0,s.format_duration)(e.longestEntryMs,a)}),(0,t.jsx)(p,{label:"Entries logged",value:String(e.totalEntries)}),(0,t.jsx)(p,{label:"Tracked days",value:`${e.trackedDays} / ${e.daysInMonth}`}),(0,t.jsx)(p,{label:"Coverage",value:`${r}%`})]})]})}function g({label:e,value:a,detail:r}){return(0,t.jsxs)("div",{className:"flex flex-col gap-1 rounded-md border border-panel-border bg-surface-raised/60 p-3.5",children:[(0,t.jsx)("span",{className:"text-[0.7rem] font-semibold uppercase tracking-[0.06em] text-muted",children:e}),(0,t.jsx)("span",{className:"truncate font-mono text-[1.05rem] font-semibold",children:a}),(0,t.jsx)("span",{className:"text-[0.78rem] text-muted",children:r})]})}function p({label:e,value:a}){return(0,t.jsxs)("li",{className:"flex items-center justify-between gap-2 rounded-md border border-panel-border/60 bg-surface-raised/40 px-3 py-2",children:[(0,t.jsx)("span",{className:"text-[0.78rem] text-muted",children:e}),(0,t.jsx)("span",{className:"font-mono font-semibold",children:a})]})}var b=e.i(52663);let y=[{value:"duration",label:"Duration"},{value:"name",label:"Name"},{value:"entry_count",label:"Entries"},{value:"active_first",label:"Active first"}];function M({sort:e,on_sort_change:a}){return(0,t.jsxs)("fieldset",{className:"m-0 flex w-full max-w-2xl flex-col gap-2 border-0 p-0",children:[(0,t.jsx)("legend",{className:"mb-2 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Sort by"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",role:"group","aria-label":"Sort sheets by",children:y.map(r=>{let s=e===r.value;return(0,t.jsx)("button",{type:"button",className:`${(0,b.get_button_class_name)("ghost","small")} ${s?"border-accent-border bg-accent-soft text-foreground":""}`,"aria-pressed":s,onClick:()=>a(r.value),children:r.label},r.value)})})]})}let j=["#2dd4bf","#60a5fa","#a78bfa","#f472b6","#fb923c","#facc15","#34d399","#22d3ee","#f87171","#c084fc","#fbbf24","#4ade80"];function w(e){return Math.round(100*e)/100}function v({tag_breakdown:e,duration_format:a}){let n=(0,r.useMemo)(()=>(function(e){let t=e.reduce((e,t)=>e+t.totalMs,0);if(0===t)return[];let a=[],r=0;return e.forEach((e,s)=>{var n,l,o;let i,d,c,m,u;if(e.totalMs<=0)return;let x=e.totalMs/t,f=r*Math.PI*2,h=(r+x)*Math.PI*2;r+=x,a.push({tag:e.tag,color:(n=e.tag,"Untagged"===n?"#64748b":j[s%j.length]),ratio:x,total_ms:e.totalMs,path_data:(l=f,o=h,i=k(l,70),d=k(o,70),c=k(o,38),m=k(l,38),u=+(o-l>Math.PI),`M ${i.x} ${i.y} A 70 70 0 ${u} 1 ${d.x} ${d.y} L ${c.x} ${c.y} A 38 38 0 ${u} 0 ${m.x} ${m.y} Z`)})}),a})(e),[e]),l=(0,r.useMemo)(()=>e.reduce((e,t)=>e+t.totalMs,0),[e]),o=n.slice(0,8),i=Math.max(0,n.length-8);return 0===n.length||0===l?(0,t.jsx)(N,{title:"Time by tag",subtitle:"No tagged time in this period.",children:(0,t.jsx)(_,{})}):(0,t.jsx)(N,{title:"Time by tag",subtitle:"Multi-tag entries are split evenly across their tags.",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4 sm:flex-row sm:items-start",children:[(0,t.jsxs)("div",{className:"relative shrink-0",children:[(0,t.jsx)("svg",{viewBox:"0 0 160 160",className:"h-40 w-40",role:"img","aria-label":"Tag time distribution",children:1===n.length?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("circle",{cx:80,cy:80,r:70,fill:n[0].color}),(0,t.jsx)("circle",{cx:80,cy:80,r:38,fill:"var(--panel)"})]}):n.map(e=>(0,t.jsx)("path",{d:e.path_data,fill:e.color},e.tag))}),(0,t.jsxs)("div",{className:"pointer-events-none absolute inset-0 flex flex-col items-center justify-center text-center",children:[(0,t.jsx)("span",{className:"text-[0.65rem] font-semibold uppercase tracking-[0.08em] text-muted",children:"Total"}),(0,t.jsx)("span",{className:"font-mono text-[0.85rem] font-semibold",children:(0,s.format_duration)(l,a)})]})]}),(0,t.jsxs)("ul",{className:"m-0 flex w-full flex-col gap-1.5 p-0",children:[o.map(e=>(0,t.jsxs)("li",{className:"flex items-center gap-2 text-[0.82rem]",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-2.5 w-2.5 shrink-0 rounded-sm",style:{backgroundColor:e.color}}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-medium",children:e.tag}),(0,t.jsxs)("span",{className:"shrink-0 font-mono text-muted",children:[Math.round(100*e.ratio),"%"]}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-foreground",children:(0,s.format_duration)(e.total_ms,a)})]},e.tag)),i>0?(0,t.jsxs)("li",{className:"text-[0.78rem] text-muted",children:["+ ",i," more ",1===i?"tag":"tags"]}):null]})]})})}function N({title:e,subtitle:a,children:r}){return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-3 rounded-md border border-panel-border bg-panel p-4 shadow-sm",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h3",{className:"m-0 text-[0.95rem] font-semibold",children:e}),void 0!==a?(0,t.jsx)("p",{className:"m-0 text-[0.78rem] text-muted",children:a}):null]}),r]})}function _(){return(0,t.jsxs)("div",{className:"flex flex-col items-center gap-2 py-3 text-center",children:[(0,t.jsx)("svg",{viewBox:"0 0 160 160",className:"h-28 w-28 opacity-40",role:"presentation",children:(0,t.jsx)("circle",{cx:80,cy:80,r:70,fill:"none",stroke:"var(--panel-border)",strokeWidth:32})}),(0,t.jsx)("p",{className:"m-0 text-[0.82rem] text-muted",children:"Tag your entries to see time distribution here."})]})}function k(e,t){return{x:w(80+t*Math.sin(e)),y:w(80-t*Math.cos(e))}}function D({trend:e,duration_format:a,current_label:r,previous_label:n}){var l;let o=(l=e.deltaMs)>0?{symbol:"▲",badge_class:"bg-accent-soft text-accent border border-accent-border"}:l<0?{symbol:"▼",badge_class:"bg-danger-soft text-danger border border-danger-border"}:{symbol:"—",badge_class:"bg-ghost-bg text-muted border border-panel-border"},i=function(e){if(0===e.previousMs)return 0===e.currentMs?"0%":"New";let t=100*Math.abs(e.deltaRatio);return t<.5?"~0%":`${t>=100?t.toFixed(0):t.toFixed(1)}%`}(e);return(0,t.jsxs)("div",{className:"flex flex-col gap-3 rounded-md border border-panel-border bg-panel p-4 shadow-sm",children:[(0,t.jsxs)("header",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("h3",{className:"m-0 text-[0.95rem] font-semibold",children:e.label}),(0,t.jsxs)("span",{className:`shrink-0 rounded-full px-2 py-0.5 text-[0.7rem] font-semibold ${o.badge_class}`,children:[o.symbol," ",i]})]}),(0,t.jsxs)("dl",{className:"m-0 grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("dt",{className:"m-0 text-[0.7rem] font-semibold uppercase tracking-[0.06em] text-muted",children:r}),(0,t.jsx)("dd",{className:"m-0 font-mono text-[1.05rem] font-semibold",children:(0,s.format_duration)(e.currentMs,a)})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("dt",{className:"m-0 text-[0.7rem] font-semibold uppercase tracking-[0.06em] text-muted",children:n}),(0,t.jsx)("dd",{className:"m-0 font-mono text-[1.05rem] font-semibold text-muted",children:(0,s.format_duration)(e.previousMs,a)})]})]}),(0,t.jsx)("p",{className:"m-0 text-[0.78rem] text-muted",children:function(e,t){if(0===e.previousMs&&0===e.currentMs)return"No tracked time in either period.";if(0===e.previousMs)return`${(0,s.format_duration)(e.currentMs,t)} more than last period.`;if(0===e.deltaMs)return"Identical to the previous period.";let a=e.deltaMs>0?"more":"less";return`${(0,s.format_duration)(Math.abs(e.deltaMs),t)} ${a} than the previous period.`}(e,a)})]})}let $=[{value:"dashboard",label:"Dashboard"},{value:"sheets",label:"Sheets"}];function T({active_tab:e,on_change:a}){return(0,t.jsx)("div",{role:"tablist","aria-label":"Reporting view",className:"inline-flex w-full max-w-2xl items-center gap-1 self-center rounded-full border border-panel-border bg-surface-raised/50 p-1",children:$.map(r=>{let s=r.value===e;return(0,t.jsx)("button",{type:"button",role:"tab","aria-selected":s,className:`${(0,b.get_button_class_name)("ghost","small")} flex-1 rounded-full border-transparent ${s?"bg-accent text-accent-text-on":"bg-transparent text-muted"}`,onClick:()=>a(r.value),children:r.label},r.value)})})}function S({weekday_distribution:e,duration_format:a}){let n=(0,r.useMemo)(()=>e.reduce((e,t)=>Math.max(e,t.totalMs),0),[e]),l=(0,r.useMemo)(()=>e.reduce((e,t)=>e+t.totalMs,0),[e]);return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-3 rounded-md border border-panel-border bg-panel p-4 shadow-sm",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h3",{className:"m-0 text-[0.95rem] font-semibold",children:"Day of week"}),(0,t.jsx)("p",{className:"m-0 text-[0.78rem] text-muted",children:"Where your week tends to lean."})]}),0===l?(0,t.jsx)("p",{className:"m-0 py-4 text-center text-[0.85rem] text-muted",children:"No tracked time in this period."}):(0,t.jsx)("ul",{className:"m-0 flex flex-col gap-1.5 p-0",children:e.map(e=>{let r=n>0?u(e.totalMs/n*100):0;return(0,t.jsxs)("li",{className:"grid grid-cols-[2.25rem_1fr_auto] items-center gap-2 text-[0.82rem]",children:[(0,t.jsx)("span",{className:"font-mono text-[0.78rem] text-muted",children:e.weekdayLabel}),(0,t.jsx)("span",{className:"block h-2 overflow-hidden rounded-full bg-surface-raised",role:"presentation",children:(0,t.jsx)("span",{className:"block h-full rounded-full bg-accent",style:{width:`${Math.max(r,4*(e.totalMs>0))}%`}})}),(0,t.jsx)("span",{className:"font-mono text-foreground",children:(0,s.format_duration)(e.totalMs,a)})]},e.weekdayIndex)})})]})}var E=e.i(75404),O=e.i(98636),I=e.i(36519),C=e.i(19402),A=e.i(43864),L=e.i(29263);function R(e,t){return(0,L.toDate)(e,t?.in).getDay()}function B(e,t,a,r=Date.now()){let s=+e.start;return Math.max(0,Math.min(null===e.end?r:+e.end,a)-Math.max(s,t))}function F(e){let t=[];for(let a=0;a<7;a+=1)for(let r=0;r<24;r+=1){let s=`${a}-${r}`;t.push({weekdayIndex:a,hourIndex:r,totalMs:e.get(s)??0})}return t}var P=e.i(39552);function W(e,t,a,r=Date.now()){let s=[],n=(0,I.startOfDay)(new Date(t)),l=(0,I.startOfDay)(new Date(a));if(+n>+l)return s;let o=n;for(;+o<=+l;){let t=+(0,I.startOfDay)(o),a=+(0,A.endOfDay)(o),n=0;for(let s of e)for(let e of s.entries)n+=B(e,t,a,r);s.push({dateMs:t,dateLabel:(0,P.format)(o,"MMM d"),weekdayIndex:R(o),totalMs:n}),o=(0,O.addDays)(o,1)}return s}var U=e.i(22106),z=e.i(25402),K=e.i(61837);function Y(e,t,a,r=Date.now()){let s=0;for(let n of e)for(let e of n.entries)s+=B(e,t,a,r);return s}var q=e.i(31113);let H="Untagged";function V(e,t,a,r=Date.now()){let s=new Map,n=0;for(let l of e)for(let e of l.entries){let l=B(e,t,a,r);if(l<=0)continue;let o=[];for(let t of e.tags)try{o.push((0,q.normalize_stored_tag)(t))}catch{continue}let i=[...new Set(o)];if(n+=l,0===i.length){s.set(H,(s.get(H)??0)+l);continue}let d=l/i.length;for(let e of i)s.set(e,(s.get(e)??0)+d)}let l=[...s.entries()].map(([e,t])=>({tag:e,totalMs:t,ratio:n>0?t/n:0}));return l.sort((e,t)=>e.tag===H?1:t.tag===H?-1:t.totalMs-e.totalMs),l}var Z=e.i(67584),G=e.i(7312),J=e.i(78194);function Q(e,t,a=new Date,r=Date.now(),s=1){var n;let l=X(t,a,s),o="week"===t?(n=void 0,(0,O.addDays)(a,-7,n)):(0,J.subMonths)(a,1),i=X(t,o,s),d=Y(e,l.start,l.end,r),c=Y(e,i.start,i.end,r),m=d-c;return{label:"week"===t?"This week vs last week":"This month vs last month",currentMs:d,previousMs:c,deltaMs:m,deltaRatio:c>0?m/c:0}}function X(e,t,a){return"week"===e?{start:+(0,G.startOfWeek)(t,{weekStartsOn:a}),end:+(0,Z.endOfWeek)(t,{weekStartsOn:a})}:{start:+(0,K.startOfMonth)(t),end:+(0,U.endOfMonth)(t)}}function ee(e,t){return 0===t?0:e/t}function et(e,t=new Date,a=1){switch(e){case"week":return{startMs:+(0,G.startOfWeek)(t,{weekStartsOn:a}),endMs:+(0,Z.endOfWeek)(t,{weekStartsOn:a})};case"month":return{startMs:+(0,K.startOfMonth)(t),endMs:+(0,U.endOfMonth)(t)};default:return{startMs:+(0,I.startOfDay)(t),endMs:+(0,A.endOfDay)(t)}}}var ea=e.i(67999),er=e.i(1997),es=e.i(54873),en=e.i(68462),el=e.i(46748);let eo={from_date:"",to_date:""},ei=["today","yesterday","week","month","last_month","year","last_year"];function ed(e,t){let a=[...e];switch(t){case"name":a.sort((e,t)=>e.sheetName.localeCompare(t.sheetName));break;case"entry_count":a.sort((e,t)=>t.entryCount!==e.entryCount?t.entryCount-e.entryCount:t.totalMs-e.totalMs);break;case"active_first":a.sort((e,t)=>e.hasActiveEntry!==t.hasActiveEntry?e.hasActiveEntry?-1:1:t.totalMs-e.totalMs);break;default:a.sort((e,t)=>t.totalMs-e.totalMs)}return a}var ec=e.i(1800),em=e.i(12843);let eu={from_date:"",to_date:""};function ex({children:e}){return(0,t.jsx)("div",{className:"flex w-full max-w-5xl flex-col gap-5",children:e})}function ef({children:e}){return(0,t.jsx)("div",{className:"flex w-full max-w-2xl flex-col items-center gap-4",children:e})}function eh({label:e,value:a}){return(0,t.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:e}),(0,t.jsx)("p",{className:"m-0 mt-1 text-[1.1rem] font-[650] tracking-tight",children:a})]})}function eg({title:e,aria_label:a,muted:r=!1,children:s}){return(0,t.jsxs)("section",{className:"flex w-full max-w-2xl flex-col gap-2",children:[(0,t.jsx)("h2",{className:`m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] ${r?"text-muted":"text-foreground"}`,children:e}),(0,t.jsx)("ul",{className:"m-0 flex list-none flex-col gap-2 p-0","aria-label":a,children:s})]})}function ep({sheet:e,grand_total_ms:a,duration_format:r}){let n=a>0?Math.round(e.totalMs/a*100):0,l=a>0?u(e.totalMs/a*100):0;return(0,t.jsxs)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-baseline justify-between gap-2",children:[(0,t.jsx)("h2",{className:"m-0 min-w-0 truncate text-[1rem] font-semibold",children:e.sheetName}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[0.95rem] font-semibold text-accent",children:(0,s.format_duration)(e.totalMs,r)})]}),(0,t.jsx)("div",{className:"mt-2.5 h-1.5 overflow-hidden rounded-full bg-surface-raised",role:"presentation",children:(0,t.jsx)("div",{className:"h-full rounded-full bg-accent",style:{width:`${l}%`}})}),(0,t.jsxs)("p",{className:"m-0 mt-2 flex flex-wrap gap-x-3 gap-y-0.5 text-[0.82rem] text-muted",children:[(0,t.jsxs)("span",{children:[n,"% of total"]}),(0,t.jsxs)("span",{children:[e.entryCount," ",1===e.entryCount?"entry":"entries"]}),(0,t.jsx)("span",{children:0===e.entryCount?"No average":`${(0,s.format_duration)(e.averageEntryMs,r)} avg`}),e.hasActiveEntry?(0,t.jsx)("span",{className:"text-accent",children:"Timer running"}):null]})]})}function eb({sheet:e,in_range:a}){let r=a?"No time in range":0===e.entryCount?"No entries":"No tracked time";return(0,t.jsxs)("li",{className:"rounded-md border border-dashed border-panel-border bg-surface-raised/60 px-3.5 py-2.5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-baseline justify-between gap-2",children:[(0,t.jsx)("h3",{className:"m-0 min-w-0 truncate text-[0.95rem] font-medium text-muted",children:e.sheetName}),(0,t.jsx)("span",{className:"shrink-0 text-[0.82rem] text-muted",children:r})]}),e.hasActiveEntry?(0,t.jsx)("p",{className:"m-0 mt-1.5 text-[0.82rem] text-accent",children:"Timer running"}):null]})}e.s(["ReportingView",0,function({source_sheets:e,reference_now:l}){let o=(0,a.useSearchParams)(),d=(0,ec.use_duration_format)(),c=(0,em.use_week_starts_on)(),[m,u]=(0,r.useState)("dashboard"),[g,p]=(0,r.useState)(()=>er.default_reporting_sort_preference.get_server_snapshot()),[b,y]=(0,r.useState)(eu),[j,w]=(0,r.useState)(l);(0,r.useEffect)(()=>{y(function(e=en.default_reporting_range_preference.read(),t="monday"){return"none"===e?eo:(0,el.get_reporting_date_range_shortcut_inputs)(e,new Date,(0,n.week_starts_on_to_index)(t))}(void 0,c)),p(er.default_reporting_sort_preference.read())},[c]),(0,r.useEffect)(()=>{let e=function(e){if(null===e)return null;let t=e.trim().toLowerCase();return ei.includes(t)?t:null}(o.get("range"));null!==e&&y((0,el.get_reporting_date_range_shortcut_inputs)(e,new Date,(0,n.week_starts_on_to_index)(c)))},[o,c]),(0,r.useEffect)(()=>{w(l)},[l]),(0,r.useEffect)(()=>{w(Date.now())},[b,e,c]);let N=(0,r.useMemo)(()=>e.map(e=>({name:e.name,activeEntryID:e.activeEntryID,entries:e.entries.map(e=>({id:e.id,start:new Date(e.start),end:null===e.end?null:new Date(e.end),description:"",tags:e.tags,notes:[]}))})),[e]),_=(0,r.useMemo)(()=>(0,es.get_date_range_ms_from_inputs)(b.from_date,b.to_date),[b]),k=b.from_date.length>0!=b.to_date.length>0||b.from_date.length>0&&b.to_date.length>0&&null===_,$=(0,n.week_starts_on_to_index)(c),{stats:q,analytics:H}=(0,r.useMemo)(()=>({stats:function(e,t=null,a=Date.now(),r=1){let s=e.map(e=>{let r,s,n;return null===t?(r=function(e){let{activeEntryID:t,entries:a,name:r}=e;return a.map(e=>{var a;return a=t===e.id&&null===e.end,{id:e.id,description:e.description,start:e.start.toISOString(),end:null===e.end?null:e.end.toISOString(),tags:e.tags,notes:e.notes.map(({timestamp:e,text:t})=>({timestamp:e.toISOString(),text:t})),sheetName:r,durationMs:function(e,t=Date.now()){let{end:a,start:r}=e;return Math.max(0,(null===a?t:+a)-r)}(e),isActive:a}})}(e),s=e.entries.length,n=(0,ea.get_serialized_entries_total_ms)(r),{sheetName:e.name,totalMs:n,entryCount:s,averageEntryMs:ee(n,s),hasActiveEntry:null!==e.activeEntryID}):function(e,t,a,r=Date.now()){let s=0,n=0,l=!1;for(let o of e.entries){let i=B(o,t,a,r);i<=0||(s+=i,n+=1,e.activeEntryID===o.id&&null===o.end&&(l=!0))}return{sheetName:e.name,totalMs:s,entryCount:n,averageEntryMs:ee(s,n),hasActiveEntry:l}}(e,t.startMs,t.endMs,a)}),{activeSheets:n,idleSheets:l}=function(e){let t=[],a=[];for(let r of e)0===r.entryCount||0===r.totalMs?a.push(r):t.push(r);return{activeSheets:t,idleSheets:a}}(s),o=s.reduce((e,t)=>e+t.totalMs,0),i=s.reduce((e,t)=>e+t.entryCount,0);return{activeSheets:n,idleSheets:l,grandTotalMs:o,totalEntryCount:i,grandAverageEntryMs:ee(o,i),periodTotals:null===t?function(e,t=new Date,a=Date.now(),r=1){let s=et("today",t,r),n=et("week",t,r),l=et("month",t,r);return{todayMs:Y(e,s.startMs,s.endMs,a),weekMs:Y(e,n.startMs,n.endMs,a),monthMs:Y(e,l.startMs,l.endMs,a)}}(e,new Date(a),a,r):{todayMs:0,weekMs:0,monthMs:0}}}(N,_,j,$),analytics:function(e,t,a=Date.now(),r=1){let s=new Date(a),n=(0,O.addDays)((0,I.startOfDay)(s),1)-1,l=+(0,I.startOfDay)((0,C.subDays)(s,29)),o=null===t?l:t.startMs,i=null===t?n:t.endMs,d=W(e,o,i,a),c=V(e,o,i,a),m=function(e,t=1){let a=Array(7).fill(0);for(let t of e)a[t.weekdayIndex]+=t.totalMs;let r=(0,G.startOfWeek)(new Date,{weekStartsOn:t});return Array.from({length:7},(e,s)=>{let n=(0,O.addDays)(r,s),l=(t+s)%7;return{weekdayIndex:l,weekdayLabel:(0,P.format)(n,"EEE"),totalMs:a[l]}})}(d,r);return{dailyBuckets:d,tagBreakdown:c,weekdayDistribution:m,heatmap:function(e,t,a,r=Date.now()){let s=new Map,n=(0,I.startOfDay)(new Date(t)),l=(0,I.startOfDay)(new Date(a));if(+n>+l)return F(s);let o=n;for(;+o<=+l;){let t=R(o),a=+o,n=+(0,A.endOfDay)(o);for(let l=0;l<24;l+=1){let o=a+36e5*l,i=Math.min(o+36e5-1,n),d=0;for(let t of e)for(let e of t.entries)d+=B(e,o,i,r);if(d<=0)continue;let c=`${t}-${l}`;s.set(c,(s.get(c)??0)+d)}o=(0,O.addDays)(o,1)}return F(s)}(e,o,i,a),weekTrend:Q(e,"week",s,a,r),monthTrend:Q(e,"month",s,a,r),monthInReview:function(e,t=new Date,a=Date.now()){let r,s,n,l,o=(0,K.startOfMonth)(t),i=(0,U.endOfMonth)(t),d=(0,P.format)(o,"MMMM yyyy"),c=(s=(r=(0,L.toDate)(o,void 0)).getFullYear(),n=r.getMonth(),(l=(0,z.constructFrom)(r,0)).setFullYear(s,n+1,0),l.setHours(0,0,0,0),l.getDate()),m=W(e,+o,+i,a),u=V(e,+o,+i,a),x=0,f=0,h=0,g=-1;m.forEach((e,t)=>{x+=e.totalMs,e.totalMs>0&&(f+=1),e.totalMs>h&&(h=e.totalMs,g=t)});let p=0,b=0,y=new Map;for(let t of e){let e=0;for(let r of t.entries){let t=B(r,+o,+i,a);!(t<=0)&&(p+=1,e+=t,t>b&&(b=t))}e>0&&y.set(t.name,e)}let M=null,j=0;for(let[e,t]of y)t>j&&(j=t,M=e);let w=null,v=0;for(let e of u)"Untagged"!==e.tag&&e.totalMs>v&&(v=e.totalMs,w=e.tag);let N=function(e,t=new Date,a=Date.now()){let r=(0,I.startOfDay)(t);0>=Y(e,+r,+(0,A.endOfDay)(r),a)&&(r=(0,C.subDays)(r,1));let s=0;for(let t=0;t<3660&&!(0>=Y(e,+(0,I.startOfDay)(r),+(0,A.endOfDay)(r),a));t+=1){;s+=1,r=(0,C.subDays)(r,1)}return s}(e,t,a),_=function(e){let t=0,a=0;for(let r of e)r.totalMs>0?(a+=1,t=Math.max(t,a)):a=0;return t}(m),k=-1===g?null:(0,P.format)(new Date(m[g].dateMs),"EEE, MMM d"),D=f>0?x/f:0;return{monthLabel:d,totalMs:x,trackedDays:f,daysInMonth:c,bestDayMs:h,bestDayLabel:k,longestEntryMs:b,totalEntries:p,topSheetName:M,topSheetMs:j,topTag:w,topTagMs:v,currentStreakDays:N,longestStreakDays:_,averageActiveDayMs:D}}(e,s,a)}}(N,_,j,$)}),[N,_,$,j]),{activeSheets:Z,grandAverageEntryMs:J,grandTotalMs:X,idleSheets:ey,periodTotals:eM,totalEntryCount:ej}=q,ew=Z.length+ey.length,ev=null===_,eN=(0,r.useMemo)(()=>ed(Z,g),[Z,g]),e_=(0,r.useMemo)(()=>ed(ey,g),[ey,g]),ek=null===_?"Last 30 days of activity.":`${H.dailyBuckets.length} days in the selected range.`;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(E.TrackerTopbar,{breadcrumb:{current:"Reporting"}}),(0,t.jsxs)("main",{className:"mx-auto flex w-full max-w-[1120px] flex-col items-center gap-6 px-5 pb-12 pt-6",children:[(0,t.jsxs)("header",{className:"flex w-full max-w-2xl flex-col gap-3",children:[(0,t.jsx)("h1",{className:"m-0 text-center text-[1.5rem] font-[650] tracking-tight",children:"Reporting"}),(0,t.jsx)("p",{className:"m-0 max-w-md self-center text-center text-[0.9rem] leading-relaxed text-muted",children:null===_?"A snapshot of where your time has been going.":"Metrics filtered to the selected date range."})]}),(0,t.jsx)(T,{active_tab:m,on_change:u}),(0,t.jsx)(f.ReportingDateRangePicker,{range:b,is_invalid:k,on_range_change:y,on_clear:()=>y(eu)}),(0,t.jsxs)("section",{className:"grid w-full max-w-5xl grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4","aria-label":"Summary",children:[(0,t.jsx)(eh,{label:null===_?"Total tracked":"In range",value:(0,s.format_duration)(X,d)}),(0,t.jsx)(eh,{label:"Avg per entry",value:(0,s.format_duration)(J,d)}),(0,t.jsx)(eh,{label:"Sheets",value:String(ew)}),(0,t.jsx)(eh,{label:"Entries",value:String(ej)})]}),ev?(0,t.jsxs)("section",{className:"grid w-full max-w-5xl grid-cols-1 gap-2 sm:grid-cols-3","aria-label":"Period totals",children:[(0,t.jsx)(eh,{label:"Today",value:(0,s.format_duration)(eM.todayMs,d)}),(0,t.jsx)(eh,{label:"This week",value:(0,s.format_duration)(eM.weekMs,d)}),(0,t.jsx)(eh,{label:"This month",value:(0,s.format_duration)(eM.monthMs,d)})]}):null,0===ew?(0,t.jsx)("p",{className:"m-0 w-full max-w-2xl text-center text-[0.9rem] text-muted",children:"No sheets yet. Create a sheet on the tracker to start logging time."}):k?(0,t.jsx)("p",{className:"m-0 w-full max-w-2xl text-center text-[0.9rem] text-muted",children:"Choose both dates to filter metrics, or clear the range to see all time."}):"dashboard"===m?(0,t.jsxs)(ex,{children:[(0,t.jsx)(h,{stats:H.monthInReview,duration_format:d}),(0,t.jsxs)("div",{className:"grid w-full grid-cols-1 gap-3 lg:grid-cols-2",children:[(0,t.jsx)(D,{trend:H.weekTrend,duration_format:d,current_label:"This week",previous_label:"Last week"}),(0,t.jsx)(D,{trend:H.monthTrend,duration_format:d,current_label:"This month",previous_label:"Last month"})]}),(0,t.jsx)(x,{daily_buckets:H.dailyBuckets,duration_format:d,subtitle:ek}),(0,t.jsxs)("div",{className:"grid w-full grid-cols-1 gap-3 lg:grid-cols-2",children:[(0,t.jsx)(v,{tag_breakdown:H.tagBreakdown,duration_format:d}),(0,t.jsx)(S,{weekday_distribution:H.weekdayDistribution,duration_format:d})]}),(0,t.jsx)(i,{heatmap:H.heatmap,duration_format:d,week_starts_on:c})]}):(0,t.jsxs)(ef,{children:[(0,t.jsx)(M,{sort:g,on_sort_change:p}),0===Z.length?(0,t.jsx)("p",{className:"m-0 w-full max-w-2xl text-center text-[0.9rem] text-muted",children:null===_?"No tracked time yet. Check in on a sheet to see stats here.":"No tracked time in this date range."}):(0,t.jsx)(eg,{title:"Tracked sheets",aria_label:"Tracked sheet statistics",children:eN.map(e=>(0,t.jsx)(ep,{sheet:e,grand_total_ms:X,duration_format:d},e.sheetName))}),ey.length>0?(0,t.jsx)(eg,{title:null===_?"Empty sheets":"Sheets in range",aria_label:"Sheets without time in range",muted:!0,children:e_.map(e=>(0,t.jsx)(eb,{sheet:e,in_range:null!==_},e.sheetName))}):null]})]})]})}],68120)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,22482,e=>{"use strict";var t=e.i(54710),n=e.i(45958),r=e.i(29158),s=e.i(14260),a=e.i(96947),i=e.i(52663),l=e.i(52405),o=e.i(69472),c=e.i(84545),d=e.i(50937),u=e.i(83327),m=e.i(49532),_=e.i(59515);function p(e){try{window.localStorage.setItem("super-time-tracker-entry-templates",JSON.stringify(e))}catch{}}function h({known_tags:e,on_submit:n,is_pending:g}){let[f,x]=(0,r.useState)([]),[b,y]=(0,r.useState)(""),[v,k]=(0,r.useState)(""),[w,N]=(0,r.useState)(""),[j,S]=(0,r.useState)(null),[E,C]=(0,r.useState)(!1),T=(0,r.useSyncExternalStore)(c.entry_suggestion_provider_preference.subscribe,c.entry_suggestion_provider_preference.get_snapshot,c.entry_suggestion_provider_preference.get_server_snapshot),$=(0,r.useSyncExternalStore)(u.openai_api_key_preference.subscribe,u.openai_api_key_preference.get_snapshot,u.openai_api_key_preference.get_server_snapshot),I=(0,r.useSyncExternalStore)(o.claude_api_key_preference.subscribe,o.claude_api_key_preference.get_snapshot,o.claude_api_key_preference.get_server_snapshot),M=(0,r.useSyncExternalStore)(d.google_ai_api_key_preference.subscribe,d.google_ai_api_key_preference.get_snapshot,d.google_ai_api_key_preference.get_server_snapshot),D=(0,a.get_api_key_for_suggestion_provider)(T,{openai:$,claude:I,google_ai:M}),L="none"!==T&&D.trim().length>0;(0,r.useEffect)(()=>{x((0,m.read_entry_templates)())},[]);let A=(0,r.useMemo)(()=>f.find(e=>e.id===b)??null,[f,b]),R=async()=>{if(L){C(!0),S(null);try{let e=await (0,_.request_ai_entry_description_suggestion)({provider:T,api_key:D,context:v,notes:""});k(e)}catch(e){S(e instanceof Error?e.message:String(e))}finally{C(!1)}}};return(0,t.jsxs)("form",{className:"flex flex-col gap-2 border border-panel-border bg-panel p-[1.1rem] shadow-sm",onSubmit:e=>{e.preventDefault();let t=v.trim();if(0===t.length)return;let r=w.trim();n({description:t,...r.length>0?{at:r}:{}}),k(""),N("")},children:[(0,t.jsx)("label",{className:"text-[0.85rem] text-muted",htmlFor:"check-in-description",children:"What are you working on?"}),(0,t.jsxs)("div",{className:"grid gap-2 sm:grid-cols-[minmax(0,1fr)_auto_auto]",children:[(0,t.jsxs)("select",{className:(0,l.get_input_class_name)(),value:b,disabled:g||0===f.length,onChange:e=>{let t=e.target.value;y(t);let n=f.find(e=>e.id===t)??null;null!==n&&k(n.description)},children:[(0,t.jsx)("option",{value:"",children:0===f.length?"No templates":"Use a template…"}),f.map(e=>(0,t.jsx)("option",{value:e.id,children:e.name},e.id))]}),(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:g||0===v.trim().length,onClick:()=>{let e=v.trim();if(0===e.length)return;let t=e.slice(0,40),n=globalThis.prompt("Template name",t.length>0?t:"New template");if(null===n)return;let r=n.trim();if(0===r.length)return;let s="u">typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now()}-${Math.random().toString(16).slice(2)}`,a=[...f,{id:s,name:r,description:e}];x(a),y(s),p(a)},children:"Save template"}),(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:g||null===A,onClick:()=>{if(null===A)return;let e=f.filter(e=>e.id!==A.id);x(e),y(""),p(e)},children:"Delete template"})]}),(0,t.jsxs)("div",{className:`grid gap-2 max-[860px]:grid-cols-1 ${L?"grid-cols-[minmax(0,1fr)_auto_auto]":"grid-cols-[minmax(0,1fr)_auto]"}`,children:[(0,t.jsx)(s.TagAutocompleteInput,{id:"check-in-description",value:v,known_tags:e,placeholder:"e.g. crafting something @design",disabled:g,autoFocus:!0,on_change:k}),L?(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:g||E,onClick:()=>void R(),title:"Suggest description with AI",children:E?"Suggesting…":"Suggest"}):null,(0,t.jsx)("button",{type:"submit",className:(0,i.get_button_class_name)("primary"),disabled:g||0===v.trim().length,children:"Check in"})]}),null===j?null:(0,t.jsx)("p",{className:"m-0 text-[0.8rem] text-danger",children:j}),(0,t.jsxs)("label",{className:"text-[0.85rem] text-muted",htmlFor:"check-in-at",children:["Start time"," ",(0,t.jsx)("span",{className:"font-normal opacity-85",children:"(optional, natural language)"})]}),(0,t.jsx)("input",{id:"check-in-at",className:(0,l.get_input_class_name)(),value:w,onChange:e=>N(e.target.value),placeholder:"e.g. 30 minutes ago",disabled:g})]})}var g=e.i(50994);let f=(0,r.forwardRef)(function({known_tags:e,is_pending:n,on_submit:s,trailing:a},l){let o="true"===(0,r.useSyncExternalStore)(g.check_in_form_collapsed_preference.subscribe,g.check_in_form_collapsed_preference.get_snapshot,g.check_in_form_collapsed_preference.get_server_snapshot),[c,d]=(0,r.useState)(!o);return((0,r.useImperativeHandle)(l,()=>({expand_and_focus:()=>{d(!0),globalThis.requestAnimationFrame(()=>{let e=document.getElementById("check-in-description");e instanceof HTMLElement&&e.focus()})}}),[]),o&&!c)?(0,t.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-3",children:[(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("primary"),disabled:n,onClick:()=>d(!0),children:"Check in"}),a]}):(0,t.jsx)(h,{known_tags:e,is_pending:n,on_submit:e=>{s(e),o&&d(!1)}})});var x=e.i(14974),b=e.i(29539),y=e.i(32584),v=e.i(1238),k=e.i(83821),w=e.i(51703),N=e.i(74597),j=e.i(77130),S=e.i(56442),E=e.i(73228),C=e.i(56996),T=e.i(8654),$=e.i(76900),I=e.i(60145),M=e.i(26740),D=e.i(1800);function L({on_check_in_shortcut:e,has_running_timer:n=!1}){var s;let a=(0,D.use_duration_format)(),i=(0,r.useSyncExternalStore)(C.focus_nudges_enabled_preference.subscribe,C.focus_nudges_enabled_preference.get_snapshot,C.focus_nudges_enabled_preference.get_server_snapshot),l=(0,r.useSyncExternalStore)(k.daily_focus_target_minutes_preference.subscribe,k.daily_focus_target_minutes_preference.get_snapshot,k.daily_focus_target_minutes_preference.get_server_snapshot),o=(0,r.useSyncExternalStore)(I.weekly_focus_target_minutes_preference.subscribe,I.weekly_focus_target_minutes_preference.get_snapshot,I.weekly_focus_target_minutes_preference.get_server_snapshot),c=(0,r.useSyncExternalStore)(T.no_log_reminder_minutes_preference.subscribe,T.no_log_reminder_minutes_preference.get_snapshot,T.no_log_reminder_minutes_preference.get_server_snapshot),d=(0,r.useSyncExternalStore)($.overwork_alert_hours_preference.subscribe,$.overwork_alert_hours_preference.get_snapshot,$.overwork_alert_hours_preference.get_server_snapshot),u=(0,r.useSyncExternalStore)(w.focus_goal_scope_preference.subscribe,w.focus_goal_scope_preference.get_snapshot,w.focus_goal_scope_preference.get_server_snapshot),m=(0,r.useSyncExternalStore)(N.focus_goal_sheet_name_preference.subscribe,N.focus_goal_sheet_name_preference.get_snapshot,N.focus_goal_sheet_name_preference.get_server_snapshot),_=(0,r.useSyncExternalStore)(j.focus_goal_tag_name_preference.subscribe,j.focus_goal_tag_name_preference.get_snapshot,j.focus_goal_tag_name_preference.get_server_snapshot),p=(0,r.useSyncExternalStore)(S.focus_goals_per_sheet_preference.subscribe,S.focus_goals_per_sheet_preference.get_snapshot,S.focus_goals_per_sheet_preference.get_server_snapshot),h=(0,r.useSyncExternalStore)(E.focus_goals_per_tag_preference.subscribe,E.focus_goals_per_tag_preference.get_snapshot,E.focus_goals_per_tag_preference.get_server_snapshot),[g,f]=(0,r.useState)(null),[x,b]=(0,r.useState)(null);(0,r.useEffect)(()=>{let e=()=>{try{var e;let t=globalThis.localStorage.getItem(M.POMODORO_STORAGE_KEY);if(null===t)return null;let n=JSON.parse(t).state;if(n?.status!=="running"||null==n.deadline_at_ms)return null;let r=Math.max(0,n.deadline_at_ms-Date.now()),s=Math.floor(r/6e4),a=Math.floor(r%6e4/1e3);return{phase_label:(e=n.phase,"work"===e?"Focus":"short_break"===e?"Short break":"Long break"),remaining_label:`${s.toString().padStart(2,"0")}:${a.toString().padStart(2,"0")}`}}catch{return null}},t=globalThis.setTimeout(()=>{b(e())},0),n=globalThis.setInterval(()=>{b(e())},1e3);return()=>{globalThis.clearTimeout(t),globalThis.clearInterval(n)}},[]),(0,r.useEffect)(()=>{if("true"!==i)return;let e=!1,t=async()=>{try{var t,n,r;let s=new URLSearchParams;s.set("scope",(t=u,n=m,r=_,"sheet"===t&&0===n.length||"tag"===t&&0===r.length?"global":t)),"sheet"===u&&m.length>0&&s.set("sheet",m),"tag"===u&&_.length>0&&s.set("tag",_);let a=await fetch(`/api/focus-nudges/status?${s.toString()}`);if(!a.ok)return;let i=await a.json();e||f(i)}catch{}};t();let n=globalThis.setInterval(()=>{t()},6e4);return()=>{e=!0,globalThis.clearInterval(n)}},[i,u,m,_]);let F=(0,r.useMemo)(()=>{if("true"!==i||null===g)return null;let{daily_minutes:e,weekly_minutes:t}=function(e){if("sheet"===e.scope&&e.sheet_name.length>0){let t=(0,v.parse_focus_goals_by_name)(e.per_sheet_json)[e.sheet_name];return void 0===t?{daily_minutes:null,weekly_minutes:null}:{daily_minutes:t.daily??e.global_daily,weekly_minutes:t.weekly??e.global_weekly}}if("tag"===e.scope&&e.tag_name.length>0){let t=(0,v.parse_focus_goals_by_name)(e.per_tag_json)[e.tag_name];return void 0===t?{daily_minutes:null,weekly_minutes:null}:{daily_minutes:t.daily??e.global_daily,weekly_minutes:t.weekly??e.global_weekly}}return{daily_minutes:e.global_daily,weekly_minutes:e.global_weekly}}({scope:u,sheet_name:m,tag_name:_,per_sheet_json:p,per_tag_json:h,global_daily:l,global_weekly:o});if(null===e||null===t)return{kind:"alert",tone:"info",title:A("daily",u,m,_),detail:"No goals configured yet for this scope. Set daily and weekly targets in Goal settings."};let r=6e4*Number.parseInt(e,10),s=6e4*Number.parseInt(t,10),f=36e5*Number.parseInt(d,10),x=Number.parseInt(c,10);return null!==g.activeTimerDurationMs&&g.activeTimerDurationMs>=f?{kind:"alert",tone:"warning",title:"Overwork alert",detail:`Current session is ${(0,y.format_duration)(g.activeTimerDurationMs,a)}. Consider a short break.`}:!n&&null!==g.minutesSinceLastLog&&g.minutesSinceLastLog>=x?{kind:"alert",tone:"warning",title:"Gentle reminder",detail:`No time logged for ${g.minutesSinceLastLog} min. Start a timer when you are back on task.`,show_check_in_shortcut:!0}:g.todayTrackedMs<r?{kind:"progress",scope:"daily",title:A("daily",u,m,_),tracked_ms:g.todayTrackedMs,target_ms:r}:g.weekTrackedMs<s?{kind:"progress",scope:"weekly",title:A("weekly",u,m,_),tracked_ms:g.weekTrackedMs,target_ms:s}:{kind:"alert",tone:"success",title:"Targets met",detail:"Daily and weekly focus goals are on track."}},[l,a,i,d,n,u,m,_,p,h,c,g,o]);if(null===F)return null;if("progress"===F.kind)return(0,t.jsx)(R,{scope:F.scope,title:F.title,tracked_ms:F.tracked_ms,target_ms:F.target_ms,duration_format:a,activePomodoro:x});let U="warning"===(s=F.tone)?"mb-4 rounded-md border border-danger-border bg-danger-soft px-3 py-2.5 text-danger-text":"success"===s?"mb-4 rounded-md border border-accent-border bg-accent-soft px-3 py-2.5 text-accent":"mb-4 rounded-md border border-panel-border bg-panel px-3 py-2.5 text-foreground";return(0,t.jsxs)("section",{className:U,"aria-live":"polite","aria-atomic":"true",children:[(0,t.jsx)("p",{className:"m-0 text-[0.85rem] font-semibold",children:F.title}),(0,t.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-2",children:[(0,t.jsx)("p",{className:"m-0 text-[0.82rem] leading-relaxed",children:F.detail}),F.show_check_in_shortcut&&void 0!==e?(0,t.jsx)("button",{type:"button",className:"cursor-pointer rounded border border-current bg-transparent px-2 py-1 text-[0.75rem] font-semibold",onClick:e,children:"Check in"}):null]})]})}function A(e,t,n,r){let s="daily"===e?"Relevant goal":"Weekly goal";return"sheet"===t&&n.length>0?`${s} \xb7 ${n}`:"tag"===t&&r.length>0?`${s} \xb7 @${r}`:s}function R({scope:e,title:r,tracked_ms:s,target_ms:a,duration_format:i,activePomodoro:l}){let o=a>0?Math.min(100,s/a*100):0,c=Math.max(0,a-s);return(0,t.jsx)("section",{className:"mb-4 rounded-md border border-panel-border bg-panel px-4 py-3 shadow-sm","aria-label":r,"aria-live":"polite",children:(0,t.jsxs)("div",{className:"flex flex-wrap items-stretch justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-baseline justify-between gap-3",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:r}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:["daily"===e?(0,t.jsx)(n.default,{href:"/settings/goals#focus-goals-nudges",className:"inline-flex h-6 w-6 items-center justify-center rounded border border-panel-border text-muted no-underline hover:bg-surface-hover hover:text-foreground","aria-label":"Open daily focus target settings",title:"Daily focus target settings",children:(0,t.jsx)(b.SettingsIcon,{})}):null,(0,t.jsxs)("p",{className:"m-0 font-mono text-[0.78rem] font-semibold text-accent",children:[Math.round(o),"%"]})]})]}),(0,t.jsxs)("div",{className:"mt-2 flex items-baseline justify-between gap-3",children:[(0,t.jsxs)("p",{className:"m-0 font-mono text-[1.35rem] font-semibold leading-none text-foreground",children:[(0,y.format_duration)(s,i),(0,t.jsxs)("span",{className:"ml-1 text-[0.85rem] font-medium text-muted",children:["/ ",(0,y.format_duration)(a,i)]})]}),(0,t.jsxs)("p",{className:"m-0 text-[0.78rem] text-muted",children:[(0,y.format_duration)(c,i)," left"," ","daily"===e?"today":"this week"]})]}),(0,t.jsx)("progress",{className:"mt-3 h-1.5 w-full overflow-hidden rounded-full bg-accent-soft [&::-webkit-progress-bar]:rounded-full [&::-webkit-progress-bar]:bg-accent-soft [&::-webkit-progress-value]:rounded-full [&::-webkit-progress-value]:bg-accent [&::-moz-progress-bar]:rounded-full [&::-moz-progress-bar]:bg-accent",max:100,value:Math.round(o)})]}),null===l?null:(0,t.jsxs)("aside",{className:"min-w-52 rounded-md border border-panel-border bg-surface-raised px-3 py-2.5",children:[(0,t.jsx)("p",{className:"m-0 text-[0.68rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Active Pomodoro"}),(0,t.jsx)("p",{className:"m-0 mt-1 text-[0.82rem] font-semibold text-foreground",children:l.phase_label}),(0,t.jsx)("p",{className:"m-0 mt-1 font-mono text-[1.25rem] font-semibold leading-none text-accent",children:l.remaining_label})]})]})})}var F=e.i(71060),U=e.i(83391);function O(e,t,n){if(0===e.length)return null;let r=e.findIndex(e=>e.name===t),s=((-1===r?0:r)+("next"===n?1:-1)+e.length)%e.length;return e[s]?.name??null}var P=e.i(14574),q=e.i(66295),z=e.i(90299),G=e.i(53754),H=e.i(99211);function K({sheets:e,active_sheet_name:n,active_entry:s,is_pending:a,check_in_form_ref:i,active_entry_panel_ref:l,on_select_sheet:o,on_check_out:c}){let d=(0,F.useRouter)(),[u,m]=(0,r.useState)(!1),_=(0,G.useCheckOutAction)(c),p=(0,r.useSyncExternalStore)(z.tracker_shortcut_map_preference.subscribe,z.tracker_shortcut_map_preference.get_snapshot,z.tracker_shortcut_map_preference.get_server_snapshot),h=(0,r.useMemo)(()=>(0,q.parse_tracker_shortcut_map)(p),[p]),g=h.help,f="?"===g?"?":g.toUpperCase(),x=(0,r.useMemo)(()=>{let t=null!==s,r="?"===g?["shift"]:[];return[{id:"help",label:f,description:"Show keyboard shortcuts",key:g,modifiers:r,action:()=>{m(e=>!e)}},{id:"check-in",label:h["check-in"].toUpperCase(),description:"Check in (focus description)",key:h["check-in"],is_available:()=>!a&&!t,action:()=>{i.current?.expand_and_focus()}},{id:"check-out",label:h["check-out"].toUpperCase(),description:"Check out",key:h["check-out"],is_available:()=>!a&&t,action:()=>{_()}},{id:"edit-entry",label:h["edit-entry"].toUpperCase(),description:"Edit active entry",key:h["edit-entry"],is_available:()=>!a&&t,action:()=>{l.current?.start_edit()}},{id:"add-note",label:h["add-note"].toUpperCase(),description:"Add note to active entry",key:h["add-note"],is_available:()=>!a&&t,action:()=>{l.current?.start_add_note()}},{id:"pomodoro",label:h.pomodoro.toUpperCase(),description:"Open Pomodoro",key:h.pomodoro,is_available:()=>!a,action:()=>{d.push("/pomodoro")}},{id:"previous-sheet",label:h["previous-sheet"],description:"Previous sheet",key:h["previous-sheet"],is_available:()=>!a&&e.length>1,action:()=>{let t=O(e,n,"previous");null!==t&&t!==n&&o(t)}},{id:"next-sheet",label:h["next-sheet"],description:"Next sheet",key:h["next-sheet"],is_available:()=>!a&&e.length>1,action:()=>{let t=O(e,n,"next");null!==t&&t!==n&&o(t)}}]},[s,l,n,i,_,a,o,d,g,f,h,e]);return((0,H.use_document_keyboard_shortcuts)(x),u)?(0,t.jsx)(U.KeyboardShortcutsDialog,{sections:(0,P.get_tracker_keyboard_shortcut_sections)(h),on_close:()=>m(!1)}):null}var J=e.i(18774),B=e.i(31113),W=e.i(72550);function Y(){try{let e=window.localStorage.getItem(W.SHEET_TAG_FILTERS_STORAGE_KEY);if(null===e)return{};let t=JSON.parse(e);if(null===t||"object"!=typeof t)return{};return t}catch{return{}}}function Q(e){let t=Y()[e]??[],n=[],r=new Set;for(let e of t)try{let t=(0,B.normalize_stored_tag)(e);r.has(t)||(r.add(t),n.push(t))}catch{continue}return n}var V=e.i(86580);function X(e){return(0,V.get_stable_sheet_tag_filter_snapshot)(e,Q(e))}function Z(){return V.EMPTY_SHEET_TAG_FILTER}var ee=e.i(98425),et=e.i(27850);function en(e,t){let n=Y();0===t.length?delete n[e]:n[e]=t;try{window.localStorage.setItem(W.SHEET_TAG_FILTERS_STORAGE_KEY,JSON.stringify(n)),(0,et.schedule_ui_preferences_cloud_sync)()}catch{}(0,ee.notify_sheet_tag_filters_subscribers)()}var er=e.i(47540),es=e.i(62796);function ea(){return(0,r.useSyncExternalStore)(es.tag_filter_mode_preference.subscribe,es.tag_filter_mode_preference.get_snapshot,es.tag_filter_mode_preference.get_server_snapshot)}function ei({sheet_name:e,sheet_tags:n}){let s=ea(),a=(0,r.useSyncExternalStore)(ee.subscribe_sheet_tag_filters,()=>X(e),Z);if((0,r.useEffect)(()=>{!function(e,t){let n=Q(e);if(0===n.length)return;let r=n.filter(e=>t.some(t=>(0,er.tags_are_equal)(e,t)));r.length!==n.length&&en(e,r)}(e,n.map(e=>e.name))},[e,n]),0===n.length)return null;let l=a.length>0;return(0,t.jsxs)("fieldset",{className:"m-0 flex flex-wrap items-center gap-x-3 gap-y-2 border-0 p-0",children:[(0,t.jsx)("legend",{className:"sr-only",children:"Filter by tag"}),(0,t.jsx)("h2",{className:"m-0 shrink-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em]",children:"Filter by tag"}),(0,t.jsx)("p",{className:"m-0 shrink-0 text-[0.8rem] text-muted",children:"any"===s?"Show entries that include any selected tag.":"Show entries that include every selected tag."}),(0,t.jsxs)("div",{className:"ml-auto flex min-w-0 flex-wrap justify-end gap-1",children:[n.map(n=>{let r=a.some(e=>(0,er.tags_are_equal)(e,n.name));return(0,t.jsxs)("button",{type:"button",className:`${(0,i.get_button_class_name)("ghost","small")} ${r?"border-accent-border bg-accent-soft text-foreground":""}`,"aria-pressed":r,onClick:()=>{var t;let r,s;return t=n.name,r=(0,B.normalize_stored_tag)(t),void((s=Q(e)).some(e=>(0,er.tags_are_equal)(e,r))?en(e,s.filter(e=>!(0,er.tags_are_equal)(e,r))):en(e,[...s,r]))},children:[(0,J.format_display_tag)(n.name),(0,t.jsxs)("span",{className:"ml-1 font-normal text-muted",children:["(",n.entryCount,")"]})]},n.name)}),l?(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost","small"),onClick:()=>en(e,[]),children:"Clear filter"}):null]})]})}var el=e.i(87231),eo=e.i(56586);function ec({query:e,active_sheet:r,is_pending:s=!1,on_query_change:a}){let o=e.trim(),c=(0,el.build_entry_search_href)({...(0,eo.get_empty_entry_search_filters)(),query:o,sheetName:r});return(0,t.jsxs)("div",{className:"flex w-full flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,t.jsx)("span",{className:"text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Search entries"}),(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,t.jsx)("input",{type:"search",className:(0,l.get_input_class_name)("compact"),placeholder:"Search description, tags, notes…",value:e,disabled:s,"aria-label":"Search entries on this sheet",onChange:e=>a(e.target.value)}),o.length>0?(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost","small"),disabled:s,onClick:()=>a(""),children:"Clear"}):null]})]}),o.length>0?(0,t.jsx)(n.default,{className:"self-start text-[0.8rem] font-semibold text-accent no-underline hover:underline",href:c,children:"Search all sheets with filters"}):(0,t.jsx)(n.default,{className:"self-start text-[0.8rem] font-semibold text-muted no-underline hover:text-accent hover:underline",href:"/search",children:"Open global search"})]})}var ed=e.i(41619),eu=e.i(37399);let em="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 disabled:cursor-not-allowed disabled:opacity-55";function e_({sheet_name:e,is_pending:n,can_delete:s,on_rename:a,on_delete:i}){let[l,o]=(0,r.useState)(!1),c=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!l)return;let e=e=>{null===c.current||c.current.contains(e.target)||o(!1)};return document.addEventListener("pointerdown",e),()=>{document.removeEventListener("pointerdown",e)}},[l]);let d=()=>{o(!1)};return(0,t.jsxs)("div",{className:"relative shrink-0 self-center",ref:c,children:[(0,t.jsx)("button",{type:"button",className:"inline-flex cursor-pointer appearance-none items-center justify-center rounded-none border-0 bg-transparent p-0.5 text-muted shadow-none hover:opacity-75 focus-visible:outline-2 focus-visible:outline-input-focus-border focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-55","aria-label":`Actions for sheet ${e}`,"aria-expanded":l,"aria-haspopup":"menu",disabled:n,onClick:()=>o(e=>!e),children:(0,t.jsx)(eu.HamburgerIcon,{})}),l?(0,t.jsxs)("ul",{className:"absolute right-0 top-full z-10 mt-1.5 min-w-56 list-none rounded-md border border-panel-border bg-panel p-1.5 shadow-md",role:"menu",children:[(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:em,role:"menuitem",disabled:n,onClick:()=>{d(),a()},children:"Rename"})}),(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:`${em} text-danger`,role:"menuitem",disabled:n||!s,title:s?void 0:"Cannot delete the last sheet",onClick:()=>{d(),i()},children:"Delete sheet"})})]}):null]})}var ep=e.i(91966),eh=e.i(25204);function eg({sheets:e,db_path:n,on_select:s,on_create:a,on_rename:o,on_delete:c,is_pending:d}){let{confirm:u}=(0,x.useConfirmDialog)(),m=(0,ep.use_confirm_destructive_actions)(),_=e.length>1,[p,h]=(0,r.useState)(!1),[g,f]=(0,r.useState)(""),[b,y]=(0,r.useState)(null),[v,k]=(0,r.useState)(""),w=()=>{h(!1),f("")},N=()=>{y(null),k("")};(0,eh.use_escape_to_cancel)(N,null!==b),(0,eh.use_escape_to_cancel)(w,p);let j=e=>{if(e.preventDefault(),null===b)return;let t=v.trim();0===t.length||t===b||o(b,t),N()};return(0,t.jsxs)("aside",{className:"flex min-w-0 flex-col gap-3 max-[860px]:min-w-0",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Sheets"}),(0,t.jsx)("ul",{className:"m-0 flex min-h-0 flex-1 list-none flex-col gap-1.5 p-0",children:e.map(e=>(0,t.jsx)("li",{className:"min-w-0",children:b===e.name?(0,t.jsxs)("form",{className:"flex w-full min-w-0 flex-col gap-1.5",onSubmit:j,children:[(0,t.jsx)("input",{className:(0,l.get_input_class_name)("compact"),value:v,onChange:e=>k(e.target.value),disabled:d,autoFocus:!0}),(0,t.jsxs)("div",{className:"flex gap-1.5",children:[(0,t.jsx)("button",{type:"submit",className:`${(0,i.get_button_class_name)("ghost")} flex-1`,disabled:d||0===v.trim().length,children:"Save"}),(0,t.jsx)("button",{type:"button",className:`${(0,i.get_button_class_name)("ghost")} flex-1`,disabled:d,onClick:N,children:"Cancel"})]})]}):(0,t.jsxs)("div",{className:"flex min-w-0 items-stretch gap-1",children:[(0,t.jsxs)("button",{type:"button",className:"flex min-w-0 flex-1 cursor-pointer items-center justify-between gap-2 rounded-md border border-transparent bg-transparent px-2.5 py-2 text-left transition-[background-color,color] duration-150 hover:bg-surface-hover",disabled:d&&!e.isActive,onClick:()=>s(e.name),children:[(0,t.jsx)("span",{className:`min-w-0 flex-1 truncate font-semibold ${e.isActive||e.hasActiveEntry?"text-accent":""}`,children:e.name}),(0,t.jsx)("span",{className:`shrink-0 text-xs whitespace-nowrap ${e.hasActiveEntry?"text-accent":"text-muted"}`,children:e.hasActiveEntry?"● active":`${e.entryCount} entries`})]}),(0,t.jsx)(e_,{sheet_name:e.name,is_pending:d,can_delete:_,on_rename:()=>{var t;y(t=e.name),k(t)},on_delete:async()=>{var t,n,r;let s;(!m||await u((t=e.name,n=e.entryCount,r=e.hasActiveEntry,s=0===n?"":` This will delete ${n} ${1===n?"entry":"entries"}.`,{title:"Delete sheet?",message:`Delete "${t}"?${s}${r?" This will stop the active timer.":""}`,confirmLabel:"Delete sheet",variant:"danger"})))&&c(e.name)}})]})},e.name))}),p?(0,t.jsxs)("form",{className:"flex w-full min-w-0 flex-col gap-2",onSubmit:e=>{e.preventDefault();let t=g.trim();0!==t.length&&(a(t),w())},children:[(0,t.jsx)("input",{className:(0,l.get_input_class_name)("compact"),value:g,onChange:e=>f(e.target.value),placeholder:"New sheet name",disabled:d,autoFocus:!0}),(0,t.jsxs)("div",{className:"flex gap-1.5",children:[(0,t.jsx)("button",{type:"submit",className:`${(0,i.get_button_class_name)("ghost")} flex-1`,disabled:d||0===g.trim().length,children:"Add"}),(0,t.jsx)("button",{type:"button",className:`${(0,i.get_button_class_name)("ghost")} flex-1`,disabled:d,onClick:w,children:"Cancel"})]})]}):(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:d,onClick:()=>h(!0),children:"Add sheet"}),(0,t.jsx)("p",{className:"mt-auto shrink-0 overflow-wrap-anywhere border-t border-panel-border pt-3 font-mono text-[0.65rem] leading-snug text-muted",title:n,children:n})]})}var ef=e.i(60935);function ex(){return"true"===(0,r.useSyncExternalStore)(ef.timer_show_seconds_preference.subscribe,ef.timer_show_seconds_preference.get_snapshot,ef.timer_show_seconds_preference.get_server_snapshot)}function eb({entry:e,in_bar:n,is_pending:s,initial_at:a,on_cancel:o,on_submit:c}){let d=(0,D.use_duration_format)(),u=ex(),[m,_]=(0,r.useState)(()=>Date.now()-new Date(e.start).getTime()),[p,h]=(0,r.useState)(""),[g,f]=(0,r.useState)(a??""),x=(0,r.useRef)(null);(0,eh.use_escape_to_cancel)(o),(0,r.useEffect)(()=>{x.current?.focus()},[]),(0,r.useEffect)(()=>{_(Date.now()-new Date(e.start).getTime());let t=globalThis.setInterval(()=>{_(Date.now()-new Date(e.start).getTime())},1e3);return()=>globalThis.clearInterval(t)},[e.start]);let b=(0,y.format_duration)(m,d,u),v=e.description||"Untitled entry";return(0,t.jsxs)("form",{className:"flex min-w-0 flex-col gap-4","aria-label":"Check out form",onSubmit:e=>{e.preventDefault();let t=p.trim(),n=g.trim(),r=t.length>0,s=n.length>0;r||s?c({...s?{at:n}:{},...r?{note:t}:{}}):c(void 0)},children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,t.jsx)("span",{className:"text-[0.68rem] font-bold uppercase leading-none tracking-wider text-danger",children:"Checking out"}),(0,t.jsx)("h2",{className:"m-0 min-w-0 truncate text-[1.05rem] font-[650] leading-tight tracking-tight min-[560px]:text-[1.15rem]",children:v})]}),(0,t.jsx)("p",{className:"m-0 whitespace-nowrap font-mono text-[1.4rem] font-medium leading-none tracking-tight text-accent min-[560px]:text-[1.6rem]",children:b})]}),e.tags.length>0?(0,t.jsx)("ul",{className:"m-0 flex list-none flex-wrap gap-1.5 p-0",children:e.tags.map(e=>(0,t.jsx)("li",{className:"rounded-full bg-tag-bg px-2 py-0.5 text-[0.72rem] text-tag-text",children:(0,J.format_display_tag)(e)},e))}):null,(0,t.jsxs)("div",{className:"grid grid-cols-1 gap-3 min-[640px]:grid-cols-[minmax(0,1fr)_minmax(10rem,14rem)]",children:[(0,t.jsxs)("label",{className:"flex min-w-0 flex-col gap-1",htmlFor:"checkout-note",children:[(0,t.jsxs)("span",{className:"text-[0.8rem] font-semibold",children:["Note ",(0,t.jsx)("span",{className:"font-normal text-muted",children:"(optional)"})]}),(0,t.jsx)("input",{ref:x,id:"checkout-note",className:(0,l.get_input_class_name)("compact"),value:p,onChange:e=>h(e.target.value),placeholder:"Wrap-up, blockers, next steps…",disabled:s})]}),(0,t.jsxs)("label",{className:"flex min-w-0 flex-col gap-1",htmlFor:"checkout-at",children:[(0,t.jsxs)("span",{className:"text-[0.8rem] font-semibold",children:["End time ",(0,t.jsx)("span",{className:"font-normal text-muted",children:"(optional)"})]}),(0,t.jsx)("input",{id:"checkout-at",className:(0,l.get_input_class_name)("compact"),value:g,onChange:e=>f(e.target.value),placeholder:"e.g. now, 30 minutes ago, 5:30pm",disabled:s})]})]}),(0,t.jsxs)("div",{className:`flex flex-wrap items-center gap-2 ${n?"":"pt-1"}`,children:[(0,t.jsx)("button",{type:"submit",className:(0,i.get_button_class_name)("danger-solid"),disabled:s,children:"Confirm check out"}),(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:s,onClick:o,children:"Cancel"})]})]})}function ey(){return(0,t.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",role:"presentation","aria-hidden":"true",focusable:"false",children:(0,t.jsx)("path",{d:"M12 3l1.7 4.3L18 9l-4.3 1.7L12 15l-1.7-4.3L6 9l4.3-1.7L12 3zM19 14l.9 2.1L22 17l-2.1.9L19 20l-.9-2.1L16 17l2.1-.9L19 14zM5 15l.9 2.1L8 18l-2.1.9L5 21l-.9-2.1L2 18l2.1-.9L5 15z",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round"})})}var ev=e.i(44356);function ek({entry:e,known_tags:n,is_pending:l,on_save:m,on_cancel:p}){let h=(0,r.useMemo)(()=>(0,ev.build_resume_description)(e.description,e.tags),[e.description,e.tags]),[g,f]=(0,r.useState)(h),[x,b]=(0,r.useState)(!1),[y,v]=(0,r.useState)(null),k=(0,r.useSyncExternalStore)(c.entry_suggestion_provider_preference.subscribe,c.entry_suggestion_provider_preference.get_snapshot,c.entry_suggestion_provider_preference.get_server_snapshot),w=(0,r.useSyncExternalStore)(u.openai_api_key_preference.subscribe,u.openai_api_key_preference.get_snapshot,u.openai_api_key_preference.get_server_snapshot),N=(0,r.useSyncExternalStore)(o.claude_api_key_preference.subscribe,o.claude_api_key_preference.get_snapshot,o.claude_api_key_preference.get_server_snapshot),j=(0,r.useSyncExternalStore)(d.google_ai_api_key_preference.subscribe,d.google_ai_api_key_preference.get_snapshot,d.google_ai_api_key_preference.get_server_snapshot),S=(0,a.get_api_key_for_suggestion_provider)(k,{openai:w,claude:N,google_ai:j}),E="none"!==k&&S.trim().length>0;(0,r.useEffect)(()=>{f((0,ev.build_resume_description)(e.description,e.tags))},[e.description,e.id,e.sheetName,e.tags]),(0,eh.use_escape_to_cancel)(p);let C=async()=>{if(E){b(!0),v(null);try{let t=e.notes.map(e=>e.text).join("\n"),n=await (0,_.request_ai_entry_description_suggestion)({provider:k,api_key:S,context:g,notes:t});f(n)}catch(e){v(e instanceof Error?e.message:String(e))}finally{b(!1)}}};return(0,t.jsxs)("form",{className:"flex min-w-0 flex-1 flex-col gap-2",onSubmit:e=>{e.preventDefault();let t=g.trim();t===h.trim()?p():m(t)},children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-start gap-2 max-[700px]:flex-col",children:[(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)(s.TagAutocompleteInput,{id:`active-entry-description-${e.id}`,value:g,known_tags:n,placeholder:"e.g. crafting something @design",disabled:l,autoFocus:!0,on_change:f})}),(0,t.jsxs)("div",{className:"flex shrink-0 flex-wrap gap-2 max-[700px]:w-full",children:[E?(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost","small"),disabled:l||x,title:"Revise description with AI","aria-label":"Revise description with AI",onClick:()=>void C(),children:(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,t.jsx)(ey,{}),x?"Revising…":"Revise with AI"]})}):null,(0,t.jsx)("button",{type:"submit",className:(0,i.get_button_class_name)("primary","small"),disabled:l||g.trim()===h.trim(),children:"Save"}),(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost","small"),disabled:l,onClick:p,children:"Cancel"})]})]}),null===y?null:(0,t.jsx)("p",{className:"m-0 text-[0.8rem] text-danger",children:y})]})}var ew=e.i(50459);let eN=`${(0,i.get_button_class_name)("danger-solid")} rounded-none first:rounded-l-[0.65rem] last:rounded-r-[0.65rem] not-first:-ml-px not-first:min-w-12 not-first:border-l not-first:border-l-[color-mix(in_srgb,#ffffff_30%,var(--danger-solid))] min-[561px]:px-2.5 min-[561px]:py-2 min-[561px]:text-[0.9rem] max-[560px]:flex-1 max-[560px]:basis-1/2`;function ej({in_bar:e=!1,is_pending:n,on_start_checkout:r}){return(0,t.jsxs)("div",{className:`inline-flex min-w-0 max-w-full ${e?"max-[560px]:w-full":"min-w-30 max-[560px]:w-full"}`,children:[(0,t.jsx)("button",{type:"button",className:eN,disabled:n,onClick:()=>r(),children:"Check out"}),(0,t.jsx)("button",{type:"button",className:eN,disabled:n,title:"Check out at a specific time",onClick:()=>{let e=(0,ew.prompt_check_out_at)();null!==e&&r(e)},children:"@"})]})}var eS=e.i(28098),eE=e.i(7568),eC=e.i(4903);function eT({on_submit:e,on_cancel:n,is_pending:s,in_active_panel:a=!1,in_bar:o=!1,allow_at:c=!1}){let[d,u]=(0,r.useState)(""),[m,_]=(0,r.useState)("");return(0,eh.use_escape_to_cancel)(()=>n?.(),void 0!==n),(0,t.jsxs)("form",{className:`flex flex-col gap-2 ${a&&!o?"border-t border-accent-border pt-4":o?"border-t border-[color-mix(in_srgb,var(--accent-border)_65%,var(--panel-border))] pt-3.5":""}`,onSubmit:t=>{t.preventDefault();let n=d.trim();if(0===n.length)return;let r=m.trim();e(n,r.length>0?r:void 0),u(""),_("")},children:[(0,t.jsx)("label",{className:"text-[0.85rem] text-muted",htmlFor:"note-text",children:"Add note"}),(0,t.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] gap-2 max-[860px]:grid-cols-1",children:[(0,t.jsx)("input",{id:"note-text",className:(0,l.get_input_class_name)(),value:d,onChange:e=>u(e.target.value),placeholder:"Pair with alice on the widget",disabled:s,autoFocus:!0}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 max-[860px]:w-full",children:[(0,t.jsx)("button",{type:"submit",className:(0,i.get_button_class_name)("ghost"),disabled:s||0===d.trim().length,children:"Save note"}),void 0===n?null:(0,t.jsx)("button",{type:"button",className:(0,i.get_button_class_name)("ghost"),disabled:s,onClick:n,children:"Cancel"})]})]}),c?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("label",{className:"text-[0.85rem] text-muted",htmlFor:"note-at",children:["Note time"," ",(0,t.jsx)("span",{className:"font-normal opacity-85",children:"(optional, natural language)"})]}),(0,t.jsx)("input",{id:"note-at",className:(0,l.get_input_class_name)(),value:m,onChange:e=>_(e.target.value),placeholder:"e.g. 30 minutes ago",disabled:s})]}):null]})}var e$=e.i(34937),eI=e.i(76379),eM=e.i(7554),eD=e.i(27707);let eL=(0,r.forwardRef)(function({entry:e,sheets:n,known_tags:s,in_bar:a=!1,on_check_out:l,on_delete:o,on_edit:c,on_move:d,on_add_note:u,on_edit_note:m,on_delete_note:_,is_pending:p},h){var g;let f,{confirm:b}=(0,x.useConfirmDialog)(),v=(0,ep.use_confirm_destructive_actions)(),k=(0,eI.use_confirm_before_checkout)(),w=(0,D.use_duration_format)(),N=ex(),[j,S]=(0,r.useState)(e.durationMs),[E,C]=(0,r.useState)(!1),[T,$]=(0,r.useState)(!1),[I,M]=(0,r.useState)(!1),[L,A]=(0,r.useState)(!1),[R,F]=(0,r.useState)(void 0);(0,r.useImperativeHandle)(h,()=>({start_edit:()=>{E||T||L||C(!0)},start_add_note:()=>{E||T||I||L||M(!0)}}),[I,E,T,L]),(0,r.useEffect)(()=>{M(!1),C(!1),$(!1),A(!1),F(void 0)},[e.id,e.sheetName]),(0,r.useEffect)(()=>{S(e.durationMs);let t=globalThis.setInterval(()=>{S(Date.now()-new Date(e.start).getTime())},1e3);return()=>globalThis.clearInterval(t)},[e.durationMs,e.start]);let U=()=>{A(!1),F(void 0)},O=async e=>{(!k||await b((0,eM.get_check_out_confirm_dialog)(e)))&&(l(e),U())},P=(g=E||T||L,f="flex flex-col gap-4 rounded-lg border border-accent-border p-[1.1rem] shadow-sm",a?g?`${f} rounded-md border border-accent-border bg-[color-mix(in_srgb,var(--panel)_70%,var(--background))] p-3.5`:"flex flex-col gap-3 border-0 bg-transparent p-0 shadow-none":`${f} bg-[image:var(--active-panel-bg)]`),q=async t=>{let n,r,s=e.notes.find(e=>e.timestamp===t);(!v||await b({title:"Delete note?",message:(r=(n=(s?.text??"").trim()).length>80?`${n.slice(0,80)}…`:n).length>0?`Remove this note? "${r}"`:"Remove this note?",confirmLabel:"Delete",variant:"danger"}))&&_(t)},z=(0,t.jsx)(eS.EntryActionsMenu,{current_sheet_name:e.sheetName,sheets:n,is_pending:p,on_edit:()=>$(!0),on_show_add_note_form:()=>M(!0),on_move:d,on_delete:async()=>{(!v||await b((0,eD.get_delete_entry_confirm_dialog)(e)))&&o()}});return L?(0,t.jsx)("section",{className:P,"aria-label":"Check out active entry",children:(0,t.jsx)(eb,{entry:e,in_bar:a,is_pending:p,initial_at:R,on_cancel:U,on_submit:e=>{O(e)}})}):T?(0,t.jsx)("section",{className:P,children:(0,t.jsx)(eE.EntryEditForm,{entry:e,known_tags:s,is_pending:p,in_active_panel:!0,times_only:!0,start_only:!0,on_cancel:()=>$(!1),on_save:e=>{c(e),$(!1)}})}):(0,t.jsxs)("section",{className:P,children:[(0,t.jsxs)("div",{className:"flex min-w-0 shrink-0 items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[a?null:(0,t.jsx)("span",{className:"self-start rounded-full bg-accent px-2 py-0.5 text-[0.68rem] font-bold uppercase leading-none tracking-wider text-accent-text-on",children:"Tracking"}),E?(0,t.jsx)(ek,{entry:e,known_tags:s,is_pending:p,on_cancel:()=>C(!1),on_save:e=>{c({description:e}),C(!1)}}):(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-1",children:[(0,t.jsx)("h2",{className:"m-0 min-w-0 truncate text-[1.12rem] font-[650] leading-tight tracking-tight min-[560px]:text-xl",children:e.description||"Untitled entry"}),(0,t.jsx)("button",{type:"button",className:"inline-flex h-7 w-7 shrink-0 cursor-pointer items-center justify-center rounded-[0.35rem] border-0 bg-transparent p-0 text-muted hover:bg-surface-hover hover:text-foreground disabled:cursor-not-allowed disabled:opacity-55","aria-label":"Edit description",title:"Edit description",disabled:p||I,onClick:()=>C(!0),children:(0,t.jsx)(e$.PencilIcon,{})})]})]}),a?null:(0,t.jsx)("div",{className:"max-[560px]:self-end",children:z})]}),(0,t.jsxs)("div",{className:`flex shrink-0 items-end justify-between gap-4 max-[860px]:flex-col max-[860px]:items-stretch ${a?"px-3":""}`,children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-2",children:[(0,t.jsx)("p",{className:"m-0 whitespace-nowrap font-mono text-[1.65rem] font-medium leading-none tracking-tight text-accent min-[440px]:text-[1.85rem] min-[560px]:text-[2rem]",children:(0,y.format_duration)(j,w,N)}),E||0===e.tags.length?null:(0,t.jsx)("ul",{className:"m-0 flex list-none flex-wrap gap-1.5 p-0",children:e.tags.map(e=>(0,t.jsx)("li",{className:"rounded-full bg-tag-bg px-2 py-0.5 text-xs text-tag-text",children:(0,J.format_display_tag)(e)},e))})]}),(0,t.jsxs)("div",{className:`flex min-w-0 shrink-0 flex-wrap items-center justify-end gap-2 max-[560px]:flex-col max-[560px]:items-stretch ${a?"w-full":"min-w-30 max-[860px]:w-full max-[860px]:justify-stretch"}`,children:[I?null:(0,t.jsx)("button",{type:"button",className:`${(0,i.get_button_class_name)("ghost")} min-w-0 min-[561px]:px-2.5 min-[561px]:py-2 min-[561px]:text-[0.9rem] max-[560px]:flex-1`,disabled:p||E,onClick:()=>M(!0),children:"Add note"}),(0,t.jsx)(ej,{in_bar:a,is_pending:p,on_start_checkout:e=>{p||(C(!1),$(!1),M(!1),F(e),A(!0))}})]})]}),(0,t.jsx)(eC.EntryNotesList,{notes:e.notes,variant:"panel",in_bar:a,is_pending:p,on_edit_note:m,on_delete_note:q}),I?(0,t.jsx)("div",{className:"shrink-0",children:(0,t.jsx)(eT,{in_active_panel:!0,in_bar:a,allow_at:!0,is_pending:p,on_cancel:()=>M(!1),on_submit:(e,t)=>{u(e,t),M(!1)}})}):null]})});var eA=e.i(15526);let eR=(0,r.forwardRef)(function({active_entry:e,sheets:n,known_tags:s,is_pending:a,on_check_out:i,on_delete:l,on_edit:o,on_move:c,on_add_note:d,on_edit_note:u,on_delete_note:m},_){let{confirm:p}=(0,x.useConfirmDialog)(),h=(0,ep.use_confirm_destructive_actions)(),g=(0,r.useRef)(null);return((0,r.useImperativeHandle)(_,()=>({start_edit:()=>{g.current?.start_edit()},start_add_note:()=>{g.current?.start_add_note()}})),null===e)?null:(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[(0,t.jsxs)("span",{className:"text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted whitespace-nowrap truncate",children:["Sheet ",e.sheetName]}),(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-accent px-2 py-0.5 text-[0.68rem] font-bold uppercase leading-none tracking-wider text-accent-text-on",children:"Tracking"}),(0,eA.is_pomodoro_task_entry)(e)?(0,t.jsx)("span",{className:"shrink-0 rounded-full border border-panel-border bg-surface-raised px-2 py-0.5 text-[0.68rem] font-bold uppercase leading-none tracking-wider text-foreground",children:"Pomodoro"}):null,(0,t.jsx)("div",{className:"ml-auto",children:(0,t.jsx)(eS.EntryActionsMenu,{current_sheet_name:e.sheetName,sheets:n,is_pending:a,on_edit:()=>g.current?.start_edit(),on_show_add_note_form:()=>g.current?.start_add_note(),on_move:c,on_delete:async()=>{(!h||await p((0,eD.get_delete_entry_confirm_dialog)(e)))&&l()}})})]}),(0,t.jsx)(eL,{ref:g,entry:e,sheets:n,known_tags:s,in_bar:!0,is_pending:a,on_check_out:i,on_delete:l,on_edit:o,on_move:c,on_add_note:d,on_edit_note:u,on_delete_note:m},`${e.sheetName}-${e.id}`)]})});var eF=e.i(16967);let eU="super-time-tracker";function eO({active_entry:e}){let t="true"===(0,r.useSyncExternalStore)(eF.timer_in_title_preference.subscribe,eF.timer_in_title_preference.get_snapshot,eF.timer_in_title_preference.get_server_snapshot),n=(0,D.use_duration_format)(),s=ex(),[a,i]=(0,r.useState)(e?.durationMs??0);return(0,r.useEffect)(()=>{if(null===e)return void i(0);i(e.durationMs);let t=window.setInterval(()=>{i(Date.now()-new Date(e.start).getTime())},1e3);return()=>window.clearInterval(t)},[e]),(0,r.useEffect)(()=>{if(!t||null===e){document.title=eU;return}let r=e.description.trim()||"Tracking",i=(0,y.format_duration)(a,n,s);return document.title=`${i} — ${r}`,()=>{document.title=eU}},[e,n,a,s,t]),null}var eP=e.i(75404),eq=e.i(36178),ez=e.i(68713);function eG(e){return`${e.sheetName}:${e.id}`}var eH=e.i(67999),eK=e.i(85323),eJ=e.i(76709),eB=e.i(17857),eW=e.i(3159),eY=e.i(51229),eQ=e.i(17003);function eV(e){let t=e.activeSheetName;null!==t&&(0,eQ.write_active_sheet_preference)(t)}var eX=e.i(65742),eZ=e.i(48541),e0=e.i(20397);e.s(["TrackerApp",0,function({initial_state:e}){let[s,a]=(0,r.useState)(e),[l,o]=(0,r.useState)(null),[c,d]=(0,r.useState)(!1),[u,m]=(0,r.useState)(!1),[_,p]=(0,r.useState)(""),h=(0,r.useRef)(e);(0,r.useEffect)(()=>{eV(e)},[e]);let g=async e=>{d(!0),o(null);try{let t=await e(),n=null!==s.activeEntry&&null===t.activeEntry,r=s.runningEntry,i=t.runningEntry;if(eV(t),a(t),n&&(0,ez.finish_running_pomodoro_timer)(),!k)return;if(null===r&&null!==i)return void(0,eK.notify_desktop)({title:"Tracking started",body:`${i.description||"Untitled entry"} (${i.sheetName})`,tag:"tracker-running-entry"});if(null!==r&&null===i)return void(0,eK.notify_desktop)({title:"Tracking stopped",body:`${r.description||"Untitled entry"} (${r.sheetName})`,tag:"tracker-running-entry"});null!==r&&null!==i&&eG(r)!==eG(i)&&(0,eK.notify_desktop)({title:"Tracking switched",body:`${i.description||"Untitled entry"} (${i.sheetName})`,tag:"tracker-running-entry"})}catch(e){o(e instanceof Error?e.message:String(e))}finally{d(!1)}},b=s.activeSheetName??s.sheets.find(e=>e.isActive)?.name??"main",y=ea(),v=(0,e0.use_entry_list_sort)(),k="true"===(0,r.useSyncExternalStore)(eZ.desktop_notifications_preference.subscribe,eZ.desktop_notifications_preference.get_snapshot,eZ.desktop_notifications_preference.get_server_snapshot),w="true"===(0,r.useSyncExternalStore)(eX.clear_tag_filters_on_sheet_change_preference.subscribe,eX.clear_tag_filters_on_sheet_change_preference.get_snapshot,eX.clear_tag_filters_on_sheet_change_preference.get_server_snapshot),N=(0,r.useRef)(null),j=(0,r.useRef)(null),S=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!w||null===N.current||N.current===b){N.current=b;return}en(b,[]),N.current=b},[b,w]),(0,r.useEffect)(()=>{p("")},[b]);let E=(0,r.useSyncExternalStore)(ee.subscribe_sheet_tag_filters,()=>X(b),Z),C=(0,r.useMemo)(()=>(function(e){let t=new Map;for(let n of e){let e=new Set;for(let r of n.tags)try{let n=(0,B.normalize_stored_tag)(r);if(e.has(n))continue;e.add(n),t.set(n,(t.get(n)??0)+1)}catch{continue}}return[...t.entries()].map(([e,t])=>({name:e,entryCount:t})).sort((e,t)=>e.name.localeCompare(t.name))})(s.activeSheetEntries),[s.activeSheetEntries]),T=(0,r.useMemo)(()=>{var e;let t;if(u)return[];let n=[...(e=function(e,t,n="all"){return 0===t.length?e:e.filter(e=>(function(e,t,n="all"){return 0===t.length||("any"===n?t.some(t=>e.tags.some(e=>(0,er.tags_are_equal)(e,t))):t.every(t=>e.tags.some(e=>(0,er.tags_are_equal)(e,t))))})(e,t,n))}(s.activeSheetEntries,E,y),0===(t=_.trim()).length?e:e.filter(e=>(function(e,t){let n=t.trim().toLowerCase();if(0===n.length)return{matches:!0,noteSnippet:null};let r=e.description.toLowerCase().includes(n),s=e.sheetName.toLowerCase().includes(n),a=e.tags.some(e=>e.toLowerCase().includes(n));if(r||s||a)return{matches:!0,noteSnippet:null};for(let t of e.noteTexts)if(t.toLowerCase().includes(n))return{matches:!0,noteSnippet:function(e,t){let n=e.toLowerCase().indexOf(t);if(n<0)return e.slice(0,120);let r=Math.max(0,n-40),s=Math.min(e.length,n+t.length+40),a=r>0?"…":"",i=s<e.length?"…":"";return`${a}${e.slice(r,s)}${i}`}(t,n)};return{matches:!1,noteSnippet:null}})({sheetName:e.sheetName,description:e.description,tags:e.tags,noteTexts:e.notes.map(e=>e.text)},t).matches))];switch(v){case"oldest":return n.sort((e,t)=>new Date(e.start).getTime()-new Date(t.start).getTime());case"duration":return n.sort((e,t)=>t.durationMs-e.durationMs);case"description":return n.sort((e,t)=>{let n=e.description.trim()||"Untitled entry",r=t.description.trim()||"Untitled entry";return n.localeCompare(r)});default:return n.sort((e,t)=>new Date(t.start).getTime()-new Date(e.start).getTime())}},[s.activeSheetEntries,E,y,v,_,u]),$=(0,r.useMemo)(()=>(0,eH.get_serialized_entries_total_ms)(T),[T]);(0,r.useEffect)(()=>(0,eJ.subscribe_tracker_state_sync)(()=>{c||u||fetch("/api/state").then(async e=>{if(!e.ok)throw Error("Failed to refresh tracker state");return await e.json()}).then(e=>{eV(e),a(t=>(null===t.activeEntry?null:`${t.activeEntry.sheetName}:${t.activeEntry.id}`)===(null===e.activeEntry?null:`${e.activeEntry.sheetName}:${e.activeEntry.id}`)?t:e)}).catch(()=>{})}),[c,u]);let I=u?`Loading entries for "${b}"…`:_.trim().length>0?E.length>0?`No entries on sheet "${b}" match your search and selected tags.`:`No entries on sheet "${b}" match your search.`:E.length>0?"any"===y?`No entries on sheet "${b}" match any selected tag.`:`No entries on sheet "${b}" match all selected tags.`:`No entries on sheet "${b}".`,M=e=>{let t;if(e===b&&!u)return;h.current=s;let n=(t=s.runningEntries.find(t=>t.sheetName===e)??null,{...s,activeSheetName:e,sheets:s.sheets.map(t=>({...t,isActive:t.name===e})),activeEntry:t,activeSheetEntries:s.activeSheetEntries,activeSheetTotalMs:s.activeSheetTotalMs});eV(n),a(n),m(!0),o(null),(0,eY.post_tracker_action)("/api/sheet",{name:e}).then(e=>{eV(e),a(e)}).catch(e=>{o(e instanceof Error?e.message:String(e)),a(h.current)}).finally(()=>{m(!1)})},D=(e,t,n)=>(0,eW.patch_tracker_action)("/api/entry",{sheetName:e,entryId:t,...n});return(0,t.jsxs)(x.ConfirmDialogProvider,{children:[(0,t.jsx)(eO,{active_entry:s.activeEntry}),(0,t.jsx)(K,{sheets:s.sheets,active_sheet_name:b,active_entry:s.activeEntry,is_pending:c,check_in_form_ref:j,active_entry_panel_ref:S,on_select_sheet:M,on_check_out:e=>g(()=>(0,eY.post_tracker_action)("/api/out",(0,eq.build_check_out_request_payload)(b,e)))}),(0,t.jsx)("div",{className:"relative z-1",children:(0,t.jsx)(eP.TrackerTopbar,{})}),(0,t.jsxs)("div",{className:"mx-auto max-w-[1120px] px-4 pb-10 pt-4 sm:px-5 sm:pt-5",children:[null!==l?(0,t.jsx)("p",{className:"mb-4 border border-danger-border bg-danger-soft px-3 py-2.5 text-danger-text",children:l}):null,(0,t.jsx)(L,{has_running_timer:null!==s.runningEntry,on_check_in_shortcut:()=>{j.current?.expand_and_focus()}}),(0,t.jsxs)("div",{className:"grid grid-cols-[minmax(14rem,18rem)_minmax(0,1fr)] items-stretch border border-panel-border bg-panel shadow-sm max-[960px]:grid-cols-1",children:[(0,t.jsx)("div",{className:"flex min-h-0 min-w-0 flex-col border-r border-panel-border p-4 max-[860px]:border-r-0 max-[860px]:border-b",children:(0,t.jsx)(eg,{sheets:s.sheets,db_path:s.dbPath,is_pending:c,on_select:M,on_create:e=>g(()=>(0,eY.post_tracker_action)("/api/sheet",{name:e})),on_rename:(e,t)=>g(()=>(0,eW.patch_tracker_action)("/api/sheet",{name:e,newName:t})),on_delete:e=>g(()=>(0,eY.post_tracker_action)("/api/sheet",{name:e,delete:!0}))})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-col",children:[(0,t.jsxs)("section",{className:"flex min-w-0 flex-col gap-4 border-b border-panel-border border-l-4 border-l-accent p-4",children:[null===s.activeEntry?(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3 rounded-md border border-panel-border bg-background px-3 py-2",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Quick action"}),(0,t.jsx)("p",{className:"m-0 mt-1 text-[0.9rem] font-medium",children:"Jump into Pomodoro without leaving the tracker."})]}),(0,t.jsxs)(n.default,{href:"/pomodoro",className:`${(0,i.get_button_class_name)("primary")} inline-flex min-w-40 flex-col items-center justify-center whitespace-nowrap text-center`,"aria-label":"Open Pomodoro timer",children:[(0,t.jsx)("span",{className:"text-white text-[0.9rem] leading-none",children:"Start Pomodoro"}),(0,t.jsx)("span",{className:"text-white mt-1 text-[0.72rem] font-medium leading-none opacity-85",children:"Focus timer"})]})]}):null,(0,t.jsx)(eR,{ref:S,active_entry:s.activeEntry,sheets:s.sheets,known_tags:s.knownTags,is_pending:c,on_check_out:e=>g(()=>(0,eY.post_tracker_action)("/api/out",(0,eq.build_check_out_request_payload)(b,e))),on_delete:()=>g(()=>(0,eY.post_tracker_action)("/api/entry",{sheetName:b,entryId:s.activeEntry?.id})),on_edit:e=>g(()=>D(b,s.activeEntry?.id??0,e)),on_move:e=>g(()=>(0,eY.post_tracker_action)("/api/entry/move",{sheetName:b,entryId:s.activeEntry?.id,targetSheetName:e})),on_add_note:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/note",{text:e,...void 0!==t?{at:t}:{},sheetName:b,entryId:s.activeEntry?.id})),on_edit_note:(e,t)=>g(()=>(0,eW.patch_tracker_action)("/api/note",{sheetName:b,entryId:s.activeEntry?.id,timestamp:e,text:t})),on_delete_note:e=>g(()=>(0,eB.delete_tracker_action)("/api/note",{sheetName:b,entryId:s.activeEntry?.id,timestamp:e}))}),null===s.activeEntry?(0,t.jsx)(f,{ref:j,known_tags:s.knownTags,is_pending:c,trailing:(0,t.jsx)("p",{className:"m-0 text-[0.85rem] leading-tight text-muted",children:"Not tracking"}),on_submit:e=>g(()=>(0,eY.post_tracker_action)("/api/in",{...e,sheetName:b}))}):null]}),(0,t.jsx)("section",{className:"flex min-w-0 flex-col gap-4 p-4",children:(0,t.jsx)(ed.EntryList,{title:"Entries",entries:T,merge_context_entries:s.activeSheetEntries,sheets:s.sheets,known_tags:s.knownTags,total_ms:$,empty_message:I,is_pending:c,show_sheet_name:!1,header_extra:(0,t.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,t.jsx)(ec,{query:_,active_sheet:b,is_pending:c,on_query_change:p}),(0,t.jsx)(ei,{sheet_name:b,sheet_tags:C})]}),on_delete:e=>g(()=>(0,eY.post_tracker_action)("/api/entry",{sheetName:e.sheetName,entryId:e.id})),on_edit:(e,t)=>g(()=>D(e.sheetName,e.id,t)),on_move:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/entry/move",{sheetName:e.sheetName,entryId:e.id,targetSheetName:t})),on_move_many:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/entry/move-bulk",{entries:e.map(e=>({sheetName:e.sheetName,entryId:e.id})),targetSheetName:t})),on_delete_many:e=>g(()=>(0,eY.post_tracker_action)("/api/entry/delete-bulk",{entries:e.map(e=>({sheetName:e.sheetName,entryId:e.id}))})),on_edit_note:(e,t,n)=>g(()=>(0,eW.patch_tracker_action)("/api/note",{sheetName:e.sheetName,entryId:e.id,timestamp:t,text:n})),on_add_note:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/note",{sheetName:e.sheetName,entryId:e.id,text:t})),on_resume:e=>g(()=>(0,eY.post_tracker_action)("/api/in",{description:(0,ev.build_resume_description)(e.description,e.tags),sheetName:e.sheetName})),on_split:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/entry/split",{sheetName:e.sheetName,entryId:e.id,at:t})),on_merge:(e,t)=>g(()=>(0,eY.post_tracker_action)("/api/entry/merge",{sheetName:e.sheetName,entryId:e.id,direction:t}))})})]})]})]})]})}],22482)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,42552,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={formatUrl:function(){return o},formatWithValidation:function(){return l},urlObjectKeys:function(){return u}};for(var i in r)Object.defineProperty(n,i,{enumerable:!0,get:r[i]});let a=e.r(44066)._(e.r(78677)),s=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:n}=e,r=e.protocol||"",i=e.pathname||"",o=e.hash||"",u=e.query||"",l=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?l=t+e.host:n&&(l=t+(~n.indexOf(":")?`[${n}]`:n),e.port&&(l+=":"+e.port)),u&&"object"==typeof u&&(u=String(a.urlQueryToSearchParams(u)));let d=e.search||u&&`?${u}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||s.test(r))&&!1!==l?(l="//"+(l||""),i&&"/"!==i[0]&&(i="/"+i)):l||(l=""),o&&"#"!==o[0]&&(o="#"+o),d&&"?"!==d[0]&&(d="?"+d),i=i.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${r}${l}${i}${d}${o}`}let u=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function l(e){return o(e)}},37879,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"useMergedRef",{enumerable:!0,get:function(){return i}});let r=e.r(29158);function i(e,t){let n=(0,r.useRef)(null),i=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=n.current;e&&(n.current=null,e());let t=i.current;t&&(i.current=null,t())}else e&&(n.current=a(e,r)),t&&(i.current=a(t,r))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let n=e(t);return"function"==typeof n?n:()=>e(null)}}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},59246,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"isLocalURL",{enumerable:!0,get:function(){return a}});let r=e.r(31047),i=e.r(63334);function a(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,i.hasBasePath)(n.pathname)}catch(e){return!1}}},10364,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},45958,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={default:function(){return b},useLinkStatus:function(){return k}};for(var i in r)Object.defineProperty(n,i,{enumerable:!0,get:r[i]});let a=e.r(44066),s=e.r(54710),o=a._(e.r(29158)),u=e.r(42552),l=e.r(61717),d=e.r(37879),c=e.r(31047),m=e.r(20321);e.r(90503);let f=e.r(38520),h=e.r(19947),p=e.r(59246),g=e.r(99046);function b(t){var n,r;let i,a,b,[k,v]=(0,o.useOptimistic)(h.IDLE_LINK_STATUS),x=(0,o.useRef)(null),{href:_,as:w,children:j,prefetch:M=null,passHref:S,replace:N,shallow:C,scroll:T,onClick:P,onMouseEnter:A,onTouchStart:O,legacyBehavior:D=!1,onNavigate:E,transitionTypes:W,ref:I,unstable_dynamicOnHover:z,...L}=t;i=j,D&&("string"==typeof i||"number"==typeof i)&&(i=(0,s.jsx)("a",{children:i}));let R=o.default.useContext(l.AppRouterContext),F=!1!==M,q=!1!==M?null===(r=M)||"auto"===r?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,$="string"==typeof(n=w||_)?n:(0,u.formatUrl)(n);if(D){if(i?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=o.default.Children.only(i)}let U=D?a&&"object"==typeof a&&a.ref:I,B=o.default.useCallback(e=>(null!==R&&(x.current=(0,h.mountLinkInstance)(e,$,R,q,F,v)),()=>{x.current&&((0,h.unmountLinkForCurrentNavigation)(x.current),x.current=null),(0,h.unmountPrefetchableInstance)(e)}),[F,$,R,q,v]),Y={ref:(0,d.useMergedRef)(B,U),onClick(t){D||"function"!=typeof P||P(t),D&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!R||t.defaultPrevented||function(t,n,r,i,a,s,u){if("u">typeof window){let l,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((l=t.currentTarget.getAttribute("target"))&&"_self"!==l||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(n)){i&&(t.preventDefault(),location.replace(n));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:c}=e.r(91087);o.default.startTransition(()=>{c(n,i?"replace":"push",!1===a?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,r.current,u)})}}(t,$,x,N,T,E,W)},onMouseEnter(e){D||"function"!=typeof A||A(e),D&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),R&&F&&(0,h.onNavigationIntent)(e.currentTarget,!0===z)},onTouchStart:function(e){D||"function"!=typeof O||O(e),D&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),R&&F&&(0,h.onNavigationIntent)(e.currentTarget,!0===z)}};return(0,c.isAbsoluteUrl)($)?Y.href=$:D&&!S&&("a"!==a.type||"href"in a.props)||(Y.href=(0,m.addBasePath)($)),b=D?o.default.cloneElement(a,Y):(0,s.jsx)("a",{...L,...Y,children:i}),(0,s.jsx)(y.Provider,{value:k,children:b})}e.r(10364);let y=(0,o.createContext)(h.IDLE_LINK_STATUS),k=()=>(0,o.useContext)(y);("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},77882,e=>{"use strict";var t=e.i(71060),n=e.i(29158),r=e.i(83105),i=e.i(32417),a=e.i(46549);e.s(["use_supabase_auth_session",0,function(){let e=(0,t.useRouter)(),[s,o]=(0,n.useState)(null),[u,l]=(0,n.useState)(!1),d=(0,i.is_supabase_configured)();return(0,n.useEffect)(()=>{if(!d)return;let e=(0,r.create_browser_supabase_client)();e.auth.getSession().then(({data:{session:e}})=>{o(e?.user.email??null)}).catch(()=>{o(null)});let{data:{subscription:t}}=e.auth.onAuthStateChange((e,t)=>{o(t?.user.email??null)});return()=>{t.unsubscribe()}},[d]),{is_configured:d,email:s,is_pending:u,sign_out:(0,n.useCallback)(async()=>{l(!0);try{await fetch("/api/auth/signout",{method:"POST"});let t=(0,r.create_browser_supabase_client)();await t.auth.signOut().catch(()=>{}),(0,a.notify_settings_saved)("Signed out"),e.refresh()}finally{l(!1)}},[e])}}])},45200,648,e=>{"use strict";var t=e.i(54710),n=e.i(45958),r=e.i(71060);let i=[{href:"/",label:"Tracker",match:e=>"/"===e}];function a(){return(0,t.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,t.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"})})}e.s(["TrackerNavLinks",0,function(){let e=(0,r.usePathname)()??"/";return(0,t.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:i.map(r=>{let i=r.match(e);return(0,t.jsx)(n.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${i?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:r.href,"aria-current":i?"page":void 0,children:r.label},r.href)})})}],45200);var s=e.i(77882);e.s(["TopbarCloudStatus",0,function(){let{email:e,is_configured:n}=(0,s.use_supabase_auth_session)();return n&&null!==e?(0,t.jsxs)("div",{className:"group relative flex items-center",children:[(0,t.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 ${e}`,role:"img",children:(0,t.jsx)(a,{})}),(0,t.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,t.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,t.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:e,children:e})]})})]}):null}],648)},37399,e=>{"use strict";var t=e.i(54710);e.s(["HamburgerIcon",0,function(){return(0,t.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,t.jsx)("path",{d:"M4 7h16"}),(0,t.jsx)("path",{d:"M4 12h16"}),(0,t.jsx)("path",{d:"M4 17h16"})]})}])},90463,e=>{"use strict";e.s(["build_auth_page_href",0,function(e,t){let n="sign_in"===e?"/login":"/register",r=t.trim();return 0===r.length||"/"===r?n:`${n}?next=${encodeURIComponent(r)}`}])},73205,2268,76003,38240,e=>{"use strict";let t=new Set(e.i(22373).topbar_quick_action_ids),n=["today","search","reporting","pomodoro"];e.s(["parse_topbar_quick_actions",0,function(e){try{let r=JSON.parse(e);if(!Array.isArray(r))return n;let i=r.filter(e=>"string"==typeof e&&t.has(e));return Array.from(new Set(i))}catch{return n}}],73205);var r=e.i(34869),i=e.i(92629);let a=(0,r.create_ui_preference_store)({storage_key:i.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:i.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:e=>"true"===e||"false"===e});function s(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}e.s(["cloud_sync_enabled_preference",0,a],2268),e.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return s()}],76003);var o=e.i(17798),u=e.i(46549),l=e.i(10464),d=e.i(35434),c=e.i(61834),m=e.i(81553);e.s(["toggle_theme",0,function(){let e="dark"===s()?"light":"dark";(0,o.apply_theme)(e),(0,m.write_stored_theme)(e),l.theme_mode_preference.write(e),(0,c.write_document_preference_cookies)({theme_mode:e,theme:e}),l.theme_mode_preference.notify(),(0,d.notify_theme_subscribers)(),(0,u.notify_settings_saved)()}],38240)},25204,e=>{"use strict";var t=e.i(29158),n=e.i(72074);e.s(["use_escape_to_cancel",0,function(e,r=!0){let i=(0,t.useRef)(e);i.current=e,(0,t.useEffect)(()=>{if(!r)return;let e=e=>{"Escape"!==e.key||(0,n.is_modal_dialog_open)()||(e.preventDefault(),i.current())};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[r])}])},1976,76080,e=>{"use strict";var t=e.i(54710),n=e.i(45958),r=e.i(71060),i=e.i(29158),a=e.i(37399),s=e.i(90463),o=e.i(46549),u=e.i(73205),l=e.i(66295),d=e.i(2268),c=e.i(32792),m=e.i(90299),f=e.i(28274),h=e.i(76003),p=e.i(35434),g=e.i(38240),b=e.i(22373),y=e.i(25204),k=e.i(77882);let v="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",x={today:{href:"/today",label:"Today"},search:{href:"/search",label:"Search"},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"}},_=new Set(["manage-tags","pomodoro","sync-settings"]);e.s(["TopbarOverflowMenu",0,function(){let e=(0,r.useRouter)(),w=(0,r.usePathname)()??"/",j=(0,i.useSyncExternalStore)(p.subscribe_theme,h.get_theme_snapshot,h.get_theme_server_snapshot),M=(0,i.useSyncExternalStore)(d.cloud_sync_enabled_preference.subscribe,d.cloud_sync_enabled_preference.get_snapshot,d.cloud_sync_enabled_preference.get_server_snapshot),S=(0,i.useSyncExternalStore)(m.tracker_shortcut_map_preference.subscribe,m.tracker_shortcut_map_preference.get_snapshot,m.tracker_shortcut_map_preference.get_server_snapshot),N=(0,i.useSyncExternalStore)(c.topbar_quick_actions_preference.subscribe,c.topbar_quick_actions_preference.get_snapshot,c.topbar_quick_actions_preference.get_server_snapshot),C=(0,l.parse_tracker_shortcut_map)(S),T=new Set((0,u.parse_topbar_quick_actions)(N)),P=b.topbar_quick_action_ids.filter(e=>!T.has(e)),A=Array.from(new Set([...Array.from(_),...P])),{email:O,is_configured:D,is_pending:E,sign_out:W}=(0,k.use_supabase_auth_session)(),[I,z]=(0,i.useState)(!1),L=(0,i.useRef)(null);(0,i.useEffect)(()=>{if(!I)return;let e=e=>{null===L.current||L.current.contains(e.target)||z(!1)};return document.addEventListener("pointerdown",e),()=>{document.removeEventListener("pointerdown",e)}},[I]);let R=()=>{z(!1)};return(0,y.use_escape_to_cancel)(R,I),(0,t.jsxs)("div",{className:"relative shrink-0",ref:L,children:[(0,t.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":I,"aria-haspopup":"menu",onClick:()=>z(e=>!e),children:(0,t.jsx)(a.HamburgerIcon,{})}),I?(0,t.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:[D&&null!==O?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:O,children:O})}):null,A.map(e=>{let r=x[e];return(0,t.jsx)("li",{role:"none",children:(0,t.jsx)(n.default,{href:r.href,className:v,role:"menuitem",onClick:R,children:r.label})},e)}),D?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:v,role:"menuitemcheckbox","aria-checked":"true"===M,onClick:()=>{let e="true"===M?"false":"true";d.cloud_sync_enabled_preference.write(e),d.cloud_sync_enabled_preference.notify(),(0,o.notify_settings_saved)("true"===e?"Cloud sync enabled":"Cloud sync disabled"),"true"===e&&null!==O&&(0,f.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"true"===M?"Pause cloud sync":"Resume cloud sync"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===M?"On":"Off"})]})})}):null,(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:v,role:"menuitem",onClick:()=>{R(),(0,g.toggle_theme)()},suppressHydrationWarning:!0,children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsxs)("span",{children:["dark"===j?"Dark":"Light"," theme"]}),(0,t.jsx)("span",{"aria-hidden":"true",children:"dark"===j?"☾":"☀"})]})})}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:v,role:"menuitem",onClick:()=>{let e;R(),e=C.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:e,shiftKey:"?"===e,bubbles:!0}))},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"Keyboard shortcuts"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),D?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===O?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:v,role:"menuitem",onClick:()=>{R(),e.push((0,s.build_auth_page_href)("sign_in",w))},children:"Sign in"})}):(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:`${v} text-danger`,role:"menuitem",disabled:E,onClick:()=>{R(),W()},children:E?"Signing out…":"Sign out"})})]}):null]}):null]})}],1976);let w=[{id:"today",href:"/today",label:"Today"},{id:"search",href:"/search",label:"Search"},{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"}];e.s(["TopbarQuickActions",0,function(){let e=(0,r.usePathname)()??"/",a=(0,i.useSyncExternalStore)(c.topbar_quick_actions_preference.subscribe,c.topbar_quick_actions_preference.get_snapshot,c.topbar_quick_actions_preference.get_server_snapshot),s=(0,i.useMemo)(()=>(0,u.parse_topbar_quick_actions)(a),[a]);if(0===s.length)return null;let o=w.filter(e=>s.includes(e.id));return 0===o.length?null:(0,t.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:o.map(r=>{let i=e.startsWith(r.href);return(0,t.jsx)(n.default,{href:r.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${i?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":i?"page":void 0,children:r.label},r.id)})})}],76080)},29539,e=>{"use strict";var t=e.i(54710);e.s(["SettingsIcon",0,function(){return(0,t.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,t.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,t.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},75404,e=>{"use strict";var t=e.i(54710),n=e.i(45200),r=e.i(648),i=e.i(1976),a=e.i(76080),s=e.i(45958),o=e.i(71060),u=e.i(29539);function l(){let e=((0,o.usePathname)()??"/").startsWith("/settings");return(0,t.jsx)(s.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${e?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":e?"page":void 0,children:(0,t.jsx)(u.SettingsIcon,{})})}function d({current:e,parent:n}){return(0,t.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,t.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,t.jsx)("li",{children:(0,t.jsx)(s.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==n?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{children:void 0!==n.href?(0,t.jsx)(s.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:n.href,children:n.label}):(0,t.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:n.label})})]}):null,(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:e})]})})}e.s(["TrackerTopbar",0,function({breadcrumb:e}={}){return(0,t.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,t.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,t.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!==e?(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)(d,{current:e.current,parent:e.parent})}):null,(0,t.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,t.jsx)(n.TrackerNavLinks,{}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,t.jsx)(a.TopbarQuickActions,{}),(0,t.jsx)(r.TopbarCloudStatus,{}),(0,t.jsx)(l,{}),(0,t.jsx)(i.TopbarOverflowMenu,{})]})]})]})})}],75404)},25402,8627,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInHour",0,36e5,"millisecondsInMinute",0,6e4,"millisecondsInSecond",0,1e3,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],8627),e.s(["constructFrom",0,function(e,n){return"function"==typeof e?e(n):e&&"object"==typeof e&&t in e?e[t](n):e instanceof Date?new e.constructor(n):new Date(n)}],25402)},26313,e=>{"use strict";var t;let n={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function r(e){return (t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}let i={date:r({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:r({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:r({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},a={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function s(e){return(t,n)=>{let r;if("formatting"===(n?.context?String(n.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,i=n?.width?String(n.width):t;r=e.formattingValues[i]||e.formattingValues[t]}else{let t=e.defaultWidth,i=n?.width?String(n.width):e.defaultWidth;r=e.values[i]||e.values[t]}return r[e.argumentCallback?e.argumentCallback(t):t]}}let o={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:s({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:s({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:s({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:s({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:s({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function u(e){return(t,n={})=>{let r,i=n.width,a=i&&e.matchPatterns[i]||e.matchPatterns[e.defaultMatchWidth],s=t.match(a);if(!s)return null;let o=s[0],u=i&&e.parsePatterns[i]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(u)?function(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}(u,e=>e.test(o)):function(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}(u,e=>e.test(o));return r=e.valueCallback?e.valueCallback(l):l,{value:r=n.valueCallback?n.valueCallback(r):r,rest:t.slice(o.length)}}}let l={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,n={})=>{let r=e.match(t.matchPattern);if(!r)return null;let i=r[0],a=e.match(t.parsePattern);if(!a)return null;let s=t.valueCallback?t.valueCallback(a[0]):a[0];return{value:s=n.valueCallback?n.valueCallback(s):s,rest:e.slice(i.length)}}),era:u({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:u({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:u({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:u({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:u({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,r)=>{let i,a=n[e];if(i="string"==typeof a?a:1===t?a.one:a.other.replace("{{count}}",t.toString()),r?.addSuffix)if(r.comparison&&r.comparison>0)return"in "+i;else return i+" ago";return i},formatLong:i,formatRelative:(e,t,n,r)=>a[e],localize:o,match:l,options:{weekStartsOn:0,firstWeekContainsDate:1}}],26313)},36145,e=>{"use strict";let t={};e.s(["getDefaultOptions",0,function(){return t}])},29263,e=>{"use strict";var t=e.i(25402);e.s(["toDate",0,function(e,n){return(0,t.constructFrom)(n||e,e)}])},72424,16913,e=>{"use strict";var t=e.i(29263);e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let n=(0,t.toDate)(e),r=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()));return r.setUTCFullYear(n.getFullYear()),e-r}],72424);var n=e.i(25402);e.s(["normalizeDates",0,function(e,...t){let r=n.constructFrom.bind(null,e||t.find(e=>"object"==typeof e));return t.map(r)}],16913)},86688,(e,t,n)=>{!function(){var n=Object.assign||function(e){for(var t,n=1;n<arguments.length;n++)for(var r in t=arguments[n])b(t,r)&&(e[r]=t[r]);return e},r=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},i=u(["χρόνος","χρόνια"],["μήνας","μήνες"],["εβδομάδα","εβδομάδες"],["μέρα","μέρες"],["ώρα","ώρες"],["λεπτό","λεπτά"],["δευτερόλεπτο","δευτερόλεπτα"],["χιλιοστό του δευτερολέπτου","χιλιοστά του δευτερολέπτου"],","),a={af:u(["jaar","jaar"],["maand","maande"],["week","weke"],["dag","dae"],["uur","ure"],["minuut","minute"],["sekonde","sekondes"],["millisekonde","millisekondes"],","),am:s("ዓመት","ወር","ሳምንት","ቀን","ሰዓት","ደቂቃ","ሰከንድ","ሚሊሰከንድ"),ar:n(s(function(e){return["سنة","سنتان","سنوات"][m(e)]},function(e){return["شهر","شهران","أشهر"][m(e)]},function(e){return["أسبوع","أسبوعين","أسابيع"][m(e)]},function(e){return["يوم","يومين","أيام"][m(e)]},function(e){return["ساعة","ساعتين","ساعات"][m(e)]},function(e){return["دقيقة","دقيقتان","دقائق"][m(e)]},function(e){return["ثانية","ثانيتان","ثواني"][m(e)]},function(e){return["جزء من الثانية","جزآن من الثانية","أجزاء من الثانية"][m(e)]},","),{delimiter:" ﻭ ",_hideCountIf2:!0,_digitReplacements:["۰","١","٢","٣","٤","٥","٦","٧","٨","٩"]}),bg:c(["години","година","години"],["месеца","месец","месеца"],["седмици","седмица","седмици"],["дни","ден","дни"],["часа","час","часа"],["минути","минута","минути"],["секунди","секунда","секунди"],["милисекунди","милисекунда","милисекунди"]),bn:s("বছর","মাস","সপ্তাহ","দিন","ঘন্টা","মিনিট","সেকেন্ড","মিলিসেকেন্ড"),ca:u(["any","anys"],["mes","mesos"],["setmana","setmanes"],["dia","dies"],["hora","hores"],["minut","minuts"],["segon","segons"],["milisegon","milisegons"],","),ckb:s("ساڵ","مانگ","هەفتە","ڕۆژ","کاژێر","خولەک","چرکە","میلی چرکە","."),cs:s(function(e){return["rok","roku","roky","let"][h(e)]},function(e){return["měsíc","měsíce","měsíce","měsíců"][h(e)]},function(e){return["týden","týdne","týdny","týdnů"][h(e)]},function(e){return["den","dne","dny","dní"][h(e)]},function(e){return["hodina","hodiny","hodiny","hodin"][h(e)]},function(e){return["minuta","minuty","minuty","minut"][h(e)]},function(e){return["sekunda","sekundy","sekundy","sekund"][h(e)]},function(e){return["milisekunda","milisekundy","milisekundy","milisekund"][h(e)]},","),cy:s("flwyddyn","mis","wythnos","diwrnod","awr","munud","eiliad","milieiliad"),da:u(["år","år"],["måned","måneder"],["uge","uger"],["dag","dage"],["time","timer"],["minut","minutter"],["sekund","sekunder"],["millisekund","millisekunder"],","),de:u(["Jahr","Jahre"],["Monat","Monate"],["Woche","Wochen"],["Tag","Tage"],["Stunde","Stunden"],["Minute","Minuten"],["Sekunde","Sekunden"],["Millisekunde","Millisekunden"],","),el:i,en:u(["year","years"],["month","months"],["week","weeks"],["day","days"],["hour","hours"],["minute","minutes"],["second","seconds"],["millisecond","milliseconds"]),eo:u(["jaro","jaroj"],["monato","monatoj"],["semajno","semajnoj"],["tago","tagoj"],["horo","horoj"],["minuto","minutoj"],["sekundo","sekundoj"],["milisekundo","milisekundoj"],","),es:u(["año","años"],["mes","meses"],["semana","semanas"],["día","días"],["hora","horas"],["minuto","minutos"],["segundo","segundos"],["milisegundo","milisegundos"],","),et:u(["aasta","aastat"],["kuu","kuud"],["nädal","nädalat"],["päev","päeva"],["tund","tundi"],["minut","minutit"],["sekund","sekundit"],["millisekund","millisekundit"],","),eu:s("urte","hilabete","aste","egun","ordu","minutu","segundo","milisegundo",","),fa:s("سال","ماه","هفته","روز","ساعت","دقیقه","ثانیه","میلی ثانیه"),fi:u(["vuosi","vuotta"],["kuukausi","kuukautta"],["viikko","viikkoa"],["päivä","päivää"],["tunti","tuntia"],["minuutti","minuuttia"],["sekunti","sekuntia"],["millisekunti","millisekuntia"],","),fo:u(["ár","ár"],["mánaður","mánaðir"],["vika","vikur"],["dagur","dagar"],["tími","tímar"],["minuttur","minuttir"],["sekund","sekund"],["millisekund","millisekund"],","),fr:s(function(e){return"an"+(e>=2?"s":"")},"mois",function(e){return"semaine"+(e>=2?"s":"")},function(e){return"jour"+(e>=2?"s":"")},function(e){return"heure"+(e>=2?"s":"")},function(e){return"minute"+(e>=2?"s":"")},function(e){return"seconde"+(e>=2?"s":"")},function(e){return"milliseconde"+(e>=2?"s":"")},","),gr:i,he:u(["שנה","שנים"],["חודש","חודשים"],["שבוע","שבועות"],["יום","ימים"],["שעה","שעות"],["דקה","דקות"],["שניה","שניות"],["מילישנייה","מילישניות"]),hr:s(function(e){return e%10==2||e%10==3||e%10==4?"godine":"godina"},function(e){return 1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci"},function(e){return e%10==1&&11!==e?"tjedan":"tjedna"},o(["dan","dana"]),function(e){return 1===e?"sat":2===e||3===e||4===e?"sata":"sati"},function(e){var t=e%10;return(2===t||3===t||4===t)&&(e<10||e>14)?"minute":"minuta"},function(e){var t=e%10;if(5===t||Math.floor(e)===e&&e>=10&&e<=19);else if(1===t)return"sekunda";else if(2===t||3===t||4===t)return"sekunde";return"sekundi"},function(e){return 1===e?"milisekunda":e%10==2||e%10==3||e%10==4?"milisekunde":"milisekundi"},","),hi:s("साल",o(["महीना","महीने"]),o(["हफ़्ता","हफ्ते"]),"दिन",o(["घंटा","घंटे"]),"मिनट","सेकंड","मिलीसेकंड"),hu:s("év","hónap","hét","nap","óra","perc","másodperc","ezredmásodperc",","),id:s("tahun","bulan","minggu","hari","jam","menit","detik","milidetik"),is:u(["ár","ár"],["mánuður","mánuðir"],["vika","vikur"],["dagur","dagar"],["klukkutími","klukkutímar"],["mínúta","mínútur"],["sekúnda","sekúndur"],["millisekúnda","millisekúndur"]),it:u(["anno","anni"],["mese","mesi"],["settimana","settimane"],["giorno","giorni"],["ora","ore"],["minuto","minuti"],["secondo","secondi"],["millisecondo","millisecondi"],","),ja:s("年","ヶ月","週間","日","時間","分","秒","ミリ秒"),km:s("ឆ្នាំ","ខែ","សប្តាហ៍","ថ្ងៃ","ម៉ោង","នាទី","វិនាទី","មិល្លីវិនាទី"),kn:u(["ವರ್ಷ","ವರ್ಷಗಳು"],["ತಿಂಗಳು","ತಿಂಗಳುಗಳು"],["ವಾರ","ವಾರಗಳು"],["ದಿನ","ದಿನಗಳು"],["ಗಂಟೆ","ಗಂಟೆಗಳು"],["ನಿಮಿಷ","ನಿಮಿಷಗಳು"],["ಸೆಕೆಂಡ್","ಸೆಕೆಂಡುಗಳು"],["ಮಿಲಿಸೆಕೆಂಡ್","ಮಿಲಿಸೆಕೆಂಡುಗಳು"]),ko:s("년","개월","주일","일","시간","분","초","밀리 초"),ku:s("sal","meh","hefte","roj","seet","deqe","saniye","mîlîçirk",","),lo:s("ປີ","ເດືອນ","ອາທິດ","ມື້","ຊົ່ວໂມງ","ນາທີ","ວິນາທີ","ມິນລິວິນາທີ",","),lt:s(function(e){return e%10==0||e%100>=10&&e%100<=20?"metų":"metai"},function(e){return["mėnuo","mėnesiai","mėnesių"][p(e)]},function(e){return["savaitė","savaitės","savaičių"][p(e)]},function(e){return["diena","dienos","dienų"][p(e)]},function(e){return["valanda","valandos","valandų"][p(e)]},function(e){return["minutė","minutės","minučių"][p(e)]},function(e){return["sekundė","sekundės","sekundžių"][p(e)]},function(e){return["milisekundė","milisekundės","milisekundžių"][p(e)]},","),lv:s(function(e){return g(e)?"gads":"gadi"},function(e){return g(e)?"mēnesis":"mēneši"},function(e){return g(e)?"nedēļa":"nedēļas"},function(e){return g(e)?"diena":"dienas"},function(e){return g(e)?"stunda":"stundas"},function(e){return g(e)?"minūte":"minūtes"},function(e){return g(e)?"sekunde":"sekundes"},function(e){return g(e)?"milisekunde":"milisekundes"},","),mk:u(["година","години"],["месец","месеци"],["недела","недели"],["ден","дена"],["час","часа"],["минута","минути"],["секунда","секунди"],["милисекунда","милисекунди"],","),mn:s("жил","сар","долоо хоног","өдөр","цаг","минут","секунд","миллисекунд"),mr:s(o(["वर्ष","वर्षे"]),o(["महिना","महिने"]),o(["आठवडा","आठवडे"]),"दिवस","तास",o(["मिनिट","मिनिटे"]),"सेकंद","मिलिसेकंद"),ms:s("tahun","bulan","minggu","hari","jam","minit","saat","milisaat"),nl:u(["jaar","jaar"],["maand","maanden"],["week","weken"],["dag","dagen"],["uur","uur"],["minuut","minuten"],["seconde","seconden"],["milliseconde","milliseconden"],","),no:u(["år","år"],["måned","måneder"],["uke","uker"],["dag","dager"],["time","timer"],["minutt","minutter"],["sekund","sekunder"],["millisekund","millisekunder"],","),pl:s(function(e){return["rok","roku","lata","lat"][f(e)]},function(e){return["miesiąc","miesiąca","miesiące","miesięcy"][f(e)]},function(e){return["tydzień","tygodnia","tygodnie","tygodni"][f(e)]},function(e){return["dzień","dnia","dni","dni"][f(e)]},function(e){return["godzina","godziny","godziny","godzin"][f(e)]},function(e){return["minuta","minuty","minuty","minut"][f(e)]},function(e){return["sekunda","sekundy","sekundy","sekund"][f(e)]},function(e){return["milisekunda","milisekundy","milisekundy","milisekund"][f(e)]},","),pt:u(["ano","anos"],["mês","meses"],["semana","semanas"],["dia","dias"],["hora","horas"],["minuto","minutos"],["segundo","segundos"],["milissegundo","milissegundos"],","),ro:s(l("an","ani","de ani"),l("lună","luni","de luni"),l("săptămână","săptămâni","de săptămâni"),l("zi","zile","de zile"),l("oră","ore","de ore"),l("minut","minute","de minute"),l("secundă","secunde","de secunde"),l("milisecundă","milisecunde","de milisecunde"),","),ru:c(["лет","год","года"],["месяцев","месяц","месяца"],["недель","неделя","недели"],["дней","день","дня"],["часов","час","часа"],["минут","минута","минуты"],["секунд","секунда","секунды"],["миллисекунд","миллисекунда","миллисекунды"]),sq:s(o(["vit","vjet"]),"muaj","javë","ditë","orë",function(e){return"minut"+(1===e?"ë":"a")},function(e){return"sekond"+(1===e?"ë":"a")},function(e){return"milisekond"+(1===e?"ë":"a")},","),sr:c(["години","година","године"],["месеци","месец","месеца"],["недељи","недеља","недеље"],["дани","дан","дана"],["сати","сат","сата"],["минута","минут","минута"],["секунди","секунда","секунде"],["милисекунди","милисекунда","милисекунде"]),sr_Latn:c(["godini","godina","godine"],["meseci","mesec","meseca"],["nedelji","nedelja","nedelje"],["dani","dan","dana"],["sati","sat","sata"],["minuta","minut","minuta"],["sekundi","sekunda","sekunde"],["milisekundi","milisekunda","milisekunde"]),ta:u(["வருடம்","ஆண்டுகள்"],["மாதம்","மாதங்கள்"],["வாரம்","வாரங்கள்"],["நாள்","நாட்கள்"],["மணி","மணிநேரம்"],["நிமிடம்","நிமிடங்கள்"],["வினாடி","வினாடிகள்"],["மில்லி விநாடி","மில்லி விநாடிகள்"]),te:u(["సంవత్సరం","సంవత్సరాల"],["నెల","నెలల"],["వారం","వారాలు"],["రోజు","రోజులు"],["గంట","గంటలు"],["నిమిషం","నిమిషాలు"],["సెకను","సెకన్లు"],["మిల్లీసెకన్","మిల్లీసెకన్లు"]),uk:c(["років","рік","роки"],["місяців","місяць","місяці"],["тижнів","тиждень","тижні"],["днів","день","дні"],["годин","година","години"],["хвилин","хвилина","хвилини"],["секунд","секунда","секунди"],["мілісекунд","мілісекунда","мілісекунди"]),ur:s("سال",o(["مہینہ","مہینے"]),o(["ہفتہ","ہفتے"]),"دن",o(["گھنٹہ","گھنٹے"]),"منٹ","سیکنڈ","ملی سیکنڈ"),sk:s(function(e){return["rok","roky","roky","rokov"][h(e)]},function(e){return["mesiac","mesiace","mesiace","mesiacov"][h(e)]},function(e){return["týždeň","týždne","týždne","týždňov"][h(e)]},function(e){return["deň","dni","dni","dní"][h(e)]},function(e){return["hodina","hodiny","hodiny","hodín"][h(e)]},function(e){return["minúta","minúty","minúty","minút"][h(e)]},function(e){return["sekunda","sekundy","sekundy","sekúnd"][h(e)]},function(e){return["milisekunda","milisekundy","milisekundy","milisekúnd"][h(e)]},","),sl:s(function(e){return e%10==1?"leto":e%100==2?"leti":e%100==3||e%100==4||Math.floor(e)!==e&&e%100<=5?"leta":"let"},function(e){return e%10==1?"mesec":e%100==2||Math.floor(e)!==e&&e%100<=5?"meseca":e%10==3||e%10==4?"mesece":"mesecev"},function(e){return e%10==1?"teden":e%10==2||Math.floor(e)!==e&&e%100<=4?"tedna":e%10==3||e%10==4?"tedne":"tednov"},function(e){return e%100==1?"dan":"dni"},function(e){return e%10==1?"ura":e%100==2?"uri":e%10==3||e%10==4||Math.floor(e)!==e?"ure":"ur"},function(e){return e%10==1?"minuta":e%10==2?"minuti":e%10==3||e%10==4||Math.floor(e)!==e&&e%100<=4?"minute":"minut"},function(e){return e%10==1?"sekunda":e%100==2?"sekundi":e%100==3||e%100==4||Math.floor(e)!==e?"sekunde":"sekund"},function(e){return e%10==1?"milisekunda":e%100==2?"milisekundi":e%100==3||e%100==4||Math.floor(e)!==e?"milisekunde":"milisekund"},","),sv:u(["år","år"],["månad","månader"],["vecka","veckor"],["dag","dagar"],["timme","timmar"],["minut","minuter"],["sekund","sekunder"],["millisekund","millisekunder"],","),sw:n(u(["mwaka","miaka"],["mwezi","miezi"],["wiki","wiki"],["siku","masiku"],["saa","masaa"],["dakika","dakika"],["sekunde","sekunde"],["milisekunde","milisekunde"]),{_numberFirst:!0}),tr:s("yıl","ay","hafta","gün","saat","dakika","saniye","milisaniye",","),th:s("ปี","เดือน","สัปดาห์","วัน","ชั่วโมง","นาที","วินาที","มิลลิวินาที"),uz:s("yil","oy","hafta","kun","soat","minut","sekund","millisekund"),uz_CYR:s("йил","ой","ҳафта","кун","соат","минут","секунд","миллисекунд"),vi:s("năm","tháng","tuần","ngày","giờ","phút","giây","mili giây",","),zh_CN:s("年","个月","周","天","小时","分钟","秒","毫秒"),zh_TW:s("年","個月","周","天","小時","分鐘","秒","毫秒")};function s(e,t,n,r,i,a,s,o,u){var l={y:e,mo:t,w:n,d:r,h:i,m:a,s:s,ms:o};return u&&(l.decimal=u),l}function o(e){return function(t){return 1===t?e[0]:e[1]}}function u(e,t,n,r,i,a,u,l,d){return s(o(e),o(t),o(n),o(r),o(i),o(a),o(u),o(l),d)}function l(e,t,n){return function(r){if(1===r)return e;if(Math.floor(r)!==r||0===r)return t;var i=r%100;return i>=1&&i<=19?t:n}}function d(e){return function(t){return Math.floor(t)!==t?e[2]:t%100>=5&&t%100<=20||t%10>=5&&t%10<=9||t%10==0?e[0]:t%10==1?e[1]:t>1?e[2]:e[1]}}function c(e,t,n,r,i,a,o,u){return s(d(e),d(t),d(n),d(r),d(i),d(a),d(o),d(u),",")}function m(e){return 2===e?1:2*(e>2&&e<11)}function f(e){return 1===e?0:Math.floor(e)!==e?1:e%10>=2&&e%10<=4&&!(e%100>10&&e%100<20)?2:3}function h(e){return 1===e?0:Math.floor(e)!==e?1:e%10>=2&&e%10<=4&&e%100<10?2:3}function p(e){return 1===e||e%10==1&&e%100>20?0:Math.floor(e)!==e||e%10>=2&&e%100>20||e%10>=2&&e%100<10?1:2}function g(e){return e%10==1&&e%100!=11}function b(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function y(e,t,n){var r,i,a,s,o=e.unitName,u=e.unitCount,l=n.spacer,d=n.maxDecimalPoints;r=b(n,"decimal")?n.decimal:b(t,"decimal")?t.decimal:".","digitReplacements"in n?i=n.digitReplacements:"_digitReplacements"in t&&(i=t._digitReplacements);var c=(void 0===d?u:Math.floor(u*Math.pow(10,d))/Math.pow(10,d)).toString();if(t._hideCountIf2&&2===u)a="",l="";else if(i){a="";for(var m=0;m<c.length;m++){var f=c[m];"."===f?a+=r:a+=i[f]}}else a=c.replace(".",r);var h=t[o];return(s="function"==typeof h?h(u):h,t._numberFirst)?s+l+a:a+l+s}function k(e){var t=function(e,i){e=Math.abs(e);var s=n({},t,i||{});return function(e,t){var n,i=function(e){var t=[e.language];if(b(e,"fallbacks"))if(r(e.fallbacks)&&e.fallbacks.length)t=t.concat(e.fallbacks);else throw Error("fallbacks must be an array with at least one element");for(var n=0;n<t.length;n++){var i=t[n];if(b(e.languages,i))return e.languages[i];if(b(a,i))return a[i]}throw Error("No language found.")}(t);if(!e.length){var s=t.units;return y({unitName:s[s.length-1],unitCount:0},i,t)}var o=t.conjunction,u=t.serialComma;n=b(t,"delimiter")?t.delimiter:b(i,"delimiter")?i.delimiter:", ";for(var l=[],d=0;d<e.length;d++)l.push(y(e[d],i,t));return o&&1!==e.length?2===e.length?l.join(o):l.slice(0,-1).join(n)+(u?",":"")+o+l.slice(-1):l.join(n)}(function(e,t){var n,r,i,a,s=t.units,o=t.unitMeasures,u="largest"in t?t.largest:1/0;if(!s.length)return[];var l={};for(r=0,a=e;r<s.length;r++){var d=o[n=s[r]];i=r===s.length-1?a/d:Math.floor(a/d),l[n]=i,a-=i*d}if(t.round){var c=u;for(r=0;r<s.length;r++)if(0!==(i=l[n=s[r]])&&0==--c){for(var m=r+1;m<s.length;m++){var f=s[m],h=l[f];l[n]+=h*o[f]/o[n],l[f]=0}break}for(r=s.length-1;r>=0;r--)if(0!==(i=l[n=s[r]])){var p=Math.round(i);if(l[n]=p,0===r)break;var g=s[r-1],b=o[g],y=Math.floor(p*o[n]/b);if(y)l[g]+=y,l[n]=0;else break}}var k=[];for(r=0;r<s.length&&k.length<u;r++)(i=l[n=s[r]])&&k.push({unitName:n,unitCount:i});return k}(e,s),s)};return n(t,{language:"en",spacer:" ",conjunction:"",serialComma:!0,units:["y","mo","w","d","h","m","s"],languages:{},round:!1,unitMeasures:{y:315576e5,mo:26298e5,w:6048e5,d:864e5,h:36e5,m:6e4,s:1e3,ms:1}},e)}var v=n(k({}),{getSupportedLanguages:function(){var e=[];for(var t in a)b(a,t)&&"gr"!==t&&e.push(t);return e},humanizer:k});if("function"==typeof define&&define.amd)e.r,void 0!==v&&e.v(v);else t.exports?t.exports=v:this.humanizeDuration=v}()},32584,1800,e=>{"use strict";var t=e.i(86688);let n=e=>e.toString().padStart(2,"0");e.s(["format_duration",0,function(e,r="humanized",i=!1){if("clock"===r){let t,r,i;return r=Math.floor((t=Math.round(Math.abs(e)/1e3))/3600),i=Math.floor(t%3600/60),`${e<0?"-":""}${n(r)}:${n(i)}:${n(t%60)}`}return"decimal"===r?`${(e/36e5).toFixed(2)}h`:(0,t.default)(e,{largest:i?3:2,round:!i,spacer:" ",delimiter:" "})}],32584);var r=e.i(29158),i=e.i(8492);e.s(["use_duration_format",0,function(){return(0,r.useSyncExternalStore)(i.duration_format_preference.subscribe,i.duration_format_preference.get_snapshot,i.duration_format_preference.get_server_snapshot)}],1800)},6690,93749,e=>{"use strict";let t="super-time-tracker-pinned-sheet-names",n=new Set,r=[],i=null;function a(){try{let e=window.localStorage.getItem(t);if(null===e)return[];let n=JSON.parse(e);if(!Array.isArray(n))return[];return n.filter(e=>"string"==typeof e)}catch{return[]}}function s(e){try{window.localStorage.setItem(t,JSON.stringify(e))}catch{}i=null,n.forEach(e=>{e()})}e.s(["get_pinned_sheet_names_server_snapshot",0,function(){return r},"get_pinned_sheet_names_snapshot",0,function(){var e=a();if(0===e.length)return r;let t=e.join("\0");if(null!==i&&i.key===t)return i.snapshot;let n=Object.freeze([...e]);return i={key:t,snapshot:n},n},"read_pinned_sheet_names",0,a,"subscribe_pinned_sheet_names",0,function(e){return n.add(e),()=>{n.delete(e)}},"write_pinned_sheet_names",0,s],6690),e.s(["toggle_pinned_sheet_name",0,function(e){let t=e.trim();if(0===t.length)return;let n=a(),r=n.indexOf(t);r>=0?s([...n.slice(0,r),...n.slice(r+1)]):s([...n,t])}],93749)},71610,e=>{"use strict";var t=e.i(54710),n=e.i(29158),r=e.i(45958),i=e.i(25402),a=e.i(26313),s=e.i(36145),o=e.i(72424),u=e.i(16913),l=e.i(29263),d=e.i(8627),c=e.i(32584),m=e.i(67321);function f({row:e,duration_format:n,is_pinned:h,on_toggle_pin:p}){let g=function(e){var t;if(null===e)return"No activity";let n=new Date(e);return Number.isNaN(+n)?"No activity":(t={addSuffix:!0,roundingMethod:"floor"},function(e,t,n){var r;let i,c,m=(0,s.getDefaultOptions)(),f=n?.locale??m.locale??a.defaultLocale,h=(c=(0,l.toDate)(e)-(0,l.toDate)(t))<0?-1:c>0?1:c;if(isNaN(h))throw RangeError("Invalid time value");let p=Object.assign({},n,{addSuffix:n?.addSuffix,comparison:h}),[g,b]=(0,u.normalizeDates)(n?.in,...h>0?[t,e]:[e,t]),y=(r=n?.roundingMethod??"round",e=>{let t=(r?Math[r]:Math.trunc)(e);return 0===t?0:t}),k=b.getTime()-g.getTime(),v=k/d.millisecondsInMinute,x=(k-((0,o.getTimezoneOffsetInMilliseconds)(b)-(0,o.getTimezoneOffsetInMilliseconds)(g)))/d.millisecondsInMinute,_=n?.unit;if("second"===(i=_||(v<1?"second":v<60?"minute":v<d.minutesInDay?"hour":x<d.minutesInMonth?"day":x<d.minutesInYear?"month":"year"))){let e=y(k/1e3);return f.formatDistance("xSeconds",e,p)}if("minute"===i){let e=y(v);return f.formatDistance("xMinutes",e,p)}if("hour"===i){let e=y(v/60);return f.formatDistance("xHours",e,p)}if("day"===i){let e=y(x/d.minutesInDay);return f.formatDistance("xDays",e,p)}if("month"===i){let e=y(x/d.minutesInMonth);return 12===e&&"month"!==_?f.formatDistance("xYears",1,p):f.formatDistance("xMonths",e,p)}else{let e=y(x/d.minutesInYear);return f.formatDistance("xYears",e,p)}}(n,(0,i.constructFrom)(n,Date.now()),t))}(e.lastActivityAt);return(0,t.jsxs)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("h2",{className:"m-0 min-w-0 truncate text-[1rem] font-semibold",children:e.sheetName}),e.hasActiveEntry?(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-accent px-2 py-0.5 text-[0.68rem] font-bold uppercase leading-none tracking-wider text-accent-text-on",children:"Tracking"}):null]}),(0,t.jsxs)("p",{className:"m-0 mt-1.5 flex flex-wrap gap-x-3 gap-y-0.5 text-[0.82rem] text-muted",children:[(0,t.jsx)("span",{children:g}),(0,t.jsxs)("span",{children:[e.entryCount," ",1===e.entryCount?"entry":"entries"]})]})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,t.jsx)("button",{type:"button",className:"cursor-pointer rounded-md border-0 bg-transparent px-2 py-1 text-[0.9rem] text-muted hover:bg-surface-hover hover:text-foreground","aria-pressed":h,"aria-label":h?`Unpin ${e.sheetName}`:`Pin ${e.sheetName}`,onClick:p,children:h?"★":"☆"}),(0,t.jsx)(r.default,{href:"/",className:"rounded-md px-2.5 py-1 text-[0.82rem] font-semibold text-accent no-underline hover:bg-accent-soft",onClick:()=>(0,m.navigate_to_tracker_sheet)(e.sheetName),children:"Open"})]})]}),(0,t.jsxs)("div",{className:"mt-3 grid grid-cols-2 gap-2",children:[(0,t.jsxs)("div",{className:"rounded-md bg-surface-raised px-2.5 py-2",children:[(0,t.jsx)("p",{className:"m-0 text-[0.68rem] font-semibold uppercase tracking-[0.05em] text-muted",children:"This week"}),(0,t.jsx)("p",{className:"m-0 mt-0.5 font-mono text-[0.9rem] font-semibold text-accent",children:(0,c.format_duration)(e.weekTotalMs,n)})]}),(0,t.jsxs)("div",{className:"rounded-md bg-surface-raised px-2.5 py-2",children:[(0,t.jsx)("p",{className:"m-0 text-[0.68rem] font-semibold uppercase tracking-[0.05em] text-muted",children:"This month"}),(0,t.jsx)("p",{className:"m-0 mt-0.5 font-mono text-[0.9rem] font-semibold text-accent",children:(0,c.format_duration)(e.monthTotalMs,n)})]})]})]})}var h=e.i(75404),p=e.i(6690),g=e.i(93749),b=e.i(1800);e.s(["SheetHubView",0,function({rows:e}){let r=(0,b.use_duration_format)(),i=new Set((0,n.useSyncExternalStore)(p.subscribe_pinned_sheet_names,p.get_pinned_sheet_names_snapshot,p.get_pinned_sheet_names_server_snapshot)),a=(0,n.useMemo)(()=>[...e].sort((e,t)=>{if(e.hasActiveEntry!==t.hasActiveEntry)return e.hasActiveEntry?-1:1;let n=null===e.lastActivityAt?0:+new Date(e.lastActivityAt);return(null===t.lastActivityAt?0:+new Date(t.lastActivityAt))-n}),[e]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(h.TrackerTopbar,{breadcrumb:{current:"Sheets"}}),(0,t.jsxs)("main",{className:"mx-auto flex w-full max-w-2xl flex-col items-center gap-6 px-5 pb-12 pt-6",children:[(0,t.jsxs)("header",{className:"flex w-full flex-col gap-2 text-center",children:[(0,t.jsx)("h1",{className:"m-0 text-[1.5rem] font-[650] tracking-tight",children:"Sheets"}),(0,t.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:"Quick overview of every project. Pin sheets to filter the Today view."})]}),0===a.length?(0,t.jsx)("p",{className:"m-0 text-center text-[0.9rem] text-muted",children:"No sheets yet. Create one from the tracker."}):(0,t.jsx)("ul",{className:"m-0 flex w-full list-none flex-col gap-2 p-0","aria-label":"Sheet summaries",children:a.map(e=>(0,t.jsx)(f,{row:e,duration_format:r,is_pinned:i.has(e.sheetName),on_toggle_pin:()=>(0,g.toggle_pinned_sheet_name)(e.sheetName)},e.sheetName))})]})]})}],71610)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,42552,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(44066)._(e.r(78677)),l=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(a.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||l.test(n))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${s}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},37879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let n=e.r(29158);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=a(e,n)),t&&(s.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},59246,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(31047),s=e.r(63334);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},10364,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},45958,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return b},useLinkStatus:function(){return _}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(44066),l=e.r(54710),o=a._(e.r(29158)),i=e.r(42552),c=e.r(61717),u=e.r(37879),d=e.r(31047),h=e.r(20321);e.r(90503);let f=e.r(38520),m=e.r(19947),p=e.r(59246),g=e.r(99046);function b(t){var r,n;let s,a,b,[_,y]=(0,o.useOptimistic)(m.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:j,as:w,children:k,prefetch:N=null,passHref:S,replace:C,shallow:P,scroll:E,onClick:T,onMouseEnter:L,onTouchStart:O,legacyBehavior:A=!1,onNavigate:R,transitionTypes:M,ref:W,unstable_dynamicOnHover:$,...D}=t;s=k,A&&("string"==typeof s||"number"==typeof s)&&(s=(0,l.jsx)("a",{children:s}));let U=o.default.useContext(c.AppRouterContext),I=!1!==N,q=!1!==N?null===(n=N)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,B="string"==typeof(r=w||j)?r:(0,i.formatUrl)(r);if(A){if(s?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=o.default.Children.only(s)}let K=A?a&&"object"==typeof a&&a.ref:W,F=o.default.useCallback(e=>(null!==U&&(v.current=(0,m.mountLinkInstance)(e,B,U,q,I,y)),()=>{v.current&&((0,m.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,m.unmountPrefetchableInstance)(e)}),[I,B,U,q,y]),z={ref:(0,u.useMergedRef)(F,K),onClick(t){A||"function"!=typeof T||T(t),A&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!U||t.defaultPrevented||function(t,r,n,s,a,l,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){s&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(91087);o.default.startTransition(()=>{d(r,s?"replace":"push",!1===a?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,n.current,i)})}}(t,B,v,C,E,R,M)},onMouseEnter(e){A||"function"!=typeof L||L(e),A&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),U&&I&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){A||"function"!=typeof O||O(e),A&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),U&&I&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,d.isAbsoluteUrl)(B)?z.href=B:A&&!S&&("a"!==a.type||"href"in a.props)||(z.href=(0,h.addBasePath)(B)),b=A?o.default.cloneElement(a,z):(0,l.jsx)("a",{...D,...z,children:s}),(0,l.jsx)(x.Provider,{value:_,children:b})}e.r(10364);let x=(0,o.createContext)(m.IDLE_LINK_STATUS),_=()=>(0,o.useContext)(x);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},90463,e=>{"use strict";e.s(["build_auth_page_href",0,function(e,t){let r="sign_in"===e?"/login":"/register",n=t.trim();return 0===n.length||"/"===n?r:`${r}?next=${encodeURIComponent(n)}`}])},77882,e=>{"use strict";var t=e.i(71060),r=e.i(29158),n=e.i(83105),s=e.i(32417),a=e.i(46549);e.s(["use_supabase_auth_session",0,function(){let e=(0,t.useRouter)(),[l,o]=(0,r.useState)(null),[i,c]=(0,r.useState)(!1),u=(0,s.is_supabase_configured)();return(0,r.useEffect)(()=>{if(!u)return;let e=(0,n.create_browser_supabase_client)();e.auth.getSession().then(({data:{session:e}})=>{o(e?.user.email??null)}).catch(()=>{o(null)});let{data:{subscription:t}}=e.auth.onAuthStateChange((e,t)=>{o(t?.user.email??null)});return()=>{t.unsubscribe()}},[u]),{is_configured:u,email:l,is_pending:i,sign_out:(0,r.useCallback)(async()=>{c(!0);try{await fetch("/api/auth/signout",{method:"POST"});let t=(0,n.create_browser_supabase_client)();await t.auth.signOut().catch(()=>{}),(0,a.notify_settings_saved)("Signed out"),e.refresh()}finally{c(!1)}},[e])}}])},45200,648,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060);let s=[{href:"/",label:"Tracker",match:e=>"/"===e}];function a(){return(0,t.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,t.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"})})}e.s(["TrackerNavLinks",0,function(){let e=(0,n.usePathname)()??"/";return(0,t.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:s.map(n=>{let s=n.match(e);return(0,t.jsx)(r.default,{className:`rounded-full px-3 py-1.5 text-[0.85rem] font-semibold no-underline transition-colors duration-150 shrink-0 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,href:n.href,"aria-current":s?"page":void 0,children:n.label},n.href)})})}],45200);var l=e.i(77882);e.s(["TopbarCloudStatus",0,function(){let{email:e,is_configured:r}=(0,l.use_supabase_auth_session)();return r&&null!==e?(0,t.jsxs)("div",{className:"group relative flex items-center",children:[(0,t.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 ${e}`,role:"img",children:(0,t.jsx)(a,{})}),(0,t.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,t.jsxs)("div",{className:"rounded-md border border-panel-border bg-panel px-2.5 py-1.5 shadow-md",children:[(0,t.jsx)("p",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.04em] text-muted",children:"Signed in as"}),(0,t.jsx)("p",{className:"m-0 max-w-[16rem] truncate text-[0.82rem] font-medium",title:e,children:e})]})})]}):null}],648)},37399,e=>{"use strict";var t=e.i(54710);e.s(["HamburgerIcon",0,function(){return(0,t.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,t.jsx)("path",{d:"M4 7h16"}),(0,t.jsx)("path",{d:"M4 12h16"}),(0,t.jsx)("path",{d:"M4 17h16"})]})}])},73205,2268,76003,38240,e=>{"use strict";let t=new Set(e.i(22373).topbar_quick_action_ids),r=["today","search","reporting","pomodoro"];e.s(["parse_topbar_quick_actions",0,function(e){try{let n=JSON.parse(e);if(!Array.isArray(n))return r;let s=n.filter(e=>"string"==typeof e&&t.has(e));return Array.from(new Set(s))}catch{return r}}],73205);var n=e.i(34869),s=e.i(92629);let a=(0,n.create_ui_preference_store)({storage_key:s.CLOUD_SYNC_ENABLED_STORAGE_KEY,default_value:s.CLOUD_SYNC_ENABLED_DEFAULT,is_valid:e=>"true"===e||"false"===e});function l(){return"u"<typeof document?"dark":"light"===document.documentElement.getAttribute("data-theme")?"light":"dark"}e.s(["cloud_sync_enabled_preference",0,a],2268),e.s(["get_theme_server_snapshot",0,function(){return"dark"},"get_theme_snapshot",0,function(){return l()}],76003);var o=e.i(17798),i=e.i(46549),c=e.i(10464),u=e.i(35434),d=e.i(61834),h=e.i(81553);e.s(["toggle_theme",0,function(){let e="dark"===l()?"light":"dark";(0,o.apply_theme)(e),(0,h.write_stored_theme)(e),c.theme_mode_preference.write(e),(0,d.write_document_preference_cookies)({theme_mode:e,theme:e}),c.theme_mode_preference.notify(),(0,u.notify_theme_subscribers)(),(0,i.notify_settings_saved)()}],38240)},25204,e=>{"use strict";var t=e.i(29158),r=e.i(72074);e.s(["use_escape_to_cancel",0,function(e,n=!0){let s=(0,t.useRef)(e);s.current=e,(0,t.useEffect)(()=>{if(!n)return;let e=e=>{"Escape"!==e.key||(0,r.is_modal_dialog_open)()||(e.preventDefault(),s.current())};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[n])}])},1976,76080,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060),s=e.i(29158),a=e.i(37399),l=e.i(90463),o=e.i(46549),i=e.i(73205),c=e.i(66295),u=e.i(2268),d=e.i(32792),h=e.i(90299),f=e.i(28274),m=e.i(76003),p=e.i(35434),g=e.i(38240),b=e.i(22373),x=e.i(25204),_=e.i(77882);let y="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"},search:{href:"/search",label:"Search"},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"}},j=new Set(["manage-tags","pomodoro","sync-settings"]);e.s(["TopbarOverflowMenu",0,function(){let e=(0,n.useRouter)(),w=(0,n.usePathname)()??"/",k=(0,s.useSyncExternalStore)(p.subscribe_theme,m.get_theme_snapshot,m.get_theme_server_snapshot),N=(0,s.useSyncExternalStore)(u.cloud_sync_enabled_preference.subscribe,u.cloud_sync_enabled_preference.get_snapshot,u.cloud_sync_enabled_preference.get_server_snapshot),S=(0,s.useSyncExternalStore)(h.tracker_shortcut_map_preference.subscribe,h.tracker_shortcut_map_preference.get_snapshot,h.tracker_shortcut_map_preference.get_server_snapshot),C=(0,s.useSyncExternalStore)(d.topbar_quick_actions_preference.subscribe,d.topbar_quick_actions_preference.get_snapshot,d.topbar_quick_actions_preference.get_server_snapshot),P=(0,c.parse_tracker_shortcut_map)(S),E=new Set((0,i.parse_topbar_quick_actions)(C)),T=b.topbar_quick_action_ids.filter(e=>!E.has(e)),L=Array.from(new Set([...Array.from(j),...T])),{email:O,is_configured:A,is_pending:R,sign_out:M}=(0,_.use_supabase_auth_session)(),[W,$]=(0,s.useState)(!1),D=(0,s.useRef)(null);(0,s.useEffect)(()=>{if(!W)return;let e=e=>{null===D.current||D.current.contains(e.target)||$(!1)};return document.addEventListener("pointerdown",e),()=>{document.removeEventListener("pointerdown",e)}},[W]);let U=()=>{$(!1)};return(0,x.use_escape_to_cancel)(U,W),(0,t.jsxs)("div",{className:"relative shrink-0",ref:D,children:[(0,t.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":W,"aria-haspopup":"menu",onClick:()=>$(e=>!e),children:(0,t.jsx)(a.HamburgerIcon,{})}),W?(0,t.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:[A&&null!==O?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("p",{className:"m-0 truncate px-2.5 py-1 text-[0.72rem] uppercase tracking-[0.04em] text-muted",title:O,children:O})}):null,L.map(e=>{let n=v[e];return(0,t.jsx)("li",{role:"none",children:(0,t.jsx)(r.default,{href:n.href,className:y,role:"menuitem",onClick:U,children:n.label})},e)}),A?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitemcheckbox","aria-checked":"true"===N,onClick:()=>{let e="true"===N?"false":"true";u.cloud_sync_enabled_preference.write(e),u.cloud_sync_enabled_preference.notify(),(0,o.notify_settings_saved)("true"===e?"Cloud sync enabled":"Cloud sync disabled"),"true"===e&&null!==O&&(0,f.run_tracker_db_cloud_sync)({merge_on_load:!0}).catch(()=>{})},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"true"===N?"Pause cloud sync":"Resume cloud sync"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"true"===N?"On":"Off"})]})})}):null,(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{U(),(0,g.toggle_theme)()},suppressHydrationWarning:!0,children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsxs)("span",{children:["dark"===k?"Dark":"Light"," theme"]}),(0,t.jsx)("span",{"aria-hidden":"true",children:"dark"===k?"☾":"☀"})]})})}),(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{let e;U(),e=P.help,document.dispatchEvent(new KeyboardEvent("keydown",{key:e,shiftKey:"?"===e,bubbles:!0}))},children:(0,t.jsxs)("span",{className:"inline-flex w-full items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:"Keyboard shortcuts"}),(0,t.jsx)("span",{className:"text-muted","aria-hidden":"true",children:"(?)"})]})})}),A?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"my-1 border-t border-panel-border",role:"separator","aria-hidden":"true"}),null===O?(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:y,role:"menuitem",onClick:()=>{U(),e.push((0,l.build_auth_page_href)("sign_in",w))},children:"Sign in"})}):(0,t.jsx)("li",{role:"none",children:(0,t.jsx)("button",{type:"button",className:`${y} text-danger`,role:"menuitem",disabled:R,onClick:()=>{U(),M()},children:R?"Signing out…":"Sign out"})})]}):null]}):null]})}],1976);let w=[{id:"today",href:"/today",label:"Today"},{id:"search",href:"/search",label:"Search"},{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"}];e.s(["TopbarQuickActions",0,function(){let e=(0,n.usePathname)()??"/",a=(0,s.useSyncExternalStore)(d.topbar_quick_actions_preference.subscribe,d.topbar_quick_actions_preference.get_snapshot,d.topbar_quick_actions_preference.get_server_snapshot),l=(0,s.useMemo)(()=>(0,i.parse_topbar_quick_actions)(a),[a]);if(0===l.length)return null;let o=w.filter(e=>l.includes(e.id));return 0===o.length?null:(0,t.jsx)("div",{className:"hidden items-center gap-1 min-[980px]:flex",children:o.map(n=>{let s=e.startsWith(n.href);return(0,t.jsx)(r.default,{href:n.href,className:`rounded-full px-2.5 py-1 text-[0.78rem] font-semibold no-underline transition-colors duration-150 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,"aria-current":s?"page":void 0,children:n.label},n.id)})})}],76080)},29539,e=>{"use strict";var t=e.i(54710);e.s(["SettingsIcon",0,function(){return(0,t.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,t.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,t.jsx)("circle",{cx:"12",cy:"12",r:"3"})]})}])},75404,e=>{"use strict";var t=e.i(54710),r=e.i(45200),n=e.i(648),s=e.i(1976),a=e.i(76080),l=e.i(45958),o=e.i(71060),i=e.i(29539);function c(){let e=((0,o.usePathname)()??"/").startsWith("/settings");return(0,t.jsx)(l.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${e?" border-accent-border text-foreground":""}`,"aria-label":"Settings","aria-current":e?"page":void 0,children:(0,t.jsx)(i.SettingsIcon,{})})}function u({current:e,parent:r}){return(0,t.jsx)("nav",{"aria-label":"Breadcrumb",className:"min-w-0 text-left",children:(0,t.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,t.jsx)("li",{children:(0,t.jsx)(l.default,{className:"text-muted no-underline hover:text-foreground",href:"/",children:"Tracker"})}),void 0!==r?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{children:void 0!==r.href?(0,t.jsx)(l.default,{className:"max-w-44 truncate text-muted no-underline hover:text-foreground sm:max-w-none",href:r.href,children:r.label}):(0,t.jsx)("span",{className:"max-w-44 truncate text-muted sm:max-w-none",children:r.label})})]}):null,(0,t.jsx)("li",{className:"text-muted","aria-hidden":"true",children:"/"}),(0,t.jsx)("li",{className:"max-w-44 truncate font-medium text-foreground sm:max-w-none","aria-current":"page",children:e})]})})}e.s(["TrackerTopbar",0,function({breadcrumb:e}={}){return(0,t.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,t.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,t.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!==e?(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)(u,{current:e.current,parent:e.parent})}):null,(0,t.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,t.jsx)(r.TrackerNavLinks,{}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-end gap-2",children:[(0,t.jsx)(a.TopbarQuickActions,{}),(0,t.jsx)(n.TopbarCloudStatus,{}),(0,t.jsx)(c,{}),(0,t.jsx)(s.TopbarOverflowMenu,{})]})]})]})})}],75404)},42800,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060);let s=[{href:"/settings",label:"General",match:e=>"/settings"===e},{href:"/settings/display",label:"Display & layout",match:e=>e.startsWith("/settings/display")},{href:"/settings/quick-actions",label:"Quick actions",match:e=>e.startsWith("/settings/quick-actions")},{href:"/settings/goals",label:"Goals",match:e=>e.startsWith("/settings/goals")},{href:"/settings/pomodoro",label:"Pomodoro",match:e=>e.startsWith("/settings/pomodoro")},{href:"/settings/notifications",label:"Notifications",match:e=>e.startsWith("/settings/notifications")},{href:"/settings/ai-suggestions",label:"AI suggestions",match:e=>e.startsWith("/settings/ai-suggestions")},{href:"/settings/cloud-sync",label:"Sync",match:e=>e.startsWith("/settings/cloud-sync")},{href:"/settings/data",label:"Data & backup",match:e=>e.startsWith("/settings/data")},{href:"/settings/tags",label:"Tag management",match:e=>e.startsWith("/settings/tags")}];e.s(["SettingsNav",0,function(){let e=(0,n.usePathname)()??"/settings";return(0,t.jsx)("nav",{"aria-label":"Settings sections",className:"w-full",children:(0,t.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:s.map(n=>{let s=n.match(e);return(0,t.jsx)("li",{className:"shrink-0 min-[861px]:shrink",children:(0,t.jsx)(r.default,{href:n.href,"aria-current":s?"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 ${s?"bg-accent-soft text-foreground":"text-muted hover:bg-surface-hover hover:text-foreground"}`,children:n.label})},n.href)})})})}])},7902,e=>{"use strict";var t=e.i(46549);e.s(["persist_ui_preference",0,function(e,r){e.read()!==r&&(e.write(r),e.notify(),(0,t.notify_settings_saved)())}])},88019,e=>{"use strict";var t=e.i(54710),r=e.i(45958),n=e.i(71060),s=e.i(90463),a=e.i(52663),l=e.i(77882);e.s(["CloudAccountSetting",0,function(){let e=(0,n.usePathname)()??"/settings/cloud-sync",{email:o,is_configured:i,is_pending:c,sign_out:u}=(0,l.use_supabase_auth_session)();if(!i)return null;let d=(0,s.build_auth_page_href)("sign_in",e);return(0,t.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Account"}),(0,t.jsx)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:"When signed in, tracker data and settings sync to your Supabase project instead of the local db.json file."})]}),null===o?(0,t.jsx)(r.default,{href:d,className:`${(0,a.get_button_class_name)("primary","small")} self-start no-underline`,children:"Sign in to enable cloud sync"}):(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("p",{className:"m-0 text-[0.85rem]",children:["Signed in as ",(0,t.jsx)("span",{className:"font-semibold",children:o})]}),(0,t.jsx)("button",{type:"button",className:`${(0,a.get_button_class_name)("ghost","small")} self-start`,disabled:c,onClick:()=>void u(),children:c?"Signing out…":"Sign out"})]})]})}])},98516,e=>{"use strict";var t=e.i(54710),r=e.i(71060),n=e.i(29158),s=e.i(14974),a=e.i(37193),l=e.i(52663),o=e.i(28274),i=e.i(77882);e.s(["CloudSyncActions",0,function(){let e=(0,r.useRouter)(),{confirm:c}=(0,s.useConfirmDialog)(),{email:u,is_configured:d}=(0,i.use_supabase_auth_session)(),[h,f]=(0,n.useState)(null),[m,p]=(0,n.useState)(!0),[g,b]=(0,n.useState)(null),[x,_]=(0,n.useState)(null),[y,v]=(0,n.useState)(null),j=async()=>{try{let e=await fetch("/api/sync/status");if(!e.ok)throw Error("Failed to load sync status");let t=await e.json();f(t)}catch(e){v((0,a.message_from_unknown_error)(e,"Failed to load sync status"))}finally{p(!1)}};if((0,n.useEffect)(()=>{d?j():p(!1)},[d,u]),!d||null===u)return null;let w=async t=>{if(await c("push"===t?{title:"Push local to cloud?",message:"Merge your local db.json into the cloud database. Entries with the same id are combined; local data wins when they conflict.",confirmLabel:"Push to cloud",variant:"danger"}:{title:"Pull cloud to local?",message:"Merge the cloud database into your local db.json. Entries with the same id are combined; cloud data wins when they conflict.",confirmLabel:"Pull from cloud",variant:"danger"})){b(t),_(null),v(null);try{await (0,o.run_tracker_db_cloud_sync)({action:t,on_complete:()=>{e.refresh()}}),_("push"===t?"Cloud database merged with local file.":"Local db.json merged with cloud database."),await j()}catch(e){v((0,a.message_from_unknown_error)(e,"Sync action failed"))}finally{b(null)}}},k=h?.local_imported_at!==null&&h?.local_imported_at!==void 0?new Date(h.local_imported_at).toLocaleString():"never";return(0,t.jsxs)("div",{className:"flex w-full flex-col gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("h2",{className:"m-0 text-[0.95rem] font-semibold",children:"Manual sync"}),(0,t.jsx)("p",{className:"m-0 text-[0.8rem] leading-snug text-muted",children:"Merge local db.json with your cloud database. Conflicting entries keep the most recent timer; push favors local, pull favors cloud."})]}),m?(0,t.jsx)("p",{className:"m-0 text-[0.82rem] text-muted",children:"Loading sync status…"}):(0,t.jsxs)("dl",{className:"m-0 grid grid-cols-[max-content_1fr] gap-x-3 gap-y-1 text-[0.82rem]",children:[(0,t.jsx)("dt",{className:"text-muted",children:"Cloud sheets"}),(0,t.jsx)("dd",{className:"m-0 font-mono",children:h?.cloud_sheet_count??0}),(0,t.jsx)("dt",{className:"text-muted",children:"Last local import"}),(0,t.jsx)("dd",{className:"m-0 font-mono",children:k})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)("button",{type:"button",className:(0,l.get_button_class_name)("ghost","small"),disabled:null!==g,onClick:()=>void w("push"),children:"push"===g?"Pushing…":"Push local → cloud"}),(0,t.jsx)("button",{type:"button",className:(0,l.get_button_class_name)("ghost","small"),disabled:null!==g,onClick:()=>void w("pull"),children:"pull"===g?"Pulling…":"Pull cloud → local"})]}),null===x?null:(0,t.jsx)("p",{className:"m-0 text-[0.82rem] text-accent",children:x}),null===y?null:(0,t.jsx)("p",{className:"m-0 text-[0.82rem] text-danger",children:y})]})}])},4259,e=>{"use strict";var t=e.i(54710),r=e.i(29158),n=e.i(410),s=e.i(7902);e.s(["GreedyCloudSyncSetting",0,function(){let e=(0,r.useSyncExternalStore)(n.greedy_cloud_sync_preference.subscribe,n.greedy_cloud_sync_preference.get_snapshot,n.greedy_cloud_sync_preference.get_server_snapshot);return(0,t.jsxs)("label",{"aria-label":"Greedy cloud sync",className:"flex w-full cursor-pointer items-center gap-2.5",children:[(0,t.jsx)("input",{type:"checkbox",className:"shrink-0",checked:"true"===e,onChange:e=>{var t;return t=e.target.checked,void(0,s.persist_ui_preference)(n.greedy_cloud_sync_preference,t?"true":"false")}}),(0,t.jsxs)("span",{className:"flex flex-col gap-0.5",children:[(0,t.jsx)("span",{className:"text-[0.95rem] font-semibold",children:"Greedy cloud sync"}),(0,t.jsx)("span",{className:"text-[0.8rem] leading-snug text-muted",children:"When on, merge with the cloud when you move between pages and after each change. When off, merge once per session and push only when entries, notes, or sheets change—not when switching sheets."})]})]})}])}]);