xref: /expo/tools/src/versioning/android/libraries.ts (revision fe5cfb17)
1import fs from 'fs-extra';
2import path from 'path';
3
4import { getExpotoolsDir } from '../../Directories';
5
6export const JniLibNames = [
7  'libfb',
8  'libglog_init',
9  'glog',
10  'reactnativejni',
11  'reactnativejnifb',
12  'csslayout',
13  'yoga',
14  'fbgloginit',
15  'yogajni',
16  'privatedata',
17  'fabricjscjni',
18  'jscexecutor',
19  'libjscexecutor',
20  'jsinspector',
21  'libjsinspector',
22  'fabricjni',
23  'turbomodulejsijni',
24  'reactnativeblob',
25  'jsijniprofiler',
26  'hermes',
27  'hermes_executor',
28  'hermes_executor_common',
29  'hermes_inspector',
30  'reanimated',
31  'folly_futures',
32  'folly_runtime',
33  'react_codegen_rncore',
34  'react_nativemodule_core',
35  'reactnativeutilsjni',
36  'reactperfloggerjni',
37  'butter',
38  'cxxcomponents',
39  'jsi',
40  'logger',
41  'mapbufferjni',
42  'react_debug',
43  'react_newarchdefaults',
44  'react_render_animations',
45  'react_render_attributedstring',
46  'react_render_componentregistry',
47  'react_render_core',
48  'react_render_debug',
49  'react_render_graphics',
50  'react_render_imagemanager',
51  'react_render_leakchecker',
52  'react_render_mapbuffer',
53  'react_render_mounting',
54  'react_render_runtimescheduler',
55  'react_render_scheduler',
56  'react_render_telemetry',
57  'react_render_templateprocessor',
58  'react_render_textlayoutmanager',
59  'react_render_uimanager',
60  'react_utils',
61  'react_config',
62  'rrc_image',
63  'rrc_modal',
64  'rrc_progressbar',
65  'rrc_root',
66  'rrc_scrollview',
67  'rrc_slider',
68  'rrc_switch',
69  'rrc_text',
70  'rrc_textinput',
71  'rrc_unimplementedview',
72  'rrc_view',
73  'runtimeexecutor',
74];
75
76// this list is used in the shell scripts as well as directly by expotools
77// we read it in here to keep the source of truth in one place
78export const getJavaPackagesToRename = async () => {
79  const packagesToRename = await fs.readFile(
80    path.join(getExpotoolsDir(), 'src/versioning/android/android-packages-to-rename.txt'),
81    'utf8'
82  );
83  return packagesToRename.split('\n').filter((p: string) => !!p);
84};
85