@callstack/react-native-brownfield 3.9.0 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/ReactBrownfield.podspec +23 -3
  3. package/ios/BrownfieldDevLoadingViewBridge.h +11 -0
  4. package/ios/BrownfieldDevLoadingViewBridge.m +12 -0
  5. package/ios/{ExpoHostRuntime.swift → Expo/ExpoHostRuntime.swift} +65 -23
  6. package/ios/ReactNativeBrownfield.swift +14 -0
  7. package/ios/ReactNativeBrownfield.xcodeproj/project.pbxproj +74 -24
  8. package/ios/{ReactNativeHostRuntime.swift → Vanilla/ReactNativeHostRuntime.swift} +40 -12
  9. package/ios/swiftpm/Package.swift +27 -0
  10. package/ios/swiftpm/Sources/BrownfieldBundleSupport/BrownfieldBundleURLResolver.swift +28 -0
  11. package/ios/swiftpm/Tests/BrownfieldBundleSupportTests/BrownfieldBundleURLResolverTests.swift +156 -0
  12. package/lib/commonjs/expo-config-plugin/ios/withBrownfieldIos.js +1 -1
  13. package/lib/commonjs/expo-config-plugin/ios/withBrownfieldIos.js.map +1 -1
  14. package/lib/commonjs/expo-config-plugin/ios/withFmtFix.js +12 -0
  15. package/lib/commonjs/expo-config-plugin/ios/withFmtFix.js.map +1 -0
  16. package/lib/commonjs/expo-config-plugin/ios/withIosFrameworkFiles.js +1 -1
  17. package/lib/commonjs/expo-config-plugin/ios/withIosFrameworkFiles.js.map +1 -1
  18. package/lib/commonjs/expo-config-plugin/ios/xcodeHelpers.js +6 -1
  19. package/lib/commonjs/expo-config-plugin/ios/xcodeHelpers.js.map +1 -1
  20. package/lib/commonjs/expo-config-plugin/logging.js +1 -1
  21. package/lib/commonjs/expo-config-plugin/logging.js.map +1 -1
  22. package/lib/commonjs/expo-config-plugin/template/ios/FrameworkInterface.swift +4 -1
  23. package/lib/module/expo-config-plugin/ios/withBrownfieldIos.js +1 -1
  24. package/lib/module/expo-config-plugin/ios/withBrownfieldIos.js.map +1 -1
  25. package/lib/module/expo-config-plugin/ios/withFmtFix.js +12 -0
  26. package/lib/module/expo-config-plugin/ios/withFmtFix.js.map +1 -0
  27. package/lib/module/expo-config-plugin/ios/withIosFrameworkFiles.js +1 -1
  28. package/lib/module/expo-config-plugin/ios/withIosFrameworkFiles.js.map +1 -1
  29. package/lib/module/expo-config-plugin/ios/xcodeHelpers.js +6 -1
  30. package/lib/module/expo-config-plugin/ios/xcodeHelpers.js.map +1 -1
  31. package/lib/module/expo-config-plugin/logging.js +1 -1
  32. package/lib/module/expo-config-plugin/logging.js.map +1 -1
  33. package/lib/module/expo-config-plugin/template/ios/FrameworkInterface.swift +4 -1
  34. package/lib/typescript/commonjs/src/expo-config-plugin/ios/withBrownfieldIos.d.ts.map +1 -1
  35. package/lib/typescript/commonjs/src/expo-config-plugin/ios/withFmtFix.d.ts +5 -0
  36. package/lib/typescript/commonjs/src/expo-config-plugin/ios/withFmtFix.d.ts.map +1 -0
  37. package/lib/typescript/commonjs/src/expo-config-plugin/ios/withIosFrameworkFiles.d.ts.map +1 -1
  38. package/lib/typescript/commonjs/src/expo-config-plugin/ios/xcodeHelpers.d.ts +14 -0
  39. package/lib/typescript/commonjs/src/expo-config-plugin/ios/xcodeHelpers.d.ts.map +1 -1
  40. package/lib/typescript/commonjs/src/expo-config-plugin/logging.d.ts +1 -0
  41. package/lib/typescript/commonjs/src/expo-config-plugin/logging.d.ts.map +1 -1
  42. package/lib/typescript/module/src/expo-config-plugin/ios/withBrownfieldIos.d.ts.map +1 -1
  43. package/lib/typescript/module/src/expo-config-plugin/ios/withFmtFix.d.ts +5 -0
  44. package/lib/typescript/module/src/expo-config-plugin/ios/withFmtFix.d.ts.map +1 -0
  45. package/lib/typescript/module/src/expo-config-plugin/ios/withIosFrameworkFiles.d.ts.map +1 -1
  46. package/lib/typescript/module/src/expo-config-plugin/ios/xcodeHelpers.d.ts +14 -0
  47. package/lib/typescript/module/src/expo-config-plugin/ios/xcodeHelpers.d.ts.map +1 -1
  48. package/lib/typescript/module/src/expo-config-plugin/logging.d.ts +1 -0
  49. package/lib/typescript/module/src/expo-config-plugin/logging.d.ts.map +1 -1
  50. package/package.json +3 -3
  51. package/src/expo-config-plugin/ios/withBrownfieldIos.ts +14 -2
  52. package/src/expo-config-plugin/ios/withFmtFix.ts +72 -0
  53. package/src/expo-config-plugin/ios/withIosFrameworkFiles.ts +10 -10
  54. package/src/expo-config-plugin/ios/xcodeHelpers.ts +134 -14
  55. package/src/expo-config-plugin/logging.ts +4 -0
  56. package/src/expo-config-plugin/template/ios/FrameworkInterface.swift +4 -1
  57. /package/ios/{ReactNativeView.swift → Views/ReactNativeView.swift} +0 -0
  58. /package/ios/{ReactNativeViewController.swift → Views/ReactNativeViewController.swift} +0 -0
  59. /package/ios/{BrownfieldBundlePathResolver.swift → swiftpm/Sources/BrownfieldBundleSupport/BrownfieldBundlePathResolver.swift} +0 -0
