1import * as Layer from "effect/Layer";
2import * as SharedServer from "../environment/SharedServer.ts";
3import * as ArchiveObjects from "./ArchiveObjects.ts";
4import * as ArchiveClient from "./ArchiveClient.ts";
5import * as ArchiveCatalog from "./ArchiveCatalog.ts";
6import * as ServerEnvironment from "../environment/ServerEnvironment.ts";
7import * as ArchiveStorage from "./ArchiveStorage.ts";
8import * as TranscriptArchive from "./TranscriptArchive.ts";
9
10export const layer = TranscriptArchive.layer.pipe(
11 Layer.provideMerge(ArchiveClient.layer.pipe(Layer.provideMerge(ArchiveCatalog.layer))),
12 Layer.provideMerge(ArchiveObjects.layer),
13 Layer.provideMerge(ArchiveStorage.layer),
14 Layer.provideMerge(SharedServer.layer),
15 Layer.provideMerge(ServerEnvironment.layerIdentity),
16);