| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- "use strict";
- exports.__esModule = true;
- exports.isReactComponent = undefined;
- exports.isCompatTag = isCompatTag;
- exports.buildChildren = buildChildren;
- var _index = require("./index");
- var t = _interopRequireWildcard(_index);
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
- var isReactComponent = exports.isReactComponent = t.buildMatchMemberExpression("React.Component");
- function isCompatTag(tagName) {
- return !!tagName && /^[a-z]|\-/.test(tagName);
- }
- function cleanJSXElementLiteralChild(child, args) {
- var lines = child.value.split(/\r\n|\n|\r/);
- var lastNonEmptyLine = 0;
- for (var i = 0; i < lines.length; i++) {
- if (lines[i].match(/[^ \t]/)) {
- lastNonEmptyLine = i;
- }
- }
- var str = "";
- for (var _i = 0; _i < lines.length; _i++) {
- var line = lines[_i];
- var isFirstLine = _i === 0;
- var isLastLine = _i === lines.length - 1;
- var isLastNonEmptyLine = _i === lastNonEmptyLine;
- var trimmedLine = line.replace(/\t/g, " ");
- if (!isFirstLine) {
- trimmedLine = trimmedLine.replace(/^[ ]+/, "");
- }
- if (!isLastLine) {
- trimmedLine = trimmedLine.replace(/[ ]+$/, "");
- }
- if (trimmedLine) {
- if (!isLastNonEmptyLine) {
- trimmedLine += " ";
- }
- str += trimmedLine;
- }
- }
- if (str) args.push(t.stringLiteral(str));
- }
- function buildChildren(node) {
- var elems = [];
- for (var i = 0; i < node.children.length; i++) {
- var child = node.children[i];
- if (t.isJSXText(child)) {
- cleanJSXElementLiteralChild(child, elems);
- continue;
- }
- if (t.isJSXExpressionContainer(child)) child = child.expression;
- if (t.isJSXEmptyExpression(child)) continue;
- elems.push(child);
- }
- return elems;
- }
|