@@ -1,2 +1,7 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.addExpoPre55ShellPatchScriptPhase=addExpoPre55ShellPatchScriptPhase;exports.addFrameworkTarget=addFrameworkTarget;exports.addSourceFilesBuildPhase=addSourceFilesBuildPhase;exports.copyBundleReactNativePhase=copyBundleReactNativePhase;exports.createPbxCommentedReference=createPbxCommentedReference;exports.ensureExpoPre55ShellPatchScriptPhaseIsOrdered=ensureExpoPre55ShellPatchScriptPhaseIsOrdered;exports.ensureTargetHasFileReferenceInResourcesBuildPhase=ensureTargetHasFileReferenceInResourcesBuildPhase;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _nodePath=_interopRequireDefault(require("node:path"));var _configPlugins=require("@expo/config-plugins");var _logging=require("../logging");var _SourceModificationError=require("../errors/SourceModificationError");var _withIosFrameworkFiles=require("./withIosFrameworkFiles");var _engine=require("../template/engine");function addFrameworkTarget(project,modRequest,options){var frameworkName=options.frameworkName,bundleIdentifier=options.bundleIdentifier;var existingTarget=project.pbxTargetByName(frameworkName);if(existingTarget){var _Object$entries$find;_logging.Logger.logDebug(`Framework target "${frameworkName}" already exists, skipping creation`);var frameworkTargetUUID=(_Object$entries$find=Object.entries(project.pbxNativeTargetSection()).find(function(_ref){var _ref2=(0,_slicedToArray2.default)(_ref,2),_key=_ref2[0],value=_ref2[1];return(value==null?void 0:value.productReference)===existingTarget.productReference;}))==null?void 0:_Object$entries$find[0];if(!frameworkTargetUUID){throw new _SourceModificationError.SourceModificationError(`Failed to find framework target UUID for ${frameworkName}, although it can be resolved by name`);}return{frameworkTargetUUID:frameworkTargetUUID,targetAlreadyExists:true};}_logging.Logger.logDebug(`Adding iOS framework target: ${frameworkName}`);var frameworkTarget=project.addTarget(frameworkName,'framework',frameworkName,bundleIdentifier);if(!frameworkTarget){throw new _SourceModificationError.SourceModificationError(`Failed to create framework target: ${frameworkName}`);}var frameworkBuildConfigurations=project.pbxXCConfigurationList()[frameworkTarget.pbxNativeTarget.buildConfigurationList];var debugFrameworkConfigKey=frameworkBuildConfigurations.buildConfigurations.find(function(_ref3){var comment=_ref3.comment;return comment==='Debug';}).value;var releaseFrameworkConfigKey=frameworkBuildConfigurations.buildConfigurations.find(function(_ref4){var comment=_ref4.comment;return comment==='Release';}).value;var debugSettings=getFrameworkBuildSettings({configuration:'Debug'},options);var releaseSettings=getFrameworkBuildSettings({configuration:'Release'},options);var configs=project.pbxXCBuildConfigurationSection();for(var configName in configs){var sourceBuildSettings=configName===releaseFrameworkConfigKey?releaseSettings:configName===debugFrameworkConfigKey?debugSettings:null;if(sourceBuildSettings){var destinationBuildSettings=configs[configName].buildSettings;for(var key in sourceBuildSettings){destinationBuildSettings[key]=sourceBuildSettings[key];}_logging.Logger.logDebug(`Updated build settings for ${configName} configuration of target ${frameworkName}`);}}Object.entries(debugSettings).forEach(function(_ref5){var _ref6=(0,_slicedToArray2.default)(_ref5,2),key=_ref6[0],value=_ref6[1];project.updateBuildProperty(key,value,'Debug',frameworkName);});Object.entries(releaseSettings).forEach(function(_ref7){var _ref8=(0,_slicedToArray2.default)(_ref7,2),key=_ref8[0],value=_ref8[1];project.updateBuildProperty(key,value,'Release',frameworkName);});var filePaths=(0,_withIosFrameworkFiles.getFrameworkSourceFiles)(options).map(function(file){return file.relativePath;});var groupPath=_nodePath.default.join(modRequest.platformProjectRoot,frameworkName);_logging.Logger.logDebug(`Creating PBX group '${frameworkName}' under path '${groupPath}' with files: ${filePaths.join(', ')}`);var frameworkGroup=project.addPbxGroup(filePaths,frameworkName,groupPath);var mainGroupKey=project.getFirstProject().firstProject.mainGroup;project.addToPbxGroup(frameworkGroup.uuid,mainGroupKey);_logging.Logger.logInfo(`Successfully added framework target: ${frameworkName}`);return{frameworkTargetUUID:frameworkTarget.uuid,targetAlreadyExists:false};}function addSourceFilesBuildPhase(project,frameworkTargetUUID,options){var filePaths=(0,_withIosFrameworkFiles.getFrameworkSourceFiles)(options).map(function(file){return file.relativePath;});var sourceFiles=filePaths.filter(function(filePath){return!filePath.endsWith('.plist');});project.addBuildPhase(sourceFiles,'PBXSourcesBuildPhase',options.frameworkName,frameworkTargetUUID,'framework','""');}var PBX_BUILD_ACTION_MASK_ALL=2147483647;var PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED=0;var PBX_RESOURCES_BUILD_PHASE_ISA='PBXResourcesBuildPhase';var PBX_BUILD_FILE_ISA='PBXBuildFile';function createPbxCommentedReference(value,comment){return{value:value,comment:comment};}function createResourcesBuildPhase(){return{isa:PBX_RESOURCES_BUILD_PHASE_ISA,buildActionMask:PBX_BUILD_ACTION_MASK_ALL,files:[],runOnlyForDeploymentPostprocessing:PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED};}function createBuildFile(fileRef){return{isa:PBX_BUILD_FILE_ISA,fileRef:fileRef};}function getRawProjectObjects(project){var _hash$project$objects,_hash;return(_hash$project$objects=(_hash=project.hash)==null||(_hash=_hash.project)==null?void 0:_hash.objects)!=null?_hash$project$objects:{};}function getReferencedUuid(reference){var _reference$value;if(!reference){return null;}return typeof reference==='string'?reference:(_reference$value=reference.value)!=null?_reference$value:null;}function getFrameworkTargetOrThrow(project,frameworkTargetUUID){var nativeTargets=getRawProjectObjects(project).PBXNativeTarget;var frameworkTarget=nativeTargets==null?void 0:nativeTargets[frameworkTargetUUID];if(!frameworkTarget){throw new _SourceModificationError.SourceModificationError(`Framework target UUID "${frameworkTargetUUID}" not found while wiring a resources build phase`);}return frameworkTarget;}function getOrCreateResourcesBuildPhaseForTarget(project,frameworkTargetUUID,frameworkTarget,resourcesBuildPhaseComment){var _rawProjectObjects$PB,_frameworkTarget$buil;var rawProjectObjects=getRawProjectObjects(project);var resourceBuildPhases=(_rawProjectObjects$PB=rawProjectObjects.PBXResourcesBuildPhase)!=null?_rawProjectObjects$PB:rawProjectObjects.PBXResourcesBuildPhase={};var resourcesBuildPhaseUuid=((_frameworkTarget$buil=frameworkTarget.buildPhases)!=null?_frameworkTarget$buil:[]).map(function(phase){return getReferencedUuid(phase);}).find(function(phaseUuid){return!!phaseUuid&&!!resourceBuildPhases[phaseUuid];});if(resourcesBuildPhaseUuid){return resourceBuildPhases[resourcesBuildPhaseUuid];}var createdResourcesBuildPhaseUuid=project.generateUuid();resourceBuildPhases[createdResourcesBuildPhaseUuid]=createResourcesBuildPhase();resourceBuildPhases[`${createdResourcesBuildPhaseUuid}_comment`]=resourcesBuildPhaseComment;var targetBuildPhases=Array.isArray(frameworkTarget.buildPhases)?frameworkTarget.buildPhases:[];targetBuildPhases.push(createPbxCommentedReference(createdResourcesBuildPhaseUuid,resourcesBuildPhaseComment));frameworkTarget.buildPhases=targetBuildPhases;_logging.Logger.logDebug(`Created missing PBXResourcesBuildPhase for framework target "${frameworkTargetUUID}"`);return resourceBuildPhases[createdResourcesBuildPhaseUuid];}function hasBuildFileForFileRef(project,resourcesBuildPhase,fileRefUuid){var buildFileSection=project.pbxBuildFileSection();var files=Array.isArray(resourcesBuildPhase.files)?resourcesBuildPhase.files:[];return files.some(function(phaseFile){var _buildFileSection$bui;var buildFileUuid=getReferencedUuid(phaseFile);if(!buildFileUuid){return false;}return((_buildFileSection$bui=buildFileSection[buildFileUuid])==null?void 0:_buildFileSection$bui.fileRef)===fileRefUuid;});}function addBuildFileToResourcesPhase(project,resourcesBuildPhase,fileRefUuid,buildFileComment){var buildFileSection=project.pbxBuildFileSection();var buildFileUuid=project.generateUuid();buildFileSection[buildFileUuid]=createBuildFile(fileRefUuid);buildFileSection[`${buildFileUuid}_comment`]=buildFileComment;var files=Array.isArray(resourcesBuildPhase.files)?resourcesBuildPhase.files:[];files.push(createPbxCommentedReference(buildFileUuid,buildFileComment));resourcesBuildPhase.files=files;}function ensureTargetHasFileReferenceInResourcesBuildPhase(project,frameworkTargetUUID,fileRefUuid,_ref9){var resourcesBuildPhaseComment=_ref9.resourcesBuildPhaseComment,buildFileComment=_ref9.buildFileComment;var frameworkTarget=getFrameworkTargetOrThrow(project,frameworkTargetUUID);var resourcesBuildPhase=getOrCreateResourcesBuildPhaseForTarget(project,frameworkTargetUUID,frameworkTarget,resourcesBuildPhaseComment);if(hasBuildFileForFileRef(project,resourcesBuildPhase,fileRefUuid)){return false;}addBuildFileToResourcesPhase(project,resourcesBuildPhase,fileRefUuid,buildFileComment);return true;}function getFrameworkBuildSettings(_ref0,_ref1){var configuration=_ref0.configuration;var bundleIdentifier=_ref1.bundleIdentifier,deploymentTarget=_ref1.deploymentTarget,frameworkName=_ref1.frameworkName,frameworkVersion=_ref1.frameworkVersion,customBuildSettings=_ref1.buildSettings;var isDebug=configuration==='Debug';return Object.assign({BUILD_LIBRARY_FOR_DISTRIBUTION:'YES',USER_SCRIPT_SANDBOXING:'NO',SKIP_INSTALL:'NO',ENABLE_MODULE_VERIFIER:'NO',PRODUCT_BUNDLE_IDENTIFIER:`"${bundleIdentifier}"`,IPHONEOS_DEPLOYMENT_TARGET:deploymentTarget,SWIFT_VERSION:'5.0',TARGETED_DEVICE_FAMILY:`"1,2"`,INFOPLIST_FILE:`${frameworkName}/Info.plist`,CURRENT_PROJECT_VERSION:`"${frameworkVersion}"`,PRODUCT_NAME:'"$(TARGET_NAME)"',SWIFT_OPTIMIZATION_LEVEL:isDebug?'-Onone':'-O'},customBuildSettings);}function copyBundleReactNativePhase(project,targetUuid){var buildPhaseName='Bundle React Native code and images';var shellScriptPhases=project.hash.project.objects.PBXShellScriptBuildPhase;if(!shellScriptPhases){throw new _SourceModificationError.SourceModificationError(`No shell script build phases found, skipping ${buildPhaseName}`);}var existingPhaseUuid=null;for(var key of Object.keys(shellScriptPhases)){if(key.endsWith('_comment'))continue;var phase=shellScriptPhases[key];if(phase.name===`"${buildPhaseName}"`||phase.name===buildPhaseName){existingPhaseUuid=key;break;}}if(!existingPhaseUuid){throw new _SourceModificationError.SourceModificationError(`Could not find "${buildPhaseName}" build phase, skipping`);}var nativeTargets=project.hash.project.objects.PBXNativeTarget;if(nativeTargets&&nativeTargets[targetUuid]){var target=nativeTargets[targetUuid];if(target.buildPhases){if(!target.buildPhases.some(function(phase){return phase.value===existingPhaseUuid;})){target.buildPhases.push(createPbxCommentedReference(existingPhaseUuid,buildPhaseName));_logging.Logger.logDebug(`Added "${buildPhaseName}" build phase to framework target ${target.name}`);}}}}function resolveAppTargetName(project,modRequest){var appTargets=_configPlugins.IOSConfig.Target.getNativeTargets(project).map(function(_ref10){var _target$name;var _ref11=(0,_slicedToArray2.default)(_ref10,2),target=_ref11[1];if(!_configPlugins.IOSConfig.Target.isTargetOfType(target,_configPlugins.IOSConfig.Target.TargetType.APPLICATION)){return null;}var name=_configPlugins.IOSConfig.XcodeUtils.unquote((_target$name=target.name)!=null?_target$name:'').trim();return name!=null?name:null;}).filter(function(name){return!!name;});if(appTargets.length===1){return appTargets[0];}else{_logging.Logger.logWarning('Multiple application targets found in the Xcode project. Falling back to the CNG-derived name from mod compiler.');}var cngDerivedProjectName=modRequest.projectName;if(cngDerivedProjectName&&appTargets.includes(cngDerivedProjectName)){return cngDerivedProjectName;}else{_logging.Logger.logWarning('CNG-derived name from mod compiler is not set or is not an application target. Falling back to the unfiltered-type target name.');}try{var _firstAppTarget$name;var _IOSConfig$Target$fin=_configPlugins.IOSConfig.Target.findFirstNativeTarget(project),_IOSConfig$Target$fin2=(0,_slicedToArray2.default)(_IOSConfig$Target$fin,2),firstAppTarget=_IOSConfig$Target$fin2[1];var name=_configPlugins.IOSConfig.XcodeUtils.unquote((_firstAppTarget$name=firstAppTarget.name)!=null?_firstAppTarget$name:'').trim();return name||null;}catch(_unused){_logging.Logger.logWarning('No first native target of any type found in the Xcode project. This was the last resort fallback.');}_logging.Logger.logError(`Could not determine the iOS app target name from the Xcode project. Please adjust your Xcode project to have exactly one application target.`);return null;}function addExpoPre55ShellPatchScriptPhase(modRequest,project,_ref12){var frameworkName=_ref12.frameworkName,frameworkTargetUUID=_ref12.frameworkTargetUUID;var resolvedAppTargetName=resolveAppTargetName(project,modRequest);_logging.Logger.logInfo(`Resolved iOS app target name: ${resolvedAppTargetName}`);if(!resolvedAppTargetName){throw new _SourceModificationError.SourceModificationError(`Could not determine the iOS app target name from the Xcode project.`);}project.addBuildPhase([],'PBXShellScriptBuildPhase','Patch ExpoModulesProvider',frameworkTargetUUID,{shellPath:'/bin/sh',shellScript:(0,_engine.renderTemplate)('ios','patchExpoPre55.sh',{'{{APP_TARGET_NAME}}':resolvedAppTargetName,'{{FRAMEWORK_NAME}}':frameworkName})});}function ensureExpoPre55ShellPatchScriptPhaseIsOrdered(project,frameworkTargetUUID){var modified=false;var nativeTargetSection=project.pbxNativeTargetSection();var buildPhases=nativeTargetSection[frameworkTargetUUID].buildPhases;var expoConfigurePhaseIndex=buildPhases.findIndex(function(phase){var _comment;return(phase==null||(_comment=phase.comment)==null?void 0:_comment.toLowerCase())==='[Expo] Configure project'.toLowerCase();});var patchExpoModulesProviderPhaseIndex=buildPhases.findIndex(function(phase){var _comment2;return(phase==null||(_comment2=phase.comment)==null?void 0:_comment2.toLowerCase())==='Patch ExpoModulesProvider'.toLowerCase();});if(patchExpoModulesProviderPhaseIndex<expoConfigurePhaseIndex){var element=buildPhases.splice(patchExpoModulesProviderPhaseIndex,1)[0];buildPhases.splice(expoConfigurePhaseIndex,0,element);modified=true;}nativeTargetSection[frameworkTargetUUID].buildPhases=buildPhases;project.writeSync();return modified;}
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.addExpoPre55ShellPatchScriptPhase=addExpoPre55ShellPatchScriptPhase;exports.addFrameworkTarget=addFrameworkTarget;exports.addSourceFilesBuildPhase=addSourceFilesBuildPhase;exports.copyBundleReactNativePhase=copyBundleReactNativePhase;exports.createPbxCommentedReference=createPbxCommentedReference;exports.ensureExpoPre55ShellPatchScriptPhaseIsOrdered=ensureExpoPre55ShellPatchScriptPhaseIsOrdered;exports.ensureTargetHasFileReferenceInResourcesBuildPhase=ensureTargetHasFileReferenceInResourcesBuildPhase;exports.getFrameworkBuildSettings=getFrameworkBuildSettings;exports.rewriteBundleReactNativePhaseScriptForFrameworkTarget=rewriteBundleReactNativePhaseScriptForFrameworkTarget;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _nodePath=_interopRequireDefault(require("node:path"));var _configPlugins=require("@expo/config-plugins");var _logging=require("../logging");var _SourceModificationError=require("../errors/SourceModificationError");var _withIosFrameworkFiles=require("./withIosFrameworkFiles");var _engine=require("../template/engine");function addFrameworkTarget(project,modRequest,options){var frameworkName=options.frameworkName,bundleIdentifier=options.bundleIdentifier;var existingTarget=project.pbxTargetByName(frameworkName);if(existingTarget){var _Object$entries$find;_logging.Logger.logDebug(`Framework target "${frameworkName}" already exists, skipping creation`);var frameworkTargetUUID=(_Object$entries$find=Object.entries(project.pbxNativeTargetSection()).find(function(_ref){var _ref2=(0,_slicedToArray2.default)(_ref,2),_key=_ref2[0],value=_ref2[1];return(value==null?void 0:value.productReference)===existingTarget.productReference;}))==null?void 0:_Object$entries$find[0];if(!frameworkTargetUUID){throw new _SourceModificationError.SourceModificationError(`Failed to find framework target UUID for ${frameworkName}, although it can be resolved by name`);}return{frameworkTargetUUID:frameworkTargetUUID,targetAlreadyExists:true};}_logging.Logger.logDebug(`Adding iOS framework target: ${frameworkName}`);var frameworkTarget=project.addTarget(frameworkName,'framework',frameworkName,bundleIdentifier);if(!frameworkTarget){throw new _SourceModificationError.SourceModificationError(`Failed to create framework target: ${frameworkName}`);}var frameworkBuildConfigurations=project.pbxXCConfigurationList()[frameworkTarget.pbxNativeTarget.buildConfigurationList];var debugFrameworkConfigKey=frameworkBuildConfigurations.buildConfigurations.find(function(_ref3){var comment=_ref3.comment;return comment==='Debug';}).value;var releaseFrameworkConfigKey=frameworkBuildConfigurations.buildConfigurations.find(function(_ref4){var comment=_ref4.comment;return comment==='Release';}).value;var debugSettings=getFrameworkBuildSettings({configuration:'Debug'},options);var releaseSettings=getFrameworkBuildSettings({configuration:'Release'},options);var configs=project.pbxXCBuildConfigurationSection();for(var configName in configs){var sourceBuildSettings=configName===releaseFrameworkConfigKey?releaseSettings:configName===debugFrameworkConfigKey?debugSettings:null;if(sourceBuildSettings){var destinationBuildSettings=configs[configName].buildSettings;for(var key in sourceBuildSettings){destinationBuildSettings[key]=sourceBuildSettings[key];}_logging.Logger.logDebug(`Updated build settings for ${configName} configuration of target ${frameworkName}`);}}Object.entries(debugSettings).forEach(function(_ref5){var _ref6=(0,_slicedToArray2.default)(_ref5,2),key=_ref6[0],value=_ref6[1];project.updateBuildProperty(key,value,'Debug',frameworkName);});Object.entries(releaseSettings).forEach(function(_ref7){var _ref8=(0,_slicedToArray2.default)(_ref7,2),key=_ref8[0],value=_ref8[1];project.updateBuildProperty(key,value,'Release',frameworkName);});var filePaths=(0,_withIosFrameworkFiles.getFrameworkSourceFiles)(options).map(function(file){return file.relativePath;});var groupPath=_nodePath.default.join(modRequest.platformProjectRoot,frameworkName);_logging.Logger.logDebug(`Creating PBX group '${frameworkName}' under path '${groupPath}' with files: ${filePaths.join(', ')}`);var frameworkGroup=project.addPbxGroup(filePaths,frameworkName,groupPath);var mainGroupKey=project.getFirstProject().firstProject.mainGroup;project.addToPbxGroup(frameworkGroup.uuid,mainGroupKey);_logging.Logger.logInfo(`Successfully added framework target: ${frameworkName}`);return{frameworkTargetUUID:frameworkTarget.uuid,targetAlreadyExists:false};}function addSourceFilesBuildPhase(project,frameworkTargetUUID,options){var filePaths=(0,_withIosFrameworkFiles.getFrameworkSourceFiles)(options).map(function(file){return file.relativePath;});var sourceFiles=filePaths.filter(function(filePath){return!filePath.endsWith('.plist');});project.addBuildPhase(sourceFiles,'PBXSourcesBuildPhase',options.frameworkName,frameworkTargetUUID,'framework','""');}var PBX_BUILD_ACTION_MASK_ALL=2147483647;var PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED=0;var PBX_RESOURCES_BUILD_PHASE_ISA='PBXResourcesBuildPhase';var PBX_BUILD_FILE_ISA='PBXBuildFile';function createPbxCommentedReference(value,comment){return{value:value,comment:comment};}function createResourcesBuildPhase(){return{isa:PBX_RESOURCES_BUILD_PHASE_ISA,buildActionMask:PBX_BUILD_ACTION_MASK_ALL,files:[],runOnlyForDeploymentPostprocessing:PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED};}function createBuildFile(fileRef){return{isa:PBX_BUILD_FILE_ISA,fileRef:fileRef};}function getRawProjectObjects(project){var _hash$project$objects,_hash;return(_hash$project$objects=(_hash=project.hash)==null||(_hash=_hash.project)==null?void 0:_hash.objects)!=null?_hash$project$objects:{};}function getReferencedUuid(reference){var _reference$value;if(!reference){return null;}return typeof reference==='string'?reference:(_reference$value=reference.value)!=null?_reference$value:null;}function getFrameworkTargetOrThrow(project,frameworkTargetUUID){var nativeTargets=getRawProjectObjects(project).PBXNativeTarget;var frameworkTarget=nativeTargets==null?void 0:nativeTargets[frameworkTargetUUID];if(!frameworkTarget){throw new _SourceModificationError.SourceModificationError(`Framework target UUID "${frameworkTargetUUID}" not found while wiring a resources build phase`);}return frameworkTarget;}function getOrCreateResourcesBuildPhaseForTarget(project,frameworkTargetUUID,frameworkTarget,resourcesBuildPhaseComment){var _rawProjectObjects$PB,_frameworkTarget$buil;var rawProjectObjects=getRawProjectObjects(project);var resourceBuildPhases=(_rawProjectObjects$PB=rawProjectObjects.PBXResourcesBuildPhase)!=null?_rawProjectObjects$PB:rawProjectObjects.PBXResourcesBuildPhase={};var resourcesBuildPhaseUuid=((_frameworkTarget$buil=frameworkTarget.buildPhases)!=null?_frameworkTarget$buil:[]).map(function(phase){return getReferencedUuid(phase);}).find(function(phaseUuid){return!!phaseUuid&&!!resourceBuildPhases[phaseUuid];});if(resourcesBuildPhaseUuid){return resourceBuildPhases[resourcesBuildPhaseUuid];}var createdResourcesBuildPhaseUuid=project.generateUuid();resourceBuildPhases[createdResourcesBuildPhaseUuid]=createResourcesBuildPhase();resourceBuildPhases[`${createdResourcesBuildPhaseUuid}_comment`]=resourcesBuildPhaseComment;var targetBuildPhases=Array.isArray(frameworkTarget.buildPhases)?frameworkTarget.buildPhases:[];targetBuildPhases.push(createPbxCommentedReference(createdResourcesBuildPhaseUuid,resourcesBuildPhaseComment));frameworkTarget.buildPhases=targetBuildPhases;_logging.Logger.logDebug(`Created missing PBXResourcesBuildPhase for framework target "${frameworkTargetUUID}"`);return resourceBuildPhases[createdResourcesBuildPhaseUuid];}function hasBuildFileForFileRef(project,resourcesBuildPhase,fileRefUuid){var buildFileSection=project.pbxBuildFileSection();var files=Array.isArray(resourcesBuildPhase.files)?resourcesBuildPhase.files:[];return files.some(function(phaseFile){var _buildFileSection$bui;var buildFileUuid=getReferencedUuid(phaseFile);if(!buildFileUuid){return false;}return((_buildFileSection$bui=buildFileSection[buildFileUuid])==null?void 0:_buildFileSection$bui.fileRef)===fileRefUuid;});}function addBuildFileToResourcesPhase(project,resourcesBuildPhase,fileRefUuid,buildFileComment){var buildFileSection=project.pbxBuildFileSection();var buildFileUuid=project.generateUuid();buildFileSection[buildFileUuid]=createBuildFile(fileRefUuid);buildFileSection[`${buildFileUuid}_comment`]=buildFileComment;var files=Array.isArray(resourcesBuildPhase.files)?resourcesBuildPhase.files:[];files.push(createPbxCommentedReference(buildFileUuid,buildFileComment));resourcesBuildPhase.files=files;}function ensureTargetHasFileReferenceInResourcesBuildPhase(project,frameworkTargetUUID,fileRefUuid,_ref9){var resourcesBuildPhaseComment=_ref9.resourcesBuildPhaseComment,buildFileComment=_ref9.buildFileComment;var frameworkTarget=getFrameworkTargetOrThrow(project,frameworkTargetUUID);var resourcesBuildPhase=getOrCreateResourcesBuildPhaseForTarget(project,frameworkTargetUUID,frameworkTarget,resourcesBuildPhaseComment);if(hasBuildFileForFileRef(project,resourcesBuildPhase,fileRefUuid)){return false;}addBuildFileToResourcesPhase(project,resourcesBuildPhase,fileRefUuid,buildFileComment);return true;}function getFrameworkBuildSettings(_ref0,_ref1){var configuration=_ref0.configuration;var bundleIdentifier=_ref1.bundleIdentifier,deploymentTarget=_ref1.deploymentTarget,frameworkName=_ref1.frameworkName,frameworkVersion=_ref1.frameworkVersion,customBuildSettings=_ref1.buildSettings;var isDebug=configuration==='Debug';return Object.assign({BUILD_LIBRARY_FOR_DISTRIBUTION:'YES',USER_SCRIPT_SANDBOXING:'NO',SKIP_INSTALL:'NO',ENABLE_MODULE_VERIFIER:'NO',INSTALL_PATH:'"$(LOCAL_LIBRARY_DIR)/Frameworks"',PRODUCT_BUNDLE_IDENTIFIER:`"${bundleIdentifier}"`,IPHONEOS_DEPLOYMENT_TARGET:deploymentTarget,DYLIB_INSTALL_NAME_BASE:'"@rpath"',LD_DYLIB_INSTALL_NAME:'"@rpath/$(EXECUTABLE_PATH)"',SWIFT_VERSION:'5.0',TARGETED_DEVICE_FAMILY:`"1,2"`,INFOPLIST_FILE:`${frameworkName}/Info.plist`,CURRENT_PROJECT_VERSION:`"${frameworkVersion}"`,PRODUCT_NAME:'"$(TARGET_NAME)"',SWIFT_OPTIMIZATION_LEVEL:isDebug?'-Onone':'-O'},customBuildSettings);}function rewriteBundleReactNativePhaseScriptForFrameworkTarget(shellScript){var debugBundlingOverride=`# Brownfield framework packaging must embed JS in Debug builds.
2
+ if [[ "$CONFIGURATION" = *Debug* ]]; then
3
+ unset SKIP_BUNDLING
4
+ export FORCE_BUNDLING=1
5
+ fi
6
+ `;var debugSkipBundlingBlock=/if \[\[ "\$CONFIGURATION" = \*Debug\* \]\]; then\s+export SKIP_BUNDLING=1\s+fi\s*/m;if(debugSkipBundlingBlock.test(shellScript)){return shellScript.replace(debugSkipBundlingBlock,`${debugBundlingOverride}\n`);}if(shellScript.includes('export FORCE_BUNDLING=1')){return shellScript;}return`${debugBundlingOverride}\n${shellScript}`;}function decodePbxString(value){if(!value){return'';}if(value.startsWith('"')&&value.endsWith('"')){try{return JSON.parse(value);}catch(_unused){return value.slice(1,-1).replace(/\\"/g,'"');}}return value;}function encodePbxString(value){return JSON.stringify(value);}function hasBuildPhaseComment(phase,expectedComment){return phase.comment===expectedComment||phase.comment===`"${expectedComment}"`;}function copyBundleReactNativePhase(project,targetUuid){var buildPhaseName='Bundle React Native code and images';var shellScriptPhases=project.hash.project.objects.PBXShellScriptBuildPhase;if(!shellScriptPhases){throw new _SourceModificationError.SourceModificationError(`No shell script build phases found, skipping ${buildPhaseName}`);}var existingPhaseUuid=null;var existingPhase=null;for(var key of Object.keys(shellScriptPhases)){if(key.endsWith('_comment'))continue;var phase=shellScriptPhases[key];if(phase.name===`"${buildPhaseName}"`||phase.name===buildPhaseName){existingPhaseUuid=key;existingPhase=phase;break;}}if(!existingPhaseUuid||!existingPhase){throw new _SourceModificationError.SourceModificationError(`Could not find "${buildPhaseName}" build phase, skipping`);}var nativeTargets=project.hash.project.objects.PBXNativeTarget;if(nativeTargets&&nativeTargets[targetUuid]){var target=nativeTargets[targetUuid];if(target.buildPhases){var _existingPhase$inputP2,_existingPhase$output2;var targetPhaseIndex=target.buildPhases.findIndex(function(phase){return hasBuildPhaseComment(phase,buildPhaseName);});var frameworkShellPath=decodePbxString(existingPhase.shellPath)||'/bin/sh';var frameworkShellScript=rewriteBundleReactNativePhaseScriptForFrameworkTarget(decodePbxString(existingPhase.shellScript));if(targetPhaseIndex!==-1){var currentPhaseUuid=target.buildPhases[targetPhaseIndex].value;var currentPhase=shellScriptPhases[currentPhaseUuid];if(currentPhase&&currentPhaseUuid!==existingPhaseUuid){var _existingPhase$inputP,_existingPhase$output;currentPhase.inputPaths=(_existingPhase$inputP=existingPhase.inputPaths)!=null?_existingPhase$inputP:[];currentPhase.outputPaths=(_existingPhase$output=existingPhase.outputPaths)!=null?_existingPhase$output:[];currentPhase.shellPath=encodePbxString(frameworkShellPath);currentPhase.shellScript=encodePbxString(frameworkShellScript);if(existingPhase.showEnvVarsInLog!==undefined){currentPhase.showEnvVarsInLog=existingPhase.showEnvVarsInLog;}_logging.Logger.logDebug(`Updated framework-specific "${buildPhaseName}" build phase on target ${target.name}`);return;}if(currentPhaseUuid===existingPhaseUuid){target.buildPhases.splice(targetPhaseIndex,1);}else{return;}}var addedPhase=project.addBuildPhase([],'PBXShellScriptBuildPhase',buildPhaseName,targetUuid,{inputPaths:(_existingPhase$inputP2=existingPhase.inputPaths)!=null?_existingPhase$inputP2:[],outputPaths:(_existingPhase$output2=existingPhase.outputPaths)!=null?_existingPhase$output2:[],shellPath:frameworkShellPath,shellScript:frameworkShellScript});if(existingPhase.showEnvVarsInLog!==undefined){addedPhase.buildPhase.showEnvVarsInLog=existingPhase.showEnvVarsInLog;}_logging.Logger.logDebug(`Added framework-specific "${buildPhaseName}" build phase to target ${target.name}`);}}}function resolveAppTargetName(project,modRequest){var appTargets=_configPlugins.IOSConfig.Target.getNativeTargets(project).map(function(_ref10){var _target$name;var _ref11=(0,_slicedToArray2.default)(_ref10,2),target=_ref11[1];if(!_configPlugins.IOSConfig.Target.isTargetOfType(target,_configPlugins.IOSConfig.Target.TargetType.APPLICATION)){return null;}var name=_configPlugins.IOSConfig.XcodeUtils.unquote((_target$name=target.name)!=null?_target$name:'').trim();return name!=null?name:null;}).filter(function(name){return!!name;});if(appTargets.length===1){return appTargets[0];}else{_logging.Logger.logWarning('Multiple application targets found in the Xcode project. Falling back to the CNG-derived name from mod compiler.');}var cngDerivedProjectName=modRequest.projectName;if(cngDerivedProjectName&&appTargets.includes(cngDerivedProjectName)){return cngDerivedProjectName;}else{_logging.Logger.logWarning('CNG-derived name from mod compiler is not set or is not an application target. Falling back to the unfiltered-type target name.');}try{var _firstAppTarget$name;var _IOSConfig$Target$fin=_configPlugins.IOSConfig.Target.findFirstNativeTarget(project),_IOSConfig$Target$fin2=(0,_slicedToArray2.default)(_IOSConfig$Target$fin,2),firstAppTarget=_IOSConfig$Target$fin2[1];var name=_configPlugins.IOSConfig.XcodeUtils.unquote((_firstAppTarget$name=firstAppTarget.name)!=null?_firstAppTarget$name:'').trim();return name||null;}catch(_unused2){_logging.Logger.logWarning('No first native target of any type found in the Xcode project. This was the last resort fallback.');}_logging.Logger.logError(`Could not determine the iOS app target name from the Xcode project. Please adjust your Xcode project to have exactly one application target.`);return null;}function addExpoPre55ShellPatchScriptPhase(modRequest,project,_ref12){var _project$pbxNativeTar,_project$pbxNativeTar2;var frameworkName=_ref12.frameworkName,frameworkTargetUUID=_ref12.frameworkTargetUUID;var resolvedAppTargetName=resolveAppTargetName(project,modRequest);_logging.Logger.logInfo(`Resolved iOS app target name: ${resolvedAppTargetName}`);if(!resolvedAppTargetName){throw new _SourceModificationError.SourceModificationError(`Could not determine the iOS app target name from the Xcode project.`);}var existingBuildPhases=(_project$pbxNativeTar=(_project$pbxNativeTar2=project.pbxNativeTargetSection()[frameworkTargetUUID])==null?void 0:_project$pbxNativeTar2.buildPhases)!=null?_project$pbxNativeTar:[];if(existingBuildPhases.some(function(phase){return hasBuildPhaseComment(phase,'Patch ExpoModulesProvider');})){return;}project.addBuildPhase([],'PBXShellScriptBuildPhase','Patch ExpoModulesProvider',frameworkTargetUUID,{shellPath:'/bin/sh',shellScript:(0,_engine.renderTemplate)('ios','patchExpoPre55.sh',{'{{APP_TARGET_NAME}}':resolvedAppTargetName,'{{FRAMEWORK_NAME}}':frameworkName})});}function ensureExpoPre55ShellPatchScriptPhaseIsOrdered(project,frameworkTargetUUID){var modified=false;var nativeTargetSection=project.pbxNativeTargetSection();var buildPhases=nativeTargetSection[frameworkTargetUUID].buildPhases;var expoConfigurePhaseIndex=buildPhases.findIndex(function(phase){var _comment;return(phase==null||(_comment=phase.comment)==null?void 0:_comment.toLowerCase())==='[Expo] Configure project'.toLowerCase();});var patchExpoModulesProviderPhaseIndex=buildPhases.findIndex(function(phase){var _comment2;return(phase==null||(_comment2=phase.comment)==null?void 0:_comment2.toLowerCase())==='Patch ExpoModulesProvider'.toLowerCase();});if(patchExpoModulesProviderPhaseIndex<expoConfigurePhaseIndex){var element=buildPhases.splice(patchExpoModulesProviderPhaseIndex,1)[0];buildPhases.splice(expoConfigurePhaseIndex,0,element);modified=true;}nativeTargetSection[frameworkTargetUUID].buildPhases=buildPhases;project.writeSync();return modified;}
2
7
  //# sourceMappingURL=xcodeHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_nodePath","_interopRequireDefault","require","_configPlugins","_logging","_SourceModificationError","_withIosFrameworkFiles","_engine","addFrameworkTarget","project","modRequest","options","frameworkName","bundleIdentifier","existingTarget","pbxTargetByName","_Object$entries$find","Logger","logDebug","frameworkTargetUUID","Object","entries","pbxNativeTargetSection","find","_ref","_ref2","_slicedToArray2","default","_key","value","productReference","SourceModificationError","targetAlreadyExists","frameworkTarget","addTarget","frameworkBuildConfigurations","pbxXCConfigurationList","pbxNativeTarget","buildConfigurationList","debugFrameworkConfigKey","buildConfigurations","_ref3","comment","releaseFrameworkConfigKey","_ref4","debugSettings","getFrameworkBuildSettings","configuration","releaseSettings","configs","pbxXCBuildConfigurationSection","configName","sourceBuildSettings","destinationBuildSettings","buildSettings","key","forEach","_ref5","_ref6","updateBuildProperty","_ref7","_ref8","filePaths","getFrameworkSourceFiles","map","file","relativePath","groupPath","path","join","platformProjectRoot","frameworkGroup","addPbxGroup","mainGroupKey","getFirstProject","firstProject","mainGroup","addToPbxGroup","uuid","logInfo","addSourceFilesBuildPhase","sourceFiles","filter","filePath","endsWith","addBuildPhase","PBX_BUILD_ACTION_MASK_ALL","PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED","PBX_RESOURCES_BUILD_PHASE_ISA","PBX_BUILD_FILE_ISA","createPbxCommentedReference","createResourcesBuildPhase","isa","buildActionMask","files","runOnlyForDeploymentPostprocessing","createBuildFile","fileRef","getRawProjectObjects","_hash$project$objects","_hash","hash","objects","getReferencedUuid","reference","_reference$value","getFrameworkTargetOrThrow","nativeTargets","PBXNativeTarget","getOrCreateResourcesBuildPhaseForTarget","resourcesBuildPhaseComment","_rawProjectObjects$PB","_frameworkTarget$buil","rawProjectObjects","resourceBuildPhases","PBXResourcesBuildPhase","resourcesBuildPhaseUuid","buildPhases","phase","phaseUuid","createdResourcesBuildPhaseUuid","generateUuid","targetBuildPhases","Array","isArray","push","hasBuildFileForFileRef","resourcesBuildPhase","fileRefUuid","buildFileSection","pbxBuildFileSection","some","phaseFile","_buildFileSection$bui","buildFileUuid","addBuildFileToResourcesPhase","buildFileComment","ensureTargetHasFileReferenceInResourcesBuildPhase","_ref9","_ref0","_ref1","deploymentTarget","frameworkVersion","customBuildSettings","isDebug","assign","BUILD_LIBRARY_FOR_DISTRIBUTION","USER_SCRIPT_SANDBOXING","SKIP_INSTALL","ENABLE_MODULE_VERIFIER","PRODUCT_BUNDLE_IDENTIFIER","IPHONEOS_DEPLOYMENT_TARGET","SWIFT_VERSION","TARGETED_DEVICE_FAMILY","INFOPLIST_FILE","CURRENT_PROJECT_VERSION","PRODUCT_NAME","SWIFT_OPTIMIZATION_LEVEL","copyBundleReactNativePhase","targetUuid","buildPhaseName","shellScriptPhases","PBXShellScriptBuildPhase","existingPhaseUuid","keys","name","target","resolveAppTargetName","appTargets","IOSConfig","Target","getNativeTargets","_ref10","_target$name","_ref11","isTargetOfType","TargetType","APPLICATION","XcodeUtils","unquote","trim","length","logWarning","cngDerivedProjectName","projectName","includes","_firstAppTarget$name","_IOSConfig$Target$fin","findFirstNativeTarget","_IOSConfig$Target$fin2","firstAppTarget","_unused","logError","addExpoPre55ShellPatchScriptPhase","_ref12","resolvedAppTargetName","shellPath","shellScript","renderTemplate","ensureExpoPre55ShellPatchScriptPhaseIsOrdered","modified","nativeTargetSection","expoConfigurePhaseIndex","findIndex","_comment","toLowerCase","patchExpoModulesProviderPhaseIndex","_comment2","element","splice","writeSync"],"sourceRoot":"../../../../src","sources":["expo-config-plugin/ios/xcodeHelpers.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_nodePath","_interopRequireDefault","require","_configPlugins","_logging","_SourceModificationError","_withIosFrameworkFiles","_engine","addFrameworkTarget","project","modRequest","options","frameworkName","bundleIdentifier","existingTarget","pbxTargetByName","_Object$entries$find","Logger","logDebug","frameworkTargetUUID","Object","entries","pbxNativeTargetSection","find","_ref","_ref2","_slicedToArray2","default","_key","value","productReference","SourceModificationError","targetAlreadyExists","frameworkTarget","addTarget","frameworkBuildConfigurations","pbxXCConfigurationList","pbxNativeTarget","buildConfigurationList","debugFrameworkConfigKey","buildConfigurations","_ref3","comment","releaseFrameworkConfigKey","_ref4","debugSettings","getFrameworkBuildSettings","configuration","releaseSettings","configs","pbxXCBuildConfigurationSection","configName","sourceBuildSettings","destinationBuildSettings","buildSettings","key","forEach","_ref5","_ref6","updateBuildProperty","_ref7","_ref8","filePaths","getFrameworkSourceFiles","map","file","relativePath","groupPath","path","join","platformProjectRoot","frameworkGroup","addPbxGroup","mainGroupKey","getFirstProject","firstProject","mainGroup","addToPbxGroup","uuid","logInfo","addSourceFilesBuildPhase","sourceFiles","filter","filePath","endsWith","addBuildPhase","PBX_BUILD_ACTION_MASK_ALL","PBX_RUN_ONLY_FOR_DEPLOYMENT_POSTPROCESSING_DISABLED","PBX_RESOURCES_BUILD_PHASE_ISA","PBX_BUILD_FILE_ISA","createPbxCommentedReference","createResourcesBuildPhase","isa","buildActionMask","files","runOnlyForDeploymentPostprocessing","createBuildFile","fileRef","getRawProjectObjects","_hash$project$objects","_hash","hash","objects","getReferencedUuid","reference","_reference$value","getFrameworkTargetOrThrow","nativeTargets","PBXNativeTarget","getOrCreateResourcesBuildPhaseForTarget","resourcesBuildPhaseComment","_rawProjectObjects$PB","_frameworkTarget$buil","rawProjectObjects","resourceBuildPhases","PBXResourcesBuildPhase","resourcesBuildPhaseUuid","buildPhases","phase","phaseUuid","createdResourcesBuildPhaseUuid","generateUuid","targetBuildPhases","Array","isArray","push","hasBuildFileForFileRef","resourcesBuildPhase","fileRefUuid","buildFileSection","pbxBuildFileSection","some","phaseFile","_buildFileSection$bui","buildFileUuid","addBuildFileToResourcesPhase","buildFileComment","ensureTargetHasFileReferenceInResourcesBuildPhase","_ref9","_ref0","_ref1","deploymentTarget","frameworkVersion","customBuildSettings","isDebug","assign","BUILD_LIBRARY_FOR_DISTRIBUTION","USER_SCRIPT_SANDBOXING","SKIP_INSTALL","ENABLE_MODULE_VERIFIER","INSTALL_PATH","PRODUCT_BUNDLE_IDENTIFIER","IPHONEOS_DEPLOYMENT_TARGET","DYLIB_INSTALL_NAME_BASE","LD_DYLIB_INSTALL_NAME","SWIFT_VERSION","TARGETED_DEVICE_FAMILY","INFOPLIST_FILE","CURRENT_PROJECT_VERSION","PRODUCT_NAME","SWIFT_OPTIMIZATION_LEVEL","rewriteBundleReactNativePhaseScriptForFrameworkTarget","shellScript","debugBundlingOverride","debugSkipBundlingBlock","test","replace","includes","decodePbxString","startsWith","JSON","parse","_unused","slice","encodePbxString","stringify","hasBuildPhaseComment","expectedComment","copyBundleReactNativePhase","targetUuid","buildPhaseName","shellScriptPhases","PBXShellScriptBuildPhase","existingPhaseUuid","existingPhase","keys","name","target","_existingPhase$inputP2","_existingPhase$output2","targetPhaseIndex","findIndex","frameworkShellPath","shellPath","frameworkShellScript","currentPhaseUuid","currentPhase","_existingPhase$inputP","_existingPhase$output","inputPaths","outputPaths","showEnvVarsInLog","undefined","splice","addedPhase","buildPhase","resolveAppTargetName","appTargets","IOSConfig","Target","getNativeTargets","_ref10","_target$name","_ref11","isTargetOfType","TargetType","APPLICATION","XcodeUtils","unquote","trim","length","logWarning","cngDerivedProjectName","projectName","_firstAppTarget$name","_IOSConfig$Target$fin","findFirstNativeTarget","_IOSConfig$Target$fin2","firstAppTarget","_unused2","logError","addExpoPre55ShellPatchScriptPhase","_ref12","_project$pbxNativeTar","_project$pbxNativeTar2","resolvedAppTargetName","existingBuildPhases","renderTemplate","ensureExpoPre55ShellPatchScriptPhaseIsOrdered","modified","nativeTargetSection","expoConfigurePhaseIndex","_comment","toLowerCase","patchExpoModulesProviderPhaseIndex","_comment2","element","writeSync"],"sourceRoot":"../../../../src","sources":["expo-config-plugin/ios/xcodeHelpers.ts"],"mappings":"05BAAA,IAAAA,SAAA,CAAAC,sBAAA,CAAAC,OAAA,eAEA,IAAAC,cAAA,CAAAD,OAAA,yBAMA,IAAAE,QAAA,CAAAF,OAAA,eAEA,IAAAG,wBAAA,CAAAH,OAAA,sCACA,IAAAI,sBAAA,CAAAJ,OAAA,4BACA,IAAAK,OAAA,CAAAL,OAAA,uBAQO,QAAS,CAAAM,kBAAkBA,CAChCC,OAAqB,CACrBC,UAAkC,CAClCC,OAA0C,CAI1C,CACA,GAAQ,CAAAC,aAAa,CAAuBD,OAAO,CAA3CC,aAAa,CAAEC,gBAAgB,CAAKF,OAAO,CAA5BE,gBAAgB,CAGvC,GAAM,CAAAC,cAAc,CAAGL,OAAO,CAACM,eAAe,CAACH,aAAa,CAAC,CAC7D,GAAIE,cAAc,CAAE,KAAAE,oBAAA,CAClBC,eAAM,CAACC,QAAQ,CACb,qBAAqBN,aAAa,qCACpC,CAAC,CAED,GAAM,CAAAO,mBAAmB,EAAAH,oBAAA,CAAGI,MAAM,CAACC,OAAO,CACxCZ,OAAO,CAACa,sBAAsB,CAAC,CACjC,CAAC,CAACC,IAAI,CACJ,SAAAC,IAAA,MAAAC,KAAA,IAAAC,eAAA,CAAAC,OAAA,EAAAH,IAAA,IAAEI,IAAI,CAAAH,KAAA,IAAEI,KAAK,CAAAJ,KAAA,UACX,CAACI,KAAK,cAALA,KAAK,CAAUC,gBAAgB,IAAKhB,cAAc,CAACgB,gBAAgB,EACxE,CAAC,eAL2Bd,oBAAA,CAKxB,CAAC,CAAC,CAEN,GAAI,CAACG,mBAAmB,CAAE,CACxB,KAAM,IAAI,CAAAY,gDAAuB,CAC/B,4CAA4CnB,aAAa,uCAC3D,CAAC,CACH,CAEA,MAAO,CACLO,mBAAmB,CAAnBA,mBAAmB,CACnBa,mBAAmB,CAAE,IACvB,CAAC,CACH,CAEAf,eAAM,CAACC,QAAQ,CAAC,gCAAgCN,aAAa,EAAE,CAAC,CAGhE,GAAM,CAAAqB,eAAe,CAAGxB,OAAO,CAACyB,SAAS,CACvCtB,aAAa,CACb,WAAW,CACXA,aAAa,CACbC,gBACF,CAAC,CAED,GAAI,CAACoB,eAAe,CAAE,CACpB,KAAM,IAAI,CAAAF,gDAAuB,CAC/B,sCAAsCnB,aAAa,EACrD,CAAC,CACH,CAIA,GAAM,CAAAuB,4BAA4B,CAChC1B,OAAO,CAAC2B,sBAAsB,CAAC,CAAC,CAC9BH,eAAe,CAACI,eAAe,CAACC,sBAAsB,CACvD,CACH,GAAM,CAAAC,uBAA+B,CACnCJ,4BAA4B,CAACK,mBAAmB,CAACjB,IAAI,CACnD,SAAAkB,KAAA,KAAG,CAAAC,OAAO,CAAAD,KAAA,CAAPC,OAAO,OAA4B,CAAAA,OAAO,GAAK,OAAO,EAC3D,CAAC,CAACb,KAAK,CACT,GAAM,CAAAc,yBAAiC,CACrCR,4BAA4B,CAACK,mBAAmB,CAACjB,IAAI,CACnD,SAAAqB,KAAA,KAAG,CAAAF,OAAO,CAAAE,KAAA,CAAPF,OAAO,OAA4B,CAAAA,OAAO,GAAK,SAAS,EAC7D,CAAC,CAACb,KAAK,CAGT,GAAM,CAAAgB,aAAa,CAAGC,yBAAyB,CAC7C,CACEC,aAAa,CAAE,OACjB,CAAC,CACDpC,OACF,CAAC,CACD,GAAM,CAAAqC,eAAe,CAAGF,yBAAyB,CAC/C,CACEC,aAAa,CAAE,SACjB,CAAC,CACDpC,OACF,CAAC,CAED,GAAI,CAAAsC,OAAO,CAAGxC,OAAO,CAACyC,8BAA8B,CAAC,CAAC,CAGtD,IAAK,GAAM,CAAAC,UAAU,GAAI,CAAAF,OAAO,CAAE,CAChC,GAAI,CAAAG,mBAAmB,CACrBD,UAAU,GAAKR,yBAAyB,CACpCK,eAAe,CACfG,UAAU,GAAKZ,uBAAuB,CACpCM,aAAa,CACb,IAAI,CAGZ,GAAIO,mBAAmB,CAAE,CACvB,GAAM,CAAAC,wBAAwB,CAAGJ,OAAO,CAACE,UAAU,CAAC,CAACG,aAAa,CAClE,IAAK,GAAM,CAAAC,GAAG,GAAI,CAAAH,mBAAmB,CAAE,CACrCC,wBAAwB,CAACE,GAAG,CAAC,CAAGH,mBAAmB,CAACG,GAAG,CAAC,CAC1D,CAEAtC,eAAM,CAACC,QAAQ,CACb,8BAA8BiC,UAAU,4BAA4BvC,aAAa,EACnF,CAAC,CACH,CACF,CAGAQ,MAAM,CAACC,OAAO,CAACwB,aAAa,CAAC,CAACW,OAAO,CAAC,SAAAC,KAAA,CAAkB,KAAAC,KAAA,IAAAhC,eAAA,CAAAC,OAAA,EAAA8B,KAAA,IAAhBF,GAAG,CAAAG,KAAA,IAAE7B,KAAK,CAAA6B,KAAA,IAChDjD,OAAO,CAACkD,mBAAmB,CAACJ,GAAG,CAAE1B,KAAK,CAAE,OAAO,CAAEjB,aAAa,CAAC,CACjE,CAAC,CAAC,CACFQ,MAAM,CAACC,OAAO,CAAC2B,eAAe,CAAC,CAACQ,OAAO,CAAC,SAAAI,KAAA,CAAkB,KAAAC,KAAA,IAAAnC,eAAA,CAAAC,OAAA,EAAAiC,KAAA,IAAhBL,GAAG,CAAAM,KAAA,IAAEhC,KAAK,CAAAgC,KAAA,IAClDpD,OAAO,CAACkD,mBAAmB,CAACJ,GAAG,CAAE1B,KAAK,CAAE,SAAS,CAAEjB,aAAa,CAAC,CACnE,CAAC,CAAC,CAGF,GAAM,CAAAkD,SAAS,CAAG,GAAAC,8CAAuB,EAACpD,OAAO,CAAC,CAACqD,GAAG,CACpD,SAACC,IAAI,QAAK,CAAAA,IAAI,CAACC,YAAY,EAC7B,CAAC,CACD,GAAM,CAAAC,SAAS,CAAGC,iBAAI,CAACC,IAAI,CAAC3D,UAAU,CAAC4D,mBAAmB,CAAE1D,aAAa,CAAC,CAE1EK,eAAM,CAACC,QAAQ,CACb,uBAAuBN,aAAa,iBAAiBuD,SAAS,iBAAiBL,SAAS,CAACO,IAAI,CAAC,IAAI,CAAC,EACrG,CAAC,CAED,GAAM,CAAAE,cAAc,CAAG9D,OAAO,CAAC+D,WAAW,CACxCV,SAAS,CACTlD,aAAa,CACbuD,SACF,CAAC,CAGD,GAAM,CAAAM,YAAY,CAAGhE,OAAO,CAACiE,eAAe,CAAC,CAAC,CAACC,YAAY,CAACC,SAAS,CACrEnE,OAAO,CAACoE,aAAa,CAACN,cAAc,CAACO,IAAI,CAAEL,YAAY,CAAC,CAExDxD,eAAM,CAAC8D,OAAO,CAAC,wCAAwCnE,aAAa,EAAE,CAAC,CAEvE,MAAO,CACLO,mBAAmB,CAAEc,eAAe,CAAC6C,IAAI,CACzC9C,mBAAmB,CAAE,KACvB,CAAC,CACH,CAEO,QAAS,CAAAgD,wBAAwBA,CACtCvE,OAAqB,CACrBU,mBAA2B,CAC3BR,OAA0C,CAC1C,CACA,GAAM,CAAAmD,SAAS,CAAG,GAAAC,8CAAuB,EAACpD,OAAO,CAAC,CAACqD,GAAG,CACpD,SAACC,IAAI,QAAK,CAAAA,IAAI,CAACC,YAAY,EAC7B,CAAC,CAED,GAAM,CAAAe,WAAW,CAAGnB,SAAS,CAACoB,MAAM,CAClC,SAACC,QAAQ,QAAK,CAACA,QAAQ,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAC5C,CAAC,CAED3E,OAAO,CAAC4E,aAAa,CACnBJ,WAAW,CACX,sBAAsB,CACtBtE,OAAO,CAACC,aAAa,CACrBO,mBAAmB,CACnB,WAAW,CACX,IACF,CAAC,CACH,CAuBA,GAAM,CAAAmE,yBAAyB,CAAG,UAAU,CAC5C,GAAM,CAAAC,mDAAmD,CAAG,CAAC,CAC7D,GAAM,CAAAC,6BAA6B,CAAG,wBAAwB,CAC9D,GAAM,CAAAC,kBAAkB,CAAG,cAAc,CAElC,QAAS,CAAAC,2BAA2BA,CACzC7D,KAAa,CACba,OAAe,CACQ,CACvB,MAAO,CAAEb,KAAK,CAALA,KAAK,CAAEa,OAAO,CAAPA,OAAQ,CAAC,CAC3B,CAEA,QAAS,CAAAiD,yBAAyBA,CAAA,CAA2B,CAC3D,MAAO,CACLC,GAAG,CAAEJ,6BAA6B,CAClCK,eAAe,CAAEP,yBAAyB,CAC1CQ,KAAK,CAAE,EAAE,CACTC,kCAAkC,CAChCR,mDACJ,CAAC,CACH,CAEA,QAAS,CAAAS,eAAeA,CAACC,OAAe,CAAgB,CACtD,MAAO,CACLL,GAAG,CAAEH,kBAAkB,CACvBQ,OAAO,CAAPA,OACF,CAAC,CACH,CAEA,QAAS,CAAAC,oBAAoBA,CAACzF,OAAqB,CAAuB,KAAA0F,qBAAA,CAAAC,KAAA,CACxE,OAAAD,qBAAA,EAAAC,KAAA,CAAQ3F,OAAO,CAAS4F,IAAI,UAAAD,KAAA,CAArBA,KAAA,CAAuB3F,OAAO,eAA9B2F,KAAA,CAAgCE,OAAO,QAAAH,qBAAA,CAAI,CAAC,CAAC,CACtD,CAEA,QAAS,CAAAI,iBAAiBA,CACxBC,SAAuC,CACxB,KAAAC,gBAAA,CACf,GAAI,CAACD,SAAS,CAAE,CACd,MAAO,KAAI,CACb,CAEA,MAAO,OAAO,CAAAA,SAAS,GAAK,QAAQ,CAAGA,SAAS,EAAAC,gBAAA,CAAID,SAAS,CAAC3E,KAAK,QAAA4E,gBAAA,CAAI,IAAK,CAC9E,CAEA,QAAS,CAAAC,yBAAyBA,CAChCjG,OAAqB,CACrBU,mBAA2B,CACV,CACjB,GAAM,CAAAwF,aAAa,CAAGT,oBAAoB,CAACzF,OAAO,CAAC,CAACmG,eAEvC,CACb,GAAM,CAAA3E,eAAe,CAAG0E,aAAa,cAAbA,aAAa,CAAGxF,mBAAmB,CAAC,CAE5D,GAAI,CAACc,eAAe,CAAE,CACpB,KAAM,IAAI,CAAAF,gDAAuB,CAC/B,0BAA0BZ,mBAAmB,kDAC/C,CAAC,CACH,CAEA,MAAO,CAAAc,eAAe,CACxB,CAEA,QAAS,CAAA4E,uCAAuCA,CAC9CpG,OAAqB,CACrBU,mBAA2B,CAC3Bc,eAAgC,CAChC6E,0BAAkC,CACV,KAAAC,qBAAA,CAAAC,qBAAA,CACxB,GAAM,CAAAC,iBAAiB,CAAGf,oBAAoB,CAACzF,OAAO,CAAC,CACvD,GAAM,CAAAyG,mBAAmB,EAAAH,qBAAA,CAAIE,iBAAiB,CAACE,sBAAsB,QAAAJ,qBAAA,CAClEE,iBAAiB,CAACE,sBAAsB,CAAG,CAAC,CAG9C,CAED,GAAM,CAAAC,uBAAuB,CAAG,EAAAJ,qBAAA,CAAC/E,eAAe,CAACoF,WAAW,QAAAL,qBAAA,CAAI,EAAE,EAC/DhD,GAAG,CAAC,SAACsD,KAAK,QAAK,CAAAf,iBAAiB,CAACe,KAAK,CAAC,GAAC,CACxC/F,IAAI,CAAC,SAACgG,SAAS,CAA0B,CACxC,MAAO,CAAC,CAACA,SAAS,EAAI,CAAC,CAACL,mBAAmB,CAACK,SAAS,CAAC,CACxD,CAAC,CAAC,CAEJ,GAAIH,uBAAuB,CAAE,CAC3B,MAAO,CAAAF,mBAAmB,CACxBE,uBAAuB,CACxB,CACH,CAEA,GAAM,CAAAI,8BAA8B,CAAI/G,OAAO,CAASgH,YAAY,CAAC,CAAC,CACtEP,mBAAmB,CAACM,8BAA8B,CAAC,CACjD7B,yBAAyB,CAAC,CAAC,CAC7BuB,mBAAmB,CAAC,GAAGM,8BAA8B,UAAU,CAAC,CAC9DV,0BAA0B,CAE5B,GAAM,CAAAY,iBAAiB,CAAGC,KAAK,CAACC,OAAO,CAAC3F,eAAe,CAACoF,WAAW,CAAC,CAChEpF,eAAe,CAACoF,WAAW,CAC3B,EAAE,CACNK,iBAAiB,CAACG,IAAI,CACpBnC,2BAA2B,CACzB8B,8BAA8B,CAC9BV,0BACF,CACF,CAAC,CACD7E,eAAe,CAACoF,WAAW,CAAGK,iBAAiB,CAE/CzG,eAAM,CAACC,QAAQ,CACb,gEAAgEC,mBAAmB,GACrF,CAAC,CAED,MAAO,CAAA+F,mBAAmB,CACxBM,8BAA8B,CAC/B,CACH,CAEA,QAAS,CAAAM,sBAAsBA,CAC7BrH,OAAqB,CACrBsH,mBAA2C,CAC3CC,WAAmB,CACV,CACT,GAAM,CAAAC,gBAAgB,CAAGxH,OAAO,CAACyH,mBAAmB,CAAC,CAGpD,CACD,GAAM,CAAApC,KAAK,CAAG6B,KAAK,CAACC,OAAO,CAACG,mBAAmB,CAACjC,KAAK,CAAC,CAClDiC,mBAAmB,CAACjC,KAAK,CACzB,EAAE,CAEN,MAAO,CAAAA,KAAK,CAACqC,IAAI,CAAC,SAACC,SAAS,CAAK,KAAAC,qBAAA,CAC/B,GAAM,CAAAC,aAAa,CAAG/B,iBAAiB,CAAC6B,SAAS,CAAC,CAClD,GAAI,CAACE,aAAa,CAAE,CAClB,MAAO,MAAK,CACd,CAEA,MAAO,EAAAD,qBAAA,CAAAJ,gBAAgB,CAACK,aAAa,CAAC,eAA/BD,qBAAA,CAAiCpC,OAAO,IAAK+B,WAAW,CACjE,CAAC,CAAC,CACJ,CAEA,QAAS,CAAAO,4BAA4BA,CACnC9H,OAAqB,CACrBsH,mBAA2C,CAC3CC,WAAmB,CACnBQ,gBAAwB,CAClB,CACN,GAAM,CAAAP,gBAAgB,CAAGxH,OAAO,CAACyH,mBAAmB,CAAC,CAGpD,CACD,GAAM,CAAAI,aAAa,CAAI7H,OAAO,CAASgH,YAAY,CAAC,CAAC,CAErDQ,gBAAgB,CAACK,aAAa,CAAC,CAAGtC,eAAe,CAACgC,WAAW,CAAC,CAC9DC,gBAAgB,CAAC,GAAGK,aAAa,UAAU,CAAC,CAAGE,gBAAgB,CAE/D,GAAM,CAAA1C,KAAK,CAAG6B,KAAK,CAACC,OAAO,CAACG,mBAAmB,CAACjC,KAAK,CAAC,CAClDiC,mBAAmB,CAACjC,KAAK,CACzB,EAAE,CACNA,KAAK,CAAC+B,IAAI,CAACnC,2BAA2B,CAAC4C,aAAa,CAAEE,gBAAgB,CAAC,CAAC,CACxET,mBAAmB,CAACjC,KAAK,CAAGA,KAAK,CACnC,CAOO,QAAS,CAAA2C,iDAAiDA,CAC/DhI,OAAqB,CACrBU,mBAA2B,CAC3B6G,WAAmB,CAAAU,KAAA,CAEV,IADP,CAAA5B,0BAA0B,CAAA4B,KAAA,CAA1B5B,0BAA0B,CAAE0B,gBAAgB,CAAAE,KAAA,CAAhBF,gBAAgB,CAE9C,GAAM,CAAAvG,eAAe,CAAGyE,yBAAyB,CAC/CjG,OAAO,CACPU,mBACF,CAAC,CACD,GAAM,CAAA4G,mBAAmB,CAAGlB,uCAAuC,CACjEpG,OAAO,CACPU,mBAAmB,CACnBc,eAAe,CACf6E,0BACF,CAAC,CAED,GAAIgB,sBAAsB,CAACrH,OAAO,CAAEsH,mBAAmB,CAAEC,WAAW,CAAC,CAAE,CACrE,MAAO,MAAK,CACd,CAEAO,4BAA4B,CAC1B9H,OAAO,CACPsH,mBAAmB,CACnBC,WAAW,CACXQ,gBACF,CAAC,CAED,MAAO,KAAI,CACb,CAOO,QAAS,CAAA1F,yBAAyBA,CAAA6F,KAAA,CAAAC,KAAA,CAcI,IAZzC,CAAA7F,aAAa,CAAA4F,KAAA,CAAb5F,aAAa,IAMb,CAAAlC,gBAAgB,CAAA+H,KAAA,CAAhB/H,gBAAgB,CAChBgI,gBAAgB,CAAAD,KAAA,CAAhBC,gBAAgB,CAChBjI,aAAa,CAAAgI,KAAA,CAAbhI,aAAa,CACbkI,gBAAgB,CAAAF,KAAA,CAAhBE,gBAAgB,CACDC,mBAAmB,CAAAH,KAAA,CAAlCtF,aAAa,CAGf,GAAM,CAAA0F,OAAO,CAAGjG,aAAa,GAAK,OAAO,CAEzC,OAAA3B,MAAA,CAAA6H,MAAA,EAEEC,8BAA8B,CAAE,KAAK,CACrCC,sBAAsB,CAAE,IAAI,CAC5BC,YAAY,CAAE,IAAI,CAClBC,sBAAsB,CAAE,IAAI,CAC5BC,YAAY,CAAE,mCAAmC,CAGjDC,yBAAyB,CAAE,IAAI1I,gBAAgB,GAAG,CAClD2I,0BAA0B,CAAEX,gBAAgB,CAG5CY,uBAAuB,CAAE,UAAU,CACnCC,qBAAqB,CAAE,6BAA6B,CAGpDC,aAAa,CAAE,KAAK,CACpBC,sBAAsB,CAAE,OAAO,CAC/BC,cAAc,CAAE,GAAGjJ,aAAa,aAAa,CAC7CkJ,uBAAuB,CAAE,IAAIhB,gBAAgB,GAAG,CAChDiB,YAAY,CAAE,kBAAkB,CAChCC,wBAAwB,CAAEhB,OAAO,CAAG,QAAQ,CAAG,IAAI,EAGhDD,mBAAmB,EAE1B,CAEO,QAAS,CAAAkB,qDAAqDA,CACnEC,WAAmB,CACX,CACR,GAAM,CAAAC,qBAAqB,CAAG;AAChC;AACA;AACA;AACA;AACA,CAAC,CACC,GAAM,CAAAC,sBAAsB,CAC1B,oFAAoF,CAEtF,GAAIA,sBAAsB,CAACC,IAAI,CAACH,WAAW,CAAC,CAAE,CAC5C,MAAO,CAAAA,WAAW,CAACI,OAAO,CACxBF,sBAAsB,CACtB,GAAGD,qBAAqB,IAC1B,CAAC,CACH,CAEA,GAAID,WAAW,CAACK,QAAQ,CAAC,yBAAyB,CAAC,CAAE,CACnD,MAAO,CAAAL,WAAW,CACpB,CAEA,MAAO,GAAGC,qBAAqB,KAAKD,WAAW,EAAE,CACnD,CAEA,QAAS,CAAAM,eAAeA,CAAC3I,KAAyB,CAAU,CAC1D,GAAI,CAACA,KAAK,CAAE,CACV,MAAO,EAAE,CACX,CAEA,GAAIA,KAAK,CAAC4I,UAAU,CAAC,GAAG,CAAC,EAAI5I,KAAK,CAACuD,QAAQ,CAAC,GAAG,CAAC,CAAE,CAChD,GAAI,CACF,MAAO,CAAAsF,IAAI,CAACC,KAAK,CAAC9I,KAAK,CAAC,CAC1B,CAAE,MAAA+I,OAAA,CAAM,CACN,MAAO,CAAA/I,KAAK,CAACgJ,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAACP,OAAO,CAAC,MAAM,CAAE,GAAG,CAAC,CAChD,CACF,CAEA,MAAO,CAAAzI,KAAK,CACd,CAEA,QAAS,CAAAiJ,eAAeA,CAACjJ,KAAa,CAAU,CAC9C,MAAO,CAAA6I,IAAI,CAACK,SAAS,CAAClJ,KAAK,CAAC,CAC9B,CAEA,QAAS,CAAAmJ,oBAAoBA,CAC3B1D,KAA2B,CAC3B2D,eAAuB,CACd,CACT,MACE,CAAA3D,KAAK,CAAC5E,OAAO,GAAKuI,eAAe,EACjC3D,KAAK,CAAC5E,OAAO,GAAK,IAAIuI,eAAe,GAAG,CAE5C,CAQO,QAAS,CAAAC,0BAA0BA,CACxCzK,OAAqB,CACrB0K,UAAkB,CACZ,CACN,GAAM,CAAAC,cAAc,CAAG,qCAAqC,CAG5D,GAAM,CAAAC,iBAAiB,CACrB5K,OAAO,CAAC4F,IAAI,CAAC5F,OAAO,CAAC6F,OAAO,CAACgF,wBAAwB,CACvD,GAAI,CAACD,iBAAiB,CAAE,CACtB,KAAM,IAAI,CAAAtJ,gDAAuB,CAC/B,gDAAgDqJ,cAAc,EAChE,CAAC,CACH,CAGA,GAAI,CAAAG,iBAAgC,CAAG,IAAI,CAC3C,GAAI,CAAAC,aAAyC,CAAG,IAAI,CACpD,IAAK,GAAM,CAAAjI,GAAG,GAAI,CAAAnC,MAAM,CAACqK,IAAI,CAACJ,iBAAiB,CAAC,CAAE,CAChD,GAAI9H,GAAG,CAAC6B,QAAQ,CAAC,UAAU,CAAC,CAAE,SAC9B,GAAM,CAAAkC,KAAK,CAAG+D,iBAAiB,CAAC9H,GAAG,CAAC,CACpC,GAAI+D,KAAK,CAACoE,IAAI,GAAK,IAAIN,cAAc,GAAG,EAAI9D,KAAK,CAACoE,IAAI,GAAKN,cAAc,CAAE,CACzEG,iBAAiB,CAAGhI,GAAG,CACvBiI,aAAa,CAAGlE,KAAK,CACrB,MACF,CACF,CAEA,GAAI,CAACiE,iBAAiB,EAAI,CAACC,aAAa,CAAE,CACxC,KAAM,IAAI,CAAAzJ,gDAAuB,CAC/B,mBAAmBqJ,cAAc,yBACnC,CAAC,CACH,CAEA,GAAM,CAAAzE,aAAa,CAAGlG,OAAO,CAAC4F,IAAI,CAAC5F,OAAO,CAAC6F,OAAO,CAACM,eAAe,CAClE,GAAID,aAAa,EAAIA,aAAa,CAACwE,UAAU,CAAC,CAAE,CAC9C,GAAM,CAAAQ,MAAM,CAAGhF,aAAa,CAACwE,UAAU,CAAC,CACxC,GAAIQ,MAAM,CAACtE,WAAW,CAAE,KAAAuE,sBAAA,CAAAC,sBAAA,CACtB,GAAM,CAAAC,gBAAgB,CAAGH,MAAM,CAACtE,WAAW,CAAC0E,SAAS,CACnD,SAACzE,KAA2B,QAC1B,CAAA0D,oBAAoB,CAAC1D,KAAK,CAAE8D,cAAc,CAAC,EAC/C,CAAC,CACD,GAAM,CAAAY,kBAAkB,CACtBxB,eAAe,CAACgB,aAAa,CAACS,SAAS,CAAC,EAAI,SAAS,CACvD,GAAM,CAAAC,oBAAoB,CACxBjC,qDAAqD,CACnDO,eAAe,CAACgB,aAAa,CAACtB,WAAW,CAC3C,CAAC,CAEH,GAAI4B,gBAAgB,GAAK,CAAC,CAAC,CAAE,CAC3B,GAAM,CAAAK,gBAAgB,CAAGR,MAAM,CAACtE,WAAW,CAACyE,gBAAgB,CAAC,CAACjK,KAAK,CACnE,GAAM,CAAAuK,YAAY,CAAGf,iBAAiB,CAACc,gBAAgB,CAAC,CAExD,GAAIC,YAAY,EAAID,gBAAgB,GAAKZ,iBAAiB,CAAE,KAAAc,qBAAA,CAAAC,qBAAA,CAC1DF,YAAY,CAACG,UAAU,EAAAF,qBAAA,CAAGb,aAAa,CAACe,UAAU,QAAAF,qBAAA,CAAI,EAAE,CACxDD,YAAY,CAACI,WAAW,EAAAF,qBAAA,CAAGd,aAAa,CAACgB,WAAW,QAAAF,qBAAA,CAAI,EAAE,CAC1DF,YAAY,CAACH,SAAS,CAAGnB,eAAe,CAACkB,kBAAkB,CAAC,CAC5DI,YAAY,CAAClC,WAAW,CAAGY,eAAe,CAACoB,oBAAoB,CAAC,CAEhE,GAAIV,aAAa,CAACiB,gBAAgB,GAAKC,SAAS,CAAE,CAChDN,YAAY,CAACK,gBAAgB,CAAGjB,aAAa,CAACiB,gBAAgB,CAChE,CAEAxL,eAAM,CAACC,QAAQ,CACb,+BAA+BkK,cAAc,2BAA2BO,MAAM,CAACD,IAAI,EACrF,CAAC,CACD,OACF,CAEA,GAAIS,gBAAgB,GAAKZ,iBAAiB,CAAE,CAC1CI,MAAM,CAACtE,WAAW,CAACsF,MAAM,CAACb,gBAAgB,CAAE,CAAC,CAAC,CAChD,CAAC,IAAM,CACL,OACF,CACF,CAEA,GAAM,CAAAc,UAAU,CAAGnM,OAAO,CAAC4E,aAAa,CACtC,EAAE,CACF,0BAA0B,CAC1B+F,cAAc,CACdD,UAAU,CACV,CACEoB,UAAU,EAAAX,sBAAA,CAAEJ,aAAa,CAACe,UAAU,QAAAX,sBAAA,CAAI,EAAE,CAC1CY,WAAW,EAAAX,sBAAA,CAAEL,aAAa,CAACgB,WAAW,QAAAX,sBAAA,CAAI,EAAE,CAC5CI,SAAS,CAAED,kBAAkB,CAC7B9B,WAAW,CAAEgC,oBACf,CACF,CAAC,CAED,GAAIV,aAAa,CAACiB,gBAAgB,GAAKC,SAAS,CAAE,CAChDE,UAAU,CAACC,UAAU,CAACJ,gBAAgB,CAAGjB,aAAa,CAACiB,gBAAgB,CACzE,CAEAxL,eAAM,CAACC,QAAQ,CACb,6BAA6BkK,cAAc,2BAA2BO,MAAM,CAACD,IAAI,EACnF,CAAC,CACH,CACF,CACF,CAEA,QAAS,CAAAoB,oBAAoBA,CAC3BrM,OAAqB,CACrBC,UAAkC,CACnB,CACf,GAAM,CAAAqM,UAAU,CAAGC,wBAAS,CAACC,MAAM,CAACC,gBAAgB,CAACzM,OAAO,CAAC,CAC1DuD,GAAG,CAAC,SAAAmJ,MAAA,CAAgB,KAAAC,YAAA,KAAAC,MAAA,IAAA3L,eAAA,CAAAC,OAAA,EAAAwL,MAAA,IAAZxB,MAAM,CAAA0B,MAAA,IACb,GACE,CAACL,wBAAS,CAACC,MAAM,CAACK,cAAc,CAC9B3B,MAAM,CACNqB,wBAAS,CAACC,MAAM,CAACM,UAAU,CAACC,WAC9B,CAAC,CACD,CACA,MAAO,KAAI,CACb,CAEA,GAAM,CAAA9B,IAAI,CAAGsB,wBAAS,CAACS,UAAU,CAACC,OAAO,EAAAN,YAAA,CAACzB,MAAM,CAACD,IAAI,QAAA0B,YAAA,CAAI,EAAE,CAAC,CAACO,IAAI,CAAC,CAAC,CAEnE,MAAO,CAAAjC,IAAI,OAAJA,IAAI,CAAI,IAAI,CACrB,CAAC,CAAC,CACDxG,MAAM,CAAC,SAACwG,IAAI,QAAqB,CAAC,CAACA,IAAI,GAAC,CAG3C,GAAIqB,UAAU,CAACa,MAAM,GAAK,CAAC,CAAE,CAC3B,MAAO,CAAAb,UAAU,CAAC,CAAC,CAAC,CACtB,CAAC,IAAM,CACL9L,eAAM,CAAC4M,UAAU,CACf,kHACF,CAAC,CACH,CAGA,GAAM,CAAAC,qBAAqB,CAAGpN,UAAU,CAACqN,WAAW,CACpD,GAAID,qBAAqB,EAAIf,UAAU,CAACxC,QAAQ,CAACuD,qBAAqB,CAAC,CAAE,CACvE,MAAO,CAAAA,qBAAqB,CAC9B,CAAC,IAAM,CACL7M,eAAM,CAAC4M,UAAU,CACf,iIACF,CAAC,CACH,CAGA,GAAI,KAAAG,oBAAA,CACF,IAAAC,qBAAA,CAA2BjB,wBAAS,CAACC,MAAM,CAACiB,qBAAqB,CAACzN,OAAO,CAAC,CAAA0N,sBAAA,IAAAzM,eAAA,CAAAC,OAAA,EAAAsM,qBAAA,IAAjEG,cAAc,CAAAD,sBAAA,IACvB,GAAM,CAAAzC,IAAI,CAAGsB,wBAAS,CAACS,UAAU,CAACC,OAAO,EAAAM,oBAAA,CAACI,cAAc,CAAC1C,IAAI,QAAAsC,oBAAA,CAAI,EAAE,CAAC,CAACL,IAAI,CAAC,CAAC,CAC3E,MAAO,CAAAjC,IAAI,EAAI,IAAI,CACrB,CAAE,MAAA2C,QAAA,CAAM,CACNpN,eAAM,CAAC4M,UAAU,CACf,mGACF,CAAC,CACH,CAEA5M,eAAM,CAACqN,QAAQ,CACb,8IACF,CAAC,CAED,MAAO,KAAI,CACb,CAMO,QAAS,CAAAC,iCAAiCA,CAC/C7N,UAAkC,CAClCD,OAAqB,CAAA+N,MAAA,CAQrB,KAAAC,qBAAA,CAAAC,sBAAA,IANE,CAAA9N,aAAa,CAAA4N,MAAA,CAAb5N,aAAa,CACbO,mBAAmB,CAAAqN,MAAA,CAAnBrN,mBAAmB,CAMrB,GAAM,CAAAwN,qBAAqB,CAAG7B,oBAAoB,CAACrM,OAAO,CAAEC,UAAU,CAAC,CAEvEO,eAAM,CAAC8D,OAAO,CAAC,iCAAiC4J,qBAAqB,EAAE,CAAC,CAExE,GAAI,CAACA,qBAAqB,CAAE,CAC1B,KAAM,IAAI,CAAA5M,gDAAuB,CAC/B,qEACF,CAAC,CACH,CAEA,GAAM,CAAA6M,mBAAmB,EAAAH,qBAAA,EAAAC,sBAAA,CACvBjO,OAAO,CAACa,sBAAsB,CAAC,CAAC,CAACH,mBAAmB,CAAC,eAArDuN,sBAAA,CAAuDrH,WAAW,QAAAoH,qBAAA,CAAI,EAAE,CAC1E,GACEG,mBAAmB,CAACzG,IAAI,CAAC,SAACb,KAA2B,QACnD,CAAA0D,oBAAoB,CAAC1D,KAAK,CAAE,2BAA2B,CAAC,EAC1D,CAAC,CACD,CACA,OACF,CAEA7G,OAAO,CAAC4E,aAAa,CACnB,EAEC,CACD,0BAA0B,CAC1B,2BAA2B,CAC3BlE,mBAAmB,CACnB,CACE8K,SAAS,CAAE,SAAS,CACpB/B,WAAW,CAAE,GAAA2E,sBAAc,EAAC,KAAK,CAAE,mBAAmB,CAAE,CACtD,qBAAqB,CAAEF,qBAAqB,CAC5C,oBAAoB,CAAE/N,aACxB,CAAC,CACH,CACF,CAAC,CACH,CASO,QAAS,CAAAkO,6CAA6CA,CAC3DrO,OAAqB,CACrBU,mBAA2B,CAC3B,CACA,GAAI,CAAA4N,QAAQ,CAAG,KAAK,CACpB,GAAM,CAAAC,mBAAmB,CAAGvO,OAAO,CAACa,sBAAsB,CAAC,CAAC,CAE5D,GAAM,CAAA+F,WAAkD,CACtD2H,mBAAmB,CAAC7N,mBAAmB,CAAC,CAACkG,WAAW,CAEtD,GAAM,CAAA4H,uBAAuB,CAAG5H,WAAW,CAAC0E,SAAS,CACnD,SAACzE,KAAK,MAAA4H,QAAA,OACJ,CAAC5H,KAAK,SAAA4H,QAAA,CAAL5H,KAAK,CAAU5E,OAAO,eAAvBwM,QAAA,CAAyBC,WAAW,CAAC,CAAC,IACtC,0BAA0B,CAACA,WAAW,CAAC,CAAC,EAC5C,CAAC,CAED,GAAM,CAAAC,kCAAkC,CAAG/H,WAAW,CAAC0E,SAAS,CAC9D,SAACzE,KAAK,MAAA+H,SAAA,OACJ,CAAC/H,KAAK,SAAA+H,SAAA,CAAL/H,KAAK,CAAU5E,OAAO,eAAvB2M,SAAA,CAAyBF,WAAW,CAAC,CAAC,IACtC,2BAA2B,CAACA,WAAW,CAAC,CAAC,EAC7C,CAAC,CAGD,GAAIC,kCAAkC,CAAGH,uBAAuB,CAAE,CAChE,GAAM,CAAAK,OAAO,CAAGjI,WAAW,CAACsF,MAAM,CAChCyC,kCAAkC,CAClC,CACF,CAAC,CAAC,CAAC,CAAC,CACJ/H,WAAW,CAACsF,MAAM,CAACsC,uBAAuB,CAAE,CAAC,CAAEK,OAAO,CAAC,CACvDP,QAAQ,CAAG,IAAI,CACjB,CAEAC,mBAAmB,CAAC7N,mBAAmB,CAAC,CAACkG,WAAW,CAAGA,WAAW,CAElE5G,OAAO,CAAC8O,SAAS,CAAC,CAAC,CAEnB,MAAO,CAAAR,QAAQ,CACjB","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Logger=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var LOG_TAG='[react-native-brownfield]';var Logger=exports.Logger=function(){function Logger(){(0,_classCallCheck2.default)(this,Logger);}return(0,_createClass2.default)(Logger,null,[{key:"setIsDebug",value:function setIsDebug(enabled){this.debug=enabled;}},{key:"logInfo",value:function logInfo(message){var _console;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}(_console=console).log.apply(_console,[`${LOG_TAG} ${message}`].concat(args));}},{key:"logDebug",value:function logDebug(message){var _console2;if(!this.debug){return;}for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}(_console2=console).debug.apply(_console2,[`${LOG_TAG} ${message}`].concat(args));}},{key:"logWarning",value:function logWarning(message){var _console3;for(var _len3=arguments.length,args=new Array(_len3>1?_len3-1:0),_key3=1;_key3<_len3;_key3++){args[_key3-1]=arguments[_key3];}(_console3=console).warn.apply(_console3,[`${LOG_TAG} ${message}`].concat(args));}},{key:"logError",value:function logError(message){var _console4;for(var _len4=arguments.length,args=new Array(_len4>1?_len4-1:0),_key4=1;_key4<_len4;_key4++){args[_key4-1]=arguments[_key4];}(_console4=console).error.apply(_console4,[`${LOG_TAG} ${message}`].concat(args));}}]);}();Logger.debug=false;
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Logger=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var LOG_TAG='[react-native-brownfield]';var Logger=exports.Logger=function(){function Logger(){(0,_classCallCheck2.default)(this,Logger);}return(0,_createClass2.default)(Logger,null,[{key:"setIsDebug",value:function setIsDebug(enabled){this.debug=enabled;}},{key:"logInfo",value:function logInfo(message){var _console;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}(_console=console).log.apply(_console,[`${LOG_TAG} ${message}`].concat(args));}},{key:"logDebug",value:function logDebug(message){var _console2;if(!this.debug){return;}for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}(_console2=console).debug.apply(_console2,[`${LOG_TAG} ${message}`].concat(args));}},{key:"getIsDebug",value:function getIsDebug(){return this.debug;}},{key:"logWarning",value:function logWarning(message){var _console3;for(var _len3=arguments.length,args=new Array(_len3>1?_len3-1:0),_key3=1;_key3<_len3;_key3++){args[_key3-1]=arguments[_key3];}(_console3=console).warn.apply(_console3,[`${LOG_TAG} ${message}`].concat(args));}},{key:"logError",value:function logError(message){var _console4;for(var _len4=arguments.length,args=new Array(_len4>1?_len4-1:0),_key4=1;_key4<_len4;_key4++){args[_key4-1]=arguments[_key4];}(_console4=console).error.apply(_console4,[`${LOG_TAG} ${message}`].concat(args));}}]);}();Logger.debug=false;
2
2
  //# sourceMappingURL=logging.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["LOG_TAG","Logger","exports","_classCallCheck2","default","_createClass2","key","value","setIsDebug","enabled","debug","logInfo","message","_console","_len","arguments","length","args","Array","_key","console","log","apply","concat","logDebug","_console2","_len2","_key2","logWarning","_console3","_len3","_key3","warn","logError","_console4","_len4","_key4","error"],"sourceRoot":"../../../src","sources":["expo-config-plugin/logging.ts"],"mappings":"wVAAA,GAAM,CAAAA,OAAO,CAAG,2BAA2B,CAAC,GAE/B,CAAAC,MAAM,CAAAC,OAAA,CAAAD,MAAA,qBAAAA,OAAA,KAAAE,gBAAA,CAAAC,OAAA,OAAAH,MAAA,YAAAI,aAAA,CAAAD,OAAA,EAAAH,MAAA,QAAAK,GAAA,cAAAC,KAAA,CAGjB,QAAO,CAAAC,UAAUA,CAACC,OAAgB,CAAE,CAClC,IAAI,CAACC,KAAK,CAAGD,OAAO,CACtB,CAAC,GAAAH,GAAA,WAAAC,KAAA,CAED,QAAO,CAAAI,OAAOA,CAACC,OAAe,CAAkB,KAAAC,QAAA,SAAAC,IAAA,CAAAC,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAJ,IAAA,GAAAA,IAAA,MAAAK,IAAA,GAAAA,IAAA,CAAAL,IAAA,CAAAK,IAAA,IAAJF,IAAI,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GACrC,CAAAN,QAAA,CAAAO,OAAO,EAACC,GAAG,CAAAC,KAAA,CAAAT,QAAA,EAAC,GAAGb,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CAC/C,CAAC,GAAAX,GAAA,YAAAC,KAAA,CAED,QAAO,CAAAiB,QAAQA,CAACZ,OAAe,CAAkB,KAAAa,SAAA,CAC/C,GAAI,CAAC,IAAI,CAACf,KAAK,CAAE,CACf,OACF,CAAC,QAAAgB,KAAA,CAAAX,SAAA,CAAAC,MAAA,CAHiCC,IAAI,KAAAC,KAAA,CAAAQ,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJV,IAAI,CAAAU,KAAA,IAAAZ,SAAA,CAAAY,KAAA,GAKtC,CAAAF,SAAA,CAAAL,OAAO,EAACV,KAAK,CAAAY,KAAA,CAAAG,SAAA,EAAC,GAAGzB,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CACjD,CAAC,GAAAX,GAAA,cAAAC,KAAA,CAED,QAAO,CAAAqB,UAAUA,CAAChB,OAAe,CAAkB,KAAAiB,SAAA,SAAAC,KAAA,CAAAf,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAY,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJd,IAAI,CAAAc,KAAA,IAAAhB,SAAA,CAAAgB,KAAA,GACxC,CAAAF,SAAA,CAAAT,OAAO,EAACY,IAAI,CAAAV,KAAA,CAAAO,SAAA,EAAC,GAAG7B,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CAChD,CAAC,GAAAX,GAAA,YAAAC,KAAA,CAED,QAAO,CAAA0B,QAAQA,CAACrB,OAAe,CAAkB,KAAAsB,SAAA,SAAAC,KAAA,CAAApB,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAiB,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJnB,IAAI,CAAAmB,KAAA,IAAArB,SAAA,CAAAqB,KAAA,GACtC,CAAAF,SAAA,CAAAd,OAAO,EAACiB,KAAK,CAAAf,KAAA,CAAAY,SAAA,EAAC,GAAGlC,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CACjD,CAAC,QAzBUhB,MAAM,CACFS,KAAK,CAAY,KAAK","ignoreList":[]}
1
+ {"version":3,"names":["LOG_TAG","Logger","exports","_classCallCheck2","default","_createClass2","key","value","setIsDebug","enabled","debug","logInfo","message","_console","_len","arguments","length","args","Array","_key","console","log","apply","concat","logDebug","_console2","_len2","_key2","getIsDebug","logWarning","_console3","_len3","_key3","warn","logError","_console4","_len4","_key4","error"],"sourceRoot":"../../../src","sources":["expo-config-plugin/logging.ts"],"mappings":"wVAAA,GAAM,CAAAA,OAAO,CAAG,2BAA2B,CAAC,GAE/B,CAAAC,MAAM,CAAAC,OAAA,CAAAD,MAAA,qBAAAA,OAAA,KAAAE,gBAAA,CAAAC,OAAA,OAAAH,MAAA,YAAAI,aAAA,CAAAD,OAAA,EAAAH,MAAA,QAAAK,GAAA,cAAAC,KAAA,CAGjB,QAAO,CAAAC,UAAUA,CAACC,OAAgB,CAAE,CAClC,IAAI,CAACC,KAAK,CAAGD,OAAO,CACtB,CAAC,GAAAH,GAAA,WAAAC,KAAA,CAED,QAAO,CAAAI,OAAOA,CAACC,OAAe,CAAkB,KAAAC,QAAA,SAAAC,IAAA,CAAAC,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAJ,IAAA,GAAAA,IAAA,MAAAK,IAAA,GAAAA,IAAA,CAAAL,IAAA,CAAAK,IAAA,IAAJF,IAAI,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GACrC,CAAAN,QAAA,CAAAO,OAAO,EAACC,GAAG,CAAAC,KAAA,CAAAT,QAAA,EAAC,GAAGb,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CAC/C,CAAC,GAAAX,GAAA,YAAAC,KAAA,CAED,QAAO,CAAAiB,QAAQA,CAACZ,OAAe,CAAkB,KAAAa,SAAA,CAC/C,GAAI,CAAC,IAAI,CAACf,KAAK,CAAE,CACf,OACF,CAAC,QAAAgB,KAAA,CAAAX,SAAA,CAAAC,MAAA,CAHiCC,IAAI,KAAAC,KAAA,CAAAQ,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJV,IAAI,CAAAU,KAAA,IAAAZ,SAAA,CAAAY,KAAA,GAKtC,CAAAF,SAAA,CAAAL,OAAO,EAACV,KAAK,CAAAY,KAAA,CAAAG,SAAA,EAAC,GAAGzB,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CACjD,CAAC,GAAAX,GAAA,cAAAC,KAAA,CAED,QAAO,CAAAqB,UAAUA,CAAA,CAAG,CAClB,MAAO,KAAI,CAAClB,KAAK,CACnB,CAAC,GAAAJ,GAAA,cAAAC,KAAA,CAED,QAAO,CAAAsB,UAAUA,CAACjB,OAAe,CAAkB,KAAAkB,SAAA,SAAAC,KAAA,CAAAhB,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAa,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJf,IAAI,CAAAe,KAAA,IAAAjB,SAAA,CAAAiB,KAAA,GACxC,CAAAF,SAAA,CAAAV,OAAO,EAACa,IAAI,CAAAX,KAAA,CAAAQ,SAAA,EAAC,GAAG9B,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CAChD,CAAC,GAAAX,GAAA,YAAAC,KAAA,CAED,QAAO,CAAA2B,QAAQA,CAACtB,OAAe,CAAkB,KAAAuB,SAAA,SAAAC,KAAA,CAAArB,SAAA,CAAAC,MAAA,CAAbC,IAAI,KAAAC,KAAA,CAAAkB,KAAA,GAAAA,KAAA,MAAAC,KAAA,GAAAA,KAAA,CAAAD,KAAA,CAAAC,KAAA,IAAJpB,IAAI,CAAAoB,KAAA,IAAAtB,SAAA,CAAAsB,KAAA,GACtC,CAAAF,SAAA,CAAAf,OAAO,EAACkB,KAAK,CAAAhB,KAAA,CAAAa,SAAA,EAAC,GAAGnC,OAAO,IAAIY,OAAO,EAAE,EAAAW,MAAA,CAAKN,IAAI,EAAC,CACjD,CAAC,QA7BUhB,MAAM,CACFS,KAAK,CAAY,KAAK","ignoreList":[]}
@@ -2,7 +2,10 @@ import Foundation
2
2
  import ReactBrownfield
3
3
 
4
4
  // Initializes a Bundle instance that points at the framework target.
5
- public let ReactNativeBundle = Bundle(for: InternalClassForBundle.self)
5
+ public let ReactNativeBundle =
6
+ Bundle(identifier: "{{BUNDLE_IDENTIFIER}}")
7
+ ?? Bundle.allFrameworks.first { $0.bundleIdentifier == "{{BUNDLE_IDENTIFIER}}" }
8
+ ?? Bundle(for: InternalClassForBundle.self)
6
9
 
7
10
  class InternalClassForBundle {}
8
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"withBrownfieldIos.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withBrownfieldIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAW9B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAItE;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAC1C,qCAAqC,CA0EtC,CAAC"}
1
+ {"version":3,"file":"withBrownfieldIos.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withBrownfieldIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAY9B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAItE;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAC1C,qCAAqC,CAqFtC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type ConfigPlugin } from '@expo/config-plugins';
2
+ import type { ResolvedBrownfieldPluginConfigWithIos } from '../types';
3
+ export declare function injectFmtFixIntoPodfile(podfile: string): string;
4
+ export declare const withFmtFix: ConfigPlugin<ResolvedBrownfieldPluginConfigWithIos>;
5
+ //# sourceMappingURL=withFmtFix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withFmtFix.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withFmtFix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEtE,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAiBtE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAyC/D;AAED,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,qCAAqC,CASvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withIosFrameworkFiles.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withIosFrameworkFiles.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EACV,oBAAoB,EACpB,qCAAqC,EACtC,MAAM,UAAU,CAAC;AAIlB;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,qCAAqC,CAAC,KAAK,CAAC,GAChD,oBAAoB,EAAE,CAaxB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,qCAAqC,QA+B9C;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAAY,CAC9C,qCAAqC,CAYtC,CAAC"}
1
+ {"version":3,"file":"withIosFrameworkFiles.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withIosFrameworkFiles.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EACV,oBAAoB,EACpB,qCAAqC,EACtC,MAAM,UAAU,CAAC;AAIlB;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,qCAAqC,CAAC,KAAK,CAAC,GAChD,oBAAoB,EAAE,CAexB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,qCAAqC,QA6B9C;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAAY,CAC9C,qCAAqC,CAYtC,CAAC"}
@@ -39,6 +39,16 @@ type ResourcesBuildPhaseOptions = {
39
39
  buildFileComment: string;
40
40
  };
41
41
  export declare function ensureTargetHasFileReferenceInResourcesBuildPhase(project: XcodeProject, frameworkTargetUUID: string, fileRefUuid: string, { resourcesBuildPhaseComment, buildFileComment }: ResourcesBuildPhaseOptions): boolean;
42
+ /**
43
+ * Returns build settings for the framework target
44
+ * @param options The user configuration
45
+ * @returns Build settings object
46
+ */
47
+ export declare function getFrameworkBuildSettings({ configuration, }: {
48
+ /** Build configuration name ("Debug" or "Release") */
49
+ configuration: 'Debug' | 'Release';
50
+ }, { bundleIdentifier, deploymentTarget, frameworkName, frameworkVersion, buildSettings: customBuildSettings, }: ResolvedBrownfieldPluginIosConfig): Record<string, string | boolean | number>;
51
+ export declare function rewriteBundleReactNativePhaseScriptForFrameworkTarget(shellScript: string): string;
42
52
  /**
43
53
  * Finds the "Bundle React Native code and images" build phase from the main app target
44
54
  * and adds it to the framework target's build phases
@@ -46,6 +56,10 @@ export declare function ensureTargetHasFileReferenceInResourcesBuildPhase(projec
46
56
  * @param targetUuid The UUID of the framework target
47
57
  */
48
58
  export declare function copyBundleReactNativePhase(project: XcodeProject, targetUuid: string): void;
59
+ /**
60
+ * Adds the "Patch ExpoModulesProvider" shell script phase to the framework target.
61
+ * Safe to call on every prebuild: skips creation when the phase is already present.
62
+ */
49
63
  export declare function addExpoPre55ShellPatchScriptPhase(modRequest: ModProps<XcodeProject>, project: XcodeProject, { frameworkName, frameworkTargetUUID, }: {
50
64
  frameworkName: string;
51
65
  frameworkTargetUUID: string;
@@ -1 +1 @@
1
- {"version":3,"file":"xcodeHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/xcodeHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,iCAAiC,GACzC;IACD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAoIA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,iCAAiC,QAkB3C;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,wBAAwB,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B,kCAAkC,EAAE,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAOvE,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,qBAAqB,CAEvB;AAmJD,KAAK,0BAA0B,GAAG;IAChC,0BAA0B,EAAE,MAAM,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,MAAM,EACnB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,GAC3E,OAAO,CAwBT;AAgDD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,GACjB,IAAI,CAkDN;AA4DD,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,YAAY,EACrB,EACE,aAAa,EACb,mBAAmB,GACpB,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,QA2BF;AAED;;;;;;GAMG;AACH,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,WAmC5B"}
1
+ {"version":3,"file":"xcodeHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/xcodeHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,iCAAiC,GACzC;IACD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAoIA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,iCAAiC,QAkB3C;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,wBAAwB,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B,kCAAkC,EAAE,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAOvE,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,qBAAqB,CAEvB;AAmJD,KAAK,0BAA0B,GAAG;IAChC,0BAA0B,EAAE,MAAM,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,MAAM,EACnB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,GAC3E,OAAO,CAwBT;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,EACE,aAAa,GACd,EAAE;IACD,sDAAsD;IACtD,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC,EACD,EACE,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAAE,mBAAmB,GACnC,EAAE,iCAAiC,GACnC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CA8B3C;AAED,wBAAgB,qDAAqD,CACnE,WAAW,EAAE,MAAM,GAClB,MAAM,CAsBR;AAgCD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,GACjB,IAAI,CA+FN;AA4DD;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,YAAY,EACrB,EACE,aAAa,EACb,mBAAmB,GACpB,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,QAqCF;AAED;;;;;;GAMG;AACH,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,WAmC5B"}
@@ -3,6 +3,7 @@ export declare class Logger {
3
3
  static setIsDebug(enabled: boolean): void;
4
4
  static logInfo(message: string, ...args: any[]): void;
5
5
  static logDebug(message: string, ...args: any[]): void;
6
+ static getIsDebug(): boolean;
6
7
  static logWarning(message: string, ...args: any[]): void;
7
8
  static logError(message: string, ...args: any[]): void;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../../../../src/expo-config-plugin/logging.ts"],"names":[],"mappings":"AAEA,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAkB;IAEtC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;IAIlC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI9C,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAQ/C,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIjD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAGhD"}
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../../../../src/expo-config-plugin/logging.ts"],"names":[],"mappings":"AAEA,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAkB;IAEtC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;IAIlC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI9C,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAQ/C,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIjD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAGhD"}
@@ -1 +1 @@
1
- {"version":3,"file":"withBrownfieldIos.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withBrownfieldIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAW9B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAItE;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAC1C,qCAAqC,CA0EtC,CAAC"}
1
+ {"version":3,"file":"withBrownfieldIos.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withBrownfieldIos.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAY9B,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAItE;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAC1C,qCAAqC,CAqFtC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type ConfigPlugin } from '@expo/config-plugins';
2
+ import type { ResolvedBrownfieldPluginConfigWithIos } from '../types';
3
+ export declare function injectFmtFixIntoPodfile(podfile: string): string;
4
+ export declare const withFmtFix: ConfigPlugin<ResolvedBrownfieldPluginConfigWithIos>;
5
+ //# sourceMappingURL=withFmtFix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withFmtFix.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withFmtFix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEtE,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,UAAU,CAAC;AAiBtE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAyC/D;AAED,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,qCAAqC,CASvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withIosFrameworkFiles.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withIosFrameworkFiles.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EACV,oBAAoB,EACpB,qCAAqC,EACtC,MAAM,UAAU,CAAC;AAIlB;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,qCAAqC,CAAC,KAAK,CAAC,GAChD,oBAAoB,EAAE,CAaxB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,qCAAqC,QA+B9C;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAAY,CAC9C,qCAAqC,CAYtC,CAAC"}
1
+ {"version":3,"file":"withIosFrameworkFiles.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/withIosFrameworkFiles.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EACV,oBAAoB,EACpB,qCAAqC,EACtC,MAAM,UAAU,CAAC;AAIlB;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,qCAAqC,CAAC,KAAK,CAAC,GAChD,oBAAoB,EAAE,CAexB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,qCAAqC,QA6B9C;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAAY,CAC9C,qCAAqC,CAYtC,CAAC"}
@@ -39,6 +39,16 @@ type ResourcesBuildPhaseOptions = {
39
39
  buildFileComment: string;
40
40
  };
41
41
  export declare function ensureTargetHasFileReferenceInResourcesBuildPhase(project: XcodeProject, frameworkTargetUUID: string, fileRefUuid: string, { resourcesBuildPhaseComment, buildFileComment }: ResourcesBuildPhaseOptions): boolean;
42
+ /**
43
+ * Returns build settings for the framework target
44
+ * @param options The user configuration
45
+ * @returns Build settings object
46
+ */
47
+ export declare function getFrameworkBuildSettings({ configuration, }: {
48
+ /** Build configuration name ("Debug" or "Release") */
49
+ configuration: 'Debug' | 'Release';
50
+ }, { bundleIdentifier, deploymentTarget, frameworkName, frameworkVersion, buildSettings: customBuildSettings, }: ResolvedBrownfieldPluginIosConfig): Record<string, string | boolean | number>;
51
+ export declare function rewriteBundleReactNativePhaseScriptForFrameworkTarget(shellScript: string): string;
42
52
  /**
43
53
  * Finds the "Bundle React Native code and images" build phase from the main app target
44
54
  * and adds it to the framework target's build phases
@@ -46,6 +56,10 @@ export declare function ensureTargetHasFileReferenceInResourcesBuildPhase(projec
46
56
  * @param targetUuid The UUID of the framework target
47
57
  */
48
58
  export declare function copyBundleReactNativePhase(project: XcodeProject, targetUuid: string): void;
59
+ /**
60
+ * Adds the "Patch ExpoModulesProvider" shell script phase to the framework target.
61
+ * Safe to call on every prebuild: skips creation when the phase is already present.
62
+ */
49
63
  export declare function addExpoPre55ShellPatchScriptPhase(modRequest: ModProps<XcodeProject>, project: XcodeProject, { frameworkName, frameworkTargetUUID, }: {
50
64
  frameworkName: string;
51
65
  frameworkTargetUUID: string;
@@ -1 +1 @@
1
- {"version":3,"file":"xcodeHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/xcodeHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,iCAAiC,GACzC;IACD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAoIA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,iCAAiC,QAkB3C;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,wBAAwB,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B,kCAAkC,EAAE,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAOvE,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,qBAAqB,CAEvB;AAmJD,KAAK,0BAA0B,GAAG;IAChC,0BAA0B,EAAE,MAAM,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,MAAM,EACnB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,GAC3E,OAAO,CAwBT;AAgDD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,GACjB,IAAI,CAkDN;AA4DD,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,YAAY,EACrB,EACE,aAAa,EACb,mBAAmB,GACpB,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,QA2BF;AAED;;;;;;GAMG;AACH,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,WAmC5B"}
1
+ {"version":3,"file":"xcodeHelpers.d.ts","sourceRoot":"","sources":["../../../../../../src/expo-config-plugin/ios/xcodeHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EAElB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,iCAAiC,GACzC;IACD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAoIA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,iCAAiC,QAkB3C;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,wBAAwB,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC3B,kCAAkC,EAAE,MAAM,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,cAAc,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAOvE,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,qBAAqB,CAEvB;AAmJD,KAAK,0BAA0B,GAAG;IAChC,0BAA0B,EAAE,MAAM,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,iDAAiD,CAC/D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,MAAM,EACnB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,GAC3E,OAAO,CAwBT;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,EACE,aAAa,GACd,EAAE;IACD,sDAAsD;IACtD,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC,EACD,EACE,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAAE,mBAAmB,GACnC,EAAE,iCAAiC,GACnC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CA8B3C;AAED,wBAAgB,qDAAqD,CACnE,WAAW,EAAE,MAAM,GAClB,MAAM,CAsBR;AAgCD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,GACjB,IAAI,CA+FN;AA4DD;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,EAClC,OAAO,EAAE,YAAY,EACrB,EACE,aAAa,EACb,mBAAmB,GACpB,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,QAqCF;AAED;;;;;;GAMG;AACH,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,YAAY,EACrB,mBAAmB,EAAE,MAAM,WAmC5B"}
@@ -3,6 +3,7 @@ export declare class Logger {
3
3
  static setIsDebug(enabled: boolean): void;
4
4
  static logInfo(message: string, ...args: any[]): void;
5
5
  static logDebug(message: string, ...args: any[]): void;
6
+ static getIsDebug(): boolean;
6
7
  static logWarning(message: string, ...args: any[]): void;
7
8
  static logError(message: string, ...args: any[]): void;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../../../../src/expo-config-plugin/logging.ts"],"names":[],"mappings":"AAEA,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAkB;IAEtC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;IAIlC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI9C,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAQ/C,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIjD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAGhD"}
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../../../../src/expo-config-plugin/logging.ts"],"names":[],"mappings":"AAEA,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAkB;IAEtC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;IAIlC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAI9C,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAQ/C,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIjD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAGhD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@callstack/react-native-brownfield",
3
- "version": "3.9.0",
3
+ "version": "3.11.0",
4
4
  "license": "MIT",
5
5
  "author": "Michal Chudziak <mike.chudziak@callstack.com>",
6
6
  "bin": {
@@ -47,7 +47,7 @@
47
47
  "lint": "eslint .",
48
48
  "typecheck": "tsc --noEmit",
49
49
  "build": "bob build",
50
- "dev": "nodemon --ext '*' --watch src --exec \"bob build\"",
50
+ "dev": "nodemon --exitcrash false --ext '*' --watch src --exec \"bob build\"",
51
51
  "build:brownfield": "yarn run build",
52
52
  "prepack": "cp ../../README.md ./README.md",
53
53
  "postpack": "rm ./README.md",
@@ -86,7 +86,7 @@
86
86
  "@expo/config-plugins": "^54.0.4"
87
87
  },
88
88
  "dependencies": {
89
- "@callstack/brownfield-cli": "^3.9.0"
89
+ "@callstack/brownfield-cli": "^3.11.0"
90
90
  },
91
91
  "devDependencies": {
92
92
  "@babel/core": "^7.25.2",
@@ -11,6 +11,7 @@ import {
11
11
  copyBundleReactNativePhase,
12
12
  } from './xcodeHelpers';
13
13
  import { modifyPodfile } from './podfileHelpers';
14
+ import { injectFmtFixIntoPodfile } from './withFmtFix';
14
15
  import { ensureFrameworkHasExpoPlistResource } from './utils/expo-updates';
15
16
  import { withIosFrameworkFiles } from './withIosFrameworkFiles';
16
17
  import type { ResolvedBrownfieldPluginConfigWithIos } from '../types';
@@ -55,9 +56,18 @@ export const withBrownfieldIos: ConfigPlugin<
55
56
 
56
57
  if (targetAlreadyExists) {
57
58
  Logger.logDebug(
58
- `Skipping further Xcode modifications as framework target was already present`
59
+ `Framework target already present, syncing Brownfield build phases`
59
60
  );
60
61
 
62
+ copyBundleReactNativePhase(project, frameworkTargetUUID);
63
+
64
+ if (isExpoPre55) {
65
+ addExpoPre55ShellPatchScriptPhase(modRequest, project, {
66
+ frameworkName: props.ios.frameworkName,
67
+ frameworkTargetUUID: frameworkTargetUUID,
68
+ });
69
+ }
70
+
61
71
  return xcodeConfig;
62
72
  }
63
73
 
@@ -89,11 +99,13 @@ export const withBrownfieldIos: ConfigPlugin<
89
99
  config = withPodfile(config, (podfileConfig) => {
90
100
  const { frameworkName } = props.ios;
91
101
 
92
- podfileConfig.modResults.contents = modifyPodfile(
102
+ const modifiedPodfile = modifyPodfile(
93
103
  podfileConfig.modResults.contents,
94
104
  frameworkName,
95
105
  expoMajor
96
106
  );
107
+ podfileConfig.modResults.contents =
108
+ injectFmtFixIntoPodfile(modifiedPodfile);
97
109
 
98
110
  return podfileConfig;
99
111
  });
@@ -0,0 +1,72 @@
1
+ import { withPodfile, type ConfigPlugin } from '@expo/config-plugins';
2
+
3
+ import type { ResolvedBrownfieldPluginConfigWithIos } from '../types';
4
+
5
+ const FMT_FIX_MARKER =
6
+ '# Fix fmt 11.0.2 consteval compilation error with Xcode 26.4+';
7
+
8
+ const FMT_FIX_RUBY = `\
9
+ ${FMT_FIX_MARKER}
10
+ fmt_base = File.join(installer.sandbox.pod_dir('fmt'), 'include', 'fmt', 'base.h')
11
+ if File.exist?(fmt_base)
12
+ content = File.read(fmt_base)
13
+ patched = content.gsub(/^#\\s*define FMT_USE_CONSTEVAL 1$/, '# define FMT_USE_CONSTEVAL 0')
14
+ if patched != content
15
+ File.chmod(0644, fmt_base)
16
+ File.write(fmt_base, patched)
17
+ end
18
+ end`;
19
+
20
+ export function injectFmtFixIntoPodfile(podfile: string): string {
21
+ if (podfile.includes(FMT_FIX_MARKER)) {
22
+ return podfile;
23
+ }
24
+
25
+ const lines = podfile.split('\n');
26
+ const postInstallIndex = lines.findIndex((line) =>
27
+ /^\s*post_install do \|installer\|/.test(line)
28
+ );
29
+
30
+ if (postInstallIndex === -1) {
31
+ return podfile;
32
+ }
33
+
34
+ let depth = 0;
35
+ let insertionIndex = -1;
36
+
37
+ for (let index = postInstallIndex; index < lines.length; index += 1) {
38
+ const trimmed = lines[index].trim();
39
+
40
+ if (trimmed.endsWith(' do |installer|')) {
41
+ depth += 1;
42
+ continue;
43
+ }
44
+
45
+ if (trimmed === 'end') {
46
+ depth -= 1;
47
+
48
+ if (depth === 0) {
49
+ insertionIndex = index;
50
+ break;
51
+ }
52
+ }
53
+ }
54
+
55
+ if (insertionIndex === -1) {
56
+ return podfile;
57
+ }
58
+
59
+ lines.splice(insertionIndex, 0, FMT_FIX_RUBY);
60
+ return lines.join('\n');
61
+ }
62
+
63
+ export const withFmtFix: ConfigPlugin<ResolvedBrownfieldPluginConfigWithIos> = (
64
+ config
65
+ ) =>
66
+ withPodfile(config, (podfileConfig) => {
67
+ podfileConfig.modResults.contents = injectFmtFixIntoPodfile(
68
+ podfileConfig.modResults.contents
69
+ );
70
+
71
+ return podfileConfig;
72
+ });
@@ -21,7 +21,9 @@ export function getFrameworkSourceFiles(
21
21
  return [
22
22
  {
23
23
  relativePath: `${ios.frameworkName}.swift`,
24
- content: renderTemplate('ios', 'FrameworkInterface.swift', {}),
24
+ content: renderTemplate('ios', 'FrameworkInterface.swift', {
25
+ '{{BUNDLE_IDENTIFIER}}': ios.bundleIdentifier,
26
+ }),
25
27
  },
26
28
  {
27
29
  relativePath: 'Info.plist',
@@ -44,17 +46,15 @@ export function createIosFramework(
44
46
  const { ios } = config;
45
47
  const frameworkDir = path.join(iosDir, ios.frameworkName);
46
48
 
47
- // check if framework directory if it exists
48
- if (fs.existsSync(frameworkDir)) {
49
- Logger.logDebug(`Framework directory already exists: ${frameworkDir}`);
50
-
51
- return;
52
- }
53
-
54
- Logger.logDebug(`Creating iOS framework in: ${frameworkDir}`);
49
+ const frameworkDirExists = fs.existsSync(frameworkDir);
50
+ Logger.logDebug(
51
+ frameworkDirExists
52
+ ? `Updating iOS framework files in: ${frameworkDir}`
53
+ : `Creating iOS framework in: ${frameworkDir}`
54
+ );
55
55
 
56
56
  // create framework directory
57
- if (!fs.existsSync(frameworkDir)) {
57
+ if (!frameworkDirExists) {
58
58
  fs.mkdirSync(frameworkDir, { recursive: true });
59
59
 
60
60
  Logger.logDebug(`Created directory: ${frameworkDir}`);