@cmdoss/memwal-sdk 0.6.0 → 0.6.1
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/ARCHITECTURE.md +86 -2
- package/BENCHMARKS.md +2 -2
- package/README.md +43 -4
- package/dist/ai-sdk/types.d.ts +2 -2
- package/dist/ai-sdk/types.d.ts.map +1 -1
- package/dist/browser.d.ts +9 -9
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +16 -11
- package/dist/browser.js.map +1 -1
- package/dist/client/PersonalDataWallet.d.ts.map +1 -1
- package/dist/client/SimplePDWClient.d.ts.map +1 -1
- package/dist/client/SimplePDWClient.js +4 -4
- package/dist/client/SimplePDWClient.js.map +1 -1
- package/dist/client/namespaces/BatchNamespace.js +2 -2
- package/dist/client/namespaces/BatchNamespace.js.map +1 -1
- package/dist/client/namespaces/MemoryNamespace.js +3 -3
- package/dist/client/namespaces/MemoryNamespace.js.map +1 -1
- package/dist/client/namespaces/StorageNamespace.js +4 -4
- package/dist/client/namespaces/StorageNamespace.js.map +1 -1
- package/dist/client/namespaces/consolidated/StorageNamespace.js +2 -2
- package/dist/client/namespaces/consolidated/StorageNamespace.js.map +1 -1
- package/dist/client/signers/DappKitSigner.d.ts +136 -0
- package/dist/client/signers/DappKitSigner.d.ts.map +1 -0
- package/dist/client/signers/DappKitSigner.js +128 -0
- package/dist/client/signers/DappKitSigner.js.map +1 -0
- package/dist/client/signers/KeypairSigner.d.ts +4 -0
- package/dist/client/signers/KeypairSigner.d.ts.map +1 -1
- package/dist/client/signers/KeypairSigner.js +6 -0
- package/dist/client/signers/KeypairSigner.js.map +1 -1
- package/dist/client/signers/UnifiedSigner.d.ts +10 -0
- package/dist/client/signers/UnifiedSigner.d.ts.map +1 -1
- package/dist/client/signers/WalletAdapterSigner.d.ts +7 -0
- package/dist/client/signers/WalletAdapterSigner.d.ts.map +1 -1
- package/dist/client/signers/WalletAdapterSigner.js +9 -0
- package/dist/client/signers/WalletAdapterSigner.js.map +1 -1
- package/dist/client/signers/index.d.ts +3 -0
- package/dist/client/signers/index.d.ts.map +1 -1
- package/dist/client/signers/index.js +2 -0
- package/dist/client/signers/index.js.map +1 -1
- package/dist/generated/utils/index.js +1 -1
- package/dist/generated/utils/index.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/services/CapabilityService.js +1 -1
- package/dist/services/CapabilityService.js.map +1 -1
- package/dist/services/EncryptionService.js +1 -1
- package/dist/services/EncryptionService.js.map +1 -1
- package/dist/services/StorageService.d.ts +8 -8
- package/dist/services/StorageService.d.ts.map +1 -1
- package/dist/services/StorageService.js.map +1 -1
- package/dist/services/VectorService.js +2 -2
- package/dist/services/VectorService.js.map +1 -1
- package/dist/services/storage/BlobAttributesManager.d.ts +4 -4
- package/dist/services/storage/BlobAttributesManager.d.ts.map +1 -1
- package/dist/services/storage/BlobAttributesManager.js +6 -15
- package/dist/services/storage/BlobAttributesManager.js.map +1 -1
- package/dist/services/storage/QuiltBatchManager.d.ts +23 -5
- package/dist/services/storage/QuiltBatchManager.d.ts.map +1 -1
- package/dist/services/storage/QuiltBatchManager.js +118 -35
- package/dist/services/storage/QuiltBatchManager.js.map +1 -1
- package/dist/services/storage/WalrusMetadataManager.d.ts +2 -2
- package/dist/services/storage/WalrusMetadataManager.d.ts.map +1 -1
- package/dist/services/storage/WalrusMetadataManager.js +2 -5
- package/dist/services/storage/WalrusMetadataManager.js.map +1 -1
- package/dist/services/storage/WalrusStorageManager.d.ts +2 -2
- package/dist/services/storage/WalrusStorageManager.d.ts.map +1 -1
- package/dist/services/storage/WalrusStorageManager.js +7 -11
- package/dist/services/storage/WalrusStorageManager.js.map +1 -1
- package/dist/wallet/MainWalletService.js +1 -1
- package/dist/wallet/MainWalletService.js.map +1 -1
- package/package.json +10 -3
- package/src/ai-sdk/types.ts +2 -2
- package/src/browser.ts +19 -20
- package/src/client/SimplePDWClient.ts +18 -14
- package/src/client/namespaces/BatchNamespace.ts +2 -2
- package/src/client/namespaces/MemoryNamespace.ts +3 -3
- package/src/client/namespaces/StorageNamespace.ts +4 -4
- package/src/client/namespaces/consolidated/StorageNamespace.ts +2 -2
- package/src/client/signers/DappKitSigner.ts +207 -0
- package/src/client/signers/KeypairSigner.ts +7 -0
- package/src/client/signers/UnifiedSigner.ts +11 -0
- package/src/client/signers/WalletAdapterSigner.ts +10 -0
- package/src/client/signers/index.ts +7 -0
- package/src/generated/pdw/deps/sui/object.ts +12 -12
- package/src/generated/pdw/deps/sui/vec_map.ts +32 -32
- package/src/generated/pdw/memory.ts +1087 -1087
- package/src/generated/pdw/wallet.ts +123 -123
- package/src/generated/utils/index.ts +159 -159
- package/src/index.ts +16 -0
- package/src/services/CapabilityService.ts +1 -1
- package/src/services/EncryptionService.ts +1 -1
- package/src/services/StorageService.ts +8 -8
- package/src/services/VectorService.ts +2 -2
- package/src/services/storage/BlobAttributesManager.ts +10 -19
- package/src/services/storage/QuiltBatchManager.ts +139 -37
- package/src/services/storage/WalrusMetadataManager.ts +4 -7
- package/src/services/storage/WalrusStorageManager.ts +10 -13
- package/src/wallet/MainWalletService.ts +1 -1
- package/dist/api/client.d.ts +0 -43
- package/dist/api/client.d.ts.map +0 -1
- package/dist/api/client.js +0 -136
- package/dist/api/client.js.map +0 -1
- package/dist/chat/index.d.ts +0 -13
- package/dist/chat/index.d.ts.map +0 -1
- package/dist/chat/index.js +0 -14
- package/dist/chat/index.js.map +0 -1
- package/dist/client/namespaces/ChatNamespace.d.ts +0 -110
- package/dist/client/namespaces/ChatNamespace.d.ts.map +0 -1
- package/dist/client/namespaces/ChatNamespace.js +0 -123
- package/dist/client/namespaces/ChatNamespace.js.map +0 -1
- package/dist/encryption/index.d.ts +0 -14
- package/dist/encryption/index.d.ts.map +0 -1
- package/dist/encryption/index.js +0 -14
- package/dist/encryption/index.js.map +0 -1
- package/dist/graph/BrowserKnowledgeGraphManager.d.ts +0 -101
- package/dist/graph/BrowserKnowledgeGraphManager.d.ts.map +0 -1
- package/dist/graph/BrowserKnowledgeGraphManager.js +0 -411
- package/dist/graph/BrowserKnowledgeGraphManager.js.map +0 -1
- package/dist/hooks.wip/index.d.ts +0 -55
- package/dist/hooks.wip/index.d.ts.map +0 -1
- package/dist/hooks.wip/index.js +0 -58
- package/dist/hooks.wip/index.js.map +0 -1
- package/dist/hooks.wip/useCreateMemory.d.ts +0 -111
- package/dist/hooks.wip/useCreateMemory.d.ts.map +0 -1
- package/dist/hooks.wip/useCreateMemory.js +0 -149
- package/dist/hooks.wip/useCreateMemory.js.map +0 -1
- package/dist/hooks.wip/useCreateMemoryBatch.d.ts +0 -122
- package/dist/hooks.wip/useCreateMemoryBatch.d.ts.map +0 -1
- package/dist/hooks.wip/useCreateMemoryBatch.js +0 -221
- package/dist/hooks.wip/useCreateMemoryBatch.js.map +0 -1
- package/dist/hooks.wip/useKnowledgeGraph.d.ts +0 -66
- package/dist/hooks.wip/useKnowledgeGraph.d.ts.map +0 -1
- package/dist/hooks.wip/useKnowledgeGraph.js +0 -229
- package/dist/hooks.wip/useKnowledgeGraph.js.map +0 -1
- package/dist/hooks.wip/useMemoryChat.d.ts +0 -106
- package/dist/hooks.wip/useMemoryChat.d.ts.map +0 -1
- package/dist/hooks.wip/useMemoryChat.js +0 -284
- package/dist/hooks.wip/useMemoryChat.js.map +0 -1
- package/dist/hooks.wip/useMemoryIndex.d.ts +0 -90
- package/dist/hooks.wip/useMemoryIndex.d.ts.map +0 -1
- package/dist/hooks.wip/useMemoryIndex.js +0 -218
- package/dist/hooks.wip/useMemoryIndex.js.map +0 -1
- package/dist/hooks.wip/useMemoryManager.d.ts +0 -35
- package/dist/hooks.wip/useMemoryManager.d.ts.map +0 -1
- package/dist/hooks.wip/useMemoryManager.js +0 -86
- package/dist/hooks.wip/useMemoryManager.js.map +0 -1
- package/dist/hooks.wip/useMemorySearch.d.ts +0 -100
- package/dist/hooks.wip/useMemorySearch.d.ts.map +0 -1
- package/dist/hooks.wip/useMemorySearch.js +0 -278
- package/dist/hooks.wip/useMemorySearch.js.map +0 -1
- package/dist/hooks.wip/useMemoryServices.d.ts +0 -80
- package/dist/hooks.wip/useMemoryServices.d.ts.map +0 -1
- package/dist/hooks.wip/useMemoryServices.js +0 -264
- package/dist/hooks.wip/useMemoryServices.js.map +0 -1
- package/dist/hooks.wip/usePDWRAG.d.ts +0 -112
- package/dist/hooks.wip/usePDWRAG.d.ts.map +0 -1
- package/dist/hooks.wip/usePDWRAG.js +0 -121
- package/dist/hooks.wip/usePDWRAG.js.map +0 -1
- package/dist/hooks.wip/usePDWVectorStore.d.ts +0 -68
- package/dist/hooks.wip/usePDWVectorStore.d.ts.map +0 -1
- package/dist/hooks.wip/usePDWVectorStore.js +0 -102
- package/dist/hooks.wip/usePDWVectorStore.js.map +0 -1
- package/dist/hooks.wip/useRetrieveEmbedding.d.ts +0 -138
- package/dist/hooks.wip/useRetrieveEmbedding.d.ts.map +0 -1
- package/dist/hooks.wip/useRetrieveEmbedding.js +0 -121
- package/dist/hooks.wip/useRetrieveEmbedding.js.map +0 -1
- package/dist/hooks.wip/useSearchMemories.d.ts +0 -103
- package/dist/hooks.wip/useSearchMemories.d.ts.map +0 -1
- package/dist/hooks.wip/useSearchMemories.js +0 -146
- package/dist/hooks.wip/useSearchMemories.js.map +0 -1
- package/dist/hooks.wip/useStoreEmbedding.d.ts +0 -174
- package/dist/hooks.wip/useStoreEmbedding.d.ts.map +0 -1
- package/dist/hooks.wip/useStoreEmbedding.js +0 -167
- package/dist/hooks.wip/useStoreEmbedding.js.map +0 -1
- package/dist/hooks.wip/useWalletMemories.d.ts +0 -119
- package/dist/hooks.wip/useWalletMemories.d.ts.map +0 -1
- package/dist/hooks.wip/useWalletMemories.js +0 -166
- package/dist/hooks.wip/useWalletMemories.js.map +0 -1
- package/dist/hooks.wip/utils/cache.d.ts +0 -25
- package/dist/hooks.wip/utils/cache.d.ts.map +0 -1
- package/dist/hooks.wip/utils/cache.js +0 -38
- package/dist/hooks.wip/utils/cache.js.map +0 -1
- package/dist/hooks.wip/utils/types.d.ts +0 -138
- package/dist/hooks.wip/utils/types.d.ts.map +0 -1
- package/dist/hooks.wip/utils/types.js +0 -5
- package/dist/hooks.wip/utils/types.js.map +0 -1
- package/dist/infrastructure/ai/EmbeddingService.d.ts +0 -101
- package/dist/infrastructure/ai/EmbeddingService.d.ts.map +0 -1
- package/dist/infrastructure/ai/EmbeddingService.js +0 -242
- package/dist/infrastructure/ai/EmbeddingService.js.map +0 -1
- package/dist/infrastructure/ai/GeminiAIService.d.ts +0 -84
- package/dist/infrastructure/ai/GeminiAIService.d.ts.map +0 -1
- package/dist/infrastructure/ai/GeminiAIService.js +0 -300
- package/dist/infrastructure/ai/GeminiAIService.js.map +0 -1
- package/dist/infrastructure/ai/index.d.ts +0 -8
- package/dist/infrastructure/ai/index.d.ts.map +0 -1
- package/dist/infrastructure/ai/index.js +0 -8
- package/dist/infrastructure/ai/index.js.map +0 -1
- package/dist/memory/index.d.ts +0 -13
- package/dist/memory/index.d.ts.map +0 -1
- package/dist/memory/index.js +0 -14
- package/dist/memory/index.js.map +0 -1
- package/dist/services/ChatService.d.ts +0 -89
- package/dist/services/ChatService.d.ts.map +0 -1
- package/dist/services/ChatService.js +0 -319
- package/dist/services/ChatService.js.map +0 -1
- package/dist/transactions/index.d.ts +0 -13
- package/dist/transactions/index.d.ts.map +0 -1
- package/dist/transactions/index.js +0 -14
- package/dist/transactions/index.js.map +0 -1
- package/dist/types/wallet.d.ts +0 -12
- package/dist/types/wallet.d.ts.map +0 -1
- package/dist/types/wallet.js +0 -13
- package/dist/types/wallet.js.map +0 -1
- package/dist/view/ViewService.d.ts +0 -136
- package/dist/view/ViewService.d.ts.map +0 -1
- package/dist/view/ViewService.js +0 -325
- package/dist/view/ViewService.js.map +0 -1
- package/dist/view/index.d.ts +0 -7
- package/dist/view/index.d.ts.map +0 -1
- package/dist/view/index.js +0 -7
- package/dist/view/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateMemory.d.ts","sourceRoot":"","sources":["../../src/hooks.wip/useCreateMemory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAOH,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEjD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAEtD;;OAEG;IACH,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAE7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAE3C;;OAEG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEvE;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAE1B;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAEhC;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,qBAAqB,CAgH3F;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* useCreateMemory - Hook for creating memories with automatic state management
|
|
3
|
-
*
|
|
4
|
-
* Simplifies memory creation with loading states, error handling, and progress tracking.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* ```tsx
|
|
8
|
-
* import { useCreateMemory } from 'personal-data-wallet-sdk/hooks';
|
|
9
|
-
* import { useCurrentAccount, useSignAndExecuteTransaction, useSuiClient } from '@mysten/dapp-kit';
|
|
10
|
-
*
|
|
11
|
-
* function MemoryCreator() {
|
|
12
|
-
* const account = useCurrentAccount();
|
|
13
|
-
* const { mutate: signAndExecute } = useSignAndExecuteTransaction();
|
|
14
|
-
* const client = useSuiClient();
|
|
15
|
-
*
|
|
16
|
-
* const { mutate: createMemory, isPending, data, error, progress } = useCreateMemory({
|
|
17
|
-
* onSuccess: (blobId) => {
|
|
18
|
-
* console.log('Memory created:', blobId);
|
|
19
|
-
* },
|
|
20
|
-
* onError: (error) => {
|
|
21
|
-
* console.error('Failed:', error);
|
|
22
|
-
* }
|
|
23
|
-
* });
|
|
24
|
-
*
|
|
25
|
-
* const handleCreate = () => {
|
|
26
|
-
* createMemory({
|
|
27
|
-
* content: 'I love TypeScript',
|
|
28
|
-
* category: 'personal'
|
|
29
|
-
* });
|
|
30
|
-
* };
|
|
31
|
-
*
|
|
32
|
-
* return (
|
|
33
|
-
* <div>
|
|
34
|
-
* <button onClick={handleCreate} disabled={isPending}>
|
|
35
|
-
* {isPending ? 'Creating...' : 'Create Memory'}
|
|
36
|
-
* </button>
|
|
37
|
-
* {progress && <div>{progress.message}</div>}
|
|
38
|
-
* {error && <div>Error: {error.message}</div>}
|
|
39
|
-
* </div>
|
|
40
|
-
* );
|
|
41
|
-
* }
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
import { useMutation, useQueryClient } from '@tanstack/react-query';
|
|
45
|
-
import { useState, useCallback } from 'react';
|
|
46
|
-
import { useSuiClient, useCurrentAccount, useSignAndExecuteTransaction } from '@mysten/dapp-kit';
|
|
47
|
-
import { useMemoryManager } from './useMemoryManager.js';
|
|
48
|
-
import { cacheKeys } from './utils/cache.js';
|
|
49
|
-
/**
|
|
50
|
-
* Hook for creating memories with automatic state management
|
|
51
|
-
*/
|
|
52
|
-
export function useCreateMemory(options = {}) {
|
|
53
|
-
const { onSuccess, onError, onProgress, config, invalidateQueries = true, } = options;
|
|
54
|
-
const queryClient = useQueryClient();
|
|
55
|
-
const client = useSuiClient();
|
|
56
|
-
const account = useCurrentAccount();
|
|
57
|
-
const { mutate: signAndExecute } = useSignAndExecuteTransaction();
|
|
58
|
-
const manager = useMemoryManager(config);
|
|
59
|
-
const [progress, setProgress] = useState();
|
|
60
|
-
// Progress handler
|
|
61
|
-
const handleProgress = useCallback((status) => {
|
|
62
|
-
let stage = 'analyzing';
|
|
63
|
-
if (status.includes('Analyzing')) {
|
|
64
|
-
stage = 'analyzing';
|
|
65
|
-
}
|
|
66
|
-
else if (status.includes('embedding')) {
|
|
67
|
-
stage = 'embedding';
|
|
68
|
-
}
|
|
69
|
-
else if (status.includes('Encrypting')) {
|
|
70
|
-
stage = 'encrypting';
|
|
71
|
-
}
|
|
72
|
-
else if (status.includes('Uploading')) {
|
|
73
|
-
stage = 'uploading';
|
|
74
|
-
}
|
|
75
|
-
else if (status.includes('Registering')) {
|
|
76
|
-
stage = 'registering';
|
|
77
|
-
}
|
|
78
|
-
else if (status.includes('successfully')) {
|
|
79
|
-
stage = 'success';
|
|
80
|
-
}
|
|
81
|
-
const progressUpdate = {
|
|
82
|
-
stage,
|
|
83
|
-
message: status,
|
|
84
|
-
};
|
|
85
|
-
setProgress(progressUpdate);
|
|
86
|
-
onProgress?.(progressUpdate);
|
|
87
|
-
}, [onProgress]);
|
|
88
|
-
// Create memory mutation
|
|
89
|
-
const mutation = useMutation({
|
|
90
|
-
mutationFn: async (input) => {
|
|
91
|
-
if (!manager) {
|
|
92
|
-
throw new Error('Memory manager not initialized. Check your configuration.');
|
|
93
|
-
}
|
|
94
|
-
if (!account) {
|
|
95
|
-
throw new Error('No wallet connected. Please connect your wallet.');
|
|
96
|
-
}
|
|
97
|
-
if (!client) {
|
|
98
|
-
throw new Error('Sui client not available.');
|
|
99
|
-
}
|
|
100
|
-
// Create memory
|
|
101
|
-
const blobId = await manager.createMemory({
|
|
102
|
-
content: input.content,
|
|
103
|
-
category: input.category,
|
|
104
|
-
account,
|
|
105
|
-
signAndExecute: signAndExecute, // Type compatibility workaround
|
|
106
|
-
client: client, // Type compatibility workaround
|
|
107
|
-
onProgress: handleProgress,
|
|
108
|
-
});
|
|
109
|
-
return {
|
|
110
|
-
blobId,
|
|
111
|
-
};
|
|
112
|
-
},
|
|
113
|
-
onSuccess: (data) => {
|
|
114
|
-
// Invalidate relevant queries
|
|
115
|
-
if (invalidateQueries && account) {
|
|
116
|
-
queryClient.invalidateQueries({
|
|
117
|
-
queryKey: cacheKeys.walletMemories(account.address),
|
|
118
|
-
});
|
|
119
|
-
queryClient.invalidateQueries({
|
|
120
|
-
queryKey: cacheKeys.memoryStats(account.address),
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
onSuccess?.(data);
|
|
124
|
-
},
|
|
125
|
-
onError: (error) => {
|
|
126
|
-
setProgress({
|
|
127
|
-
stage: 'error',
|
|
128
|
-
message: error.message,
|
|
129
|
-
});
|
|
130
|
-
onError?.(error);
|
|
131
|
-
},
|
|
132
|
-
});
|
|
133
|
-
return {
|
|
134
|
-
mutate: mutation.mutate,
|
|
135
|
-
mutateAsync: mutation.mutateAsync,
|
|
136
|
-
isPending: mutation.isPending,
|
|
137
|
-
isSuccess: mutation.isSuccess,
|
|
138
|
-
isError: mutation.isError,
|
|
139
|
-
data: mutation.data,
|
|
140
|
-
error: mutation.error,
|
|
141
|
-
progress,
|
|
142
|
-
reset: () => {
|
|
143
|
-
mutation.reset();
|
|
144
|
-
setProgress(undefined);
|
|
145
|
-
},
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
export default useCreateMemory;
|
|
149
|
-
//# sourceMappingURL=useCreateMemory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateMemory.js","sourceRoot":"","sources":["../../src/hooks.wip/useCreateMemory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* useCreateMemoryBatch - Hook for creating multiple memories in a single Quilt
|
|
3
|
-
*
|
|
4
|
-
* Batch memory creation with ~90% gas savings by using Walrus Quilts.
|
|
5
|
-
* All memories in a batch are stored in a single Quilt with per-file metadata tags.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```tsx
|
|
9
|
-
* import { useCreateMemoryBatch } from 'personal-data-wallet-sdk/hooks';
|
|
10
|
-
* import { useCurrentAccount, useSignAndExecuteTransaction, useSuiClient } from '@mysten/dapp-kit';
|
|
11
|
-
*
|
|
12
|
-
* function BatchMemoryCreator() {
|
|
13
|
-
* const account = useCurrentAccount();
|
|
14
|
-
* const { mutate: signAndExecute } = useSignAndExecuteTransaction();
|
|
15
|
-
* const client = useSuiClient();
|
|
16
|
-
*
|
|
17
|
-
* const { mutate: createBatch, isPending, data, error, progress } = useCreateMemoryBatch({
|
|
18
|
-
* geminiApiKey: process.env.NEXT_PUBLIC_GEMINI_API_KEY!,
|
|
19
|
-
* onSuccess: (result) => {
|
|
20
|
-
* console.log(`Created ${result.memoriesCreated} memories in Quilt ${result.quiltId}`);
|
|
21
|
-
* console.log(`Upload time: ${result.uploadTimeMs}ms`);
|
|
22
|
-
* },
|
|
23
|
-
* onProgress: (progress) => {
|
|
24
|
-
* console.log(`${progress.message} (${progress.percent}%)`);
|
|
25
|
-
* }
|
|
26
|
-
* });
|
|
27
|
-
*
|
|
28
|
-
* const handleBatchCreate = () => {
|
|
29
|
-
* createBatch({
|
|
30
|
-
* memories: [
|
|
31
|
-
* { content: 'First memory', category: 'personal' },
|
|
32
|
-
* { content: 'Second memory', category: 'personal' },
|
|
33
|
-
* { content: 'Third memory', category: 'work' },
|
|
34
|
-
* ]
|
|
35
|
-
* });
|
|
36
|
-
* };
|
|
37
|
-
*
|
|
38
|
-
* return (
|
|
39
|
-
* <div>
|
|
40
|
-
* <button onClick={handleBatchCreate} disabled={isPending}>
|
|
41
|
-
* {isPending ? `Creating... ${progress?.percent || 0}%` : 'Create Batch'}
|
|
42
|
-
* </button>
|
|
43
|
-
* {progress && <div>{progress.message}</div>}
|
|
44
|
-
* {error && <div>Error: {error.message}</div>}
|
|
45
|
-
* </div>
|
|
46
|
-
* );
|
|
47
|
-
* }
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
import type { CreateMemoryBatchInput, CreateMemoryBatchProgress, CreateMemoryBatchResult, MemoryManagerConfig } from './utils/types';
|
|
51
|
-
export interface UseCreateMemoryBatchOptions {
|
|
52
|
-
/**
|
|
53
|
-
* Callback when batch creation succeeds
|
|
54
|
-
*/
|
|
55
|
-
onSuccess?: (result: CreateMemoryBatchResult) => void;
|
|
56
|
-
/**
|
|
57
|
-
* Callback when batch creation fails
|
|
58
|
-
*/
|
|
59
|
-
onError?: (error: Error) => void;
|
|
60
|
-
/**
|
|
61
|
-
* Callback for progress updates
|
|
62
|
-
*/
|
|
63
|
-
onProgress?: (progress: CreateMemoryBatchProgress) => void;
|
|
64
|
-
/**
|
|
65
|
-
* Gemini API key for embedding generation
|
|
66
|
-
* @required
|
|
67
|
-
*/
|
|
68
|
-
geminiApiKey: string;
|
|
69
|
-
/**
|
|
70
|
-
* Optional memory manager config override
|
|
71
|
-
*/
|
|
72
|
-
config?: MemoryManagerConfig;
|
|
73
|
-
/**
|
|
74
|
-
* Whether to automatically invalidate memory queries on success
|
|
75
|
-
* @default true
|
|
76
|
-
*/
|
|
77
|
-
invalidateQueries?: boolean;
|
|
78
|
-
}
|
|
79
|
-
export interface UseCreateMemoryBatchReturn {
|
|
80
|
-
/**
|
|
81
|
-
* Mutation function to create a batch of memories
|
|
82
|
-
*/
|
|
83
|
-
mutate: (input: CreateMemoryBatchInput) => void;
|
|
84
|
-
/**
|
|
85
|
-
* Async mutation function (returns promise)
|
|
86
|
-
*/
|
|
87
|
-
mutateAsync: (input: CreateMemoryBatchInput) => Promise<CreateMemoryBatchResult>;
|
|
88
|
-
/**
|
|
89
|
-
* Whether the mutation is currently loading
|
|
90
|
-
*/
|
|
91
|
-
isPending: boolean;
|
|
92
|
-
/**
|
|
93
|
-
* Whether the mutation succeeded
|
|
94
|
-
*/
|
|
95
|
-
isSuccess: boolean;
|
|
96
|
-
/**
|
|
97
|
-
* Whether the mutation failed
|
|
98
|
-
*/
|
|
99
|
-
isError: boolean;
|
|
100
|
-
/**
|
|
101
|
-
* The result data (Quilt ID and file list) if successful
|
|
102
|
-
*/
|
|
103
|
-
data?: CreateMemoryBatchResult;
|
|
104
|
-
/**
|
|
105
|
-
* The error if failed
|
|
106
|
-
*/
|
|
107
|
-
error: Error | null;
|
|
108
|
-
/**
|
|
109
|
-
* Current progress status
|
|
110
|
-
*/
|
|
111
|
-
progress?: CreateMemoryBatchProgress;
|
|
112
|
-
/**
|
|
113
|
-
* Reset mutation state
|
|
114
|
-
*/
|
|
115
|
-
reset: () => void;
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Hook for creating multiple memories in a single Quilt
|
|
119
|
-
*/
|
|
120
|
-
export declare function useCreateMemoryBatch(options: UseCreateMemoryBatchOptions): UseCreateMemoryBatchReturn;
|
|
121
|
-
export default useCreateMemoryBatch;
|
|
122
|
-
//# sourceMappingURL=useCreateMemoryBatch.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateMemoryBatch.d.ts","sourceRoot":"","sources":["../../src/hooks.wip/useCreateMemoryBatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAOH,OAAO,KAAK,EACV,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAEtD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAE3D;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAE7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAEhD;;OAEG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEjF;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC;IAE/B;;OAEG;IACH,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,2BAA2B,GACnC,0BAA0B,CAwO5B;AAED,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* useCreateMemoryBatch - Hook for creating multiple memories in a single Quilt
|
|
3
|
-
*
|
|
4
|
-
* Batch memory creation with ~90% gas savings by using Walrus Quilts.
|
|
5
|
-
* All memories in a batch are stored in a single Quilt with per-file metadata tags.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```tsx
|
|
9
|
-
* import { useCreateMemoryBatch } from 'personal-data-wallet-sdk/hooks';
|
|
10
|
-
* import { useCurrentAccount, useSignAndExecuteTransaction, useSuiClient } from '@mysten/dapp-kit';
|
|
11
|
-
*
|
|
12
|
-
* function BatchMemoryCreator() {
|
|
13
|
-
* const account = useCurrentAccount();
|
|
14
|
-
* const { mutate: signAndExecute } = useSignAndExecuteTransaction();
|
|
15
|
-
* const client = useSuiClient();
|
|
16
|
-
*
|
|
17
|
-
* const { mutate: createBatch, isPending, data, error, progress } = useCreateMemoryBatch({
|
|
18
|
-
* geminiApiKey: process.env.NEXT_PUBLIC_GEMINI_API_KEY!,
|
|
19
|
-
* onSuccess: (result) => {
|
|
20
|
-
* console.log(`Created ${result.memoriesCreated} memories in Quilt ${result.quiltId}`);
|
|
21
|
-
* console.log(`Upload time: ${result.uploadTimeMs}ms`);
|
|
22
|
-
* },
|
|
23
|
-
* onProgress: (progress) => {
|
|
24
|
-
* console.log(`${progress.message} (${progress.percent}%)`);
|
|
25
|
-
* }
|
|
26
|
-
* });
|
|
27
|
-
*
|
|
28
|
-
* const handleBatchCreate = () => {
|
|
29
|
-
* createBatch({
|
|
30
|
-
* memories: [
|
|
31
|
-
* { content: 'First memory', category: 'personal' },
|
|
32
|
-
* { content: 'Second memory', category: 'personal' },
|
|
33
|
-
* { content: 'Third memory', category: 'work' },
|
|
34
|
-
* ]
|
|
35
|
-
* });
|
|
36
|
-
* };
|
|
37
|
-
*
|
|
38
|
-
* return (
|
|
39
|
-
* <div>
|
|
40
|
-
* <button onClick={handleBatchCreate} disabled={isPending}>
|
|
41
|
-
* {isPending ? `Creating... ${progress?.percent || 0}%` : 'Create Batch'}
|
|
42
|
-
* </button>
|
|
43
|
-
* {progress && <div>{progress.message}</div>}
|
|
44
|
-
* {error && <div>Error: {error.message}</div>}
|
|
45
|
-
* </div>
|
|
46
|
-
* );
|
|
47
|
-
* }
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
import { useMutation, useQueryClient } from '@tanstack/react-query';
|
|
51
|
-
import { useState, useCallback } from 'react';
|
|
52
|
-
import { useSuiClient, useCurrentAccount, useSignAndExecuteTransaction } from '@mysten/dapp-kit';
|
|
53
|
-
import { useMemoryServices } from './useMemoryServices.js';
|
|
54
|
-
import { cacheKeys } from './utils/cache.js';
|
|
55
|
-
/**
|
|
56
|
-
* Hook for creating multiple memories in a single Quilt
|
|
57
|
-
*/
|
|
58
|
-
export function useCreateMemoryBatch(options) {
|
|
59
|
-
const { onSuccess, onError, onProgress, geminiApiKey, config, invalidateQueries = true, } = options;
|
|
60
|
-
const queryClient = useQueryClient();
|
|
61
|
-
const client = useSuiClient();
|
|
62
|
-
const account = useCurrentAccount();
|
|
63
|
-
const { mutate: signAndExecute } = useSignAndExecuteTransaction();
|
|
64
|
-
// Get services with Gemini API key
|
|
65
|
-
const { storageService, embeddingService, encryptionService, geminiAIService, isReady } = useMemoryServices(account?.address, { geminiApiKey, ...config });
|
|
66
|
-
const [progress, setProgress] = useState();
|
|
67
|
-
// Progress helper
|
|
68
|
-
const updateProgress = useCallback((stage, message, current, total) => {
|
|
69
|
-
const percent = Math.round((current / total) * 100);
|
|
70
|
-
const progressUpdate = {
|
|
71
|
-
stage,
|
|
72
|
-
message,
|
|
73
|
-
current,
|
|
74
|
-
total,
|
|
75
|
-
percent,
|
|
76
|
-
};
|
|
77
|
-
setProgress(progressUpdate);
|
|
78
|
-
onProgress?.(progressUpdate);
|
|
79
|
-
}, [onProgress]);
|
|
80
|
-
// Create batch mutation
|
|
81
|
-
const mutation = useMutation({
|
|
82
|
-
mutationFn: async (input) => {
|
|
83
|
-
if (!isReady) {
|
|
84
|
-
throw new Error('Services not initialized. Please wait...');
|
|
85
|
-
}
|
|
86
|
-
if (!account) {
|
|
87
|
-
throw new Error('No wallet connected. Please connect your wallet.');
|
|
88
|
-
}
|
|
89
|
-
if (!client) {
|
|
90
|
-
throw new Error('Sui client not available.');
|
|
91
|
-
}
|
|
92
|
-
if (!storageService || !embeddingService || !encryptionService) {
|
|
93
|
-
throw new Error('Required services not available.');
|
|
94
|
-
}
|
|
95
|
-
if (!signAndExecute) {
|
|
96
|
-
throw new Error('Sign and execute function not available.');
|
|
97
|
-
}
|
|
98
|
-
const total = input.memories.length;
|
|
99
|
-
if (total === 0) {
|
|
100
|
-
throw new Error('No memories provided.');
|
|
101
|
-
}
|
|
102
|
-
updateProgress('preparing', 'Preparing batch operation...', 0, total);
|
|
103
|
-
// Step 1: Extract AI metadata for all memories in batch (if AI service available)
|
|
104
|
-
let metadataArray = [];
|
|
105
|
-
if (geminiAIService) {
|
|
106
|
-
updateProgress('preparing', 'Analyzing content with AI...', 0, total);
|
|
107
|
-
try {
|
|
108
|
-
metadataArray = await geminiAIService.extractRichMetadataBatch(input.memories.map(m => ({ content: m.content, category: m.category })));
|
|
109
|
-
console.log('✅ AI metadata extracted for all memories');
|
|
110
|
-
}
|
|
111
|
-
catch (error) {
|
|
112
|
-
console.warn('⚠️ AI metadata extraction failed, using fallbacks:', error);
|
|
113
|
-
// Fallback to simple extraction
|
|
114
|
-
metadataArray = input.memories.map(m => ({
|
|
115
|
-
importance: 5,
|
|
116
|
-
topic: m.category || 'uncategorized',
|
|
117
|
-
summary: m.content.substring(0, 100),
|
|
118
|
-
category: m.category || 'uncategorized'
|
|
119
|
-
}));
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
console.warn('⚠️ No AI service available, using simple metadata extraction');
|
|
124
|
-
metadataArray = input.memories.map(m => ({
|
|
125
|
-
importance: 5,
|
|
126
|
-
topic: m.category || 'uncategorized',
|
|
127
|
-
summary: m.content.substring(0, 100),
|
|
128
|
-
category: m.category || 'uncategorized'
|
|
129
|
-
}));
|
|
130
|
-
}
|
|
131
|
-
// Step 2: Process each memory: generate embeddings and encrypt
|
|
132
|
-
const processedMemories = [];
|
|
133
|
-
for (let i = 0; i < total; i++) {
|
|
134
|
-
const memory = input.memories[i];
|
|
135
|
-
const metadata = metadataArray[i];
|
|
136
|
-
const current = i + 1;
|
|
137
|
-
// Generate embedding
|
|
138
|
-
updateProgress('processing', `Generating embedding for memory ${current}/${total}...`, current, total);
|
|
139
|
-
const embeddingResult = await embeddingService.embedText({
|
|
140
|
-
text: memory.content,
|
|
141
|
-
taskType: 'RETRIEVAL_DOCUMENT',
|
|
142
|
-
});
|
|
143
|
-
// Encrypt content
|
|
144
|
-
updateProgress('encrypting', `Encrypting memory ${current}/${total}...`, current, total);
|
|
145
|
-
const encryptionResult = await encryptionService.encrypt(new TextEncoder().encode(memory.content), account.address);
|
|
146
|
-
processedMemories.push({
|
|
147
|
-
content: memory.content,
|
|
148
|
-
category: metadata.category,
|
|
149
|
-
importance: metadata.importance,
|
|
150
|
-
topic: metadata.topic,
|
|
151
|
-
embedding: embeddingResult.vector,
|
|
152
|
-
encryptedContent: encryptionResult.encryptedObject,
|
|
153
|
-
summary: metadata.summary,
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
// Upload batch to Walrus Quilt
|
|
157
|
-
updateProgress('uploading', 'Uploading batch to Walrus Quilt...', total, total);
|
|
158
|
-
// Create a simple signer wrapper from signAndExecute
|
|
159
|
-
const signer = {
|
|
160
|
-
async signAndSend(txb) {
|
|
161
|
-
return new Promise((resolve, reject) => {
|
|
162
|
-
signAndExecute({ transaction: txb }, {
|
|
163
|
-
onSuccess: (result) => resolve(result),
|
|
164
|
-
onError: (error) => reject(error),
|
|
165
|
-
});
|
|
166
|
-
});
|
|
167
|
-
},
|
|
168
|
-
};
|
|
169
|
-
const result = await storageService.uploadMemoryBatch(processedMemories, {
|
|
170
|
-
signer: signer,
|
|
171
|
-
epochs: 5,
|
|
172
|
-
userAddress: account.address,
|
|
173
|
-
});
|
|
174
|
-
updateProgress('success', 'Batch created successfully!', total, total);
|
|
175
|
-
return {
|
|
176
|
-
quiltId: result.quiltId,
|
|
177
|
-
files: result.files,
|
|
178
|
-
uploadTimeMs: result.uploadTimeMs,
|
|
179
|
-
memoriesCreated: total,
|
|
180
|
-
};
|
|
181
|
-
},
|
|
182
|
-
onSuccess: (data) => {
|
|
183
|
-
// Invalidate relevant queries
|
|
184
|
-
if (invalidateQueries && account) {
|
|
185
|
-
queryClient.invalidateQueries({
|
|
186
|
-
queryKey: cacheKeys.walletMemories(account.address),
|
|
187
|
-
});
|
|
188
|
-
queryClient.invalidateQueries({
|
|
189
|
-
queryKey: cacheKeys.memoryStats(account.address),
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
onSuccess?.(data);
|
|
193
|
-
},
|
|
194
|
-
onError: (error) => {
|
|
195
|
-
setProgress({
|
|
196
|
-
stage: 'error',
|
|
197
|
-
message: error.message,
|
|
198
|
-
current: 0,
|
|
199
|
-
total: 0,
|
|
200
|
-
percent: 0,
|
|
201
|
-
});
|
|
202
|
-
onError?.(error);
|
|
203
|
-
},
|
|
204
|
-
});
|
|
205
|
-
return {
|
|
206
|
-
mutate: mutation.mutate,
|
|
207
|
-
mutateAsync: mutation.mutateAsync,
|
|
208
|
-
isPending: mutation.isPending,
|
|
209
|
-
isSuccess: mutation.isSuccess,
|
|
210
|
-
isError: mutation.isError,
|
|
211
|
-
data: mutation.data,
|
|
212
|
-
error: mutation.error,
|
|
213
|
-
progress,
|
|
214
|
-
reset: () => {
|
|
215
|
-
mutation.reset();
|
|
216
|
-
setProgress(undefined);
|
|
217
|
-
},
|
|
218
|
-
};
|
|
219
|
-
}
|
|
220
|
-
export default useCreateMemoryBatch;
|
|
221
|
-
//# sourceMappingURL=useCreateMemoryBatch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateMemoryBatch.js","sourceRoot":"","sources":["../../src/hooks.wip/useCreateMemoryBatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* useKnowledgeGraph - Hook for knowledge graph operations
|
|
3
|
-
*
|
|
4
|
-
* Provides interface for querying and traversing the knowledge graph.
|
|
5
|
-
* Knowledge graphs store entities and relationships extracted from memories.
|
|
6
|
-
*/
|
|
7
|
-
import { type MemoryServicesConfig } from './useMemoryServices';
|
|
8
|
-
import type { GraphSearchQuery, GraphSearchResult } from '../graph/BrowserKnowledgeGraphManager';
|
|
9
|
-
import type { Entity, KnowledgeGraph } from '../graph/GraphService';
|
|
10
|
-
/**
|
|
11
|
-
* Query and traverse the knowledge graph
|
|
12
|
-
*
|
|
13
|
-
* @param userId - User's unique identifier
|
|
14
|
-
* @param config - Optional services configuration
|
|
15
|
-
* @returns Graph operations and state
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```tsx
|
|
19
|
-
* function GraphExplorer() {
|
|
20
|
-
* const account = useCurrentAccount();
|
|
21
|
-
* const { searchGraph, findRelated, graph, isLoading } = useKnowledgeGraph(
|
|
22
|
-
* account?.address
|
|
23
|
-
* );
|
|
24
|
-
*
|
|
25
|
-
* const handleSearch = async () => {
|
|
26
|
-
* const results = await searchGraph({
|
|
27
|
-
* keywords: ['paris', 'vacation'],
|
|
28
|
-
* entityTypes: ['location', 'event']
|
|
29
|
-
* });
|
|
30
|
-
* console.log('Found:', results);
|
|
31
|
-
* };
|
|
32
|
-
*
|
|
33
|
-
* return (
|
|
34
|
-
* <div>
|
|
35
|
-
* <button onClick={handleSearch}>Search Graph</button>
|
|
36
|
-
* <p>Entities: {graph?.entities.length || 0}</p>
|
|
37
|
-
* </div>
|
|
38
|
-
* );
|
|
39
|
-
* }
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
export declare function useKnowledgeGraph(userId?: string, config?: MemoryServicesConfig): {
|
|
43
|
-
searchGraph: (query: GraphSearchQuery) => Promise<GraphSearchResult>;
|
|
44
|
-
findRelated: (entityId: string, maxHops?: number) => Promise<Entity[]>;
|
|
45
|
-
addToGraph: (entities: Entity[], relationships: Array<{
|
|
46
|
-
source: string;
|
|
47
|
-
target: string;
|
|
48
|
-
label: string;
|
|
49
|
-
confidence?: number;
|
|
50
|
-
}>, memoryId: string) => Promise<void>;
|
|
51
|
-
clearGraph: () => Promise<void>;
|
|
52
|
-
reloadGraph: () => Promise<void>;
|
|
53
|
-
graph: KnowledgeGraph | null;
|
|
54
|
-
lastSearchResults: GraphSearchResult | null;
|
|
55
|
-
isLoading: boolean;
|
|
56
|
-
isReady: boolean;
|
|
57
|
-
error: Error | null;
|
|
58
|
-
stats: {
|
|
59
|
-
totalEntities: number;
|
|
60
|
-
totalRelationships: number;
|
|
61
|
-
entityTypes: Record<string, number>;
|
|
62
|
-
relationshipTypes: Record<string, number>;
|
|
63
|
-
sourceMemories: number;
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
|
-
//# sourceMappingURL=useKnowledgeGraph.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useKnowledgeGraph.d.ts","sourceRoot":"","sources":["../../src/hooks.wip/useKnowledgeGraph.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAqB,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AACjG,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,oBAAoB;yBA4CpB,gBAAgB,KACtB,OAAO,CAAC,iBAAiB,CAAC;4BA2BjB,MAAM,YACP,MAAM,KACd,OAAO,CAAC,MAAM,EAAE,CAAC;2BA8BR,MAAM,EAAE,iBACH,KAAK,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,YACQ,MAAM,KACf,OAAO,CAAC,IAAI,CAAC;sBA2ByB,OAAO,CAAC,IAAI,CAAC;uBA2BZ,OAAO,CAAC,IAAI,CAAC;;;;;;;;;;;;;EA6DxD"}
|