diff --git a/src/options.js b/src/options.js index e7016ec..36a7054 100644 --- a/src/options.js +++ b/src/options.js @@ -91,5 +91,15 @@ module.exports = optionator({ alias: 'k', type: 'Boolean', description: 'Show stack trace on errors.' + }, { + option: 'react-import-path', + default: 'react/addons', + type: 'String', + description: 'Dependency path for importing React.' + }, { + option: 'lodash-import-path', + default: 'lodash', + type: 'String', + description: 'Dependency path for importing lodash.' }] }); diff --git a/src/reactTemplates.js b/src/reactTemplates.js index 1781184..f1b97f6 100644 --- a/src/reactTemplates.js +++ b/src/reactTemplates.js @@ -442,7 +442,15 @@ function convertTemplateToReact(html, options) { function convertRT(html, reportContext, options) { var rootNode = cheerio.load(html, {lowerCaseTags: false, lowerCaseAttributeNames: false, xmlMode: true, withStartIndices: true}); options = _.defaults({}, options, defaultOptions); - var defines = options.defines ? _.clone(options.defines) : {'react/addons': 'React', lodash: '_'}; + + var reactPath = options.reactImportPath || 'react/addons'; + var lodashPath = options.lodashImportPath || 'lodash'; + var defaultDefines = {}; + defaultDefines[reactPath] = 'React'; + defaultDefines[lodashPath] = '_'; + + var defines = options.defines ? _.clone(options.defines) : defaultDefines; + var context = defaultContext(html, options); validate(options, context, reportContext, rootNode.root()[0]); var rootTags = _.filter(rootNode.root()[0].children, {type: 'tag'});