“use strict”;

Object.defineProperty(exports, “__esModule”, {

value: true

}); exports.default = cleanJSXElementLiteralChild;

var _generated = require(“../../builders/generated”);

function cleanJSXElementLiteralChild(child, args) {

const lines = child.value.split(/\r\n|\n|\r/);
let lastNonEmptyLine = 0;

for (let i = 0; i < lines.length; i++) {
  if (lines[i].match(/[^ \t]/)) {
    lastNonEmptyLine = i;
  }
}

let str = "";

for (let i = 0; i < lines.length; i++) {
  const line = lines[i];
  const isFirstLine = i === 0;
  const isLastLine = i === lines.length - 1;
  const isLastNonEmptyLine = i === lastNonEmptyLine;
  let 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((0, _generated.stringLiteral)(str));

}