UNPKG

react-native

Version:

A framework for building native apps using React

45 lines (40 loc) 1.19 kB
/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow strict-local * @format */ 'use strict'; const {TEMPLATES_FOLDER_PATH} = require('./constants'); const {codegenLog} = require('./utils'); const fs = require('fs'); const path = require('path'); const PACKAGE_SWIFT_TEMPLATE_PATH = path.join( TEMPLATES_FOLDER_PATH, 'Package.swift.template', ); function generatePackageSwift( projectRoot /*: string */, outputDir /*: string */, reactNativePath /*: string */, ) { const fullOutputPath = path.join(projectRoot, outputDir); fs.mkdirSync(outputDir, {recursive: true}); // Generate PAckage.swift File codegenLog('Generating Package.swift'); const templateH = fs .readFileSync(PACKAGE_SWIFT_TEMPLATE_PATH, 'utf8') .replace( /{reactNativePath}/, path.relative(fullOutputPath, reactNativePath), ); const finalPathH = path.join(outputDir, 'Package.swift'); fs.writeFileSync(finalPathH, templateH); codegenLog(`Generated artifact: ${finalPathH}`); } module.exports = { generatePackageSwift, };