{"version":3,"file":"ProjectSchemaResolver.cjs","sources":["../../../../../packages/engine-http/src/project/ProjectSchemaResolver.ts"],"sourcesContent":["import { ProjectSchemaResolver as ProjectSchemaResolverInterface } from '@contember/engine-tenant-api'\nimport { Schema } from '@contember/schema'\nimport { ProjectContainerResolver } from './ProjectContainerResolver'\n\nexport class ProjectSchemaResolver implements ProjectSchemaResolverInterface {\n\tconstructor(\n\t\tprivate readonly projectContainerResolver: ProjectContainerResolver,\n\t) {}\n\n\tasync getSchema(slug: string): Promise<Schema | undefined> {\n\t\tconst container = await this.projectContainerResolver.getProjectContainer(slug)\n\t\tif (!container) {\n\t\t\treturn undefined\n\t\t}\n\t\tconst db = container.systemReadDatabaseContext\n\t\treturn (await container.contentSchemaResolver.getSchema({ db, normalize: true }))?.schema\n\t}\n}\n\nexport class ProjectSchemaResolverProxy implements ProjectSchemaResolverInterface {\n\tprivate resolver: ProjectSchemaResolver | undefined\n\n\tsetResolver(resolver: ProjectSchemaResolver): void {\n\t\tthis.resolver = resolver\n\t}\n\n\tasync getSchema(projectSlug: string): Promise<Schema | undefined> {\n\t\tif (!this.resolver) {\n\t\t\tthrow new Error('Resolved is not set')\n\t\t}\n\t\treturn this.resolver.getSchema(projectSlug)\n\t}\n}\n"],"names":[],"mappings":";;;;;AAIO,MAAM,sBAAgE;AAAA,EAC5E,YACkB,0BAChB;AADgB,SAAA,2BAAA;AAAA,EAAA;AAAA,EAGlB,MAAM,UAAU,MAA2C;AAC1D,UAAM,YAAY,MAAM,KAAK,yBAAyB,oBAAoB,IAAI;AAC9E,QAAI,CAAC,WAAW;AACR,aAAA;AAAA,IAAA;AAER,UAAM,KAAK,UAAU;AACb,YAAA,MAAM,UAAU,sBAAsB,UAAU,EAAE,IAAI,WAAW,KAAM,CAAA,IAAI;AAAA,EAAA;AAErF;AAEO,MAAM,2BAAqE;AAAA,EAA3E,cAAA;AACE,kBAAA,MAAA,UAAA;AAAA,EAAA;AAAA,EAER,YAAY,UAAuC;AAClD,SAAK,WAAW;AAAA,EAAA;AAAA,EAGjB,MAAM,UAAU,aAAkD;AAC7D,QAAA,CAAC,KAAK,UAAU;AACb,YAAA,IAAI,MAAM,qBAAqB;AAAA,IAAA;AAE/B,WAAA,KAAK,SAAS,UAAU,WAAW;AAAA,EAAA;AAE5C;;;"}