super-time-tracker-ui 0.1.45 → 0.1.46

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 (260) hide show
  1. package/dist/standalone/next-output/BUILD_ID +1 -1
  2. package/dist/standalone/next-output/app-path-routes-manifest.json +2 -0
  3. package/dist/standalone/next-output/build-manifest.json +3 -3
  4. package/dist/standalone/next-output/routes-manifest.json +12 -0
  5. package/dist/standalone/next-output/server/app/_global-error.html +1 -1
  6. package/dist/standalone/next-output/server/app/_global-error.rsc +1 -1
  7. package/dist/standalone/next-output/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/dist/standalone/next-output/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/dist/standalone/next-output/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/dist/standalone/next-output/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/dist/standalone/next-output/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/dist/standalone/next-output/server/app/_not-found/page/react-loadable-manifest.json +1 -1
  13. package/dist/standalone/next-output/server/app/_not-found/page.js.nft.json +1 -1
  14. package/dist/standalone/next-output/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/dist/standalone/next-output/server/app/api/command-palette/route.js +1 -1
  16. package/dist/standalone/next-output/server/app/api/command-palette/route.js.nft.json +1 -1
  17. package/dist/standalone/next-output/server/app/api/entries/search/route.js +1 -1
  18. package/dist/standalone/next-output/server/app/api/entries/search/route.js.nft.json +1 -1
  19. package/dist/standalone/next-output/server/app/api/entry/completed/route.js +1 -1
  20. package/dist/standalone/next-output/server/app/api/entry/completed/route.js.nft.json +1 -1
  21. package/dist/standalone/next-output/server/app/api/entry/delete-bulk/route.js +1 -1
  22. package/dist/standalone/next-output/server/app/api/entry/delete-bulk/route.js.nft.json +1 -1
  23. package/dist/standalone/next-output/server/app/api/entry/merge/route.js +1 -1
  24. package/dist/standalone/next-output/server/app/api/entry/merge/route.js.nft.json +1 -1
  25. package/dist/standalone/next-output/server/app/api/entry/move/route.js +1 -1
  26. package/dist/standalone/next-output/server/app/api/entry/move/route.js.nft.json +1 -1
  27. package/dist/standalone/next-output/server/app/api/entry/move-bulk/route.js +1 -1
  28. package/dist/standalone/next-output/server/app/api/entry/move-bulk/route.js.nft.json +1 -1
  29. package/dist/standalone/next-output/server/app/api/entry/route.js +1 -1
  30. package/dist/standalone/next-output/server/app/api/entry/route.js.nft.json +1 -1
  31. package/dist/standalone/next-output/server/app/api/entry/split/route.js +1 -1
  32. package/dist/standalone/next-output/server/app/api/entry/split/route.js.nft.json +1 -1
  33. package/dist/standalone/next-output/server/app/api/in/route.js +1 -1
  34. package/dist/standalone/next-output/server/app/api/in/route.js.nft.json +1 -1
  35. package/dist/standalone/next-output/server/app/api/note/delete/route.js +1 -1
  36. package/dist/standalone/next-output/server/app/api/note/delete/route.js.nft.json +1 -1
  37. package/dist/standalone/next-output/server/app/api/note/route.js +1 -1
  38. package/dist/standalone/next-output/server/app/api/note/route.js.nft.json +1 -1
  39. package/dist/standalone/next-output/server/app/api/out/route.js +1 -1
  40. package/dist/standalone/next-output/server/app/api/out/route.js.nft.json +1 -1
  41. package/dist/standalone/next-output/server/app/api/sheet/route.js +1 -1
  42. package/dist/standalone/next-output/server/app/api/sheet/route.js.nft.json +1 -1
  43. package/dist/standalone/next-output/server/app/api/state/route.js +1 -1
  44. package/dist/standalone/next-output/server/app/api/state/route.js.nft.json +1 -1
  45. package/dist/standalone/next-output/server/app/api/task/route/app-paths-manifest.json +3 -0
  46. package/dist/standalone/next-output/server/app/api/task/route/build-manifest.json +9 -0
  47. package/dist/standalone/next-output/server/app/api/task/route/server-reference-manifest.json +4 -0
  48. package/dist/standalone/next-output/server/app/api/task/route.js +6 -0
  49. package/dist/standalone/next-output/server/app/api/task/route.js.nft.json +1 -0
  50. package/dist/standalone/next-output/server/app/api/task/route_client-reference-manifest.js +3 -0
  51. package/dist/standalone/next-output/server/app/login/page/react-loadable-manifest.json +1 -1
  52. package/dist/standalone/next-output/server/app/login/page.js.nft.json +1 -1
  53. package/dist/standalone/next-output/server/app/login/page_client-reference-manifest.js +1 -1
  54. package/dist/standalone/next-output/server/app/offline/page/react-loadable-manifest.json +1 -1
  55. package/dist/standalone/next-output/server/app/offline/page.js.nft.json +1 -1
  56. package/dist/standalone/next-output/server/app/offline/page_client-reference-manifest.js +1 -1
  57. package/dist/standalone/next-output/server/app/page/react-loadable-manifest.json +1 -1
  58. package/dist/standalone/next-output/server/app/page.js +3 -2
  59. package/dist/standalone/next-output/server/app/page.js.nft.json +1 -1
  60. package/dist/standalone/next-output/server/app/page_client-reference-manifest.js +1 -1
  61. package/dist/standalone/next-output/server/app/pomodoro/page/react-loadable-manifest.json +1 -1
  62. package/dist/standalone/next-output/server/app/pomodoro/page.js.nft.json +1 -1
  63. package/dist/standalone/next-output/server/app/pomodoro/page_client-reference-manifest.js +1 -1
  64. package/dist/standalone/next-output/server/app/register/page/react-loadable-manifest.json +1 -1
  65. package/dist/standalone/next-output/server/app/register/page.js.nft.json +1 -1
  66. package/dist/standalone/next-output/server/app/register/page_client-reference-manifest.js +1 -1
  67. package/dist/standalone/next-output/server/app/reporting/page/react-loadable-manifest.json +1 -1
  68. package/dist/standalone/next-output/server/app/reporting/page.js.nft.json +1 -1
  69. package/dist/standalone/next-output/server/app/reporting/page_client-reference-manifest.js +1 -1
  70. package/dist/standalone/next-output/server/app/review/page/react-loadable-manifest.json +1 -1
  71. package/dist/standalone/next-output/server/app/review/page.js +1 -1
  72. package/dist/standalone/next-output/server/app/review/page.js.nft.json +1 -1
  73. package/dist/standalone/next-output/server/app/review/page_client-reference-manifest.js +1 -1
  74. package/dist/standalone/next-output/server/app/search/page/react-loadable-manifest.json +1 -1
  75. package/dist/standalone/next-output/server/app/search/page.js +1 -1
  76. package/dist/standalone/next-output/server/app/search/page.js.nft.json +1 -1
  77. package/dist/standalone/next-output/server/app/search/page_client-reference-manifest.js +1 -1
  78. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page/react-loadable-manifest.json +1 -1
  79. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page.js.nft.json +1 -1
  80. package/dist/standalone/next-output/server/app/settings/ai-suggestions/page_client-reference-manifest.js +1 -1
  81. package/dist/standalone/next-output/server/app/settings/cloud-sync/page/react-loadable-manifest.json +1 -1
  82. package/dist/standalone/next-output/server/app/settings/cloud-sync/page.js.nft.json +1 -1
  83. package/dist/standalone/next-output/server/app/settings/cloud-sync/page_client-reference-manifest.js +1 -1
  84. package/dist/standalone/next-output/server/app/settings/data/page/react-loadable-manifest.json +1 -1
  85. package/dist/standalone/next-output/server/app/settings/data/page.js.nft.json +1 -1
  86. package/dist/standalone/next-output/server/app/settings/data/page_client-reference-manifest.js +1 -1
  87. package/dist/standalone/next-output/server/app/settings/display/page/react-loadable-manifest.json +1 -1
  88. package/dist/standalone/next-output/server/app/settings/display/page.js.nft.json +1 -1
  89. package/dist/standalone/next-output/server/app/settings/display/page_client-reference-manifest.js +1 -1
  90. package/dist/standalone/next-output/server/app/settings/goals/page/react-loadable-manifest.json +1 -1
  91. package/dist/standalone/next-output/server/app/settings/goals/page.js.nft.json +1 -1
  92. package/dist/standalone/next-output/server/app/settings/goals/page_client-reference-manifest.js +1 -1
  93. package/dist/standalone/next-output/server/app/settings/notifications/page/react-loadable-manifest.json +1 -1
  94. package/dist/standalone/next-output/server/app/settings/notifications/page.js.nft.json +1 -1
  95. package/dist/standalone/next-output/server/app/settings/notifications/page_client-reference-manifest.js +1 -1
  96. package/dist/standalone/next-output/server/app/settings/page/react-loadable-manifest.json +1 -1
  97. package/dist/standalone/next-output/server/app/settings/page.js.nft.json +1 -1
  98. package/dist/standalone/next-output/server/app/settings/page_client-reference-manifest.js +1 -1
  99. package/dist/standalone/next-output/server/app/settings/pomodoro/page/react-loadable-manifest.json +1 -1
  100. package/dist/standalone/next-output/server/app/settings/pomodoro/page.js.nft.json +1 -1
  101. package/dist/standalone/next-output/server/app/settings/pomodoro/page_client-reference-manifest.js +1 -1
  102. package/dist/standalone/next-output/server/app/settings/quick-actions/page/react-loadable-manifest.json +1 -1
  103. package/dist/standalone/next-output/server/app/settings/quick-actions/page.js.nft.json +1 -1
  104. package/dist/standalone/next-output/server/app/settings/quick-actions/page_client-reference-manifest.js +1 -1
  105. package/dist/standalone/next-output/server/app/settings/tags/page/react-loadable-manifest.json +1 -1
  106. package/dist/standalone/next-output/server/app/settings/tags/page.js.nft.json +1 -1
  107. package/dist/standalone/next-output/server/app/settings/tags/page_client-reference-manifest.js +1 -1
  108. package/dist/standalone/next-output/server/app/sheets/page/react-loadable-manifest.json +1 -1
  109. package/dist/standalone/next-output/server/app/sheets/page.js +1 -1
  110. package/dist/standalone/next-output/server/app/sheets/page.js.nft.json +1 -1
  111. package/dist/standalone/next-output/server/app/sheets/page_client-reference-manifest.js +1 -1
  112. package/dist/standalone/next-output/server/app/tasks/page/app-paths-manifest.json +3 -0
  113. package/dist/standalone/next-output/server/app/tasks/page/build-manifest.json +18 -0
  114. package/dist/standalone/next-output/server/app/tasks/page/next-font-manifest.json +11 -0
  115. package/dist/standalone/next-output/server/app/tasks/page/react-loadable-manifest.json +8 -0
  116. package/dist/standalone/next-output/server/app/tasks/page/server-reference-manifest.json +4 -0
  117. package/dist/standalone/next-output/server/app/tasks/page.js +15 -0
  118. package/dist/standalone/next-output/server/app/tasks/page.js.nft.json +1 -0
  119. package/dist/standalone/next-output/server/app/tasks/page_client-reference-manifest.js +3 -0
  120. package/dist/standalone/next-output/server/app/templates/page/react-loadable-manifest.json +1 -1
  121. package/dist/standalone/next-output/server/app/templates/page.js.nft.json +1 -1
  122. package/dist/standalone/next-output/server/app/templates/page_client-reference-manifest.js +1 -1
  123. package/dist/standalone/next-output/server/app/today/page/react-loadable-manifest.json +1 -1
  124. package/dist/standalone/next-output/server/app/today/page.js +1 -1
  125. package/dist/standalone/next-output/server/app/today/page.js.nft.json +1 -1
  126. package/dist/standalone/next-output/server/app/today/page_client-reference-manifest.js +1 -1
  127. package/dist/standalone/next-output/server/app-paths-manifest.json +2 -0
  128. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0-taz6n._.js +1 -1
  129. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__00~g.6x._.js +1 -1
  130. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__02ngfib._.js +3 -0
  131. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__06666_b._.js +1 -1
  132. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__06wq380._.js +1 -1
  133. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0agceca._.js +3 -0
  134. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0m-c-3t._.js +1 -1
  135. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0m8yoxl._.js +3 -0
  136. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0mft_cy._.js +2 -2
  137. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0o-u0o6._.js +1 -1
  138. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0pwxv6f._.js +3 -0
  139. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0rv02cm._.js +3 -0
  140. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0tk~k.1._.js +3 -0
  141. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0wdwx.8._.js +1 -1
  142. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0wj1pxh._.js +1 -1
  143. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0~22xdv._.js +1 -1
  144. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__137-7ty._.js +3 -0
  145. package/dist/standalone/next-output/server/chunks/_next-internal_server_app_api_task_route_actions_12ylnj2.js +3 -0
  146. package/dist/standalone/next-output/server/chunks/ssr/0prs_next_dist_esm_build_templates_app-page_0ki.wrf.js +4 -0
  147. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0.9xlwz._.js +3 -0
  148. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0.g3pd4._.js +3 -0
  149. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__02n0dvz._.js +3 -0
  150. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__04flz4-._.js +1 -1
  151. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__05o8b_c._.js +1 -1
  152. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__08jp.ha._.js +3 -0
  153. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__08mtp44._.js +3 -0
  154. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0_y9w.y._.js +1 -1
  155. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0fvs04n._.js +3 -0
  156. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0gmlwng._.js +1 -1
  157. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0il5~uq._.js +1 -1
  158. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0ou-jv5._.js +1 -1
  159. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0p4w3_0._.js +1 -1
  160. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0sx0ra6._.js +1 -1
  161. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0u.h8zx._.js +1 -1
  162. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0v5-roe._.js +3 -0
  163. package/dist/standalone/next-output/server/chunks/ssr/_02oputi._.js +3 -0
  164. package/dist/standalone/next-output/server/chunks/ssr/_040~8u~._.js +3 -0
  165. package/dist/standalone/next-output/server/chunks/ssr/_04wup-5._.js +1 -1
  166. package/dist/standalone/next-output/server/chunks/ssr/_05t~0qd._.js +3 -0
  167. package/dist/standalone/next-output/server/chunks/ssr/_08~9-.f._.js +3 -0
  168. package/dist/standalone/next-output/server/chunks/ssr/_092k549._.js +3 -0
  169. package/dist/standalone/next-output/server/chunks/ssr/_0_0w8kz._.js +3 -0
  170. package/dist/standalone/next-output/server/chunks/ssr/_0bypypo._.js +1 -1
  171. package/dist/standalone/next-output/server/chunks/ssr/_0e_h4bk._.js +1 -1
  172. package/dist/standalone/next-output/server/chunks/ssr/_0lp.vd1._.js +3 -0
  173. package/dist/standalone/next-output/server/chunks/ssr/_0mdf7jn._.js +3 -0
  174. package/dist/standalone/next-output/server/chunks/ssr/_0sic8ed._.js +1 -1
  175. package/dist/standalone/next-output/server/chunks/ssr/_0t7z076._.js +1 -1
  176. package/dist/standalone/next-output/server/chunks/ssr/{_028bo2r._.js → _0~6f4kw._.js} +2 -2
  177. package/dist/standalone/next-output/server/chunks/ssr/_10n.q--._.js +1 -1
  178. package/dist/standalone/next-output/server/chunks/ssr/_next-internal_server_app_tasks_page_actions_0_2o_cr.js +3 -0
  179. package/dist/standalone/next-output/server/chunks/ssr/components_reporting-view_tsx_0-0ofcv._.js +1 -1
  180. package/dist/standalone/next-output/server/middleware-build-manifest.js +3 -3
  181. package/dist/standalone/next-output/server/next-font-manifest.js +1 -1
  182. package/dist/standalone/next-output/server/next-font-manifest.json +4 -0
  183. package/dist/standalone/next-output/server/pages/500.html +1 -1
  184. package/dist/standalone/next-output/static/chunks/0-3kyxhxw4bbj.js +1 -0
  185. package/dist/standalone/next-output/static/chunks/0-408g-._49ss.js +1 -0
  186. package/dist/standalone/next-output/static/chunks/0-cegmvshy7~a.js +1 -0
  187. package/dist/standalone/next-output/static/chunks/0-vzgnzke5d_x.js +1 -0
  188. package/dist/standalone/next-output/static/chunks/0.dc4~0qlrrmq.js +1 -0
  189. package/dist/standalone/next-output/static/chunks/00kyekysf5.rz.js +1 -0
  190. package/dist/standalone/next-output/static/chunks/0ad60i1-~p1p9.js +1 -0
  191. package/dist/standalone/next-output/static/chunks/0bp_fueuuzc3l.js +1 -0
  192. package/dist/standalone/next-output/static/chunks/0d.t1amf2zp1y.js +1 -0
  193. package/dist/standalone/next-output/static/chunks/0f1u1npfh1b-o.js +1 -0
  194. package/dist/standalone/next-output/static/chunks/0fcd7jg.xwz~d.js +1 -0
  195. package/dist/standalone/next-output/static/chunks/0gkw9_fpp4r.i.js +1 -0
  196. package/dist/standalone/next-output/static/chunks/0hiigo7crs4m1.js +1 -0
  197. package/dist/standalone/next-output/static/chunks/{15hds0xz6b5ce.js → 0k-swz.-tm1g3.js} +1 -1
  198. package/dist/standalone/next-output/static/chunks/0l-z2n83y2aa2.js +1 -0
  199. package/dist/standalone/next-output/static/chunks/0njsx8jnl8cgg.js +1 -0
  200. package/dist/standalone/next-output/static/chunks/{0ya1a.o~xsixd.js → 0np820b81oc9m.js} +1 -1
  201. package/dist/standalone/next-output/static/chunks/0pgfu2rxbx5z2.js +1 -0
  202. package/dist/standalone/next-output/static/chunks/0puu5bj-k_hz9.js +1 -0
  203. package/dist/standalone/next-output/static/chunks/0qsrkbt.l5i70.js +1 -0
  204. package/dist/standalone/next-output/static/chunks/0tumi91py-w0x.js +1 -0
  205. package/dist/standalone/next-output/static/chunks/0unkbkr3scujr.js +1 -0
  206. package/dist/standalone/next-output/static/chunks/{0-niex.k_xqnu.js → 0wj9lgwud1gqj.js} +1 -1
  207. package/dist/standalone/next-output/static/chunks/0xv~-o0b9qigv.css +3 -0
  208. package/dist/standalone/next-output/static/chunks/0zi_5_ssa1_j-.js +1 -0
  209. package/dist/standalone/next-output/static/chunks/0~og7w2d0fi8k.js +1 -0
  210. package/dist/standalone/next-output/static/chunks/13-.m15df8.b8.js +1 -0
  211. package/dist/standalone/next-output/static/chunks/13hyb9n2laeam.js +1 -0
  212. package/dist/standalone/package.json +1 -1
  213. package/package.json +1 -1
  214. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__06h__d_._.js +0 -3
  215. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0_b50~5._.js +0 -3
  216. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0eruj62._.js +0 -3
  217. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0g4.zxh._.js +0 -3
  218. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0hasizg._.js +0 -3
  219. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0jlfmb8._.js +0 -3
  220. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0m~u8g4._.js +0 -3
  221. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0nx-vwn._.js +0 -3
  222. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0rl2w7-._.js +0 -3
  223. package/dist/standalone/next-output/server/chunks/[root-of-the-server]__0yqw7pu._.js +0 -3
  224. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__03dwgvv._.js +0 -3
  225. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__06jwkua._.js +0 -3
  226. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__078pqlk._.js +0 -3
  227. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__09~j2of._.js +0 -3
  228. package/dist/standalone/next-output/server/chunks/ssr/[root-of-the-server]__0njhf-m._.js +0 -3
  229. package/dist/standalone/next-output/server/chunks/ssr/_02fm6gp._.js +0 -3
  230. package/dist/standalone/next-output/server/chunks/ssr/_07q4l3.._.js +0 -3
  231. package/dist/standalone/next-output/server/chunks/ssr/_0aaepl8._.js +0 -3
  232. package/dist/standalone/next-output/server/chunks/ssr/_0ja6w18._.js +0 -3
  233. package/dist/standalone/next-output/server/chunks/ssr/_0rhx88g._.js +0 -3
  234. package/dist/standalone/next-output/server/chunks/ssr/_0y9lue.._.js +0 -3
  235. package/dist/standalone/next-output/server/chunks/ssr/_0zatphu._.js +0 -3
  236. package/dist/standalone/next-output/static/chunks/048hg7.kf50p6.js +0 -1
  237. package/dist/standalone/next-output/static/chunks/099rnw4-qk_33.js +0 -1
  238. package/dist/standalone/next-output/static/chunks/09p9p33-jf6p_.js +0 -1
  239. package/dist/standalone/next-output/static/chunks/0_8ps~_e8~ea7.js +0 -1
  240. package/dist/standalone/next-output/static/chunks/0cnb9ojb1.4_s.js +0 -1
  241. package/dist/standalone/next-output/static/chunks/0f.g~ypqld4i2.js +0 -1
  242. package/dist/standalone/next-output/static/chunks/0feo1c5hcq~fw.js +0 -1
  243. package/dist/standalone/next-output/static/chunks/0gc_4fwvsadx9.js +0 -1
  244. package/dist/standalone/next-output/static/chunks/0lbfeprw3roep.js +0 -1
  245. package/dist/standalone/next-output/static/chunks/0lw-y46eplh.w.js +0 -1
  246. package/dist/standalone/next-output/static/chunks/0ni97tabbd6ql.js +0 -1
  247. package/dist/standalone/next-output/static/chunks/0q_cw2e3uj20q.js +0 -1
  248. package/dist/standalone/next-output/static/chunks/0qc9jf34l6_d8.js +0 -1
  249. package/dist/standalone/next-output/static/chunks/0r9inu-z~8h4p.js +0 -1
  250. package/dist/standalone/next-output/static/chunks/0s7b~rp4s3q9q.js +0 -1
  251. package/dist/standalone/next-output/static/chunks/0t~0aam6r_eto.js +0 -1
  252. package/dist/standalone/next-output/static/chunks/0ua4wv84cw5ds.js +0 -1
  253. package/dist/standalone/next-output/static/chunks/0vmr-fgq74aqi.js +0 -1
  254. package/dist/standalone/next-output/static/chunks/0vudo56ulr706.js +0 -1
  255. package/dist/standalone/next-output/static/chunks/0wd.8~gqkz5cp.css +0 -3
  256. package/dist/standalone/next-output/static/chunks/11~k89a6fiu2w.js +0 -1
  257. package/dist/standalone/next-output/static/chunks/16tc8vh998e~1.js +0 -1
  258. /package/dist/standalone/next-output/static/{y7QrkWDtEEq8SX6iBgDNU → 4G6Gtdu0DdRdBmSmuydRA}/_buildManifest.js +0 -0
  259. /package/dist/standalone/next-output/static/{y7QrkWDtEEq8SX6iBgDNU → 4G6Gtdu0DdRdBmSmuydRA}/_clientMiddlewareManifest.js +0 -0
  260. /package/dist/standalone/next-output/static/{y7QrkWDtEEq8SX6iBgDNU → 4G6Gtdu0DdRdBmSmuydRA}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},10421,a=>{"use strict";a.s(["is_sheet_archived",0,function(a){return!0===a.archived}])},58345,a=>{"use strict";var b=a.i(10421);a.s(["filter_visible_sheets",0,function(a){return a.filter(a=>!(0,b.is_sheet_archived)(a))}])},2798,3973,82478,a=>{"use strict";let b=Symbol.for("constructDateFrom");function c(a,c){return"function"==typeof a?a(c):a&&"object"==typeof a&&b in a?a[b](c):a instanceof Date?new a.constructor(c):new Date(c)}a.s(["constructFromSymbol",0,b,"millisecondsInDay",0,864e5,"millisecondsInHour",0,36e5,"millisecondsInMinute",0,6e4,"millisecondsInSecond",0,1e3,"millisecondsInWeek",0,6048e5],3973),a.s(["constructFrom",0,c],82478),a.s(["toDate",0,function(a,b){return c(b||a,a)}],2798)},93835,a=>{"use strict";var b=a.i(2798);a.s(["endOfDay",0,function(a,c){let d=(0,b.toDate)(a,c?.in);return d.setHours(23,59,59,999),d}])},95763,a=>{"use strict";let b={};a.s(["getDefaultOptions",0,function(){return b}])},12781,a=>{"use strict";var b=a.i(2798);a.s(["startOfDay",0,function(a,c){let d=(0,b.toDate)(a,c?.in);return d.setHours(0,0,0,0),d}])},34114,a=>{"use strict";var b=a.i(95763),c=a.i(2798);a.s(["startOfWeek",0,function(a,d){let e=(0,b.getDefaultOptions)(),f=d?.weekStartsOn??d?.locale?.options?.weekStartsOn??e.weekStartsOn??e.locale?.options?.weekStartsOn??0,g=(0,c.toDate)(a,d?.in),h=g.getDay();return g.setDate(g.getDate()-(7*(h<f)+h-f)),g.setHours(0,0,0,0),g}])},2985,a=>{"use strict";var b=a.i(93835),c=a.i(2798),d=a.i(95763),e=a.i(12781),f=a.i(34114);a.s(["get_period_range_ms",0,function(a,g=new Date,h=1){var i;switch(a){case"week":let j,k,l,m;return{startMs:+(0,f.startOfWeek)(g,{weekStartsOn:h}),endMs:+(i={weekStartsOn:h},j=(0,d.getDefaultOptions)(),k=i?.weekStartsOn??i?.locale?.options?.weekStartsOn??j.weekStartsOn??j.locale?.options?.weekStartsOn??0,m=(l=(0,c.toDate)(g,i?.in)).getDay(),l.setDate(l.getDate()+((m<k?-7:0)+6-(m-k))),l.setHours(23,59,59,999),l)};case"month":let n,o,p;return{startMs:+((n=(0,c.toDate)(g,void 0)).setDate(1),n.setHours(0,0,0,0),n),endMs:+(p=(o=(0,c.toDate)(g,void 0)).getMonth(),o.setFullYear(o.getFullYear(),p+1,0),o.setHours(23,59,59,999),o)};default:return{startMs:+(0,e.startOfDay)(g),endMs:+(0,b.endOfDay)(g)}}}],2985)},23035,a=>{"use strict";a.s(["get_clipped_entry_duration_ms",0,function(a,b,c,d=Date.now()){let e=+a.start;return Math.max(0,Math.min(null===a.end?d:+a.end,c)-Math.max(e,b))}])},2317,51196,a=>{"use strict";function b(a,b){return 0===b?0:a/b}a.s(["get_average_entry_ms",0,b],51196);var c=a.i(23035);a.s(["get_sheet_report_stats_for_range",0,function(a,d,e,f=Date.now()){let g=0,h=0,i=!1;for(let b of a.entries){let j=(0,c.get_clipped_entry_duration_ms)(b,d,e,f);j<=0||(g+=j,h+=1,a.activeEntryID===b.id&&null===b.end&&(i=!0))}return{sheetName:a.name,totalMs:g,entryCount:h,averageEntryMs:b(g,h),hasActiveEntry:i}}],2317)},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},57577,a=>{"use strict";a.s(["SheetHubView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SheetHubView() from the server but SheetHubView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/sheet-hub-view.tsx <module evaluation>","SheetHubView")},68434,a=>{"use strict";a.s(["SheetHubView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SheetHubView() from the server but SheetHubView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/sheet-hub-view.tsx","SheetHubView")},14012,a=>{"use strict";a.i(57577);var b=a.i(68434);a.n(b)},23853,a=>{"use strict";var b=a.i(38860),c=a.i(14012),d=a.i(2985),e=a.i(2317);function f(a,b=Date.now(),c=1){let g=new Date(b),h=(0,d.get_period_range_ms)("week",g,c),i=(0,d.get_period_range_ms)("month",g);return a.map(a=>{let c=(0,e.get_sheet_report_stats_for_range)(a,h.startMs,h.endMs,b),d=(0,e.get_sheet_report_stats_for_range)(a,i.startMs,i.endMs,b),f=function(a,b=Date.now()){let c=null;for(let d of a.entries){let a=null===d.end?b:+d.end,e=Math.max(+d.start,a);(null===c||e>c)&&(c=e)}return c}(a,b);return{sheetName:a.name,entryCount:a.entries.length,hasActiveEntry:null!==a.activeEntryID,weekTotalMs:c.totalMs,monthTotalMs:d.totalMs,lastActivityAt:null===f?null:new Date(f).toISOString()}})}var g=a.i(58345),h=a.i(10421),i=a.i(4813);async function j(){let a=await (0,i.read_db)(),b=(0,g.filter_visible_sheets)(a.sheets),c=a.sheets.filter(a=>(0,h.is_sheet_archived)(a));return{rows:f(b),archived_rows:f(c)}}async function k(){let{archived_rows:a,rows:d}=await j();return(0,b.jsx)(c.SheetHubView,{archived_rows:a,rows:d})}a.s(["default",0,k],23853)},12349,a=>{a.n(a.i(23853))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__08mtp44._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},52190,a=>{"use strict";a.s(["normalize_stored_tag",0,function(a){let b=a.trim().replace(/^@+/,"");if(0===b.length)throw Error("Tag name must not be empty.");if(!/^\w+$/.test(b))throw Error("Tags may only contain letters, numbers, and underscores.");return`@${b}`}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},25244,a=>{"use strict";a.s(["TagManagementView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TagManagementView() from the server but TagManagementView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tag-management-view.tsx <module evaluation>","TagManagementView")},6889,a=>{"use strict";a.s(["TagManagementView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TagManagementView() from the server but TagManagementView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tag-management-view.tsx","TagManagementView")},38116,a=>{"use strict";a.i(25244);var b=a.i(6889);a.n(b)},72299,a=>{"use strict";var b=a.i(38860),c=a.i(38116),d=a.i(52190),e=a.i(4813);async function f(){let a=function(a){let b=new Map;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags)try{let a=(0,d.normalize_stored_tag)(c);b.set(a,(b.get(a)??0)+1)}catch{continue}return[...b.entries()].map(([a,b])=>({name:a,entryCount:b})).sort((a,b)=>a.name.localeCompare(b.name))}(await (0,e.read_db)());return(0,b.jsx)(c.TagManagementView,{initial_tags:a})}a.s(["default",0,f],72299)},83074,a=>{a.n(a.i(72299))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},52190,a=>{"use strict";a.s(["normalize_stored_tag",0,function(a){let b=a.trim().replace(/^@+/,"");if(0===b.length)throw Error("Tag name must not be empty.");if(!/^\w+$/.test(b))throw Error("Tags may only contain letters, numbers, and underscores.");return`@${b}`}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},25244,a=>{"use strict";a.s(["TagManagementView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TagManagementView() from the server but TagManagementView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tag-management-view.tsx <module evaluation>","TagManagementView")},6889,a=>{"use strict";a.s(["TagManagementView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TagManagementView() from the server but TagManagementView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tag-management-view.tsx","TagManagementView")},38116,a=>{"use strict";a.i(25244);var b=a.i(6889);a.n(b)},72299,a=>{"use strict";var b=a.i(38860),c=a.i(38116),d=a.i(52190),e=a.i(4813);async function f(){let a=function(a){let b=new Map;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags)try{let a=(0,d.normalize_stored_tag)(c);b.set(a,(b.get(a)??0)+1)}catch{continue}return[...b.entries()].map(([a,b])=>({name:a,entryCount:b})).sort((a,b)=>a.name.localeCompare(b.name))}(await (0,e.read_db)());return(0,b.jsx)(c.TagManagementView,{initial_tags:a})}a.s(["default",0,f],72299)},83074,a=>{a.n(a.i(72299))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0_y9w.y._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets){for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}for(let a of c.tasks)for(let c of a.title.match(/@\w+/g)??[])b.add(c)}return[...b].sort((a,b)=>a.localeCompare(b))}])},10421,a=>{"use strict";a.s(["is_sheet_archived",0,function(a){return!0===a.archived}])},58345,a=>{"use strict";var b=a.i(10421);a.s(["filter_visible_sheets",0,function(a){return a.filter(a=>!(0,b.is_sheet_archived)(a))}])},2798,3973,82478,a=>{"use strict";let b=Symbol.for("constructDateFrom");function c(a,c){return"function"==typeof a?a(c):a&&"object"==typeof a&&b in a?a[b](c):a instanceof Date?new a.constructor(c):new Date(c)}a.s(["constructFromSymbol",0,b,"millisecondsInDay",0,864e5,"millisecondsInHour",0,36e5,"millisecondsInMinute",0,6e4,"millisecondsInSecond",0,1e3,"millisecondsInWeek",0,6048e5],3973),a.s(["constructFrom",0,c],82478),a.s(["toDate",0,function(a,b){return c(b||a,a)}],2798)},93835,a=>{"use strict";var b=a.i(2798);a.s(["endOfDay",0,function(a,c){let d=(0,b.toDate)(a,c?.in);return d.setHours(23,59,59,999),d}])},95763,a=>{"use strict";let b={};a.s(["getDefaultOptions",0,function(){return b}])},34114,a=>{"use strict";var b=a.i(95763),c=a.i(2798);a.s(["startOfWeek",0,function(a,d){let e=(0,b.getDefaultOptions)(),f=d?.weekStartsOn??d?.locale?.options?.weekStartsOn??e.weekStartsOn??e.locale?.options?.weekStartsOn??0,g=(0,c.toDate)(a,d?.in),h=g.getDay();return g.setDate(g.getDate()-(7*(h<f)+h-f)),g.setHours(0,0,0,0),g}])},12781,a=>{"use strict";var b=a.i(2798);a.s(["startOfDay",0,function(a,c){let d=(0,b.toDate)(a,c?.in);return d.setHours(0,0,0,0),d}])},19045,a=>{"use strict";a.s(["serialize_entry",0,function(a,b,c){return{id:a.id,description:a.description,start:a.start.toISOString(),end:null===a.end?null:a.end.toISOString(),tags:a.tags,notes:a.notes.map(({timestamp:a,text:b})=>({timestamp:a.toISOString(),text:b})),sheetName:b,durationMs:function(a,b=Date.now()){let{end:c,start:d}=a;return Math.max(0,(null===c?b:+c)-d)}(a),isActive:c,...!0===a.archived?{archived:!0}:{}}}],19045)},64601,a=>{"use strict";a.s(["is_entry_archived",0,function(a){return!0===a.archived}])},52190,a=>{"use strict";a.s(["normalize_stored_tag",0,function(a){let b=a.trim().replace(/^@+/,"");if(0===b.length)throw Error("Tag name must not be empty.");if(!/^\w+$/.test(b))throw Error("Tags may only contain letters, numbers, and underscores.");return`@${b}`}])},60135,a=>{"use strict";var b=a.i(82478),c=a.i(2798);a.s(["addDays",0,function(a,d,e){let f=(0,c.toDate)(a,e?.in);return isNaN(d)?(0,b.constructFrom)(e?.in||a,NaN):(d&&f.setDate(f.getDate()+d),f)}])},51656,a=>{"use strict";var b;let c={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 d(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}let e={date:d({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:d({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:d({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},f={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function g(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}let h={ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:g({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:g({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:g({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:g({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:g({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 i(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}let j={ordinalNumber:(b={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)},(a,c={})=>{let d=a.match(b.matchPattern);if(!d)return null;let e=d[0],f=a.match(b.parsePattern);if(!f)return null;let g=b.valueCallback?b.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:a.slice(e.length)}}),era:i({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:i({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:a=>a+1}),month:i({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:i({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:i({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"})};a.s(["defaultLocale",0,{code:"en-US",formatDistance:(a,b,d)=>{let e,f=c[a];if(e="string"==typeof f?f:1===b?f.one:f.other.replace("{{count}}",b.toString()),d?.addSuffix)if(d.comparison&&d.comparison>0)return"in "+e;else return e+" ago";return e},formatLong:e,formatRelative:(a,b,c,d)=>f[a],localize:h,match:j,options:{weekStartsOn:0,firstWeekContainsDate:1}}],51656)},9262,14967,a=>{"use strict";let b=(a,b)=>{switch(a){case"P":return b.date({width:"short"});case"PP":return b.date({width:"medium"});case"PPP":return b.date({width:"long"});default:return b.date({width:"full"})}},c=(a,b)=>{switch(a){case"p":return b.time({width:"short"});case"pp":return b.time({width:"medium"});case"ppp":return b.time({width:"long"});default:return b.time({width:"full"})}};a.s(["longFormatters",0,{p:c,P:(a,d)=>{let e,f=a.match(/(P+)(p+)?/)||[],g=f[1],h=f[2];if(!h)return b(a,d);switch(g){case"P":e=d.dateTime({width:"short"});break;case"PP":e=d.dateTime({width:"medium"});break;case"PPP":e=d.dateTime({width:"long"});break;default:e=d.dateTime({width:"full"})}return e.replace("{{date}}",b(g,d)).replace("{{time}}",c(h,d))}}],9262);let d=/^D+$/,e=/^Y+$/,f=["D","DD","YY","YYYY"];a.s(["isProtectedDayOfYearToken",0,function(a){return d.test(a)},"isProtectedWeekYearToken",0,function(a){return e.test(a)},"warnOrThrowProtectedError",0,function(a,b,c){var d,e,g;let h,i=(d=a,e=b,g=c,h="Y"===d[0]?"years":"days of the month",`Use \`${d.toLowerCase()}\` instead of \`${d}\` (in \`${e}\`) for formatting ${h} to the input \`${g}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`);if(console.warn(i),f.includes(a))throw RangeError(i)}],14967)},5470,a=>{"use strict";var b=a.i(95763),c=a.i(82478),d=a.i(34114),e=a.i(2798);a.s(["getWeekYear",0,function(a,f){let g=(0,e.toDate)(a,f?.in),h=g.getFullYear(),i=(0,b.getDefaultOptions)(),j=f?.firstWeekContainsDate??f?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,k=(0,c.constructFrom)(f?.in||a,0);k.setFullYear(h+1,0,j),k.setHours(0,0,0,0);let l=(0,d.startOfWeek)(k,f),m=(0,c.constructFrom)(f?.in||a,0);m.setFullYear(h,0,j),m.setHours(0,0,0,0);let n=(0,d.startOfWeek)(m,f);return+g>=+l?h+1:+g>=+n?h:h-1}])},32467,a=>{"use strict";var b=a.i(34114);a.s(["startOfISOWeek",0,function(a,c){return(0,b.startOfWeek)(a,{...c,weekStartsOn:1})}])},2554,a=>{"use strict";var b=a.i(3973),c=a.i(34114),d=a.i(95763),e=a.i(82478),f=a.i(5470),g=a.i(2798);a.s(["getWeek",0,function(a,h){let i,j,k,l,m=(0,g.toDate)(a,h?.in);return Math.round(((0,c.startOfWeek)(m,h)-(i=(0,d.getDefaultOptions)(),j=h?.firstWeekContainsDate??h?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,k=(0,f.getWeekYear)(m,h),(l=(0,e.constructFrom)(h?.in||m,0)).setFullYear(k,0,j),l.setHours(0,0,0,0),(0,c.startOfWeek)(l,h)))/b.millisecondsInWeek)+1}],2554)},15104,86472,a=>{"use strict";var b=a.i(3973),c=a.i(32467),d=a.i(82478),e=a.i(2798);function f(a,b){let f=(0,e.toDate)(a,b?.in),g=f.getFullYear(),h=(0,d.constructFrom)(f,0);h.setFullYear(g+1,0,4),h.setHours(0,0,0,0);let i=(0,c.startOfISOWeek)(h),j=(0,d.constructFrom)(f,0);j.setFullYear(g,0,4),j.setHours(0,0,0,0);let k=(0,c.startOfISOWeek)(j);return f.getTime()>=i.getTime()?g+1:f.getTime()>=k.getTime()?g:g-1}a.s(["getISOWeekYear",0,f],86472),a.s(["getISOWeek",0,function(a,g){let h,i,j=(0,e.toDate)(a,g?.in);return Math.round(((0,c.startOfISOWeek)(j)-(h=f(j,void 0),(i=(0,d.constructFrom)(j,0)).setFullYear(h,0,4),i.setHours(0,0,0,0),(0,c.startOfISOWeek)(i)))/b.millisecondsInWeek)+1}],15104)},97087,a=>{"use strict";var b=a.i(2798);a.s(["getTimezoneOffsetInMilliseconds",0,function(a){let c=(0,b.toDate)(a),d=new Date(Date.UTC(c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),c.getMilliseconds()));return d.setUTCFullYear(c.getFullYear()),a-d}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0fvs04n._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}return[...b].sort((a,b)=>a.localeCompare(b))}])},10421,a=>{"use strict";a.s(["is_sheet_archived",0,function(a){return!0===a.archived}])},58345,a=>{"use strict";var b=a.i(10421);a.s(["filter_visible_sheets",0,function(a){return a.filter(a=>!(0,b.is_sheet_archived)(a))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},20412,a=>{"use strict";a.s(["TemplateLibraryView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TemplateLibraryView() from the server but TemplateLibraryView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/template-library-view.tsx <module evaluation>","TemplateLibraryView")},81284,a=>{"use strict";a.s(["TemplateLibraryView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TemplateLibraryView() from the server but TemplateLibraryView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/template-library-view.tsx","TemplateLibraryView")},19334,a=>{"use strict";a.i(20412);var b=a.i(81284);a.n(b)},11232,a=>{"use strict";var b=a.i(38860),c=a.i(19334),d=a.i(23750),e=a.i(58345),f=a.i(4813);async function g(){let a=await (0,f.read_db)();return{sheetNames:(0,e.filter_visible_sheets)(a.sheets).map(a=>a.name),knownTags:(0,d.collect_known_tags)(a)}}async function h(){let a=await g();return(0,b.jsx)(c.TemplateLibraryView,{initial_data:a})}a.s(["default",0,h],11232)},55250,a=>{a.n(a.i(11232))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets){for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}for(let a of c.tasks)for(let c of a.title.match(/@\w+/g)??[])b.add(c)}return[...b].sort((a,b)=>a.localeCompare(b))}])},10421,a=>{"use strict";a.s(["is_sheet_archived",0,function(a){return!0===a.archived}])},58345,a=>{"use strict";var b=a.i(10421);a.s(["filter_visible_sheets",0,function(a){return a.filter(a=>!(0,b.is_sheet_archived)(a))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},20412,a=>{"use strict";a.s(["TemplateLibraryView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TemplateLibraryView() from the server but TemplateLibraryView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/template-library-view.tsx <module evaluation>","TemplateLibraryView")},81284,a=>{"use strict";a.s(["TemplateLibraryView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TemplateLibraryView() from the server but TemplateLibraryView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/template-library-view.tsx","TemplateLibraryView")},19334,a=>{"use strict";a.i(20412);var b=a.i(81284);a.n(b)},11232,a=>{"use strict";var b=a.i(38860),c=a.i(19334),d=a.i(23750),e=a.i(58345),f=a.i(4813);async function g(){let a=await (0,f.read_db)();return{sheetNames:(0,e.filter_visible_sheets)(a.sheets).map(a=>a.name),knownTags:(0,d.collect_known_tags)(a)}}async function h(){let a=await g();return(0,b.jsx)(c.TemplateLibraryView,{initial_data:a})}a.s(["default",0,h],11232)},55250,a=>{a.n(a.i(11232))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0gmlwng._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}return[...b].sort((a,b)=>a.localeCompare(b))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},28157,a=>{"use strict";a.s(["PomodoroSettingsView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroSettingsView() from the server but PomodoroSettingsView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-settings-view.tsx <module evaluation>","PomodoroSettingsView")},7372,a=>{"use strict";a.s(["PomodoroSettingsView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroSettingsView() from the server but PomodoroSettingsView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-settings-view.tsx","PomodoroSettingsView")},17330,a=>{"use strict";a.i(28157);var b=a.i(7372);a.n(b)},47420,a=>{"use strict";var b=a.i(38860),c=a.i(17330),d=a.i(23750),e=a.i(4813);async function f(){let a=await (0,e.read_db)(),f=(0,d.collect_known_tags)(a);return(0,b.jsx)(c.PomodoroSettingsView,{known_tags:f})}a.s(["default",0,f])},93954,a=>{a.n(a.i(47420))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets){for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}for(let a of c.tasks)for(let c of a.title.match(/@\w+/g)??[])b.add(c)}return[...b].sort((a,b)=>a.localeCompare(b))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},28157,a=>{"use strict";a.s(["PomodoroSettingsView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroSettingsView() from the server but PomodoroSettingsView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-settings-view.tsx <module evaluation>","PomodoroSettingsView")},7372,a=>{"use strict";a.s(["PomodoroSettingsView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroSettingsView() from the server but PomodoroSettingsView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-settings-view.tsx","PomodoroSettingsView")},17330,a=>{"use strict";a.i(28157);var b=a.i(7372);a.n(b)},47420,a=>{"use strict";var b=a.i(38860),c=a.i(17330),d=a.i(23750),e=a.i(4813);async function f(){let a=await (0,e.read_db)(),f=(0,d.collect_known_tags)(a);return(0,b.jsx)(c.PomodoroSettingsView,{known_tags:f})}a.s(["default",0,f])},93954,a=>{a.n(a.i(47420))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0il5~uq._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}return[...b].sort((a,b)=>a.localeCompare(b))}])},84245,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx <module evaluation>","TrackerTopbar")},43680,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx","TrackerTopbar")},54675,a=>{"use strict";a.i(84245);var b=a.i(43680);a.n(b)},85168,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx <module evaluation>","SettingsNav")},28678,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx","SettingsNav")},9615,a=>{"use strict";a.i(85168);var b=a.i(28678);a.n(b)},5894,a=>{"use strict";var b=a.i(38860),c=a.i(9615),d=a.i(54675);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},10216,a=>{"use strict";a.s(["FocusGoalsNudgesSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call FocusGoalsNudgesSetting() from the server but FocusGoalsNudgesSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/focus-goals-nudges-setting.tsx <module evaluation>","FocusGoalsNudgesSetting")},98251,a=>{"use strict";a.s(["FocusGoalsNudgesSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call FocusGoalsNudgesSetting() from the server but FocusGoalsNudgesSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/focus-goals-nudges-setting.tsx","FocusGoalsNudgesSetting")},70023,a=>{"use strict";a.i(10216);var b=a.i(98251);a.n(b)},8235,a=>{"use strict";var b=a.i(38860),c=a.i(70023),d=a.i(5894);function e({sheet_names:a,tag_names:f}){return(0,b.jsx)(d.SettingsPageLayout,{breadcrumb:{current:"Goals",parent:{label:"Settings",href:"/settings"}},title:"Goals",description:"Configure focus targets globally, per-sheet, or per-tag.",children:(0,b.jsx)("div",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm","aria-label":"Goal settings",children:(0,b.jsx)(c.FocusGoalsNudgesSetting,{sheet_names:a,tag_names:f})})})}var f=a.i(23750),g=a.i(4813);async function h(){let a=await (0,g.read_db)(),c=a.sheets.map(a=>a.name),d=(0,f.collect_known_tags)(a);return(0,b.jsx)(e,{sheet_names:c,tag_names:d})}a.s(["default",0,h],8235)},98105,a=>{a.n(a.i(8235))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets){for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}for(let a of c.tasks)for(let c of a.title.match(/@\w+/g)??[])b.add(c)}return[...b].sort((a,b)=>a.localeCompare(b))}])},84245,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx <module evaluation>","TrackerTopbar")},43680,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx","TrackerTopbar")},54675,a=>{"use strict";a.i(84245);var b=a.i(43680);a.n(b)},85168,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx <module evaluation>","SettingsNav")},28678,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx","SettingsNav")},9615,a=>{"use strict";a.i(85168);var b=a.i(28678);a.n(b)},5894,a=>{"use strict";var b=a.i(38860),c=a.i(9615),d=a.i(54675);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},10216,a=>{"use strict";a.s(["FocusGoalsNudgesSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call FocusGoalsNudgesSetting() from the server but FocusGoalsNudgesSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/focus-goals-nudges-setting.tsx <module evaluation>","FocusGoalsNudgesSetting")},98251,a=>{"use strict";a.s(["FocusGoalsNudgesSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call FocusGoalsNudgesSetting() from the server but FocusGoalsNudgesSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/focus-goals-nudges-setting.tsx","FocusGoalsNudgesSetting")},70023,a=>{"use strict";a.i(10216);var b=a.i(98251);a.n(b)},8235,a=>{"use strict";var b=a.i(38860),c=a.i(70023),d=a.i(5894);function e({sheet_names:a,tag_names:f}){return(0,b.jsx)(d.SettingsPageLayout,{breadcrumb:{current:"Goals",parent:{label:"Settings",href:"/settings"}},title:"Goals",description:"Configure focus targets globally, per-sheet, or per-tag.",children:(0,b.jsx)("div",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm","aria-label":"Goal settings",children:(0,b.jsx)(c.FocusGoalsNudgesSetting,{sheet_names:a,tag_names:f})})})}var f=a.i(23750),g=a.i(4813);async function h(){let a=await (0,g.read_db)(),c=a.sheets.map(a=>a.name),d=(0,f.collect_known_tags)(a);return(0,b.jsx)(e,{sheet_names:c,tag_names:d})}a.s(["default",0,h],8235)},98105,a=>{a.n(a.i(8235))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0ou-jv5._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},84245,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx <module evaluation>","TrackerTopbar")},43680,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx","TrackerTopbar")},54675,a=>{"use strict";a.i(84245);var b=a.i(43680);a.n(b)},85168,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx <module evaluation>","SettingsNav")},28678,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx","SettingsNav")},9615,a=>{"use strict";a.i(85168);var b=a.i(28678);a.n(b)},5894,a=>{"use strict";var b=a.i(38860),c=a.i(9615),d=a.i(54675);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},73368,a=>{"use strict";a.s(["ClearTagFiltersOnSheetChangeSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ClearTagFiltersOnSheetChangeSetting() from the server but ClearTagFiltersOnSheetChangeSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/clear-tag-filters-on-sheet-change-setting.tsx <module evaluation>","ClearTagFiltersOnSheetChangeSetting")},52811,a=>{"use strict";a.s(["ClearTagFiltersOnSheetChangeSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ClearTagFiltersOnSheetChangeSetting() from the server but ClearTagFiltersOnSheetChangeSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/clear-tag-filters-on-sheet-change-setting.tsx","ClearTagFiltersOnSheetChangeSetting")},48597,a=>{"use strict";a.i(73368);var b=a.i(52811);a.n(b)},44583,a=>{"use strict";a.s(["ConfirmBeforeCheckoutSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmBeforeCheckoutSetting() from the server but ConfirmBeforeCheckoutSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-before-checkout-setting.tsx <module evaluation>","ConfirmBeforeCheckoutSetting")},46049,a=>{"use strict";a.s(["ConfirmBeforeCheckoutSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmBeforeCheckoutSetting() from the server but ConfirmBeforeCheckoutSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-before-checkout-setting.tsx","ConfirmBeforeCheckoutSetting")},2889,a=>{"use strict";a.i(44583);var b=a.i(46049);a.n(b)},59245,a=>{"use strict";a.s(["ConfirmDestructiveActionsSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmDestructiveActionsSetting() from the server but ConfirmDestructiveActionsSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-destructive-actions-setting.tsx <module evaluation>","ConfirmDestructiveActionsSetting")},22659,a=>{"use strict";a.s(["ConfirmDestructiveActionsSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmDestructiveActionsSetting() from the server but ConfirmDestructiveActionsSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-destructive-actions-setting.tsx","ConfirmDestructiveActionsSetting")},39763,a=>{"use strict";a.i(59245);var b=a.i(22659);a.n(b)},1234,a=>{"use strict";a.s(["DebugLoggingSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DebugLoggingSetting() from the server but DebugLoggingSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/debug-logging-setting.tsx <module evaluation>","DebugLoggingSetting")},9661,a=>{"use strict";a.s(["DebugLoggingSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DebugLoggingSetting() from the server but DebugLoggingSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/debug-logging-setting.tsx","DebugLoggingSetting")},31775,a=>{"use strict";a.i(1234);var b=a.i(9661);a.n(b)},53605,a=>{"use strict";a.s(["DefaultSheetSessionSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DefaultSheetSessionSetting() from the server but DefaultSheetSessionSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/default-sheet-session-setting.tsx <module evaluation>","DefaultSheetSessionSetting")},27942,a=>{"use strict";a.s(["DefaultSheetSessionSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DefaultSheetSessionSetting() from the server but DefaultSheetSessionSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/default-sheet-session-setting.tsx","DefaultSheetSessionSetting")},82951,a=>{"use strict";a.i(53605);var b=a.i(27942);a.n(b)},72017,a=>{"use strict";var b=a.i(38860),c=a.i(48597),d=a.i(2889),e=a.i(39763),f=a.i(31775),g=a.i(82951),h=a.i(5894);function i({sheet_names:a}){return(0,b.jsx)(h.SettingsPageLayout,{breadcrumb:{current:"General",parent:{label:"Settings"}},title:"General",description:"Tracker startup, confirmations, and session behavior.",children:(0,b.jsxs)("ul",{className:"m-0 flex w-full list-none flex-col gap-2 p-0","aria-label":"General settings",children:[(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(g.DefaultSheetSessionSetting,{sheet_names:a})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(d.ConfirmBeforeCheckoutSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(e.ConfirmDestructiveActionsSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(c.ClearTagFiltersOnSheetChangeSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(f.DebugLoggingSetting,{})})]})})}var j=a.i(4813);async function k(){let a=(await (0,j.read_db)()).sheets.map(a=>a.name);return(0,b.jsx)(i,{sheet_names:a})}a.s(["default",0,k],72017)},51425,a=>{a.n(a.i(72017))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},84245,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx <module evaluation>","TrackerTopbar")},43680,a=>{"use strict";a.s(["TrackerTopbar",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call TrackerTopbar() from the server but TrackerTopbar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/tracker-topbar.tsx","TrackerTopbar")},54675,a=>{"use strict";a.i(84245);var b=a.i(43680);a.n(b)},85168,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx <module evaluation>","SettingsNav")},28678,a=>{"use strict";a.s(["SettingsNav",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call SettingsNav() from the server but SettingsNav is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/settings-nav.tsx","SettingsNav")},9615,a=>{"use strict";a.i(85168);var b=a.i(28678);a.n(b)},5894,a=>{"use strict";var b=a.i(38860),c=a.i(9615),d=a.i(54675);a.s(["SettingsPageLayout",0,function({breadcrumb:a,title:e,description:f,children:g}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.TrackerTopbar,{breadcrumb:a}),(0,b.jsxs)("main",{className:"mx-auto grid w-full max-w-[1120px] grid-cols-[minmax(12rem,16rem)_minmax(0,1fr)] gap-4 px-4 pb-10 pt-5 sm:gap-6 sm:px-5 sm:pt-6 max-[860px]:grid-cols-1",children:[(0,b.jsxs)("aside",{className:"flex flex-col gap-2",children:[(0,b.jsx)("h2",{className:"m-0 text-[0.72rem] font-semibold uppercase tracking-[0.06em] text-muted",children:"Settings"}),(0,b.jsx)(c.SettingsNav,{})]}),(0,b.jsxs)("section",{className:"flex min-w-0 flex-col gap-4",children:[(0,b.jsxs)("header",{className:"flex flex-col gap-1",children:[(0,b.jsx)("h1",{className:"m-0 text-[1.35rem] font-[650] tracking-tight",children:e}),void 0!==f?(0,b.jsx)("p",{className:"m-0 text-[0.9rem] leading-relaxed text-muted",children:f}):null]}),g]})]})]})}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},73368,a=>{"use strict";a.s(["ClearTagFiltersOnSheetChangeSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ClearTagFiltersOnSheetChangeSetting() from the server but ClearTagFiltersOnSheetChangeSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/clear-tag-filters-on-sheet-change-setting.tsx <module evaluation>","ClearTagFiltersOnSheetChangeSetting")},52811,a=>{"use strict";a.s(["ClearTagFiltersOnSheetChangeSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ClearTagFiltersOnSheetChangeSetting() from the server but ClearTagFiltersOnSheetChangeSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/clear-tag-filters-on-sheet-change-setting.tsx","ClearTagFiltersOnSheetChangeSetting")},48597,a=>{"use strict";a.i(73368);var b=a.i(52811);a.n(b)},44583,a=>{"use strict";a.s(["ConfirmBeforeCheckoutSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmBeforeCheckoutSetting() from the server but ConfirmBeforeCheckoutSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-before-checkout-setting.tsx <module evaluation>","ConfirmBeforeCheckoutSetting")},46049,a=>{"use strict";a.s(["ConfirmBeforeCheckoutSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmBeforeCheckoutSetting() from the server but ConfirmBeforeCheckoutSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-before-checkout-setting.tsx","ConfirmBeforeCheckoutSetting")},2889,a=>{"use strict";a.i(44583);var b=a.i(46049);a.n(b)},59245,a=>{"use strict";a.s(["ConfirmDestructiveActionsSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmDestructiveActionsSetting() from the server but ConfirmDestructiveActionsSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-destructive-actions-setting.tsx <module evaluation>","ConfirmDestructiveActionsSetting")},22659,a=>{"use strict";a.s(["ConfirmDestructiveActionsSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call ConfirmDestructiveActionsSetting() from the server but ConfirmDestructiveActionsSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/confirm-destructive-actions-setting.tsx","ConfirmDestructiveActionsSetting")},39763,a=>{"use strict";a.i(59245);var b=a.i(22659);a.n(b)},1234,a=>{"use strict";a.s(["DebugLoggingSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DebugLoggingSetting() from the server but DebugLoggingSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/debug-logging-setting.tsx <module evaluation>","DebugLoggingSetting")},9661,a=>{"use strict";a.s(["DebugLoggingSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DebugLoggingSetting() from the server but DebugLoggingSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/debug-logging-setting.tsx","DebugLoggingSetting")},31775,a=>{"use strict";a.i(1234);var b=a.i(9661);a.n(b)},53605,a=>{"use strict";a.s(["DefaultSheetSessionSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DefaultSheetSessionSetting() from the server but DefaultSheetSessionSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/default-sheet-session-setting.tsx <module evaluation>","DefaultSheetSessionSetting")},27942,a=>{"use strict";a.s(["DefaultSheetSessionSetting",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call DefaultSheetSessionSetting() from the server but DefaultSheetSessionSetting is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/default-sheet-session-setting.tsx","DefaultSheetSessionSetting")},82951,a=>{"use strict";a.i(53605);var b=a.i(27942);a.n(b)},72017,a=>{"use strict";var b=a.i(38860),c=a.i(48597),d=a.i(2889),e=a.i(39763),f=a.i(31775),g=a.i(82951),h=a.i(5894);function i({sheet_names:a}){return(0,b.jsx)(h.SettingsPageLayout,{breadcrumb:{current:"General",parent:{label:"Settings"}},title:"General",description:"Tracker startup, confirmations, and session behavior.",children:(0,b.jsxs)("ul",{className:"m-0 flex w-full list-none flex-col gap-2 p-0","aria-label":"General settings",children:[(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(g.DefaultSheetSessionSetting,{sheet_names:a})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(d.ConfirmBeforeCheckoutSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(e.ConfirmDestructiveActionsSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(c.ClearTagFiltersOnSheetChangeSetting,{})}),(0,b.jsx)("li",{className:"rounded-md border border-panel-border bg-panel p-3.5 shadow-sm",children:(0,b.jsx)(f.DebugLoggingSetting,{})})]})})}var j=a.i(4813);async function k(){let a=(await (0,j.read_db)()).sheets.map(a=>a.name);return(0,b.jsx)(i,{sheet_names:a})}a.s(["default",0,k],72017)},51425,a=>{a.n(a.i(72017))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0p4w3_0._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},98548,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.HooksClientContext},19973,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.ServerInsertedHtml},11391,(a,b,c)=>{"use strict";b.exports=a.r(18622)},61401,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactJsxRuntime},59021,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].React},82583,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.AppRouterContext},35634,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactServerDOMTurbopackClient},23678,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactDOM},13964,75215,a=>{"use strict";let b=(0,a.i(59021).createContext)(null);a.s(["ConfirmDialogContext",0,b],13964);let c=null;a.s(["get_registered_confirm_dialog",0,function(){return c},"register_confirm_dialog",0,function(a){c=a}],75215)},3988,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},34344,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},72220,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},96588,(a,b,c)=>{"use strict";function d(){let a,b,c=new Promise((c,d)=>{a=c,b=d});return{resolve:a,reject:b,promise:c}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"createPromiseWithResolvers",{enumerable:!0,get:function(){return d}})},75269,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0});var e={getAssetToken:function(){return i},getAssetTokenQuery:function(){return j},getDeploymentId:function(){return g},getDeploymentIdQuery:function(){return h}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});function g(){return d}function h(a=!1){return d?`${a?"&":"?"}dpl=${d}`:""}function i(){return!1}function j(a=!1){return""}d=void 0},63577,a=>{"use strict";a.s(["is_supabase_configured",0,function(){return("https://ctruizaqyeyidujmtxhc.supabase.co".trim()??"").length>0&&("sb_publishable_gTYHeWoWIPPW3SIC4cYaXw_ux7UL_Jb".trim()??"").length>0}])},72958,51652,a=>{"use strict";a.s(["is_cloud_sync_enabled",0,function(){return!0}],51652),a.i(63577),a.s(["schedule_ui_preferences_cloud_sync",0,function(){}],72958)},52345,70827,a=>{"use strict";var b=a.i(72958);a.s(["create_ui_preference_store",0,function(a){let{default_value:c,is_valid:d,storage_key:e}=a,f=new Set,g=()=>c;return{storage_key:e,default_value:c,is_valid:d,read:g,write:a=>{try{window.localStorage.setItem(e,a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}},subscribe:a=>(f.add(a),()=>{f.delete(a)}),notify:()=>{f.forEach(a=>{a()})},get_snapshot:g,get_server_snapshot:()=>c}}],52345),a.s(["ACCENT_COLOR_DEFAULT",0,"teal","ACCENT_COLOR_STORAGE_KEY",0,"super-time-tracker-accent-color","ACCENT_COLOR_VALUES",0,["teal","blue","violet","rose","amber","emerald"],"CHECK_IN_FORM_COLLAPSED_DEFAULT",0,"false","CHECK_IN_FORM_COLLAPSED_STORAGE_KEY",0,"super-time-tracker-check-in-form-collapsed","CLAUDE_API_KEY_DEFAULT",0,"","CLAUDE_API_KEY_STORAGE_KEY",0,"super-time-tracker-claude-api-key","CLEAR_TAG_FILTERS_ON_SHEET_CHANGE_DEFAULT",0,"false","CLEAR_TAG_FILTERS_ON_SHEET_CHANGE_STORAGE_KEY",0,"super-time-tracker-clear-tag-filters-on-sheet-change","CLOUD_SYNC_ENABLED_DEFAULT",0,"true","CLOUD_SYNC_ENABLED_STORAGE_KEY",0,"super-time-tracker-cloud-sync-enabled","COLOR_PALETTE_DEFAULT",0,"default","COLOR_PALETTE_STORAGE_KEY",0,"super-time-tracker-color-palette","COLOR_PALETTE_VALUES",0,["default","midnight","warm","ocean","forest","contrast","sunset","lavender","rose","slate","nord","dracula"],"CONFIRM_BEFORE_CHECKOUT_DEFAULT",0,"false","CONFIRM_BEFORE_CHECKOUT_STORAGE_KEY",0,"super-time-tracker-confirm-before-checkout","CONFIRM_DESTRUCTIVE_ACTIONS_DEFAULT",0,"true","CONFIRM_DESTRUCTIVE_ACTIONS_STORAGE_KEY",0,"super-time-tracker-confirm-destructive-actions","DAILY_FOCUS_TARGET_MINUTES_DEFAULT",0,"240","DAILY_FOCUS_TARGET_MINUTES_STORAGE_KEY",0,"super-time-tracker-daily-focus-target-minutes","DEBUG_LOGGING_DEFAULT",0,"false","DEBUG_LOGGING_STORAGE_KEY",0,"super-time-tracker-debug-logging","DEFAULT_REPORTING_RANGE_DEFAULT",0,"none","DEFAULT_REPORTING_RANGE_STORAGE_KEY",0,"super-time-tracker-default-reporting-range","DEFAULT_REPORTING_SORT_DEFAULT",0,"duration","DEFAULT_REPORTING_SORT_STORAGE_KEY",0,"super-time-tracker-default-reporting-sort","DESKTOP_NOTIFICATIONS_DEFAULT",0,"false","DESKTOP_NOTIFICATIONS_STORAGE_KEY",0,"super-time-tracker-desktop-notifications","DURATION_FORMAT_DEFAULT",0,"humanized","DURATION_FORMAT_STORAGE_KEY",0,"super-time-tracker-duration-format","ENTRY_LIST_SORT_DEFAULT",0,"newest","ENTRY_LIST_SORT_STORAGE_KEY",0,"super-time-tracker-entry-list-sort","ENTRY_SUGGESTION_PROVIDER_DEFAULT",0,"none","ENTRY_SUGGESTION_PROVIDER_STORAGE_KEY",0,"super-time-tracker-entry-suggestion-provider","FOCUS_GOALS_PER_SHEET_DEFAULT",0,"{}","FOCUS_GOALS_PER_SHEET_STORAGE_KEY",0,"super-time-tracker-focus-goals-per-sheet","FOCUS_GOALS_PER_TAG_DEFAULT",0,"{}","FOCUS_GOALS_PER_TAG_STORAGE_KEY",0,"super-time-tracker-focus-goals-per-tag","FOCUS_GOAL_SCOPE_DEFAULT",0,"global","FOCUS_GOAL_SCOPE_STORAGE_KEY",0,"super-time-tracker-focus-goal-scope","FOCUS_GOAL_SHEET_NAME_DEFAULT",0,"","FOCUS_GOAL_SHEET_NAME_STORAGE_KEY",0,"super-time-tracker-focus-goal-sheet-name","FOCUS_GOAL_TAG_NAME_DEFAULT",0,"","FOCUS_GOAL_TAG_NAME_STORAGE_KEY",0,"super-time-tracker-focus-goal-tag-name","FOCUS_NUDGES_ENABLED_DEFAULT",0,"true","FOCUS_NUDGES_ENABLED_STORAGE_KEY",0,"super-time-tracker-focus-nudges-enabled","GOOGLE_AI_API_KEY_DEFAULT",0,"","GOOGLE_AI_API_KEY_STORAGE_KEY",0,"super-time-tracker-google-ai-api-key","GREEDY_CLOUD_SYNC_DEFAULT",0,"true","GREEDY_CLOUD_SYNC_STORAGE_KEY",0,"super-time-tracker-greedy-cloud-sync","NO_LOG_REMINDER_MINUTES_DEFAULT",0,"45","NO_LOG_REMINDER_MINUTES_STORAGE_KEY",0,"super-time-tracker-no-log-reminder-minutes","OPENAI_API_KEY_DEFAULT",0,"","OPENAI_API_KEY_STORAGE_KEY",0,"super-time-tracker-openai-api-key","OVERWORK_ALERT_HOURS_DEFAULT",0,"8","OVERWORK_ALERT_HOURS_STORAGE_KEY",0,"super-time-tracker-overwork-alert-hours","TAG_FILTER_MODE_DEFAULT",0,"all","TAG_FILTER_MODE_STORAGE_KEY",0,"super-time-tracker-tag-filter-mode","THEME_MODE_DEFAULT",0,"system","THEME_MODE_STORAGE_KEY",0,"super-time-tracker-theme-mode","TIMER_IN_TITLE_DEFAULT",0,"true","TIMER_IN_TITLE_STORAGE_KEY",0,"super-time-tracker-timer-in-title","TIMER_SHOW_SECONDS_DEFAULT",0,"false","TIMER_SHOW_SECONDS_STORAGE_KEY",0,"super-time-tracker-timer-show-seconds","TIME_FORMAT_DEFAULT",0,"12h","TIME_FORMAT_STORAGE_KEY",0,"super-time-tracker-time-format","TOPBAR_QUICK_ACTIONS_DEFAULT",0,'["today","review","templates","search","reporting","pomodoro"]',"TOPBAR_QUICK_ACTIONS_STORAGE_KEY",0,"super-time-tracker-topbar-quick-actions","TRACKER_SHORTCUT_MAP_DEFAULT",0,'{"help":"?","check-in":"c","check-out":"o","edit-entry":"e","add-note":"n","pomodoro":"p","previous-sheet":"[","next-sheet":"]"}',"TRACKER_SHORTCUT_MAP_STORAGE_KEY",0,"super-time-tracker-shortcut-map","WEEKLY_FOCUS_TARGET_MINUTES_DEFAULT",0,"1200","WEEKLY_FOCUS_TARGET_MINUTES_STORAGE_KEY",0,"super-time-tracker-weekly-focus-target-minutes","WEEK_STARTS_ON_DEFAULT",0,"monday","WEEK_STARTS_ON_STORAGE_KEY",0,"super-time-tracker-week-starts-on","WORK_HOURS_END_DEFAULT",0,"17:00","WORK_HOURS_END_STORAGE_KEY",0,"super-time-tracker-work-hours-end","WORK_HOURS_START_DEFAULT",0,"09:00","WORK_HOURS_START_STORAGE_KEY",0,"super-time-tracker-work-hours-start"],70827)},24047,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.DURATION_FORMAT_STORAGE_KEY,default_value:c.DURATION_FORMAT_DEFAULT,is_valid:a=>"humanized"===a||"clock"===a||"decimal"===a});a.s(["duration_format_preference",0,d])},46299,a=>{"use strict";a.s(["is_modal_dialog_open",0,function(){return null!==document.querySelector('[role="dialog"][aria-modal="true"]')}])},32297,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.CONFIRM_DESTRUCTIVE_ACTIONS_STORAGE_KEY,default_value:c.CONFIRM_DESTRUCTIVE_ACTIONS_DEFAULT,is_valid:a=>"true"===a||"false"===a});a.s(["confirm_destructive_actions_preference",0,d])},79918,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.ENTRY_LIST_SORT_STORAGE_KEY,default_value:c.ENTRY_LIST_SORT_DEFAULT,is_valid:a=>"newest"===a||"oldest"===a||"duration"===a||"description"===a});a.s(["entry_list_sort_preference",0,d])},50825,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.TIME_FORMAT_STORAGE_KEY,default_value:c.TIME_FORMAT_DEFAULT,is_valid:a=>"12h"===a||"24h"===a});a.s(["time_format_preference",0,d])},7048,a=>{"use strict";let b=new Set,c="Settings saved";a.s(["SETTINGS_SAVED_DEFAULT_MESSAGE",0,c,"notify_settings_saved",0,function(a=c){},"subscribe_settings_saved",0,function(a){return b.add(a),()=>{b.delete(a)}}])},89969,a=>{"use strict";a.s(["get_button_class_name",0,function(a="ghost",b="default"){return`cursor-pointer appearance-none rounded-[0.65rem] border border-transparent font-inherit font-semibold disabled:cursor-not-allowed disabled:opacity-55 ${({default:"px-3.5 py-2.5",small:"px-2.5 py-1.5 text-xs"})[b]} ${({primary:"border-accent-border bg-[var(--accent)] text-[var(--accent-text-on)]",ghost:"border-panel-border bg-ghost-bg text-inherit",danger:"border-danger-border bg-danger-soft text-danger","danger-solid":"border-danger-border bg-[var(--danger-solid)] text-[var(--danger-text-on)]"})[a]}`}])},87281,a=>{"use strict";var b=a.i(49170);a.s(["is_greedy_cloud_sync_enabled",0,function(){return"true"===b.greedy_cloud_sync_preference.read()}])},72327,40395,76121,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.FOCUS_NUDGES_ENABLED_STORAGE_KEY,default_value:c.FOCUS_NUDGES_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});a.s(["focus_nudges_enabled_preference",0,d],72327);let e=(0,b.create_ui_preference_store)({storage_key:c.NO_LOG_REMINDER_MINUTES_STORAGE_KEY,default_value:c.NO_LOG_REMINDER_MINUTES_DEFAULT,is_valid:a=>{if(!/^\d+$/.test(a))return!1;let b=Number.parseInt(a,10);return b>=5&&b<=240}});a.s(["no_log_reminder_minutes_preference",0,e],40395);let f=(0,b.create_ui_preference_store)({storage_key:c.OVERWORK_ALERT_HOURS_STORAGE_KEY,default_value:c.OVERWORK_ALERT_HOURS_DEFAULT,is_valid:a=>{if(!/^\d+$/.test(a))return!1;let b=Number.parseInt(a,10);return b>=1&&b<=16}});a.s(["overwork_alert_hours_preference",0,f],76121)},22496,43329,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=/^([01]\d|2[0-3]):[0-5]\d$/,e=(0,b.create_ui_preference_store)({storage_key:c.WORK_HOURS_END_STORAGE_KEY,default_value:c.WORK_HOURS_END_DEFAULT,is_valid:a=>d.test(a)});a.s(["work_hours_end_preference",0,e],22496);let f=/^([01]\d|2[0-3]):[0-5]\d$/,g=(0,b.create_ui_preference_store)({storage_key:c.WORK_HOURS_START_STORAGE_KEY,default_value:c.WORK_HOURS_START_DEFAULT,is_valid:a=>f.test(a)});a.s(["work_hours_start_preference",0,g],43329)},97917,a=>{"use strict";let b=new Set;a.s(["notify_in_app",0,function(a){},"subscribe_in_app_notifications",0,function(a){return b.add(a),()=>{b.delete(a)}}])},80185,a=>{"use strict";a.s(["should_ignore_keyboard_shortcut",0,function(a){let b=a.target;if(!(b instanceof HTMLElement))return!1;if(b.isContentEditable)return!0;let c=b.tagName;return"INPUT"===c||"TEXTAREA"===c||"SELECT"===c}])},63652,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},41427,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(26389);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},73260,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},54721,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(61401),e=a.r(23678),f=a.r(56704),g=a.r(73260),h=a.r(75269);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},69549,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(61401),e=a.r(59021),f=a.r(41427),g=a.r(54721);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},81277,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(63652)._(a.r(69549));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},7386,85928,89184,a=>{"use strict";var b=a.i(61401),c=a.i(59021);function d({label:a,description:c,compact:e}){return(0,b.jsxs)("div",{className:"contents",children:[(0,b.jsx)("dt",{className:"m-0",children:(0,b.jsx)("kbd",{className:`inline-block min-w-7 rounded border border-panel-border bg-surface text-center font-mono font-semibold text-foreground ${e?"px-1 py-0.5 text-[0.7rem]":"px-1.5 py-0.5 text-[0.78rem]"}`,children:a})}),(0,b.jsx)("dd",{className:`m-0 self-center leading-snug text-muted ${e?"text-[0.8rem]":"text-[0.9rem]"}`,children:c})]})}function e({sections:a,compact:c=!1}){return(0,b.jsx)("div",{className:`flex flex-col ${c?"gap-2.5":"gap-4"}`,children:a.map(a=>(0,b.jsxs)("section",{children:[(0,b.jsx)("h3",{className:`m-0 font-semibold uppercase tracking-[0.04em] text-muted ${c?"text-[0.65rem]":"text-[0.72rem]"}`,children:a.title}),(0,b.jsx)("dl",{className:`m-0 grid grid-cols-[auto_minmax(0,1fr)] ${c?"mt-1.5 gap-x-3 gap-y-1.5":"mt-2 gap-x-4 gap-y-2"}`,children:a.entries.map(e=>(0,b.jsx)(d,{label:e.label,description:e.description,compact:c},`${a.title}-${e.label}-${e.description}`))})]},a.title))})}var f=a.i(89969);a.s(["KeyboardShortcutsDialog",0,function({sections:a,on_close:d}){let g=(0,c.useId)(),h=(0,c.useRef)(null);return(0,c.useEffect)(()=>{h.current?.focus();let a=a=>{"Escape"===a.key&&d()};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d]),(0,b.jsxs)("div",{className:"fixed inset-0 z-100 flex items-center justify-center p-5",role:"presentation",children:[(0,b.jsx)("button",{type:"button",className:"absolute inset-0 cursor-default border-0 bg-overlay p-0","aria-label":"Dismiss dialog",onClick:d}),(0,b.jsxs)("div",{role:"dialog","aria-modal":"true","aria-labelledby":g,className:"relative z-1 w-full max-w-lg rounded-lg border border-panel-border bg-panel p-5 shadow-md",children:[(0,b.jsx)("h2",{id:g,className:"m-0 text-[1.1rem] font-[650] tracking-tight",children:"Keyboard shortcuts"}),(0,b.jsx)("div",{className:"mt-4 max-h-[min(28rem,70vh)] overflow-y-auto pr-1",children:(0,b.jsx)(e,{sections:a})}),(0,b.jsx)("div",{className:"mt-5 flex justify-end",children:(0,b.jsx)("button",{ref:h,type:"button",className:(0,f.get_button_class_name)("primary"),onClick:d,children:"Close"})})]})]})}],7386);var g=a.i(75049);a.s(["get_tracker_keyboard_shortcut_sections",0,function(a=g.tracker_shortcut_defaults){return[...function(a="?"){return[{title:"General",entries:[{label:"Ctrl+P",description:"Open command palette"},{label:a,description:"Show keyboard shortcuts"}]}]}("?"===a.help?"?":a.help.toUpperCase()),{title:"Tracker",entries:[{label:a["check-in"].toUpperCase(),description:"Check in (focus description)"},{label:a["check-out"].toUpperCase(),description:"Check out"},{label:a["edit-entry"].toUpperCase(),description:"Edit active entry description"},{label:a["add-note"].toUpperCase(),description:"Add note to active entry"},{label:a.pomodoro.toUpperCase(),description:"Open Pomodoro"},{label:a["previous-sheet"],description:"Previous sheet"},{label:a["next-sheet"],description:"Next sheet"},{label:a["zen-mode"].toUpperCase(),description:"Toggle Zen Mode focus engine"}]}]}],85928);var h=a.i(46299),i=a.i(80185);a.s(["use_document_keyboard_shortcuts",0,function(a){let b=(0,c.useRef)(a);b.current=a,(0,c.useEffect)(()=>{let a=a=>{if(!(0,i.should_ignore_keyboard_shortcut)(a)&&!(0,h.is_modal_dialog_open)()){for(let c of b.current)if(c.is_available?.()!==!1&&function(a,b){let c=b.modifiers??[],d=c.includes("alt"),e=c.includes("ctrl"),f=c.includes("meta"),g=c.includes("shift");return a.altKey===d&&a.ctrlKey===e&&a.metaKey===f&&a.shiftKey===g&&(1===a.key.length?a.key.toLowerCase():a.key)===(1===b.key.length?b.key.toLowerCase():b.key)}(a,c)){a.preventDefault(),c.action();return}}};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[])}],89184)},53030,a=>{"use strict";var b=a.i(61401),c=a.i(59021),d=a.i(89969);function e({options:a,on_confirm:f,on_cancel:g}){let h=(0,c.useId)(),i=(0,c.useRef)(null),j=(0,c.useRef)(null),{cancelLabel:k="Cancel",confirmLabel:l="Confirm",message:m,title:n,variant:o="default"}=a;(0,c.useEffect)(()=>{let a=i.current;if(null!==a&&!a.open)return a.showModal(),()=>{a.open&&a.close()}},[]),(0,c.useEffect)(()=>{j.current?.focus()},[]);let p=()=>{i.current?.close(),g()};return(0,b.jsxs)("dialog",{ref:i,"aria-labelledby":h,className:"fixed inset-0 z-100 m-0 flex max-h-none w-full max-w-none items-center justify-center border-0 bg-transparent p-5 backdrop:bg-overlay open:flex",onCancel:a=>{a.preventDefault(),p()},children:[(0,b.jsx)("button",{type:"button",tabIndex:-1,"aria-label":"Dismiss dialog",className:"absolute inset-0 z-0 cursor-default border-0 bg-transparent p-0",onClick:p}),(0,b.jsxs)("div",{className:"relative z-1 w-full max-w-md rounded-lg border border-panel-border bg-panel p-5 shadow-md",children:[(0,b.jsx)("h2",{id:h,className:"m-0 text-[1.1rem] font-[650] tracking-tight",children:n}),(0,b.jsx)("p",{className:"m-0 mt-2 text-[0.9rem] leading-relaxed text-muted",children:m}),(0,b.jsxs)("div",{className:"mt-5 flex flex-wrap justify-end gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost"),onClick:p,children:k}),(0,b.jsx)("button",{ref:j,type:"button",className:(0,d.get_button_class_name)("danger"===o?"danger":"primary"),onClick:f,children:l})]})]})]})}var f=a.i(13964),g=a.i(75215);a.s(["ConfirmDialogProvider",0,function({children:a}){let[d,h]=(0,c.useState)(null),i=(0,c.useCallback)(a=>new Promise(b=>{h({options:a,resolve:b})}),[]);(0,g.register_confirm_dialog)(i),(0,c.useEffect)(()=>((0,g.register_confirm_dialog)(i),()=>{(0,g.register_confirm_dialog)(null)}),[i]);let j=(0,c.useMemo)(()=>({confirm:i}),[i]),k=a=>{d?.resolve(a),h(null)};return(0,b.jsxs)(f.ConfirmDialogContext.Provider,{value:j,children:[a,null===d?null:(0,b.jsx)(e,{options:d.options,on_confirm:()=>k(!0),on_cancel:()=>k(!1)})]})}],53030)},13597,a=>{"use strict";let b={runningEntry:null},c=new Set;a.s(["get_tracker_running_entry_snapshot",0,function(){return b},"publish_tracker_running_entry",0,function(a){b={runningEntry:a},c.forEach(a=>{a()})},"subscribe_tracker_running_entry",0,function(a){return c.add(a),()=>{c.delete(a)}}])},67591,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0ja6w18._.js"].map(b=>a.l(b))).then(()=>b(68524)))}];
