function getOptionBooleanValue()

in packages/babel-plugin-fbt/src/FbtUtil.js [534:555]


function getOptionBooleanValue<K: string>(
  options: FbtOptionValues<K>,
  name: K,
  node: ?BabelNode,
): boolean {
  if (!options.hasOwnProperty(name)) {
    return false;
  }
  const value = options[name];
  if (isBooleanLiteral(value)) {
    return value.value;
  }
  // $FlowFixMe `expression` property might be undefined
  if (value.expression) {
    throw errorAt(node, `Expression not permitted for option "${name}".`);
  } else {
    throw errorAt(
      node,
      `Value for option "${name}" must be Boolean literal 'true' or 'false'.`,
    );
  }
}