wiki-viewer 2.11.7 → 2.12.0

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 (158) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +1 -0
  3. package/.next/standalone/.next/build-manifest.json +5 -5
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/required-server-files.json +4 -4
  6. package/.next/standalone/.next/routes-manifest.json +6 -0
  7. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  8. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  14. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  16. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/api/agent/activity/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/agent/events/[...path]/route.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/api/agent/files/[...path]/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/agent/fs/file/[...path]/route.js +1 -1
  21. package/.next/standalone/.next/server/app/api/agent/fs/file/[...path]/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/agent/fs/ls/[[...path]]/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/agent/fs/move/route.js +1 -1
  24. package/.next/standalone/.next/server/app/api/agent/fs/move/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/agent/fs/search/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/agent/internal/span/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/agent/settings/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/agent/sidecar/[...path]/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/agents/install/route.js +1 -1
  30. package/.next/standalone/.next/server/app/api/agents/install/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/agents/skill/route.js +1 -1
  32. package/.next/standalone/.next/server/app/api/agents/skill/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/agents/skill.tar.gz/route.js +1 -1
  34. package/.next/standalone/.next/server/app/api/agents/skill.tar.gz/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/api/app-proxy/[...path]/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/assets/[...path]/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/pdf/save/route.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/api/share/[token]/asset/route.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/api/share/[token]/route.js +3 -4
  40. package/.next/standalone/.next/server/app/api/share/[token]/route.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/api/share/route.js +1 -1
  42. package/.next/standalone/.next/server/app/api/share/route.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/api/system/browse/route.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/api/system/reveal/route.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/branch/route.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/open/route.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/refresh/route.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/system/workspaces/route.js.nft.json +1 -1
  50. package/.next/standalone/.next/server/app/api/upload/[...path]/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/wiki/app/route.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/api/wiki/backlinks/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/wiki/content/route.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/api/wiki/download/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/wiki/folder/route.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/api/wiki/git-branches/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/wiki/git-checkout/route.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/api/wiki/git-diff/route.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/api/wiki/git-file-info/route.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/api/wiki/git-history/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/api/wiki/git-pull/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/wiki/move/route.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/api/wiki/new-file/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/wiki/outlinks/route.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/api/wiki/page/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/wiki/presence/route.js.nft.json +1 -1
  67. package/.next/standalone/.next/server/app/api/wiki/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/api/wiki/scratch/route/app-paths-manifest.json +3 -0
  69. package/.next/standalone/.next/server/app/api/wiki/scratch/route/build-manifest.json +9 -0
  70. package/.next/standalone/.next/server/app/api/wiki/scratch/route/server-reference-manifest.json +4 -0
  71. package/.next/standalone/.next/server/app/api/wiki/scratch/route.js +16 -0
  72. package/.next/standalone/.next/server/app/api/wiki/scratch/route.js.map +5 -0
  73. package/.next/standalone/.next/server/app/api/wiki/scratch/route.js.nft.json +1 -0
  74. package/.next/standalone/.next/server/app/api/wiki/scratch/route_client-reference-manifest.js +3 -0
  75. package/.next/standalone/.next/server/app/api/wiki/search/route.js +1 -1
  76. package/.next/standalone/.next/server/app/api/wiki/search/route.js.nft.json +1 -1
  77. package/.next/standalone/.next/server/app/api/wiki/slugs/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/wiki/upload/route.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/api/wiki/watch/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
  81. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/s/[token]/page/build-manifest.json +2 -2
  84. package/.next/standalone/.next/server/app/s/[token]/page_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/signin/page/build-manifest.json +2 -2
  86. package/.next/standalone/.next/server/app/signin/page_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
  88. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0pyc~jf._.js → [root-of-the-server]__05o3qcm._.js} +2 -2
  89. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0kuwuwk._.js → [root-of-the-server]__07wa2lq._.js} +2 -2
  90. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bpv09n._.js +20 -0
  91. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0269d2e._.js → [root-of-the-server]__0mgvfb5._.js} +2 -2
  92. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_5~w8k._.js → [root-of-the-server]__0n2r6u9._.js} +2 -2
  93. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qpqspq._.js +3 -0
  94. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__05tbv~.._.js → [root-of-the-server]__0q~ky91._.js} +2 -2
  95. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uja7sb._.js +3 -0
  96. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00sn-o5._.js → [root-of-the-server]__0xoz8e8._.js} +2 -2
  97. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0t4nr00._.js → [root-of-the-server]__10pak1_._.js} +2 -2
  98. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_system_workspaces_[id]_open_route_actions_1087xu7.js +1 -1
  99. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_wiki_scratch_route_actions_07i6~7z.js +3 -0
  100. package/.next/standalone/.next/server/chunks/src_0pwns~4._.js +3 -0
  101. package/.next/standalone/.next/server/chunks/ssr/{0~w0_katex_dist_katex_mjs_12tyg_2._.js → 0~w0_katex_dist_katex_mjs_0-fyxoz._.js} +1 -1
  102. package/.next/standalone/.next/server/chunks/ssr/12y~_mermaid_dist_chunks_mermaid_core_chunk-5ZQYHXKU_mjs_0z1.978._.js +1 -1
  103. package/.next/standalone/.next/server/chunks/ssr/12y~_mermaid_dist_chunks_mermaid_core_chunk-KSCS5N6A_mjs_0v4oeem._.js +1 -1
  104. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0vp_6mg._.js → [root-of-the-server]__0~4py6h._.js} +2 -2
  105. package/.next/standalone/.next/server/chunks/ssr/_0oq8kwv._.js +18 -18
  106. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0mlbfkr._.js → node_modules__pnpm_0.xieh4._.js} +1 -1
  107. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0j.6d4e._.js → node_modules__pnpm_01~03ak._.js} +1 -1
  108. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0ko9~5a._.js → node_modules__pnpm_02qa21p._.js} +1 -1
  109. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0wks2mj._.js → node_modules__pnpm_05c~go7._.js} +2 -2
  110. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0z3vu9g._.js → node_modules__pnpm_07hg43b._.js} +1 -1
  111. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0c7mg2j._.js → node_modules__pnpm_09y5c~i._.js} +1 -1
  112. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_04.xdv4._.js → node_modules__pnpm_0_g0a7t._.js} +1 -1
  113. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0e_u7-~._.js → node_modules__pnpm_0_zd0nt._.js} +1 -1
  114. package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_0a4su30._.js +1 -1
  115. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_03z~hj.._.js → node_modules__pnpm_0b6_242._.js} +1 -1
  116. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_01vjz.e._.js → node_modules__pnpm_0c6q9~6._.js} +1 -1
  117. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_05xxz0p._.js → node_modules__pnpm_0d4-t2b._.js} +1 -1
  118. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0pq4fcx._.js → node_modules__pnpm_0f0qocb._.js} +1 -1
  119. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0m4ord.._.js → node_modules__pnpm_0f6r-u~._.js} +2 -2
  120. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0k1lm~x._.js → node_modules__pnpm_0f9artj._.js} +2 -2
  121. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0l-zh.x._.js → node_modules__pnpm_0g_tlt-._.js} +1 -1
  122. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0dkpe61._.js → node_modules__pnpm_0ghm84g._.js} +2 -2
  123. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0y~gqyx._.js → node_modules__pnpm_0k6yfdh._.js} +2 -2
  124. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0yw839x._.js → node_modules__pnpm_0kib6pw._.js} +1 -1
  125. package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_0o~d81.._.js +1 -1
  126. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0.a-6pb._.js → node_modules__pnpm_0pggrwu._.js} +2 -2
  127. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0d_jgm8._.js → node_modules__pnpm_0q9s5k5._.js} +1 -1
  128. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0~1a~df._.js → node_modules__pnpm_0q_v1_2._.js} +1 -1
  129. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0hlvme9._.js → node_modules__pnpm_0sdy2lv._.js} +1 -1
  130. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_077radr._.js → node_modules__pnpm_0tvmv0e._.js} +2 -2
  131. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_0e7k2ai._.js → node_modules__pnpm_0v7wopg._.js} +1 -1
  132. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_05b80e_._.js → node_modules__pnpm_0vahm7l._.js} +1 -1
  133. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_11e33_1._.js → node_modules__pnpm_0zdl7-7._.js} +1 -1
  134. package/.next/standalone/.next/server/chunks/ssr/{node_modules__pnpm_05-ipmg._.js → node_modules__pnpm_0~wqhb9._.js} +1 -1
  135. package/.next/standalone/.next/server/instrumentation.js +1 -1
  136. package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
  137. package/.next/standalone/.next/server/pages/500.html +1 -1
  138. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  140. package/.next/standalone/.next/static/chunks/0gogvjz6oxo51.css +1 -0
  141. package/.next/standalone/.next/static/chunks/{08usk_~k6d0yf.js → 0k31ncl7m_j9q.js} +2 -2
  142. package/.next/standalone/.next/static/chunks/{0x6s~jkd4xkpx.js → 11ehczv8yax~_.js} +23 -23
  143. package/.next/standalone/.next/static/chunks/{turbopack-0~8fsjmdvb_1i.js → turbopack-1105gjd__15ti.js} +1 -1
  144. package/.next/standalone/.test-floor +1 -1
  145. package/.next/standalone/package.json +1 -1
  146. package/.next/standalone/server.js +1 -1
  147. package/.next/standalone/specs/changes/scratchpad/design.md +156 -0
  148. package/.next/standalone/specs/changes/scratchpad/proposal.md +82 -0
  149. package/.next/standalone/specs/changes/scratchpad/requirements.md +83 -0
  150. package/.next/standalone/specs/changes/scratchpad/tasks.md +45 -0
  151. package/package.json +1 -1
  152. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0k46u9j._.js +0 -3
  153. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11ltgmp._.js +0 -20
  154. package/.next/standalone/.next/server/chunks/src_0ks~u~e._.js +0 -3
  155. package/.next/standalone/.next/static/chunks/0h9okx8g~3~jd.css +0 -1
  156. /package/.next/standalone/.next/static/{N4JUwvz_xf2GOGFJN02sZ → AsrmwC0YfrYEMAXj2s0Wx}/_buildManifest.js +0 -0
  157. /package/.next/standalone/.next/static/{N4JUwvz_xf2GOGFJN02sZ → AsrmwC0YfrYEMAXj2s0Wx}/_clientMiddlewareManifest.js +0 -0
  158. /package/.next/standalone/.next/static/{N4JUwvz_xf2GOGFJN02sZ → AsrmwC0YfrYEMAXj2s0Wx}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let a=e.headers.get("origin"),n=e.headers.get("referer");if(!a&&!n)return null;let s=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let a=new Set;for(let e of t)for(let t of["http","https"])for(let n of r)a.add(`${t}://${e}${n}`);return a}(e.headers.get("host")??"");if(a)return s.has(a)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(n){try{let{protocol:e,host:t}=new URL(n);if(s.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=r.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),n=e.i(536654),s=e.i(848475);async function i(e,t){if(!e)return null;let r=await (0,n.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return r?.absolutePath??null}async function o(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,r.open)(n,"w",a);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,r.rename)(n,e)}async function l(e,t){let n=a.default.dirname(e);if(t)return await (0,r.mkdir)(n,{recursive:!0}),!0;try{return await (0,r.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,s.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},844376,(e,t,r)=>{t.exports=e.x("node:module",()=>require("node:module"))},511745,883129,e=>{"use strict";let t;var r=e.i(874533),a=e.i(750227),n=e.i(844376),s=e.i(812057),i=e.i(902157),o=e.i(857764);let l={get url(){return`file://${e.P("src/lib/search/rg-path.ts")}`}},u=(0,s.promisify)(r.execFile);function c(e){try{let t=(0,i.statSync)(e);return t.isFile()&&(73&t.mode)!=0}catch{return!1}}function p(e,t,r){let n=a.default.resolve(e);for(let e=0;e<=t;e++){let e=a.default.join(n,r);if(c(e))return e;let t=a.default.dirname(n);if(t===n)break;n=t}return null}async function d(){try{return await u("rg",["--version"]),"rg"}catch{return null}}async function h(){if(void 0!==t)return t;let e=process.env.WIKI_VIEWER_RG;if(e&&c(e))return t=e;let r=process.env.npm_config_arch||process.arch,s=`@vscode/ripgrep-${process.platform}-${r}`;try{let e=(0,o.fileURLToPath)(l.resolve("@vscode/ripgrep")),r=(0,n.createRequire)(e).resolve(`${s}/bin/rg`);if(c(r))return t=r}catch{}let i=a.default.join("node_modules",s,"bin","rg"),u=p(process.cwd(),5,i);if(u)return t=u;let h=a.default.dirname(process.execPath);if(h!==process.cwd()){let e=p(h,5,i);if(e)return t=e}return t=await d()}function f(e){return e.replace(/<\/?mark>/g,"")}function m(e,t,r={}){let a=r.window??60;if(!t.length)return f(e);let n=Buffer.from(e,"utf8"),s=n.length,i=[...t].sort((e,t)=>e.start-t.start),o=i[0],l=Math.floor((o.start+o.end)/2),u=Math.max(0,l-a),c=Math.min(s,l+a);for(;u>0&&(192&n[u])==128;)u++;for(;c<s&&(192&n[c])==128;)c--;let p=i.filter(e=>e.start<c&&e.end>u),d=[],h=u;for(let e of p){let t=Math.max(u,e.start),r=Math.min(c,e.end);t>h&&d.push({text:n.toString("utf8",h,t),mark:!1}),r>t&&d.push({text:n.toString("utf8",t,r),mark:!0}),h=r}h<c&&d.push({text:n.toString("utf8",h,c),mark:!1});let g="";for(let e of(u>0&&(g+="…"),d)){let t=f(e.text);g+=e.mark?`<mark>${t}</mark>`:t}return c<s&&(g+="…"),g}e.s(["buildSnippet",0,m],883129);var g=e.i(719126);let v=null;async function x(){if(v)return v;try{let t=await e.A(267328);return v=t,t}catch{return v={nestedHazardMounts:()=>[],rootIsHazardMount:()=>!1}}}let w=[".git",".pi",".proof","node_modules",".next"];async function y(e){let t=[];for(let e of w)t.push("--glob",`!${e}/**`);for(let r of(await x()).nestedHazardMounts(e)){let n=a.default.relative(e,r);!n||n.startsWith("..")||a.default.isAbsolute(n)||(n=n.replace(/\\/g,"/"),t.push("--glob",`!${n}/**`))}return t}async function k(e){let t=["--json","--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--max-filesize","2M","--crlf"];return(await x()).rootIsHazardMount(e)&&t.push("--no-mmap"),t.push(...await y(e)),t}function R(e){let t=e.replace(/\\/g,"/");return a.default.isAbsolute(t)||(t=a.default.normalize(t).replace(/\\/g,"/")).startsWith("..")||"."===t||(0,g.isDeniedRelPath)(t)?null:t}function _(e){try{e.kill("SIGTERM")}catch{}setTimeout(()=>{try{e.kill("SIGKILL")}catch{}},2e3)}function b(e,t,a,n,s,i,o){return new Promise(l=>{if(s.signal?.aborted)return void l({outcome:"aborted",code:null,stderr:"",truncated:!0});let u=(0,r.spawn)(e,t,{cwd:a,stdio:["ignore","pipe","pipe"],env:{...process.env,RIPGREP_CONFIG_PATH:""}}),c="",p="",d=!1,h=!1,f=null,m=e=>{d||(d=!0,clearTimeout(g),v?.removeEventListener("abort",x),l({outcome:e,code:f,stderr:p,truncated:h}))},g=setTimeout(()=>{h=!0,_(u),m("timeout")},s.timeoutMs),v=s.signal,x=()=>{h=!0,_(u),m("aborted")};v?.addEventListener("abort",x,{once:!0}),u.stdout?.on("data",e=>{if(c+=e.toString("utf8"),n){let e=c.split("\n");for(let t of(c=e.pop()??"",e)){let e;if(t.trim()){try{e=JSON.parse(t)}catch{continue}if("cap"===i(e)){h=!0,_(u),m("success");return}}}}else if(o){let e=c.split("\n");for(let t of(c=e.pop()??"",e))if(t&&"cap"===o(t)){h=!0,_(u),m("success");return}}}),u.stderr?.on("data",e=>{p+=e.toString("utf8")}),u.on("error",e=>{f=-1,p=e.message,m("error")}),u.on("close",e=>{if(f=e,!d){if(n&&c.trim())try{let e=JSON.parse(c.trim());i(e)}catch{}else!n&&o&&c&&o(c);0===e||1===e?m("success"):m("error")}})})}async function P(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=a.split(/\s+/).slice(0,8).map(e=>e.endsWith("*")?e.slice(0,-1):e);if(0===n.length)return{ok:!0,results:[],truncated:!1};let s=await h();if(!s)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let i=new Map,o=r.limit??200,l=0,u=await k(e);for(let e of(u.push("--fixed-strings","--ignore-case"),n))u.push("-e",e);u.push("--",r.startPath??".");let c={timeoutMs:r.timeoutMs??1e4,signal:r.signal},p=await b(s,u,e,!0,c,e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=(t.submatches??[]).map(e=>({start:e.start,end:e.end})),s=t.lines.text.replace(/\r?\n$/,""),u=m(s,a),c={path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:s,snippet:u},p=c.text.toLowerCase(),d=new Set;for(let e=0;e<n.length;e++)p.includes(n[e].toLowerCase())&&d.add(e);let h=i.get(r);for(let e of(h||(h={path:r,matches:[],tokenSet:new Set},i.set(r,h)),d))h.tokenSet.add(e);return(h.matches.push(c),++l>=o)?"cap":"continue"}),d=n.length,f=[];for(let e of i.values()){if(e.tokenSet.size<d)continue;let t=e.matches.sort((e,t)=>e.line-t.line)[0],r=e.tokenSet.size/d*1e3+Math.min(e.matches.length,100);f.push({path:e.path,matchCount:e.matches.length,tokensMatched:e.tokenSet.size,score:r,firstMatch:t})}return(f.sort((e,t)=>t.tokensMatched!==e.tokensMatched?t.tokensMatched-e.tokensMatched:t.matchCount!==e.matchCount?t.matchCount-e.matchCount:e.path.localeCompare(t.path)),"success"===p.outcome)?2===p.code?{ok:!1,reason:"error",message:p.stderr.trim().split("\n")[0]??"rg error",partialResults:f}:{ok:!0,results:f,truncated:p.truncated}:"timeout"===p.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:f}:{ok:!1,reason:"error",message:p.stderr||"Search failed",partialResults:f}}async function S(e,t,r,a,n){var s,i;let o=[],l=a.limit??200,u=0,c=await k(t);n&&c.push("--pcre2"),c.push("-e",r),c.push("--",a.startPath??".");let p=await b(e,c,t,!0,{timeoutMs:a.timeoutMs??1e4,signal:a.signal},e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=t.submatches??[];return(o.push({path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:t.lines.text.replace(/\r?\n$/,"")}),++u>=l)?"cap":"continue"});return{outcome:(s=p,i=o,"timeout"===s.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:i}:"aborted"===s.outcome?{ok:!1,reason:"error",message:"Search aborted",partialResults:i}:"error"===s.outcome||2===s.code?{ok:!1,reason:"error",message:s.stderr.trim().split("\n")[0]??"rg error",partialResults:i}:{ok:!0,results:i,truncated:s.truncated}),stderr:p.stderr,code:p.code}}function C(e){let t=e.toLowerCase();return t.includes("look-around")||t.includes("lookaround")||t.includes("backreference")||t.includes("back-reference")||t.includes("lookahead")||t.includes("lookbehind")}function E(e){let t=e.toLowerCase();return t.includes("regex")||t.includes("pattern")||t.includes("parse")||t.includes("syntax")||t.includes("unclosed")||C(t)}async function M(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=await h();if(!n)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let s=await S(n,e,a,r,!1);if(!s.outcome.ok&&"error"===s.outcome.reason&&C(s.stderr)){let t=await S(n,e,a,r,!0);return!t.outcome.ok&&"error"===t.outcome.reason&&E(t.stderr)?{ok:!1,reason:"invalid-pattern",message:t.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:t.outcome.partialResults}:t.outcome}return!s.outcome.ok&&"error"===s.outcome.reason&&E(s.stderr)?{ok:!1,reason:"invalid-pattern",message:s.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:s.outcome.partialResults}:s.outcome}async function j(e,t={}){let r=await h();if(!r)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let a=[],n=t.limit??2e3,s=["--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--crlf"];(await x()).rootIsHazardMount(e)&&s.push("--no-mmap"),s.push(...await y(e)),s.push("--files","--",t.startPath??".");let i=await b(r,s,e,!1,{timeoutMs:t.timeoutMs??1e4,signal:t.signal},()=>"continue",e=>{let t=e.trim();if(!t)return"continue";let r=R(t);return r&&(a.push(r),a.length>=n)?"cap":"continue"});return"success"===i.outcome?{ok:!0,results:a,truncated:i.truncated}:{ok:!1,reason:"timeout"===i.outcome?"timeout":"error",message:i.stderr||"rg --files failed",partialResults:a}}e.s(["rgListFiles",0,j,"rgLiteralSearch",0,P,"rgRegexSearch",0,M],511745)},58283,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),n=e.i(475331),s=e.i(490301),i=e.i(670943),o=e.i(690324),l=e.i(243133),u=e.i(404870),c=e.i(420180),p=e.i(867883),d=e.i(336708),h=e.i(682278),f=e.i(157569),m=e.i(844146),g=e.i(193695);e.i(105888);var v=e.i(530564),x=e.i(702414),w=e.i(402662),y=e.i(660038),k=e.i(511745);async function R(e,t,r,a={}){let n=t.trim();if(!n)return{paths:[],truncated:!1};let s=n.split(/\s+/).slice(0,8).map(e=>e.toLowerCase());if(0===s.length)return{paths:[],truncated:!1};let i=await (0,k.rgListFiles)(e,{limit:2e4,timeoutMs:5e3,signal:a.signal});if(!i.ok)return"unavailable"===i.reason?{paths:[],truncated:!1,degraded:"rg-unavailable"}:{paths:_(i.partialResults??[],s,r).results,truncated:!0,degraded:i.reason};let o=_(i.results,s,r);return{paths:o.results,truncated:i.truncated||o.truncated}}function _(e,t,r){let a=[];for(let n of e){let e=n.toLowerCase();if(t.every(t=>e.includes(t))&&(a.push(n),a.length>=r))return{results:a,truncated:!0}}return{results:a,truncated:!1}}async function b(e){let t,r=(0,w.checkOrigin)(e);if(r)return r;let a=await (0,y.resolveWorkspaceForUser)(e);if(!a.ok)return x.NextResponse.json({error:a.code},{status:a.status});try{t=await e.json()}catch{return x.NextResponse.json({error:"INVALID_PAYLOAD"},{status:400})}let n="string"==typeof t.query?t.query:"",s=Math.min("number"==typeof t.limit?t.limit:30,200);if(!n.trim())return x.NextResponse.json({kind:"rg",query:n,matches:[],truncated:!1});let[i,o]=await Promise.all([(0,k.rgLiteralSearch)(a.rootDir,n,{limit:s,timeoutMs:1e4,signal:e.signal}),R(a.rootDir,n,s,{signal:e.signal})]),l=new Set(o.paths),u=[];for(let e of o.paths)u.push({path:e,score:2e3,snippet:""});if(i.ok)for(let e of i.results)l.has(e.path)||u.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line});else if("unavailable"===i.reason);else if(i.partialResults)for(let e of i.partialResults)l.has(e.path)||u.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line});let c=!i.ok||i.truncated||o.truncated,p={kind:"rg",query:n,matches:u.slice(0,s),truncated:c};return i.ok||"unavailable"!==i.reason||(p.degraded="rg-unavailable"),x.NextResponse.json(p)}e.s(["POST",0,b,"runtime",0,"nodejs"],725535);var P=e.i(725535);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/wiki/search/route",pathname:"/api/wiki/search",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/wiki/search/route.ts",nextConfigOutput:"standalone",userland:P,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:E,serverHooks:M}=S;async function j(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/wiki/search/route";x=x.replace(/\/index$/,"")||"/";let w=await S.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:k,nextConfig:R,parsedUrl:_,isDraftMode:b,prerenderManifest:P,routerServerContext:C,isOnDemandRevalidate:E,revalidateOnlyGenerated:M,resolvedPathname:j,clientReferenceManifest:A,serverActionsManifest:N}=w,T=(0,o.normalizeAppPath)(x),I=!!(P.dynamicRoutes[T]||P.routes[j]),O=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,_,!1):t.end("This page could not be found"),null);if(I&&!b){let e=!!P.routes[j],t=P.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await O();throw new g.NoFallbackError}}let q=null;!I||S.isDev||b||(q="/index"===(q=j)?"/":q);let D=!0===S.isDev||!I,H=I&&!D;N&&A&&(0,i.setManifestsSingleton)({page:x,clientReferenceManifest:A,serverActionsManifest:N});let L=e.method||"GET",$=(0,s.getTracer)(),z=$.getActiveScopeSpan(),W=!!(null==C?void 0:C.isWrappedByNextServer),U=!!(0,n.getRequestMeta)(e,"minimalMode"),F=(0,n.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,R,P,U);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let B={params:k,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:D,incrementalCache:F,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,C)},sharedContext:{buildId:y}},K=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let n,i=async e=>S.handle(V,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${L} ${x}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!U&&E&&M&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=B.renderOpts.fetchMetrics;let o=B.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=B.renderOpts.collectedTags;if(!I)return await (0,d.sendResponse)(K,G,s,B.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,a=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:E})},!1,C),t}},u=await S.handleResponse({req:e,nextConfig:R,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:M,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:U});if(!I)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});U||t.setHeader("x-nextjs-cache",E?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return U&&I||c.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,d.sendResponse)(K,G,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};W&&z?await o(z):(n=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},o),void 0,!W))}catch(t){if(t instanceof g.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:E})},!1,C),I)throw t;return await (0,d.sendResponse)(K,G,new Response(null,{status:500})),null}}e.s(["handler",0,j,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:E})},"routeModule",0,S,"serverHooks",0,M,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,E],58283)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},267328,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_fs_mounts_ts_0ksy80l._.js"].map(t=>e.l(t))).then(()=>t(60845)))}];
