UNPKG

@snups/rjsf-utils

Version:
21 lines 987 B
import get from 'lodash-es/get.js'; import isString from 'lodash-es/isString.js'; import { DISCRIMINATOR_PATH } from './constants.js'; /** Returns the `discriminator.propertyName` when defined in the `schema` if it is a string. A warning is generated when * it is not a string. Returns `undefined` when a valid discriminator is not present. * * @param schema - The schema from which the discriminator is potentially obtained * @returns - The `discriminator.propertyName` if it exists in the schema, otherwise `undefined` */ export default function getDiscriminatorFieldFromSchema(schema) { let discriminator; const maybeString = get(schema, DISCRIMINATOR_PATH); if (isString(maybeString)) { discriminator = maybeString; } else if (maybeString !== undefined) { console.warn(`Expecting discriminator to be a string, got "${typeof maybeString}" instead`); } return discriminator; } //# sourceMappingURL=getDiscriminatorFieldFromSchema.js.map