react-native-legal
Version:
Acknowledge OSS libraries used in your React Native app
28 lines (27 loc) • 1.36 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.addSettingsBundle = void 0;
const fs_1 = __importDefault(require("fs"));
const ios_1 = require("../../../plugin-utils/build/ios");
const utils_1 = require("./utils");
/**
* Creates a Settings.bundle and links it to all application native targets
*/
function addSettingsBundle(iosProjectPath) {
(0, ios_1.addSettingsBundleUtil)(iosProjectPath, ({ settingsBundleFilename }) => {
const projectName = (0, utils_1.getIOSProjectName)(iosProjectPath);
const { pbxproj, pbxprojPath } = (0, utils_1.getIOSPbxProj)(iosProjectPath);
const settingsBundleFile = pbxproj.addFile(settingsBundleFilename, pbxproj.findPBXGroupKey({ name: projectName }));
if (!settingsBundleFile) {
throw new Error('Could not add Settings.bundle file reference to xcode project');
}
settingsBundleFile.uuid = pbxproj.generateUuid();
pbxproj.addToPbxBuildFileSection(settingsBundleFile);
(0, utils_1.addToAllPbxResourcesBuildPhases)(pbxproj, settingsBundleFile);
fs_1.default.writeFileSync(pbxprojPath, pbxproj.writeSync());
});
}
exports.addSettingsBundle = addSettingsBundle;