1
+ module.exports=[536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=r.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let a=e.headers.get("origin"),n=e.headers.get("referer");if(!a&&!n)return null;let s=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let a=new Set;for(let e of t)for(let t of["http","https"])for(let n of r)a.add(`${t}://${e}${n}`);return a}(e.headers.get("host")??"");if(a)return s.has(a)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(n){try{let{protocol:e,host:t}=new URL(n);if(s.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),n=e.i(536654),s=e.i(848475);async function i(e,t){if(!e)return null;let r=await (0,n.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return r?.absolutePath??null}async function o(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,r.open)(n,"w",a);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,r.rename)(n,e)}async function l(e,t){let n=a.default.dirname(e);if(t)return await (0,r.mkdir)(n,{recursive:!0}),!0;try{return await (0,r.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,s.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},844376,(e,t,r)=>{t.exports=e.x("node:module",()=>require("node:module"))},511745,883129,e=>{"use strict";let t;var r=e.i(874533),a=e.i(750227),n=e.i(844376),s=e.i(812057),i=e.i(902157),o=e.i(857764);let l={get url(){return`file://${e.P("src/lib/search/rg-path.ts")}`}},u=(0,s.promisify)(r.execFile);function c(e){try{let t=(0,i.statSync)(e);return t.isFile()&&(73&t.mode)!=0}catch{return!1}}function p(e,t,r){let n=a.default.resolve(e);for(let e=0;e<=t;e++){let e=a.default.join(n,r);if(c(e))return e;let t=a.default.dirname(n);if(t===n)break;n=t}return null}async function d(){try{return await u("rg",["--version"]),"rg"}catch{return null}}async function h(){if(void 0!==t)return t;let e=process.env.WIKI_VIEWER_RG;if(e&&c(e))return t=e;let r=process.env.npm_config_arch||process.arch,s=`@vscode/ripgrep-${process.platform}-${r}`;try{let e=(0,o.fileURLToPath)(l.resolve("@vscode/ripgrep")),r=(0,n.createRequire)(e).resolve(`${s}/bin/rg`);if(c(r))return t=r}catch{}let i=a.default.join("node_modules",s,"bin","rg"),u=p(process.cwd(),5,i);if(u)return t=u;let h=a.default.dirname(process.execPath);if(h!==process.cwd()){let e=p(h,5,i);if(e)return t=e}return t=await d()}function f(e){return e.replace(/<\/?mark>/g,"")}function m(e,t,r={}){let a=r.window??60;if(!t.length)return f(e);let n=Buffer.from(e,"utf8"),s=n.length,i=[...t].sort((e,t)=>e.start-t.start),o=i[0],l=Math.floor((o.start+o.end)/2),u=Math.max(0,l-a),c=Math.min(s,l+a);for(;u>0&&(192&n[u])==128;)u++;for(;c<s&&(192&n[c])==128;)c--;let p=i.filter(e=>e.start<c&&e.end>u),d=[],h=u;for(let e of p){let t=Math.max(u,e.start),r=Math.min(c,e.end);t>h&&d.push({text:n.toString("utf8",h,t),mark:!1}),r>t&&d.push({text:n.toString("utf8",t,r),mark:!0}),h=r}h<c&&d.push({text:n.toString("utf8",h,c),mark:!1});let g="";for(let e of(u>0&&(g+="…"),d)){let t=f(e.text);g+=e.mark?`<mark>${t}</mark>`:t}return c<s&&(g+="…"),g}e.s(["buildSnippet",0,m],883129);var g=e.i(719126);let v=null;async function x(){if(v)return v;try{let t=await e.A(267328);return v=t,t}catch{return v={nestedHazardMounts:()=>[],rootIsHazardMount:()=>!1}}}let w=[".git",".pi",".proof","node_modules",".next"];async function y(e){let t=[];for(let e of w)t.push("--glob",`!${e}/**`);for(let r of(await x()).nestedHazardMounts(e)){let n=a.default.relative(e,r);!n||n.startsWith("..")||a.default.isAbsolute(n)||(n=n.replace(/\\/g,"/"),t.push("--glob",`!${n}/**`))}return t}async function k(e){let t=["--json","--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--max-filesize","2M","--crlf"];return(await x()).rootIsHazardMount(e)&&t.push("--no-mmap"),t.push(...await y(e)),t}function R(e){let t=e.replace(/\\/g,"/");return a.default.isAbsolute(t)||(t=a.default.normalize(t).replace(/\\/g,"/")).startsWith("..")||"."===t||(0,g.isDeniedRelPath)(t)?null:t}function _(e){try{e.kill("SIGTERM")}catch{}setTimeout(()=>{try{e.kill("SIGKILL")}catch{}},2e3)}function b(e,t,a,n,s,i,o){return new Promise(l=>{if(s.signal?.aborted)return void l({outcome:"aborted",code:null,stderr:"",truncated:!0});let u=(0,r.spawn)(e,t,{cwd:a,stdio:["ignore","pipe","pipe"],env:{...process.env,RIPGREP_CONFIG_PATH:""}}),c="",p="",d=!1,h=!1,f=null,m=e=>{d||(d=!0,clearTimeout(g),v?.removeEventListener("abort",x),l({outcome:e,code:f,stderr:p,truncated:h}))},g=setTimeout(()=>{h=!0,_(u),m("timeout")},s.timeoutMs),v=s.signal,x=()=>{h=!0,_(u),m("aborted")};v?.addEventListener("abort",x,{once:!0}),u.stdout?.on("data",e=>{if(c+=e.toString("utf8"),n){let e=c.split("\n");for(let t of(c=e.pop()??"",e)){let e;if(t.trim()){try{e=JSON.parse(t)}catch{continue}if("cap"===i(e)){h=!0,_(u),m("success");return}}}}else if(o){let e=c.split("\n");for(let t of(c=e.pop()??"",e))if(t&&"cap"===o(t)){h=!0,_(u),m("success");return}}}),u.stderr?.on("data",e=>{p+=e.toString("utf8")}),u.on("error",e=>{f=-1,p=e.message,m("error")}),u.on("close",e=>{if(f=e,!d){if(n&&c.trim())try{let e=JSON.parse(c.trim());i(e)}catch{}else!n&&o&&c&&o(c);0===e||1===e?m("success"):m("error")}})})}async function P(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=a.split(/\s+/).slice(0,8).map(e=>e.endsWith("*")?e.slice(0,-1):e);if(0===n.length)return{ok:!0,results:[],truncated:!1};let s=await h();if(!s)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let i=new Map,o=r.limit??200,l=0,u=await k(e);for(let e of(u.push("--fixed-strings","--ignore-case"),n))u.push("-e",e);u.push("--",r.startPath??".");let c={timeoutMs:r.timeoutMs??1e4,signal:r.signal},p=await b(s,u,e,!0,c,e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=(t.submatches??[]).map(e=>({start:e.start,end:e.end})),s=t.lines.text.replace(/\r?\n$/,""),u=m(s,a),c={path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:s,snippet:u},p=c.text.toLowerCase(),d=new Set;for(let e=0;e<n.length;e++)p.includes(n[e].toLowerCase())&&d.add(e);let h=i.get(r);for(let e of(h||(h={path:r,matches:[],tokenSet:new Set},i.set(r,h)),d))h.tokenSet.add(e);return(h.matches.push(c),++l>=o)?"cap":"continue"}),d=n.length,f=[];for(let e of i.values()){if(e.tokenSet.size<d)continue;let t=e.matches.sort((e,t)=>e.line-t.line)[0],r=e.tokenSet.size/d*1e3+Math.min(e.matches.length,100);f.push({path:e.path,matchCount:e.matches.length,tokensMatched:e.tokenSet.size,score:r,firstMatch:t})}return(f.sort((e,t)=>t.tokensMatched!==e.tokensMatched?t.tokensMatched-e.tokensMatched:t.matchCount!==e.matchCount?t.matchCount-e.matchCount:e.path.localeCompare(t.path)),"success"===p.outcome)?2===p.code?{ok:!1,reason:"error",message:p.stderr.trim().split("\n")[0]??"rg error",partialResults:f}:{ok:!0,results:f,truncated:p.truncated}:"timeout"===p.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:f}:{ok:!1,reason:"error",message:p.stderr||"Search failed",partialResults:f}}async function S(e,t,r,a,n){var s,i;let o=[],l=a.limit??200,u=0,c=await k(t);n&&c.push("--pcre2"),c.push("-e",r),c.push("--",a.startPath??".");let p=await b(e,c,t,!0,{timeoutMs:a.timeoutMs??1e4,signal:a.signal},e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=t.submatches??[];return(o.push({path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:t.lines.text.replace(/\r?\n$/,"")}),++u>=l)?"cap":"continue"});return{outcome:(s=p,i=o,"timeout"===s.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:i}:"aborted"===s.outcome?{ok:!1,reason:"error",message:"Search aborted",partialResults:i}:"error"===s.outcome||2===s.code?{ok:!1,reason:"error",message:s.stderr.trim().split("\n")[0]??"rg error",partialResults:i}:{ok:!0,results:i,truncated:s.truncated}),stderr:p.stderr,code:p.code}}function C(e){let t=e.toLowerCase();return t.includes("look-around")||t.includes("lookaround")||t.includes("backreference")||t.includes("back-reference")||t.includes("lookahead")||t.includes("lookbehind")}function E(e){let t=e.toLowerCase();return t.includes("regex")||t.includes("pattern")||t.includes("parse")||t.includes("syntax")||t.includes("unclosed")||C(t)}async function M(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=await h();if(!n)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let s=await S(n,e,a,r,!1);if(!s.outcome.ok&&"error"===s.outcome.reason&&C(s.stderr)){let t=await S(n,e,a,r,!0);return!t.outcome.ok&&"error"===t.outcome.reason&&E(t.stderr)?{ok:!1,reason:"invalid-pattern",message:t.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:t.outcome.partialResults}:t.outcome}return!s.outcome.ok&&"error"===s.outcome.reason&&E(s.stderr)?{ok:!1,reason:"invalid-pattern",message:s.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:s.outcome.partialResults}:s.outcome}async function j(e,t={}){let r=await h();if(!r)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let a=[],n=t.limit??2e3,s=["--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--crlf"];(await x()).rootIsHazardMount(e)&&s.push("--no-mmap"),s.push(...await y(e)),s.push("--files","--",t.startPath??".");let i=await b(r,s,e,!1,{timeoutMs:t.timeoutMs??1e4,signal:t.signal},()=>"continue",e=>{let t=e.trim();if(!t)return"continue";let r=R(t);return r&&(a.push(r),a.length>=n)?"cap":"continue"});return"success"===i.outcome?{ok:!0,results:a,truncated:i.truncated}:{ok:!1,reason:"timeout"===i.outcome?"timeout":"error",message:i.stderr||"rg --files failed",partialResults:a}}e.s(["rgListFiles",0,j,"rgLiteralSearch",0,P,"rgRegexSearch",0,M],511745)},58283,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),n=e.i(475331),s=e.i(490301),i=e.i(670943),o=e.i(690324),l=e.i(243133),u=e.i(404870),c=e.i(420180),p=e.i(867883),d=e.i(336708),h=e.i(682278),f=e.i(157569),m=e.i(844146),g=e.i(193695);e.i(105888);var v=e.i(530564),x=e.i(702414),w=e.i(402662),y=e.i(660038),k=e.i(511745);async function R(e,t,r,a={}){let n=t.trim();if(!n)return{paths:[],truncated:!1};let s=n.split(/\s+/).slice(0,8).map(e=>e.toLowerCase());if(0===s.length)return{paths:[],truncated:!1};let i=await (0,k.rgListFiles)(e,{limit:2e4,timeoutMs:5e3,signal:a.signal});if(!i.ok)return"unavailable"===i.reason?{paths:[],truncated:!1,degraded:"rg-unavailable"}:{paths:_(i.partialResults??[],s,r).results,truncated:!0,degraded:i.reason};let o=_(i.results,s,r);return{paths:o.results,truncated:i.truncated||o.truncated}}function _(e,t,r){let a=[];for(let n of e){let e=n.toLowerCase();if(t.every(t=>e.includes(t))&&(a.push(n),a.length>=r))return{results:a,truncated:!0}}return{results:a,truncated:!1}}async function b(e){let t,r=(0,w.checkOrigin)(e);if(r)return r;let a=await (0,y.resolveWorkspaceForUser)(e);if(!a.ok)return x.NextResponse.json({error:a.code},{status:a.status});try{t=await e.json()}catch{return x.NextResponse.json({error:"INVALID_PAYLOAD"},{status:400})}let n="string"==typeof t.query?t.query:"",s=Math.min("number"==typeof t.limit?t.limit:30,200);if(!n.trim())return x.NextResponse.json({kind:"rg",query:n,matches:[],truncated:!1});let[i,o]=await Promise.all([(0,k.rgLiteralSearch)(a.rootDir,n,{limit:s,timeoutMs:1e4,signal:e.signal}),R(a.rootDir,n,s,{signal:e.signal})]),l=new Set(o.paths),u=[];for(let e of o.paths)u.push({path:e,score:2e3,snippet:""});if(i.ok)for(let e of i.results)l.has(e.path)||u.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line});else if("unavailable"===i.reason);else if(i.partialResults)for(let e of i.partialResults)l.has(e.path)||u.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line});let c=!i.ok||i.truncated||o.truncated,p={kind:"rg",query:n,matches:u.slice(0,s),truncated:c};return i.ok||"unavailable"!==i.reason||(p.degraded="rg-unavailable"),x.NextResponse.json(p)}e.s(["POST",0,b,"runtime",0,"nodejs"],725535);var P=e.i(725535);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/wiki/search/route",pathname:"/api/wiki/search",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/wiki/search/route.ts",nextConfigOutput:"standalone",userland:P,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:E,serverHooks:M}=S;async function j(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/wiki/search/route";x=x.replace(/\/index$/,"")||"/";let w=await S.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:k,nextConfig:R,parsedUrl:_,isDraftMode:b,prerenderManifest:P,routerServerContext:C,isOnDemandRevalidate:E,revalidateOnlyGenerated:M,resolvedPathname:j,clientReferenceManifest:A,serverActionsManifest:N}=w,T=(0,o.normalizeAppPath)(x),I=!!(P.dynamicRoutes[T]||P.routes[j]),O=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,_,!1):t.end("This page could not be found"),null);if(I&&!b){let e=!!P.routes[j],t=P.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await O();throw new g.NoFallbackError}}let q=null;!I||S.isDev||b||(q="/index"===(q=j)?"/":q);let D=!0===S.isDev||!I,H=I&&!D;N&&A&&(0,i.setManifestsSingleton)({page:x,clientReferenceManifest:A,serverActionsManifest:N});let L=e.method||"GET",$=(0,s.getTracer)(),z=$.getActiveScopeSpan(),W=!!(null==C?void 0:C.isWrappedByNextServer),U=!!(0,n.getRequestMeta)(e,"minimalMode"),F=(0,n.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,R,P,U);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let B={params:k,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:D,incrementalCache:F,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,C)},sharedContext:{buildId:y}},K=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let n,i=async e=>S.handle(V,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${L} ${x}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!U&&E&&M&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=B.renderOpts.fetchMetrics;let o=B.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=B.renderOpts.collectedTags;if(!I)return await (0,d.sendResponse)(K,G,s,B.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,a=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:E})},!1,C),t}},u=await S.handleResponse({req:e,nextConfig:R,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:M,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:U});if(!I)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});U||t.setHeader("x-nextjs-cache",E?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return U&&I||c.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,d.sendResponse)(K,G,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};W&&z?await o(z):(n=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},o),void 0,!W))}catch(t){if(t instanceof g.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:E})},!1,C),I)throw t;return await (0,d.sendResponse)(K,G,new Response(null,{status:500})),null}}e.s(["handler",0,j,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:E})},"routeModule",0,S,"serverHooks",0,M,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,E],58283)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},267328,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_fs_mounts_ts_0ksy80l._.js"].map(t=>e.l(t))).then(()=>t(60845)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0kuwuwk._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__07wa2lq._.js.map
@@ -0,0 +1,20 @@
1
+ module.exports=[874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},812057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},256294,296555,e=>{"use strict";let t;var r=e.i(874533),s=e.i(812057),a=e.i(912714),n=e.i(750227),i=e.i(660526);e.i(902157);let o=RegExp("[;|&$`<>(){}\\n\\r\\0]");function l(e){let{target:t,mountpoint:r,port:s}=e,a=t.user?`${t.user}@`:"",n=[`${a}${t.host}:${t.remotePath}`,r];s&&Number.isInteger(Number(s))&&Number(s)>0&&65536>Number(s)&&n.push("-p",String(s));let i=e.authMethod??"agent";!e.authMethod&&(null!=e.password?i="password":e.keyPath&&(i="keyfile"));let o=["reconnect","ServerAliveInterval=15","ServerAliveCountMax=3","compression=yes","cache=yes","kernel_cache","StrictHostKeyChecking=accept-new","BatchMode=yes"];if(e.readOnly&&o.push("ro"),"keyfile"===i&&e.keyPath&&(o.push(`IdentityFile=${e.keyPath}`),o.push("IdentitiesOnly=yes")),"password"===i){let e=o.indexOf("BatchMode=yes");e>=0&&o.splice(e,1),o.push("password_stdin"),o.push("PreferredAuthentications=password,keyboard-interactive"),o.push("PubkeyAuthentication=no"),o.push("NumberOfPasswordPrompts=1")}return e.extraOptions&&o.push(...e.extraOptions),n.push("-o",o.join(",")),n}e.s(["buildSshfsArgs",0,l,"isValidKeyPath",0,function(e){return!(!e||o.test(e)||e.includes(".."))&&(e.startsWith("/")||e.startsWith("~/"))},"parseSshTarget",0,function(e){let t;if(!e||o.test(e))return null;let r=e.trim(),s=r.indexOf(":");if(s<=0)return null;let a=r.slice(0,s),n=r.slice(s+1);if(!n.startsWith("/")||n.includes(".."))return null;let i=a,l=a.indexOf("@");return l>=0&&(t=a.slice(0,l),i=a.slice(l+1),!t)?null:i&&/^[a-zA-Z0-9.\-]+$/.test(i)&&(!t||/^[a-zA-Z0-9._\-]+$/.test(t))?{user:t,host:i,remotePath:n}:null}],296555);let u=(0,s.promisify)(r.execFile);function c(){return n.default.join(i.default.homedir(),".wiki-viewer","mounts")}async function d(){if(!0!==t)try{await u("sshfs",["--version"]),t=!0}catch{throw Error("sshfs binary not found. Install sshfs + FUSE (e.g. `apt install sshfs`, `brew install macfuse sshfs`) and ensure it is on PATH.")}}async function p(t){var r;let s=n.default.resolve(t),i=!1;try{i=(await (0,a.readFile)("/proc/mounts","utf8")).split("\n").some(e=>{let t=e.split(" ");return t[1]===s&&/fuse/.test(t[2]??"")})}catch{i=!1}return!!i&&(r=s,new Promise(t=>{let s=!1,a=setTimeout(()=>{s||(s=!0,t(!1))},4e3);e.A(687903).then(({readdir:e})=>e(r)).then(()=>{s||(s=!0,clearTimeout(a),t(!0))}).catch(()=>{s||(s=!0,clearTimeout(a),t(!1))})}))}async function h(e){await d(),await (0,a.mkdir)(e.mountpoint,{recursive:!0});let t=l(e);if(await new Promise((s,a)=>{let n=(0,r.spawn)("sshfs",t,{stdio:["pipe","ignore","pipe"]}),i="",o=setTimeout(()=>{n.kill("SIGKILL"),a(Error("sshfs mount timed out after 25s."))},25e3);n.stderr?.on("data",e=>{i+=e.toString()}),n.on("error",e=>{clearTimeout(o),a(e.message.includes("ENOENT")?Error("sshfs binary not found on PATH."):e)}),n.on("close",e=>{clearTimeout(o),0===e?s():a(Error(`sshfs exited ${e}: ${i.trim()||"mount failed"}`))}),"password"===e.authMethod&&n.stdin?.write((e.password??"")+"\n"),n.stdin?.end()}),!await p(e.mountpoint))throw Error("sshfs reported success but the mount is not live.")}async function f(e){let t=n.default.resolve(e);for(let[e,r]of[["fusermount",["-u","-z",t]],["umount",[t]]])try{await u(e,r);break}catch{}try{await (0,a.rmdir)(t)}catch{}}e.s(["assertSshfsAvailable",0,d,"isMounted",0,p,"mountSshfs",0,h,"mountpointFor",0,function(e){return n.default.join(c(),e)},"mountsDir",0,c,"unmountSshfs",0,f],256294)},536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function s(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function a(e,n,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(n);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),a=r.default.relative(o,e);if(s(a))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let a=r.default.dirname(e);if(a===e)break;try{let e=await (0,t.realpath)(a),n=r.default.relative(o,e);if(s(n))return null;return{relPath:l,absolutePath:u}}catch{e=a}}return null}}e.s(["resolveWorkspacePath",0,a])},402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let s=e.headers.get("origin"),a=e.headers.get("referer");if(!s&&!a)return null;let n=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let s=new Set;for(let e of t)for(let t of["http","https"])for(let a of r)s.add(`${t}://${e}${a}`);return s}(e.headers.get("host")??"");if(s)return n.has(s)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(a){try{let{protocol:e,host:t}=new URL(a);if(n.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),s=e.i(750227),a=e.i(536654),n=e.i(848475);async function i(e,t){if(!e)return null;let r=await (0,a.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return r?.absolutePath??null}async function o(e,t){let s=420;try{let t=await (0,r.stat)(e);s=511&t.mode}catch{}let a=e+".~"+process.pid+"."+Date.now()+".tmp",n=await (0,r.open)(a,"w",s);try{await n.write(t),await n.datasync()}finally{await n.close()}await (0,r.rename)(a,e)}async function l(e,t){let a=s.default.dirname(e);if(t)return await (0,r.mkdir)(a,{recursive:!0}),!0;try{return await (0,r.stat)(a),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,n.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},487018,e=>{"use strict";var t=e.x("node:sqlite",()=>require("node:sqlite"),!0);function r(e){return 1===e.length&&Array.isArray(e[0])?e[0]:e}class s{stmt;constructor(e){this.stmt=e}get reader(){return this.stmt.columns().length>0}all(...e){let t=r(e);return this.stmt.all(...t)}get(...e){let t=r(e);return this.stmt.get(...t)}run(...e){let t=r(e),s=this.stmt.run(...t);return{changes:Number(s.changes),lastInsertRowid:Number(s.lastInsertRowid)}}iterate(...e){let t=r(e);return this.stmt.iterate(...t)}}class a{db;constructor(e){this.db=new t.DatabaseSync(e),this.db.exec("PRAGMA busy_timeout = 5000"),this.db.exec("PRAGMA journal_mode = WAL")}prepare(e){return new s(this.db.prepare(e))}exec(e){this.db.exec(e)}close(){this.db.close()}pragma(e){this.db.exec(`PRAGMA ${e}`)}}e.s(["default",()=>a])},97082,e=>{"use strict";var t=e.i(487018),r=e.i(750227),s=e.i(660526),a=e.i(902157),n=e.i(666680);let i=null;function o(){if(i)return i;let e=r.default.join(process.env.HOME??s.default.homedir(),".wiki-viewer");return(0,a.mkdirSync)(e,{recursive:!0}),(i=new t.default(r.default.join(e,"shared.db"))).pragma("journal_mode = WAL"),i.pragma("synchronous = NORMAL"),i.exec(`
2
+ CREATE TABLE IF NOT EXISTS shared_docs (
3
+ id TEXT PRIMARY KEY,
4
+ workspace_id TEXT NOT NULL,
5
+ file_path TEXT NOT NULL,
6
+ token TEXT NOT NULL UNIQUE,
7
+ password_hash TEXT,
8
+ expires_at TEXT,
9
+ created_by TEXT NOT NULL,
10
+ created_at TEXT NOT NULL,
11
+ view_count INTEGER NOT NULL DEFAULT 0,
12
+ is_revoked INTEGER NOT NULL DEFAULT 0
13
+ );
14
+ CREATE INDEX IF NOT EXISTS shared_docs_token_idx ON shared_docs(token);
15
+ CREATE INDEX IF NOT EXISTS shared_docs_file_idx ON shared_docs(workspace_id, file_path);
16
+ `),i}function l(e){return{id:e.id,workspaceId:e.workspace_id,filePath:e.file_path,token:e.token,passwordHash:e.password_hash??null,expiresAt:e.expires_at??null,createdBy:e.created_by,createdAt:e.created_at,viewCount:e.view_count??0,isRevoked:1===e.is_revoked}}e.s(["createShare",0,function(e){var t;let r,s,a=o(),i="shr_"+(0,n.randomBytes)(8).toString("base64url"),l=(0,n.randomBytes)(16).toString("base64url"),u=e.password?(t=e.password,r=(0,n.randomBytes)(16).toString("hex"),s=(0,n.scryptSync)(t,r,64).toString("hex"),`${r}:${s}`):null,c={id:i,workspaceId:e.workspaceId,filePath:e.filePath,token:l,passwordHash:u,expiresAt:e.expiresAt??null,createdBy:e.createdBy,createdAt:new Date().toISOString(),viewCount:0,isRevoked:!1},d={...c,isRevoked:+!!c.isRevoked};return a.prepare(`INSERT INTO shared_docs
17
+ (id, workspace_id, file_path, token, password_hash, expires_at, created_by, created_at, view_count, is_revoked)
18
+ VALUES (@id, @workspaceId, @filePath, @token, @passwordHash, @expiresAt, @createdBy, @createdAt, @viewCount, @isRevoked)`).run(d),c},"getShareByToken",0,function(e){let t=o().prepare("SELECT * FROM shared_docs WHERE token = ?").get(e);return t?l(t):null},"incrementViewCount",0,function(e){o().prepare("UPDATE shared_docs SET view_count = view_count + 1 WHERE token = ?").run(e)},"isExpired",0,function(e){return!!e.expiresAt&&new Date(e.expiresAt)<new Date},"listSharesForFile",0,function(e,t){return o().prepare("SELECT * FROM shared_docs WHERE workspace_id = ? AND file_path = ? AND is_revoked = 0 ORDER BY created_at DESC").all(e,t).map(l)},"revokeShare",0,function(e){o().prepare("UPDATE shared_docs SET is_revoked = 1 WHERE id = ?").run(e)},"verifyPassword",0,function(e,t){let[r,s]=t.split(":"),a=(0,n.scryptSync)(e,r,64),i=Buffer.from(s,"hex");return a.length===i.length&&(0,n.timingSafeEqual)(a,i)}])},794776,e=>{"use strict";let t,r=Number.isFinite(t=parseInt(process.env.AGENT_RATE_LIMIT??"",10))&&t>0?t:60;e.s(["OPS_PER_MINUTE",0,r,"SIDECAR_EVENT_TRIM_SIZE",0,1e3,"SIDECAR_TRIM_EVERY_N_MUTATIONS",0,100])},517387,e=>{"use strict";var t=e.i(794776);let r=new Map;e.s(["checkAndConsume",0,function(e,s=1){let a=Date.now(),n=t.OPS_PER_MINUTE,i=r.get(e);i||(i={tokens:n,lastRefill:a},r.set(e,i));let o=Math.floor((a-i.lastRefill)/1e3);return(o>0&&(i.tokens=Math.min(n,i.tokens+o),i.lastRefill=i.lastRefill+1e3*o),i.tokens<s)?{ok:!1,retryAfterMs:Math.max(1,1e3*(s-i.tokens)-(a-i.lastRefill))}:(i.tokens-=s,{ok:!0})}])},211451,63467,e=>{"use strict";var t=e.i(702414),r=e.i(912714),s=e.i(97082),a=e.i(359211),n=e.i(719126);async function i(e){let i,o=(0,s.getShareByToken)(e);if(!o)return{ok:!1,response:t.NextResponse.json({error:"not_found",message:"Share link not found"},{status:404})};if(o.isRevoked)return{ok:!1,response:t.NextResponse.json({error:"revoked",message:"Share link has been revoked"},{status:410})};if((0,s.isExpired)(o))return{ok:!1,response:t.NextResponse.json({error:"expired",message:"Share link has expired"},{status:410})};let l=await (0,a.getWorkspace)(o.workspaceId);if(!l)return{ok:!1,response:t.NextResponse.json({error:"workspace_gone",message:"Workspace no longer exists"},{status:410})};let u=await (0,n.safeAbsPath)(l.rootDir,o.filePath);if(!u)return{ok:!1,response:t.NextResponse.json({error:"path_invalid",message:"Invalid file path"},{status:400})};try{i=await (0,r.stat)(u)}catch{return{ok:!1,response:t.NextResponse.json({error:"file_gone",message:"File no longer exists"},{status:410})}}if(i.isDirectory())return{ok:!1,response:t.NextResponse.json({error:"path_invalid",message:"Directories cannot be shared"},{status:400})};let c=o.filePath.split("/").pop()??o.filePath;return{ok:!0,target:{share:o,absPath:u,filename:c}}}e.s(["resolveShareTarget",0,i],211451);var o=e.i(666680);function l(e){let t=(0,o.createHash)("sha256").update(e).digest("hex").slice(0,24);return`wv_share_${t}`}function u(e,t){let r=`${e.e}|${e.t}`;return(0,o.createHmac)("sha256",t).update(r).digest("hex")}e.s(["inlineContentDisposition",0,function(e){let t=e.replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"\\\\").replace(/"/g,'\\"');return`inline; filename="${t}"`},"isUnlocked",0,function(e,t,r){let s=function(e,t){let r=e.headers.get("cookie")??"",s=l(t);for(let e of r.split(";")){let t=e.indexOf("=");if(!(t<=0)&&e.slice(0,t).trim()===s)return e.slice(t+1).trim()}}(e,t);return!!s&&function(e,t,r){let s,a=t.indexOf(".");if(-1===a)return!1;let n=t.slice(0,a),i=t.slice(a+1);try{s=JSON.parse(Buffer.from(n,"base64url").toString("utf8"))}catch{return!1}if(s.t!==e||"number"!=typeof s.e||s.e<=Date.now())return!1;let l=u(s,r),c=Buffer.from(l,"hex"),d=Buffer.from(i,"hex");return c.length===d.length&&(0,o.timingSafeEqual)(c,d)}(t,s,r)},"serializeUnlockCookie",0,function(e,t,r){let s,a,n,{name:i,value:o}=(a=u(s={t:t,e:Date.now()+9e5},r),n=`${Buffer.from(JSON.stringify(s)).toString("base64url")}.${a}`,{name:l(t),value:n}),c=new URL(e.url),d=[`${i}=${o}`,"HttpOnly","SameSite=Strict",`Path=${c.pathname}`,"Max-Age=900"];return"https:"===c.protocol&&d.push("Secure"),d.join("; ")}],63467)},687458,e=>{"use strict";var t=e.i(364564),r=e.i(102095),s=e.i(691091),a=e.i(475331),n=e.i(490301),i=e.i(670943),o=e.i(690324),l=e.i(243133),u=e.i(404870),c=e.i(420180),d=e.i(867883),p=e.i(336708),h=e.i(682278),f=e.i(157569),m=e.i(844146),g=e.i(193695);e.i(105888);var w=e.i(530564),v=e.i(702414),x=e.i(402662),_=e.i(254226),k=e.i(517387),y=e.i(97082),R=e.i(211451),E=e.i(63467);let T={"Cache-Control":"private, no-store"};async function N(t){let{readFile:r,stat:s}=await e.A(687903);try{if((await s(t)).size>1048576)return null;return(await r(t)).toString("utf-8")}catch(e){return console.error("[share] readFile(%s) %s",t,e instanceof Error?e.message:String(e)),null}}async function S(e,{params:t}){let{token:r}=await t,s=(0,k.checkAndConsume)(`share:${r}`,1);if(!s.ok)return v.NextResponse.json({error:"rate_limited",message:"Too many requests"},{status:429,headers:{"Retry-After":String(Math.ceil(s.retryAfterMs/1e3))}});let a=(0,y.getShareByToken)(r);if(!a)return v.NextResponse.json({error:"not_found",message:"Share link not found"},{status:404,headers:T});if(a.isRevoked)return v.NextResponse.json({error:"revoked",message:"Share link has been revoked"},{status:410,headers:T});if((0,y.isExpired)(a))return v.NextResponse.json({error:"expired",message:"Share link has expired"},{status:410,headers:T});if(a.passwordHash&&!(0,E.isUnlocked)(e,r,a.passwordHash))return v.NextResponse.json({protected:!0,message:"This document is password-protected"},{status:401,headers:T});let n=await (0,R.resolveShareTarget)(r);if(!n.ok)return n.response;let i=await N(n.target.absPath);return null===i?v.NextResponse.json({error:"read_error",message:"Failed to read file"},{status:500,headers:T}):((0,y.incrementViewCount)(r),v.NextResponse.json({content:i,filename:n.target.filename,filePath:n.target.share.filePath,viewCount:n.target.share.viewCount+1},{headers:a.passwordHash?T:void 0}))}async function A(e,{params:t}){let{token:r}=await t,s=(0,y.getShareByToken)(r);if(!s)return v.NextResponse.json({error:"not_found"},{status:404});if(s.isRevoked)return v.NextResponse.json({error:"revoked"},{status:410});if((0,y.isExpired)(s))return v.NextResponse.json({error:"expired"},{status:410});if(!s.passwordHash)return v.NextResponse.json({error:"not_protected"},{status:400});let a=(0,k.checkAndConsume)(`share-pwd:${r}`,1);if(!a.ok)return v.NextResponse.json({error:"rate_limited",message:"Too many attempts. Try again later."},{status:429,headers:{"Retry-After":String(Math.ceil(a.retryAfterMs/1e3))}});let n=await e.json();if(!n.password||"string"!=typeof n.password)return v.NextResponse.json({error:"missing_password"},{status:400});if(!(0,y.verifyPassword)(n.password,s.passwordHash))return v.NextResponse.json({error:"wrong_password",message:"Incorrect password"},{status:403,headers:T});let i=await (0,R.resolveShareTarget)(r);if(!i.ok)return i.response;let o=await N(i.target.absPath);if(null===o)return v.NextResponse.json({error:"read_error",message:"Failed to read file"},{status:500,headers:T});(0,y.incrementViewCount)(r);let l=(0,E.serializeUnlockCookie)(e,r,s.passwordHash);return v.NextResponse.json({content:o,filename:i.target.filename,filePath:i.target.share.filePath,viewCount:i.target.share.viewCount+1},{headers:{...T,"Set-Cookie":l}})}async function P(t,{params:r}){let{token:s}=await r,a=(0,x.checkOrigin)(t);if(a)return a;let n=await (0,_.requireUser)(t);if(!n.ok)return v.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let i=(0,y.getShareByToken)(s);if(!i)return v.NextResponse.json({error:"not_found"},{status:404});if(i.createdBy!==n.user.id){let{isAdmin:t}=await e.A(919623);if(!await t(n.user.id,n.user.email))return v.NextResponse.json({error:"FORBIDDEN"},{status:403})}return(0,y.revokeShare)(i.id),v.NextResponse.json({ok:!0})}e.s(["DELETE",0,P,"GET",0,S,"POST",0,A],998553);var b=e.i(998553);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/share/[token]/route",pathname:"/api/share/[token]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/share/[token]/route.ts",nextConfigOutput:"standalone",userland:b,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:O,serverHooks:I}=j;async function D(e,t,s){s.requestMeta&&(0,a.setRequestMeta)(e,s.requestMeta),j.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/share/[token]/route";v=v.replace(/\/index$/,"")||"/";let x=await j.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:_,params:k,nextConfig:y,parsedUrl:R,isDraftMode:E,prerenderManifest:T,routerServerContext:N,isOnDemandRevalidate:S,revalidateOnlyGenerated:A,resolvedPathname:P,clientReferenceManifest:b,serverActionsManifest:C}=x,O=(0,o.normalizeAppPath)(v),I=!!(T.dynamicRoutes[O]||T.routes[P]),D=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,R,!1):t.end("This page could not be found"),null);if(I&&!E){let e=!!T.routes[P],t=T.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(y.adapterPath)return await D();throw new g.NoFallbackError}}let M=null;!I||j.isDev||E||(M="/index"===(M=P)?"/":M);let U=!0===j.isDev||!I,H=I&&!U;C&&b&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:b,serverActionsManifest:C});let B=e.method||"GET",$=(0,n.getTracer)(),q=$.getActiveScopeSpan(),L=!!(null==N?void 0:N.isWrappedByNextServer),F=!!(0,a.getRequestMeta)(e,"minimalMode"),W=(0,a.getRequestMeta)(e,"incrementalCache")||await j.getIncrementalCache(e,y,T,F);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let z={params:k,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:W,cacheLifeProfiles:y.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>j.onRequestError(e,t,s,a,N)},sharedContext:{buildId:_}},X=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(X,(0,u.signalFromNodeResponse)(t));try{let a,i=async e=>j.handle(G,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${B} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",s),a.updateName(t))}else e.updateName(`${B} ${v}`)}),o=async a=>{var n,o;let l=async({previousCacheEntry:r})=>{try{if(!F&&S&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=z.renderOpts.fetchMetrics;let o=z.renderOpts.pendingWaitUntil;o&&s.waitUntil&&(s.waitUntil(o),o=void 0);let l=z.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(X,K,n,z.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,s=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await j.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,N),t}},u=await j.handleResponse({req:e,nextConfig:y,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:A,responseGenerator:l,waitUntil:s.waitUntil,isMinimalMode:F});if(!I)return null;if((null==u||null==(n=u.value)?void 0:n.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return F&&I||c.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(X,K,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};L&&q?await o(q):(a=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${B} ${v}`,kind:n.SpanKind.SERVER,attributes:{"http.method":B,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof g.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,N),I)throw t;return await (0,p.sendResponse)(X,K,new Response(null,{status:500})),null}}e.s(["handler",0,D,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:O})},"routeModule",0,j,"serverHooks",0,I,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,O],687458)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_auth_api-key_ts_0t_ma-t._.js"].map(t=>e.l(t))).then(()=>t(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},919623,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_auth_admin_ts_0g4i6v_._.js"].map(t=>e.l(t))).then(()=>t(583627)))}];
19
+
20
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0bpv09n._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},959801,(e,t,r)=>{"use strict";t.exports=e.r(918622)},637142,(e,t,r)=>{"use strict";t.exports=e.r(959801).vendored["react-rsc"].React},186791,(e,t,r)=>{"use strict";var a=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,i={},l={RequestCookies:()=>g,ResponseCookies:()=>f,parseCookie:()=>c,parseSetCookie:()=>u,stringifyCookie:()=>d};for(var p in l)a(i,p,{get:l[p],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function c(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,s]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=s?s:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,r],...a]=c(e),{domain:s,expires:o,httponly:n,maxage:i,path:l,samesite:p,secure:d,partitioned:u,priority:g}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var f,v,w={name:t,value:decodeURIComponent(r),domain:s,...o&&{expires:new Date(o)},...n&&{httpOnly:!0},..."string"==typeof i&&{maxAge:Number(i)},path:l,...p&&{sameSite:h.includes(f=(f=p).toLowerCase())?f:void 0},...d&&{secure:!0},...g&&{priority:m.includes(v=(v=g).toLowerCase())?v:void 0},...u&&{partitioned:!0}};let e={};for(let t in w)w[t]&&(e[t]=w[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of o(t))n.call(e,i)||void 0===i||a(e,i,{get:()=>t[i],enumerable:!(r=s(t,i))||r.enumerable});return e})(a({},"__esModule",{value:!0}),i);var h=["strict","lax","none"],m=["low","medium","high"],g=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of c(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},f=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const s=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(s)?s:function(e){if(!e)return[];var t,r,a,s,o,n=[],i=0;function l(){for(;i<e.length&&/\s/.test(e.charAt(i));)i+=1;return i<e.length}for(;i<e.length;){for(t=i,o=!1;l();)if(","===(r=e.charAt(i))){for(a=i,i+=1,l(),s=i;i<e.length&&"="!==(r=e.charAt(i))&&";"!==r&&","!==r;)i+=1;i<e.length&&"="===e.charAt(i)?(o=!0,i=s,n.push(e.substring(t,a)),t=i):i=a+1}else i+=1;(!o||i>=e.length)&&n.push(e.substring(t,e.length))}return n}(s)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,s=this._parsed;return s.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(s,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},827976,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),s=e.i(475331),o=e.i(490301),n=e.i(670943),i=e.i(690324),l=e.i(243133),p=e.i(404870),d=e.i(420180),c=e.i(867883),u=e.i(336708),h=e.i(682278),m=e.i(157569),g=e.i(844146),f=e.i(193695);e.i(105888);var v=e.i(530564),w=e.i(702414),k=e.i(912714),y=e.i(750227);async function b(){try{let e=await (0,k.readFile)(y.default.resolve(process.cwd(),"package.json"),"utf-8");return JSON.parse(e).version??"0.0.0"}catch{return"0.0.0"}}async function x(e){let t,r,[a,s]=await Promise.all([(0,k.readFile)(y.default.resolve(process.cwd(),"agents/bootstrap-prompt.md"),"utf-8").catch(()=>""),b()]),o=(t=e.headers.get("x-forwarded-proto")??(e.url.startsWith("https")?"https":"http"),r=e.headers.get("x-forwarded-host")??e.headers.get("host")??new URL(e.url).host,`${t}://${r}`),n=(e.headers.get("host")??"").replace(/:[0-9]+$/,"").replace(/^\[(.*)\]$/,"$1").toLowerCase(),i="localhost"===n||"127.0.0.1"===n||"::1"===n,l=(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean),p=i||l.includes(n);return w.NextResponse.json({name:"wiki-viewer",version:s,endpoint:o,humanInstructions:"Open the wiki-viewer AI Panel (Bot icon in header). Register the agent, then approve it in the Pending Registrations list. The agent receives a one-shot token.",ownerBootstrap:{hostnameSeen:n,ownerHostTrusted:p,hint:p?"This host is trusted for owner cookie issuance. Open the AI Panel in a browser and approve pending registrations.":`This host (${n}) is not in the owner-trust allowlist, so the AI Panel cannot bootstrap an owner cookie. Restart the server with WIKI_OWNER_HOSTS=${n} or access via localhost.`},bootstrapPrompt:a,skillTarball:"/api/agents/skill.tar.gz",skillRaw:"/api/agents/skill",skillCli:"npx skills add anh-chu/wiki-viewer/agents/wiki-viewer-skill",routes:[{method:"POST",path:"/api/agent/register",auth:"none",purpose:"Register an agent"},{method:"GET",path:"/api/agent/register/<regId>",auth:"none",purpose:"Poll registration status"},{method:"GET",path:"/api/agent/files/<path>.md",auth:"bearer+agent-id",purpose:"Read markdown snapshot (block-ops tier)"},{method:"POST",path:"/api/agent/files/<path>.md",auth:"bearer+agent-id",purpose:"Apply block-ops"},{method:"GET",path:"/api/agent/events/<path>.md",auth:"bearer+agent-id",purpose:"Poll events"},{method:"POST",path:"/api/agent/events/<path>.md",auth:"bearer+agent-id",purpose:"Ack events"},{method:"GET",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Read file bytes. Supports Range. Returns ETag (sha256), X-File-Size, X-File-Mtime, X-Collab-State."},{method:"PUT",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Atomic whole-file write. If-Match required for overwrites; omit for creates. ?mkdirs=true creates parents. ?force=true bypasses If-Match (audited)."},{method:"DELETE",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Delete file (+ sidecar for .md). Requires If-Match + delete scope op. ?recursive=true for directories."},{method:"GET",path:"/api/agent/fs/ls/<path>",auth:"bearer+agent-id",purpose:"Directory listing. ?recursive&limit&depth. Scope-filtered. Excludes .proof/."},{method:"POST",path:"/api/agent/fs/move",auth:"bearer+agent-id",purpose:"Move/rename. Body: {from, to, ifMatch?}. Moves .md sidecar too."},{method:"POST",path:"/api/agent/fs/search",auth:"bearer+agent-id",purpose:"Server-side grep or glob. Body: {kind:'grep'|'glob', query, path?, glob?, limit?}."},{method:"GET",path:"/api/agent/settings",auth:"bearer+agent-id",purpose:"Returns rateLimit + resolved 'root' (the active workspace's directory for the X-Workspace you send)."},{method:"POST",path:"/api/wiki/presence",auth:"session",purpose:"Human editor lease heartbeat. Body: {path, action:'open'|'heartbeat'|'close'}."}],workspaces:{description:"This instance can serve multiple root directories ('workspaces'). Every agent path is relative to ONE workspace root.",header:"X-Workspace: <workspaceId>",queryParam:"ws=<workspaceId>",default:"If omitted, the server resolves to the most-recently-opened workspace. Correct for single-workspace instances; be explicit when several exist.",discoverId:"Ask the human for the workspace id, read it from the ?ws= param of a pasted wiki-viewer URL, or call GET /api/agent/settings (with X-Workspace) to confirm the resolved 'root'.",scoped:"A token may be pinned to one workspace (scope.workspaceId at approval). Requests resolving to a different workspace return 403 FORBIDDEN. A token with no pin is wildcard (any workspace).",isolation:"Paths in one workspace never touch another, even with identical relative paths."},capabilities:{maxFileBytes:5e7,supportsRange:!0,ifMatchRequired:!0,forceBypass:!0,search:["grep","glob"],globDialect:"**,*,?",scopeOps:["read","mutate","delete"],scopeWorkspaceId:!0,workspaceHeader:"X-Workspace",collabStates:["active","tracked","untracked","not-markdown"],collabPrecondition:"If-Collab-Match"},modes:{rule:"Before editing a .md file, read it and check the X-Collab-State response header. If 'active', use block-ops (Tier 2) at the X-Collab-Snapshot URL so a human can review your changes. If 'tracked', prefer block-ops for semantic/prose edits; use raw fs only for mechanical/whole-file ops (reformat, regenerate). If 'untracked', raw fs is fine (a Tier-2 edit would create a sidecar). For non-markdown files, always use raw fs (Tier 2 does not apply). A raw PUT to an active .md is rejected 409 COLLAB_ACTIVE with the Tier-2 URL — switch to block-ops.",collabStateHeaders:["X-Collab-State: active|tracked|untracked|not-markdown","X-Collab-Revision: <n>","X-Collab-Snapshot: /api/agent/files/<path>.md"],tiers:{tier1:"Raw FS — /api/agent/fs/* — all file types, fast, light audit (ETag/sha256, file.rawWritten event, audit table). No proof-spans.",tier2:"Collab — /api/agent/files/*.md — markdown only, reviewable proof-spans, comments, suggestions. Human can accept/revert."}},mcpAdapter:{package:"wiki-viewer-mcp",invoke:"npx wiki-viewer-mcp",env:["WIKI_VIEWER_URL","WIKI_VIEWER_TOKEN","WIKI_VIEWER_AGENT_ID","WIKI_VIEWER_WORKSPACE"],description:"Thin MCP adapter mapping standard MCP filesystem tools onto these endpoints. Set WIKI_VIEWER_WORKSPACE to target a specific workspace (sends X-Workspace on every call). Reads X-Collab-State and blocks or warns on raw writes to active .md files."},ops:["block.replace","block.insertAfter","block.insertBefore","block.delete","block.append","block.prepend","comment.add","comment.reply","comment.resolve","comment.reopen","suggestion.add","suggestion.accept","suggestion.reject"]})}e.s(["GET",0,x,"runtime",0,"nodejs"],352957);var R=e.i(352957);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agents/install/route",pathname:"/api/agents/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agents/install/route.ts",nextConfigOutput:"standalone",userland:R,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:A,serverHooks:S}=E;async function _(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),E.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agents/install/route";w=w.replace(/\/index$/,"")||"/";let k=await E.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!k)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:b,nextConfig:x,parsedUrl:R,isDraftMode:C,prerenderManifest:A,routerServerContext:S,isOnDemandRevalidate:_,revalidateOnlyGenerated:I,resolvedPathname:T,clientReferenceManifest:O,serverActionsManifest:P}=k,N=(0,i.normalizeAppPath)(w),j=!!(A.dynamicRoutes[N]||A.routes[T]),q=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!C){let e=!!A.routes[T],t=A.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(x.adapterPath)return await q();throw new f.NoFallbackError}}let M=null;!j||E.isDev||C||(M="/index"===(M=T)?"/":M);let $=!0===E.isDev||!j,D=j&&!$;P&&O&&(0,n.setManifestsSingleton)({page:w,clientReferenceManifest:O,serverActionsManifest:P});let U=e.method||"GET",W=(0,o.getTracer)(),H=W.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),L=!!(0,s.getRequestMeta)(e,"minimalMode"),K=(0,s.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,x,A,L);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let X={params:b,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:$,incrementalCache:K,cacheLifeProfiles:x.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>E.onRequestError(e,t,a,s,S)},sharedContext:{buildId:y}},F=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),V=p.NextRequestAdapter.fromNodeNextRequest(F,(0,p.signalFromNodeResponse)(t));try{let s,n=async e=>E.handle(V,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=W.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${U} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",a),s.updateName(t))}else e.updateName(`${U} ${w}`)}),i=async s=>{var o,i;let l=async({previousCacheEntry:r})=>{try{if(!L&&_&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await n(s);e.fetchMetrics=X.renderOpts.fetchMetrics;let i=X.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let l=X.renderOpts.collectedTags;if(!j)return await (0,u.sendResponse)(F,G,o,X.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:_})},!1,S),t}},p=await E.handleResponse({req:e,nextConfig:x,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:_,revalidateOnlyGenerated:I,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!j)return null;if((null==p||null==(o=p.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(i=p.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",_?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return L&&j||d.delete(g.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,u.sendResponse)(F,G,new Response(p.value.body,{headers:d,status:p.value.status||200})),null};B&&H?await i(H):(s=W.getActiveScopeSpan(),await W.withPropagatedContext(e.headers,()=>W.trace(d.BaseServerSpan.handleRequest,{spanName:`${U} ${w}`,kind:o.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},i),void 0,!B))}catch(t){if(t instanceof f.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:_})},!1,S),j)throw t;return await (0,u.sendResponse)(F,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:A})},"routeModule",0,E,"serverHooks",0,S,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,A],827976)}];
1
+ module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},959801,(e,t,r)=>{"use strict";t.exports=e.r(918622)},637142,(e,t,r)=>{"use strict";t.exports=e.r(959801).vendored["react-rsc"].React},186791,(e,t,r)=>{"use strict";var a=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,i={},l={RequestCookies:()=>g,ResponseCookies:()=>f,parseCookie:()=>c,parseSetCookie:()=>u,stringifyCookie:()=>d};for(var p in l)a(i,p,{get:l[p],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function c(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,s]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=s?s:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,r],...a]=c(e),{domain:s,expires:o,httponly:n,maxage:i,path:l,samesite:p,secure:d,partitioned:u,priority:g}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var f,v,w={name:t,value:decodeURIComponent(r),domain:s,...o&&{expires:new Date(o)},...n&&{httpOnly:!0},..."string"==typeof i&&{maxAge:Number(i)},path:l,...p&&{sameSite:h.includes(f=(f=p).toLowerCase())?f:void 0},...d&&{secure:!0},...g&&{priority:m.includes(v=(v=g).toLowerCase())?v:void 0},...u&&{partitioned:!0}};let e={};for(let t in w)w[t]&&(e[t]=w[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of o(t))n.call(e,i)||void 0===i||a(e,i,{get:()=>t[i],enumerable:!(r=s(t,i))||r.enumerable});return e})(a({},"__esModule",{value:!0}),i);var h=["strict","lax","none"],m=["low","medium","high"],g=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of c(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},f=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const s=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(s)?s:function(e){if(!e)return[];var t,r,a,s,o,n=[],i=0;function l(){for(;i<e.length&&/\s/.test(e.charAt(i));)i+=1;return i<e.length}for(;i<e.length;){for(t=i,o=!1;l();)if(","===(r=e.charAt(i))){for(a=i,i+=1,l(),s=i;i<e.length&&"="!==(r=e.charAt(i))&&";"!==r&&","!==r;)i+=1;i<e.length&&"="===e.charAt(i)?(o=!0,i=s,n.push(e.substring(t,a)),t=i):i=a+1}else i+=1;(!o||i>=e.length)&&n.push(e.substring(t,e.length))}return n}(s)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,s=this._parsed;return s.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(s,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},827976,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),s=e.i(475331),o=e.i(490301),n=e.i(670943),i=e.i(690324),l=e.i(243133),p=e.i(404870),d=e.i(420180),c=e.i(867883),u=e.i(336708),h=e.i(682278),m=e.i(157569),g=e.i(844146),f=e.i(193695);e.i(105888);var v=e.i(530564),w=e.i(702414),k=e.i(912714),y=e.i(750227);async function b(){try{let e=await (0,k.readFile)(y.default.resolve(process.cwd(),"package.json"),"utf-8");return JSON.parse(e).version??"0.0.0"}catch{return"0.0.0"}}async function x(e){let t,r,[a,s]=await Promise.all([(0,k.readFile)(y.default.resolve(process.cwd(),"agents/bootstrap-prompt.md"),"utf-8").catch(()=>""),b()]),o=(t=e.headers.get("x-forwarded-proto")??(e.url.startsWith("https")?"https":"http"),r=e.headers.get("x-forwarded-host")??e.headers.get("host")??new URL(e.url).host,`${t}://${r}`),n=(e.headers.get("host")??"").replace(/:[0-9]+$/,"").replace(/^\[(.*)\]$/,"$1").toLowerCase(),i="localhost"===n||"127.0.0.1"===n||"::1"===n,l=(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean),p=i||l.includes(n);return w.NextResponse.json({name:"wiki-viewer",version:s,endpoint:o,humanInstructions:"Open the wiki-viewer AI Panel (Bot icon in header). Register the agent, then approve it in the Pending Registrations list. The agent receives a one-shot token.",ownerBootstrap:{hostnameSeen:n,ownerHostTrusted:p,hint:p?"This host is trusted for owner cookie issuance. Open the AI Panel in a browser and approve pending registrations.":`This host (${n}) is not in the owner-trust allowlist, so the AI Panel cannot bootstrap an owner cookie. Restart the server with WIKI_OWNER_HOSTS=${n} or access via localhost.`},bootstrapPrompt:a,skillTarball:"/api/agents/skill.tar.gz",skillRaw:"/api/agents/skill",skillCli:"npx skills add anh-chu/wiki-viewer/agents/wiki-viewer-skill",routes:[{method:"POST",path:"/api/agent/register",auth:"none",purpose:"Register an agent"},{method:"GET",path:"/api/agent/register/<regId>",auth:"none",purpose:"Poll registration status"},{method:"GET",path:"/api/agent/files/<path>.md",auth:"bearer+agent-id",purpose:"Read markdown snapshot (block-ops tier)"},{method:"POST",path:"/api/agent/files/<path>.md",auth:"bearer+agent-id",purpose:"Apply block-ops"},{method:"GET",path:"/api/agent/events/<path>.md",auth:"bearer+agent-id",purpose:"Poll events"},{method:"POST",path:"/api/agent/events/<path>.md",auth:"bearer+agent-id",purpose:"Ack events"},{method:"GET",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Read file bytes. Supports Range. Returns ETag (sha256), X-File-Size, X-File-Mtime, X-Collab-State."},{method:"PUT",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Atomic whole-file write. If-Match required for overwrites; omit for creates. ?mkdirs=true creates parents. ?force=true bypasses If-Match (audited)."},{method:"DELETE",path:"/api/agent/fs/file/<path>",auth:"bearer+agent-id",purpose:"Delete file (+ sidecar for .md). Requires If-Match + delete scope op. ?recursive=true for directories."},{method:"GET",path:"/api/agent/fs/ls/<path>",auth:"bearer+agent-id",purpose:"Directory listing. ?recursive&limit&depth. Scope-filtered. Excludes .proof/."},{method:"POST",path:"/api/agent/fs/move",auth:"bearer+agent-id",purpose:"Move/rename. Body: {from, to, ifMatch?}. Moves .md sidecar too."},{method:"POST",path:"/api/agent/fs/search",auth:"bearer+agent-id",purpose:"Server-side grep or glob. Body: {kind:'grep'|'glob', query, path?, glob?, limit?}."},{method:"GET",path:"/api/agent/settings",auth:"bearer+agent-id",purpose:"Returns rateLimit + resolved 'root' (the active workspace's directory for the X-Workspace you send)."},{method:"POST",path:"/api/wiki/presence",auth:"session",purpose:"Human editor lease heartbeat. Body: {path, action:'open'|'heartbeat'|'close'}."}],workspaces:{description:"This instance can serve multiple root directories ('workspaces'). Every agent path is relative to ONE workspace root.",header:"X-Workspace: <workspaceId>",queryParam:"ws=<workspaceId>",default:"If omitted, the server resolves to the most-recently-opened workspace. Correct for single-workspace instances; be explicit when several exist.",discoverId:"Ask the human for the workspace id, read it from the ?ws= param of a pasted wiki-viewer URL, or call GET /api/agent/settings (with X-Workspace) to confirm the resolved 'root'.",scoped:"A token may be pinned to one workspace (scope.workspaceId at approval). Requests resolving to a different workspace return 403 FORBIDDEN. A token with no pin is wildcard (any workspace).",isolation:"Paths in one workspace never touch another, even with identical relative paths."},capabilities:{maxFileBytes:5e7,supportsRange:!0,ifMatchRequired:!0,forceBypass:!0,search:["grep","glob"],globDialect:"**,*,?",scopeOps:["read","mutate","delete"],scopeWorkspaceId:!0,workspaceHeader:"X-Workspace",collabStates:["active","tracked","untracked","not-markdown"],collabPrecondition:"If-Collab-Match"},modes:{rule:"Before editing a .md file, read it and check the X-Collab-State response header. If 'active', use block-ops (Tier 2) at the X-Collab-Snapshot URL so a human can review your changes. If 'tracked', prefer block-ops for semantic/prose edits; use raw fs only for mechanical/whole-file ops (reformat, regenerate). If 'untracked', raw fs is fine (a Tier-2 edit would create a sidecar). For non-markdown files, always use raw fs (Tier 2 does not apply). A raw PUT to an active .md is rejected 409 COLLAB_ACTIVE with the Tier-2 URL — switch to block-ops.",collabStateHeaders:["X-Collab-State: active|tracked|untracked|not-markdown","X-Collab-Revision: <n>","X-Collab-Snapshot: /api/agent/files/<path>.md"],tiers:{tier1:"Raw FS — /api/agent/fs/* — all file types, fast, light audit (ETag/sha256, file.rawWritten event, audit table). No proof-spans.",tier2:"Collab — /api/agent/files/*.md — markdown only, reviewable proof-spans, comments, suggestions. Human can accept/revert."}},mcpAdapter:{package:"wiki-viewer-mcp",invoke:"npx wiki-viewer-mcp",env:["WIKI_VIEWER_URL","WIKI_VIEWER_TOKEN","WIKI_VIEWER_AGENT_ID","WIKI_VIEWER_WORKSPACE"],description:"Thin MCP adapter mapping standard MCP filesystem tools onto these endpoints. Set WIKI_VIEWER_WORKSPACE to target a specific workspace (sends X-Workspace on every call). Reads X-Collab-State and blocks or warns on raw writes to active .md files."},ops:["block.replace","block.insertAfter","block.insertBefore","block.delete","block.append","block.prepend","comment.add","comment.reply","comment.resolve","comment.reopen","suggestion.add","suggestion.accept","suggestion.reject"]})}e.s(["GET",0,x,"runtime",0,"nodejs"],352957);var R=e.i(352957);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agents/install/route",pathname:"/api/agents/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agents/install/route.ts",nextConfigOutput:"standalone",userland:R,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:A,serverHooks:S}=E;async function _(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),E.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agents/install/route";w=w.replace(/\/index$/,"")||"/";let k=await E.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!k)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:b,nextConfig:x,parsedUrl:R,isDraftMode:C,prerenderManifest:A,routerServerContext:S,isOnDemandRevalidate:_,revalidateOnlyGenerated:I,resolvedPathname:T,clientReferenceManifest:O,serverActionsManifest:P}=k,N=(0,i.normalizeAppPath)(w),j=!!(A.dynamicRoutes[N]||A.routes[T]),q=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!C){let e=!!A.routes[T],t=A.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(x.adapterPath)return await q();throw new f.NoFallbackError}}let M=null;!j||E.isDev||C||(M="/index"===(M=T)?"/":M);let $=!0===E.isDev||!j,D=j&&!$;P&&O&&(0,n.setManifestsSingleton)({page:w,clientReferenceManifest:O,serverActionsManifest:P});let U=e.method||"GET",W=(0,o.getTracer)(),H=W.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),L=!!(0,s.getRequestMeta)(e,"minimalMode"),K=(0,s.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,x,A,L);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let X={params:b,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:$,incrementalCache:K,cacheLifeProfiles:x.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>E.onRequestError(e,t,a,s,S)},sharedContext:{buildId:y}},F=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),V=p.NextRequestAdapter.fromNodeNextRequest(F,(0,p.signalFromNodeResponse)(t));try{let s,n=async e=>E.handle(V,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=W.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${U} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",a),s.updateName(t))}else e.updateName(`${U} ${w}`)}),i=async s=>{var o,i;let l=async({previousCacheEntry:r})=>{try{if(!L&&_&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await n(s);e.fetchMetrics=X.renderOpts.fetchMetrics;let i=X.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let l=X.renderOpts.collectedTags;if(!j)return await (0,u.sendResponse)(F,G,o,X.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:_})},!1,S),t}},p=await E.handleResponse({req:e,nextConfig:x,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:_,revalidateOnlyGenerated:I,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!j)return null;if((null==p||null==(o=p.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(i=p.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",_?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return L&&j||d.delete(g.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,u.sendResponse)(F,G,new Response(p.value.body,{headers:d,status:p.value.status||200})),null};B&&H?await i(H):(s=W.getActiveScopeSpan(),await W.withPropagatedContext(e.headers,()=>W.trace(d.BaseServerSpan.handleRequest,{spanName:`${U} ${w}`,kind:o.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},i),void 0,!B))}catch(t){if(t instanceof f.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:_})},!1,S),j)throw t;return await (0,u.sendResponse)(F,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:A})},"routeModule",0,E,"serverHooks",0,S,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,A],827976)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0269d2e._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0mgvfb5._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let a=e.headers.get("origin"),s=e.headers.get("referer");if(!a&&!s)return null;let n=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let a=new Set;for(let e of t)for(let t of["http","https"])for(let s of r)a.add(`${t}://${e}${s}`);return a}(e.headers.get("host")??"");if(a)return n.has(a)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(s){try{let{protocol:e,host:t}=new URL(s);if(n.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function s(e,n,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(n);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let s=r.default.dirname(e);if(s===e)break;try{let e=await (0,t.realpath)(s),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:u}}catch{e=s}}return null}}e.s(["resolveWorkspacePath",0,s])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),s=e.i(536654),n=e.i(848475);async function i(e,t){if(!e)return null;let r=await (0,s.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return r?.absolutePath??null}async function o(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let s=e+".~"+process.pid+"."+Date.now()+".tmp",n=await (0,r.open)(s,"w",a);try{await n.write(t),await n.datasync()}finally{await n.close()}await (0,r.rename)(s,e)}async function l(e,t){let s=a.default.dirname(e);if(t)return await (0,r.mkdir)(s,{recursive:!0}),!0;try{return await (0,r.stat)(s),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,n.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},487018,e=>{"use strict";var t=e.x("node:sqlite",()=>require("node:sqlite"),!0);function r(e){return 1===e.length&&Array.isArray(e[0])?e[0]:e}class a{stmt;constructor(e){this.stmt=e}get reader(){return this.stmt.columns().length>0}all(...e){let t=r(e);return this.stmt.all(...t)}get(...e){let t=r(e);return this.stmt.get(...t)}run(...e){let t=r(e),a=this.stmt.run(...t);return{changes:Number(a.changes),lastInsertRowid:Number(a.lastInsertRowid)}}iterate(...e){let t=r(e);return this.stmt.iterate(...t)}}class s{db;constructor(e){this.db=new t.DatabaseSync(e),this.db.exec("PRAGMA busy_timeout = 5000"),this.db.exec("PRAGMA journal_mode = WAL")}prepare(e){return new a(this.db.prepare(e))}exec(e){this.db.exec(e)}close(){this.db.close()}pragma(e){this.db.exec(`PRAGMA ${e}`)}}e.s(["default",()=>s])},97082,e=>{"use strict";var t=e.i(487018),r=e.i(750227),a=e.i(660526),s=e.i(902157),n=e.i(666680);let i=null;function o(){if(i)return i;let e=r.default.join(process.env.HOME??a.default.homedir(),".wiki-viewer");return(0,s.mkdirSync)(e,{recursive:!0}),(i=new t.default(r.default.join(e,"shared.db"))).pragma("journal_mode = WAL"),i.pragma("synchronous = NORMAL"),i.exec(`
1
+ module.exports=[536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function s(e,n,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(n);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let s=r.default.dirname(e);if(s===e)break;try{let e=await (0,t.realpath)(s),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:u}}catch{e=s}}return null}}e.s(["resolveWorkspacePath",0,s])},402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let a=e.headers.get("origin"),s=e.headers.get("referer");if(!a&&!s)return null;let n=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let a=new Set;for(let e of t)for(let t of["http","https"])for(let s of r)a.add(`${t}://${e}${s}`);return a}(e.headers.get("host")??"");if(a)return n.has(a)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(s){try{let{protocol:e,host:t}=new URL(s);if(n.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),s=e.i(536654),n=e.i(848475);async function i(e,t){if(!e)return null;let r=await (0,s.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return r?.absolutePath??null}async function o(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let s=e+".~"+process.pid+"."+Date.now()+".tmp",n=await (0,r.open)(s,"w",a);try{await n.write(t),await n.datasync()}finally{await n.close()}await (0,r.rename)(s,e)}async function l(e,t){let s=a.default.dirname(e);if(t)return await (0,r.mkdir)(s,{recursive:!0}),!0;try{return await (0,r.stat)(s),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,n.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},487018,e=>{"use strict";var t=e.x("node:sqlite",()=>require("node:sqlite"),!0);function r(e){return 1===e.length&&Array.isArray(e[0])?e[0]:e}class a{stmt;constructor(e){this.stmt=e}get reader(){return this.stmt.columns().length>0}all(...e){let t=r(e);return this.stmt.all(...t)}get(...e){let t=r(e);return this.stmt.get(...t)}run(...e){let t=r(e),a=this.stmt.run(...t);return{changes:Number(a.changes),lastInsertRowid:Number(a.lastInsertRowid)}}iterate(...e){let t=r(e);return this.stmt.iterate(...t)}}class s{db;constructor(e){this.db=new t.DatabaseSync(e),this.db.exec("PRAGMA busy_timeout = 5000"),this.db.exec("PRAGMA journal_mode = WAL")}prepare(e){return new a(this.db.prepare(e))}exec(e){this.db.exec(e)}close(){this.db.close()}pragma(e){this.db.exec(`PRAGMA ${e}`)}}e.s(["default",()=>s])},97082,e=>{"use strict";var t=e.i(487018),r=e.i(750227),a=e.i(660526),s=e.i(902157),n=e.i(666680);let i=null;function o(){if(i)return i;let e=r.default.join(process.env.HOME??a.default.homedir(),".wiki-viewer");return(0,s.mkdirSync)(e,{recursive:!0}),(i=new t.default(r.default.join(e,"shared.db"))).pragma("journal_mode = WAL"),i.pragma("synchronous = NORMAL"),i.exec(`
2
2
  CREATE TABLE IF NOT EXISTS shared_docs (
3
3
  id TEXT PRIMARY KEY,
4
4
  workspace_id TEXT NOT NULL,
@@ -17,4 +17,4 @@ module.exports=[402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,f
17
17
  (id, workspace_id, file_path, token, password_hash, expires_at, created_by, created_at, view_count, is_revoked)
18
18
  VALUES (@id, @workspaceId, @filePath, @token, @passwordHash, @expiresAt, @createdBy, @createdAt, @viewCount, @isRevoked)`).run(c),d},"getShareByToken",0,function(e){let t=o().prepare("SELECT * FROM shared_docs WHERE token = ?").get(e);return t?l(t):null},"incrementViewCount",0,function(e){o().prepare("UPDATE shared_docs SET view_count = view_count + 1 WHERE token = ?").run(e)},"isExpired",0,function(e){return!!e.expiresAt&&new Date(e.expiresAt)<new Date},"listSharesForFile",0,function(e,t){return o().prepare("SELECT * FROM shared_docs WHERE workspace_id = ? AND file_path = ? AND is_revoked = 0 ORDER BY created_at DESC").all(e,t).map(l)},"revokeShare",0,function(e){o().prepare("UPDATE shared_docs SET is_revoked = 1 WHERE id = ?").run(e)},"verifyPassword",0,function(e,t){let[r,a]=t.split(":"),s=(0,n.scryptSync)(e,r,64),i=Buffer.from(a,"hex");return s.length===i.length&&(0,n.timingSafeEqual)(s,i)}])},732733,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),s=e.i(475331),n=e.i(490301),i=e.i(670943),o=e.i(690324),l=e.i(243133),u=e.i(404870),d=e.i(420180),c=e.i(867883),p=e.i(336708),h=e.i(682278),f=e.i(157569),m=e.i(844146),v=e.i(193695);e.i(105888);var x=e.i(530564),w=e.i(702414),g=e.i(402662),_=e.i(254226),R=e.i(660038),E=e.i(719126),y=e.i(97082);async function A(t){let r=(0,g.checkOrigin)(t);if(r)return r;let a=await (0,_.requireUser)(t);if(!a.ok)return w.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let s=await (0,R.resolveWorkspaceForUser)(t);if(!s.ok)return w.NextResponse.json({error:s.code},{status:s.status});let n=await t.json(),i=n.path;if(!i||"string"!=typeof i)return w.NextResponse.json({error:"Missing path"},{status:400});let o=await (0,E.safeAbsPath)(s.rootDir,i);if(!o)return w.NextResponse.json({error:"Invalid path"},{status:400});let{stat:l}=await e.A(687903);try{if((await l(o)).isDirectory())return w.NextResponse.json({error:"Invalid path"},{status:400})}catch{return w.NextResponse.json({error:"File not found"},{status:404})}if(void 0!==n.password&&"string"!=typeof n.password)return w.NextResponse.json({error:"Invalid password"},{status:400});if(void 0!==n.expiresAt&&null!==n.expiresAt&&"string"!=typeof n.expiresAt)return w.NextResponse.json({error:"Invalid expiresAt"},{status:400});if(n.expiresAt){let e=new Date(n.expiresAt);if(isNaN(e.getTime()))return w.NextResponse.json({error:"Invalid date"},{status:400});if(e.getTime()<Date.now())return w.NextResponse.json({error:"Date is in the past"},{status:400})}let u=(0,y.createShare)({workspaceId:s.ws.id,filePath:i,password:n.password&&n.password.length>0?n.password:void 0,expiresAt:n.expiresAt||void 0,createdBy:a.user.id});return w.NextResponse.json({token:u.token,url:`/s/${u.token}`,hasPassword:!!u.passwordHash,expiresAt:u.expiresAt,createdAt:u.createdAt})}async function k(e){let t=(0,g.checkOrigin)(e);if(t)return t;if(!(await (0,_.requireUser)(e)).ok)return w.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let r=await (0,R.resolveWorkspaceForUser)(e);if(!r.ok)return w.NextResponse.json({error:r.code},{status:r.status});let{searchParams:a}=new URL(e.url),s=a.get("path");if(!s)return w.NextResponse.json({error:"Missing path"},{status:400});let n=(0,y.listSharesForFile)(r.ws.id,s);return w.NextResponse.json({shares:n.map(e=>({id:e.id,token:e.token,url:`/s/${e.token}`,hasPassword:!!e.passwordHash,expiresAt:e.expiresAt,createdAt:e.createdAt,viewCount:e.viewCount,isExpired:!!e.expiresAt&&new Date(e.expiresAt)<new Date}))})}e.s(["GET",0,k,"POST",0,A],870221);var T=e.i(870221);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/share/route",pathname:"/api/share",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/share/route.ts",nextConfigOutput:"standalone",userland:T,...{}}),{workAsyncStorage:b,workUnitAsyncStorage:P,serverHooks:S}=N;async function j(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/share/route";w=w.replace(/\/index$/,"")||"/";let g=await N.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:_,params:R,nextConfig:E,parsedUrl:y,isDraftMode:A,prerenderManifest:k,routerServerContext:T,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:S,clientReferenceManifest:j,serverActionsManifest:O}=g,C=(0,o.normalizeAppPath)(w),I=!!(k.dynamicRoutes[C]||k.routes[S]),D=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,y,!1):t.end("This page could not be found"),null);if(I&&!A){let e=!!k.routes[S],t=k.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await D();throw new v.NoFallbackError}}let U=null;!I||N.isDev||A||(U="/index"===(U=S)?"/":U);let q=!0===N.isDev||!I,H=I&&!q;O&&j&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:j,serverActionsManifest:O});let L=e.method||"GET",M=(0,n.getTracer)(),B=M.getActiveScopeSpan(),F=!!(null==T?void 0:T.isWrappedByNextServer),W=!!(0,s.getRequestMeta)(e,"minimalMode"),$=(0,s.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,E,k,W);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let X={params:R,previewProps:k.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:q,incrementalCache:$,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>N.onRequestError(e,t,a,s,T)},sharedContext:{buildId:_}},z=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t));try{let s,i=async e=>N.handle(G,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",a),s.updateName(t))}else e.updateName(`${L} ${w}`)}),o=async s=>{var n,o;let l=async({previousCacheEntry:r})=>{try{if(!W&&b&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(s);e.fetchMetrics=X.renderOpts.fetchMetrics;let o=X.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=X.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(z,K,n,X.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:b})},!1,T),t}},u=await N.handleResponse({req:e,nextConfig:E,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:W});if(!I)return null;if((null==u||null==(n=u.value)?void 0:n.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",b?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&I||d.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(z,K,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};F&&B?await o(B):(s=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${L} ${w}`,kind:n.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},o),void 0,!F))}catch(t){if(t instanceof v.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:b})},!1,T),I)throw t;return await (0,p.sendResponse)(z,K,new Response(null,{status:500})),null}}e.s(["handler",0,j,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:P})},"routeModule",0,N,"serverHooks",0,S,"workAsyncStorage",0,b,"workUnitAsyncStorage",0,P],732733)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))}];
