UNPKG

react-native-nitro-screen-recorder

Version:

A library to capture screen recordings with react-native powered by NitroModules.

29 lines (25 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updatePodfile = updatePodfile; var _fs = _interopRequireDefault(require("fs")); var _iosConstants = require("./iosConstants"); var _ScreenRecorderLog = require("./ScreenRecorderLog"); var _FileManager = require("./FileManager"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } // updatePodfile.ts async function updatePodfile(iosPath) { const podfilePath = `${iosPath}/Podfile`; let podfile = await _FileManager.FileManager.readFile(podfilePath); // Skip if already present if (podfile.includes(_iosConstants.BROADCAST_EXT_TARGET_NAME)) { _ScreenRecorderLog.ScreenRecorderLog.log('Extension target already in Podfile. Skipping…'); return; } // Inject snippet into every `target 'Something' do … end` that looks like an iOS app podfile = podfile.replace(/target ['"][^'"]+['"] do([\s\S]*?)end/g, block => block.replace(/\nend$/, `${_iosConstants.BROADCAST_EXT_PODFILE_SNIPPET}\nend`)); await _fs.default.promises.writeFile(podfilePath, podfile, 'utf8'); _ScreenRecorderLog.ScreenRecorderLog.log('Inserted BroadcastExtension into Podfile.'); } //# sourceMappingURL=updatePodfile.js.map