Implement knowledge base page routing and enhance ComponentsKnowledgePage
- Update the main knowledge page to support a list mode. - Add new pages for creating and editing knowledge bases, utilizing the ComponentsKnowledgePage component with appropriate modes. - Introduce a new API method for retrieving knowledge base details by ID. - Enhance the ComponentsKnowledgePage to handle different modes (list, create, edit) and improve user interaction with knowledge bases.
This commit is contained in:
10
frontend/src/app/components/knowledge/[id]/page.tsx
Normal file
10
frontend/src/app/components/knowledge/[id]/page.tsx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
import { ComponentsKnowledgePage } from "@/components/pages/ComponentsKnowledgePage";
|
||||||
|
|
||||||
|
export default async function Page({
|
||||||
|
params,
|
||||||
|
}: {
|
||||||
|
params: Promise<{ id: string }>;
|
||||||
|
}) {
|
||||||
|
const { id } = await params;
|
||||||
|
return <ComponentsKnowledgePage mode="edit" knowledgeBaseId={id} />;
|
||||||
|
}
|
||||||
5
frontend/src/app/components/knowledge/new/page.tsx
Normal file
5
frontend/src/app/components/knowledge/new/page.tsx
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
import { ComponentsKnowledgePage } from "@/components/pages/ComponentsKnowledgePage";
|
||||||
|
|
||||||
|
export default function Page() {
|
||||||
|
return <ComponentsKnowledgePage mode="create" />;
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import { ComponentsKnowledgePage } from "@/components/pages/ComponentsKnowledgePage";
|
import { ComponentsKnowledgePage } from "@/components/pages/ComponentsKnowledgePage";
|
||||||
|
|
||||||
export default function Page() {
|
export default function Page() {
|
||||||
return <ComponentsKnowledgePage />;
|
return <ComponentsKnowledgePage mode="list" />;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3041,7 +3041,9 @@ function TextAreaField({
|
|||||||
placeholder={placeholder}
|
placeholder={placeholder}
|
||||||
onChange={(event) => onChange(event.target.value)}
|
onChange={(event) => onChange(event.target.value)}
|
||||||
rows={rows}
|
rows={rows}
|
||||||
className="resize-none border-hairline-strong bg-background text-foreground placeholder:text-muted-soft"
|
// Override ui/textarea's field-sizing-content so `rows` sets a real height
|
||||||
|
// instead of collapsing to min-h-16 when the value is short.
|
||||||
|
className="field-sizing-fixed min-h-32 resize-y border-hairline-strong bg-background text-foreground placeholder:text-muted-soft"
|
||||||
/>
|
/>
|
||||||
</label>
|
</label>
|
||||||
);
|
);
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -377,6 +377,7 @@ export type KnowledgeBaseUpsert = Pick<
|
|||||||
|
|
||||||
export const knowledgeBasesApi = {
|
export const knowledgeBasesApi = {
|
||||||
list: () => request<KnowledgeBase[]>("/api/knowledge-bases"),
|
list: () => request<KnowledgeBase[]>("/api/knowledge-bases"),
|
||||||
|
get: (id: string) => request<KnowledgeBase>(`/api/knowledge-bases/${id}`),
|
||||||
create: (body: KnowledgeBaseUpsert) =>
|
create: (body: KnowledgeBaseUpsert) =>
|
||||||
request<KnowledgeBase>("/api/knowledge-bases", { method: "POST", body: JSON.stringify(body) }),
|
request<KnowledgeBase>("/api/knowledge-bases", { method: "POST", body: JSON.stringify(body) }),
|
||||||
update: (id: string, body: KnowledgeBaseUpsert) =>
|
update: (id: string, body: KnowledgeBaseUpsert) =>
|
||||||
|
|||||||
Reference in New Issue
Block a user