function exportDeclaration()

in src/resolver/findAllExportedComponentDefinitions.ts [75:105]


  function exportDeclaration(path: NodePath): boolean | null | undefined {
    const definitions: Array<NodePath | null> = resolveExportDeclaration(
      path,
      importer,
    )
      .reduce((acc, definition) => {
        if (isComponentDefinition(definition, importer)) {
          acc.push(definition);
        } else {
          const resolved = resolveToValue(
            resolveHOC(definition, importer),
            importer,
          );
          if (isComponentDefinition(resolved, importer)) {
            acc.push(resolved);
          }
        }
        return acc;
      }, [] as NodePath[])
      .map(definition => resolveDefinition(definition, importer));

    if (definitions.length === 0) {
      return false;
    }
    definitions.forEach(definition => {
      if (definition && components.indexOf(definition) === -1) {
        components.push(definition);
      }
    });
    return false;
  }