This repository has been archived on 2022-03-12. You can view files and clone it, but cannot push or open issues or pull requests.
2021-04-02 02:24:13 +03:00

1 line
9.5 KiB
Plaintext

{"version":3,"file":"Facebook.js","sourceRoot":"","sources":["../../src/ios/Facebook.ts"],"names":[],"mappings":"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","sourcesContent":["import { ExpoConfig } from '@expo/config-types';\n\nimport { createInfoPlistPlugin } from '../plugins/ios-plugins';\nimport { InfoPlist } from './IosConfig.types';\nimport { appendScheme } from './Scheme';\n\ntype ExpoConfigFacebook = Pick<\n ExpoConfig,\n | 'facebookScheme'\n | 'facebookAdvertiserIDCollectionEnabled'\n | 'facebookAppId'\n | 'facebookAutoInitEnabled'\n | 'facebookAutoLogAppEventsEnabled'\n | 'facebookDisplayName'\n>;\n\nconst fbSchemes = ['fbapi', 'fb-messenger-api', 'fbauth2', 'fbshareextension'];\n\nexport const withFacebook = createInfoPlistPlugin(setFacebookConfig, 'withFacebook');\n\n/**\n * Getters\n * TODO: these getters are the same between ios/android, we could reuse them\n */\n\nexport function getFacebookScheme(config: ExpoConfigFacebook) {\n return config.facebookScheme ?? null;\n}\n\nexport function getFacebookAppId(config: Pick<ExpoConfigFacebook, 'facebookAppId'>) {\n return config.facebookAppId ?? null;\n}\n\nexport function getFacebookDisplayName(config: ExpoConfigFacebook) {\n return config.facebookDisplayName ?? null;\n}\nexport function getFacebookAutoInitEnabled(config: ExpoConfigFacebook) {\n return config.facebookAutoInitEnabled ?? null;\n}\n\nexport function getFacebookAutoLogAppEvents(config: ExpoConfigFacebook) {\n return config.facebookAutoLogAppEventsEnabled ?? null;\n}\n\nexport function getFacebookAdvertiserIDCollection(config: ExpoConfigFacebook) {\n return config.facebookAdvertiserIDCollectionEnabled ?? null;\n}\n\n/**\n * Setters\n */\n\nexport function setFacebookConfig(config: ExpoConfigFacebook, infoPlist: InfoPlist) {\n infoPlist = setFacebookAppId(config, infoPlist);\n infoPlist = setFacebookApplicationQuerySchemes(config, infoPlist);\n infoPlist = setFacebookDisplayName(config, infoPlist);\n infoPlist = setFacebookAutoInitEnabled(config, infoPlist);\n infoPlist = setFacebookAutoLogAppEventsEnabled(config, infoPlist);\n infoPlist = setFacebookAdvertiserIDCollectionEnabled(config, infoPlist);\n infoPlist = setFacebookScheme(config, infoPlist);\n return infoPlist;\n}\n\nexport function setFacebookScheme(config: ExpoConfigFacebook, infoPlist: InfoPlist) {\n const facebookScheme = getFacebookScheme(config);\n return appendScheme(facebookScheme, infoPlist);\n}\n\nexport function setFacebookAutoInitEnabled(\n config: ExpoConfigFacebook,\n { FacebookAutoInitEnabled, ...infoPlist }: InfoPlist\n) {\n const facebookAutoInitEnabled = getFacebookAutoInitEnabled(config);\n\n if (facebookAutoInitEnabled === null) {\n return infoPlist;\n }\n\n return {\n ...infoPlist,\n FacebookAutoInitEnabled: facebookAutoInitEnabled,\n };\n}\n\nexport function setFacebookAutoLogAppEventsEnabled(\n config: ExpoConfigFacebook,\n { FacebookAutoLogAppEventsEnabled, ...infoPlist }: InfoPlist\n) {\n const facebookAutoLogAppEventsEnabled = getFacebookAutoLogAppEvents(config);\n\n if (facebookAutoLogAppEventsEnabled === null) {\n return infoPlist;\n }\n\n return {\n ...infoPlist,\n FacebookAutoLogAppEventsEnabled: facebookAutoLogAppEventsEnabled,\n };\n}\n\nexport function setFacebookAdvertiserIDCollectionEnabled(\n config: ExpoConfigFacebook,\n { FacebookAdvertiserIDCollectionEnabled, ...infoPlist }: InfoPlist\n) {\n const facebookAdvertiserIDCollectionEnabled = getFacebookAdvertiserIDCollection(config);\n\n if (facebookAdvertiserIDCollectionEnabled === null) {\n return infoPlist;\n }\n\n return {\n ...infoPlist,\n FacebookAdvertiserIDCollectionEnabled: facebookAdvertiserIDCollectionEnabled,\n };\n}\n\nexport function setFacebookAppId(\n config: Pick<ExpoConfigFacebook, 'facebookAppId'>,\n { FacebookAppID, ...infoPlist }: InfoPlist\n) {\n const facebookAppId = getFacebookAppId(config);\n if (facebookAppId) {\n return {\n ...infoPlist,\n FacebookAppID: facebookAppId,\n };\n }\n\n return infoPlist;\n}\n\nexport function setFacebookDisplayName(\n config: ExpoConfigFacebook,\n { FacebookDisplayName, ...infoPlist }: InfoPlist\n) {\n const facebookDisplayName = getFacebookDisplayName(config);\n\n if (facebookDisplayName) {\n return {\n ...infoPlist,\n FacebookDisplayName: facebookDisplayName,\n };\n }\n\n return infoPlist;\n}\n\nexport function setFacebookApplicationQuerySchemes(\n config: Pick<ExpoConfigFacebook, 'facebookAppId'>,\n infoPlist: InfoPlist\n): InfoPlist {\n const facebookAppId = getFacebookAppId(config);\n\n const existingSchemes = infoPlist.LSApplicationQueriesSchemes || [];\n\n if (facebookAppId && existingSchemes.includes('fbapi')) {\n // already inlcuded, no need to add again\n return infoPlist;\n } else if (!facebookAppId && !existingSchemes.length) {\n // already removed, no need to strip again\n const { LSApplicationQueriesSchemes, ...restInfoPlist } = infoPlist;\n if (LSApplicationQueriesSchemes?.length) {\n return infoPlist;\n } else {\n // Return without the empty LSApplicationQueriesSchemes array.\n return restInfoPlist;\n }\n }\n\n // Remove all schemes\n for (const scheme of fbSchemes) {\n const index = existingSchemes.findIndex(s => s === scheme);\n if (index > -1) {\n existingSchemes.splice(index, 1);\n }\n }\n\n if (!facebookAppId) {\n // Run again to ensure the LSApplicationQueriesSchemes array is stripped if needed.\n infoPlist.LSApplicationQueriesSchemes = existingSchemes;\n if (!infoPlist.LSApplicationQueriesSchemes.length) {\n delete infoPlist.LSApplicationQueriesSchemes;\n }\n return infoPlist;\n }\n\n // TODO: it's actually necessary to add more query schemes (specific to the\n // app) to support all of the features that the Facebook SDK provides, should\n // we sync those here too?\n const updatedSchemes = [...existingSchemes, ...fbSchemes];\n\n return {\n ...infoPlist,\n LSApplicationQueriesSchemes: updatedSchemes,\n };\n}\n"]}