19
19
 
20
- //# sourceMappingURL=%5Broot-of-the-server%5D__0_5~w8k._.js.map
20
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0n2r6u9._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[666680,(t,e,r)=>{e.exports=t.x("node:crypto",()=>require("node:crypto"))},750227,(t,e,r)=>{e.exports=t.x("node:path",()=>require("node:path"))},912714,(t,e,r)=>{e.exports=t.x("node:fs/promises",()=>require("node:fs/promises"))},32851,t=>{"use strict";var e=t.i(912714),r=t.i(750227);async function a(t,i=Date.now()){let s,o,l;if(!t)return 0;try{s=await (0,e.realpath)(t)}catch{return 0}try{o=await (0,e.realpath)(r.default.join(s,".scratch"))}catch{return 0}let u=r.default.relative(s,o);if(""===u||u.startsWith("..")||r.default.isAbsolute(u))return 0;try{l=await (0,e.readdir)(o)}catch{return 0}let c=0;return await Promise.all(l.map(async t=>{let a=r.default.join(o,t);try{let t=await (0,e.realpath)(a),s=r.default.relative(o,t);if(s.startsWith("..")||r.default.isAbsolute(s))return;let l=await (0,e.stat)(t);i-l.mtimeMs>6048e5&&(await (0,e.rm)(t,{recursive:!0,force:!0}),c+=1)}catch{}})),c}t.i(666680),t.s(["sweepScratch",0,a],32851)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0qpqspq._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[794776,e=>{"use strict";let t,a=Number.isFinite(t=parseInt(process.env.AGENT_RATE_LIMIT??"",10))&&t>0?t:60;e.s(["OPS_PER_MINUTE",0,a,"SIDECAR_EVENT_TRIM_SIZE",0,1e3,"SIDECAR_TRIM_EVERY_N_MUTATIONS",0,100])},857764,(e,t,a)=>{t.exports=e.x("node:url",()=>require("node:url"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},462711,651212,316552,e=>{"use strict";var t=e.i(750227);e.s(["minpath",()=>t.default],462711);var a=e.i(59639);e.s(["minproc",()=>a.default],651212);var r=e.i(857764);e.s(["urlToPath",()=>r.fileURLToPath],316552)},536654,e=>{"use strict";var t=e.i(912714),a=e.i(750227);function r(e){return!!(a.default.isAbsolute(e)||".."===e||e.startsWith(".."+a.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||a.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=a.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?a.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=a.default.relative(o,e);if(r(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=a.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=a.default.relative(o,e);if(r(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},848475,e=>{"use strict";var t=e.i(750227);let a={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return a[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),a=e.i(912714),r=e.i(750227),n=e.i(536654),s=e.i(848475);async function i(e,t){if(!e)return null;let a=await (0,n.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return a?.absolutePath??null}async function o(e,t){let r=420;try{let t=await (0,a.stat)(e);r=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,a.open)(n,"w",r);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,a.rename)(n,e)}async function l(e,t){let n=r.default.dirname(e);if(t)return await (0,a.mkdir)(n,{recursive:!0}),!0;try{return await (0,a.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,s.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},487018,e=>{"use strict";var t=e.x("node:sqlite",()=>require("node:sqlite"),!0);function a(e){return 1===e.length&&Array.isArray(e[0])?e[0]:e}class r{stmt;constructor(e){this.stmt=e}get reader(){return this.stmt.columns().length>0}all(...e){let t=a(e);return this.stmt.all(...t)}get(...e){let t=a(e);return this.stmt.get(...t)}run(...e){let t=a(e),r=this.stmt.run(...t);return{changes:Number(r.changes),lastInsertRowid:Number(r.lastInsertRowid)}}iterate(...e){let t=a(e);return this.stmt.iterate(...t)}}class n{db;constructor(e){this.db=new t.DatabaseSync(e),this.db.exec("PRAGMA busy_timeout = 5000"),this.db.exec("PRAGMA journal_mode = WAL")}prepare(e){return new r(this.db.prepare(e))}exec(e){this.db.exec(e)}close(){this.db.close()}pragma(e){this.db.exec(`PRAGMA ${e}`)}}e.s(["default",()=>n])},814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,a)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,a)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,a)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),a=e.i(912714),r=e.i(660526),n=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??r.default.homedir();return n.default.join(e,".wiki-viewer")}function u(){return n.default.join(l(),"agents.json")}function c(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function d(){try{let e=await (0,a.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,a.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,a.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,a.chmod)(t,384)}catch{}await (0,a.rename)(t,u())}async function f(){let e=await d();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function h(e){let a=await d();if(!a)return null;let r=c(e);for(let e of a.agents)if(function(e,a){let r=Buffer.from(e.padEnd(64,"0"),"utf8"),n=Buffer.from(a.padEnd(64,"0"),"utf8");return r.length===n.length&&(0,t.timingSafeEqual)(r,n)&&e.length===a.length}(e.tokenHash,r))return e;return null}async function m(e){await (0,s.withFileMutex)(i,async()=>{let t=await f(),a=t.agents.findIndex(t=>t.id===e.id);a>=0?t.agents[a]=e:t.agents.push(e),await p(t)})}async function g(e){return(0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return!1;let a=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==a&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return;let a=t.agents.find(t=>t.id===e);a&&(a.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))})}e.s(["addAgent",0,m,"hashToken",0,c,"lookupAgentByToken",0,h,"readRegistry",0,d,"removeAgent",0,g,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function a(e,t){return(function(e){let t="^",a=0;for(;a<e.length;)"*"===e[a]&&"*"===e[a+1]?(t+=".*","/"===e[a+=2]&&(t+="(?:.+/)?",a++)):("*"===e[a]?t+="[^/]*":"?"===e[a]?t+="[^/]":t+=e[a].replace(/[.+^${}()|[\]\\]/g,"\\$&"),a++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,a],552350);var r=e.i(254226);async function n(e){let a=await (0,r.getSessionFromRequest)(e);if(a?.user){let e=a.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let n=e.headers.get("authorization")??"",s=n.startsWith("Bearer ")?n.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,n,"enforceScope",0,function(e,t){let{scope:r}=e;return void 0!==r.workspaceId&&void 0!==t.workspaceId&&r.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${r.workspaceId}")`}:r.ops.includes(t.op)?t.filePath&&!r.paths.some(e=>a(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},973909,e=>{"use strict";var t=e.i(912714),a=e.i(750227);function r(e,t){return a.default.join(e,".proof",t+".json")}async function n(e,a){let n=r(e,a);try{let e=await (0,t.readFile)(n,"utf-8"),a=JSON.parse(e);if(1!==a.schemaVersion)throw Error(`Sidecar schema version mismatch: expected 1, got ${a.schemaVersion}`);return a}catch(e){if(e instanceof Error&&"code"in e&&"ENOENT"===e.code)return null;throw e}}async function s(e,n,s){let i=r(e,n);await (0,t.mkdir)(a.default.dirname(i),{recursive:!0});let o=i+".tmp";await (0,t.writeFile)(o,JSON.stringify(s,null,2),"utf-8"),await (0,t.rename)(o,i)}async function i(e,n,s){let i=r(e,n),o=r(e,s);try{await (0,t.mkdir)(a.default.dirname(o),{recursive:!0}),await (0,t.rename)(i,o)}catch(e){if("ENOENT"===e.code)return;throw e}}async function o(e,a){let n=r(e,a);try{await (0,t.unlink)(n)}catch(e){if("ENOENT"===e.code)return;throw e}}e.s(["deleteSidecar",0,o,"emptySidecar",0,function(e){let t=new Date().toISOString();return{schemaVersion:1,path:e,revision:0,createdAt:t,updatedAt:t,refMap:{},refAliases:{},comments:[],suggestions:[],archivedSuggestions:[],events:[],nextEventId:1,lastAck:{},fingerprint:"",blockProvenance:{}}},"moveSidecar",0,i,"readSidecar",0,n,"writeSidecar",0,s])},307764,e=>{"use strict";e.s(["emitEvents",0,function(e,t){let a=[];for(let r of t){let t={...r,id:e.nextEventId++};e.events.push(t),a.push(t)}return a},"pollEvents",0,function(e,t,a){return e.events.filter(e=>e.id>t).slice(0,a)},"trimEvents",0,function(e,t){if(e.events.length<=t)return;let a=Object.values(e.lastAck),r=a.length>0?Math.min(...a):1/0,n=e.events.length-t,s=e.events.filter((e,t)=>t>=n||e.id>r);e.events=s}])},850948,e=>{"use strict";function t(e){return e.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}e.s(["newSpanId",0,function(){let e=Math.floor(65535*Math.random()).toString(16).padStart(4,"0");return`p${e}`},"revertProofSpan",0,function(e,t){let a=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),r=RegExp(`<proof-span\\b[^>]*\\bid="${a}"[^>]*>[\\s\\S]*?<\\/proof-span>`,"g");return e.replace(r,"")},"wrapAsProofSpan",0,function(e,a){let r,n=(r=[`id="${t(a.spanId)}"`,`origin="${a.origin}"`],a.basis&&r.push(`basis="${t(a.basis)}"`),a.basisDetail&&r.push(`basis-detail="${t(a.basisDetail)}"`),r.push(`by="${t(a.by)}"`),r.push(`at="${t(a.at)}"`),a.inResponseTo&&r.push(`in-response-to="${t(a.inResponseTo)}"`),r.join(" ")),s=e.trim();if(s.startsWith("```")||s.startsWith("~~~")||s.startsWith("<")&&!s.startsWith("<proof-span")||/^[-*_]{3,}\s*$/.test(s))return null;let i=s.split("\n")[0];if(i.includes("|")&&/^\|.*\|/.test(i))return null;let o=s.match(/^(#{1,6})\s+(.+)$/);if(o){let e=o[1],t=o[2].trimEnd();return`${e} <proof-span ${n}>${t}</proof-span>`}return s.startsWith(">")?s.split("\n").map(e=>{let t=e.match(/^(>\s?)(.*)/);if(!t)return e;let a=t[1],r=t[2];return r.trim()?`${a}<proof-span ${n}>${r}</proof-span>`:e}).join("\n"):/^(\s*(?:[-*+]|\d+\.)\s+(?:\[[ xX]\]\s+)?)(.*)/.test(s.split("\n")[0])?s.split("\n").map(e=>{let t=e.match(/^(\s*(?:[-*+]|\d+\.)\s+(?:\[[ xX]\]\s+)?)(.*)/);if(!t)return e;let a=t[1],r=t[2];return r.trim()?`${a}<proof-span ${n}>${r}</proof-span>`:e}).join("\n"):`<proof-span ${n}>${s}</proof-span>`}])},670910,e=>{"use strict";var t=e.i(487018),a=e.i(750227),r=e.i(660526),n=e.i(902157);let s=null;e.s(["writeAuditRow",0,function(e){try{(function(){if(s)return s;let e=a.default.join(process.env.HOME??r.default.homedir(),".wiki-viewer");(0,n.mkdirSync)(e,{recursive:!0});let i=a.default.join(e,"auth.db");(s=new t.default(i)).pragma("journal_mode = WAL"),s.exec(`
1
+ module.exports=[536654,e=>{"use strict";var t=e.i(912714),a=e.i(750227);function r(e){return!!(a.default.isAbsolute(e)||".."===e||e.startsWith(".."+a.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||a.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=a.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?a.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=a.default.relative(o,e);if(r(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=a.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=a.default.relative(o,e);if(r(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},794776,e=>{"use strict";let t,a=Number.isFinite(t=parseInt(process.env.AGENT_RATE_LIMIT??"",10))&&t>0?t:60;e.s(["OPS_PER_MINUTE",0,a,"SIDECAR_EVENT_TRIM_SIZE",0,1e3,"SIDECAR_TRIM_EVERY_N_MUTATIONS",0,100])},857764,(e,t,a)=>{t.exports=e.x("node:url",()=>require("node:url"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},462711,651212,316552,e=>{"use strict";var t=e.i(750227);e.s(["minpath",()=>t.default],462711);var a=e.i(59639);e.s(["minproc",()=>a.default],651212);var r=e.i(857764);e.s(["urlToPath",()=>r.fileURLToPath],316552)},848475,e=>{"use strict";var t=e.i(750227);let a={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return a[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),a=e.i(912714),r=e.i(750227),n=e.i(536654),s=e.i(848475);async function i(e,t){if(!e)return null;let a=await (0,n.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:[".proof",".git"]});return a?.absolutePath??null}async function o(e,t){let r=420;try{let t=await (0,a.stat)(e);r=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,a.open)(n,"w",r);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,a.rename)(n,e)}async function l(e,t){let n=r.default.dirname(e);if(t)return await (0,a.mkdir)(n,{recursive:!0}),!0;try{return await (0,a.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,o,"ensureParentDir",0,l,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return".proof"===t||t.startsWith(".proof/")||".git"===t||t.startsWith(".git/")},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,s.contentTypeForPath)(e)},"safeAbsPath",0,i,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},487018,e=>{"use strict";var t=e.x("node:sqlite",()=>require("node:sqlite"),!0);function a(e){return 1===e.length&&Array.isArray(e[0])?e[0]:e}class r{stmt;constructor(e){this.stmt=e}get reader(){return this.stmt.columns().length>0}all(...e){let t=a(e);return this.stmt.all(...t)}get(...e){let t=a(e);return this.stmt.get(...t)}run(...e){let t=a(e),r=this.stmt.run(...t);return{changes:Number(r.changes),lastInsertRowid:Number(r.lastInsertRowid)}}iterate(...e){let t=a(e);return this.stmt.iterate(...t)}}class n{db;constructor(e){this.db=new t.DatabaseSync(e),this.db.exec("PRAGMA busy_timeout = 5000"),this.db.exec("PRAGMA journal_mode = WAL")}prepare(e){return new r(this.db.prepare(e))}exec(e){this.db.exec(e)}close(){this.db.close()}pragma(e){this.db.exec(`PRAGMA ${e}`)}}e.s(["default",()=>n])},814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,a)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,a)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,a)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),a=e.i(912714),r=e.i(660526),n=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??r.default.homedir();return n.default.join(e,".wiki-viewer")}function u(){return n.default.join(l(),"agents.json")}function c(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function d(){try{let e=await (0,a.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,a.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,a.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,a.chmod)(t,384)}catch{}await (0,a.rename)(t,u())}async function f(){let e=await d();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function h(e){let a=await d();if(!a)return null;let r=c(e);for(let e of a.agents)if(function(e,a){let r=Buffer.from(e.padEnd(64,"0"),"utf8"),n=Buffer.from(a.padEnd(64,"0"),"utf8");return r.length===n.length&&(0,t.timingSafeEqual)(r,n)&&e.length===a.length}(e.tokenHash,r))return e;return null}async function m(e){await (0,s.withFileMutex)(i,async()=>{let t=await f(),a=t.agents.findIndex(t=>t.id===e.id);a>=0?t.agents[a]=e:t.agents.push(e),await p(t)})}async function g(e){return(0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return!1;let a=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==a&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return;let a=t.agents.find(t=>t.id===e);a&&(a.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))})}e.s(["addAgent",0,m,"hashToken",0,c,"lookupAgentByToken",0,h,"readRegistry",0,d,"removeAgent",0,g,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function a(e,t){return(function(e){let t="^",a=0;for(;a<e.length;)"*"===e[a]&&"*"===e[a+1]?(t+=".*","/"===e[a+=2]&&(t+="(?:.+/)?",a++)):("*"===e[a]?t+="[^/]*":"?"===e[a]?t+="[^/]":t+=e[a].replace(/[.+^${}()|[\]\\]/g,"\\$&"),a++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,a],552350);var r=e.i(254226);async function n(e){let a=await (0,r.getSessionFromRequest)(e);if(a?.user){let e=a.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let n=e.headers.get("authorization")??"",s=n.startsWith("Bearer ")?n.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,n,"enforceScope",0,function(e,t){let{scope:r}=e;return void 0!==r.workspaceId&&void 0!==t.workspaceId&&r.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${r.workspaceId}")`}:r.ops.includes(t.op)?t.filePath&&!r.paths.some(e=>a(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},973909,e=>{"use strict";var t=e.i(912714),a=e.i(750227);function r(e,t){return a.default.join(e,".proof",t+".json")}async function n(e,a){let n=r(e,a);try{let e=await (0,t.readFile)(n,"utf-8"),a=JSON.parse(e);if(1!==a.schemaVersion)throw Error(`Sidecar schema version mismatch: expected 1, got ${a.schemaVersion}`);return a}catch(e){if(e instanceof Error&&"code"in e&&"ENOENT"===e.code)return null;throw e}}async function s(e,n,s){let i=r(e,n);await (0,t.mkdir)(a.default.dirname(i),{recursive:!0});let o=i+".tmp";await (0,t.writeFile)(o,JSON.stringify(s,null,2),"utf-8"),await (0,t.rename)(o,i)}async function i(e,n,s){let i=r(e,n),o=r(e,s);try{await (0,t.mkdir)(a.default.dirname(o),{recursive:!0}),await (0,t.rename)(i,o)}catch(e){if("ENOENT"===e.code)return;throw e}}async function o(e,a){let n=r(e,a);try{await (0,t.unlink)(n)}catch(e){if("ENOENT"===e.code)return;throw e}}e.s(["deleteSidecar",0,o,"emptySidecar",0,function(e){let t=new Date().toISOString();return{schemaVersion:1,path:e,revision:0,createdAt:t,updatedAt:t,refMap:{},refAliases:{},comments:[],suggestions:[],archivedSuggestions:[],events:[],nextEventId:1,lastAck:{},fingerprint:"",blockProvenance:{}}},"moveSidecar",0,i,"readSidecar",0,n,"writeSidecar",0,s])},307764,e=>{"use strict";e.s(["emitEvents",0,function(e,t){let a=[];for(let r of t){let t={...r,id:e.nextEventId++};e.events.push(t),a.push(t)}return a},"pollEvents",0,function(e,t,a){return e.events.filter(e=>e.id>t).slice(0,a)},"trimEvents",0,function(e,t){if(e.events.length<=t)return;let a=Object.values(e.lastAck),r=a.length>0?Math.min(...a):1/0,n=e.events.length-t,s=e.events.filter((e,t)=>t>=n||e.id>r);e.events=s}])},850948,e=>{"use strict";function t(e){return e.replace(/&/g,"&amp;").replace(/"/g,"&quot;")}e.s(["newSpanId",0,function(){let e=Math.floor(65535*Math.random()).toString(16).padStart(4,"0");return`p${e}`},"revertProofSpan",0,function(e,t){let a=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),r=RegExp(`<proof-span\\b[^>]*\\bid="${a}"[^>]*>[\\s\\S]*?<\\/proof-span>`,"g");return e.replace(r,"")},"wrapAsProofSpan",0,function(e,a){let r,n=(r=[`id="${t(a.spanId)}"`,`origin="${a.origin}"`],a.basis&&r.push(`basis="${t(a.basis)}"`),a.basisDetail&&r.push(`basis-detail="${t(a.basisDetail)}"`),r.push(`by="${t(a.by)}"`),r.push(`at="${t(a.at)}"`),a.inResponseTo&&r.push(`in-response-to="${t(a.inResponseTo)}"`),r.join(" ")),s=e.trim();if(s.startsWith("```")||s.startsWith("~~~")||s.startsWith("<")&&!s.startsWith("<proof-span")||/^[-*_]{3,}\s*$/.test(s))return null;let i=s.split("\n")[0];if(i.includes("|")&&/^\|.*\|/.test(i))return null;let o=s.match(/^(#{1,6})\s+(.+)$/);if(o){let e=o[1],t=o[2].trimEnd();return`${e} <proof-span ${n}>${t}</proof-span>`}return s.startsWith(">")?s.split("\n").map(e=>{let t=e.match(/^(>\s?)(.*)/);if(!t)return e;let a=t[1],r=t[2];return r.trim()?`${a}<proof-span ${n}>${r}</proof-span>`:e}).join("\n"):/^(\s*(?:[-*+]|\d+\.)\s+(?:\[[ xX]\]\s+)?)(.*)/.test(s.split("\n")[0])?s.split("\n").map(e=>{let t=e.match(/^(\s*(?:[-*+]|\d+\.)\s+(?:\[[ xX]\]\s+)?)(.*)/);if(!t)return e;let a=t[1],r=t[2];return r.trim()?`${a}<proof-span ${n}>${r}</proof-span>`:e}).join("\n"):`<proof-span ${n}>${s}</proof-span>`}])},670910,e=>{"use strict";var t=e.i(487018),a=e.i(750227),r=e.i(660526),n=e.i(902157);let s=null;e.s(["writeAuditRow",0,function(e){try{(function(){if(s)return s;let e=a.default.join(process.env.HOME??r.default.homedir(),".wiki-viewer");(0,n.mkdirSync)(e,{recursive:!0});let i=a.default.join(e,"auth.db");(s=new t.default(i)).pragma("journal_mode = WAL"),s.exec(`
2
2
  CREATE TABLE IF NOT EXISTS agent_fs_audit (
3
3
  id INTEGER PRIMARY KEY AUTOINCREMENT,
4
4
  agent_id TEXT NOT NULL,
@@ -13,4 +13,4 @@ module.exports=[794776,e=>{"use strict";let t,a=Number.isFinite(t=parseInt(proce
13
13
  `);try{s.exec("ALTER TABLE agent_fs_audit ADD COLUMN workspace_id TEXT")}catch{}return s})().prepare(`INSERT INTO agent_fs_audit (agent_id, op, path, old_sha, new_sha, forced, at, workspace_id)
14
14
  VALUES (?, ?, ?, ?, ?, ?, ?, ?)`).run(e.agentId,e.op,e.path,e.oldSha??null,e.newSha??null,+!!e.forced,new Date().toISOString(),e.workspaceId??null)}catch(e){console.error("[agent-fs audit] write failed:",e)}}])},889264,e=>{"use strict";let t=globalThis;function a(){return t.__wikiLeaseStore}function r(e,t){return`${e}\u0000${t}`}function n(e,t){let n=a(),s=r(e,t),i=n.leases.get(s);return!!i&&(!(Date.now()>=i.expiresAt)||(n.leases.delete(s),n.generations.set(s,(n.generations.get(s)??0)+1),!1))}t.__wikiLeaseStore||(t.__wikiLeaseStore={leases:new Map,generations:new Map}),e.s(["clearLease",0,function(e,t,n){let s=a(),i=r(e,t),o=s.leases.get(i);o&&o.userId===n&&(s.leases.delete(i),s.generations.set(i,(s.generations.get(i)??0)+1))},"hasActiveLease",0,function(e,t){return n(e,t)},"leaseGeneration",0,function(e,t){let n=r(e,t);return a().generations.get(n)??0},"setLease",0,function(e,t,s,i=9e4){let o=a(),l=r(e,t),u=n(e,t);o.leases.set(l,{userId:s,expiresAt:Date.now()+i}),u||o.generations.set(l,(o.generations.get(l)??0)+1)}])},323588,e=>{"use strict";e.s(["apiUrl",0,function(e){if(!e.startsWith("/"))return e;let t=process.env.WIKI_URL_PREFIX??"";return!t||e.startsWith(t+"/")||e===t?e:t+e}])},400053,e=>{"use strict";var t=e.i(973909),a=e.i(889264),r=e.i(323588);async function n(e,n){if(!(n.endsWith(".md")||n.endsWith(".markdown")))return{state:"not-markdown",revision:0,snapshotUrl:null};let s=(0,r.apiUrl)(`/api/agent/files/${n}`),i=await (0,t.readSidecar)(e,n),o=(0,a.leaseGeneration)(e,n),l=(i?.revision??0)+o,u=(0,a.hasActiveLease)(e,n);if(!i&&!u)return{state:"untracked",revision:l,snapshotUrl:s};if(u)return{state:"active",revision:l,snapshotUrl:s};let c=i.suggestions.filter(e=>"pending"===e.status&&!e.stale).length,d=i.comments.filter(e=>!e.resolved).length,p=Object.keys(i.blockProvenance??{}).length;return c>0||d>0||p>0?{state:"active",revision:l,snapshotUrl:s}:{state:"tracked",revision:l,snapshotUrl:s}}e.s(["computeCollabState",0,n])},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))}];
15
15
 
16
- //# sourceMappingURL=%5Broot-of-the-server%5D__05tbv~.._.js.map
16
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0q~ky91._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let l;if(!e)return null;let o=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===o)return null;if(i.deniedSegments?.length){for(let e of o.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{l=await (0,t.realpath)(e)}catch{return null}let u=o?r.default.join(l,o):l;try{let e=await (0,t.realpath)(u),n=r.default.relative(l,e);if(a(n))return null;return{relPath:o,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=r.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=r.default.relative(l,e);if(a(s))return null;return{relPath:o,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},402662,e=>{"use strict";var t=e.i(702414);e.s(["checkOrigin",0,function(e){let r=e.method.toUpperCase();if("GET"===r||"HEAD"===r||"OPTIONS"===r)return null;let a=e.headers.get("origin"),n=e.headers.get("referer");if(!a&&!n)return null;let s=function(e){let t=Array.from(new Set(["localhost","127.0.0.1",e.split(":")[0],...(process.env.WIKI_OWNER_HOSTS??"").split(",").map(e=>e.trim()).filter(Boolean)])),r=["",":3000",":3003"];e.includes(":")&&r.push(":"+e.split(":")[1]);let a=new Set;for(let e of t)for(let t of["http","https"])for(let n of r)a.add(`${t}://${e}${n}`);return a}(e.headers.get("host")??"");if(a)return s.has(a)?null:t.NextResponse.json({error:"FORBIDDEN",message:"Bad origin"},{status:403});if(n){try{let{protocol:e,host:t}=new URL(n);if(s.has(`${e}//${t}`))return null}catch{}return t.NextResponse.json({error:"FORBIDDEN",message:"Bad referer"},{status:403})}return null}])},791787,e=>{"use strict";var t=e.i(364564),r=e.i(102095),a=e.i(691091),n=e.i(475331),s=e.i(490301),i=e.i(670943),l=e.i(690324),o=e.i(243133),u=e.i(404870),d=e.i(420180),c=e.i(867883),p=e.i(336708),h=e.i(682278),f=e.i(157569),v=e.i(844146),m=e.i(193695);e.i(105888);var w=e.i(530564),R=e.i(912714),g=e.i(750227),_=e.i(702414),y=e.i(402662),x=e.i(660038),E=e.i(536654),P=e.i(666680);let C=".scratch";function N(e){return(e??"").replace(/^\./,"").toLowerCase().replace(/[^a-z0-9]/g,"").slice(0,12)||"txt"}async function b(e,t=Date.now()){let r,a,n;if(!e)return 0;try{r=await (0,R.realpath)(e)}catch{return 0}try{a=await (0,R.realpath)(g.default.join(r,C))}catch{return 0}let s=g.default.relative(r,a);if(""===s||s.startsWith("..")||g.default.isAbsolute(s))return 0;try{n=await (0,R.readdir)(a)}catch{return 0}let i=0;return await Promise.all(n.map(async e=>{let r=g.default.join(a,e);try{let e=await (0,R.realpath)(r),n=g.default.relative(a,e);if(n.startsWith("..")||g.default.isAbsolute(n))return;let s=await (0,R.stat)(e);t-s.mtimeMs>6048e5&&(await (0,R.rm)(e,{recursive:!0,force:!0}),i+=1)}catch{}})),i}let A=[".proof",".git"];async function j(e,t,r){let a,n,s=(a=N(t),n=(0,P.randomBytes)(3).toString("hex"),`${C}/scratch-${Date.now()}-${n}.${a}`),i=await (0,E.resolveWorkspacePath)(e,s,{allowMissing:!0,deniedSegments:A});return i?(await (0,R.mkdir)(g.default.dirname(i.absolutePath),{recursive:!0}),await (0,R.writeFile)(i.absolutePath,r),{path:i.relPath,name:g.default.basename(i.relPath)}):null}async function k(e){let t=(0,y.checkOrigin)(e);if(t)return t;let r=await (0,x.resolveWorkspaceForUser)(e,"write");if(!r.ok)return _.NextResponse.json({error:r.code},{status:r.status});let{rootDir:a}=r;if(await b(a).catch(()=>0),(e.headers.get("content-type")??"").includes("multipart/form-data")){let t=(await e.formData()).get("file");if(!(t instanceof File))return _.NextResponse.json({error:"Missing file"},{status:400});if(t.size>0x3200000)return _.NextResponse.json({error:"File too large"},{status:413});let r=Buffer.from(await t.arrayBuffer()),n=function(e){if(!e)return"txt";let t=e.split("/").pop()??e,r=t.lastIndexOf(".");return r<=0||r===t.length-1?"txt":N(t.slice(r+1))}(t.name),s=await j(a,n,r);return s?_.NextResponse.json(s):_.NextResponse.json({error:"Invalid path"},{status:400})}let n=await e.json().catch(()=>({}));if("string"!=typeof n.content)return _.NextResponse.json({error:"Missing content"},{status:400});if(Buffer.byteLength(n.content,"utf8")>0x3200000)return _.NextResponse.json({error:"Content too large"},{status:413});let s=N(n.ext),i=await j(a,s,n.content);return i?_.NextResponse.json(i):_.NextResponse.json({error:"Invalid path"},{status:400})}e.s(["POST",0,k],558227);var O=e.i(558227);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/wiki/scratch/route",pathname:"/api/wiki/scratch",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/wiki/scratch/route.ts",nextConfigOutput:"standalone",userland:O,...{}}),{workAsyncStorage:T,workUnitAsyncStorage:q,serverHooks:I}=S;async function D(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/wiki/scratch/route";R=R.replace(/\/index$/,"")||"/";let g=await S.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:_,params:y,nextConfig:x,parsedUrl:E,isDraftMode:P,prerenderManifest:C,routerServerContext:N,isOnDemandRevalidate:b,revalidateOnlyGenerated:A,resolvedPathname:j,clientReferenceManifest:k,serverActionsManifest:O}=g,T=(0,l.normalizeAppPath)(R),q=!!(C.dynamicRoutes[T]||C.routes[j]),I=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,E,!1):t.end("This page could not be found"),null);if(q&&!P){let e=!!C.routes[j],t=C.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(x.adapterPath)return await I();throw new m.NoFallbackError}}let D=null;!q||S.isDev||P||(D="/index"===(D=j)?"/":D);let M=!0===S.isDev||!q,H=q&&!M;O&&k&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:k,serverActionsManifest:O});let U=e.method||"GET",$=(0,s.getTracer)(),B=$.getActiveScopeSpan(),F=!!(null==N?void 0:N.isWrappedByNextServer),W=!!(0,n.getRequestMeta)(e,"minimalMode"),z=(0,n.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,x,C,W);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let K={params:y,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:z,cacheLifeProfiles:x.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,N)},sharedContext:{buildId:_}},L=new o.NodeNextRequest(e),G=new o.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(L,(0,u.signalFromNodeResponse)(t));try{let n,i=async e=>S.handle(V,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${U} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${U} ${R}`)}),l=async n=>{var s,l;let o=async({previousCacheEntry:r})=>{try{if(!W&&b&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let o=K.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(L,G,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);o&&(t[v.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,a=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:b})},!1,N),t}},u=await S.handleResponse({req:e,nextConfig:x,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:A,responseGenerator:o,waitUntil:a.waitUntil,isMinimalMode:W});if(!q)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",b?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),P&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&q||d.delete(v.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(L,G,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};F&&B?await l(B):(n=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${U} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},l),void 0,!F))}catch(t){if(t instanceof m.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:b})},!1,N),q)throw t;return await (0,p.sendResponse)(L,G,new Response(null,{status:500})),null}}e.s(["handler",0,D,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:T,workUnitAsyncStorage:q})},"routeModule",0,S,"serverHooks",0,I,"workAsyncStorage",0,T,"workUnitAsyncStorage",0,q],791787)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},396690,e=>{e.v(t=>Promise.all(["server/chunks/032z_better-auth_dist_adapters_kysely-adapter_index_mjs_0.uqexi._.js"].map(t=>e.l(t))).then(()=>t(320652)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},84040,e=>{e.v(t=>Promise.all(["server/chunks/0p91_next_0h94sj1._.js"].map(t=>e.l(t))).then(()=>t(815068)))},526888,e=>{e.v(e=>Promise.resolve().then(()=>e(28962)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0uja7sb._.js.map