react-native-bootsplash 5.2.2 → 5.4.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.
@@ -1,5 +1,9 @@
1
+ import murmurhash from "@emotion/hash";
2
+ import { IOSConfig } from "@expo/config-plugins";
3
+ import plist from "@expo/plist";
4
+ import { findProjectRoot } from "@react-native-community/cli-tools";
1
5
  import detectIndent from "detect-indent";
2
- import fs from "fs-extra";
6
+ import fs from "fs";
3
7
  import { parse as parseHtml } from "node-html-parser";
4
8
  import path from "path";
5
9
  import pc from "picocolors";
@@ -85,6 +89,41 @@ const getStoryboard = ({
85
89
  </document>
86
90
  `;
87
91
  };
92
+ export const addFileToXcodeProject = filePath => {
93
+ const projectRoot = findProjectRoot(workingPath);
94
+ const pbxprojectPath = IOSConfig.Paths.getPBXProjectPath(projectRoot);
95
+ const project = IOSConfig.XcodeUtils.getPbxproj(projectRoot);
96
+ const xcodeProjectPath = IOSConfig.Paths.getXcodeProjectPath(projectRoot);
97
+ IOSConfig.XcodeUtils.addResourceFileToGroup({
98
+ filepath: filePath,
99
+ groupName: path.parse(xcodeProjectPath).name,
100
+ project
101
+ });
102
+ hfs.write(pbxprojectPath, project.writeSync());
103
+ logWrite(pbxprojectPath);
104
+ };
105
+
106
+ // Freely inspired by https://github.com/humanwhocodes/humanfs
107
+ export const hfs = {
108
+ buffer: path => fs.readFileSync(path),
109
+ exists: path => fs.existsSync(path),
110
+ json: path => JSON.parse(fs.readFileSync(path, "utf-8")),
111
+ readDir: path => fs.readdirSync(path, "utf-8"),
112
+ realPath: path => fs.realpathSync(path, "utf-8"),
113
+ rm: path => fs.rmSync(path, {
114
+ force: true
115
+ }),
116
+ text: path => fs.readFileSync(path, "utf-8"),
117
+ ensureDir: dir => {
118
+ fs.mkdirSync(dir, {
119
+ recursive: true
120
+ });
121
+ },
122
+ write: (file, data) => {
123
+ const trimmed = data.trim();
124
+ fs.writeFileSync(file, trimmed === "" ? trimmed : trimmed + "\n", "utf-8");
125
+ }
126
+ };
88
127
  export const log = {
89
128
  error: text => console.log(pc.red(`❌ ${text}`)),
90
129
  text: text => console.log(text),
@@ -93,11 +132,11 @@ export const log = {
93
132
  };
94
133
  export const logWrite = (filePath, dimensions) => console.log(` ${path.relative(workingPath, filePath)}` + (dimensions != null ? ` (${dimensions.width}x${dimensions.height})` : ""));
95
134
  export const writeJson = (file, json) => {
96
- fs.writeFileSync(file, JSON.stringify(json, null, 2) + "\n", "utf-8");
135
+ hfs.write(file, JSON.stringify(json, null, 2));
97
136
  logWrite(file);
98
137
  };
99
138
  export const readXml = file => {
100
- const xml = fs.readFileSync(file, "utf-8");
139
+ const xml = hfs.text(file);
101
140
  const {
102
141
  indent
103
142
  } = detectIndent(xml);
@@ -118,11 +157,11 @@ export const writeXml = (file, xml, options) => {
118
157
  whiteSpaceAtEndOfSelfclosingTag: true,
119
158
  ...options
120
159
  });
121
- fs.writeFileSync(file, formatted + "\n", "utf-8");
160
+ hfs.write(file, formatted);
122
161
  logWrite(file);
123
162
  };
124
163
  export const readHtml = file => {
125
- const html = fs.readFileSync(file, "utf-8");
164
+ const html = hfs.text(file);
126
165
  const {
127
166
  type,
128
167
  amount
@@ -144,9 +183,23 @@ export const writeHtml = async (file, html, options) => {
144
183
  useTabs: false,
145
184
  ...options
146
185
  });
147
- fs.writeFileSync(file, formatted, "utf-8");
186
+ hfs.write(file, formatted);
148
187
  logWrite(file);
149
188
  };
189
+ export const cleanIOSAssets = (dir, prefix) => {
190
+ hfs.readDir(dir).filter(file => file.startsWith(prefix) && file.endsWith(".png")).map(file => path.join(dir, file)).forEach(file => hfs.rm(file));
191
+ };
192
+ export const getIOSAssetFileName = async ({
193
+ name,
194
+ image,
195
+ width
196
+ }) => {
197
+ const buffer = await image.clone().resize(width).png({
198
+ quality: 100
199
+ }).toBuffer();
200
+ const hash = murmurhash(buffer.toString("base64"));
201
+ return `${name}-${hash}`;
202
+ };
150
203
  const ensureSupportedFormat = async (name, image) => {
151
204
  if (image == null) {
152
205
  return;
@@ -167,7 +220,7 @@ const getAndroidResPath = (android, {
167
220
  logoWidth
168
221
  }) => {
169
222
  const androidResPath = path.resolve(android.sourceDir, android.appName, "src", flavor, "res");
170
- if (!fs.existsSync(androidResPath)) {
223
+ if (!hfs.exists(androidResPath)) {
171
224
  log.warn(`No ${path.relative(workingPath, androidResPath)} directory found. Skipping Android assets generation…`);
172
225
  } else if (logoWidth > 288 || logoHeight > 288) {
173
226
  log.warn("Logo size exceeding 288x288dp will be cropped by Android. Skipping Android assets generation…");
@@ -186,7 +239,7 @@ const getIOSProjectPath = ios => {
186
239
  return;
187
240
  }
188
241
  const iosProjectPath = path.resolve(ios.sourceDir, ios.xcodeProject.name).replace(/\.(xcodeproj|xcworkspace)$/, "");
189
- if (!fs.existsSync(iosProjectPath)) {
242
+ if (!hfs.exists(iosProjectPath)) {
190
243
  log.warn(`No ${path.relative(workingPath, iosProjectPath)} directory found. Skipping iOS assets generation…`);
191
244
  } else {
192
245
  return iosProjectPath;
@@ -194,7 +247,7 @@ const getIOSProjectPath = ios => {
194
247
  };
195
248
  const getHtmlTemplatePath = html => {
196
249
  const htmlTemplatePath = path.resolve(workingPath, html);
197
- if (!fs.existsSync(htmlTemplatePath)) {
250
+ if (!hfs.exists(htmlTemplatePath)) {
198
251
  log.warn(`No ${path.relative(workingPath, htmlTemplatePath)} file found. Skipping HTML + CSS generation…`);
199
252
  } else {
200
253
  return htmlTemplatePath;
@@ -202,18 +255,14 @@ const getHtmlTemplatePath = html => {
202
255
  };
203
256
  const requireAddon = () => {
204
257
  try {
205
- // eslint-disable-next-line
206
- return require("./addon");
258
+ return require("./addon"); // eslint-disable-line
207
259
  } catch {
208
260
  return;
209
261
  }
210
262
  };
211
- export const generate = async ([argsLogo], {
212
- project: {
213
- android,
214
- ios
215
- }
216
- }, {
263
+ export const generate = async ({
264
+ android,
265
+ ios,
217
266
  platforms,
218
267
  html,
219
268
  flavor,
@@ -226,11 +275,7 @@ export const generate = async ([argsLogo], {
226
275
  log.error("Requires Node 18 (or higher)");
227
276
  process.exit(1);
228
277
  }
229
- if (argsLogo == null) {
230
- log.error("Missing required argument 'logo'");
231
- process.exit(1);
232
- }
233
- const logoPath = path.resolve(workingPath, argsLogo);
278
+ const logoPath = path.resolve(workingPath, args.logo);
234
279
  const darkLogoPath = args.darkLogo != null ? path.resolve(workingPath, args.darkLogo) : undefined;
235
280
  const brandPath = args.brand != null ? path.resolve(workingPath, args.brand) : undefined;
236
281
  const darkBrandPath = args.darkBrand != null ? path.resolve(workingPath, args.darkBrand) : undefined;
@@ -284,10 +329,10 @@ export const generate = async ([argsLogo], {
284
329
  if (androidResPath != null) {
285
330
  log.title("🤖", "Android");
286
331
  const valuesPath = path.resolve(androidResPath, "values");
287
- fs.ensureDirSync(valuesPath);
332
+ hfs.ensureDir(valuesPath);
288
333
  const colorsXmlPath = path.resolve(valuesPath, "colors.xml");
289
334
  const colorsXmlEntry = `<color name="bootsplash_background">${background.hex}</color>`;
290
- if (fs.existsSync(colorsXmlPath)) {
335
+ if (hfs.exists(colorsXmlPath)) {
291
336
  const {
292
337
  root,
293
338
  formatOptions
@@ -323,7 +368,7 @@ export const generate = async ([argsLogo], {
323
368
  suffix
324
369
  }) => {
325
370
  const drawableDirPath = path.resolve(androidResPath, `drawable-${suffix}`);
326
- fs.ensureDirSync(drawableDirPath);
371
+ hfs.ensureDir(drawableDirPath);
327
372
 
328
373
  // https://developer.android.com/develop/ui/views/launch/splash-screen#dimensions
329
374
  const canvasSize = 288 * ratio;
@@ -365,20 +410,39 @@ export const generate = async ([argsLogo], {
365
410
  }), {
366
411
  whiteSpaceAtEndOfSelfclosingTag: false
367
412
  });
413
+ addFileToXcodeProject(storyboardPath);
414
+ const infoPlistPath = path.join(iosProjectPath, "Info.plist");
415
+ const infoPlist = plist.parse(hfs.text(infoPlistPath));
416
+ infoPlist["UILaunchStoryboardName"] = "BootSplash.storyboard";
417
+ const formatted = formatXml(plist.build(infoPlist), {
418
+ collapseContent: true,
419
+ forceSelfClosingEmptyTag: false,
420
+ indentation: "\t",
421
+ lineSeparator: "\n",
422
+ whiteSpaceAtEndOfSelfclosingTag: false
423
+ }).replace(/<string\/>/gm, "<string></string>").replace(/^\t/gm, "");
424
+ hfs.write(infoPlistPath, formatted);
425
+ logWrite(infoPlistPath);
368
426
  const imageSetPath = path.resolve(iosProjectPath, "Images.xcassets", "BootSplashLogo.imageset");
369
- fs.ensureDirSync(imageSetPath);
427
+ hfs.ensureDir(imageSetPath);
428
+ cleanIOSAssets(imageSetPath, "bootsplash_logo");
429
+ const logoFileName = await getIOSAssetFileName({
430
+ name: "bootsplash_logo",
431
+ image: logo,
432
+ width: logoWidth
433
+ });
370
434
  writeJson(path.resolve(imageSetPath, "Contents.json"), {
371
435
  images: [{
372
436
  idiom: "universal",
373
- filename: "bootsplash_logo.png",
437
+ filename: `${logoFileName}.png`,
374
438
  scale: "1x"
375
439
  }, {
376
440
  idiom: "universal",
377
- filename: "bootsplash_logo@2x.png",
441
+ filename: `${logoFileName}@2x.png`,
378
442
  scale: "2x"
379
443
  }, {
380
444
  idiom: "universal",
381
- filename: "bootsplash_logo@3x.png",
445
+ filename: `${logoFileName}@3x.png`,
382
446
  scale: "3x"
383
447
  }],
384
448
  info: {
@@ -399,7 +463,7 @@ export const generate = async ([argsLogo], {
399
463
  ratio,
400
464
  suffix
401
465
  }) => {
402
- const filePath = path.resolve(imageSetPath, `bootsplash_logo${suffix}.png`);
466
+ const filePath = path.resolve(imageSetPath, `${logoFileName}${suffix}.png`);
403
467
  return logo.clone().resize(logoWidth * ratio).png({
404
468
  quality: 100
405
469
  }).toFile(filePath).then(({
@@ -423,7 +487,7 @@ export const generate = async ([argsLogo], {
423
487
  format
424
488
  } = await logo.metadata();
425
489
  const prevStyle = root.querySelector("#bootsplash-style");
426
- const base64 = (format === "svg" ? fs.readFileSync(logoPath) : await logo.clone().resize(Math.round(logoWidth * 2)).png({
490
+ const base64 = (format === "svg" ? hfs.buffer(logoPath) : await logo.clone().resize(Math.round(logoWidth * 2)).png({
427
491
  quality: 100
428
492
  }).toBuffer()).toString("base64");
429
493
  const dataURI = `data:image/${format ? "svg+xml" : "png"};base64,${base64}`;
@@ -468,7 +532,7 @@ export const generate = async ([argsLogo], {
468
532
  }
469
533
  if (assetsOutputPath != null) {
470
534
  log.title("📄", "Assets");
471
- fs.ensureDirSync(assetsOutputPath);
535
+ hfs.ensureDir(assetsOutputPath);
472
536
  writeJson(path.resolve(assetsOutputPath, "bootsplash_manifest.json"), {
473
537
  background: background.hex,
474
538
  logo: {
@@ -1 +1 @@
1
- {"version":3,"names":["detectIndent","fs","parse","parseHtml","path","pc","htmlPlugin","cssPlugin","prettier","sharp","dedent","formatXml","workingPath","process","env","INIT_CWD","PWD","cwd","parseColor","value","up","toUpperCase","replace","hex","length","log","error","exit","rgb","R","parseInt","toPrecision","G","B","getStoryboard","logoHeight","logoWidth","background","frameWidth","frameHeight","logoX","logoY","text","console","red","title","emoji","underline","bold","warn","yellow","logWrite","filePath","dimensions","relative","width","height","writeJson","file","json","writeFileSync","JSON","stringify","readXml","xml","readFileSync","indent","formatOptions","indentation","root","writeXml","options","formatted","collapseContent","forceSelfClosingEmptyTag","lineSeparator","whiteSpaceAtEndOfSelfclosingTag","readHtml","html","type","amount","useTabs","tabWidth","writeHtml","format","parser","plugins","ensureSupportedFormat","name","image","metadata","getAndroidResPath","android","brandHeight","brandWidth","flavor","androidResPath","resolve","sourceDir","appName","existsSync","getIOSProjectPath","ios","xcodeProject","iosProjectPath","getHtmlTemplatePath","htmlTemplatePath","requireAddon","require","generate","argsLogo","project","platforms","licenseKey","args","nodeStringVersion","versions","node","split","nodeVersion","isNaN","logoPath","darkLogoPath","darkLogo","undefined","brandPath","brand","darkBrandPath","darkBrand","assetsOutputPath","assetsOutput","logo","darkBackground","executeAddon","filter","option","map","join","clone","resize","toBuffer","then","buffer","Math","round","includes","valuesPath","ensureDirSync","colorsXmlPath","colorsXmlEntry","nextColor","prevColor","querySelector","replaceWith","appendChild","toString","Promise","all","ratio","suffix","drawableDirPath","canvasSize","canvas","create","channels","r","g","b","alpha","input","composite","png","quality","toFile","storyboardPath","imageSetPath","images","idiom","filename","scale","info","author","version","prevStyle","base64","dataURI","nextStyle","prevDiv","nextDiv","addon","execute","blue"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":"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"}
1
+ {"version":3,"names":["murmurhash","IOSConfig","plist","findProjectRoot","detectIndent","fs","parse","parseHtml","path","pc","htmlPlugin","cssPlugin","prettier","sharp","dedent","formatXml","workingPath","process","env","INIT_CWD","PWD","cwd","parseColor","value","up","toUpperCase","replace","hex","length","log","error","exit","rgb","R","parseInt","toPrecision","G","B","getStoryboard","logoHeight","logoWidth","background","frameWidth","frameHeight","logoX","logoY","addFileToXcodeProject","filePath","projectRoot","pbxprojectPath","Paths","getPBXProjectPath","project","XcodeUtils","getPbxproj","xcodeProjectPath","getXcodeProjectPath","addResourceFileToGroup","filepath","groupName","name","hfs","write","writeSync","logWrite","buffer","readFileSync","exists","existsSync","json","JSON","readDir","readdirSync","realPath","realpathSync","rm","rmSync","force","text","ensureDir","dir","mkdirSync","recursive","file","data","trimmed","trim","writeFileSync","console","red","title","emoji","underline","bold","warn","yellow","dimensions","relative","width","height","writeJson","stringify","readXml","xml","indent","formatOptions","indentation","root","writeXml","options","formatted","collapseContent","forceSelfClosingEmptyTag","lineSeparator","whiteSpaceAtEndOfSelfclosingTag","readHtml","html","type","amount","useTabs","tabWidth","writeHtml","format","parser","plugins","cleanIOSAssets","prefix","filter","startsWith","endsWith","map","join","forEach","getIOSAssetFileName","image","clone","resize","png","quality","toBuffer","hash","toString","ensureSupportedFormat","metadata","getAndroidResPath","android","brandHeight","brandWidth","flavor","androidResPath","resolve","sourceDir","appName","getIOSProjectPath","ios","xcodeProject","iosProjectPath","getHtmlTemplatePath","htmlTemplatePath","requireAddon","require","generate","platforms","licenseKey","args","nodeStringVersion","versions","node","split","nodeVersion","isNaN","logoPath","logo","darkLogoPath","darkLogo","undefined","brandPath","brand","darkBrandPath","darkBrand","assetsOutputPath","assetsOutput","darkBackground","executeAddon","option","then","Math","round","includes","valuesPath","colorsXmlPath","colorsXmlEntry","nextColor","prevColor","querySelector","replaceWith","appendChild","Promise","all","ratio","suffix","drawableDirPath","canvasSize","canvas","create","channels","r","g","b","alpha","input","composite","toFile","storyboardPath","infoPlistPath","infoPlist","build","imageSetPath","logoFileName","images","idiom","filename","scale","info","author","version","prevStyle","base64","dataURI","nextStyle","prevDiv","nextDiv","addon","execute","blue"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/addon/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,WAAW,EASZ,MAAM,aAAa,CAAC;AAiSrB,eAAO,MAAM,OAAO,wPAyBjB,WAAW,kBAkgBb,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/addon/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,WAAW,EAaZ,MAAM,aAAa,CAAC;AAiSrB,eAAO,MAAM,OAAO,wPAyBjB,WAAW,kBAihBb,CAAC"}
@@ -1,4 +1,5 @@
1
- import { CommandFunction } from "@react-native-community/cli-types";
1
+ /// <reference types="node" />
2
+ import { AndroidProjectConfig, IOSProjectConfig } from "@react-native-community/cli-types";
2
3
  import { Options as PrettierOptions } from "prettier";
3
4
  import { Sharp } from "sharp";
4
5
  import { XMLFormatterOptions } from "xml-formatter";
@@ -10,6 +11,18 @@ export type Color = {
10
11
  B: string;
11
12
  };
12
13
  };
14
+ export declare const addFileToXcodeProject: (filePath: string) => void;
15
+ export declare const hfs: {
16
+ buffer: (path: string) => Buffer;
17
+ exists: (path: string) => boolean;
18
+ json: (path: string) => unknown;
19
+ readDir: (path: string) => string[];
20
+ realPath: (path: string) => string;
21
+ rm: (path: string) => void;
22
+ text: (path: string) => string;
23
+ ensureDir: (dir: string) => void;
24
+ write: (file: string, data: string) => void;
25
+ };
13
26
  export declare const log: {
14
27
  error: (text: string) => void;
15
28
  text: (text: string) => void;
@@ -31,6 +44,12 @@ export declare const readHtml: (file: string) => {
31
44
  formatOptions: PrettierOptions;
32
45
  };
33
46
  export declare const writeHtml: (file: string, html: string, options?: Omit<PrettierOptions, "parser" | "plugins">) => Promise<void>;
47
+ export declare const cleanIOSAssets: (dir: string, prefix: string) => void;
48
+ export declare const getIOSAssetFileName: ({ name, image, width, }: {
49
+ name: string;
50
+ image: Sharp;
51
+ width: number;
52
+ }) => Promise<string>;
34
53
  export type AddonConfig = {
35
54
  licenseKey: string;
36
55
  androidResPath: string | undefined;
@@ -52,18 +71,21 @@ export type AddonConfig = {
52
71
  darkLogo: Sharp | undefined;
53
72
  darkBrand: Sharp | undefined;
54
73
  };
55
- export declare const generate: CommandFunction<{
74
+ export declare const generate: ({ android, ios, platforms, html, flavor, licenseKey, ...args }: {
75
+ android?: AndroidProjectConfig | undefined;
76
+ ios?: IOSProjectConfig | undefined;
77
+ logo: string;
56
78
  platforms: string[];
57
79
  background: string;
58
80
  logoWidth: number;
59
- assetsOutput?: string;
81
+ assetsOutput?: string | undefined;
60
82
  html: string;
61
83
  flavor: string;
62
- licenseKey?: string;
63
- brand?: string;
84
+ licenseKey?: string | undefined;
85
+ brand?: string | undefined;
64
86
  brandWidth: number;
65
- darkBackground?: string;
66
- darkLogo?: string;
67
- darkBrand?: string;
68
- }>;
87
+ darkBackground?: string | undefined;
88
+ darkLogo?: string | undefined;
89
+ darkBrand?: string | undefined;
90
+ }) => Promise<void>;
69
91
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EAEhB,MAAM,mCAAmC,CAAC;AAM3C,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAItD,OAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAErC,OAAkB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAK/D,MAAM,MAAM,KAAK,GAAG;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C,CAAC;AAgFF,eAAO,MAAM,GAAG;kBACA,MAAM;iBACP,MAAM;mBACJ,MAAM,QAAQ,MAAM;iBAEtB,MAAM;CACpB,CAAC;AAEF,eAAO,MAAM,QAAQ,aACT,MAAM,eACH;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,SAK7C,CAAC;AAEJ,eAAO,MAAM,SAAS,SAAU,MAAM,QAAQ,MAAM,SAGnD,CAAC;AAEF,eAAO,MAAM,OAAO,SAAU,MAAM;;;CASnC,CAAC;AAEF,eAAO,MAAM,QAAQ,SACb,MAAM,OACP,MAAM,YACD,mBAAmB,SAa9B,CAAC;AAEF,eAAO,MAAM,QAAQ,SAAU,MAAM;;;CAUpC,CAAC;AAEF,eAAO,MAAM,SAAS,SACd,MAAM,QACN,MAAM,YACF,KAAK,eAAe,EAAE,QAAQ,GAAG,SAAS,CAAC,kBAYtD,CAAC;AAuGF,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IAEnB,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,KAAK,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IAEzB,cAAc,EAAE,KAAK,GAAG,SAAS,CAAC;IAClC,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,CAAC;AAaF,eAAO,MAAM,QAAQ,EAAE,eAAe,CAAC;IACrC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAgbA,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":";AAIA,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,mCAAmC,CAAC;AAM3C,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,UAAU,CAAC;AAItD,OAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAErC,OAAkB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAK/D,MAAM,MAAM,KAAK,GAAG;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C,CAAC;AAgFF,eAAO,MAAM,qBAAqB,aAAc,MAAM,SAerD,CAAC;AAGF,eAAO,MAAM,GAAG;mBACC,MAAM;mBACN,MAAM;iBACR,MAAM;oBACH,MAAM;qBACL,MAAM;eACZ,MAAM;iBACJ,MAAM;qBAEF,MAAM;kBAGT,MAAM,QAAQ,MAAM;CAInC,CAAC;AAEF,eAAO,MAAM,GAAG;kBACA,MAAM;iBACP,MAAM;mBACJ,MAAM,QAAQ,MAAM;iBAEtB,MAAM;CACpB,CAAC;AAEF,eAAO,MAAM,QAAQ,aACT,MAAM,eACH;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,SAK7C,CAAC;AAEJ,eAAO,MAAM,SAAS,SAAU,MAAM,QAAQ,MAAM,SAGnD,CAAC;AAEF,eAAO,MAAM,OAAO,SAAU,MAAM;;;CASnC,CAAC;AAEF,eAAO,MAAM,QAAQ,SACb,MAAM,OACP,MAAM,YACD,mBAAmB,SAa9B,CAAC;AAEF,eAAO,MAAM,QAAQ,SAAU,MAAM;;;CAUpC,CAAC;AAEF,eAAO,MAAM,SAAS,SACd,MAAM,QACN,MAAM,YACF,KAAK,eAAe,EAAE,QAAQ,GAAG,SAAS,CAAC,kBAYtD,CAAC;AAEF,eAAO,MAAM,cAAc,QAAS,MAAM,UAAU,MAAM,SAMzD,CAAC;AAEF,eAAO,MAAM,mBAAmB;UAKxB,MAAM;WACL,KAAK;WACL,MAAM;qBAUd,CAAC;AAuGF,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IAEnB,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,KAAK,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IAEzB,cAAc,EAAE,KAAK,GAAG,SAAS,CAAC;IAClC,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,CAAC;AAYF,eAAO,MAAM,QAAQ;;;UAYb,MAAM;eACD,MAAM,EAAE;gBACP,MAAM;eACP,MAAM;;UAEX,MAAM;YACJ,MAAM;;;gBAIF,MAAM;;;;mBA0cnB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-bootsplash",
3
- "version": "5.2.2",
3
+ "version": "5.4.0",
4
4
  "license": "MIT",
5
5
  "description": "Display a bootsplash on your app starts. Hide it when you want.",
6
6
  "author": "Mathieu Acthernoene <zoontek@gmail.com>",
@@ -38,11 +38,11 @@
38
38
  "launchscreen"
39
39
  ],
40
40
  "scripts": {
41
- "format": "prettier '**/*' --ignore-unknown --write",
41
+ "format": "prettier '**/*' -u -w",
42
42
  "lint": "eslint --ext ts,tsx ./src",
43
43
  "typecheck": "tsc --noEmit",
44
44
  "build": "bob build",
45
- "prepack": "yarn format --write=false --check && yarn lint && yarn typecheck && yarn build && node ../obfuscator"
45
+ "prepack": "prettier '**/*' -u -c && yarn lint && yarn typecheck && yarn build && node ../obfuscator"
46
46
  },
47
47
  "react-native-builder-bob": {
48
48
  "source": "src",
@@ -63,8 +63,9 @@
63
63
  "react-native": ">=0.70.0"
64
64
  },
65
65
  "dependencies": {
66
+ "@emotion/hash": "^0.9.1",
67
+ "@expo/config-plugins": "^7.8.4",
66
68
  "detect-indent": "^6.1.0",
67
- "fs-extra": "^11.2.0",
68
69
  "node-html-parser": "^6.1.12",
69
70
  "picocolors": "^1.0.0",
70
71
  "prettier": "^3.1.1",
@@ -75,8 +76,6 @@
75
76
  "devDependencies": {
76
77
  "@babel/core": "^7.20.0",
77
78
  "@babel/preset-env": "^7.20.0",
78
- "@react-native-community/cli-types": "^12.3.0",
79
- "@types/fs-extra": "^11.0.4",
80
79
  "@types/node": "^20.10.7",
81
80
  "@types/react": "^18.2.47",
82
81
  "@types/sharp": "^0.31.1",
@@ -86,7 +85,7 @@
86
85
  "eslint-plugin-react-hooks": "^4.6.0",
87
86
  "prettier-plugin-organize-imports": "^3.2.4",
88
87
  "react": "18.2.0",
89
- "react-native": "0.73.1",
88
+ "react-native": "0.73.2",
90
89
  "react-native-builder-bob": "^0.23.2",
91
90
  "typescript": "^5.3.3"
92
91
  },
@@ -70,10 +70,10 @@ const generateBootSplash = {
70
70
  description: "[dark mode] Brand file path (PNG or SVG)",
71
71
  },
72
72
  ],
73
- func: (argv, ctx, args) => {
73
+ func: ([logo], { project: { android, ios } }, args) => {
74
74
  const { generate } = require("./dist/commonjs/generate");
75
75
 
76
- generate(argv, ctx, args).catch((error) => {
76
+ generate({ android, ios, logo, ...args }).catch((error) => {
77
77
  console.error(error);
78
78
  process.exit(1);
79
79
  });