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) {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…