@locusai/web 0.1.7 → 0.2.2

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 (346) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/next.config.js +15 -2
  3. package/package.json +26 -3
  4. package/src/app/(auth)/invite/page.tsx +109 -0
  5. package/src/app/(auth)/layout.tsx +19 -0
  6. package/src/app/(auth)/login/page.tsx +65 -0
  7. package/src/app/(auth)/onboarding/workspace/page.tsx +46 -0
  8. package/src/app/(auth)/register/page.tsx +165 -0
  9. package/src/app/(dashboard)/activity/page.tsx +7 -0
  10. package/src/app/(dashboard)/backlog/page.tsx +195 -0
  11. package/src/app/(dashboard)/board/page.tsx +141 -0
  12. package/src/app/(dashboard)/layout.tsx +32 -0
  13. package/src/app/(dashboard)/page.tsx +14 -0
  14. package/src/app/(dashboard)/settings/page.tsx +161 -0
  15. package/src/app/(dashboard)/settings/team/page.tsx +75 -0
  16. package/src/app/globals.css +259 -0
  17. package/src/app/layout.tsx +10 -20
  18. package/src/app/providers.tsx +26 -3
  19. package/src/components/AuthLayoutUI.tsx +53 -0
  20. package/src/components/BoardFilter.tsx +75 -74
  21. package/src/components/CreateModal/CreateModal.tsx +142 -0
  22. package/src/components/CreateModal/index.ts +1 -0
  23. package/src/components/Editor.tsx +279 -0
  24. package/src/components/Header.tsx +99 -12
  25. package/src/components/PageLayout.tsx +69 -0
  26. package/src/components/PropertyItem.tsx +55 -9
  27. package/src/components/Sidebar.tsx +280 -36
  28. package/src/components/SprintCreateModal.tsx +84 -0
  29. package/src/components/TaskCard.tsx +196 -78
  30. package/src/components/TaskCreateModal.tsx +181 -178
  31. package/src/components/TaskPanel.tsx +140 -692
  32. package/src/components/WorkspaceCreateModal.tsx +97 -0
  33. package/src/components/WorkspaceProtected.tsx +91 -0
  34. package/src/components/auth/InviteSteps.tsx +220 -0
  35. package/src/components/auth/LoginSteps.tsx +86 -0
  36. package/src/components/auth/RegisterSteps.tsx +371 -0
  37. package/src/components/auth/index.ts +3 -0
  38. package/src/components/backlog/BacklogList.tsx +92 -0
  39. package/src/components/backlog/BacklogSection.tsx +137 -0
  40. package/src/components/backlog/CompletedSprintItem.tsx +95 -0
  41. package/src/components/backlog/CompletedSprintsSection.tsx +77 -0
  42. package/src/components/backlog/SprintSection.tsx +155 -0
  43. package/src/components/backlog/constants.ts +26 -0
  44. package/src/components/board/BoardColumn.tsx +97 -0
  45. package/src/components/board/BoardContent.tsx +84 -0
  46. package/src/components/board/BoardEmptyState.tsx +82 -0
  47. package/src/components/board/BoardHeader.tsx +47 -0
  48. package/src/components/board/SprintMindmap.tsx +65 -0
  49. package/src/components/board/constants.ts +40 -0
  50. package/src/components/board/index.ts +5 -0
  51. package/src/components/common/ErrorState.tsx +124 -0
  52. package/src/components/common/LoadingState.tsx +83 -0
  53. package/src/components/common/index.ts +40 -0
  54. package/src/components/dashboard/ActivityFeed.tsx +77 -0
  55. package/src/components/dashboard/ActivityItem.tsx +207 -0
  56. package/src/components/dashboard/QuickActions.tsx +50 -0
  57. package/src/components/dashboard/StatCard.tsx +79 -0
  58. package/src/components/dnd/index.tsx +51 -0
  59. package/src/components/docs/DocsEditorArea.tsx +87 -0
  60. package/src/components/docs/DocsHeaderActions.tsx +121 -0
  61. package/src/components/docs/DocsSidebar.tsx +351 -0
  62. package/src/components/index.ts +7 -0
  63. package/src/components/onboarding/StepProgress.tsx +21 -0
  64. package/src/components/onboarding/index.ts +1 -0
  65. package/src/components/settings/ApiKeyConfirmationModal.tsx +81 -0
  66. package/src/components/settings/ApiKeyCreatedModal.tsx +96 -0
  67. package/src/components/settings/ApiKeysList.tsx +143 -0
  68. package/src/components/settings/ApiKeysSettings.tsx +144 -0
  69. package/src/components/settings/InviteMemberModal.tsx +106 -0
  70. package/src/components/settings/ProjectSetupGuide.tsx +147 -0
  71. package/src/components/settings/SettingItem.tsx +32 -0
  72. package/src/components/settings/SettingSection.tsx +50 -0
  73. package/src/components/settings/TeamInvitationsList.tsx +90 -0
  74. package/src/components/settings/TeamMembersList.tsx +95 -0
  75. package/src/components/settings/index.ts +8 -0
  76. package/src/components/task-panel/TaskActivity.tsx +127 -0
  77. package/src/components/task-panel/TaskChecklist.tsx +142 -0
  78. package/src/components/task-panel/TaskDescription.tsx +201 -0
  79. package/src/components/task-panel/TaskDocs.tsx +137 -0
  80. package/src/components/task-panel/TaskHeader.tsx +125 -0
  81. package/src/components/task-panel/TaskProperties.tsx +111 -0
  82. package/src/components/task-panel/index.ts +12 -0
  83. package/src/components/typography/EmptyStateText.tsx +59 -0
  84. package/src/components/typography/MetadataText.tsx +65 -0
  85. package/src/components/typography/SecondaryText.tsx +60 -0
  86. package/src/components/typography/SectionLabel.tsx +60 -0
  87. package/src/components/typography/index.ts +14 -0
  88. package/src/components/typography-scales.tsx +218 -0
  89. package/src/components/ui/Avatar.tsx +123 -0
  90. package/src/components/ui/Badge.tsx +69 -2
  91. package/src/components/ui/Button.tsx +71 -30
  92. package/src/components/ui/Checkbox.tsx +34 -0
  93. package/src/components/ui/Dropdown.tsx +67 -1
  94. package/src/components/ui/EmptyState.tsx +129 -0
  95. package/src/components/ui/Input.tsx +53 -6
  96. package/src/components/ui/Modal.tsx +45 -12
  97. package/src/components/ui/OtpInput.tsx +148 -0
  98. package/src/components/ui/Skeleton.tsx +36 -0
  99. package/src/components/ui/Spinner.tsx +112 -0
  100. package/src/components/ui/Textarea.tsx +28 -3
  101. package/src/components/ui/Toast.tsx +99 -0
  102. package/src/components/ui/Toggle.tsx +63 -0
  103. package/src/components/ui/constants.ts +108 -0
  104. package/src/components/ui/index.ts +7 -0
  105. package/src/context/AuthContext.tsx +140 -0
  106. package/src/context/index.ts +1 -0
  107. package/src/hooks/backlog/index.ts +13 -0
  108. package/src/hooks/backlog/useBacklogActions.ts +144 -0
  109. package/src/hooks/backlog/useBacklogComposite.ts +73 -0
  110. package/src/hooks/backlog/useBacklogData.ts +74 -0
  111. package/src/hooks/backlog/useBacklogDragDrop.ts +118 -0
  112. package/src/hooks/backlog/useBacklogUI.ts +74 -0
  113. package/src/hooks/index.ts +22 -0
  114. package/src/hooks/task-panel/index.ts +13 -0
  115. package/src/hooks/task-panel/useTaskActions.ts +200 -0
  116. package/src/hooks/task-panel/useTaskComputedValues.ts +30 -0
  117. package/src/hooks/task-panel/useTaskData.ts +78 -0
  118. package/src/hooks/task-panel/useTaskPanelComposite.ts +161 -0
  119. package/src/hooks/task-panel/useTaskUIState.ts +80 -0
  120. package/src/hooks/useAuthLayoutLogic.ts +43 -0
  121. package/src/hooks/useAuthenticatedUser.ts +36 -0
  122. package/src/hooks/useAuthenticatedUserWithOrg.ts +41 -0
  123. package/src/hooks/useBacklog.ts +303 -0
  124. package/src/hooks/useBoard.ts +230 -0
  125. package/src/hooks/useDashboardLayout.ts +49 -0
  126. package/src/hooks/useDocs.ts +279 -0
  127. package/src/hooks/useDocsQuery.ts +99 -0
  128. package/src/hooks/useDocsSidebarState.ts +104 -0
  129. package/src/hooks/useFormState.ts +40 -0
  130. package/src/hooks/useGlobalKeydowns.ts +52 -0
  131. package/src/hooks/useInviteForm.ts +122 -0
  132. package/src/hooks/useLoginForm.ts +84 -0
  133. package/src/hooks/useMutationWithToast.ts +56 -0
  134. package/src/hooks/useOrganizationQuery.ts +55 -0
  135. package/src/hooks/useRegisterForm.ts +216 -0
  136. package/src/hooks/useSprintsQuery.ts +38 -0
  137. package/src/hooks/useTaskDescription.ts +102 -0
  138. package/src/hooks/useTaskPanel.ts +341 -0
  139. package/src/hooks/useTasksQuery.ts +39 -0
  140. package/src/hooks/useTeamManagement.ts +92 -0
  141. package/src/hooks/useWorkspaceCreateForm.ts +70 -0
  142. package/src/hooks/useWorkspaceId.ts +29 -0
  143. package/src/lib/api-client.ts +40 -23
  144. package/src/lib/config.ts +25 -0
  145. package/src/lib/constants.ts +83 -0
  146. package/src/lib/options.ts +96 -0
  147. package/src/lib/query-keys.ts +91 -0
  148. package/src/lib/typography.ts +103 -0
  149. package/src/lib/utils.ts +4 -0
  150. package/src/lib/validation.ts +192 -0
  151. package/src/services/index.ts +7 -3
  152. package/src/services/notifications.ts +80 -0
  153. package/src/utils/env.utils.ts +15 -0
  154. package/src/views/ActivityView.tsx +123 -0
  155. package/src/views/Dashboard.tsx +126 -0
  156. package/src/views/Docs.tsx +98 -612
  157. package/tsconfig.tsbuildinfo +1 -1
  158. package/.next/BUILD_ID +0 -1
  159. package/.next/app-build-manifest.json +0 -55
  160. package/.next/app-path-routes-manifest.json +0 -8
  161. package/.next/build-manifest.json +0 -33
  162. package/.next/cache/.previewinfo +0 -1
  163. package/.next/cache/.rscinfo +0 -1
  164. package/.next/cache/.tsbuildinfo +0 -1
  165. package/.next/cache/config.json +0 -7
  166. package/.next/cache/webpack/client-production/0.pack +0 -0
  167. package/.next/cache/webpack/client-production/index.pack +0 -0
  168. package/.next/cache/webpack/edge-server-production/0.pack +0 -0
  169. package/.next/cache/webpack/edge-server-production/index.pack +0 -0
  170. package/.next/cache/webpack/server-production/0.pack +0 -0
  171. package/.next/cache/webpack/server-production/index.pack +0 -0
  172. package/.next/diagnostics/build-diagnostics.json +0 -6
  173. package/.next/diagnostics/framework.json +0 -1
  174. package/.next/export-detail.json +0 -5
  175. package/.next/export-marker.json +0 -6
  176. package/.next/images-manifest.json +0 -57
  177. package/.next/next-minimal-server.js.nft.json +0 -1
  178. package/.next/next-server.js.nft.json +0 -1
  179. package/.next/package.json +0 -1
  180. package/.next/prerender-manifest.json +0 -137
  181. package/.next/react-loadable-manifest.json +0 -32
  182. package/.next/required-server-files.json +0 -324
  183. package/.next/routes-manifest.json +0 -77
  184. package/.next/server/app/_not-found/page.js +0 -2
  185. package/.next/server/app/_not-found/page.js.nft.json +0 -1
  186. package/.next/server/app/_not-found/page_client-reference-manifest.js +0 -1
  187. package/.next/server/app/_not-found.html +0 -1
  188. package/.next/server/app/_not-found.meta +0 -8
  189. package/.next/server/app/_not-found.rsc +0 -21
  190. package/.next/server/app/backlog/page.js +0 -2
  191. package/.next/server/app/backlog/page.js.nft.json +0 -1
  192. package/.next/server/app/backlog/page_client-reference-manifest.js +0 -1
  193. package/.next/server/app/backlog.html +0 -1
  194. package/.next/server/app/backlog.meta +0 -7
  195. package/.next/server/app/backlog.rsc +0 -25
  196. package/.next/server/app/docs/page.js +0 -97
  197. package/.next/server/app/docs/page.js.nft.json +0 -1
  198. package/.next/server/app/docs/page_client-reference-manifest.js +0 -1
  199. package/.next/server/app/docs.html +0 -1
  200. package/.next/server/app/docs.meta +0 -7
  201. package/.next/server/app/docs.rsc +0 -26
  202. package/.next/server/app/favicon.ico/route.js +0 -1
  203. package/.next/server/app/favicon.ico/route.js.nft.json +0 -1
  204. package/.next/server/app/favicon.ico.body +0 -0
  205. package/.next/server/app/favicon.ico.meta +0 -1
  206. package/.next/server/app/index.html +0 -1
  207. package/.next/server/app/index.meta +0 -7
  208. package/.next/server/app/index.rsc +0 -25
  209. package/.next/server/app/page.js +0 -2
  210. package/.next/server/app/page.js.nft.json +0 -1
  211. package/.next/server/app/page_client-reference-manifest.js +0 -1
  212. package/.next/server/app/settings/page.js +0 -2
  213. package/.next/server/app/settings/page.js.nft.json +0 -1
  214. package/.next/server/app/settings/page_client-reference-manifest.js +0 -1
  215. package/.next/server/app/settings.html +0 -1
  216. package/.next/server/app/settings.meta +0 -7
  217. package/.next/server/app/settings.rsc +0 -25
  218. package/.next/server/app-paths-manifest.json +0 -8
  219. package/.next/server/chunks/496.js +0 -6
  220. package/.next/server/chunks/585.js +0 -1
  221. package/.next/server/chunks/665.js +0 -1
  222. package/.next/server/chunks/699.js +0 -22
  223. package/.next/server/chunks/852.js +0 -7
  224. package/.next/server/functions-config-manifest.json +0 -4
  225. package/.next/server/interception-route-rewrite-manifest.js +0 -1
  226. package/.next/server/middleware-build-manifest.js +0 -1
  227. package/.next/server/middleware-manifest.json +0 -6
  228. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  229. package/.next/server/next-font-manifest.js +0 -1
  230. package/.next/server/next-font-manifest.json +0 -1
  231. package/.next/server/pages/404.html +0 -1
  232. package/.next/server/pages/500.html +0 -1
  233. package/.next/server/pages/_app.js +0 -1
  234. package/.next/server/pages/_app.js.nft.json +0 -1
  235. package/.next/server/pages/_document.js +0 -1
  236. package/.next/server/pages/_document.js.nft.json +0 -1
  237. package/.next/server/pages/_error.js +0 -19
  238. package/.next/server/pages/_error.js.nft.json +0 -1
  239. package/.next/server/pages-manifest.json +0 -6
  240. package/.next/server/server-reference-manifest.js +0 -1
  241. package/.next/server/server-reference-manifest.json +0 -1
  242. package/.next/server/webpack-runtime.js +0 -1
  243. package/.next/static/D0NXe04ZCLNDckV_quc8g/_buildManifest.js +0 -1
  244. package/.next/static/D0NXe04ZCLNDckV_quc8g/_ssgManifest.js +0 -1
  245. package/.next/static/chunks/138.b98511c56423f8bb.js +0 -1
  246. package/.next/static/chunks/146-34259952c594a3b0.js +0 -1
  247. package/.next/static/chunks/337-d3bb75304d130513.js +0 -1
  248. package/.next/static/chunks/477.1a6ecfe53375bd9c.js +0 -1
  249. package/.next/static/chunks/487-1808785ba665f784.js +0 -1
  250. package/.next/static/chunks/544.a9569941cc886e9d.js +0 -1
  251. package/.next/static/chunks/87c73c54-1f4741035a95c140.js +0 -1
  252. package/.next/static/chunks/902-d6926825a9fe8784.js +0 -1
  253. package/.next/static/chunks/955-c8f8f6235ae8f8c6.js +0 -1
  254. package/.next/static/chunks/996.e0a334e6ae90900e.js +0 -1
  255. package/.next/static/chunks/app/_not-found/page-44b1804abb44a34d.js +0 -1
  256. package/.next/static/chunks/app/backlog/page-dce1450769bfae8f.js +0 -1
  257. package/.next/static/chunks/app/docs/page-1efee819f25492cb.js +0 -1
  258. package/.next/static/chunks/app/layout-05f504c042b9f7ee.js +0 -1
  259. package/.next/static/chunks/app/page-3fd91aaaa4776ced.js +0 -1
  260. package/.next/static/chunks/app/settings/page-84e16c9638d657e4.js +0 -1
  261. package/.next/static/chunks/framework-152a1bc8c81c7458.js +0 -1
  262. package/.next/static/chunks/main-843ab130fc1be309.js +0 -1
  263. package/.next/static/chunks/main-app-123e879c5a937a00.js +0 -1
  264. package/.next/static/chunks/pages/_app-a050a8e6e4fb04cf.js +0 -1
  265. package/.next/static/chunks/pages/_error-3e422ffd891594de.js +0 -1
  266. package/.next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  267. package/.next/static/chunks/webpack-99a10a055b5bb9c4.js +0 -1
  268. package/.next/static/css/13e8617b72f9d3aa.css +0 -1
  269. package/.next/static/css/8aea088cdc4338f0.css +0 -1
  270. package/.next/static/css/b301ab0424111664.css +0 -1
  271. package/.next/static/media/24c15609eaa28576-s.woff2 +0 -0
  272. package/.next/static/media/2c07349e02a7b712-s.woff2 +0 -0
  273. package/.next/static/media/456105d6ea6d39e0-s.woff2 +0 -0
  274. package/.next/static/media/47cbc4e2adbc5db9-s.p.woff2 +0 -0
  275. package/.next/static/media/4f77bef990aad698-s.woff2 +0 -0
  276. package/.next/static/media/627d916fd739a539-s.woff2 +0 -0
  277. package/.next/static/media/63b255f18bea0ca9-s.woff2 +0 -0
  278. package/.next/static/media/70bd82ac89b4fa42-s.woff2 +0 -0
  279. package/.next/static/media/84602850c8fd81c3-s.woff2 +0 -0
  280. package/.next/trace +0 -46
  281. package/.next/types/app/backlog/page.ts +0 -84
  282. package/.next/types/app/docs/page.ts +0 -84
  283. package/.next/types/app/layout.ts +0 -84
  284. package/.next/types/app/page.ts +0 -84
  285. package/.next/types/app/settings/page.ts +0 -84
  286. package/.next/types/cache-life.d.ts +0 -141
  287. package/.next/types/package.json +0 -1
  288. package/next-env.d.ts +0 -5
  289. package/out/404.html +0 -1
  290. package/out/_next/static/D0NXe04ZCLNDckV_quc8g/_buildManifest.js +0 -1
  291. package/out/_next/static/D0NXe04ZCLNDckV_quc8g/_ssgManifest.js +0 -1
  292. package/out/_next/static/chunks/138.b98511c56423f8bb.js +0 -1
  293. package/out/_next/static/chunks/146-34259952c594a3b0.js +0 -1
  294. package/out/_next/static/chunks/337-d3bb75304d130513.js +0 -1
  295. package/out/_next/static/chunks/477.1a6ecfe53375bd9c.js +0 -1
  296. package/out/_next/static/chunks/487-1808785ba665f784.js +0 -1
  297. package/out/_next/static/chunks/544.a9569941cc886e9d.js +0 -1
  298. package/out/_next/static/chunks/87c73c54-1f4741035a95c140.js +0 -1
  299. package/out/_next/static/chunks/902-d6926825a9fe8784.js +0 -1
  300. package/out/_next/static/chunks/955-c8f8f6235ae8f8c6.js +0 -1
  301. package/out/_next/static/chunks/996.e0a334e6ae90900e.js +0 -1
  302. package/out/_next/static/chunks/app/_not-found/page-44b1804abb44a34d.js +0 -1
  303. package/out/_next/static/chunks/app/backlog/page-dce1450769bfae8f.js +0 -1
  304. package/out/_next/static/chunks/app/docs/page-1efee819f25492cb.js +0 -1
  305. package/out/_next/static/chunks/app/layout-05f504c042b9f7ee.js +0 -1
  306. package/out/_next/static/chunks/app/page-3fd91aaaa4776ced.js +0 -1
  307. package/out/_next/static/chunks/app/settings/page-84e16c9638d657e4.js +0 -1
  308. package/out/_next/static/chunks/framework-152a1bc8c81c7458.js +0 -1
  309. package/out/_next/static/chunks/main-843ab130fc1be309.js +0 -1
  310. package/out/_next/static/chunks/main-app-123e879c5a937a00.js +0 -1
  311. package/out/_next/static/chunks/pages/_app-a050a8e6e4fb04cf.js +0 -1
  312. package/out/_next/static/chunks/pages/_error-3e422ffd891594de.js +0 -1
  313. package/out/_next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  314. package/out/_next/static/chunks/webpack-99a10a055b5bb9c4.js +0 -1
  315. package/out/_next/static/css/13e8617b72f9d3aa.css +0 -1
  316. package/out/_next/static/css/8aea088cdc4338f0.css +0 -1
  317. package/out/_next/static/css/b301ab0424111664.css +0 -1
  318. package/out/_next/static/media/24c15609eaa28576-s.woff2 +0 -0
  319. package/out/_next/static/media/2c07349e02a7b712-s.woff2 +0 -0
  320. package/out/_next/static/media/456105d6ea6d39e0-s.woff2 +0 -0
  321. package/out/_next/static/media/47cbc4e2adbc5db9-s.p.woff2 +0 -0
  322. package/out/_next/static/media/4f77bef990aad698-s.woff2 +0 -0
  323. package/out/_next/static/media/627d916fd739a539-s.woff2 +0 -0
  324. package/out/_next/static/media/63b255f18bea0ca9-s.woff2 +0 -0
  325. package/out/_next/static/media/70bd82ac89b4fa42-s.woff2 +0 -0
  326. package/out/_next/static/media/84602850c8fd81c3-s.woff2 +0 -0
  327. package/out/backlog.html +0 -1
  328. package/out/backlog.txt +0 -25
  329. package/out/docs.html +0 -1
  330. package/out/docs.txt +0 -26
  331. package/out/favicon.ico +0 -0
  332. package/out/index.html +0 -1
  333. package/out/index.txt +0 -25
  334. package/out/logo.png +0 -0
  335. package/out/settings.html +0 -1
  336. package/out/settings.txt +0 -25
  337. package/src/app/backlog/page.tsx +0 -19
  338. package/src/app/page.tsx +0 -16
  339. package/src/app/settings/page.tsx +0 -194
  340. package/src/hooks/useTasks.ts +0 -119
  341. package/src/services/doc.service.ts +0 -27
  342. package/src/services/sprint.service.ts +0 -24
  343. package/src/services/task.service.ts +0 -75
  344. package/src/views/Backlog.tsx +0 -691
  345. package/src/views/Board.tsx +0 -306
  346. /package/src/app/{docs → (dashboard)/docs}/page.tsx +0 -0
