1*435bbba8SBrent Vatneimport { ConfigPlugin, createRunOncePlugin, withInfoPlist } from 'expo/config-plugins';
26ded8414SEvan Bacon
36ded8414SEvan Baconconst pkg = require('expo-task-manager/package.json');
46ded8414SEvan Bacon
535f78160SBartosz Kaszubowskiconst withTaskManager: ConfigPlugin = (config) => {
635f78160SBartosz Kaszubowski  config = withInfoPlist(config, (config) => {
76f8f4901SEvan Bacon    if (!Array.isArray(config.modResults.UIBackgroundModes)) {
86f8f4901SEvan Bacon      config.modResults.UIBackgroundModes = [];
96f8f4901SEvan Bacon    }
106f8f4901SEvan Bacon    if (!config.modResults.UIBackgroundModes.includes('fetch')) {
116f8f4901SEvan Bacon      config.modResults.UIBackgroundModes.push('fetch');
126f8f4901SEvan Bacon    }
136f8f4901SEvan Bacon    return config;
146f8f4901SEvan Bacon  });
156ded8414SEvan Bacon
166ded8414SEvan Bacon  return config;
176ded8414SEvan Bacon};
186ded8414SEvan Bacon
196ded8414SEvan Baconexport default createRunOncePlugin(withTaskManager, pkg.name, pkg.version);
20