1"use strict"; 2Object.defineProperty(exports, "__esModule", { value: true }); 3exports.setICloudEntitlements = exports.withDocumentPickerIOS = void 0; 4const config_plugins_1 = require("@expo/config-plugins"); 5const withDocumentPickerIOS = (config, { appleTeamId, iCloudContainerEnvironment }) => { 6 return (0, config_plugins_1.withEntitlementsPlist)(config, (config) => { 7 if (appleTeamId) { 8 config.modResults = setICloudEntitlements(config, { appleTeamId, iCloudContainerEnvironment }, config.modResults); 9 } 10 else { 11 config_plugins_1.WarningAggregator.addWarningIOS('expo-document-picker', 'Cannot configure iOS entitlements because neither the appleTeamId property, nor the environment variable EXPO_APPLE_TEAM_ID were defined.'); 12 } 13 return config; 14 }); 15}; 16exports.withDocumentPickerIOS = withDocumentPickerIOS; 17function setICloudEntitlements(config, { appleTeamId, iCloudContainerEnvironment }, { 'com.apple.developer.icloud-container-environment': _env, ...entitlements }) { 18 var _a; 19 if ((_a = config.ios) === null || _a === void 0 ? void 0 : _a.usesIcloudStorage) { 20 // Used for AdHoc iOS builds: https://github.com/expo/eas-cli/issues/693 21 // https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_icloud-container-environment 22 entitlements['com.apple.developer.icloud-container-environment'] = iCloudContainerEnvironment; 23 entitlements['com.apple.developer.icloud-container-identifiers'] = [ 24 'iCloud.' + config.ios.bundleIdentifier, 25 ]; 26 entitlements['com.apple.developer.ubiquity-container-identifiers'] = [ 27 'iCloud.' + config.ios.bundleIdentifier, 28 ]; 29 entitlements['com.apple.developer.ubiquity-kvstore-identifier'] = 30 appleTeamId + '.' + config.ios.bundleIdentifier; 31 entitlements['com.apple.developer.icloud-services'] = ['CloudDocuments']; 32 } 33 return entitlements; 34} 35exports.setICloudEntitlements = setICloudEntitlements; 36