@@ -1,324 +0,0 @@
1
- {
2
- "version": 1,
3
- "config": {
4
- "env": {},
5
- "webpack": null,
6
- "eslint": {
7
- "ignoreDuringBuilds": false
8
- },
9
- "typescript": {
10
- "ignoreBuildErrors": false,
11
- "tsconfigPath": "tsconfig.json"
12
- },
13
- "distDir": ".next",
14
- "cleanDistDir": true,
15
- "assetPrefix": "",
16
- "cacheMaxMemorySize": 52428800,
17
- "configOrigin": "next.config.js",
18
- "useFileSystemPublicRoutes": true,
19
- "generateEtags": true,
20
- "pageExtensions": [
21
- "tsx",
22
- "ts",
23
- "jsx",
24
- "js"
25
- ],
26
- "poweredByHeader": true,
27
- "compress": true,
28
- "images": {
29
- "deviceSizes": [
30
- 640,
31
- 750,
32
- 828,
33
- 1080,
34
- 1200,
35
- 1920,
36
- 2048,
37
- 3840
38
- ],
39
- "imageSizes": [
40
- 16,
41
- 32,
42
- 48,
43
- 64,
44
- 96,
45
- 128,
46
- 256,
47
- 384
48
- ],
49
- "path": "/_next/image",
50
- "loader": "default",
51
- "loaderFile": "",
52
- "domains": [],
53
- "disableStaticImages": false,
54
- "minimumCacheTTL": 60,
55
- "formats": [
56
- "image/webp"
57
- ],
58
- "dangerouslyAllowSVG": false,
59
- "contentSecurityPolicy": "script-src 'none'; frame-src 'none'; sandbox;",
60
- "contentDispositionType": "attachment",
61
- "remotePatterns": [],
62
- "unoptimized": true
63
- },
64
- "devIndicators": {
65
- "position": "bottom-left"
66
- },
67
- "onDemandEntries": {
68
- "maxInactiveAge": 60000,
69
- "pagesBufferLength": 5
70
- },
71
- "amp": {
72
- "canonicalBase": ""
73
- },
74
- "basePath": "",
75
- "sassOptions": {},
76
- "trailingSlash": false,
77
- "i18n": null,
78
- "productionBrowserSourceMaps": false,
79
- "excludeDefaultMomentLocales": true,
80
- "serverRuntimeConfig": {},
81
- "publicRuntimeConfig": {},
82
- "reactProductionProfiling": false,
83
- "reactStrictMode": null,
84
- "reactMaxHeadersLength": 6000,
85
- "httpAgentOptions": {
86
- "keepAlive": true
87
- },
88
- "logging": {},
89
- "compiler": {},
90
- "expireTime": 31536000,
91
- "staticPageGenerationTimeout": 60,
92
- "output": "export",
93
- "modularizeImports": {
94
- "@mui/icons-material": {
95
- "transform": "@mui/icons-material/{{member}}"
96
- },
97
- "lodash": {
98
- "transform": "lodash/{{member}}"
99
- }
100
- },
101
- "outputFileTracingRoot": "/home/runner/work/locusai/locusai",
102
- "experimental": {
103
- "useSkewCookie": false,
104
- "nodeMiddleware": false,
105
- "cacheLife": {
106
- "default": {
107
- "stale": 300,
108
- "revalidate": 900,
109
- "expire": 4294967294
110
- },
111
- "seconds": {
112
- "stale": 0,
113
- "revalidate": 1,
114
- "expire": 60
115
- },
116
- "minutes": {
117
- "stale": 300,
118
- "revalidate": 60,
119
- "expire": 3600
120
- },
121
- "hours": {
122
- "stale": 300,
123
- "revalidate": 3600,
124
- "expire": 86400
125
- },
126
- "days": {
127
- "stale": 300,
128
- "revalidate": 86400,
129
- "expire": 604800
130
- },
131
- "weeks": {
132
- "stale": 300,
133
- "revalidate": 604800,
134
- "expire": 2592000
135
- },
136
- "max": {
137
- "stale": 300,
138
- "revalidate": 2592000,
139
- "expire": 4294967294
140
- }
141
- },
142
- "cacheHandlers": {},
143
- "cssChunking": true,
144
- "multiZoneDraftMode": false,
145
- "appNavFailHandling": false,
146
- "prerenderEarlyExit": true,
147
- "serverMinification": true,
148
- "serverSourceMaps": false,
149
- "linkNoTouchStart": false,
150
- "caseSensitiveRoutes": false,
151
- "clientSegmentCache": false,
152
- "dynamicOnHover": false,
153
- "preloadEntriesOnStart": true,
154
- "clientRouterFilter": true,
155
- "clientRouterFilterRedirects": false,
156
- "fetchCacheKeyPrefix": "",
157
- "middlewarePrefetch": "flexible",
158
- "optimisticClientCache": true,
159
- "manualClientBasePath": false,
160
- "cpus": 3,
161
- "memoryBasedWorkersCount": false,
162
- "imgOptConcurrency": null,
163
- "imgOptTimeoutInSeconds": 7,
164
- "imgOptMaxInputPixels": 268402689,
165
- "imgOptSequentialRead": null,
166
- "isrFlushToDisk": true,
167
- "workerThreads": false,
168
- "optimizeCss": false,
169
- "nextScriptWorkers": false,
170
- "scrollRestoration": false,
171
- "externalDir": false,
172
- "disableOptimizedLoading": false,
173
- "gzipSize": true,
174
- "craCompat": false,
175
- "esmExternals": true,
176
- "fullySpecified": false,
177
- "swcTraceProfiling": false,
178
- "forceSwcTransforms": false,
179
- "largePageDataBytes": 128000,
180
- "typedRoutes": false,
181
- "typedEnv": false,
182
- "parallelServerCompiles": false,
183
- "parallelServerBuildTraces": false,
184
- "ppr": false,
185
- "authInterrupts": false,
186
- "webpackMemoryOptimizations": false,
187
- "optimizeServerReact": true,
188
- "viewTransition": false,
189
- "routerBFCache": false,
190
- "removeUncaughtErrorAndRejectionListeners": false,
191
- "validateRSCRequestHeaders": false,
192
- "staleTimes": {
193
- "dynamic": 0,
194
- "static": 300
195
- },
196
- "serverComponentsHmrCache": true,
197
- "staticGenerationMaxConcurrency": 8,
198
- "staticGenerationMinPagesPerWorker": 25,
199
- "dynamicIO": false,
200
- "inlineCss": false,
201
- "useCache": false,
202
- "globalNotFound": false,
203
- "devtoolNewPanelUI": false,
204
- "devtoolSegmentExplorer": false,
205
- "browserDebugInfoInTerminal": false,
206
- "optimizeRouterScrolling": false,
207
- "strictNextHead": true,
208
- "middlewareClientMaxBodySize": 10485760,
209
- "optimizePackageImports": [
210
- "lucide-react",
211
- "date-fns",
212
- "lodash-es",
213
- "ramda",
214
- "antd",
215
- "react-bootstrap",
216
- "ahooks",
217
- "@ant-design/icons",
218
- "@headlessui/react",
219
- "@headlessui-float/react",
220
- "@heroicons/react/20/solid",
221
- "@heroicons/react/24/solid",
222
- "@heroicons/react/24/outline",
223
- "@visx/visx",
224
- "@tremor/react",
225
- "rxjs",
226
- "@mui/material",
227
- "@mui/icons-material",
228
- "recharts",
229
- "react-use",
230
- "effect",
231
- "@effect/schema",
232
- "@effect/platform",
233
- "@effect/platform-node",
234
- "@effect/platform-browser",
235
- "@effect/platform-bun",
236
- "@effect/sql",
237
- "@effect/sql-mssql",
238
- "@effect/sql-mysql2",
239
- "@effect/sql-pg",
240
- "@effect/sql-sqlite-node",
241
- "@effect/sql-sqlite-bun",
242
- "@effect/sql-sqlite-wasm",
243
- "@effect/sql-sqlite-react-native",
244
- "@effect/rpc",
245
- "@effect/rpc-http",
246
- "@effect/typeclass",
247
- "@effect/experimental",
248
- "@effect/opentelemetry",
249
- "@material-ui/core",
250
- "@material-ui/icons",
251
- "@tabler/icons-react",
252
- "mui-core",
253
- "react-icons/ai",
254
- "react-icons/bi",
255
- "react-icons/bs",
256
- "react-icons/cg",
257
- "react-icons/ci",
258
- "react-icons/di",
259
- "react-icons/fa",
260
- "react-icons/fa6",
261
- "react-icons/fc",
262
- "react-icons/fi",
263
- "react-icons/gi",
264
- "react-icons/go",
265
- "react-icons/gr",
266
- "react-icons/hi",
267
- "react-icons/hi2",
268
- "react-icons/im",
269
- "react-icons/io",
270
- "react-icons/io5",
271
- "react-icons/lia",
272
- "react-icons/lib",
273
- "react-icons/lu",
274
- "react-icons/md",
275
- "react-icons/pi",
276
- "react-icons/ri",
277
- "react-icons/rx",
278
- "react-icons/si",
279
- "react-icons/sl",
280
- "react-icons/tb",
281
- "react-icons/tfi",
282
- "react-icons/ti",
283
- "react-icons/vsc",
284
- "react-icons/wi"
285
- ],
286
- "trustHostHeader": false,
287
- "isExperimentalCompile": false
288
- },
289
- "htmlLimitedBots": "Mediapartners-Google|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti",
290
- "bundlePagesRouterDependencies": false,
291
- "configFileName": "next.config.js",
292
- "transpilePackages": [
293
- "@locusai/shared"
294
- ],
295
- "turbopack": {
296
- "root": "/home/runner/work/locusai/locusai"
297
- }
298
- },
299
- "appDir": "/home/runner/work/locusai/locusai/apps/web",
300
- "relativeAppDir": "apps/web",
301
- "files": [
302
- ".next/routes-manifest.json",
303
- ".next/server/pages-manifest.json",
304
- ".next/build-manifest.json",
305
- ".next/prerender-manifest.json",
306
- ".next/server/functions-config-manifest.json",
307
- ".next/server/middleware-manifest.json",
308
- ".next/server/middleware-build-manifest.js",
309
- ".next/server/middleware-react-loadable-manifest.js",
310
- ".next/react-loadable-manifest.json",
311
- ".next/server/app-paths-manifest.json",
312
- ".next/app-path-routes-manifest.json",
313
- ".next/app-build-manifest.json",
314
- ".next/server/server-reference-manifest.js",
315
- ".next/server/server-reference-manifest.json",
316
- ".next/BUILD_ID",
317
- ".next/server/next-font-manifest.js",
318
- ".next/server/next-font-manifest.json",
319
- ".next/required-server-files.json"
320
- ],
321
- "ignore": [
322
- "../../node_modules/next/dist/compiled/@ampproject/toolbox-optimizer/**/*"
323
- ]
324
- }
@@ -1,77 +0,0 @@
1
- {
2
- "version": 3,
3
- "pages404": true,
4
- "caseSensitive": false,
5
- "basePath": "",
6
- "redirects": [
7
- {
8
- "source": "/:path+/",
9
- "destination": "/:path+",
10
- "internal": true,
11
- "statusCode": 308,
12
- "regex": "^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"
13
- }
14
- ],
15
- "headers": [],
16
- "rewrites": {
17
- "beforeFiles": [],
18
- "afterFiles": [],
19
- "fallback": []
20
- },
21
- "dynamicRoutes": [],
22
- "staticRoutes": [
23
- {
24
- "page": "/",
25
- "regex": "^/(?:/)?$",
26
- "routeKeys": {},
27
- "namedRegex": "^/(?:/)?$"
28
- },
29
- {
30
- "page": "/_not-found",
31
- "regex": "^/_not\\-found(?:/)?$",
32
- "routeKeys": {},
33
- "namedRegex": "^/_not\\-found(?:/)?$"
34
- },
35
- {
36
- "page": "/backlog",
37
- "regex": "^/backlog(?:/)?$",
38
- "routeKeys": {},
39
- "namedRegex": "^/backlog(?:/)?$"
40
- },
41
- {
42
- "page": "/docs",
43
- "regex": "^/docs(?:/)?$",
44
- "routeKeys": {},
45
- "namedRegex": "^/docs(?:/)?$"
46
- },
47
- {
48
- "page": "/favicon.ico",
49
- "regex": "^/favicon\\.ico(?:/)?$",
50
- "routeKeys": {},
51
- "namedRegex": "^/favicon\\.ico(?:/)?$"
52
- },
53
- {
54
- "page": "/settings",
55
- "regex": "^/settings(?:/)?$",
56
- "routeKeys": {},
57
- "namedRegex": "^/settings(?:/)?$"
58
- }
59
- ],
60
- "dataRoutes": [],
61
- "rsc": {
62
- "header": "RSC",
63
- "varyHeader": "RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch",
64
- "prefetchHeader": "Next-Router-Prefetch",
65
- "didPostponeHeader": "x-nextjs-postponed",
66
- "contentTypeHeader": "text/x-component",
67
- "suffix": ".rsc",
68
- "prefetchSuffix": ".prefetch.rsc",
69
- "prefetchSegmentHeader": "Next-Router-Segment-Prefetch",
70
- "prefetchSegmentSuffix": ".segment.rsc",
71
- "prefetchSegmentDirSuffix": ".segments"
72
- },
73
- "rewriteHeaders": {
74
- "pathHeader": "x-nextjs-rewritten-path",
75
- "queryHeader": "x-nextjs-rewritten-query"
76
- }
77
- }
@@ -1,2 +0,0 @@
1
- (()=>{var a={};a.id=492,a.ids=[492],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},535:(a,b,c)=>{Promise.resolve().then(c.bind(c,83297)),Promise.resolve().then(c.bind(c,16735)),Promise.resolve().then(c.bind(c,86190))},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},9699:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(41253);let e=async a=>[{type:"image/x-icon",sizes:"200x209",url:(0,d.fillMetadataSegment)(".",await a.params,"favicon.ico")+""}]},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14276:()=>{},16735:(a,b,c)=>{"use strict";c.d(b,{Header:()=>d});let d=(0,c(66352).registerClientReference)(function(){throw Error("Attempted to call Header() from the server but Header 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.")},"/home/runner/work/locusai/locusai/apps/web/src/components/Header.tsx","Header")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},20685:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,metadata:()=>j});var d=c(38828),e=c(87908),f=c.n(e);c(14276);var g=c(16735),h=c(86190),i=c(83297);let j={title:"Locus Dashboard",description:"Local-first task management and documentation for agentic engineering.",icons:{icon:"/favicon.ico"}};function k({children:a}){return(0,d.jsx)("html",{lang:"en",className:"dark",children:(0,d.jsx)("body",{className:`${f().className} antialiased`,children:(0,d.jsx)(i.Providers,{children:(0,d.jsxs)("div",{className:"flex h-screen overflow-hidden bg-background",children:[(0,d.jsx)(h.Sidebar,{}),(0,d.jsx)("main",{className:"flex-1 overflow-auto bg-background p-8",children:(0,d.jsxs)("div",{className:"max-w-[1440px] mx-auto",children:[(0,d.jsx)(g.Header,{}),a]})})]})})})})}},22149:(a,b,c)=>{"use strict";c.d(b,{Header:()=>f});var d=c(13486),e=c(35795);function f(){return(0,d.jsx)("header",{className:"flex items-center mb-6 py-3",children:(0,d.jsxs)("div",{className:"relative flex-1 max-w-md group",children:[(0,d.jsx)(e.A,{size:16,className:"absolute left-3.5 top-1/2 -translate-y-1/2 text-muted-foreground group-focus-within:text-primary transition-colors"}),(0,d.jsx)("input",{type:"text",placeholder:"Search tasks, docs... (⌘K)",className:"w-full bg-secondary/40 border border-border/50 rounded-lg pl-10 pr-4 py-2.5 text-sm text-foreground placeholder:text-muted-foreground/70 outline-none transition-all focus:border-primary/50 focus:ring-2 focus:ring-primary/20 focus:bg-background hover:bg-secondary/60"})]})})}},26518:(a,b,c)=>{"use strict";c.d(b,{cn:()=>f});var d=c(4627),e=c(55855);function f(...a){return(0,e.QP)((0,d.$)(a))}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},28559:(a,b,c)=>{Promise.resolve().then(c.bind(c,91799)),Promise.resolve().then(c.bind(c,22149)),Promise.resolve().then(c.bind(c,31120))},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31120:(a,b,c)=>{"use strict";c.d(b,{Sidebar:()=>o});var d=c(13486),e=c(3976),f=c(5423),g=c(72513),h=c(43967),i=c(34606),j=c(49933),k=c(49989),l=c.n(k),m=c(2984),n=c(26518);function o(){let a=(0,m.usePathname)(),b=[{href:"/",label:"Board",icon:e.A,description:"Manage tasks"},{href:"/backlog",label:"Backlog",icon:f.A,description:"Manage backlog items"},{href:"/docs",label:"Library",icon:g.A,description:"Documents"}];return(0,d.jsxs)("aside",{className:"w-[260px] flex flex-col border-r border-border/50 bg-card/50 backdrop-blur-sm h-full",children:[(0,d.jsx)("div",{className:"flex items-center gap-3 p-5 border-b border-border/50",children:(0,d.jsx)(j.default,{src:"/logo.png",alt:"Locus",width:97.81,height:32,className:"rounded-xl shadow-lg"})}),(0,d.jsxs)("div",{className:"flex-1 p-4",children:[(0,d.jsx)("div",{className:"text-[10px] uppercase font-bold tracking-widest text-muted-foreground/70 mb-3 px-3",children:"Navigation"}),(0,d.jsx)("nav",{className:"space-y-1",children:b.map(b=>{let c=b.icon,e=a===b.href;return(0,d.jsxs)(l(),{href:b.href,className:(0,n.cn)("group flex items-center gap-3 px-3 py-2.5 text-sm font-medium rounded-xl transition-all",e?"bg-primary text-primary-foreground shadow-md shadow-primary/20":"text-muted-foreground hover:bg-secondary hover:text-foreground"),children:[(0,d.jsx)(c,{size:18,className:e?"":"group-hover:scale-110 transition-transform"}),(0,d.jsx)("div",{className:"flex-1",children:(0,d.jsx)("span",{className:"block",children:b.label})}),e&&(0,d.jsx)(h.A,{size:14,className:"opacity-70"})]},b.href)})})]}),(0,d.jsx)("div",{className:"p-4 border-t border-border/50",children:(0,d.jsxs)(l(),{href:"/settings",className:(0,n.cn)("flex items-center gap-3 w-full px-3 py-2.5 text-sm font-medium rounded-xl transition-all","/settings"===a?"bg-secondary text-foreground":"text-muted-foreground hover:bg-secondary/60 hover:text-foreground"),children:[(0,d.jsx)(i.A,{size:18}),(0,d.jsx)("span",{children:"Settings"})]})})]})}},33873:a=>{"use strict";a.exports=require("path")},34385:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>C.a,__next_app__:()=>I,handler:()=>K,pages:()=>H,routeModule:()=>J,tree:()=>G});var d=c(24332),e=c(48819),f=c(93949),g=c(98730),h=c(88996),i=c(16318),j=c(3093),k=c(36748),l=c(98190),m=c(53904),n=c(47735),o=c(20611),p=c(22512),q=c(261),r=c(13863),s=c(8748),t=c(26713),u=c(65262),v=c(97779),w=c(5303),x=c(66704),y=c(67656),z=c(3072),A=c(86439),B=c(93824),C=c.n(B),D=c(97540),E=c(49005),F={};for(let a in D)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(F[a]=()=>D[a]);c.d(b,F);let G={children:["",{children:["/_not-found",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.t.bind(c,50134,23)),"next/dist/client/components/builtin/not-found.js"]}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,20685)),"/home/runner/work/locusai/locusai/apps/web/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,93824,23)),"next/dist/client/components/builtin/global-error.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,35983,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,74482,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,9699))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,H=[],I={require:c,loadChunk:()=>Promise.resolve()},J=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/_not-found/page",pathname:"/_not-found",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:G},distDir:".next",projectDir:""});async function K(a,b,c){var d;let B="/_not-found/page";"/index"===B&&(B="/");let F="false",L=(0,h.getRequestMeta)(a,"postponed"),M=(0,h.getRequestMeta)(a,"minimalMode"),N=await J.prepare(a,b,{srcPage:B,multiZoneDraftMode:F});if(!N)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:O,query:P,params:Q,parsedUrl:R,pageIsDynamic:S,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,serverActionsManifest:W,clientReferenceManifest:X,subresourceIntegrityManifest:Y,prerenderManifest:Z,isDraftMode:$,resolvedPathname:_,revalidateOnlyGenerated:aa,routerServerContext:ab,nextConfig:ac}=N,ad=R.pathname||"/",ae=(0,q.normalizeAppPath)(B),{isOnDemandRevalidate:af}=N,ag=Z.dynamicRoutes[ae],ah=Z.routes[_],ai=!!(ag||ah||Z.routes[ae]),aj=a.headers["user-agent"]||"",ak=(0,t.getBotType)(aj),al=(0,o.isHtmlBotRequest)(a),am=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??!!a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],an=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],ao=(0,r.getIsPossibleServerAction)(a),ap=(0,l.checkIsAppPPREnabled)(ac.experimental.ppr)&&(null==(d=Z.routes[ae]??Z.dynamicRoutes[ae])?void 0:d.renderingMode)==="PARTIALLY_STATIC",aq=!1,ar=!1,as=ap?L:void 0,at=ap&&an&&!am,au=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),av=!aj||(0,o.shouldServeStreamingMetadata)(aj,ac.htmlLimitedBots);al&&ap&&(ai=!1,av=!1);let aw=!0===J.isDev||!ai||"string"==typeof L||at,ax=al&&ap,ay=null;$||!ai||aw||ao||as||at||(ay=_);let az=ay;!az&&J.isDev&&(az=_);let aA={...D,tree:G,pages:H,GlobalError:C(),handler:K,routeModule:J,__next_app__:I};W&&X&&(0,n.setReferenceManifestsSingleton)({page:B,clientReferenceManifest:X,serverActionsManifest:W,serverModuleMap:(0,p.createServerModuleMap)({serverActionsManifest:W})});let aB=a.method||"GET",aC=(0,g.getTracer)(),aD=aC.getActiveScopeSpan();try{let d=async(c,d)=>{let e=new k.NodeNextRequest(a),f=new k.NodeNextResponse(b);return J.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aC.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aB} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aB} ${a.url}`)})},f=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:P,params:Q,page:ae,sharedContext:{buildId:O},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aA,Component:(0,j.T)(aA),params:Q,routeModule:J,page:B,postponed:f,shouldWaitOnAllReady:ax,serveStreamingMetadata:av,supportsDynamicResponse:"string"==typeof f||aw,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,subresourceIntegrityManifest:Y,serverActionsManifest:W,clientReferenceManifest:X,setIsrStatus:null==ab?void 0:ab.setIsrStatus,dir:J.projectDir,isDraftMode:$,isRevalidate:ai&&!f&&!at,botType:ak,isOnDemandRevalidate:af,isPossibleServerAction:ao,assetPrefix:ac.assetPrefix,nextConfigOutput:ac.output,crossOrigin:ac.crossOrigin,trailingSlash:ac.trailingSlash,previewProps:Z.preview,deploymentId:ac.deploymentId,enableTainting:ac.experimental.taint,htmlLimitedBots:ac.htmlLimitedBots,devtoolSegmentExplorer:ac.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ac.reactMaxHeadersLength,multiZoneDraftMode:F,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ac.experimental.cacheLife,basePath:ac.basePath,serverActions:ac.experimental.serverActions,...aq?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:aq}:{},experimental:{isRoutePPREnabled:ap,expireTime:ac.expireTime,staleTimes:ac.experimental.staleTimes,dynamicIO:!!ac.experimental.dynamicIO,clientSegmentCache:!!ac.experimental.clientSegmentCache,dynamicOnHover:!!ac.experimental.dynamicOnHover,inlineCss:!!ac.experimental.inlineCss,authInterrupts:!!ac.experimental.authInterrupts,clientTraceMetadata:ac.experimental.clientTraceMetadata||[]},waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>J.onRequestError(a,b,d,ab),err:(0,h.getRequestMeta)(a,"invokeError"),dev:J.isDev}},k=await d(e,i),{metadata:l}=k,{cacheControl:m,headers:n={},fetchTags:o}=l;if(o&&(n[x.NEXT_CACHE_TAGS_HEADER]=o),a.fetchMetrics=l.fetchMetrics,ai&&(null==m?void 0:m.revalidate)===0&&!J.isDev&&!ap){let a=l.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${_}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:k,headers:n,rscData:l.flightData,postponed:l.postponed,status:l.statusCode,segmentData:l.segmentData},cacheControl:m}},l=async({hasResolved:d,previousCacheEntry:g,isRevalidating:i,span:j})=>{let k,l=!1===J.isDev,n=d||b.writableEnded;if(af&&aa&&!g&&!M)return(null==ab?void 0:ab.render404)?await ab.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ag&&(k=(0,v.parseFallbackField)(ag.fallback)),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(aj)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(af=!0),af&&(k!==v.FallbackMode.NOT_FOUND||g)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!M&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&az&&!n&&!$&&S&&(l||!ah)){let b;if((l||ag)&&k===v.FallbackMode.NOT_FOUND)throw new A.NoFallbackError;if(ap&&!an){if(b=await J.handleResponse({cacheKey:l?ae:null,req:a,nextConfig:ac,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:Z,isRoutePPREnabled:ap,responseGenerator:async()=>f({span:j,postponed:void 0,fallbackRouteParams:l||ar?(0,m.u)(ae):null}),waitUntil:c.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=af||i||!as?void 0:as;if(aq&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.fromStatic(""),pageData:{},headers:void 0,status:void 0}};let p=S&&ap&&((0,h.getRequestMeta)(a,"renderFallbackShell")||ar)?(0,m.u)(ad):null;return f({span:j,postponed:o,fallbackRouteParams:p})},n=async d=>{var g,i,j,k,m;let n,o=await J.handleResponse({cacheKey:ay,responseGenerator:a=>l({span:d,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:af,isRoutePPREnabled:ap,req:a,nextConfig:ac,prerenderManifest:Z,waitUntil:c.waitUntil});if($&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),J.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(ay)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(g=o.value)?void 0:g.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(j=o.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;ai&&!at&&(!p||am)&&(M||b.setHeader("x-nextjs-cache",af?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(as)n={revalidate:0,expire:void 0};else if(M&&an&&!am&&ap)n={revalidate:0,expire:void 0};else if(!J.isDev)if($)n={revalidate:0,expire:void 0};else if(ai){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});n={revalidate:o.cacheControl.revalidate,expire:(null==(k=o.cacheControl)?void 0:k.expire)??ac.expireTime}}else n={revalidate:x.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(n={revalidate:0,expire:void 0});if(o.cacheControl=n,"string"==typeof au&&(null==q?void 0:q.kind)===u.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(m=q.headers)?void 0:m[x.NEXT_CACHE_TAGS_HEADER];M&&ai&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(au);return void 0!==d?(0,z.sendRenderResult)({req:a,res:b,type:"rsc",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(d),cacheControl:o.cacheControl}):(b.statusCode=204,(0,z.sendRenderResult)({req:a,res:b,type:"rsc",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(""),cacheControl:o.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&as)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(M&&ai||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(i=q.headers)?void 0:i[x.NEXT_CACHE_TAGS_HEADER];if(M&&ai&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!q.status||an&&ap||(b.statusCode=q.status),!M&&q.status&&E.RedirectStatusCode[q.status]&&an&&(b.statusCode=200),p&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),an&&!$){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,z.sendRenderResult)({req:a,res:b,type:"rsc",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:q.html,cacheControl:at?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,z.sendRenderResult)({req:a,res:b,type:"rsc",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(q.rscData),cacheControl:o.cacheControl})}let v=q.html;if(!p||M)return(0,z.sendRenderResult)({req:a,res:b,type:"html",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:o.cacheControl});if(aq)return v.chain(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,z.sendRenderResult)({req:a,res:b,type:"html",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let A=new TransformStream;return v.chain(A.readable),f({span:d,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(A.writable)}).catch(a=>{A.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,z.sendRenderResult)({req:a,res:b,type:"html",generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aD)return await aC.withPropagatedContext(a.headers,()=>aC.trace(i.BaseServerSpan.handleRequest,{spanName:`${aB} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aB,"http.target":a.url}},n));await n(aD)}catch(b){throw aD||b instanceof A.NoFallbackError||await J.onRequestError(a,b,{routerKind:"App Router",routePath:B,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ai,isOnDemandRevalidate:af})},ab),b}}},38131:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,32526,23)),Promise.resolve().then(c.t.bind(c,30385,23)),Promise.resolve().then(c.t.bind(c,33737,23)),Promise.resolve().then(c.t.bind(c,1904,23)),Promise.resolve().then(c.t.bind(c,35856,23)),Promise.resolve().then(c.t.bind(c,55492,23)),Promise.resolve().then(c.t.bind(c,89082,23)),Promise.resolve().then(c.t.bind(c,45812,23)),Promise.resolve().then(c.bind(c,3220))},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78043:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,93824,23)),Promise.resolve().then(c.t.bind(c,69355,23)),Promise.resolve().then(c.t.bind(c,54439,23)),Promise.resolve().then(c.t.bind(c,94730,23)),Promise.resolve().then(c.t.bind(c,19774,23)),Promise.resolve().then(c.t.bind(c,53170,23)),Promise.resolve().then(c.t.bind(c,20968,23)),Promise.resolve().then(c.t.bind(c,78298,23)),Promise.resolve().then(c.t.bind(c,10282,23))},83297:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(66352).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers 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.")},"/home/runner/work/locusai/locusai/apps/web/src/app/providers.tsx","Providers")},86190:(a,b,c)=>{"use strict";c.d(b,{Sidebar:()=>d});let d=(0,c(66352).registerClientReference)(function(){throw Error("Attempted to call Sidebar() from the server but Sidebar 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.")},"/home/runner/work/locusai/locusai/apps/web/src/components/Sidebar.tsx","Sidebar")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91799:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>i});var d=c(13486),e=c(31860),f=c(84364),g=c(82419),h=c(60159);function i({children:a}){let[b]=(0,h.useState)(()=>new e.E({}));return(0,d.jsxs)(f.Ht,{client:b,children:[a,(0,d.jsx)(g.E,{initialIsOpen:!1})]})}}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[699,852],()=>b(b.s=34385));module.exports=c})();
@@ -1 +0,0 @@
1
- {"version":1,"files":["../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/package.json","../../../package.json","../../chunks/699.js","../../chunks/852.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
@@ -1 +0,0 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/_not-found/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"493":{"*":{"id":"22149","name":"*","chunks":[],"async":false}},"700":{"*":{"id":"89082","name":"*","chunks":[],"async":false}},"1256":{"*":{"id":"32526","name":"*","chunks":[],"async":false}},"3283":{"*":{"id":"33737","name":"*","chunks":[],"async":false}},"3418":{"*":{"id":"49720","name":"*","chunks":[],"async":false}},"4712":{"*":{"id":"1904","name":"*","chunks":[],"async":false}},"4780":{"*":{"id":"3220","name":"*","chunks":[],"async":false}},"5082":{"*":{"id":"45812","name":"*","chunks":[],"async":false}},"5110":{"*":{"id":"90896","name":"*","chunks":[],"async":false}},"6096":{"*":{"id":"91799","name":"*","chunks":[],"async":false}},"6157":{"*":{"id":"8339","name":"*","chunks":[],"async":false}},"7132":{"*":{"id":"35856","name":"*","chunks":[],"async":false}},"7738":{"*":{"id":"66628","name":"*","chunks":[],"async":false}},"7748":{"*":{"id":"55492","name":"*","chunks":[],"async":false}},"9065":{"*":{"id":"30385","name":"*","chunks":[],"async":false}},"9798":{"*":{"id":"31120","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/builtin/global-error.js":{"id":1256,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":1256,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/client-page.js":{"id":9065,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/client-page.js":{"id":9065,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/client-segment.js":{"id":3283,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/client-segment.js":{"id":3283,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4712,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4712,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/layout-router.js":{"id":7132,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7132,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":7748,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":7748,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":700,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":700,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/client/components/render-from-template-context.js":{"id":5082,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":5082,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":4780,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":4780,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/globals.css":{"id":3139,"name":"*","chunks":["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/providers.tsx":{"id":6096,"name":"*","chunks":["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/components/Header.tsx":{"id":493,"name":"*","chunks":["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/components/Sidebar.tsx":{"id":9798,"name":"*","chunks":["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"async":false},"/home/runner/work/locusai/locusai/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Roboto\",\"arguments\":[{\"weight\":[\"300\",\"400\",\"500\",\"700\"],\"subsets\":[\"latin\"],\"display\":\"swap\"}],\"variableName\":\"roboto\"}":{"id":6082,"name":"*","chunks":["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/backlog/page.tsx":{"id":3418,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/docs/page.tsx":{"id":6157,"name":"*","chunks":[],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/page.tsx":{"id":7738,"name":"*","chunks":["974","static/chunks/app/page-3fd91aaaa4776ced.js"],"async":false},"/home/runner/work/locusai/locusai/apps/web/src/app/settings/page.tsx":{"id":5110,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/locusai/locusai/apps/web/src/":[],"/home/runner/work/locusai/locusai/apps/web/src/app/layout":[{"inlined":false,"path":"static/css/8aea088cdc4338f0.css"},{"inlined":false,"path":"static/css/13e8617b72f9d3aa.css"}],"/home/runner/work/locusai/locusai/apps/web/src/app/page":[],"/home/runner/work/locusai/locusai/apps/web/src/app/_not-found/page":[]},"rscModuleMapping":{"493":{"*":{"id":"16735","name":"*","chunks":[],"async":false}},"700":{"*":{"id":"20968","name":"*","chunks":[],"async":false}},"1256":{"*":{"id":"93824","name":"*","chunks":[],"async":false}},"3139":{"*":{"id":"14276","name":"*","chunks":[],"async":false}},"3283":{"*":{"id":"54439","name":"*","chunks":[],"async":false}},"3418":{"*":{"id":"15886","name":"*","chunks":[],"async":false}},"4712":{"*":{"id":"94730","name":"*","chunks":[],"async":false}},"4780":{"*":{"id":"10282","name":"*","chunks":[],"async":false}},"5082":{"*":{"id":"78298","name":"*","chunks":[],"async":false}},"5110":{"*":{"id":"24532","name":"*","chunks":[],"async":false}},"6096":{"*":{"id":"83297","name":"*","chunks":[],"async":false}},"6157":{"*":{"id":"48762","name":"*","chunks":[],"async":false}},"7132":{"*":{"id":"19774","name":"*","chunks":[],"async":false}},"7738":{"*":{"id":"67858","name":"*","chunks":[],"async":false}},"7748":{"*":{"id":"53170","name":"*","chunks":[],"async":false}},"9065":{"*":{"id":"69355","name":"*","chunks":[],"async":false}},"9798":{"*":{"id":"86190","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{"700":{"*":{"id":"89082","name":"*","chunks":[],"async":false}},"1256":{"*":{"id":"32526","name":"*","chunks":[],"async":false}},"3283":{"*":{"id":"33737","name":"*","chunks":[],"async":false}},"4712":{"*":{"id":"1904","name":"*","chunks":[],"async":false}},"4780":{"*":{"id":"3220","name":"*","chunks":[],"async":false}},"5082":{"*":{"id":"45812","name":"*","chunks":[],"async":false}},"7132":{"*":{"id":"35856","name":"*","chunks":[],"async":false}},"7748":{"*":{"id":"55492","name":"*","chunks":[],"async":false}},"9065":{"*":{"id":"30385","name":"*","chunks":[],"async":false}}}}
@@ -1 +0,0 @@
1
- <!DOCTYPE html><!--D0NXe04ZCLNDckV_quc8g--><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/47cbc4e2adbc5db9-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/8aea088cdc4338f0.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/13e8617b72f9d3aa.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-99a10a055b5bb9c4.js"/><script src="/_next/static/chunks/87c73c54-1f4741035a95c140.js" async=""></script><script src="/_next/static/chunks/902-d6926825a9fe8784.js" async=""></script><script src="/_next/static/chunks/main-app-123e879c5a937a00.js" async=""></script><script src="/_next/static/chunks/337-d3bb75304d130513.js" async=""></script><script src="/_next/static/chunks/146-34259952c594a3b0.js" async=""></script><script src="/_next/static/chunks/app/layout-05f504c042b9f7ee.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Locus Dashboard</title><meta name="description" content="Local-first task management and documentation for agentic engineering."/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="200x209"/><link rel="icon" href="/favicon.ico"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__className_6a21cc antialiased"><div hidden=""><!--$--><!--/$--></div><div class="flex h-screen overflow-hidden bg-background"><aside class="w-[260px] flex flex-col border-r border-border/50 bg-card/50 backdrop-blur-sm h-full"><div class="flex items-center gap-3 p-5 border-b border-border/50"><img alt="Locus" loading="lazy" width="97.81" height="32" decoding="async" data-nimg="1" class="rounded-xl shadow-lg" style="color:transparent" src="/logo.png"/></div><div class="flex-1 p-4"><div class="text-[10px] uppercase font-bold tracking-widest text-muted-foreground/70 mb-3 px-3">Navigation</div><nav class="space-y-1"><a class="group flex items-center gap-3 px-3 py-2.5 text-sm font-medium rounded-xl transition-all text-muted-foreground hover:bg-secondary hover:text-foreground" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard group-hover:scale-110 transition-transform"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg><div class="flex-1"><span class="block">Board</span></div></a><a class="group flex items-center gap-3 px-3 py-2.5 text-sm font-medium rounded-xl transition-all text-muted-foreground hover:bg-secondary hover:text-foreground" href="/backlog"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-list group-hover:scale-110 transition-transform"><path d="M3 12h.01"></path><path d="M3 18h.01"></path><path d="M3 6h.01"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M8 6h13"></path></svg><div class="flex-1"><span class="block">Backlog</span></div></a><a class="group flex items-center gap-3 px-3 py-2.5 text-sm font-medium rounded-xl transition-all text-muted-foreground hover:bg-secondary hover:text-foreground" href="/docs"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text group-hover:scale-110 transition-transform"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><div class="flex-1"><span class="block">Library</span></div></a></nav></div><div class="p-4 border-t border-border/50"><a class="flex items-center gap-3 w-full px-3 py-2.5 text-sm font-medium rounded-xl transition-all text-muted-foreground hover:bg-secondary/60 hover:text-foreground" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><span>Settings</span></a></div></aside><main class="flex-1 overflow-auto bg-background p-8"><div class="max-w-[1440px] mx-auto"><header class="flex items-center mb-6 py-3"><div class="relative flex-1 max-w-md group"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search absolute left-3.5 top-1/2 -translate-y-1/2 text-muted-foreground group-focus-within:text-primary transition-colors"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg><input type="text" placeholder="Search tasks, docs... (⌘K)" class="w-full bg-secondary/40 border border-border/50 rounded-lg pl-10 pr-4 py-2.5 text-sm text-foreground placeholder:text-muted-foreground/70 outline-none transition-all focus:border-primary/50 focus:ring-2 focus:ring-primary/20 focus:bg-background hover:bg-secondary/60"/></div></header><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></div></main></div><script src="/_next/static/chunks/webpack-99a10a055b5bb9c4.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[6096,[\"337\",\"static/chunks/337-d3bb75304d130513.js\",\"146\",\"static/chunks/146-34259952c594a3b0.js\",\"177\",\"static/chunks/app/layout-05f504c042b9f7ee.js\"],\"Providers\"]\n3:I[9798,[\"337\",\"static/chunks/337-d3bb75304d130513.js\",\"146\",\"static/chunks/146-34259952c594a3b0.js\",\"177\",\"static/chunks/app/layout-05f504c042b9f7ee.js\"],\"Sidebar\"]\n4:I[493,[\"337\",\"static/chunks/337-d3bb75304d130513.js\",\"146\",\"static/chunks/146-34259952c594a3b0.js\",\"177\",\"static/chunks/app/layout-05f504c042b9f7ee.js\"],\"Header\"]\n5:I[7132,[],\"\"]\n6:I[5082,[],\"\"]\n7:I[700,[],\"OutletBoundary\"]\n9:I[7748,[],\"AsyncMetadataOutlet\"]\nb:I[700,[],\"ViewportBoundary\"]\nd:I[700,[],\"MetadataBoundary\"]\ne:\"$Sreact.suspense\"\n10:I[1256,[],\"\"]\n:HL[\"/_next/static/media/47cbc4e2adbc5db9-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/8aea088cdc4338f0.css\",\"style\"]\n:HL[\"/_next/static/css/13e8617b72f9d3aa.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"D0NXe04ZCLNDckV_quc8g\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/8aea088cdc4338f0.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/13e8617b72f9d3aa.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_6a21cc antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"div\",null,{\"className\":\"flex h-screen overflow-hidden bg-background\",\"children\":[[\"$\",\"$L3\",null,{}],[\"$\",\"main\",null,{\"className\":\"flex-1 overflow-auto bg-background p-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"max-w-[1440px] mx-auto\",\"children\":[[\"$\",\"$L4\",null,{}],[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]]}]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L7\",null,{\"children\":[\"$L8\",[\"$\",\"$L9\",null,{\"promise\":\"$@a\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$e\",null,{\"fallback\":null,\"children\":\"$Lf\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n8:null\n"])</script><script>self.__next_f.push([1,"11:I[4780,[],\"IconMark\"]\na:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Locus Dashboard\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Local-first task management and documentation for agentic engineering.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"200x209\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$L11\",\"4\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"f:\"$a:metadata\"\n"])</script></body></html>
@@ -1,8 +0,0 @@
1
- {
2
- "status": 404,
3
- "headers": {
4
- "x-nextjs-stale-time": "300",
5
- "x-nextjs-prerender": "1",
6
- "x-next-cache-tags": "_N_T_/layout,_N_T_/_not-found/layout,_N_T_/_not-found/page,_N_T_/_not-found"
7
- }
8
- }
@@ -1,21 +0,0 @@
1
- 1:"$Sreact.fragment"
2
- 2:I[6096,["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"Providers"]
3
- 3:I[9798,["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"Sidebar"]
4
- 4:I[493,["337","static/chunks/337-d3bb75304d130513.js","146","static/chunks/146-34259952c594a3b0.js","177","static/chunks/app/layout-05f504c042b9f7ee.js"],"Header"]
5
- 5:I[7132,[],""]
6
- 6:I[5082,[],""]
7
- 7:I[700,[],"OutletBoundary"]
8
- 9:I[7748,[],"AsyncMetadataOutlet"]
9
- b:I[700,[],"ViewportBoundary"]
10
- d:I[700,[],"MetadataBoundary"]
11
- e:"$Sreact.suspense"
12
- 10:I[1256,[],""]
13
- :HL["/_next/static/media/47cbc4e2adbc5db9-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14
- :HL["/_next/static/css/8aea088cdc4338f0.css","style"]
15
- :HL["/_next/static/css/13e8617b72f9d3aa.css","style"]
16
- 0:{"P":null,"b":"D0NXe04ZCLNDckV_quc8g","p":"","c":["","_not-found"],"i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/8aea088cdc4338f0.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/13e8617b72f9d3aa.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"dark","children":["$","body",null,{"className":"__className_6a21cc antialiased","children":["$","$L2",null,{"children":["$","div",null,{"className":"flex h-screen overflow-hidden bg-background","children":[["$","$L3",null,{}],["$","main",null,{"className":"flex-1 overflow-auto bg-background p-8","children":["$","div",null,{"className":"max-w-[1440px] mx-auto","children":[["$","$L4",null,{}],["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}]}]]}]}]}]}]]}],{"children":["/_not-found",["$","$1","c",{"children":[null,["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],null,["$","$L7",null,{"children":["$L8",["$","$L9",null,{"promise":"$@a"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],[["$","$Lb",null,{"children":"$Lc"}],["$","meta",null,{"name":"next-size-adjust","content":""}]],["$","$Ld",null,{"children":["$","div",null,{"hidden":true,"children":["$","$e",null,{"fallback":null,"children":"$Lf"}]}]}]]}],false]],"m":"$undefined","G":["$10",[]],"s":false,"S":true}
17
- c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
18
- 8:null
19
- 11:I[4780,[],"IconMark"]
20
- a:{"metadata":[["$","title","0",{"children":"Locus Dashboard"}],["$","meta","1",{"name":"description","content":"Local-first task management and documentation for agentic engineering."}],["$","link","2",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"200x209"}],["$","link","3",{"rel":"icon","href":"/favicon.ico"}],["$","$L11","4",{}]],"error":null,"digest":"$undefined"}
21
- f:"$a:metadata"