feat: finalize mindspace service extraction phase a
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
import { createAssetService } from './mindspace-assets.mjs';
|
||||
import { createConversationPackageRegistry } from './mindspace-conversation-package-registry.mjs';
|
||||
import { createConversationPackageStore } from './mindspace-conversation-package-store.mjs';
|
||||
import { createCleanupService } from './mindspace-cleanup.mjs';
|
||||
import { createAgentJobService } from './mindspace-agent-jobs.mjs';
|
||||
import { createAssetAgentService } from './mindspace-asset-agent.mjs';
|
||||
import { createPageLiveEditService } from './mindspace-page-live-edit.mjs';
|
||||
import { createPageService } from './mindspace-pages.mjs';
|
||||
import { createPublicationService } from './mindspace-publications.mjs';
|
||||
import { createMindSpaceLocalRuntime } from './mindspace-runtime-config.mjs';
|
||||
|
||||
export function createMindSpaceLocalRuntimeServices({
|
||||
pool,
|
||||
h5Root,
|
||||
env = process.env,
|
||||
maxFileBytes,
|
||||
publicPageLimit,
|
||||
resolveUserIdForAgentSession,
|
||||
conversationPackageBackfill,
|
||||
conversationPackagePublicHtmlHydrator,
|
||||
logger = console,
|
||||
} = {}) {
|
||||
let conversationPackageRegistry = null;
|
||||
const runtime = createMindSpaceLocalRuntime({
|
||||
h5Root,
|
||||
env,
|
||||
logger,
|
||||
conversationPackageBackfill: ({ user, sessionId }) =>
|
||||
conversationPackageBackfill?.({
|
||||
user,
|
||||
sessionId,
|
||||
storageRoot: runtime.storageRoot,
|
||||
registry: conversationPackageRegistry,
|
||||
}),
|
||||
conversationPackagePublicHtmlHydrator,
|
||||
});
|
||||
|
||||
conversationPackageRegistry = createConversationPackageRegistry({
|
||||
store: createConversationPackageStore(pool),
|
||||
service: runtime.serviceFacade,
|
||||
});
|
||||
|
||||
const assetService = createAssetService(pool, {
|
||||
h5Root,
|
||||
storageRoot: runtime.storageRoot,
|
||||
maxFileBytes,
|
||||
conversationPackageRegistry,
|
||||
});
|
||||
const pageService = createPageService(pool, {
|
||||
h5Root,
|
||||
storageRoot: runtime.storageRoot,
|
||||
conversationPackageRegistry,
|
||||
});
|
||||
const publicationService = createPublicationService(pool, {
|
||||
h5Root,
|
||||
storageRoot: runtime.storageRoot,
|
||||
publicPageLimit,
|
||||
conversationPackageRegistry,
|
||||
});
|
||||
const cleanupService = createCleanupService(pool, {
|
||||
storageRoot: runtime.storageRoot,
|
||||
h5Root,
|
||||
});
|
||||
const agentJobService = createAgentJobService(pool, {
|
||||
pageService,
|
||||
storageRoot: runtime.storageRoot,
|
||||
maxOutputBytes: maxFileBytes,
|
||||
});
|
||||
const pageLiveEditService = createPageLiveEditService({
|
||||
pageService,
|
||||
resolveUserIdForAgentSession,
|
||||
});
|
||||
const assetAgentService = createAssetAgentService({
|
||||
assetService,
|
||||
resolveUserIdForAgentSession,
|
||||
});
|
||||
|
||||
return {
|
||||
...runtime,
|
||||
conversationPackageRegistry,
|
||||
assetService,
|
||||
pageService,
|
||||
publicationService,
|
||||
cleanupService,
|
||||
agentJobService,
|
||||
pageLiveEditService,
|
||||
assetAgentService,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user