larkup 0.1.29 → 0.1.31
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 +5 -5
- package/.next/diagnostics/route-bundle-stats.json +35 -35
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/next-minimal-server.js.nft.json +1 -1
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.js +4 -4
- package/.next/required-server-files.json +4 -4
- package/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- 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/build-manifest.json +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +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/build-manifest.json +2 -2
- package/.next/server/app/analytics/page.js.nft.json +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/analytics/route.js.nft.json +1 -1
- package/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/.next/server/app/api/chat/status/route.js.nft.json +1 -1
- package/.next/server/app/api/chat/suggestions/route.js.nft.json +1 -1
- package/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/server/app/api/config/test/route.js.nft.json +1 -1
- package/.next/server/app/api/config/test-embedding/route.js.nft.json +1 -1
- package/.next/server/app/api/config/test-llm/route.js.nft.json +1 -1
- package/.next/server/app/api/config/test-provider/route.js +4 -4
- package/.next/server/app/api/config/test-provider/route.js.nft.json +1 -1
- package/.next/server/app/api/config/verify/route.js +3 -3
- package/.next/server/app/api/config/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/connections/route.js.nft.json +1 -1
- package/.next/server/app/api/connections/webhook/route.js.nft.json +1 -1
- package/.next/server/app/api/demo/route.js.nft.json +1 -1
- package/.next/server/app/api/deploy/cloud-project/route.js.nft.json +1 -1
- package/.next/server/app/api/deploy/ssh/route.js.nft.json +1 -1
- package/.next/server/app/api/deployment/blob-setup/route.js.nft.json +1 -1
- package/.next/server/app/api/deployment/config/route.js.nft.json +1 -1
- package/.next/server/app/api/describe-image/route.js.nft.json +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.nft.json +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.nft.json +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.nft.json +1 -1
- package/.next/server/app/api/documents/route.js.nft.json +1 -1
- package/.next/server/app/api/firecrawl/local/route.js.nft.json +1 -1
- package/.next/server/app/api/index/route.js.nft.json +1 -1
- package/.next/server/app/api/integrations/notion/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/integrations/notion/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/[toolId]/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/route.js.nft.json +1 -1
- package/.next/server/app/api/media/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/media/process/route.js.nft.json +1 -1
- package/.next/server/app/api/media/route.js.nft.json +1 -1
- package/.next/server/app/api/media/stream/route.js.nft.json +1 -1
- package/.next/server/app/api/models/route.js.nft.json +1 -1
- package/.next/server/app/api/parse-file/route.js.nft.json +1 -1
- package/.next/server/app/api/proxy/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/sandbox/route.js.nft.json +1 -1
- package/.next/server/app/api/search/bing/route.js.nft.json +1 -1
- package/.next/server/app/api/search/brave/route.js.nft.json +1 -1
- package/.next/server/app/api/search/exa/route.js.nft.json +1 -1
- package/.next/server/app/api/search/google/route.js.nft.json +1 -1
- package/.next/server/app/api/search/route.js.nft.json +1 -1
- package/.next/server/app/api/search/tavily/route.js.nft.json +1 -1
- package/.next/server/app/api/search/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/server/agent/route.js.nft.json +1 -1
- package/.next/server/app/api/server/download/route.js.nft.json +1 -1
- package/.next/server/app/api/server/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/server/local/route.js.nft.json +1 -1
- package/.next/server/app/api/servers/route.js.nft.json +1 -1
- package/.next/server/app/api/tabular/query/route.js.nft.json +1 -1
- package/.next/server/app/api/tabular/route.js.nft.json +1 -1
- package/.next/server/app/api/upload-file/route.js.nft.json +1 -1
- package/.next/server/app/api/uploads/[...slug]/route.js.nft.json +1 -1
- package/.next/server/app/api/vector-stores/install/route.js.nft.json +1 -1
- package/.next/server/app/api/vector-stores/status/route.js.nft.json +1 -1
- package/.next/server/app/chat/page/build-manifest.json +2 -2
- package/.next/server/app/chat/page.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/build-manifest.json +2 -2
- package/.next/server/app/data/page.js.nft.json +1 -1
- 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/favicon.ico/route.js.nft.json +1 -1
- 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/build-manifest.json +2 -2
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page/build-manifest.json +2 -2
- package/.next/server/app/settings/page/server-reference-manifest.json +3 -3
- package/.next/server/app/settings/page.js.nft.json +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/0598_next_dist_esm_build_templates_app-route_0kbcuk-.js +17 -3
- package/.next/server/chunks/0598_next_dist_esm_build_templates_app-route_1f4h7rr.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__01al2n0._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__067hiof._.js +18 -6
- package/.next/server/chunks/[root-of-the-server]__0a_0ywc._.js +18 -6
- package/.next/server/chunks/[root-of-the-server]__0u17zp8._.js +18 -6
- package/.next/server/chunks/{[root-of-the-server]__1xuhh_i._.js → [root-of-the-server]__16jk_se._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__1ahdfq9._.js +18 -6
- package/.next/server/chunks/[root-of-the-server]__1o3rcbz._.js +2 -1
- package/.next/server/chunks/{[root-of-the-server]__10gcb7d._.js → [root-of-the-server]__1qh2h5v._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__1s9is1o._.js +2 -1
- package/.next/server/chunks/[root-of-the-server]__1vsvck0._.js +18 -6
- package/.next/server/chunks/[root-of-the-server]__1wy6wes._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1zptg4z._.js +2 -1
- package/.next/server/chunks/packages_core_src_generator_generate-server_ts_11-w3m3._.js +2 -2
- package/.next/server/chunks/packages_core_src_generator_server-runtime_ts_1_68l7t._.js +4 -4
- package/.next/server/chunks/packages_marketplace_src_125_g2p._.js +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__0wdatpx._.js → [root-of-the-server]__0m21fli._.js} +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__1r9ap67._.js → [root-of-the-server]__0t8ud_u._.js} +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__046ldu_._.js → [root-of-the-server]__0xyo3ni._.js} +1 -1
- package/.next/server/chunks/ssr/{_0k81--x._.js → _0ckxy33._.js} +2 -2
- package/.next/server/chunks/ssr/_169pdlf._.js +6 -6
- package/.next/server/chunks/ssr/_1hetwwu._.js +4 -3
- package/.next/server/chunks/ssr/_1iff9ia._.js +1 -1
- package/.next/server/chunks/ssr/_1yqlx1m._.js +1 -1
- package/.next/server/chunks/ssr/apps_web_components_analytics_analytics-dashboard_tsx_1056-z3._.js +1 -1
- package/.next/server/chunks/ssr/packages_core_src_generator_generate-server_ts_15zzrn2._.js +2 -2
- package/.next/server/functions-config-manifest.json +3 -1
- package/.next/server/middleware-build-manifest.js +5 -5
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +4 -4
- package/.next/static/chunks/{1sh7d5tt49x8b.js → 0ff5osu771ajz.js} +6 -6
- package/.next/static/chunks/{1z4nte07k3dt6.js → 1-afr-snks55m.js} +1 -1
- package/.next/static/chunks/{1dykihoo_1ae5.js → 1fz_0-qb5r5wd.js} +1 -1
- package/.next/static/chunks/{3g_wl1fri6jb-.js → 21_6-9hjj2i68.js} +1 -1
- package/.next/static/chunks/{13kyiy7q3of41.js → 2jqjx4-rh414_.js} +1 -1
- package/.next/static/chunks/2jrpgzxyrmuqp.js +121 -0
- package/.next/static/chunks/390ds7l_plpmd.js +1 -0
- package/.next/static/chunks/{3een1tiktxr6a.js → 3zw6tgf7mxo39.js} +1 -1
- package/.next/static/chunks/{turbopack-2qt7vn_ocj4ao.js → turbopack-2gu-fmc6o5wkn.js} +1 -1
- package/CHANGELOG.md +33 -0
- package/app/api/chat/route.ts +14 -1
- package/app/api/chat/tools.ts +7 -3
- package/app/api/config/test-provider/route.ts +16 -18
- package/app/api/config/verify/route.ts +5 -7
- package/app/api/firecrawl/local/route.ts +7 -4
- package/app/api/jobs/route.ts +1 -2
- package/app/api/marketplace/[toolId]/route.ts +1 -0
- package/archive/redesign-v2/app/configure/page.tsx +53 -0
- package/archive/redesign-v2/app/demo/page.tsx +15 -0
- package/archive/redesign-v2/app/server/page.tsx +22 -0
- package/archive/redesign-v2/app/simple/chat/page.tsx +17 -0
- package/archive/redesign-v2/app/simple/docs/page.tsx +21 -0
- package/archive/redesign-v2/app/simple/settings/page.tsx +1104 -0
- package/archive/redesign-v2/app-routes/configure/page.tsx +53 -0
- package/archive/redesign-v2/app-routes/demo/page.tsx +15 -0
- package/archive/redesign-v2/app-routes/server/page.tsx +22 -0
- package/archive/redesign-v2/app-routes/simple/chat/page.tsx +17 -0
- package/archive/redesign-v2/app-routes/simple/docs/page.tsx +21 -0
- package/archive/redesign-v2/app-routes/simple/layout.tsx +9 -0
- package/archive/redesign-v2/app-routes/simple/settings/page.tsx +1104 -0
- package/archive/redesign-v2/components/app-sidebar.tsx +188 -0
- package/archive/redesign-v2/components/app-topnav.tsx +195 -0
- package/archive/redesign-v2/components/global-settings.tsx +288 -0
- package/archive/redesign-v2/components/simple/simple-sidebar.tsx +171 -0
- package/archive/redesign-v2/components/simple/simple-topnav.tsx +175 -0
- package/components/analytics/analytics-dashboard.tsx +1 -1
- package/components/data/firecrawl-notice.tsx +41 -98
- package/components/data/media-panel.tsx +0 -3
- package/components/data/scrape-panel.tsx +17 -1
- package/components/onboarding/welcome-screen.tsx +45 -15
- package/components/settings/general-section.tsx +15 -10
- package/components/settings/server-section.tsx +3 -3
- package/lib/error-formatter.ts +19 -4
- package/next-env.d.ts +1 -1
- package/package.json +7 -7
- package/.next/static/chunks/01qmngac69n9j.js +0 -1
- package/.next/static/chunks/102b8vinedggz.js +0 -120
- /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → kaW1RhJBmrNB5F_JAJ6QO}/_buildManifest.js +0 -0
- /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → kaW1RhJBmrNB5F_JAJ6QO}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → kaW1RhJBmrNB5F_JAJ6QO}/_ssgManifest.js +0 -0
|
@@ -11,6 +11,7 @@ import { createAnthropic } from '@ai-sdk/anthropic';
|
|
|
11
11
|
import { createGateway } from '@ai-sdk/gateway';
|
|
12
12
|
import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
|
|
13
13
|
import type { CustomModelConfig } from '@larkup/core/types';
|
|
14
|
+
import { formatErrorMessage } from '@/lib/error-formatter';
|
|
14
15
|
|
|
15
16
|
export const runtime = 'nodejs';
|
|
16
17
|
|
|
@@ -178,13 +179,10 @@ export async function POST(request: Request) {
|
|
|
178
179
|
);
|
|
179
180
|
}
|
|
180
181
|
|
|
181
|
-
return NextResponse.json(
|
|
182
|
-
{ error: `Embedding verification failed: ${msg}` },
|
|
183
|
-
{ status: 400 },
|
|
184
|
-
);
|
|
182
|
+
return NextResponse.json({ error: formatErrorMessage(err) }, { status: 400 });
|
|
185
183
|
}
|
|
186
184
|
} catch (err: any) {
|
|
187
|
-
return NextResponse.json({ error:
|
|
185
|
+
return NextResponse.json({ error: formatErrorMessage(err) }, { status: 400 });
|
|
188
186
|
}
|
|
189
187
|
}
|
|
190
188
|
|
|
@@ -252,10 +250,10 @@ export async function POST(request: Request) {
|
|
|
252
250
|
);
|
|
253
251
|
}
|
|
254
252
|
|
|
255
|
-
return NextResponse.json({ error:
|
|
253
|
+
return NextResponse.json({ error: formatErrorMessage(err) }, { status: 400 });
|
|
256
254
|
}
|
|
257
255
|
} catch (err: any) {
|
|
258
|
-
return NextResponse.json({ error:
|
|
256
|
+
return NextResponse.json({ error: formatErrorMessage(err) }, { status: 400 });
|
|
259
257
|
}
|
|
260
258
|
}
|
|
261
259
|
|
|
@@ -34,7 +34,7 @@ export async function GET() {
|
|
|
34
34
|
compose: sibling.available,
|
|
35
35
|
message: sibling.available
|
|
36
36
|
? 'Crawler service is running.'
|
|
37
|
-
: 'Crawler service is not
|
|
37
|
+
: 'Crawler service is not available for this Docker installation.',
|
|
38
38
|
},
|
|
39
39
|
runtimeEnv,
|
|
40
40
|
});
|
|
@@ -67,14 +67,17 @@ export async function POST(req: Request) {
|
|
|
67
67
|
|
|
68
68
|
if (runtimeEnv === 'docker') {
|
|
69
69
|
if (action === 'start') {
|
|
70
|
-
|
|
70
|
+
let state = await connectDockerSibling();
|
|
71
|
+
if (!state.running) {
|
|
72
|
+
state = await startLocal();
|
|
73
|
+
}
|
|
71
74
|
const { apiKey, ...safe } = state;
|
|
72
75
|
return NextResponse.json({ state: { ...safe, hasKey: Boolean(apiKey) } });
|
|
73
76
|
} else {
|
|
74
|
-
const state = await
|
|
77
|
+
const state = await stopLocal();
|
|
75
78
|
const { apiKey, ...safe } = state;
|
|
76
79
|
return NextResponse.json({
|
|
77
|
-
state: { ...safe,
|
|
80
|
+
state: { ...safe, hasKey: Boolean(apiKey) },
|
|
78
81
|
});
|
|
79
82
|
}
|
|
80
83
|
}
|
package/app/api/jobs/route.ts
CHANGED
|
@@ -23,8 +23,7 @@ export async function POST(req: Request) {
|
|
|
23
23
|
if (!(await isFirecrawlConfigured())) {
|
|
24
24
|
return NextResponse.json(
|
|
25
25
|
{
|
|
26
|
-
error:
|
|
27
|
-
'No Firecrawl available. Launch a local instance or set FIRECRAWL_API_KEY to run scraping jobs.',
|
|
26
|
+
error: 'No web crawler is available. Choose and configure a crawler provider in Settings.',
|
|
28
27
|
},
|
|
29
28
|
{ status: 401 },
|
|
30
29
|
);
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useState, useCallback } from "react";
|
|
4
|
+
import { PageHeader } from "@/components/page-header";
|
|
5
|
+
import {
|
|
6
|
+
ConfigureForm,
|
|
7
|
+
type ConfigureFormHandle,
|
|
8
|
+
} from "@/components/configure/configure-form";
|
|
9
|
+
import { Button } from "@/components/ui/button";
|
|
10
|
+
import { Loader2, Save, Check } from "lucide-react";
|
|
11
|
+
|
|
12
|
+
export default function ConfigurePage() {
|
|
13
|
+
const [handle, setHandle] = useState<ConfigureFormHandle | null>(null);
|
|
14
|
+
|
|
15
|
+
const onHandleReady = useCallback((h: ConfigureFormHandle) => {
|
|
16
|
+
setHandle({ ...h });
|
|
17
|
+
}, []);
|
|
18
|
+
|
|
19
|
+
const dirty = handle?.dirty ?? false;
|
|
20
|
+
const saving = handle?.saving ?? false;
|
|
21
|
+
|
|
22
|
+
return (
|
|
23
|
+
<div className="flex min-h-full flex-col">
|
|
24
|
+
<PageHeader
|
|
25
|
+
eyebrow="Step 1 · Configure"
|
|
26
|
+
title="Pipeline configuration"
|
|
27
|
+
description="Choose your embedding model, indexing strategy, and vector store. "
|
|
28
|
+
actions={
|
|
29
|
+
<Button
|
|
30
|
+
size="lg"
|
|
31
|
+
variant={dirty ? "default" : "default"}
|
|
32
|
+
disabled={saving || !dirty}
|
|
33
|
+
onClick={() => handle?.requestSave()}
|
|
34
|
+
className="min-w-[110px] px-3.5 h-9.5 rounded-md transition-all text-white/90 text-[13px]"
|
|
35
|
+
>
|
|
36
|
+
{saving ? (
|
|
37
|
+
<>
|
|
38
|
+
<Loader2 className="size-4 animate-spin" />
|
|
39
|
+
Saving…
|
|
40
|
+
</>
|
|
41
|
+
) : (
|
|
42
|
+
<>
|
|
43
|
+
<Save className="size-4" />
|
|
44
|
+
Save Configuration
|
|
45
|
+
</>
|
|
46
|
+
)}
|
|
47
|
+
</Button>
|
|
48
|
+
}
|
|
49
|
+
/>
|
|
50
|
+
<ConfigureForm onHandleReady={onHandleReady} />
|
|
51
|
+
</div>
|
|
52
|
+
);
|
|
53
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { PageHeader } from "@/components/page-header"
|
|
2
|
+
import { DemoWorkspace } from "@/components/demo/demo-workspace"
|
|
3
|
+
|
|
4
|
+
export default function DemoPage() {
|
|
5
|
+
return (
|
|
6
|
+
<div className="flex min-h-full flex-col">
|
|
7
|
+
<PageHeader
|
|
8
|
+
eyebrow="Step 5 · Demo"
|
|
9
|
+
title="Query your RAG pipeline"
|
|
10
|
+
description="Send a test question and inspect the top-k documents your pipeline returns. If a generated server is running, the query hits it directly; otherwise it runs in-process against your store."
|
|
11
|
+
/>
|
|
12
|
+
<DemoWorkspace />
|
|
13
|
+
</div>
|
|
14
|
+
)
|
|
15
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { PageHeader } from "@/components/page-header";
|
|
5
|
+
import { ServerWorkspace } from "@/components/server/server-workspace";
|
|
6
|
+
import { DeployButton } from "@/components/server/deploy-button";
|
|
7
|
+
|
|
8
|
+
export default function ServerPage() {
|
|
9
|
+
const [serverId, setServerId] = useState<string>("default");
|
|
10
|
+
|
|
11
|
+
return (
|
|
12
|
+
<div className="flex min-h-full flex-col">
|
|
13
|
+
<PageHeader
|
|
14
|
+
eyebrow="Step 4 · Server"
|
|
15
|
+
title="Generate & launch your Custom AI Model server"
|
|
16
|
+
description="Emit a standalone, deployable AI server tailored to your selected vector store"
|
|
17
|
+
actions={<DeployButton serverId={serverId} />}
|
|
18
|
+
/>
|
|
19
|
+
<ServerWorkspace onServerId={setServerId} />
|
|
20
|
+
</div>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ChatWorkspace } from "@/components/chat/chat-workspace"
|
|
2
|
+
|
|
3
|
+
export default function SimpleChatPage() {
|
|
4
|
+
return (
|
|
5
|
+
<div className="flex flex-col overflow-hidden" style={{ height: "100%" }}>
|
|
6
|
+
<div className="px-6 pt-5 pb-1 md:px-8">
|
|
7
|
+
<h1 className="text-lg font-semibold tracking-tight text-foreground">
|
|
8
|
+
Chat
|
|
9
|
+
</h1>
|
|
10
|
+
<p className="text-sm text-muted-foreground">
|
|
11
|
+
Ask questions and get AI-powered answers from your documents.
|
|
12
|
+
</p>
|
|
13
|
+
</div>
|
|
14
|
+
<ChatWorkspace />
|
|
15
|
+
</div>
|
|
16
|
+
)
|
|
17
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DataWorkspace } from "@/components/data/data-workspace"
|
|
2
|
+
import { SimpleIndexButton } from "@/components/simple/simple-index-button"
|
|
3
|
+
|
|
4
|
+
export default function SimpleDocsPage() {
|
|
5
|
+
return (
|
|
6
|
+
<div className="flex min-h-full flex-col">
|
|
7
|
+
<div className="flex items-center justify-between px-6 pt-5 pb-4 md:px-8">
|
|
8
|
+
<div>
|
|
9
|
+
<h1 className="text-lg font-semibold tracking-tight text-foreground">
|
|
10
|
+
Documents
|
|
11
|
+
</h1>
|
|
12
|
+
<p className="text-sm text-muted-foreground">
|
|
13
|
+
Upload files, paste text, or scrape the web to build your knowledge base.
|
|
14
|
+
</p>
|
|
15
|
+
</div>
|
|
16
|
+
<SimpleIndexButton />
|
|
17
|
+
</div>
|
|
18
|
+
<DataWorkspace />
|
|
19
|
+
</div>
|
|
20
|
+
)
|
|
21
|
+
}
|