larkup 0.1.23 → 0.1.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +3 -3
- package/.next/diagnostics/route-bundle-stats.json +6 -6
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/required-server-files.js +3 -2
- package/.next/required-server-files.json +3 -2
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +16 -16
- package/.next/server/app/_not-found.segments/_full.segment.rsc +16 -16
- package/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/analytics/page_client-reference-manifest.js +1 -1
- package/.next/server/app/analytics.html +1 -1
- package/.next/server/app/analytics.rsc +17 -17
- package/.next/server/app/analytics.segments/_full.segment.rsc +17 -17
- package/.next/server/app/analytics.segments/_head.segment.rsc +4 -4
- package/.next/server/app/analytics.segments/_index.segment.rsc +11 -11
- package/.next/server/app/analytics.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/analytics.segments/analytics/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/analytics.segments/analytics.segment.rsc +3 -3
- package/.next/server/app/api/chat/route.js +3 -3
- package/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/.next/server/app/api/doc-editor/edit/route.js +1 -1
- package/.next/server/app/api/doc-editor/edit/route.js.nft.json +1 -1
- package/.next/server/app/api/doc-editor/export/route.js +1 -1
- package/.next/server/app/api/doc-editor/export/route.js.nft.json +1 -1
- package/.next/server/app/api/doc-editor/extract-text/route.js +1 -1
- package/.next/server/app/api/doc-editor/extract-text/route.js.nft.json +1 -1
- package/.next/server/app/api/doc-editor/parse/route.js +4 -4
- package/.next/server/app/api/doc-editor/parse/route.js.nft.json +1 -1
- package/.next/server/app/api/doc-editor/restore/route.js +1 -1
- package/.next/server/app/api/doc-editor/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/document/sign/route.js +3 -3
- package/.next/server/app/api/document/sign/route.js.nft.json +1 -1
- package/.next/server/app/api/sandbox/route.js +1 -1
- package/.next/server/app/api/sandbox/route.js.nft.json +1 -1
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/chat.html +1 -1
- package/.next/server/app/chat.rsc +17 -17
- package/.next/server/app/chat.segments/_full.segment.rsc +17 -17
- package/.next/server/app/chat.segments/_head.segment.rsc +4 -4
- package/.next/server/app/chat.segments/_index.segment.rsc +11 -11
- package/.next/server/app/chat.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/chat.segments/chat.segment.rsc +3 -3
- package/.next/server/app/data/page_client-reference-manifest.js +1 -1
- package/.next/server/app/data.html +1 -1
- package/.next/server/app/data.rsc +17 -17
- package/.next/server/app/data.segments/_full.segment.rsc +17 -17
- package/.next/server/app/data.segments/_head.segment.rsc +4 -4
- package/.next/server/app/data.segments/_index.segment.rsc +11 -11
- package/.next/server/app/data.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/data.segments/data/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/data.segments/data.segment.rsc +3 -3
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +16 -16
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +16 -16
- package/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/server/app/index.segments/_index.segment.rsc +11 -11
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +18 -18
- package/.next/server/app/settings.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings.segments/_index.segment.rsc +11 -11
- package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings.segments/settings.segment.rsc +3 -3
- package/.next/server/chunks/{[root-of-the-server]__0lczaer._.js → [root-of-the-server]__06lx~f.._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__0qs73xp._.js → [root-of-the-server]__06w.x2m._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__03l~uw5._.js → [root-of-the-server]__08y6gy_._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__0veqa4o._.js → [root-of-the-server]__0dlwf67._.js} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__0g36cgg._.js → [root-of-the-server]__0jrhbq8._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__10zm06g._.js → [root-of-the-server]__0oblxyb._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__100gqj0._.js → [root-of-the-server]__0ougw4j._.js} +8 -8
- package/.next/server/chunks/{[root-of-the-server]__044l2_f._.js → [root-of-the-server]__0yj9mzb._.js} +9 -9
- package/.next/server/chunks/{[root-of-the-server]__0036943._.js → [root-of-the-server]__13ydff-._.js} +8 -8
- package/.next/server/chunks/ssr/_0s5_0n1._.js +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/{0u4n0ggeto75y.js → 0ia5xz-yykcrq.js} +1 -1
- package/CHANGELOG.md +15 -0
- package/next-env.d.ts +1 -1
- package/next.config.mjs +1 -1
- package/package.json +4 -4
- /package/.next/static/{Fb01QU1MyWBHc7U1LHf5y → rZLjWvDwdTV-PtUjl-1-b}/_buildManifest.js +0 -0
- /package/.next/static/{Fb01QU1MyWBHc7U1LHf5y → rZLjWvDwdTV-PtUjl-1-b}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{Fb01QU1MyWBHc7U1LHf5y → rZLjWvDwdTV-PtUjl-1-b}/_ssgManifest.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
3
|
-
3:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
2
|
+
2:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"ViewportBoundary"]
|
|
3
|
+
3:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
|
-
5:I[640294,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
6
|
-
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"larkup"}],["$","meta","1",{"name":"description","content":"larkup — a toolkit to build, index, and serve your own AI model and knowledge base."}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.01rzdfen4476b.ico","sizes":"256x256","type":"image/x-icon"}],["$","$L5","3",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
5
|
+
5:I[640294,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"IconMark"]
|
|
6
|
+
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"larkup"}],["$","meta","1",{"name":"description","content":"larkup — a toolkit to build, index, and serve your own AI model and knowledge base."}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.01rzdfen4476b.ico","sizes":"256x256","type":"image/x-icon"}],["$","$L5","3",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"rZLjWvDwdTV-PtUjl-1-b"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[232295,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
3
|
-
3:I[82100,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
4
|
-
4:I[624529,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
5
|
-
5:I[266186,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
6
|
-
6:I[180366,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
7
|
-
7:I[724474,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
8
|
-
8:I[16248,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
9
|
-
9:I[7012,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
10
|
-
a:I[953159,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
11
|
-
b:I[675973,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
2
|
+
2:I[232295,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"UpdateBanner"]
|
|
3
|
+
3:I[82100,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"ThemeCustomizerProvider"]
|
|
4
|
+
4:I[624529,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"WorkspaceProvider"]
|
|
5
|
+
5:I[266186,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"ClientLayoutWrapper"]
|
|
6
|
+
6:I[180366,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"default"]
|
|
7
|
+
7:I[724474,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js","/_next/static/chunks/0ufxt21gvl.3g.js","/_next/static/chunks/03jot0gqi~a10.js"],"default"]
|
|
8
|
+
8:I[16248,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"default"]
|
|
9
|
+
9:I[7012,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"Toaster"]
|
|
10
|
+
a:I[953159,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"GlobalIndexProgress"]
|
|
11
|
+
b:I[675973,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"Analytics"]
|
|
12
12
|
:HL["/_next/static/chunks/066jf0nk75nic.css","style"]
|
|
13
13
|
:HL["/_next/static/chunks/0uawaqqylt5zw.css","style"]
|
|
14
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/066jf0nk75nic.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/0uawaqqylt5zw.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0q_qvc60_3aw4.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0zoh3o_.geqbv.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/
|
|
14
|
+
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/066jf0nk75nic.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/0uawaqqylt5zw.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0q_qvc60_3aw4.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0zoh3o_.geqbv.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/0ia5xz-yykcrq.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/00h-ng_jqta-2.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/14x~vj_4i-4bz.js","async":true}],["$","script","script-5",{"src":"/_next/static/chunks/0~_-3fik2n4-i.js","async":true}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable bg-transparent","children":["$","body",null,{"suppressHydrationWarning":true,"className":"font-sans antialiased ","children":[["$","script",null,{"dangerouslySetInnerHTML":{"__html":"(function(){try{var t=localStorage.getItem('app-theme');var b=localStorage.getItem('app-background');var r=localStorage.getItem('app-radius');var d=document.body;if(t&&t!=='default')d.classList.add(t);if(b)d.classList.add(b);if(r&&r!=='radius-default')d.classList.add(r);}catch(e){}})();"}}],["$","$L2",null,{}],["$","$L3",null,{"children":["$","$L4",null,{"children":[["$","$L5",null,{"children":["$","$L6",null,{"parallelRouterKey":"children","template":["$","$L7",null,{"children":["$","$L8",null,{}]}],"templateStyles":[],"templateScripts":[["$","script","script-0",{"src":"/_next/static/chunks/0ufxt21gvl.3g.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03jot0gqi~a10.js","async":true}]],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}],["$","$L9",null,{"position":"bottom-left"}],["$","$La",null,{}]]}]}],["$","$Lb",null,{}]]}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"rZLjWvDwdTV-PtUjl-1-b"}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
:HL["/_next/static/chunks/0uawaqqylt5zw.css","style"]
|
|
3
3
|
:HL["/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
4
4
|
:HL["/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
5
|
-
0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"settings","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"
|
|
5
|
+
0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"settings","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"rZLjWvDwdTV-PtUjl-1-b"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[217281,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
3
|
-
3:I[93505,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
4
|
-
6:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
2
|
+
2:I[217281,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"ClientPageRoot"]
|
|
3
|
+
3:I[93505,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js","/_next/static/chunks/0w6lgn24.0eip.js","/_next/static/chunks/0c-2rnxmjsotm.js","/_next/static/chunks/0~074ua5vk6f8.js"],"default"]
|
|
4
|
+
6:I[984918,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"OutletBoundary"]
|
|
5
5
|
7:"$Sreact.suspense"
|
|
6
|
-
0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/0w6lgn24.0eip.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0c-2rnxmjsotm.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/0~074ua5vk6f8.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
6
|
+
0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/0w6lgn24.0eip.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0c-2rnxmjsotm.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/0~074ua5vk6f8.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"rZLjWvDwdTV-PtUjl-1-b"}
|
|
7
7
|
4:{}
|
|
8
8
|
5:"$0:rsc:props:children:0:props:serverProvidedParams:params"
|
|
9
9
|
8:null
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[180366,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
3
|
-
3:I[16248,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/
|
|
2
|
+
2:I[180366,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"default"]
|
|
3
|
+
3:I[16248,["/_next/static/chunks/0q_qvc60_3aw4.js","/_next/static/chunks/0zoh3o_.geqbv.js","/_next/static/chunks/0ia5xz-yykcrq.js","/_next/static/chunks/00h-ng_jqta-2.js","/_next/static/chunks/14x~vj_4i-4bz.js","/_next/static/chunks/0~_-3fik2n4-i.js"],"default"]
|
|
4
4
|
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"
|
|
5
|
+
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"rZLjWvDwdTV-PtUjl-1-b"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},
|
|
1
|
+
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},983131,778923,e=>{"use strict";var t=e.i(902157),r=e.i(750227),a=e.i(660526),s=e.i(666680);let i="larkup-sandbox:latest",n="/sandbox/output",o=r.default.join({get url(){return`file://${e.P("packages/sandbox/dist/docker-runner.js")}`}}.dirname??"/ROOT/packages/sandbox/dist",".."),l=null;async function d(){if(!l){let{default:e}=await import("dockerode");l=new e}return l}async function c(){let e=await d();try{let t=await e.version(),r=await e.listImages({filters:{reference:[i]}});return{status:r.length>0?"ready":"image-not-found",backend:"docker",dockerVersion:t.Version,imageReady:r.length>0}}catch(e){return{status:"docker-not-found",backend:"docker",error:e.message??"Docker daemon not available"}}}async function p(e){let a=await d(),s=r.default.join(o,"Dockerfile");try{await t.promises.access(s)}catch{throw Error(`Sandbox Dockerfile not found at ${s}. Ensure the @larkup/sandbox package is properly installed.`)}e?.("Building sandbox image…");let n=await a.buildImage({context:o,src:["Dockerfile"]},{t:i});await new Promise((t,r)=>{a.modem.followProgress(n,e=>{e?r(e):t()},t=>{t.stream&&e?.(t.stream.trim())})}),e?.("Sandbox image built successfully ✓")}async function u(){let e=await d();if((await e.listImages({filters:{reference:[i]}})).length>0)return!0;try{return await p(),!0}catch{return!1}}async function f(e,i){let o,l,c=await d(),p=Date.now(),u=r.default.join(a.default.tmpdir(),`larkup-sandbox-${(0,s.randomUUID)()}`),f=r.default.join(u,"input"),g=r.default.join(u,"output");if(await t.promises.mkdir(f,{recursive:!0}),await t.promises.mkdir(g,{recursive:!0}),e.files)for(let a of e.files){let e=r.default.join(f,a.name);a.isBase64?await t.promises.writeFile(e,Buffer.from(a.content,"base64")):await t.promises.writeFile(e,a.content,"utf8")}if("python"===e.language){var m;m=e.code,o=`
|
|
2
2
|
import sys, os, json, traceback
|
|
3
3
|
|
|
4
4
|
# Ensure output directory exists
|
|
5
|
-
os.makedirs("${
|
|
5
|
+
os.makedirs("${n}", exist_ok=True)
|
|
6
6
|
|
|
7
7
|
# ============================================================
|
|
8
8
|
# SAFETY PREAMBLE: Suppress warnings & patch deprecated APIs
|
|
@@ -90,7 +90,7 @@ try:
|
|
|
90
90
|
def _patched_show(*args, **kwargs):
|
|
91
91
|
for fig_num in plt.get_fignums():
|
|
92
92
|
fig = plt.figure(fig_num)
|
|
93
|
-
fname = f"${
|
|
93
|
+
fname = f"${n}/chart_{_figure_count[0]}.png"
|
|
94
94
|
fig.savefig(fname, dpi=150, bbox_inches="tight", facecolor="white")
|
|
95
95
|
_figure_count[0] += 1
|
|
96
96
|
plt.close("all")
|
|
@@ -131,13 +131,13 @@ except Exception as e:
|
|
|
131
131
|
|
|
132
132
|
# List generated artifacts
|
|
133
133
|
artifacts = []
|
|
134
|
-
if os.path.isdir("${
|
|
135
|
-
for f in sorted(os.listdir("${
|
|
136
|
-
fp = os.path.join("${
|
|
134
|
+
if os.path.isdir("${n}"):
|
|
135
|
+
for f in sorted(os.listdir("${n}")):
|
|
136
|
+
fp = os.path.join("${n}", f)
|
|
137
137
|
if os.path.isfile(fp):
|
|
138
138
|
artifacts.append(f)
|
|
139
139
|
if artifacts:
|
|
140
140
|
print("\\n__ARTIFACTS__:" + json.dumps(artifacts))
|
|
141
|
-
`;let t=a.default.join(u,"run.py");await r.promises.writeFile(t,n,"utf8"),l=["python3","/sandbox/run.py"]}else{let t=a.default.join(u,"run.js");await r.promises.writeFile(t,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??t.timeoutMs,_=null;try{_=await d.createContainer({Image:t.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*t.memoryMB*1024,CpuShares:t.cpuShares,NetworkMode:t.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${o}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),s=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),i=await Promise.race([e,s]),n=await _.logs({stdout:!0,stderr:!0,follow:!1}),c=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let s=e.readUInt8(a),i=e.readUInt32BE(a+4);if((a+=8)+i>e.length)break;let n=e.subarray(a,a+i).toString("utf8");1===s?t+=n:2===s&&(r+=n),a+=i}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(n),m=[];try{for(let e of(await r.promises.readdir(g))){let t=a.default.join(g,e),s=await r.promises.readFile(t),i={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[a.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:i,data:s.toString("base64")})}}catch{}let{stdout:x,stderr:w}=c;return{stdout:x.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:w,exitCode:i.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await r.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let m={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return p();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await u(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await f())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return g(e,{...m,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},749755,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),s=e.i(765700),i=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),x=e.i(686296);e.i(907667);var w=e.i(490517);async function y(e){try{let{sessionId:t,fieldEdits:r,contentEdits:a}=await e.json();if(!t)return x.NextResponse.json({error:"sessionId required"},{status:400});let s=(0,w.getSession)(t);if(!s)return x.NextResponse.json({error:"Session not found"},{status:404});if(r&&r.length>0){let e=await (0,w.applyFieldEdits)(t,r);if(!e.success)return x.NextResponse.json({error:e.error,fields:s.parsed.fields},{status:500});return x.NextResponse.json({success:!0,updatedFields:e.updatedFields,fields:e.parsed.fields,pages:e.parsed.pages.map(e=>({index:e.index,text:e.text.slice(0,2e3),html:e.html,fields:e.fields,dimensions:e.dimensions})),totalPages:e.parsed.totalPages,fileBase64:e.fileBase64})}if(a&&a.length>0){let e=await (0,w.applyContentEdits)(t,a);if(!e.success)return x.NextResponse.json({error:e.error},{status:500});return x.NextResponse.json({success:!0,updatedFields:e.updatedFields,pages:e.parsed.pages.map(e=>({index:e.index,text:e.text.slice(0,2e3),html:e.html,fields:e.fields,dimensions:e.dimensions})),totalPages:e.parsed.totalPages,fileBase64:e.fileBase64})}return x.NextResponse.json({error:"No edits provided"},{status:400})}catch(t){let e=t instanceof Error?t.message:"Edit failed";return x.NextResponse.json({error:e},{status:500})}}e.s(["POST",0,y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],324234);var b=e.i(324234);let k=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/doc-editor/edit/route",pathname:"/api/doc-editor/edit",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/doc-editor/edit/route.ts",nextConfigOutput:"standalone",userland:b,...{}}),{workAsyncStorage:v,workUnitAsyncStorage:E,serverHooks:R}=k;async function A(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),k.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/doc-editor/edit/route";x=x.replace(/\/index$/,"")||"/";let w=await k.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,deploymentId:b,params:v,nextConfig:E,parsedUrl:R,isDraftMode:A,prerenderManifest:S,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:F,resolvedPathname:M,clientReferenceManifest:T,serverActionsManifest:N}=w,j=(0,o.normalizeAppPath)(x),q=!!(S.dynamicRoutes[j]||S.routes[M]),I=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(q&&!A){let e=!!S.routes[M],t=S.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await I();throw new h.NoFallbackError}}let D=null;!q||k.isDev||A||(D="/index"===(D=M)?"/":D);let B=!0===k.isDev||!q,$=q&&!B;N&&T&&(0,n.setManifestsSingleton)({page:x,clientReferenceManifest:T,serverActionsManifest:N});let O=e.method||"GET",U=(0,i.getTracer)(),H=U.getActiveScopeSpan(),L=!!(null==C?void 0:C.isWrappedByNextServer),Q=!!(0,s.getRequestMeta)(e,"minimalMode"),Y=(0,s.getRequestMeta)(e,"incrementalCache")||await k.getIncrementalCache(e,E,S,Q);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let G={params:v,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:B,incrementalCache:Y,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>k.onRequestError(e,t,a,s,C)},sharedContext:{buildId:y,deploymentId:b}},K=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(K,(0,d.signalFromNodeResponse)(t));try{let s,n=async e=>k.handle(V,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${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(`${O} ${x}`)}),o=async s=>{var i,o;let l=async({previousCacheEntry:r})=>{try{if(!Q&&P&&F&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let o=G.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=G.renderOpts.collectedTags;if(!q)return await (0,u.sendResponse)(K,W,i,G.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await k.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await k.handleResponse({req:e,nextConfig:E,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:F,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:Q});if(!q)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return Q&&q||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(K,W,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};L&&H?await o(H):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${x}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof h.NoFallbackError||await k.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),q)throw t;return await (0,u.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:E})},"routeModule",0,k,"serverHooks",0,R,"workAsyncStorage",0,v,"workUnitAsyncStorage",0,E],749755)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
141
|
+
`;let a=r.default.join(u,"run.py");await t.promises.writeFile(a,o,"utf8"),l=["python3","/sandbox/run.py"]}else{let a=r.default.join(u,"run.js");await t.promises.writeFile(a,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??i.timeoutMs,_=null;try{_=await c.createContainer({Image:i.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*i.memoryMB*1024,CpuShares:i.cpuShares,NetworkMode:i.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${n}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),a=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),s=await Promise.race([e,a]),o=await _.logs({stdout:!0,stderr:!0,follow:!1}),d=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let s=e.readUInt8(a),i=e.readUInt32BE(a+4);if((a+=8)+i>e.length)break;let n=e.subarray(a,a+i).toString("utf8");1===s?t+=n:2===s&&(r+=n),a+=i}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(o),m=[];try{for(let e of(await t.promises.readdir(g))){let a=r.default.join(g,e),s=await t.promises.readFile(a),i={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[r.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:i,data:s.toString("base64")})}}catch{}let{stdout:x,stderr:w}=d;return{stdout:x.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:w,exitCode:s.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await t.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let g={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return c();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await p(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await u())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return f(e,{...g,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},749755,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),s=e.i(765700),i=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),x=e.i(686296);e.i(907667);var w=e.i(490517);async function y(e){try{let{sessionId:t,fieldEdits:r,contentEdits:a}=await e.json();if(!t)return x.NextResponse.json({error:"sessionId required"},{status:400});let s=(0,w.getSession)(t);if(!s)return x.NextResponse.json({error:"Session not found"},{status:404});if(r&&r.length>0){let e=await (0,w.applyFieldEdits)(t,r);if(!e.success)return x.NextResponse.json({error:e.error,fields:s.parsed.fields},{status:500});return x.NextResponse.json({success:!0,updatedFields:e.updatedFields,fields:e.parsed.fields,pages:e.parsed.pages.map(e=>({index:e.index,text:e.text.slice(0,2e3),html:e.html,fields:e.fields,dimensions:e.dimensions})),totalPages:e.parsed.totalPages,fileBase64:e.fileBase64})}if(a&&a.length>0){let e=await (0,w.applyContentEdits)(t,a);if(!e.success)return x.NextResponse.json({error:e.error},{status:500});return x.NextResponse.json({success:!0,updatedFields:e.updatedFields,pages:e.parsed.pages.map(e=>({index:e.index,text:e.text.slice(0,2e3),html:e.html,fields:e.fields,dimensions:e.dimensions})),totalPages:e.parsed.totalPages,fileBase64:e.fileBase64})}return x.NextResponse.json({error:"No edits provided"},{status:400})}catch(t){let e=t instanceof Error?t.message:"Edit failed";return x.NextResponse.json({error:e},{status:500})}}e.s(["POST",0,y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],324234);var b=e.i(324234);let k=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/doc-editor/edit/route",pathname:"/api/doc-editor/edit",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/doc-editor/edit/route.ts",nextConfigOutput:"standalone",userland:b,...{}}),{workAsyncStorage:v,workUnitAsyncStorage:E,serverHooks:R}=k;async function A(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),k.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/doc-editor/edit/route";x=x.replace(/\/index$/,"")||"/";let w=await k.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,deploymentId:b,params:v,nextConfig:E,parsedUrl:R,isDraftMode:A,prerenderManifest:S,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:F,resolvedPathname:M,clientReferenceManifest:T,serverActionsManifest:N}=w,j=(0,o.normalizeAppPath)(x),q=!!(S.dynamicRoutes[j]||S.routes[M]),I=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(q&&!A){let e=!!S.routes[M],t=S.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await I();throw new h.NoFallbackError}}let D=null;!q||k.isDev||A||(D="/index"===(D=M)?"/":D);let B=!0===k.isDev||!q,$=q&&!B;N&&T&&(0,n.setManifestsSingleton)({page:x,clientReferenceManifest:T,serverActionsManifest:N});let O=e.method||"GET",U=(0,i.getTracer)(),H=U.getActiveScopeSpan(),L=!!(null==C?void 0:C.isWrappedByNextServer),Q=!!(0,s.getRequestMeta)(e,"minimalMode"),Y=(0,s.getRequestMeta)(e,"incrementalCache")||await k.getIncrementalCache(e,E,S,Q);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let G={params:v,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:B,incrementalCache:Y,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>k.onRequestError(e,t,a,s,C)},sharedContext:{buildId:y,deploymentId:b}},K=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(K,(0,d.signalFromNodeResponse)(t));try{let s,n=async e=>k.handle(V,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${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(`${O} ${x}`)}),o=async s=>{var i,o;let l=async({previousCacheEntry:r})=>{try{if(!Q&&P&&F&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let o=G.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=G.renderOpts.collectedTags;if(!q)return await (0,u.sendResponse)(K,W,i,G.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await k.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await k.handleResponse({req:e,nextConfig:E,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:F,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:Q});if(!q)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return Q&&q||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(K,W,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};L&&H?await o(H):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${x}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof h.NoFallbackError||await k.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),q)throw t;return await (0,u.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:E})},"routeModule",0,k,"serverHooks",0,R,"workAsyncStorage",0,v,"workUnitAsyncStorage",0,E],749755)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
142
142
|
|
|
143
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
143
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__06lx~f.._.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},
|
|
1
|
+
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},983131,778923,e=>{"use strict";var t=e.i(902157),r=e.i(750227),a=e.i(660526),i=e.i(666680);let s="larkup-sandbox:latest",n="/sandbox/output",o=r.default.join({get url(){return`file://${e.P("packages/sandbox/dist/docker-runner.js")}`}}.dirname??"/ROOT/packages/sandbox/dist",".."),l=null;async function d(){if(!l){let{default:e}=await import("dockerode");l=new e}return l}async function c(){let e=await d();try{let t=await e.version(),r=await e.listImages({filters:{reference:[s]}});return{status:r.length>0?"ready":"image-not-found",backend:"docker",dockerVersion:t.Version,imageReady:r.length>0}}catch(e){return{status:"docker-not-found",backend:"docker",error:e.message??"Docker daemon not available"}}}async function p(e){let a=await d(),i=r.default.join(o,"Dockerfile");try{await t.promises.access(i)}catch{throw Error(`Sandbox Dockerfile not found at ${i}. Ensure the @larkup/sandbox package is properly installed.`)}e?.("Building sandbox image…");let n=await a.buildImage({context:o,src:["Dockerfile"]},{t:s});await new Promise((t,r)=>{a.modem.followProgress(n,e=>{e?r(e):t()},t=>{t.stream&&e?.(t.stream.trim())})}),e?.("Sandbox image built successfully ✓")}async function u(){let e=await d();if((await e.listImages({filters:{reference:[s]}})).length>0)return!0;try{return await p(),!0}catch{return!1}}async function f(e,s){let o,l,c=await d(),p=Date.now(),u=r.default.join(a.default.tmpdir(),`larkup-sandbox-${(0,i.randomUUID)()}`),f=r.default.join(u,"input"),g=r.default.join(u,"output");if(await t.promises.mkdir(f,{recursive:!0}),await t.promises.mkdir(g,{recursive:!0}),e.files)for(let a of e.files){let e=r.default.join(f,a.name);a.isBase64?await t.promises.writeFile(e,Buffer.from(a.content,"base64")):await t.promises.writeFile(e,a.content,"utf8")}if("python"===e.language){var m;m=e.code,o=`
|
|
2
2
|
import sys, os, json, traceback
|
|
3
3
|
|
|
4
4
|
# Ensure output directory exists
|
|
5
|
-
os.makedirs("${
|
|
5
|
+
os.makedirs("${n}", exist_ok=True)
|
|
6
6
|
|
|
7
7
|
# ============================================================
|
|
8
8
|
# SAFETY PREAMBLE: Suppress warnings & patch deprecated APIs
|
|
@@ -90,7 +90,7 @@ try:
|
|
|
90
90
|
def _patched_show(*args, **kwargs):
|
|
91
91
|
for fig_num in plt.get_fignums():
|
|
92
92
|
fig = plt.figure(fig_num)
|
|
93
|
-
fname = f"${
|
|
93
|
+
fname = f"${n}/chart_{_figure_count[0]}.png"
|
|
94
94
|
fig.savefig(fname, dpi=150, bbox_inches="tight", facecolor="white")
|
|
95
95
|
_figure_count[0] += 1
|
|
96
96
|
plt.close("all")
|
|
@@ -131,13 +131,13 @@ except Exception as e:
|
|
|
131
131
|
|
|
132
132
|
# List generated artifacts
|
|
133
133
|
artifacts = []
|
|
134
|
-
if os.path.isdir("${
|
|
135
|
-
for f in sorted(os.listdir("${
|
|
136
|
-
fp = os.path.join("${
|
|
134
|
+
if os.path.isdir("${n}"):
|
|
135
|
+
for f in sorted(os.listdir("${n}")):
|
|
136
|
+
fp = os.path.join("${n}", f)
|
|
137
137
|
if os.path.isfile(fp):
|
|
138
138
|
artifacts.append(f)
|
|
139
139
|
if artifacts:
|
|
140
140
|
print("\\n__ARTIFACTS__:" + json.dumps(artifacts))
|
|
141
|
-
`;let t=a.default.join(u,"run.py");await r.promises.writeFile(t,n,"utf8"),l=["python3","/sandbox/run.py"]}else{let t=a.default.join(u,"run.js");await r.promises.writeFile(t,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??t.timeoutMs,_=null;try{_=await d.createContainer({Image:t.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*t.memoryMB*1024,CpuShares:t.cpuShares,NetworkMode:t.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${o}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),s=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),i=await Promise.race([e,s]),n=await _.logs({stdout:!0,stderr:!0,follow:!1}),c=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let s=e.readUInt8(a),i=e.readUInt32BE(a+4);if((a+=8)+i>e.length)break;let n=e.subarray(a,a+i).toString("utf8");1===s?t+=n:2===s&&(r+=n),a+=i}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(n),m=[];try{for(let e of(await r.promises.readdir(g))){let t=a.default.join(g,e),s=await r.promises.readFile(t),i={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[a.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:i,data:s.toString("base64")})}}catch{}let{stdout:x,stderr:w}=c;return{stdout:x.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:w,exitCode:i.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await r.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let m={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return p();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await u(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await f())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return g(e,{...m,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},945177,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),s=e.i(765700),i=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),x=e.i(686296);e.i(907667);var w=e.i(490517),y=e.i(868776);let b=y.z.object({sessionId:y.z.string(),signatureData:y.z.object({mode:y.z.enum(["type","draw","upload"]),imagePayload:y.z.string().optional(),text:y.z.string().optional(),font:y.z.string().optional(),color:y.z.string().optional(),date:y.z.string().optional(),extraText:y.z.string().optional(),pageIndex:y.z.number(),x:y.z.number().optional(),y:y.z.number().optional(),scale:y.z.number().optional(),base64Override:y.z.string().optional(),detectedContext:y.z.string().optional(),placementNote:y.z.string().optional()})});async function k(e){try{let t=await e.json(),r=b.safeParse(t);if(!r.success)return x.NextResponse.json({error:"Invalid request data",details:r.error.issues},{status:400});let{sessionId:a,signatureData:s}=r.data,i=await (0,w.applySignature)(a,s);if(!i.success)return x.NextResponse.json({error:i.error},{status:500});return x.NextResponse.json({document:{parsed:i.parsed,fileBase64:i.fileBase64,updatedFields:i.updatedFields}})}catch(e){return console.error("Sign doc error:",e),x.NextResponse.json({error:"Internal Server Error"},{status:500})}}e.s(["POST",0,k],202418);var v=e.i(202418);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/document/sign/route",pathname:"/api/document/sign",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/document/sign/route.ts",nextConfigOutput:"standalone",userland:v,...{}}),{workAsyncStorage:R,workUnitAsyncStorage:S,serverHooks:A}=E;async function C(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),E.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/document/sign/route";x=x.replace(/\/index$/,"")||"/";let w=await E.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,deploymentId:b,params:k,nextConfig:v,parsedUrl:R,isDraftMode:S,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:M,clientReferenceManifest:F,serverActionsManifest:I}=w,q=(0,o.normalizeAppPath)(x),j=!!(A.dynamicRoutes[q]||A.routes[M]),N=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!S){let e=!!A.routes[M],t=A.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(v.adapterPath)return await N();throw new h.NoFallbackError}}let D=null;!j||E.isDev||S||(D="/index"===(D=M)?"/":D);let B=!0===E.isDev||!j,$=j&&!B;I&&F&&(0,n.setManifestsSingleton)({page:x,clientReferenceManifest:F,serverActionsManifest:I});let O=e.method||"GET",U=(0,i.getTracer)(),H=U.getActiveScopeSpan(),z=!!(null==C?void 0:C.isWrappedByNextServer),L=!!(0,s.getRequestMeta)(e,"minimalMode"),Q=(0,s.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,v,A,L);null==Q||Q.resetRequestCache(),globalThis.__incrementalCache=Q;let Y={params:k,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:B,incrementalCache:Q,cacheLifeProfiles:v.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>E.onRequestError(e,t,a,s,C)},sharedContext:{buildId:y,deploymentId:b}},G=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),W=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let s,n=async e=>E.handle(W,Y).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${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(`${O} ${x}`)}),o=async s=>{var i,o;let l=async({previousCacheEntry:r})=>{try{if(!L&&P&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=Y.renderOpts.fetchMetrics;let o=Y.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=Y.renderOpts.collectedTags;if(!j)return await (0,u.sendResponse)(G,K,i,Y.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,a=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:Y.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:i.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:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await E.handleResponse({req:e,nextConfig:v,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!j)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return L&&j||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(G,K,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};z&&H?await o(H):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${x}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!z))}catch(t){if(t instanceof h.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),j)throw t;return await (0,u.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:R,workUnitAsyncStorage:S})},"routeModule",0,E,"serverHooks",0,A,"workAsyncStorage",0,R,"workUnitAsyncStorage",0,S],945177)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
141
|
+
`;let a=r.default.join(u,"run.py");await t.promises.writeFile(a,o,"utf8"),l=["python3","/sandbox/run.py"]}else{let a=r.default.join(u,"run.js");await t.promises.writeFile(a,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??s.timeoutMs,_=null;try{_=await c.createContainer({Image:s.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*s.memoryMB*1024,CpuShares:s.cpuShares,NetworkMode:s.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${n}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),a=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),i=await Promise.race([e,a]),o=await _.logs({stdout:!0,stderr:!0,follow:!1}),d=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let i=e.readUInt8(a),s=e.readUInt32BE(a+4);if((a+=8)+s>e.length)break;let n=e.subarray(a,a+s).toString("utf8");1===i?t+=n:2===i&&(r+=n),a+=s}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(o),m=[];try{for(let e of(await t.promises.readdir(g))){let a=r.default.join(g,e),i=await t.promises.readFile(a),s={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[r.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:s,data:i.toString("base64")})}}catch{}let{stdout:w,stderr:x}=d;return{stdout:w.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:x,exitCode:i.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await t.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let g={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return c();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await p(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await u())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return f(e,{...g,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},945177,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),i=e.i(765700),s=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),w=e.i(686296);e.i(907667);var x=e.i(490517),y=e.i(868776);let b=y.z.object({sessionId:y.z.string(),signatureData:y.z.object({mode:y.z.enum(["type","draw","upload"]),imagePayload:y.z.string().optional(),text:y.z.string().optional(),font:y.z.string().optional(),color:y.z.string().optional(),date:y.z.string().optional(),extraText:y.z.string().optional(),pageIndex:y.z.number(),x:y.z.number().optional(),y:y.z.number().optional(),scale:y.z.number().optional(),base64Override:y.z.string().optional(),detectedContext:y.z.string().optional(),placementNote:y.z.string().optional()})});async function k(e){try{let t=await e.json(),r=b.safeParse(t);if(!r.success)return w.NextResponse.json({error:"Invalid request data",details:r.error.issues},{status:400});let{sessionId:a,signatureData:i}=r.data,s=await (0,x.applySignature)(a,i);if(!s.success)return w.NextResponse.json({error:s.error},{status:500});return w.NextResponse.json({document:{parsed:s.parsed,fileBase64:s.fileBase64,updatedFields:s.updatedFields}})}catch(e){return console.error("Sign doc error:",e),w.NextResponse.json({error:"Internal Server Error"},{status:500})}}e.s(["POST",0,k],202418);var v=e.i(202418);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/document/sign/route",pathname:"/api/document/sign",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/document/sign/route.ts",nextConfigOutput:"standalone",userland:v,...{}}),{workAsyncStorage:R,workUnitAsyncStorage:S,serverHooks:A}=E;async function C(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),E.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/document/sign/route";w=w.replace(/\/index$/,"")||"/";let x=await E.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,deploymentId:b,params:k,nextConfig:v,parsedUrl:R,isDraftMode:S,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:M,clientReferenceManifest:F,serverActionsManifest:I}=x,q=(0,o.normalizeAppPath)(w),j=!!(A.dynamicRoutes[q]||A.routes[M]),N=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!S){let e=!!A.routes[M],t=A.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(v.adapterPath)return await N();throw new h.NoFallbackError}}let D=null;!j||E.isDev||S||(D="/index"===(D=M)?"/":D);let B=!0===E.isDev||!j,$=j&&!B;I&&F&&(0,n.setManifestsSingleton)({page:w,clientReferenceManifest:F,serverActionsManifest:I});let O=e.method||"GET",U=(0,s.getTracer)(),H=U.getActiveScopeSpan(),z=!!(null==C?void 0:C.isWrappedByNextServer),L=!!(0,i.getRequestMeta)(e,"minimalMode"),Q=(0,i.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,v,A,L);null==Q||Q.resetRequestCache(),globalThis.__incrementalCache=Q;let Y={params:k,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:B,incrementalCache:Q,cacheLifeProfiles:v.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>E.onRequestError(e,t,a,i,C)},sharedContext:{buildId:y,deploymentId:b}},G=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),W=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let i,n=async e=>E.handle(W,Y).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",a),i.updateName(t))}else e.updateName(`${O} ${w}`)}),o=async i=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!L&&P&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await n(i);e.fetchMetrics=Y.renderOpts.fetchMetrics;let o=Y.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=Y.renderOpts.collectedTags;if(!j)return await (0,u.sendResponse)(G,K,s,Y.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.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!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,a=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:Y.renderOpts.collectedExpire;return{value:{kind:_.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 E.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await E.handleResponse({req:e,nextConfig:v,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!j)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return L&&j||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(G,K,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};z&&H?await o(H):(i=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!z))}catch(t){if(t instanceof h.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),j)throw t;return await (0,u.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:R,workUnitAsyncStorage:S})},"routeModule",0,E,"serverHooks",0,A,"workAsyncStorage",0,R,"workUnitAsyncStorage",0,S],945177)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
142
142
|
|
|
143
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
143
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__06w.x2m._.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},
|
|
1
|
+
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},983131,778923,e=>{"use strict";var t=e.i(902157),r=e.i(750227),a=e.i(660526),s=e.i(666680);let i="larkup-sandbox:latest",n="/sandbox/output",o=r.default.join({get url(){return`file://${e.P("packages/sandbox/dist/docker-runner.js")}`}}.dirname??"/ROOT/packages/sandbox/dist",".."),l=null;async function d(){if(!l){let{default:e}=await import("dockerode");l=new e}return l}async function c(){let e=await d();try{let t=await e.version(),r=await e.listImages({filters:{reference:[i]}});return{status:r.length>0?"ready":"image-not-found",backend:"docker",dockerVersion:t.Version,imageReady:r.length>0}}catch(e){return{status:"docker-not-found",backend:"docker",error:e.message??"Docker daemon not available"}}}async function p(e){let a=await d(),s=r.default.join(o,"Dockerfile");try{await t.promises.access(s)}catch{throw Error(`Sandbox Dockerfile not found at ${s}. Ensure the @larkup/sandbox package is properly installed.`)}e?.("Building sandbox image…");let n=await a.buildImage({context:o,src:["Dockerfile"]},{t:i});await new Promise((t,r)=>{a.modem.followProgress(n,e=>{e?r(e):t()},t=>{t.stream&&e?.(t.stream.trim())})}),e?.("Sandbox image built successfully ✓")}async function u(){let e=await d();if((await e.listImages({filters:{reference:[i]}})).length>0)return!0;try{return await p(),!0}catch{return!1}}async function f(e,i){let o,l,c=await d(),p=Date.now(),u=r.default.join(a.default.tmpdir(),`larkup-sandbox-${(0,s.randomUUID)()}`),f=r.default.join(u,"input"),g=r.default.join(u,"output");if(await t.promises.mkdir(f,{recursive:!0}),await t.promises.mkdir(g,{recursive:!0}),e.files)for(let a of e.files){let e=r.default.join(f,a.name);a.isBase64?await t.promises.writeFile(e,Buffer.from(a.content,"base64")):await t.promises.writeFile(e,a.content,"utf8")}if("python"===e.language){var m;m=e.code,o=`
|
|
2
2
|
import sys, os, json, traceback
|
|
3
3
|
|
|
4
4
|
# Ensure output directory exists
|
|
5
|
-
os.makedirs("${
|
|
5
|
+
os.makedirs("${n}", exist_ok=True)
|
|
6
6
|
|
|
7
7
|
# ============================================================
|
|
8
8
|
# SAFETY PREAMBLE: Suppress warnings & patch deprecated APIs
|
|
@@ -90,7 +90,7 @@ try:
|
|
|
90
90
|
def _patched_show(*args, **kwargs):
|
|
91
91
|
for fig_num in plt.get_fignums():
|
|
92
92
|
fig = plt.figure(fig_num)
|
|
93
|
-
fname = f"${
|
|
93
|
+
fname = f"${n}/chart_{_figure_count[0]}.png"
|
|
94
94
|
fig.savefig(fname, dpi=150, bbox_inches="tight", facecolor="white")
|
|
95
95
|
_figure_count[0] += 1
|
|
96
96
|
plt.close("all")
|
|
@@ -131,13 +131,13 @@ except Exception as e:
|
|
|
131
131
|
|
|
132
132
|
# List generated artifacts
|
|
133
133
|
artifacts = []
|
|
134
|
-
if os.path.isdir("${
|
|
135
|
-
for f in sorted(os.listdir("${
|
|
136
|
-
fp = os.path.join("${
|
|
134
|
+
if os.path.isdir("${n}"):
|
|
135
|
+
for f in sorted(os.listdir("${n}")):
|
|
136
|
+
fp = os.path.join("${n}", f)
|
|
137
137
|
if os.path.isfile(fp):
|
|
138
138
|
artifacts.append(f)
|
|
139
139
|
if artifacts:
|
|
140
140
|
print("\\n__ARTIFACTS__:" + json.dumps(artifacts))
|
|
141
|
-
`;let t=a.default.join(u,"run.py");await r.promises.writeFile(t,n,"utf8"),l=["python3","/sandbox/run.py"]}else{let t=a.default.join(u,"run.js");await r.promises.writeFile(t,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??t.timeoutMs,_=null;try{_=await d.createContainer({Image:t.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*t.memoryMB*1024,CpuShares:t.cpuShares,NetworkMode:t.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${o}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),s=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),i=await Promise.race([e,s]),n=await _.logs({stdout:!0,stderr:!0,follow:!1}),c=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let s=e.readUInt8(a),i=e.readUInt32BE(a+4);if((a+=8)+i>e.length)break;let n=e.subarray(a,a+i).toString("utf8");1===s?t+=n:2===s&&(r+=n),a+=i}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(n),m=[];try{for(let e of(await r.promises.readdir(g))){let t=a.default.join(g,e),s=await r.promises.readFile(t),i={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[a.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:i,data:s.toString("base64")})}}catch{}let{stdout:w,stderr:x}=c;return{stdout:w.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:x,exitCode:i.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await r.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let m={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return p();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await u(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await f())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return g(e,{...m,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},93401,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),s=e.i(765700),i=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),w=e.i(686296);e.i(907667);var x=e.i(490517),y=e.i(203523);async function b(e){try{let t,{sessionId:r,fileBase64:a,parsedDocument:s,fileName:i,mimeType:n,activeFileType:o}=await e.json();if(!r||!a)return w.NextResponse.json({error:"Missing sessionId or fileBase64"},{status:400});let l=Buffer.from(a,"base64");if(s&&s.fields&&s.fields.length>0)t=s;else try{(t=await (0,y.parseDocument)(l,i||"Document",n||"application/pdf")).sessionId=r}catch(e){console.warn("[doc-editor/restore] Re-parse failed, using empty parsed:",e.message),t={sessionId:r,fileName:i||"Document",type:o||"pdf",mimeType:n||"application/pdf",fileSize:l.length,pages:[],fields:[],rawText:"",metadata:{},totalPages:1}}let d={id:r,fileName:i||t.fileName||"Document",type:o||t.type||"pdf",mimeType:n||t.mimeType||"application/pdf",originalFileBase64:a,currentFileBase64:a,parsed:t,edits:[],createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return(0,x.restoreSession)(d),console.log(`[doc-editor/restore] Session ${r} restored with ${t.fields?.length??0} fields`),w.NextResponse.json({success:!0,message:"Session restored in backend"})}catch(e){return console.error("Error restoring session:",e),w.NextResponse.json({error:e.message||"Failed to restore session"},{status:500})}}e.s(["POST",0,b],55042);var k=e.i(55042);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/doc-editor/restore/route",pathname:"/api/doc-editor/restore",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/doc-editor/restore/route.ts",nextConfigOutput:"standalone",userland:k,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:R,serverHooks:S}=v;async function A(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/doc-editor/restore/route";w=w.replace(/\/index$/,"")||"/";let x=await v.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,deploymentId:b,params:k,nextConfig:E,parsedUrl:R,isDraftMode:S,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:M,clientReferenceManifest:F,serverActionsManifest:D}=x,I=(0,o.normalizeAppPath)(w),q=!!(A.dynamicRoutes[I]||A.routes[M]),N=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(q&&!S){let e=!!A.routes[M],t=A.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await N();throw new h.NoFallbackError}}let j=null;!q||v.isDev||S||(j="/index"===(j=M)?"/":j);let B=!0===v.isDev||!q,$=q&&!B;D&&F&&(0,n.setManifestsSingleton)({page:w,clientReferenceManifest:F,serverActionsManifest:D});let O=e.method||"GET",U=(0,i.getTracer)(),H=U.getActiveScopeSpan(),L=!!(null==C?void 0:C.isWrappedByNextServer),Q=!!(0,s.getRequestMeta)(e,"minimalMode"),Y=(0,s.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,E,A,Q);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let G={params:k,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:B,incrementalCache:Y,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>v.onRequestError(e,t,a,s,C)},sharedContext:{buildId:y,deploymentId:b}},K=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(K,(0,d.signalFromNodeResponse)(t));try{let s,n=async e=>v.handle(V,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${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(`${O} ${w}`)}),o=async s=>{var i,o;let l=async({previousCacheEntry:r})=>{try{if(!Q&&P&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let o=G.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=G.renderOpts.collectedTags;if(!q)return await (0,u.sendResponse)(K,W,i,G.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await v.handleResponse({req:e,nextConfig:E,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:Q});if(!q)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return Q&&q||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(K,W,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};L&&H?await o(H):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof h.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),q)throw t;return await (0,u.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:R})},"routeModule",0,v,"serverHooks",0,S,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,R],93401)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
141
|
+
`;let a=r.default.join(u,"run.py");await t.promises.writeFile(a,o,"utf8"),l=["python3","/sandbox/run.py"]}else{let a=r.default.join(u,"run.js");await t.promises.writeFile(a,e.code,"utf8"),l=["node","/sandbox/run.js"]}let h=e.timeout??i.timeoutMs,_=null;try{_=await c.createContainer({Image:i.imageName,Cmd:l,Entrypoint:[],WorkingDir:"/sandbox/input",HostConfig:{AutoRemove:!1,Memory:1024*i.memoryMB*1024,CpuShares:i.cpuShares,NetworkMode:i.networkDisabled?"none":"bridge",Binds:[`${f}:/sandbox/input:ro`,`${g}:${n}:rw`,`${u}/run.py:/sandbox/run.py:ro`],ReadonlyRootfs:!1},Tty:!1,AttachStdout:!0,AttachStderr:!0}),await _.start();let e=_.wait(),a=new Promise((e,t)=>{setTimeout(async()=>{try{await _?.kill()}catch{}t(Error(`Execution timed out after ${h}ms`))},h)}),s=await Promise.race([e,a]),o=await _.logs({stdout:!0,stderr:!0,follow:!1}),d=function(e){let t="",r="";if("string"==typeof e)return{stdout:e,stderr:""};let a=0;for(;a<e.length&&!(a+8>e.length);){let s=e.readUInt8(a),i=e.readUInt32BE(a+4);if((a+=8)+i>e.length)break;let n=e.subarray(a,a+i).toString("utf8");1===s?t+=n:2===s&&(r+=n),a+=i}return t||r||!(e.length>0)||(t=e.toString("utf8")),{stdout:t,stderr:r}}(o),m=[];try{for(let e of(await t.promises.readdir(g))){let a=r.default.join(g,e),s=await t.promises.readFile(a),i={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".svg":"image/svg+xml",".gif":"image/gif",".csv":"text/csv",".json":"application/json",".txt":"text/plain",".html":"text/html",".pdf":"application/pdf"}[r.default.extname(e).toLowerCase()]??"application/octet-stream";m.push({name:e,mimeType:i,data:s.toString("base64")})}}catch{}let{stdout:w,stderr:x}=d;return{stdout:w.replace(/\n__ARTIFACTS__:.*$/m,"").trimEnd(),stderr:x,exitCode:s.StatusCode??1,artifacts:m,executionTimeMs:Date.now()-p}}catch(e){return{stdout:"",stderr:e.message??"Execution failed",exitCode:1,artifacts:[],executionTimeMs:Date.now()-p}}finally{if(_)try{await _.remove({force:!0})}catch{}try{await t.promises.rm(u,{recursive:!0,force:!0})}catch{}}}let g={imageName:"larkup-sandbox:latest",memoryMB:512,cpuShares:1024,timeoutMs:3e4,networkDisabled:!0};e.s(["SandboxManager",0,class{config;constructor(e){this.config={backend:e?.backend??"docker",docker:e?.docker,remote:e?.remote}}async healthCheck(){switch(this.config.backend){case"docker":return c();case"e2b":case"modal":case"custom":return{status:"error",backend:this.config.backend,error:`${this.config.backend} backend is not yet implemented. Use Docker for local execution.`};default:return{status:"error",backend:this.config.backend,error:`Unknown backend: ${this.config.backend}`}}}async setup(e){if("docker"===this.config.backend)await p(e);else throw Error(`Setup not supported for backend: ${this.config.backend}`)}async execute(e){switch(this.config.backend){case"docker":if(!await u())return{stdout:"",stderr:"Sandbox image not available. Run setup first or ensure Docker is installed.",exitCode:1,artifacts:[],executionTimeMs:0};return f(e,{...g,...this.config.docker});case"e2b":case"modal":case"custom":return{stdout:"",stderr:`${this.config.backend} backend is not yet implemented.`,exitCode:1,artifacts:[],executionTimeMs:0};default:return{stdout:"",stderr:`Unknown backend: ${this.config.backend}`,exitCode:1,artifacts:[],executionTimeMs:0}}}}],778923),e.s([],983131)},93401,e=>{"use strict";var t=e.i(850492),r=e.i(891119),a=e.i(697373),s=e.i(765700),i=e.i(601263),n=e.i(706859),o=e.i(947547),l=e.i(819797),d=e.i(135958),c=e.i(86520),p=e.i(970949),u=e.i(741165),f=e.i(106898),g=e.i(454415),m=e.i(37125),h=e.i(193695);e.i(530058);var _=e.i(605998),w=e.i(686296);e.i(907667);var x=e.i(490517),y=e.i(203523);async function b(e){try{let t,{sessionId:r,fileBase64:a,parsedDocument:s,fileName:i,mimeType:n,activeFileType:o}=await e.json();if(!r||!a)return w.NextResponse.json({error:"Missing sessionId or fileBase64"},{status:400});let l=Buffer.from(a,"base64");if(s&&s.fields&&s.fields.length>0)t=s;else try{(t=await (0,y.parseDocument)(l,i||"Document",n||"application/pdf")).sessionId=r}catch(e){console.warn("[doc-editor/restore] Re-parse failed, using empty parsed:",e.message),t={sessionId:r,fileName:i||"Document",type:o||"pdf",mimeType:n||"application/pdf",fileSize:l.length,pages:[],fields:[],rawText:"",metadata:{},totalPages:1}}let d={id:r,fileName:i||t.fileName||"Document",type:o||t.type||"pdf",mimeType:n||t.mimeType||"application/pdf",originalFileBase64:a,currentFileBase64:a,parsed:t,edits:[],createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};return(0,x.restoreSession)(d),console.log(`[doc-editor/restore] Session ${r} restored with ${t.fields?.length??0} fields`),w.NextResponse.json({success:!0,message:"Session restored in backend"})}catch(e){return console.error("Error restoring session:",e),w.NextResponse.json({error:e.message||"Failed to restore session"},{status:500})}}e.s(["POST",0,b],55042);var k=e.i(55042);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/doc-editor/restore/route",pathname:"/api/doc-editor/restore",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/doc-editor/restore/route.ts",nextConfigOutput:"standalone",userland:k,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:R,serverHooks:S}=v;async function A(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/doc-editor/restore/route";w=w.replace(/\/index$/,"")||"/";let x=await v.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,deploymentId:b,params:k,nextConfig:E,parsedUrl:R,isDraftMode:S,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:M,clientReferenceManifest:F,serverActionsManifest:D}=x,I=(0,o.normalizeAppPath)(w),q=!!(A.dynamicRoutes[I]||A.routes[M]),N=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,R,!1):t.end("This page could not be found"),null);if(q&&!S){let e=!!A.routes[M],t=A.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await N();throw new h.NoFallbackError}}let j=null;!q||v.isDev||S||(j="/index"===(j=M)?"/":j);let B=!0===v.isDev||!q,$=q&&!B;D&&F&&(0,n.setManifestsSingleton)({page:w,clientReferenceManifest:F,serverActionsManifest:D});let O=e.method||"GET",U=(0,i.getTracer)(),H=U.getActiveScopeSpan(),L=!!(null==C?void 0:C.isWrappedByNextServer),Q=!!(0,s.getRequestMeta)(e,"minimalMode"),Y=(0,s.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,E,A,Q);null==Y||Y.resetRequestCache(),globalThis.__incrementalCache=Y;let G={params:k,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:B,incrementalCache:Y,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>v.onRequestError(e,t,a,s,C)},sharedContext:{buildId:y,deploymentId:b}},K=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(K,(0,d.signalFromNodeResponse)(t));try{let s,n=async e=>v.handle(V,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${O} ${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(`${O} ${w}`)}),o=async s=>{var i,o;let l=async({previousCacheEntry:r})=>{try{if(!Q&&P&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let o=G.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=G.renderOpts.collectedTags;if(!q)return await (0,u.sendResponse)(K,W,i,G.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),t}},d=await v.handleResponse({req:e,nextConfig:E,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:Q});if(!q)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});Q||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return Q&&q||c.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(K,W,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};L&&H?await o(H):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${O} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof h.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:P})},!1,C),q)throw t;return await (0,u.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:R})},"routeModule",0,v,"serverHooks",0,S,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,R],93401)},195213,e=>{e.v(e=>Promise.resolve().then(()=>e(568886)))}];
|
|
142
142
|
|
|
143
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
143
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__08y6gy_._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[148089,t=>{"use strict";t.s(["ChromaAdapter",0,class{config;client;collection;collectionName;constructor(t){this.config=t,this.client=null,this.collection=null,this.collectionName=t.collectionName?.trim()||"documents"}async getClient(){let e;if(this.client)return this.client;try{e=await t.A(917038)}catch{throw Error('The "chromadb" package is not installed. Please install it first via the Configure page or run: pnpm add chromadb --filter @larkup/vector-stores')}if("cloud"===this.config.mode){if(!this.config.apiKey)throw Error("Chroma Cloud requires an API key.");let t=e.CloudClient??e.default?.CloudClient;if(!t)throw Error("Could not find CloudClient in the chromadb package.");this.client=new t({apiKey:this.config.apiKey,tenant:this.config.tenant||"default_tenant",database:this.config.database||"default_database"})}else{let t=this.config.host?.trim()||"http://localhost:8000",i=e.ChromaClient??e.default?.ChromaClient;if(!i)throw Error("Could not find ChromaClient in the chromadb package.");let a={path:t};this.config.authToken&&(a.auth={provider:"token",credentials:this.config.authToken}),this.client=new i(a)}return this.client}async getCollection(){if(this.collection)return this.collection;let t=await this.getClient();return this.collection=await t.getOrCreateCollection({name:this.collectionName,metadata:{"hnsw:space":"cosine"}}),this.collection}async init(t){await this.getCollection()}async reset(){let t=await this.getClient();try{await t.deleteCollection({name:this.collectionName})}catch{}this.collection=null}async deleteByDocumentIds(t){if(0!==t.length)try{let e=await this.getCollection();await e.delete({where:{documentId:{$in:t}}})}catch(t){console.error("Failed to delete vectors by documentIds in Chroma:",t)}}async upsert(t){if(0===t.length)return;let e=await this.getCollection(),i=[],a=[],n=[],r=[];for(let e of t)i.push(e.id),a.push(e.vector),n.push(e.text),r.push(this.buildMetadata(e));for(let t=0;t<i.length;t+=4096)await e.upsert({ids:i.slice(t,t+4096),embeddings:a.slice(t,t+4096),documents:n.slice(t,t+4096),metadatas:r.slice(t,t+4096)})}buildMetadata(t){let e={title:t.title,source:t.source,documentId:t.documentId,chunkIndex:t.chunkIndex};if(t.url&&(e.url=t.url),t.metadata)for(let[i,a]of Object.entries(t.metadata))null!=a&&("string"==typeof a||"number"==typeof a||"boolean"==typeof a?e[i]=a:e[i]=JSON.stringify(a));return e}async count(){try{let t=await this.getCollection();return await t.count()}catch{return null}}async query(t,e,i){let a=await this.getCollection(),n="semantic"===this.config.indexType,r="lexical"===this.config.indexType;if(n||!i?.trim())return this.denseQuery(a,t,e);if(r)return this.documentQuery(a,i,e);let o=await this.denseQuery(a,t,e);try{let t=await this.documentQuery(a,i,e);if(t.length>0){var l,s,c;let i,a;return l=o,s=t,c=e,i=new Map,(a=t=>t.forEach((t,e)=>{let a=1/(60+e+1),n=i.get(t.id);n?n.score+=a:i.set(t.id,{hit:t,score:a})}))(l),a(s),[...i.values()].sort((t,e)=>e.score-t.score).slice(0,c).map(({hit:t,score:e})=>({...t,score:e}))}}catch{}return o}async denseQuery(t,e,i){let a=await t.query({queryEmbeddings:[e],nResults:i,include:["documents","metadatas","distances"]});return this.parseQueryResult(a)}async documentQuery(t,e,i){let a=await t.get({whereDocument:{$contains:e},limit:i,include:["documents","metadatas"]});return this.parseGetResult(a)}parseGetResult(t){if(!t.ids||0===t.ids.length)return[];let e=t.ids,i=t.documents??[],a=t.metadatas??[];return e.map((t,e)=>{let{title:n,url:r,source:o,documentId:l,chunkIndex:s,...c}=a[e]??{};return{id:t,score:1,text:i[e]??"",title:n??"Untitled",url:r||void 0,documentId:l??"",metadata:Object.keys(c).length>0?c:void 0}})}parseQueryResult(t){if(!t.ids?.[0])return[];let e=t.ids[0],i=t.documents?.[0]??[],a=t.metadatas?.[0]??[],n=t.distances?.[0]??[];return e.map((t,e)=>{let r=a[e]??{},o=n[e]??0,{title:l,url:s,source:c,documentId:d,chunkIndex:u,...h}=r;return{id:t,score:1/(1+o),text:i[e]??"",title:l??"Untitled",url:s||void 0,documentId:d??"",metadata:Object.keys(h).length>0?h:void 0}})}async testConnection(t){let e;try{e=await this.getClient()}catch(t){throw Error(`Failed to connect to Chroma: ${t.message}`)}try{await e.heartbeat()}catch(e){let t=e.message??"";if(t.includes("401")||t.includes("Unauthorized")||t.includes("403")||t.includes("Forbidden"))throw Error("Invalid Chroma credentials. Please check your auth token or API key.");if(t.includes("ECONNREFUSED")||t.includes("fetch failed"))throw Error("Could not reach the Chroma server. Is it running and accessible at the configured URL?");throw Error(`Failed to reach Chroma server: ${t}`)}try{await e.listCollections()}catch(t){throw Error(`Connected to Chroma but failed to access the database or tenant. Please verify your tenant and database names. Error: ${t.message}`)}}}])},917038,t=>{t.v(e=>Promise.all(["server/chunks/[externals]_chromadb_0goja~y._.js"].map(e=>t.l(e))).then(()=>e(373961)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0dlwf67._.js.map
|