0 = function (_ref) { var t = _ref.types; var JSX_ANNOTATION_REGEX = /\*?\s*@jsx\s+([^\s]+)/; var visitor = (0, _babelHelperBuilderReactJsx2.default)({ pre: function pre(state) { var tagName = state.tagName; var args = state.args; if (t.react.isCompatTag(tagName)) { args.push(t.stringLiteral(tagName)); } else { args.push(state.tagExpr); } }, post: function post(state, pass) { state.callee = pass.get("jsxIdentifier")(); } }); visitor.Program = function (path, state) { var file = state.file; var id = state.opts.pragma || "React.createElement"; for (var _iterator = file.ast.comments, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : (0, _getIterator3.default)(_iterator);;) { var _ref2; if (_isArray) { if (_i >= _iterator.length) break; _ref2 = _iterator[_i++]; } else { _i = _iterator.next(); if (_i.done) break; _ref2 = _i.value; } var comment = _ref2; var matches = JSX_ANNOTATION_REGEX.exec(comment.value); if (matches) { id = matches[1]; if (id === "React.DOM") { throw file.buildCodeFrameError(comment, "The @jsx React.DOM pragma has been deprecated as of React 0.12"); } else { break; } } } state.set("jsxIdentifier", function () { return id.split(".").map(function (name) { return t.identifier(name); }).reduce(function (object, property) { return t.memberExpression(object, property); }); }); }; return { inherits: _babelPluginSyntaxJsx2.default, visitor: visitor }; }
n/a
1 = function () { return { manipulateOptions: function manipulateOptions(opts, parserOpts) { parserOpts.plugins.push("jsx"); } }; }
n/a
2 = function (_ref) { var t = _ref.types; function addDisplayName(id, call) { var props = call.arguments[0].properties; var safe = true; for (var i = 0; i < props.length; i++) { var prop = props[i]; var key = t.toComputedKey(prop); if (t.isLiteral(key, { value: "displayName" })) { safe = false; break; } } if (safe) { props.unshift(t.objectProperty(t.identifier("displayName"), t.stringLiteral(id))); } } var isCreateClassCallExpression = t.buildMatchMemberExpression("React.createClass"); function isCreateClass(node) { if (!node || !t.isCallExpression(node)) return false; if (!isCreateClassCallExpression(node.callee)) return false; var args = node.arguments; if (args.length !== 1) return false; var first = args[0]; if (!t.isObjectExpression(first)) return false; return true; } return { visitor: { ExportDefaultDeclaration: function ExportDefaultDeclaration(_ref2, state) { var node = _ref2.node; if (isCreateClass(node.declaration)) { var displayName = state.file.opts.basename; if (displayName === "index") { displayName = _path2.default.basename(_path2.default.dirname(state.file.opts.filename)); } addDisplayName(displayName, node.declaration); } }, CallExpression: function CallExpression(path) { var node = path.node; if (!isCreateClass(node)) return; var id = void 0; path.find(function (path) { if (path.isAssignmentExpression()) { id = path.node.left; } else if (path.isObjectProperty()) { id = path.node.key; } else if (path.isVariableDeclarator()) { id = path.node.id; } else if (path.isStatement()) { return true; } if (id) return true; }); if (!id) return; if (t.isMemberExpression(id)) { id = id.property; } if (t.isIdentifier(id)) { addDisplayName(id.name, node); } } } }; }
n/a