1
+ module.exports=[18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},98548,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.HooksClientContext},19973,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.ServerInsertedHtml},11391,(a,b,c)=>{"use strict";b.exports=a.r(18622)},61401,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactJsxRuntime},59021,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].React},82583,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored.contexts.AppRouterContext},35634,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactServerDOMTurbopackClient},23678,(a,b,c)=>{"use strict";b.exports=a.r(11391).vendored["react-ssr"].ReactDOM},13964,75215,a=>{"use strict";let b=(0,a.i(59021).createContext)(null);a.s(["ConfirmDialogContext",0,b],13964);let c=null;a.s(["get_registered_confirm_dialog",0,function(){return c},"register_confirm_dialog",0,function(a){c=a}],75215)},3988,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},34344,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},72220,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},96588,(a,b,c)=>{"use strict";function d(){let a,b,c=new Promise((c,d)=>{a=c,b=d});return{resolve:a,reject:b,promise:c}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"createPromiseWithResolvers",{enumerable:!0,get:function(){return d}})},75269,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0});var e={getAssetToken:function(){return i},getAssetTokenQuery:function(){return j},getDeploymentId:function(){return g},getDeploymentIdQuery:function(){return h}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});function g(){return d}function h(a=!1){return d?`${a?"&":"?"}dpl=${d}`:""}function i(){return!1}function j(a=!1){return""}d=void 0},63577,a=>{"use strict";a.s(["is_supabase_configured",0,function(){return("https://ctruizaqyeyidujmtxhc.supabase.co".trim()??"").length>0&&("sb_publishable_gTYHeWoWIPPW3SIC4cYaXw_ux7UL_Jb".trim()??"").length>0}])},72958,51652,a=>{"use strict";a.s(["is_cloud_sync_enabled",0,function(){return!0}],51652),a.i(63577),a.s(["schedule_ui_preferences_cloud_sync",0,function(){}],72958)},52345,70827,a=>{"use strict";var b=a.i(72958);a.s(["create_ui_preference_store",0,function(a){let{default_value:c,is_valid:d,storage_key:e}=a,f=new Set,g=()=>c;return{storage_key:e,default_value:c,is_valid:d,read:g,write:a=>{try{window.localStorage.setItem(e,a),(0,b.schedule_ui_preferences_cloud_sync)()}catch{}},subscribe:a=>(f.add(a),()=>{f.delete(a)}),notify:()=>{f.forEach(a=>{a()})},get_snapshot:g,get_server_snapshot:()=>c}}],52345),a.s(["ACCENT_COLOR_DEFAULT",0,"teal","ACCENT_COLOR_STORAGE_KEY",0,"super-time-tracker-accent-color","ACCENT_COLOR_VALUES",0,["teal","blue","violet","rose","amber","emerald"],"CHECK_IN_FORM_COLLAPSED_DEFAULT",0,"false","CHECK_IN_FORM_COLLAPSED_STORAGE_KEY",0,"super-time-tracker-check-in-form-collapsed","CLAUDE_API_KEY_DEFAULT",0,"","CLAUDE_API_KEY_STORAGE_KEY",0,"super-time-tracker-claude-api-key","CLEAR_TAG_FILTERS_ON_SHEET_CHANGE_DEFAULT",0,"false","CLEAR_TAG_FILTERS_ON_SHEET_CHANGE_STORAGE_KEY",0,"super-time-tracker-clear-tag-filters-on-sheet-change","CLOUD_SYNC_ENABLED_DEFAULT",0,"true","CLOUD_SYNC_ENABLED_STORAGE_KEY",0,"super-time-tracker-cloud-sync-enabled","COLOR_PALETTE_DEFAULT",0,"default","COLOR_PALETTE_STORAGE_KEY",0,"super-time-tracker-color-palette","COLOR_PALETTE_VALUES",0,["default","midnight","warm","ocean","forest","contrast","sunset","lavender","rose","slate","nord","dracula"],"CONFIRM_BEFORE_CHECKOUT_DEFAULT",0,"false","CONFIRM_BEFORE_CHECKOUT_STORAGE_KEY",0,"super-time-tracker-confirm-before-checkout","CONFIRM_DESTRUCTIVE_ACTIONS_DEFAULT",0,"true","CONFIRM_DESTRUCTIVE_ACTIONS_STORAGE_KEY",0,"super-time-tracker-confirm-destructive-actions","DAILY_FOCUS_TARGET_MINUTES_DEFAULT",0,"240","DAILY_FOCUS_TARGET_MINUTES_STORAGE_KEY",0,"super-time-tracker-daily-focus-target-minutes","DEBUG_LOGGING_DEFAULT",0,"false","DEBUG_LOGGING_STORAGE_KEY",0,"super-time-tracker-debug-logging","DEFAULT_REPORTING_RANGE_DEFAULT",0,"none","DEFAULT_REPORTING_RANGE_STORAGE_KEY",0,"super-time-tracker-default-reporting-range","DEFAULT_REPORTING_SORT_DEFAULT",0,"duration","DEFAULT_REPORTING_SORT_STORAGE_KEY",0,"super-time-tracker-default-reporting-sort","DESKTOP_NOTIFICATIONS_DEFAULT",0,"false","DESKTOP_NOTIFICATIONS_STORAGE_KEY",0,"super-time-tracker-desktop-notifications","DURATION_FORMAT_DEFAULT",0,"humanized","DURATION_FORMAT_STORAGE_KEY",0,"super-time-tracker-duration-format","ENTRY_LIST_SORT_DEFAULT",0,"newest","ENTRY_LIST_SORT_STORAGE_KEY",0,"super-time-tracker-entry-list-sort","ENTRY_SUGGESTION_PROVIDER_DEFAULT",0,"none","ENTRY_SUGGESTION_PROVIDER_STORAGE_KEY",0,"super-time-tracker-entry-suggestion-provider","FOCUS_GOALS_PER_SHEET_DEFAULT",0,"{}","FOCUS_GOALS_PER_SHEET_STORAGE_KEY",0,"super-time-tracker-focus-goals-per-sheet","FOCUS_GOALS_PER_TAG_DEFAULT",0,"{}","FOCUS_GOALS_PER_TAG_STORAGE_KEY",0,"super-time-tracker-focus-goals-per-tag","FOCUS_GOAL_SCOPE_DEFAULT",0,"global","FOCUS_GOAL_SCOPE_STORAGE_KEY",0,"super-time-tracker-focus-goal-scope","FOCUS_GOAL_SHEET_NAME_DEFAULT",0,"","FOCUS_GOAL_SHEET_NAME_STORAGE_KEY",0,"super-time-tracker-focus-goal-sheet-name","FOCUS_GOAL_TAG_NAME_DEFAULT",0,"","FOCUS_GOAL_TAG_NAME_STORAGE_KEY",0,"super-time-tracker-focus-goal-tag-name","FOCUS_NUDGES_ENABLED_DEFAULT",0,"true","FOCUS_NUDGES_ENABLED_STORAGE_KEY",0,"super-time-tracker-focus-nudges-enabled","GOOGLE_AI_API_KEY_DEFAULT",0,"","GOOGLE_AI_API_KEY_STORAGE_KEY",0,"super-time-tracker-google-ai-api-key","GREEDY_CLOUD_SYNC_DEFAULT",0,"true","GREEDY_CLOUD_SYNC_STORAGE_KEY",0,"super-time-tracker-greedy-cloud-sync","NO_LOG_REMINDER_MINUTES_DEFAULT",0,"45","NO_LOG_REMINDER_MINUTES_STORAGE_KEY",0,"super-time-tracker-no-log-reminder-minutes","OPENAI_API_KEY_DEFAULT",0,"","OPENAI_API_KEY_STORAGE_KEY",0,"super-time-tracker-openai-api-key","OVERWORK_ALERT_HOURS_DEFAULT",0,"8","OVERWORK_ALERT_HOURS_STORAGE_KEY",0,"super-time-tracker-overwork-alert-hours","TAG_FILTER_MODE_DEFAULT",0,"all","TAG_FILTER_MODE_STORAGE_KEY",0,"super-time-tracker-tag-filter-mode","THEME_MODE_DEFAULT",0,"system","THEME_MODE_STORAGE_KEY",0,"super-time-tracker-theme-mode","TIMER_IN_TITLE_DEFAULT",0,"true","TIMER_IN_TITLE_STORAGE_KEY",0,"super-time-tracker-timer-in-title","TIMER_SHOW_SECONDS_DEFAULT",0,"false","TIMER_SHOW_SECONDS_STORAGE_KEY",0,"super-time-tracker-timer-show-seconds","TIME_FORMAT_DEFAULT",0,"12h","TIME_FORMAT_STORAGE_KEY",0,"super-time-tracker-time-format","TOPBAR_QUICK_ACTIONS_DEFAULT",0,'["today","review","templates","search","reporting","pomodoro"]',"TOPBAR_QUICK_ACTIONS_STORAGE_KEY",0,"super-time-tracker-topbar-quick-actions","TRACKER_SHORTCUT_MAP_DEFAULT",0,'{"help":"?","check-in":"c","check-out":"o","edit-entry":"e","add-note":"n","pomodoro":"p","previous-sheet":"[","next-sheet":"]"}',"TRACKER_SHORTCUT_MAP_STORAGE_KEY",0,"super-time-tracker-shortcut-map","WEEKLY_FOCUS_TARGET_MINUTES_DEFAULT",0,"1200","WEEKLY_FOCUS_TARGET_MINUTES_STORAGE_KEY",0,"super-time-tracker-weekly-focus-target-minutes","WEEK_STARTS_ON_DEFAULT",0,"monday","WEEK_STARTS_ON_STORAGE_KEY",0,"super-time-tracker-week-starts-on","WORK_HOURS_END_DEFAULT",0,"17:00","WORK_HOURS_END_STORAGE_KEY",0,"super-time-tracker-work-hours-end","WORK_HOURS_START_DEFAULT",0,"09:00","WORK_HOURS_START_STORAGE_KEY",0,"super-time-tracker-work-hours-start"],70827)},24047,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.DURATION_FORMAT_STORAGE_KEY,default_value:c.DURATION_FORMAT_DEFAULT,is_valid:a=>"humanized"===a||"clock"===a||"decimal"===a});a.s(["duration_format_preference",0,d])},46299,a=>{"use strict";a.s(["is_modal_dialog_open",0,function(){return null!==document.querySelector('[role="dialog"][aria-modal="true"]')}])},32297,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.CONFIRM_DESTRUCTIVE_ACTIONS_STORAGE_KEY,default_value:c.CONFIRM_DESTRUCTIVE_ACTIONS_DEFAULT,is_valid:a=>"true"===a||"false"===a});a.s(["confirm_destructive_actions_preference",0,d])},79918,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.ENTRY_LIST_SORT_STORAGE_KEY,default_value:c.ENTRY_LIST_SORT_DEFAULT,is_valid:a=>"newest"===a||"oldest"===a||"duration"===a||"description"===a});a.s(["entry_list_sort_preference",0,d])},50825,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.TIME_FORMAT_STORAGE_KEY,default_value:c.TIME_FORMAT_DEFAULT,is_valid:a=>"12h"===a||"24h"===a});a.s(["time_format_preference",0,d])},7048,a=>{"use strict";let b=new Set,c="Settings saved";a.s(["SETTINGS_SAVED_DEFAULT_MESSAGE",0,c,"notify_settings_saved",0,function(a=c){},"subscribe_settings_saved",0,function(a){return b.add(a),()=>{b.delete(a)}}])},89969,a=>{"use strict";a.s(["get_button_class_name",0,function(a="ghost",b="default"){return`cursor-pointer appearance-none rounded-[0.65rem] border border-transparent font-inherit font-semibold disabled:cursor-not-allowed disabled:opacity-55 ${({default:"px-3.5 py-2.5",small:"px-2.5 py-1.5 text-xs"})[b]} ${({primary:"border-accent-border bg-[var(--accent)] text-[var(--accent-text-on)]",ghost:"border-panel-border bg-ghost-bg text-inherit",danger:"border-danger-border bg-danger-soft text-danger","danger-solid":"border-danger-border bg-[var(--danger-solid)] text-[var(--danger-text-on)]"})[a]}`}])},87281,a=>{"use strict";var b=a.i(49170);a.s(["is_greedy_cloud_sync_enabled",0,function(){return"true"===b.greedy_cloud_sync_preference.read()}])},72327,40395,76121,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=(0,b.create_ui_preference_store)({storage_key:c.FOCUS_NUDGES_ENABLED_STORAGE_KEY,default_value:c.FOCUS_NUDGES_ENABLED_DEFAULT,is_valid:a=>"true"===a||"false"===a});a.s(["focus_nudges_enabled_preference",0,d],72327);let e=(0,b.create_ui_preference_store)({storage_key:c.NO_LOG_REMINDER_MINUTES_STORAGE_KEY,default_value:c.NO_LOG_REMINDER_MINUTES_DEFAULT,is_valid:a=>{if(!/^\d+$/.test(a))return!1;let b=Number.parseInt(a,10);return b>=5&&b<=240}});a.s(["no_log_reminder_minutes_preference",0,e],40395);let f=(0,b.create_ui_preference_store)({storage_key:c.OVERWORK_ALERT_HOURS_STORAGE_KEY,default_value:c.OVERWORK_ALERT_HOURS_DEFAULT,is_valid:a=>{if(!/^\d+$/.test(a))return!1;let b=Number.parseInt(a,10);return b>=1&&b<=16}});a.s(["overwork_alert_hours_preference",0,f],76121)},22496,43329,a=>{"use strict";var b=a.i(52345),c=a.i(70827);let d=/^([01]\d|2[0-3]):[0-5]\d$/,e=(0,b.create_ui_preference_store)({storage_key:c.WORK_HOURS_END_STORAGE_KEY,default_value:c.WORK_HOURS_END_DEFAULT,is_valid:a=>d.test(a)});a.s(["work_hours_end_preference",0,e],22496);let f=/^([01]\d|2[0-3]):[0-5]\d$/,g=(0,b.create_ui_preference_store)({storage_key:c.WORK_HOURS_START_STORAGE_KEY,default_value:c.WORK_HOURS_START_DEFAULT,is_valid:a=>f.test(a)});a.s(["work_hours_start_preference",0,g],43329)},97917,a=>{"use strict";let b=new Set;a.s(["notify_in_app",0,function(a){},"subscribe_in_app_notifications",0,function(a){return b.add(a),()=>{b.delete(a)}}])},80185,a=>{"use strict";a.s(["should_ignore_keyboard_shortcut",0,function(a){let b=a.target;if(!(b instanceof HTMLElement))return!1;if(b.isContentEditable)return!0;let c=b.tagName;return"INPUT"===c||"TEXTAREA"===c||"SELECT"===c}])},63652,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},41427,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(26389);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},73260,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},54721,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(61401),e=a.r(23678),f=a.r(56704),g=a.r(73260),h=a.r(75269);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},69549,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(61401),e=a.r(59021),f=a.r(41427),g=a.r(54721);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},81277,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(63652)._(a.r(69549));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},7386,85928,89184,a=>{"use strict";var b=a.i(61401),c=a.i(59021);function d({label:a,description:c,compact:e}){return(0,b.jsxs)("div",{className:"contents",children:[(0,b.jsx)("dt",{className:"m-0",children:(0,b.jsx)("kbd",{className:`inline-block min-w-7 rounded border border-panel-border bg-surface text-center font-mono font-semibold text-foreground ${e?"px-1 py-0.5 text-[0.7rem]":"px-1.5 py-0.5 text-[0.78rem]"}`,children:a})}),(0,b.jsx)("dd",{className:`m-0 self-center leading-snug text-muted ${e?"text-[0.8rem]":"text-[0.9rem]"}`,children:c})]})}function e({sections:a,compact:c=!1}){return(0,b.jsx)("div",{className:`flex flex-col ${c?"gap-2.5":"gap-4"}`,children:a.map(a=>(0,b.jsxs)("section",{children:[(0,b.jsx)("h3",{className:`m-0 font-semibold uppercase tracking-[0.04em] text-muted ${c?"text-[0.65rem]":"text-[0.72rem]"}`,children:a.title}),(0,b.jsx)("dl",{className:`m-0 grid grid-cols-[auto_minmax(0,1fr)] ${c?"mt-1.5 gap-x-3 gap-y-1.5":"mt-2 gap-x-4 gap-y-2"}`,children:a.entries.map(e=>(0,b.jsx)(d,{label:e.label,description:e.description,compact:c},`${a.title}-${e.label}-${e.description}`))})]},a.title))})}var f=a.i(89969);a.s(["KeyboardShortcutsDialog",0,function({sections:a,on_close:d}){let g=(0,c.useId)(),h=(0,c.useRef)(null);return(0,c.useEffect)(()=>{h.current?.focus();let a=a=>{"Escape"===a.key&&d()};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[d]),(0,b.jsxs)("div",{className:"fixed inset-0 z-100 flex items-center justify-center p-5",role:"presentation",children:[(0,b.jsx)("button",{type:"button",className:"absolute inset-0 cursor-default border-0 bg-overlay p-0","aria-label":"Dismiss dialog",onClick:d}),(0,b.jsxs)("div",{role:"dialog","aria-modal":"true","aria-labelledby":g,className:"relative z-1 w-full max-w-lg rounded-lg border border-panel-border bg-panel p-5 shadow-md",children:[(0,b.jsx)("h2",{id:g,className:"m-0 text-[1.1rem] font-[650] tracking-tight",children:"Keyboard shortcuts"}),(0,b.jsx)("div",{className:"mt-4 max-h-[min(28rem,70vh)] overflow-y-auto pr-1",children:(0,b.jsx)(e,{sections:a})}),(0,b.jsx)("div",{className:"mt-5 flex justify-end",children:(0,b.jsx)("button",{ref:h,type:"button",className:(0,f.get_button_class_name)("primary"),onClick:d,children:"Close"})})]})]})}],7386);var g=a.i(75049);a.s(["get_tracker_keyboard_shortcut_sections",0,function(a=g.tracker_shortcut_defaults){return[...function(a="?"){return[{title:"General",entries:[{label:"Ctrl+P",description:"Open command palette"},{label:a,description:"Show keyboard shortcuts"}]}]}("?"===a.help?"?":a.help.toUpperCase()),{title:"Tracker",entries:[{label:a["check-in"].toUpperCase(),description:"Check in (focus description)"},{label:a["check-out"].toUpperCase(),description:"Check out"},{label:a["edit-entry"].toUpperCase(),description:"Edit active entry description"},{label:a["add-note"].toUpperCase(),description:"Add note to active entry"},{label:a.pomodoro.toUpperCase(),description:"Open Pomodoro"},{label:a["previous-sheet"],description:"Previous sheet"},{label:a["next-sheet"],description:"Next sheet"},{label:a["zen-mode"].toUpperCase(),description:"Toggle Zen Mode focus engine"}]}]}],85928);var h=a.i(46299),i=a.i(80185);a.s(["use_document_keyboard_shortcuts",0,function(a){let b=(0,c.useRef)(a);b.current=a,(0,c.useEffect)(()=>{let a=a=>{if(!(0,i.should_ignore_keyboard_shortcut)(a)&&!(0,h.is_modal_dialog_open)()){for(let c of b.current)if(c.is_available?.()!==!1&&function(a,b){let c=b.modifiers??[],d=c.includes("alt"),e=c.includes("ctrl"),f=c.includes("meta"),g=c.includes("shift");return a.altKey===d&&a.ctrlKey===e&&a.metaKey===f&&a.shiftKey===g&&(1===a.key.length?a.key.toLowerCase():a.key)===(1===b.key.length?b.key.toLowerCase():b.key)}(a,c)){a.preventDefault(),c.action();return}}};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[])}],89184)},53030,a=>{"use strict";var b=a.i(61401),c=a.i(59021),d=a.i(89969);function e({options:a,on_confirm:f,on_cancel:g}){let h=(0,c.useId)(),i=(0,c.useRef)(null),j=(0,c.useRef)(null),{cancelLabel:k="Cancel",confirmLabel:l="Confirm",message:m,title:n,variant:o="default"}=a;(0,c.useEffect)(()=>{let a=i.current;if(null!==a&&!a.open)return a.showModal(),()=>{a.open&&a.close()}},[]),(0,c.useEffect)(()=>{j.current?.focus()},[]);let p=()=>{i.current?.close(),g()};return(0,b.jsxs)("dialog",{ref:i,"aria-labelledby":h,className:"fixed inset-0 z-100 m-0 flex max-h-none w-full max-w-none items-center justify-center border-0 bg-transparent p-5 backdrop:bg-overlay open:flex",onCancel:a=>{a.preventDefault(),p()},children:[(0,b.jsx)("button",{type:"button",tabIndex:-1,"aria-label":"Dismiss dialog",className:"absolute inset-0 z-0 cursor-default border-0 bg-transparent p-0",onClick:p}),(0,b.jsxs)("div",{className:"relative z-1 w-full max-w-md rounded-lg border border-panel-border bg-panel p-5 shadow-md",children:[(0,b.jsx)("h2",{id:h,className:"m-0 text-[1.1rem] font-[650] tracking-tight",children:n}),(0,b.jsx)("p",{className:"m-0 mt-2 text-[0.9rem] leading-relaxed text-muted",children:m}),(0,b.jsxs)("div",{className:"mt-5 flex flex-wrap justify-end gap-2",children:[(0,b.jsx)("button",{type:"button",className:(0,d.get_button_class_name)("ghost"),onClick:p,children:k}),(0,b.jsx)("button",{ref:j,type:"button",className:(0,d.get_button_class_name)("danger"===o?"danger":"primary"),onClick:f,children:l})]})]})]})}var f=a.i(13964),g=a.i(75215);a.s(["ConfirmDialogProvider",0,function({children:a}){let[d,h]=(0,c.useState)(null),i=(0,c.useCallback)(a=>new Promise(b=>{h({options:a,resolve:b})}),[]);(0,g.register_confirm_dialog)(i),(0,c.useEffect)(()=>((0,g.register_confirm_dialog)(i),()=>{(0,g.register_confirm_dialog)(null)}),[i]);let j=(0,c.useMemo)(()=>({confirm:i}),[i]),k=a=>{d?.resolve(a),h(null)};return(0,b.jsxs)(f.ConfirmDialogContext.Provider,{value:j,children:[a,null===d?null:(0,b.jsx)(e,{options:d.options,on_confirm:()=>k(!0),on_cancel:()=>k(!1)})]})}],53030)},13597,a=>{"use strict";let b={runningEntry:null},c=new Set;a.s(["get_tracker_running_entry_snapshot",0,function(){return b},"publish_tracker_running_entry",0,function(a){b={runningEntry:a},c.forEach(a=>{a()})},"subscribe_tracker_running_entry",0,function(a){return c.add(a),()=>{c.delete(a)}}])},67591,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0lp.vd1._.js"].map(b=>a.l(b))).then(()=>b(68524)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0sx0ra6._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,4,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c,archived:d})=>({name:a,activeEntryID:c,...!0===d?{archived:!0}:{},entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:4,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>4||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<4;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets)for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}return[...b].sort((a,b)=>a.localeCompare(b))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},19656,a=>{"use strict";a.s(["PomodoroView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroView() from the server but PomodoroView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-view.tsx <module evaluation>","PomodoroView")},90256,a=>{"use strict";a.s(["PomodoroView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroView() from the server but PomodoroView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-view.tsx","PomodoroView")},73673,a=>{"use strict";a.i(19656);var b=a.i(90256);a.n(b)},12802,a=>{"use strict";var b=a.i(38860),c=a.i(73673),d=a.i(23750),e=a.i(4813);async function f(){let a=await (0,e.read_db)(),f=(0,d.collect_known_tags)(a);return(0,b.jsx)(c.PomodoroView,{known_tags:f})}a.s(["default",0,f])},68576,a=>{a.n(a.i(12802))}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},54508,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},59341,40388,67511,92398,26351,a=>{"use strict";var b=a.i(60526),c=a.i(50227);let d="main",e=c.default.join(b.default.homedir(),".super-time-tracker"),f=c.default.join(e,"db.json");a.s(["DB_PATH",0,f,"DB_VERSION",0,5,"DEFAULT_SHEET_NAME",0,d],59341),a.s(["convert_json_db",0,function(a){let{sheets:b,version:c,activeSheetName:d}=a;return{version:c,activeSheetName:d,sheets:b.map(({name:a,entries:b,tasks:c,activeEntryID:d,archived:e})=>({name:a,activeEntryID:d,...!0===e?{archived:!0}:{},tasks:(c??[]).map(({id:a,title:b,createdAt:c,updatedAt:d,completedAt:e})=>({id:a,title:b,createdAt:new Date(c),updatedAt:new Date(d),completedAt:null===e?null:new Date(e)})),entries:b.map(({id:a,start:b,end:c,description:d,tags:e,notes:f,archived:g})=>({id:a,description:d,tags:e,notes:f.map(({timestamp:a,text:b})=>({text:b,timestamp:new Date(a)})),start:new Date(b),end:null===c?null:new Date(c),...!0===g?{archived:!0}:{}}))}))}}],40388);var g=a.i(2157);async function h(a){try{await g.promises.mkdir(a,{recursive:!0})}catch(a){if("EEXIST"!==(null!==a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code?a.code:null))throw a}}function i(a,b=[],c=null,d=[]){if(0===a.length)throw Error("New sheet name must not be empty");if(null!==c&&void 0===b.find(({id:a})=>a===c))throw Error("New sheet active entry does not exist");return{name:a,entries:b,tasks:d,activeEntryID:c}}a.s(["ensure_dir_exists",0,h],67511),a.s(["gen_db",0,function(){return{version:5,sheets:[i(d)],activeSheetName:d}},"gen_sheet",0,i],92398);let j={2:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(1!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 2.`);return{version:2,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d})=>({tags:[],notes:[],id:a,end:c,start:b,description:d}))}))}},3:function(a){let{sheets:b,version:c,activeSheetName:d}=a;if(2!==c&&void 0!==c)throw Error(`DB is version ${c}, cannot migrate to version 3.`);return{version:3,activeSheetName:d,sheets:b.map(({name:a,entries:b,activeEntryID:c})=>({name:a,activeEntryID:c,tasks:[],entries:b.map(({id:a,start:b,end:c,description:d,tags:e})=>({notes:[],tags:e,id:a,end:c,start:b,description:d}))}))}},4:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(3!==b)throw Error(`DB is version ${b}, cannot migrate to version 4.`);return{version:4,activeSheetName:c,sheets:d}},5:function(a){let{version:b,activeSheetName:c,sheets:d}=a;if(4!==b)throw Error(`DB is version ${b}, cannot migrate to version 5.`);return{version:5,activeSheetName:c,sheets:d.map(a=>({...a,tasks:a.tasks??[]}))}}};a.s(["migrate_json_db",0,function(a){let b=a,c=!1,d=b.version??1;if(d>5||d<1)throw Error(`Unknown DB version ${b.version}, cannot load.`);for(;d<5;){let a=d+1,e=j[a];if(void 0===e)throw Error(`Missing migration from version ${d} to ${a}.`);if((b=e(b)).version!==a)throw Error(`Invalid migration output for version ${a}.`);d=a,c=!0}return{json_db:b,did_migrate:c}}],26351)},37070,a=>{"use strict";function b(a,b){let c=new Set,d=[];for(let e of[...a,...b]){let a=`${e.timestamp.getTime()}:${e.text}`;c.has(a)||(c.add(a),d.push(e))}return d.sort((a,b)=>a.timestamp.getTime()-b.timestamp.getTime()),d}a.s(["dedupe_sheet_entries_by_id",0,function(a){let c=new Map;for(let d of a){let a=c.get(d.id);if(void 0===a){c.set(d.id,d);continue}if(null===d.end&&null!==a.end){c.set(d.id,{...d,notes:b(d.notes,a.notes)});continue}if(null===a.end&&null!==d.end){c.set(d.id,{...a,notes:b(a.notes,d.notes)});continue}c.set(d.id,{...a,notes:b(a.notes,d.notes)})}return[...c.values()].sort((a,b)=>a.id-b.id)}],37070)},79857,a=>{"use strict";var b=a.i(37070);a.s(["dedupe_tracker_db_sheet_entries",0,function(a){let c=!1;for(let d of a.sheets){let a=(0,b.dedupe_sheet_entries_by_id)(d.entries);a.length!==d.entries.length&&(c=!0,d.entries=a)}return c}])},62761,a=>{"use strict";a.s(["find_running_entry_on_sheet",0,function(a){if(null===a.activeEntryID)return null;let b=a.entries.find(({id:b})=>b===a.activeEntryID);return b?.end!=null?null:b??null}])},23220,a=>{"use strict";var b=a.i(62761);a.s(["reconcile_stale_active_entry_ids",0,function(a){let c=!1;for(let d of a.sheets)null!==d.activeEntryID&&null===(0,b.find_running_entry_on_sheet)(d)&&(d.activeEntryID=null,c=!0);return c}])},6931,a=>{"use strict";a.s(["convert_db_to_json",0,function(a){let b=a.sheets.map(a=>({name:a.name,activeEntryID:a.activeEntryID,...!0===a.archived?{archived:!0}:{},tasks:a.tasks.map(a=>({id:a.id,title:a.title,createdAt:a.createdAt.getTime(),updatedAt:a.updatedAt.getTime(),completedAt:null===a.completedAt?null:a.completedAt.getTime()})),entries:a.entries.map(a=>({id:a.id,description:a.description,tags:a.tags,start:a.start.getTime(),end:null===a.end?null:a.end.getTime(),notes:a.notes.map(a=>({text:a.text,timestamp:a.timestamp.getTime()})),...!0===a.archived?{archived:!0}:{}}))}));return{version:a.version,activeSheetName:a.activeSheetName,sheets:b}}])},4813,23761,a=>{"use strict";var b=a.i(23001),c=a.i(50227),d=a.i(2157),e=a.i(59341),f=a.i(40388),g=a.i(67511),h=a.i(92398),i=a.i(26351),j=a.i(79857),k=a.i(23220),l=a.i(6931);async function m(a,b=e.DB_PATH){let c=JSON.stringify((0,l.convert_db_to_json)(a));try{await d.promises.writeFile(b,c)}catch(a){throw Error(`Failed to save DB: ${String(a)}`,{cause:a})}}async function n(a=e.DB_PATH){let b,l=c.default.dirname(a);await (0,g.ensure_dir_exists)(l);try{await d.promises.access(a)}catch{let b=(0,h.gen_db)();return await m(b,a),b}let o=await d.promises.readFile(a,"utf-8");try{b=JSON.parse(o)}catch(b){throw Error(`DB at ${a} is invalid JSON: ${String(b)}`,{cause:b})}let p=(0,i.migrate_json_db)(b);b=p.json_db;let q=(0,f.convert_json_db)(b),r=p.did_migrate,s=(0,k.reconcile_stale_active_entry_ids)(q),t=(0,j.dedupe_tracker_db_sheet_entries)(q);return(r||s||t)&&await m(q,a),q}a.s(["write_local_db",0,m],23761);let o=(0,b.cache)(async a=>n(a));a.s(["read_db",0,o],4813)},23750,a=>{"use strict";a.s(["collect_known_tags",0,function(a){let b=new Set;for(let c of a.sheets){for(let a of c.entries)for(let c of a.tags){let a=c.trim();a.length>0&&b.add(a)}for(let a of c.tasks)for(let c of a.title.match(/@\w+/g)??[])b.add(c)}return[...b].sort((a,b)=>a.localeCompare(b))}])},26758,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},38872,a=>{"use strict";let b={src:a.i(26758).default,width:256,height:256};a.s(["default",0,b])},19656,a=>{"use strict";a.s(["PomodoroView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroView() from the server but PomodoroView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-view.tsx <module evaluation>","PomodoroView")},90256,a=>{"use strict";a.s(["PomodoroView",()=>b]);let b=(0,a.i(65909).registerClientReference)(function(){throw Error("Attempted to call PomodoroView() from the server but PomodoroView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/pomodoro-view.tsx","PomodoroView")},73673,a=>{"use strict";a.i(19656);var b=a.i(90256);a.n(b)},12802,a=>{"use strict";var b=a.i(38860),c=a.i(73673),d=a.i(23750),e=a.i(4813);async function f(){let a=await (0,e.read_db)(),f=(0,d.collect_known_tags)(a);return(0,b.jsx)(c.PomodoroView,{known_tags:f})}a.s(["default",0,f])},68576,a=>{a.n(a.i(12802))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0u.h8zx._.js.map