feat: complete mindspace conversation packages
This commit is contained in:
+19
-1
@@ -28,7 +28,13 @@ function packageStorageKey(packageRecord, relativePath) {
|
||||
return `${record.storagePrefix}/${relative}`;
|
||||
}
|
||||
|
||||
export function createMindSpaceServiceFacade({ storageAdapter, publicBaseUrl } = {}) {
|
||||
export function createMindSpaceServiceFacade({
|
||||
storageAdapter,
|
||||
publicBaseUrl,
|
||||
conversationPackageBackfill,
|
||||
conversationPackagePublicHtmlHydrator,
|
||||
logger = console,
|
||||
} = {}) {
|
||||
const storage = requireStorageAdapter(storageAdapter);
|
||||
|
||||
return {
|
||||
@@ -93,6 +99,18 @@ export function createMindSpaceServiceFacade({ storageAdapter, publicBaseUrl } =
|
||||
const storagePrefix = cleanPrefix ? `${record.storagePrefix}/${cleanPrefix}` : record.storagePrefix;
|
||||
return storage.listObjects(storagePrefix);
|
||||
},
|
||||
|
||||
async prepareConversationPackageRead({ user, sessionId } = {}) {
|
||||
if (typeof conversationPackageBackfill === 'function') {
|
||||
await conversationPackageBackfill({ user, sessionId }).catch((error) => {
|
||||
logger?.warn?.('[MindSpace] conversation package DB backfill failed:', error?.message ?? error);
|
||||
});
|
||||
}
|
||||
if (typeof conversationPackagePublicHtmlHydrator === 'function') {
|
||||
return conversationPackagePublicHtmlHydrator({ user, sessionId });
|
||||
}
|
||||
return [];
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user