(rootDir: string, extConfig: ExternalConfig)
| 263 | } |
| 264 | |
| 265 | async function loadIOSConfig(rootDir: string, extConfig: ExternalConfig): Promise<IOSConfig> { |
| 266 | const name = 'ios'; |
| 267 | const platformDir = extConfig.ios?.path ?? 'ios'; |
| 268 | const platformDirAbs = resolve(rootDir, platformDir); |
| 269 | const scheme = extConfig.ios?.scheme ?? 'App'; |
| 270 | const nativeProjectDir = 'App'; |
| 271 | const nativeProjectDirAbs = resolve(platformDirAbs, nativeProjectDir); |
| 272 | const nativeTargetDir = `${nativeProjectDir}/App`; |
| 273 | const nativeTargetDirAbs = resolve(platformDirAbs, nativeTargetDir); |
| 274 | const nativeXcodeProjDir = `${nativeProjectDir}/App.xcodeproj`; |
| 275 | const nativeXcodeProjDirAbs = resolve(platformDirAbs, nativeXcodeProjDir); |
| 276 | const nativeXcodeWorkspaceDirAbs = lazy(() => determineXcodeWorkspaceDirAbs(nativeProjectDirAbs)); |
| 277 | const podPath = lazy(() => determineCocoapodPath()); |
| 278 | const packageManager = lazy(() => determinePackageManager(rootDir, platformDirAbs, nativeProjectDirAbs)); |
| 279 | const webDirAbs = lazy(() => determineIOSWebDirAbs(nativeProjectDirAbs, nativeTargetDirAbs, nativeXcodeProjDirAbs)); |
| 280 | const cordovaPluginsDir = 'capacitor-cordova-ios-plugins'; |
| 281 | const buildOptions = { |
| 282 | exportMethod: extConfig.ios?.buildOptions?.exportMethod as XcodeExportMethod, |
| 283 | xcodeSigningStyle: extConfig.ios?.buildOptions?.signingStyle, |
| 284 | signingCertificate: extConfig.ios?.buildOptions?.signingCertificate, |
| 285 | provisioningProfile: extConfig.ios?.buildOptions?.provisioningProfile, |
| 286 | }; |
| 287 | return { |
| 288 | name, |
| 289 | minVersion: '15.0', |
| 290 | platformDir, |
| 291 | platformDirAbs, |
| 292 | scheme, |
| 293 | cordovaPluginsDir, |
| 294 | cordovaPluginsDirAbs: resolve(platformDirAbs, cordovaPluginsDir), |
| 295 | nativeProjectDir, |
| 296 | nativeProjectDirAbs, |
| 297 | nativeTargetDir, |
| 298 | nativeTargetDirAbs, |
| 299 | nativeXcodeProjDir, |
| 300 | nativeXcodeProjDirAbs, |
| 301 | nativeXcodeWorkspaceDir: lazy(async () => relative(platformDirAbs, await nativeXcodeWorkspaceDirAbs)), |
| 302 | nativeXcodeWorkspaceDirAbs, |
| 303 | webDir: lazy(async () => relative(platformDirAbs, await webDirAbs)), |
| 304 | webDirAbs, |
| 305 | podPath, |
| 306 | packageManager, |
| 307 | buildOptions, |
| 308 | }; |
| 309 | } |
| 310 | |
| 311 | async function loadWebConfig(rootDir: string, webDir: string): Promise<WebConfig> { |
| 312 | const platformDir = webDir; |
no test coverage detected