({ appRoot, target })
| 233 | } |
| 234 | |
| 235 | export async function collectNativeAssets({ appRoot, target }) { |
| 236 | const requireFromApp = createRequire(pathToFileURL(resolve(appRoot, 'package.json'))); |
| 237 | const targetDeps = resolveTargetDeps(target); // throws on unsupported target |
| 238 | |
| 239 | const manifestPackages = []; |
| 240 | const assets = {}; |
| 241 | |
| 242 | for (const dep of targetDeps) { |
| 243 | const packageRoot = resolvePackageRootGeneric( |
| 244 | requireFromApp, |
| 245 | dep.resolvedName, |
| 246 | dep.parentName, |
| 247 | appRoot, |
| 248 | target, |
| 249 | ); |
| 250 | const files = await collectPackageFiles({ |
| 251 | packageName: dep.resolvedName, |
| 252 | packageRoot, |
| 253 | includeNativeFiles: dep.collect === 'native-files', |
| 254 | includeEntryJs: dep.collect !== 'native-file-only', |
| 255 | nativeFileRelatives: dep.nativeFileRelatives, |
| 256 | }); |
| 257 | const result = await packageManifestEntries({ |
| 258 | packageName: dep.resolvedName, |
| 259 | packageRoot, |
| 260 | files, |
| 261 | target, |
| 262 | }); |
| 263 | manifestPackages.push(result.packageManifest); |
| 264 | Object.assign(assets, result.assets); |
| 265 | } |
| 266 | |
| 267 | const manifest = { |
| 268 | version: NATIVE_ASSET_MANIFEST_VERSION, |
| 269 | target, |
| 270 | packages: manifestPackages, |
| 271 | }; |
| 272 | |
| 273 | return { |
| 274 | manifest, |
| 275 | manifestJson: `${JSON.stringify(manifest, null, 2)}\n`, |
| 276 | assets, |
| 277 | }; |
| 278 | } |
no test coverage detected