INNER CODE UNIT · JavaScript
getSchema
mongodb/mongot · packages/search-index-schema/index.js:20
function getSchema(indexType, enabledFlags = []) {
const candidates = Object.hasOwn(variants, indexType) ? variants[indexType] : undefined;
if (!candidates) {
throw new Error(
`Unknown index type "${indexType}". Expected one of: ${Object.keys(variants).join(', ')}.`
);
}
const enabled = new Set(enabledFlags);
const variant = candidates.find((v) => v.flags.every((flag) => enabled.has(flag)));
if (!variant) {
// Unreachable in practice: every index type declares a base variant with no required flags.
throw new Error(`No schema variant matched for index type "${indexType}".`);
}
const schema = bundledSchemas[variant.schema];
if (!schema) {