-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.config.ts
127 lines (121 loc) · 3.13 KB
/
app.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
import 'dotenv/config';
import type {ConfigContext, ExpoConfig} from '@expo/config';
import withAndroidLocalizedName from '@mmomtchev/expo-android-localized-app-name';
import dotenv from 'dotenv';
import {expand} from 'dotenv-expand';
import path from 'path';
import {version} from './package.json';
// https://github.com/expo/expo/issues/23727#issuecomment-1651609858
if (process.env.STAGE) {
expand(
dotenv.config({
path: path.join(
__dirname,
['./.env', process.env.STAGE].filter(Boolean).join('.'),
),
override: true,
}),
);
}
const DEEP_LINK_URL = '[firebaseAppId].web.app';
const buildNumber = 1;
export default ({config}: ConfigContext): ExpoConfig => ({
...config,
name: 'Expo Briefing',
scheme: 'expo-briefing',
slug: 'expo-briefing',
privacy: 'public',
platforms: ['ios', 'android', 'web'],
version,
orientation: 'default',
icon: './assets/icon.png',
plugins: [
// @ts-ignore
withAndroidLocalizedName,
'expo-router',
'expo-tracking-transparency',
'expo-localization',
[
'expo-font',
{
fonts: [
'node_modules/dooboo-ui/uis/Icon/doobooui.ttf',
'node_modules/dooboo-ui/uis/Icon/Pretendard-Bold.otf',
'node_modules/dooboo-ui/uis/Icon/Pretendard-Regular.otf',
'node_modules/dooboo-ui/uis/Icon/Pretendard-Thin.otf',
],
},
],
[
'expo-build-properties',
{
// https://github.com/software-mansion/react-native-screens/issues/2219
ios: {newArchEnabled: true},
android: {newArchEnabled: true},
},
],
],
experiments: {
typedRoutes: true,
},
splash: {
image: './assets/splash.png',
resizeMode: 'contain',
backgroundColor: '#1B1B1B',
},
extra: {
ROOT_URL: process.env.ROOT_URL,
expoProjectId: process.env.expoProjectId,
firebaseWebApiKey: process.env.firebaseWebApiKey,
// eas: {projectId: ''},
},
updates: {
fallbackToCacheTimeout: 0,
// requestHeaders: {'expo-channel-name': 'production'},
// url: '',
},
assetBundlePatterns: ['**/*'],
userInterfaceStyle: 'automatic',
locales: {
ko: './assets/langs/ios/ko.json',
},
ios: {
buildNumber: buildNumber.toString(),
bundleIdentifier: 'io.expobriefing',
associatedDomains: [`applinks:${DEEP_LINK_URL}`],
supportsTablet: true,
entitlements: {
'com.apple.developer.applesignin': ['Default'],
},
infoPlist: {
CFBundleAllowMixedLocalizations: true,
},
},
android: {
userInterfaceStyle: 'automatic',
permissions: [
'RECEIVE_BOOT_COMPLETED',
'CAMERA',
'CAMERA_ROLL',
'READ_EXTERNAL_STORAGE',
'WRITE_EXTERNAL_STORAGE',
'NOTIFICATIONS',
'USER_FACING_NOTIFICATIONS',
],
package: 'io.expobriefing',
intentFilters: [
{
action: 'VIEW',
autoVerify: true,
data: {
scheme: 'https',
host: DEEP_LINK_URL,
pathPrefix: '/',
},
category: ['BROWSABLE', 'DEFAULT'],
},
],
},
description: 'Starter project from dooboo-cli.',
web: {bundler: 'metro', favicon: './assets/favicon.png'},
});