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, { iCloudContainerEnvironment } = {}) => {
6    return (0, config_plugins_1.withEntitlementsPlist)(config, (config) => {
7        config.modResults = setICloudEntitlements(config, { iCloudContainerEnvironment }, config.modResults);
8        return config;
9    });
10};
11exports.withDocumentPickerIOS = withDocumentPickerIOS;
12function setICloudEntitlements(config, { iCloudContainerEnvironment }, { 'com.apple.developer.icloud-container-environment': _env, ...entitlements }) {
13    var _a;
14    if ((_a = config.ios) === null || _a === void 0 ? void 0 : _a.usesIcloudStorage) {
15        // Used for AdHoc iOS builds: https://github.com/expo/eas-cli/issues/693
16        // https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_icloud-container-environment
17        entitlements['com.apple.developer.icloud-container-environment'] = iCloudContainerEnvironment;
18        entitlements['com.apple.developer.icloud-container-identifiers'] = [
19            `iCloud.${config.ios.bundleIdentifier}`,
20        ];
21        entitlements['com.apple.developer.ubiquity-container-identifiers'] = [
22            `iCloud.${config.ios.bundleIdentifier}`,
23        ];
24        entitlements['com.apple.developer.ubiquity-kvstore-identifier'] = `$(TeamIdentifierPrefix)${config.ios.bundleIdentifier}`;
25        entitlements['com.apple.developer.icloud-services'] = ['CloudDocuments'];
26    }
27    return entitlements;
28}
29exports.setICloudEntitlements = setICloudEntitlements;
30