@djangocfg/ext-knowbase 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/README.md +177 -0
  2. package/dist/chunk-GNRC54ON.js +4308 -0
  3. package/dist/hooks.cjs +6003 -0
  4. package/dist/hooks.d.cts +610 -0
  5. package/dist/hooks.d.ts +610 -0
  6. package/dist/hooks.js +1486 -0
  7. package/dist/index.cjs +4450 -0
  8. package/dist/index.d.cts +4398 -0
  9. package/dist/index.d.ts +4398 -0
  10. package/dist/index.js +1 -0
  11. package/package.json +81 -0
  12. package/src/api/generated/ext_knowbase/_utils/fetchers/ext_knowbase__knowbase.ts +2983 -0
  13. package/src/api/generated/ext_knowbase/_utils/fetchers/index.ts +28 -0
  14. package/src/api/generated/ext_knowbase/_utils/hooks/ext_knowbase__knowbase.ts +999 -0
  15. package/src/api/generated/ext_knowbase/_utils/hooks/index.ts +28 -0
  16. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItem.schema.ts +33 -0
  17. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItemChunk.schema.ts +29 -0
  18. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItemChunkDetail.schema.ts +30 -0
  19. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItemChunkRequest.schema.ts +22 -0
  20. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItemDetail.schema.ts +35 -0
  21. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveItemRequest.schema.ts +22 -0
  22. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveProcessingResult.schema.ts +26 -0
  23. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveSearchRequestRequest.schema.ts +25 -0
  24. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveSearchResult.schema.ts +24 -0
  25. package/src/api/generated/ext_knowbase/_utils/schemas/ArchiveStatistics.schema.ts +28 -0
  26. package/src/api/generated/ext_knowbase/_utils/schemas/ChatHistory.schema.ts +22 -0
  27. package/src/api/generated/ext_knowbase/_utils/schemas/ChatMessage.schema.ts +27 -0
  28. package/src/api/generated/ext_knowbase/_utils/schemas/ChatQueryRequest.schema.ts +22 -0
  29. package/src/api/generated/ext_knowbase/_utils/schemas/ChatResponse.schema.ts +26 -0
  30. package/src/api/generated/ext_knowbase/_utils/schemas/ChatResponseRequest.schema.ts +26 -0
  31. package/src/api/generated/ext_knowbase/_utils/schemas/ChatSession.schema.ts +29 -0
  32. package/src/api/generated/ext_knowbase/_utils/schemas/ChatSessionCreateRequest.schema.ts +22 -0
  33. package/src/api/generated/ext_knowbase/_utils/schemas/ChatSessionRequest.schema.ts +25 -0
  34. package/src/api/generated/ext_knowbase/_utils/schemas/ChatSource.schema.ts +21 -0
  35. package/src/api/generated/ext_knowbase/_utils/schemas/ChatSourceRequest.schema.ts +21 -0
  36. package/src/api/generated/ext_knowbase/_utils/schemas/ChunkRevectorizationRequestRequest.schema.ts +20 -0
  37. package/src/api/generated/ext_knowbase/_utils/schemas/Document.schema.ts +32 -0
  38. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentArchive.schema.ts +44 -0
  39. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentArchiveDetail.schema.ts +48 -0
  40. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentArchiveList.schema.ts +35 -0
  41. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentArchiveRequest.schema.ts +21 -0
  42. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentCategory.schema.ts +23 -0
  43. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentCategoryRequest.schema.ts +21 -0
  44. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentCreateRequest.schema.ts +22 -0
  45. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentProcessingStatus.schema.ts +23 -0
  46. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentRequest.schema.ts +22 -0
  47. package/src/api/generated/ext_knowbase/_utils/schemas/DocumentStats.schema.ts +25 -0
  48. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedArchiveItemChunkList.schema.ts +24 -0
  49. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedArchiveItemList.schema.ts +24 -0
  50. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedArchiveSearchResultList.schema.ts +24 -0
  51. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedChatResponseList.schema.ts +24 -0
  52. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedChatSessionList.schema.ts +24 -0
  53. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedDocumentArchiveListList.schema.ts +24 -0
  54. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedDocumentList.schema.ts +24 -0
  55. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedPublicCategoryList.schema.ts +24 -0
  56. package/src/api/generated/ext_knowbase/_utils/schemas/PaginatedPublicDocumentListList.schema.ts +24 -0
  57. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedArchiveItemChunkRequest.schema.ts +22 -0
  58. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedArchiveItemRequest.schema.ts +22 -0
  59. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedChatResponseRequest.schema.ts +26 -0
  60. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedChatSessionRequest.schema.ts +25 -0
  61. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedDocumentArchiveRequest.schema.ts +21 -0
  62. package/src/api/generated/ext_knowbase/_utils/schemas/PatchedDocumentRequest.schema.ts +22 -0
  63. package/src/api/generated/ext_knowbase/_utils/schemas/PublicCategory.schema.ts +21 -0
  64. package/src/api/generated/ext_knowbase/_utils/schemas/PublicDocument.schema.ts +25 -0
  65. package/src/api/generated/ext_knowbase/_utils/schemas/PublicDocumentList.schema.ts +24 -0
  66. package/src/api/generated/ext_knowbase/_utils/schemas/VectorizationResult.schema.ts +24 -0
  67. package/src/api/generated/ext_knowbase/_utils/schemas/VectorizationStatistics.schema.ts +26 -0
  68. package/src/api/generated/ext_knowbase/_utils/schemas/index.ts +70 -0
  69. package/src/api/generated/ext_knowbase/api-instance.ts +131 -0
  70. package/src/api/generated/ext_knowbase/client.ts +301 -0
  71. package/src/api/generated/ext_knowbase/enums.ts +241 -0
  72. package/src/api/generated/ext_knowbase/errors.ts +116 -0
  73. package/src/api/generated/ext_knowbase/ext_knowbase__knowbase/client.ts +666 -0
  74. package/src/api/generated/ext_knowbase/ext_knowbase__knowbase/index.ts +2 -0
  75. package/src/api/generated/ext_knowbase/ext_knowbase__knowbase/models.ts +1120 -0
  76. package/src/api/generated/ext_knowbase/http.ts +103 -0
  77. package/src/api/generated/ext_knowbase/index.ts +273 -0
  78. package/src/api/generated/ext_knowbase/logger.ts +259 -0
  79. package/src/api/generated/ext_knowbase/retry.ts +175 -0
  80. package/src/api/generated/ext_knowbase/schema.json +5865 -0
  81. package/src/api/generated/ext_knowbase/storage.ts +161 -0
  82. package/src/api/generated/ext_knowbase/validation-events.ts +133 -0
  83. package/src/api/index.ts +9 -0
  84. package/src/components/Chat/ChatUIContext.tsx +110 -0
  85. package/src/components/Chat/ChatWidget.tsx +476 -0
  86. package/src/components/Chat/README.md +122 -0
  87. package/src/components/Chat/components/MessageInput.tsx +124 -0
  88. package/src/components/Chat/components/MessageList.tsx +169 -0
  89. package/src/components/Chat/components/SessionList.tsx +192 -0
  90. package/src/components/Chat/components/index.ts +9 -0
  91. package/src/components/Chat/hooks/index.ts +6 -0
  92. package/src/components/Chat/hooks/useInfiniteSessions.ts +81 -0
  93. package/src/components/Chat/index.tsx +45 -0
  94. package/src/components/Chat/types.ts +81 -0
  95. package/src/config.ts +20 -0
  96. package/src/contexts/knowbase/ChatContext.tsx +173 -0
  97. package/src/contexts/knowbase/DocumentsContext.tsx +306 -0
  98. package/src/contexts/knowbase/KnowbaseProvider.tsx +47 -0
  99. package/src/contexts/knowbase/SessionsContext.tsx +175 -0
  100. package/src/contexts/knowbase/index.ts +63 -0
  101. package/src/contexts/knowbase/types.ts +69 -0
  102. package/src/hooks/index.ts +28 -0
  103. package/src/index.ts +22 -0
  104. package/src/utils/logger.ts +10 -0
