2018-02-09 01:10:29 +00:00
|
|
|
/**
|
|
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
|
|
*
|
2018-02-17 02:24:55 +00:00
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
2018-05-11 19:43:49 +00:00
|
|
|
*
|
|
|
|
* @format
|
2018-02-09 01:10:29 +00:00
|
|
|
*/
|
|
|
|
|
2017-10-18 04:19:53 +00:00
|
|
|
'use strict';
|
|
|
|
|
2018-05-11 19:43:49 +00:00
|
|
|
module.exports = function addPodEntry(
|
|
|
|
podLines,
|
|
|
|
linesToAddEntry,
|
|
|
|
podName,
|
|
|
|
nodePath,
|
|
|
|
) {
|
2017-10-18 04:19:53 +00:00
|
|
|
const newEntry = `pod '${podName}', :path => '../node_modules/${nodePath}'\n`;
|
|
|
|
|
|
|
|
if (!linesToAddEntry) {
|
|
|
|
return;
|
|
|
|
} else if (Array.isArray(linesToAddEntry)) {
|
2018-05-11 19:43:49 +00:00
|
|
|
linesToAddEntry.map(({line, indentation}, idx) =>
|
|
|
|
podLines.splice(line + idx, 0, getLineToAdd(newEntry, indentation)),
|
2017-10-18 04:19:53 +00:00
|
|
|
);
|
|
|
|
} else {
|
2018-05-11 19:43:49 +00:00
|
|
|
const {line, indentation} = linesToAddEntry;
|
2017-10-18 04:19:53 +00:00
|
|
|
podLines.splice(line, 0, getLineToAdd(newEntry, indentation));
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
function getLineToAdd(newEntry, indentation) {
|
|
|
|
const spaces = Array(indentation + 1).join(' ');
|
|
|
|
return spaces + newEntry;
|
|
|
|
}
|