All files / src main.js

100% Statements 7/7
75% Branches 3/4
100% Functions 1/1
100% Lines 7/7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66                                  1x 1x                                                           13x 13x   13x 8x     13x                    
/*
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 *  This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @flow
 *
 */
 
import * as handlers from './handlers';
import parse from './parse';
import * as resolver from './resolver';
import * as utils from './utils';
 
var defaultResolver = resolver.findExportedComponentDefinition;
var defaultHandlers = [
  handlers.propTypeHandler,
  handlers.propTypeCompositionHandler,
  handlers.propDocBlockHandler,
  handlers.flowTypeHandler,
  handlers.flowTypeDocBlockHandler,
  handlers.defaultPropsHandler,
  handlers.componentDocblockHandler,
  handlers.displayNameHandler,
  handlers.componentMethodsHandler,
  handlers.componentMethodsJsDocHandler,
];
 
/**
 * See `lib/parse.js` for more information about the arguments. This function
 * simply sets default values for convenience.
 *
 * The default resolver looks for *exported* `React.createClass(def)` calls
 * and expected `def` to resolve to an object expression.
 *
 * The default `handlers` look for `propTypes` and `getDefaultProps` in the
 * provided object expression, and extract prop type information, prop
 * documentation (from docblocks), default prop values and component
 * documentation (from a docblock).
 */
function defaultParse( // eslint-disable-line no-unused-vars
  src: string,
  resolver?: ?Resolver, // eslint-disable-line no-shadow
  handlers?: ?Array<Handler> // eslint-disable-line no-shadow
): Array<Object>|Object {
  Eif (!resolver) {
    resolver = defaultResolver;
  }
  if (!handlers) {
    handlers = defaultHandlers;
  }
 
  return parse(src, resolver, handlers);
}
 
export {
  defaultParse as parse,
  defaultHandlers,
  handlers,
  resolver,
  utils,
};