@@ -0,0 +1,175 @@
1
+ /**
2
+ * Knowbase Sessions Context
3
+ * Context for managing chat sessions
4
+ */
5
+
6
+ 'use client';
7
+
8
+ import React, { createContext, useContext, type ReactNode } from 'react';
9
+
10
+ import { apiKnowbase } from '../../api';
11
+ import {
12
+ useKnowbaseAdminSessionsList,
13
+ useKnowbaseAdminSessionsRetrieve,
14
+ useCreateKnowbaseAdminSessionsCreate,
15
+ useUpdateKnowbaseAdminSessionsUpdate,
16
+ usePartialUpdateKnowbaseAdminSessionsPartialUpdate,
17
+ useDeleteKnowbaseAdminSessionsDestroy,
18
+ useCreateKnowbaseAdminSessionsActivateCreate,
19
+ useCreateKnowbaseAdminSessionsArchiveCreate,
20
+ } from '../../api/generated/ext_knowbase/_utils/hooks';
21
+ import type {
22
+ PaginatedChatSessionList,
23
+ ChatSession,
24
+ ChatSessionCreateRequest,
25
+ ChatSessionRequest,
26
+ PatchedChatSessionRequest,
27
+ } from './types';
28
+
29
+ // ─────────────────────────────────────────────────────────────────────────
30
+ // Context Type
31
+ // ─────────────────────────────────────────────────────────────────────────
32
+
33
+ export interface KnowbaseSessionsContextValue {
34
+ // Sessions list
35
+ sessions: PaginatedChatSessionList | undefined;
36
+ isLoadingSessions: boolean;
37
+ sessionsError: Error | undefined;
38
+ refreshSessions: () => Promise<void>;
39
+
40
+ // Session operations
41
+ getSession: (id: string) => Promise<ChatSession | undefined>;
42
+ createSession: (data: ChatSessionCreateRequest) => Promise<ChatSession>;
43
+ updateSession: (id: string, data: ChatSessionRequest) => Promise<ChatSession>;
44
+ partialUpdateSession: (id: string, data: PatchedChatSessionRequest) => Promise<ChatSession>;
45
+ deleteSession: (id: string) => Promise<void>;
46
+
47
+ // Session actions
48
+ activateSession: (id: string, data: ChatSessionRequest) => Promise<ChatSession>;
49
+ archiveSession: (id: string, data: ChatSessionRequest) => Promise<ChatSession>;
50
+ }
51
+
52
+ // ─────────────────────────────────────────────────────────────────────────
53
+ // Context
54
+ // ─────────────────────────────────────────────────────────────────────────
55
+
56
+ const KnowbaseSessionsContext = createContext<KnowbaseSessionsContextValue | undefined>(undefined);
57
+
58
+ // ─────────────────────────────────────────────────────────────────────────
59
+ // Provider
60
+ // ─────────────────────────────────────────────────────────────────────────
61
+
62
+ export function KnowbaseSessionsProvider({ children }: { children: ReactNode }) {
63
+ // List sessions (first page only for count)
64
+ const {
65
+ data: sessions,
66
+ error: sessionsError,
67
+ isLoading: isLoadingSessions,
68
+ mutate: mutateSessions,
69
+ } = useKnowbaseAdminSessionsList({ page: 1, page_size: 1 }, apiKnowbase);
70
+
71
+ const refreshSessions = async () => {
72
+ await mutateSessions();
73
+ };
74
+
75
+ // Mutations
76
+ const createSessionMutation = useCreateKnowbaseAdminSessionsCreate();
77
+ const updateSessionMutation = useUpdateKnowbaseAdminSessionsUpdate();
78
+ const partialUpdateSessionMutation = usePartialUpdateKnowbaseAdminSessionsPartialUpdate();
79
+ const deleteSessionMutation = useDeleteKnowbaseAdminSessionsDestroy();
80
+ const activateSessionMutation = useCreateKnowbaseAdminSessionsActivateCreate();
81
+ const archiveSessionMutation = useCreateKnowbaseAdminSessionsArchiveCreate();
82
+
83
+ // Get single session
84
+ const getSession = async (id: string): Promise<ChatSession | undefined> => {
85
+ const { data } = useKnowbaseAdminSessionsRetrieve(id, apiKnowbase);
86
+ return data;
87
+ };
88
+
89
+ // Create session
90
+ const createSession = async (data: ChatSessionCreateRequest): Promise<ChatSession> => {
91
+ const result = await createSessionMutation(data, apiKnowbase);
92
+ await refreshSessions();
93
+ return result as ChatSession;
94
+ };
95
+
96
+ // Update session
97
+ const updateSession = async (id: string, data: ChatSessionRequest): Promise<ChatSession> => {
98
+ const result = await updateSessionMutation(id, data, apiKnowbase);
99
+ await refreshSessions();
100
+ return result as ChatSession;
101
+ };
102
+
103
+ // Partial update session
104
+ const partialUpdateSession = async (
105
+ id: string,
106
+ data: PatchedChatSessionRequest
107
+ ): Promise<ChatSession> => {
108
+ const result = await partialUpdateSessionMutation(id, data, apiKnowbase);
109
+ await refreshSessions();
110
+ return result as ChatSession;
111
+ };
112
+
113
+ // Delete session
114
+ const deleteSession = async (id: string): Promise<void> => {
115
+ await deleteSessionMutation(id, apiKnowbase);
116
+ await refreshSessions();
117
+ };
118
+
119
+ // Activate session
120
+ const activateSession = async (id: string, data: ChatSessionRequest): Promise<ChatSession> => {
121
+ const result = await activateSessionMutation(id, data, apiKnowbase);
122
+ await refreshSessions();
123
+ return result as ChatSession;
124
+ };
125
+
126
+ // Archive session
127
+ const archiveSession = async (id: string, data: ChatSessionRequest): Promise<ChatSession> => {
128
+ const result = await archiveSessionMutation(id, data, apiKnowbase);
129
+ await refreshSessions();
130
+ return result as ChatSession;
131
+ };
132
+
133
+ const value: KnowbaseSessionsContextValue = {
134
+ sessions,
135
+ isLoadingSessions,
136
+ sessionsError,
137
+ refreshSessions,
138
+ getSession,
139
+ createSession,
140
+ updateSession,
141
+ partialUpdateSession,
142
+ deleteSession,
143
+ activateSession,
144
+ archiveSession,
145
+ };
146
+
147
+ return (
148
+ <KnowbaseSessionsContext.Provider value={value}>{children}</KnowbaseSessionsContext.Provider>
149
+ );
150
+ }
151
+
152
+ // ─────────────────────────────────────────────────────────────────────────
153
+ // Hook
154
+ // ─────────────────────────────────────────────────────────────────────────
155
+
156
+ export function useKnowbaseSessionsContext(): KnowbaseSessionsContextValue {
157
+ const context = useContext(KnowbaseSessionsContext);
158
+ if (!context) {
159
+ throw new Error('useKnowbaseSessionsContext must be used within KnowbaseSessionsProvider');
160
+ }
161
+ return context;
162
+ }
163
+
164
+ // ─────────────────────────────────────────────────────────────────────────
165
+ // Re-export types for external use
166
+ // ─────────────────────────────────────────────────────────────────────────
167
+
168
+ export type {
169
+ PaginatedChatSessionList,
170
+ ChatSession,
171
+ ChatSessionCreateRequest,
172
+ ChatSessionRequest,
173
+ PatchedChatSessionRequest,
174
+ } from './types';
175
+
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Knowbase Contexts
3
+ *
4
+ * Contexts for knowledge base functionality:
5
+ * - ChatContext: RAG-powered chat
6
+ * - DocumentsContext: Documents and archives management
7
+ * - SessionsContext: Chat sessions management
8
+ */
9
+
10
+ 'use client';
11
+
12
+ // Main Provider
13
+ export { KnowbaseProvider } from './KnowbaseProvider';
14
+
15
+ // Chat Context
16
+ export {
17
+ KnowbaseChatProvider,
18
+ useKnowbaseChatContext,
19
+ } from './ChatContext';
20
+ export type {
21
+ KnowbaseChatContextValue,
22
+ PaginatedChatResponseList,
23
+ ChatResponse,
24
+ ChatResponseRequest,
25
+ PatchedChatResponseRequest,
26
+ ChatHistory,
27
+ ChatQueryRequest,
28
+ } from './ChatContext';
29
+
30
+ // Documents Context
31
+ export {
32
+ KnowbaseDocumentsProvider,
33
+ useKnowbaseDocumentsContext,
34
+ } from './DocumentsContext';
35
+ export type {
36
+ KnowbaseDocumentsContextValue,
37
+ Document,
38
+ DocumentCreateRequest,
39
+ DocumentRequest,
40
+ PatchedDocumentRequest,
41
+ DocumentProcessingStatus,
42
+ DocumentStats,
43
+ DocumentArchive,
44
+ DocumentArchiveDetail,
45
+ PatchedDocumentArchiveRequest,
46
+ ArchiveProcessingResult,
47
+ ArchiveStatistics,
48
+ } from './DocumentsContext';
49
+
50
+ // Sessions Context
51
+ export {
52
+ KnowbaseSessionsProvider,
53
+ useKnowbaseSessionsContext,
54
+ } from './SessionsContext';
55
+ export type {
56
+ KnowbaseSessionsContextValue,
57
+ ChatSession,
58
+ ChatSessionCreateRequest,
59
+ ChatSessionRequest,
60
+ PatchedChatSessionRequest,
61
+ } from './SessionsContext';
62
+
63
+
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Knowbase Types
3
+ * Centralized type definitions for knowbase contexts
4
+ */
5
+
6
+ import type {
7
+ useKnowbaseAdminChatList,
8
+ useKnowbaseAdminChatRetrieve,
9
+ useCreateKnowbaseAdminChatCreate,
10
+ usePartialUpdateKnowbaseAdminChatPartialUpdate,
11
+ useKnowbaseAdminChatHistoryRetrieve,
12
+ useCreateKnowbaseAdminChatQueryCreate,
13
+ useKnowbaseAdminDocumentsList,
14
+ useKnowbaseAdminDocumentsRetrieve,
15
+ useCreateKnowbaseAdminDocumentsCreate,
16
+ useUpdateKnowbaseAdminDocumentsUpdate,
17
+ usePartialUpdateKnowbaseAdminDocumentsPartialUpdate,
18
+ useKnowbaseAdminDocumentsStatusRetrieve,
19
+ useKnowbaseAdminDocumentsStatsRetrieve,
20
+ useKnowbaseSystemArchivesList,
21
+ useKnowbaseSystemArchivesRetrieve,
22
+ useCreateKnowbaseSystemArchivesCreate,
23
+ usePartialUpdateKnowbaseSystemArchivesPartialUpdate,
24
+ useKnowbaseSystemArchivesStatisticsRetrieve,
25
+ useKnowbaseAdminSessionsList,
26
+ useKnowbaseAdminSessionsRetrieve,
27
+ useCreateKnowbaseAdminSessionsCreate,
28
+ useUpdateKnowbaseAdminSessionsUpdate,
29
+ usePartialUpdateKnowbaseAdminSessionsPartialUpdate,
30
+ } from '../../api/generated/ext_knowbase/_utils/hooks';
31
+
32
+ // ─────────────────────────────────────────────────────────────────────────
33
+ // Chat Types
34
+ // ─────────────────────────────────────────────────────────────────────────
35
+
36
+ export type PaginatedChatResponseList = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminChatList>>['data']>;
37
+ export type ChatResponse = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminChatRetrieve>>['data']>;
38
+ export type ChatResponseRequest = Parameters<ReturnType<typeof useCreateKnowbaseAdminChatCreate>>[0];
39
+ export type PatchedChatResponseRequest = Parameters<ReturnType<typeof usePartialUpdateKnowbaseAdminChatPartialUpdate>>[1];
40
+ export type ChatHistory = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminChatHistoryRetrieve>>['data']>;
41
+ export type ChatQueryRequest = Parameters<ReturnType<typeof useCreateKnowbaseAdminChatQueryCreate>>[0];
42
+
43
+ // ─────────────────────────────────────────────────────────────────────────
44
+ // Documents Types
45
+ // ─────────────────────────────────────────────────────────────────────────
46
+
47
+ export type PaginatedDocumentList = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminDocumentsList>>['data']>;
48
+ export type Document = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminDocumentsRetrieve>>['data']>;
49
+ export type DocumentCreateRequest = Parameters<ReturnType<typeof useCreateKnowbaseAdminDocumentsCreate>>[0];
50
+ export type DocumentRequest = Parameters<ReturnType<typeof useUpdateKnowbaseAdminDocumentsUpdate>>[1];
51
+ export type PatchedDocumentRequest = Parameters<ReturnType<typeof usePartialUpdateKnowbaseAdminDocumentsPartialUpdate>>[1];
52
+ export type DocumentProcessingStatus = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminDocumentsStatusRetrieve>>['data']>;
53
+ export type DocumentStats = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminDocumentsStatsRetrieve>>['data']>;
54
+ export type PaginatedDocumentArchiveListList = NonNullable<Awaited<ReturnType<typeof useKnowbaseSystemArchivesList>>['data']>;
55
+ export type DocumentArchive = NonNullable<Awaited<ReturnType<typeof useKnowbaseSystemArchivesRetrieve>>['data']>;
56
+ export type DocumentArchiveDetail = NonNullable<Awaited<ReturnType<typeof useKnowbaseSystemArchivesRetrieve>>['data']>;
57
+ export type PatchedDocumentArchiveRequest = Parameters<ReturnType<typeof usePartialUpdateKnowbaseSystemArchivesPartialUpdate>>[1];
58
+ export type ArchiveProcessingResult = Awaited<ReturnType<ReturnType<typeof useCreateKnowbaseSystemArchivesCreate>>>;
59
+ export type ArchiveStatistics = NonNullable<Awaited<ReturnType<typeof useKnowbaseSystemArchivesStatisticsRetrieve>>['data']>;
60
+
61
+ // ─────────────────────────────────────────────────────────────────────────
62
+ // Sessions Types
63
+ // ─────────────────────────────────────────────────────────────────────────
64
+
65
+ export type PaginatedChatSessionList = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminSessionsList>>['data']>;
66
+ export type ChatSession = NonNullable<Awaited<ReturnType<typeof useKnowbaseAdminSessionsRetrieve>>['data']>;
67
+ export type ChatSessionCreateRequest = Parameters<ReturnType<typeof useCreateKnowbaseAdminSessionsCreate>>[0];
68
+ export type ChatSessionRequest = Parameters<ReturnType<typeof useUpdateKnowbaseAdminSessionsUpdate>>[1];
69
+ export type PatchedChatSessionRequest = Parameters<ReturnType<typeof usePartialUpdateKnowbaseAdminSessionsPartialUpdate>>[1];
@@ -0,0 +1,28 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * @djangocfg/ext-knowbase/hooks
5
+ *
6
+ * React hooks for knowbase extension.
7
+ * Use this entry point in client components.
8
+ */
9
+
10
+ // Re-export everything from main entry (server-safe code)
11
+ export * from '../index';
12
+
13
+ // SWR hooks from generated API
14
+ export * from '../api/generated/ext_knowbase/_utils/hooks';
15
+
16
+ // Knowbase context providers and hooks
17
+ export {
18
+ KnowbaseChatProvider,
19
+ useKnowbaseChatContext,
20
+ KnowbaseDocumentsProvider,
21
+ useKnowbaseDocumentsContext,
22
+ KnowbaseSessionsProvider,
23
+ useKnowbaseSessionsContext,
24
+ } from '../contexts/knowbase';
25
+
26
+ // Chat components
27
+ export { KnowledgeChat, ChatWidget, ChatUIProvider, useChatUI, MessageList, MessageInput, SessionList } from '../components/Chat';
28
+ export { default as Chat } from '../components/Chat';
package/src/index.ts ADDED
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @djangocfg/ext-knowbase
3
+ *
4
+ * Server-safe entry point.
5
+ * Use this in server components and API routes.
6
+ */
7
+
8
+ // Export generated API types and client
9
+ export * from './api/generated/ext_knowbase';
10
+ export { API } from './api/generated/ext_knowbase';
11
+ export { apiKnowbase } from './api';
12
+
13
+ // Export component types (server-safe)
14
+ // Only export types that are NOT already in the generated API
15
+ export type {
16
+ ChatMessageWithSources,
17
+ ChatWidgetProps,
18
+ ChatUIState,
19
+ MessageListProps,
20
+ MessageInputProps,
21
+ SessionListProps,
22
+ } from './components/Chat/types';
@@ -0,0 +1,10 @@
1
+ import { createConsola } from 'consola';
2
+
3
+ const isDevelopment = process.env.NODE_ENV === 'development';
4
+
5
+ export const logger = createConsola({
6
+ level: isDevelopment ? 4 : 1,
7
+ }).withTag('ext-knowbase');
8
+
9
+ export const knowbaseLogger = logger;
10
+ export const chatLogger = logger;