+/**
+ * Merges folded header lines
+ * @param {String[]} lines
+ */
+const unfoldHeaderLines = (lines) => {
+ const foldedLineRE = /^(\t| +)(.*)$/;
+ if (lines) {
+ lines.reduceRight((_, line, idx) => {
+ const result = foldedLineRE.exec(line);
+ if (result && idx) {
+ const prevIdx = idx - 1;
+ const mergedLine = `${lines[prevIdx]} ${result[2]}`;
+ lines.splice(prevIdx, 2, mergedLine);
+ return mergedLine;
+ }
+ }, null);
+ }
+ return lines;
+};
+