react-native-bootsplash 7.0.0-beta.1 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +83 -12
- package/app.plugin.js +1 -1
- package/dist/commonjs/addon/index.js +31 -31
- package/dist/commonjs/addon/index.js.map +1 -1
- package/dist/commonjs/expo.js +325 -0
- package/dist/commonjs/expo.js.map +1 -0
- package/dist/commonjs/generate.js +34 -336
- package/dist/commonjs/generate.js.map +1 -1
- package/dist/module/addon/index.js +31 -31
- package/dist/module/addon/index.js.map +1 -1
- package/dist/module/expo.js +319 -0
- package/dist/module/expo.js.map +1 -0
- package/dist/module/generate.js +32 -342
- package/dist/module/generate.js.map +1 -1
- package/dist/typescript/addon/index.d.ts +23 -20
- package/dist/typescript/addon/index.d.ts.map +1 -1
- package/dist/typescript/expo.d.ts +6 -0
- package/dist/typescript/expo.d.ts.map +1 -0
- package/dist/typescript/generate.d.ts +50 -14
- package/dist/typescript/generate.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/expo.ts +382 -0
- package/src/generate.ts +62 -427
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import * as Expo from "@expo/config-plugins";
|
|
4
|
+
import { assignColorValue } from "@expo/config-plugins/build/android/Colors";
|
|
5
|
+
import { addImports } from "@expo/config-plugins/build/android/codeMod";
|
|
6
|
+
import { mergeContents } from "@expo/config-plugins/build/utils/generateCode";
|
|
7
|
+
import childProcess from "child_process";
|
|
8
|
+
import path from "path";
|
|
9
|
+
import semver from "semver";
|
|
10
|
+
import { dedent } from "ts-dedent";
|
|
11
|
+
import util from "util";
|
|
12
|
+
import { hfs, log, packageName, requireAddon, setIsExpo, transformProps, writeAndroidAssets, writeGenericAssets, writeIOSAssets, writeWebAssets } from "./generate";
|
|
13
|
+
const promisifiedExec = util.promisify(childProcess.exec);
|
|
14
|
+
const exec = cmd => promisifiedExec(cmd).then(({
|
|
15
|
+
stdout,
|
|
16
|
+
stderr
|
|
17
|
+
}) => stdout || stderr);
|
|
18
|
+
const withoutExpoSplashScreen = Expo.createRunOncePlugin(expoConfig => expoConfig, "expo-splash-screen", "skip");
|
|
19
|
+
const withAndroidAssets = (expoConfig, rawProps) => Expo.withDangerousMod(expoConfig, ["android", async config => {
|
|
20
|
+
const {
|
|
21
|
+
platformProjectRoot,
|
|
22
|
+
projectRoot
|
|
23
|
+
} = config.modRequest;
|
|
24
|
+
const props = await transformProps(projectRoot, rawProps);
|
|
25
|
+
const addon = requireAddon(props);
|
|
26
|
+
const androidOutputPath = path.resolve(platformProjectRoot, "app", "src", "main", "res");
|
|
27
|
+
await writeAndroidAssets({
|
|
28
|
+
androidOutputPath,
|
|
29
|
+
props
|
|
30
|
+
});
|
|
31
|
+
await addon?.writeAndroidAssets({
|
|
32
|
+
androidOutputPath,
|
|
33
|
+
props
|
|
34
|
+
});
|
|
35
|
+
return config;
|
|
36
|
+
}]);
|
|
37
|
+
const withAndroidManifest = expoConfig => Expo.withAndroidManifest(expoConfig, config => {
|
|
38
|
+
config.modResults.manifest.application?.forEach(application => {
|
|
39
|
+
if (application.$["android:name"] === ".MainApplication") {
|
|
40
|
+
const {
|
|
41
|
+
activity
|
|
42
|
+
} = application;
|
|
43
|
+
activity?.forEach(activity => {
|
|
44
|
+
if (activity.$["android:name"] === ".MainActivity") {
|
|
45
|
+
activity.$["android:theme"] = "@style/BootTheme";
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
return config;
|
|
51
|
+
});
|
|
52
|
+
const withMainActivity = expoConfig => Expo.withMainActivity(expoConfig, config => {
|
|
53
|
+
const {
|
|
54
|
+
modResults
|
|
55
|
+
} = config;
|
|
56
|
+
const withImports = addImports(modResults.contents.replace(/(\/\/ )?setTheme\(R\.style\.AppTheme\)/, "// setTheme(R.style.AppTheme)"), ["android.os.Bundle", "com.zoontek.rnbootsplash.RNBootSplash"], false);
|
|
57
|
+
|
|
58
|
+
// indented with 4 spaces
|
|
59
|
+
const withInit = mergeContents({
|
|
60
|
+
src: withImports,
|
|
61
|
+
comment: " //",
|
|
62
|
+
tag: "bootsplash-init",
|
|
63
|
+
offset: 0,
|
|
64
|
+
anchor: /super\.onCreate\((null|savedInstanceState)\)/,
|
|
65
|
+
newSrc: " RNBootSplash.init(this, R.style.BootTheme)"
|
|
66
|
+
});
|
|
67
|
+
return {
|
|
68
|
+
...config,
|
|
69
|
+
modResults: {
|
|
70
|
+
...modResults,
|
|
71
|
+
contents: withInit.contents
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
});
|
|
75
|
+
const withAndroidStyles = (expoConfig, rawProps) => Expo.withAndroidStyles(expoConfig, async config => {
|
|
76
|
+
const {
|
|
77
|
+
projectRoot
|
|
78
|
+
} = config.modRequest;
|
|
79
|
+
const {
|
|
80
|
+
android,
|
|
81
|
+
brand
|
|
82
|
+
} = await transformProps(projectRoot, rawProps);
|
|
83
|
+
const {
|
|
84
|
+
darkContentBarsStyle
|
|
85
|
+
} = android;
|
|
86
|
+
const {
|
|
87
|
+
modResults
|
|
88
|
+
} = config;
|
|
89
|
+
const {
|
|
90
|
+
resources
|
|
91
|
+
} = modResults;
|
|
92
|
+
const {
|
|
93
|
+
style = []
|
|
94
|
+
} = resources;
|
|
95
|
+
const item = [{
|
|
96
|
+
$: {
|
|
97
|
+
name: "postBootSplashTheme"
|
|
98
|
+
},
|
|
99
|
+
_: "@style/AppTheme"
|
|
100
|
+
}, {
|
|
101
|
+
$: {
|
|
102
|
+
name: "bootSplashBackground"
|
|
103
|
+
},
|
|
104
|
+
_: "@color/bootsplash_background"
|
|
105
|
+
}, {
|
|
106
|
+
$: {
|
|
107
|
+
name: "bootSplashLogo"
|
|
108
|
+
},
|
|
109
|
+
_: "@drawable/bootsplash_logo"
|
|
110
|
+
}];
|
|
111
|
+
if (brand != null) {
|
|
112
|
+
item.push({
|
|
113
|
+
$: {
|
|
114
|
+
name: "bootSplashBrand"
|
|
115
|
+
},
|
|
116
|
+
_: "@drawable/bootsplash_brand"
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
if (darkContentBarsStyle != null) {
|
|
120
|
+
item.push({
|
|
121
|
+
$: {
|
|
122
|
+
name: "darkContentBarsStyle"
|
|
123
|
+
},
|
|
124
|
+
_: String(darkContentBarsStyle)
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
const withBootTheme = [...style.filter(({
|
|
128
|
+
$
|
|
129
|
+
}) => $.name !== "BootTheme"), {
|
|
130
|
+
$: {
|
|
131
|
+
name: "BootTheme",
|
|
132
|
+
parent: "Theme.BootSplash"
|
|
133
|
+
},
|
|
134
|
+
item
|
|
135
|
+
}];
|
|
136
|
+
return {
|
|
137
|
+
...config,
|
|
138
|
+
modResults: {
|
|
139
|
+
...modResults,
|
|
140
|
+
resources: {
|
|
141
|
+
...resources,
|
|
142
|
+
style: withBootTheme
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
});
|
|
147
|
+
const withAndroidColors = (expoConfig, rawProps) => Expo.withAndroidColors(expoConfig, async config => {
|
|
148
|
+
const {
|
|
149
|
+
projectRoot
|
|
150
|
+
} = config.modRequest;
|
|
151
|
+
const {
|
|
152
|
+
background
|
|
153
|
+
} = await transformProps(projectRoot, rawProps);
|
|
154
|
+
config.modResults = assignColorValue(config.modResults, {
|
|
155
|
+
name: "bootsplash_background",
|
|
156
|
+
value: background.hex
|
|
157
|
+
});
|
|
158
|
+
return config;
|
|
159
|
+
});
|
|
160
|
+
const withAndroidColorsNight = (expoConfig, rawProps) => Expo.withAndroidColorsNight(expoConfig, async config => {
|
|
161
|
+
const {
|
|
162
|
+
projectRoot
|
|
163
|
+
} = config.modRequest;
|
|
164
|
+
const props = await transformProps(projectRoot, rawProps);
|
|
165
|
+
const addon = requireAddon(props);
|
|
166
|
+
return addon != null ? await addon.withAndroidColorsNight({
|
|
167
|
+
config,
|
|
168
|
+
props
|
|
169
|
+
}) : config;
|
|
170
|
+
});
|
|
171
|
+
const withIOSAssets = (expoConfig, rawProps) => Expo.withDangerousMod(expoConfig, ["ios", async config => {
|
|
172
|
+
const {
|
|
173
|
+
platformProjectRoot,
|
|
174
|
+
projectName = "",
|
|
175
|
+
projectRoot
|
|
176
|
+
} = config.modRequest;
|
|
177
|
+
const props = await transformProps(projectRoot, rawProps);
|
|
178
|
+
const addon = requireAddon(props);
|
|
179
|
+
const iosOutputPath = path.resolve(platformProjectRoot, projectName);
|
|
180
|
+
await writeIOSAssets({
|
|
181
|
+
iosOutputPath,
|
|
182
|
+
props
|
|
183
|
+
});
|
|
184
|
+
await addon?.writeIOSAssets({
|
|
185
|
+
iosOutputPath,
|
|
186
|
+
props
|
|
187
|
+
});
|
|
188
|
+
return config;
|
|
189
|
+
}]);
|
|
190
|
+
const withAppDelegate = expoConfig => Expo.withAppDelegate(expoConfig, config => {
|
|
191
|
+
const {
|
|
192
|
+
modResults
|
|
193
|
+
} = config;
|
|
194
|
+
const {
|
|
195
|
+
language
|
|
196
|
+
} = modResults;
|
|
197
|
+
if (language !== "swift") {
|
|
198
|
+
throw new Error(`Cannot modify the project AppDelegate as it's not in a supported language: ${language}`);
|
|
199
|
+
}
|
|
200
|
+
const withHeader = mergeContents({
|
|
201
|
+
src: modResults.contents,
|
|
202
|
+
comment: "//",
|
|
203
|
+
tag: "bootsplash-header",
|
|
204
|
+
offset: 1,
|
|
205
|
+
anchor: /import Expo/,
|
|
206
|
+
newSrc: "import RNBootSplash"
|
|
207
|
+
});
|
|
208
|
+
const withRootView = mergeContents({
|
|
209
|
+
src: withHeader.contents,
|
|
210
|
+
comment: "//",
|
|
211
|
+
tag: "bootsplash-init",
|
|
212
|
+
offset: 1,
|
|
213
|
+
anchor: /class ReactNativeDelegate: ExpoReactNativeFactoryDelegate {/,
|
|
214
|
+
newSrc: dedent`
|
|
215
|
+
public override func customize(_ rootView: UIView) {
|
|
216
|
+
super.customize(rootView)
|
|
217
|
+
RNBootSplash.initWithStoryboard("BootSplash", rootView: rootView)
|
|
218
|
+
}
|
|
219
|
+
`
|
|
220
|
+
});
|
|
221
|
+
return {
|
|
222
|
+
...config,
|
|
223
|
+
modResults: {
|
|
224
|
+
...modResults,
|
|
225
|
+
contents: withRootView.contents
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
});
|
|
229
|
+
const withInfoPlist = expoConfig => Expo.withInfoPlist(expoConfig, config => {
|
|
230
|
+
config.modResults["UILaunchStoryboardName"] = "BootSplash";
|
|
231
|
+
return config;
|
|
232
|
+
});
|
|
233
|
+
const withXcodeProject = expoConfig => Expo.withXcodeProject(expoConfig, config => {
|
|
234
|
+
const {
|
|
235
|
+
projectName = ""
|
|
236
|
+
} = config.modRequest;
|
|
237
|
+
Expo.IOSConfig.XcodeUtils.addResourceFileToGroup({
|
|
238
|
+
filepath: path.join(projectName, "BootSplash.storyboard"),
|
|
239
|
+
groupName: projectName,
|
|
240
|
+
project: config.modResults,
|
|
241
|
+
isBuildFile: true
|
|
242
|
+
});
|
|
243
|
+
Expo.IOSConfig.XcodeUtils.addResourceFileToGroup({
|
|
244
|
+
filepath: path.join(projectName, "Colors.xcassets"),
|
|
245
|
+
groupName: projectName,
|
|
246
|
+
project: config.modResults,
|
|
247
|
+
isBuildFile: true
|
|
248
|
+
});
|
|
249
|
+
return config;
|
|
250
|
+
});
|
|
251
|
+
const withWebAssets = (expoConfig, rawProps) => Expo.withDangerousMod(expoConfig, [expoConfig.platforms?.includes("ios") ? "ios" : "android", async config => {
|
|
252
|
+
const {
|
|
253
|
+
projectRoot
|
|
254
|
+
} = config.modRequest;
|
|
255
|
+
const props = await transformProps(projectRoot, rawProps);
|
|
256
|
+
const addon = requireAddon(props);
|
|
257
|
+
const fileName = "public/index.html";
|
|
258
|
+
const htmlTemplatePath = path.resolve(projectRoot, fileName);
|
|
259
|
+
if (!hfs.exists(htmlTemplatePath)) {
|
|
260
|
+
await exec(`npx expo customize ${fileName}`);
|
|
261
|
+
}
|
|
262
|
+
await writeWebAssets({
|
|
263
|
+
htmlTemplatePath,
|
|
264
|
+
props
|
|
265
|
+
});
|
|
266
|
+
await addon?.writeWebAssets({
|
|
267
|
+
htmlTemplatePath,
|
|
268
|
+
props
|
|
269
|
+
});
|
|
270
|
+
return config;
|
|
271
|
+
}]);
|
|
272
|
+
const withGenericAssets = (expoConfig, rawProps) => Expo.withDangerousMod(expoConfig, [expoConfig.platforms?.includes("ios") ? "ios" : "android", async config => {
|
|
273
|
+
const {
|
|
274
|
+
projectRoot
|
|
275
|
+
} = config.modRequest;
|
|
276
|
+
const props = await transformProps(projectRoot, rawProps);
|
|
277
|
+
const addon = requireAddon(props);
|
|
278
|
+
await writeGenericAssets({
|
|
279
|
+
props
|
|
280
|
+
});
|
|
281
|
+
await addon?.writeGenericAssets({
|
|
282
|
+
props
|
|
283
|
+
});
|
|
284
|
+
return config;
|
|
285
|
+
}]);
|
|
286
|
+
export const withBootSplash = Expo.createRunOncePlugin((expoConfig, baseProps) => {
|
|
287
|
+
const {
|
|
288
|
+
platforms = [],
|
|
289
|
+
sdkVersion = "0.1.0"
|
|
290
|
+
} = expoConfig;
|
|
291
|
+
setIsExpo(true);
|
|
292
|
+
if (semver.lt(sdkVersion, "54.0.0")) {
|
|
293
|
+
log.error("Requires Expo 54.0.0 (or higher)");
|
|
294
|
+
process.exit(1);
|
|
295
|
+
}
|
|
296
|
+
if (!baseProps?.logo) {
|
|
297
|
+
log.error("Missing required parameter 'logo'");
|
|
298
|
+
process.exit(1);
|
|
299
|
+
}
|
|
300
|
+
const rawProps = {
|
|
301
|
+
assetsOutput: "assets/bootsplash",
|
|
302
|
+
background: "#fff",
|
|
303
|
+
brandWidth: 80,
|
|
304
|
+
logoWidth: 100,
|
|
305
|
+
...baseProps
|
|
306
|
+
};
|
|
307
|
+
const plugins = [withoutExpoSplashScreen, withGenericAssets];
|
|
308
|
+
if (platforms.includes("android")) {
|
|
309
|
+
plugins.push(withAndroidAssets, withAndroidManifest, withMainActivity, withAndroidStyles, withAndroidColors, withAndroidColorsNight);
|
|
310
|
+
}
|
|
311
|
+
if (platforms.includes("ios")) {
|
|
312
|
+
plugins.push(withIOSAssets, withAppDelegate, withInfoPlist, withXcodeProject);
|
|
313
|
+
}
|
|
314
|
+
if (platforms.includes("web")) {
|
|
315
|
+
plugins.push(withWebAssets);
|
|
316
|
+
}
|
|
317
|
+
return Expo.withPlugins(expoConfig, plugins.map(plugin => [plugin, rawProps]));
|
|
318
|
+
}, packageName);
|
|
319
|
+
//# sourceMappingURL=expo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Expo","assignColorValue","addImports","mergeContents","childProcess","path","semver","dedent","util","hfs","log","packageName","requireAddon","setIsExpo","transformProps","writeAndroidAssets","writeGenericAssets","writeIOSAssets","writeWebAssets","promisifiedExec","promisify","exec","cmd","then","stdout","stderr","withoutExpoSplashScreen","createRunOncePlugin","expoConfig","withAndroidAssets","rawProps","withDangerousMod","config","platformProjectRoot","projectRoot","modRequest","props","addon","androidOutputPath","resolve","withAndroidManifest","modResults","manifest","application","forEach","$","activity","withMainActivity","withImports","contents","replace","withInit","src","comment","tag","offset","anchor","newSrc","withAndroidStyles","android","brand","darkContentBarsStyle","resources","style","item","name","_","push","String","withBootTheme","filter","parent","withAndroidColors","background","value","hex","withAndroidColorsNight","withIOSAssets","projectName","iosOutputPath","withAppDelegate","language","Error","withHeader","withRootView","withInfoPlist","withXcodeProject","IOSConfig","XcodeUtils","addResourceFileToGroup","filepath","join","groupName","project","isBuildFile","withWebAssets","platforms","includes","fileName","htmlTemplatePath","exists","withGenericAssets","withBootSplash","baseProps","sdkVersion","lt","error","process","exit","logo","assetsOutput","brandWidth","logoWidth","plugins","withPlugins","map","plugin"],"sourceRoot":"../../src","sources":["expo.ts"],"mappings":"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","ignoreList":[]}
|