1import { createRunOncePlugin } from '@expo/config-plugins';
2import { ExpoConfig } from 'expo/config';
3// @ts-expect-error missing types
4import withDevLauncher from 'expo-dev-launcher/app.plugin';
5// @ts-expect-error missing types
6import withDevMenu from 'expo-dev-menu/app.plugin';
7
8import { withGeneratedAndroidScheme } from './withGeneratedAndroidScheme';
9import { withGeneratedIosScheme } from './withGeneratedIosScheme';
10
11const pkg = require('expo-dev-client/package.json');
12
13function withDevClient(config: ExpoConfig) {
14  config = withDevMenu(config);
15  config = withDevLauncher(config);
16  config = withGeneratedAndroidScheme(config);
17  config = withGeneratedIosScheme(config);
18  return config;
19}
20
21export default createRunOncePlugin(withDevClient, pkg.name, pkg.version);
22