react-native-bootsplash 7.0.2 → 7.1.0-beta.1

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.
Files changed (69) hide show
  1. package/app.plugin.js +1 -1
  2. package/cli.js +1 -1
  3. package/dist/commonjs/extras/addon/index.js +97 -0
  4. package/dist/commonjs/extras/addon/index.js.map +1 -0
  5. package/dist/commonjs/{expo.js → extras/expo.js} +29 -32
  6. package/dist/commonjs/extras/expo.js.map +1 -0
  7. package/dist/commonjs/extras/generate.js +274 -0
  8. package/dist/commonjs/extras/generate.js.map +1 -0
  9. package/dist/commonjs/{generate.js → extras/utils.js} +126 -355
  10. package/dist/commonjs/extras/utils.js.map +1 -0
  11. package/dist/commonjs/package.json +1 -0
  12. package/dist/module/extras/addon/index.js +97 -0
  13. package/dist/module/extras/addon/index.js.map +1 -0
  14. package/dist/module/{expo.js → extras/expo.js} +7 -11
  15. package/dist/module/extras/expo.js.map +1 -0
  16. package/dist/module/extras/generate.js +267 -0
  17. package/dist/module/extras/generate.js.map +1 -0
  18. package/dist/module/{generate.js → extras/utils.js} +115 -343
  19. package/dist/module/extras/utils.js.map +1 -0
  20. package/dist/module/package.json +1 -0
  21. package/dist/typescript/{addon → commonjs/extras/addon}/index.d.ts +1 -1
  22. package/dist/typescript/commonjs/extras/addon/index.d.ts.map +1 -0
  23. package/dist/typescript/commonjs/extras/expo.d.ts +8 -0
  24. package/dist/typescript/commonjs/extras/expo.d.ts.map +1 -0
  25. package/dist/typescript/commonjs/extras/generate.d.ts +17 -0
  26. package/dist/typescript/commonjs/extras/generate.d.ts.map +1 -0
  27. package/dist/typescript/{generate.d.ts → commonjs/extras/utils.d.ts} +67 -37
  28. package/dist/typescript/commonjs/extras/utils.d.ts.map +1 -0
  29. package/dist/typescript/commonjs/index.d.ts.map +1 -0
  30. package/dist/typescript/commonjs/package.json +1 -0
  31. package/dist/typescript/commonjs/specs/NativeRNBootSplash.d.ts.map +1 -0
  32. package/dist/typescript/commonjs/specs/NativeRNBootSplash.web.d.ts.map +1 -0
  33. package/dist/typescript/module/extras/addon/index.d.ts +26 -0
  34. package/dist/typescript/module/extras/addon/index.d.ts.map +1 -0
  35. package/dist/typescript/module/extras/expo.d.ts +8 -0
  36. package/dist/typescript/module/extras/expo.d.ts.map +1 -0
  37. package/dist/typescript/module/extras/generate.d.ts +17 -0
  38. package/dist/typescript/module/extras/generate.d.ts.map +1 -0
  39. package/dist/typescript/module/extras/utils.d.ts +192 -0
  40. package/dist/typescript/module/extras/utils.d.ts.map +1 -0
  41. package/dist/typescript/module/index.d.ts +61 -0
  42. package/dist/typescript/module/index.d.ts.map +1 -0
  43. package/dist/typescript/module/package.json +1 -0
  44. package/dist/typescript/module/specs/NativeRNBootSplash.d.ts +14 -0
  45. package/dist/typescript/module/specs/NativeRNBootSplash.d.ts.map +1 -0
  46. package/dist/typescript/module/specs/NativeRNBootSplash.web.d.ts +9 -0
  47. package/dist/typescript/module/specs/NativeRNBootSplash.web.d.ts.map +1 -0
  48. package/package.json +49 -19
  49. package/src/{expo.ts → extras/expo.ts} +31 -40
  50. package/src/extras/generate.ts +410 -0
  51. package/src/{generate.ts → extras/utils.ts} +180 -494
  52. package/dist/commonjs/addon/index.js +0 -97
  53. package/dist/commonjs/addon/index.js.map +0 -1
  54. package/dist/commonjs/expo.js.map +0 -1
  55. package/dist/commonjs/generate.js.map +0 -1
  56. package/dist/module/addon/index.js +0 -97
  57. package/dist/module/addon/index.js.map +0 -1
  58. package/dist/module/expo.js.map +0 -1
  59. package/dist/module/generate.js.map +0 -1
  60. package/dist/typescript/addon/index.d.ts.map +0 -1
  61. package/dist/typescript/expo.d.ts +0 -6
  62. package/dist/typescript/expo.d.ts.map +0 -1
  63. package/dist/typescript/generate.d.ts.map +0 -1
  64. package/dist/typescript/index.d.ts.map +0 -1
  65. package/dist/typescript/specs/NativeRNBootSplash.d.ts.map +0 -1
  66. package/dist/typescript/specs/NativeRNBootSplash.web.d.ts.map +0 -1
  67. /package/dist/typescript/{index.d.ts → commonjs/index.d.ts} +0 -0
  68. /package/dist/typescript/{specs → commonjs/specs}/NativeRNBootSplash.d.ts +0 -0
  69. /package/dist/typescript/{specs → commonjs/specs}/NativeRNBootSplash.web.d.ts +0 -0
@@ -1,13 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import * as Expo from "@expo/config-plugins";
4
- import ExpoPlist from "@expo/plist";
5
3
  import crypto from "crypto";
6
4
  import detectIndent from "detect-indent";
7
- import glob from "fast-glob";
8
- import findUp from "find-up";
9
- import fs from "fs-extra";
10
- import { HTMLElement, parse as parseHtml } from "node-html-parser";
5
+ import fs from "fs";
6
+ import { parse as parseHtml } from "node-html-parser";
11
7
  import path from "path";
12
8
  import pc from "picocolors";
13
9
  import * as htmlPlugin from "prettier/plugins/html";
@@ -18,122 +14,35 @@ import sharp from "sharp";
18
14
  import { dedent } from "ts-dedent";
19
15
  import formatXml from "xml-formatter";
20
16
  export const PACKAGE_NAME = "react-native-bootsplash";
21
- let isExpo = false;
22
- export const setIsExpo = value => {
23
- isExpo = value;
17
+ let loggerMode = {
18
+ type: "plugin"
19
+ };
20
+ export const setLoggerMode = value => {
21
+ loggerMode = value;
24
22
  };
25
23
  export const log = {
26
24
  error: text => {
27
- console.log(pc.red(isExpo ? `❌ [${PACKAGE_NAME}] ${text}` : `❌ ${text}`));
25
+ console.log(pc.red(loggerMode.type === "plugin" ? `❌ [${PACKAGE_NAME}] ${text}` : `❌ ${text}`));
28
26
  },
29
27
  title: (emoji, text) => {
30
- if (!isExpo) {
28
+ if (loggerMode.type === "cli") {
31
29
  console.log(`\n${emoji} ${pc.underline(pc.bold(text))}`);
32
30
  }
33
31
  },
34
32
  warn: text => {
35
- console.log(pc.yellow(isExpo ? `⚠️ [${PACKAGE_NAME}] ${text}` : `⚠️ ${text}`));
33
+ console.log(pc.yellow(loggerMode.type === "plugin" ? `⚠️ [${PACKAGE_NAME}] ${text}` : `⚠️ ${text}`));
36
34
  },
37
35
  write: (filePath, dimensions) => {
38
- if (!isExpo) {
39
- console.log(` ${path.relative(workingPath, filePath)}` + (dimensions != null ? ` (${dimensions.width}x${dimensions.height})` : ""));
36
+ if (loggerMode.type === "cli") {
37
+ console.log(` ${path.relative(loggerMode.cwd, filePath)}` + (dimensions != null ? ` (${dimensions.width}x${dimensions.height})` : ""));
40
38
  }
41
39
  }
42
40
  };
43
- const workingPath = process.env.INIT_CWD ?? process.env.PWD ?? process.cwd();
44
- const packagePath = findUp.sync("package.json", {
45
- cwd: workingPath
46
- });
47
- if (!packagePath) {
48
- log.error("We couldn't find a package.json in your project.");
49
- process.exit(1);
50
- }
51
- const projectRoot = path.dirname(packagePath);
52
- const parseColor = value => {
53
- const up = value.toUpperCase().replace(/[^0-9A-F]/g, "");
54
- if (up.length !== 3 && up.length !== 6) {
55
- log.error(`"${value}" value is not a valid hexadecimal color.`);
56
- process.exit(1);
57
- }
58
- const hex = up.length === 3 ? "#" + up[0] + up[0] + up[1] + up[1] + up[2] + up[2] : "#" + up;
59
- const rgb = {
60
- R: (Number.parseInt("" + hex[1] + hex[2], 16) / 255).toPrecision(15),
61
- G: (Number.parseInt("" + hex[3] + hex[4], 16) / 255).toPrecision(15),
62
- B: (Number.parseInt("" + hex[5] + hex[6], 16) / 255).toPrecision(15)
63
- };
64
- return {
65
- hex: hex.toLowerCase(),
66
- rgb
67
- };
68
- };
69
- const getStoryboard = props => {
70
- const {
71
- background,
72
- logo,
73
- fileNameSuffix
74
- } = props;
75
- const {
76
- R,
77
- G,
78
- B
79
- } = background.rgb;
80
- const frameWidth = 375;
81
- const frameHeight = 667;
82
- return dedent`
83
- <?xml version="1.0" encoding="UTF-8"?>
84
- <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
85
- <device id="retina4_7" orientation="portrait" appearance="light"/>
86
- <dependencies>
87
- <deployment identifier="iOS"/>
88
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
89
- <capability name="Named colors" minToolsVersion="9.0"/>
90
- <capability name="Safe area layout guides" minToolsVersion="9.0"/>
91
- <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
92
- </dependencies>
93
- <scenes>
94
- <!--View Controller-->
95
- <scene sceneID="EHf-IW-A2E">
96
- <objects>
97
- <viewController modalTransitionStyle="crossDissolve" id="01J-lp-oVM" sceneMemberID="viewController">
98
- <view key="view" autoresizesSubviews="NO" contentMode="scaleToFill" id="Ze5-6b-2t3">
99
- <rect key="frame" x="0.0" y="0.0" width="${frameWidth}" height="${frameHeight}"/>
100
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
101
- <subviews>
102
- <imageView autoresizesSubviews="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" image="BootSplashLogo-${fileNameSuffix}" translatesAutoresizingMaskIntoConstraints="NO" id="3lX-Ut-9ad">
103
- <rect key="frame" x="${(frameWidth - logo.width) / 2}" y="${(frameHeight - logo.height) / 2}" width="${logo.width}" height="${logo.height}"/>
104
- <accessibility key="accessibilityConfiguration">
105
- <accessibilityTraits key="traits" image="YES" notEnabled="YES"/>
106
- </accessibility>
107
- </imageView>
108
- </subviews>
109
- <viewLayoutGuide key="safeArea" id="Bcu-3y-fUS"/>
110
- <color key="backgroundColor" name="BootSplashBackground-${fileNameSuffix}"/>
111
- <constraints>
112
- <constraint firstItem="3lX-Ut-9ad" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="Fh9-Fy-1nT"/>
113
- <constraint firstItem="3lX-Ut-9ad" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="nvB-Ic-PnI"/>
114
- </constraints>
115
- </view>
116
- </viewController>
117
- <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
118
- </objects>
119
- <point key="canvasLocation" x="0.0" y="0.0"/>
120
- </scene>
121
- </scenes>
122
- <resources>
123
- <image name="BootSplashLogo-${fileNameSuffix}" width="${logo.width}" height="${logo.height}"/>
124
- <namedColor name="BootSplashBackground-${fileNameSuffix}">
125
- <color red="${R}" green="${G}" blue="${B}" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
126
- </namedColor>
127
- </resources>
128
- </document>
129
- `;
130
- };
131
41
 
132
42
  // Freely inspired by https://github.com/humanwhocodes/humanfs
133
43
  export const hfs = {
134
44
  buffer: path => fs.readFileSync(path),
135
45
  exists: path => fs.existsSync(path),
136
- isDir: path => fs.lstatSync(path).isDirectory(),
137
46
  json: path => JSON.parse(fs.readFileSync(path, "utf-8")),
138
47
  readDir: path => fs.readdirSync(path, "utf-8"),
139
48
  realPath: path => fs.realpathSync(path, "utf-8"),
@@ -204,68 +113,6 @@ export const writeXmlLike = async (filePath, content, {
204
113
  log.write(filePath);
205
114
  }
206
115
  };
207
- const getAndroidOutputPath = ({
208
- flavor
209
- }) => {
210
- const sourceDir = path.join(projectRoot, "android");
211
- if (!fs.existsSync(sourceDir)) {
212
- return;
213
- }
214
- const appDir = path.join(sourceDir, "app");
215
- const androidOutputPath = path.resolve(sourceDir, fs.existsSync(appDir) ? "app" : "", "src", flavor, "res");
216
- if (hfs.exists(androidOutputPath)) {
217
- return androidOutputPath;
218
- }
219
- log.warn(`No ${path.relative(workingPath, androidOutputPath)} directory found. Skipping Android assets generation…`);
220
- };
221
- const getIOSOutputPath = () => {
222
- const podfile = glob.sync("**/Podfile", {
223
- cwd: projectRoot.replace(/^([a-zA-Z]+:|\.\/)/, ""),
224
- deep: 10,
225
- ignore: ["**/@(Pods|node_modules|Carthage|vendor|android)/**"]
226
- }).find(project => {
227
- return path.dirname(project) === "ios";
228
- });
229
- if (!podfile) {
230
- return;
231
- }
232
- const sourceDir = path.dirname(path.join(projectRoot, podfile));
233
- const xcodeProjectName = fs.readdirSync(sourceDir).sort().reverse().find(fileName => {
234
- const ext = path.extname(fileName);
235
- return ext === ".xcworkspace" || ext === ".xcodeproj";
236
- });
237
- if (xcodeProjectName == null) {
238
- log.warn("No Xcode project found. Skipping iOS assets generation…");
239
- return;
240
- }
241
- const iosOutputPath = path.resolve(sourceDir, xcodeProjectName).replace(/\.(xcodeproj|xcworkspace)$/, "");
242
- if (hfs.exists(iosOutputPath)) {
243
- return iosOutputPath;
244
- }
245
- log.warn(`No ${path.relative(workingPath, iosOutputPath)} directory found. Skipping iOS assets generation…`);
246
- };
247
- const getHtmlTemplatePath = ({
248
- html
249
- }) => {
250
- const htmlTemplatePath = path.resolve(workingPath, html);
251
- if (hfs.exists(htmlTemplatePath)) {
252
- return htmlTemplatePath;
253
- }
254
- log.warn(`No ${path.relative(workingPath, htmlTemplatePath)} found. Skipping HTML + CSS generation…`);
255
- };
256
- const getInfoPlistPath = ({
257
- iosOutputPath,
258
- plist
259
- }) => {
260
- if (plist != null) {
261
- const infoPlistPath = path.resolve(workingPath, plist);
262
- if (!hfs.exists(infoPlistPath)) {
263
- return log.warn(`No ${path.relative(workingPath, infoPlistPath)} found`);
264
- }
265
- return infoPlistPath;
266
- }
267
- return path.resolve(iosOutputPath, "Info.plist");
268
- };
269
116
  const toAsset = async (filePath, width) => {
270
117
  const image = sharp(filePath);
271
118
  const {
@@ -288,6 +135,23 @@ const toAsset = async (filePath, width) => {
288
135
  width
289
136
  };
290
137
  };
138
+ const parseColor = value => {
139
+ const up = value.toUpperCase().replace(/[^0-9A-F]/g, "");
140
+ if (up.length !== 3 && up.length !== 6) {
141
+ log.error(`"${value}" value is not a valid hexadecimal color.`);
142
+ process.exit(1);
143
+ }
144
+ const hex = up.length === 3 ? "#" + up[0] + up[0] + up[1] + up[1] + up[2] + up[2] : "#" + up;
145
+ const rgb = {
146
+ R: (Number.parseInt("" + hex[1] + hex[2], 16) / 255).toPrecision(15),
147
+ G: (Number.parseInt("" + hex[3] + hex[4], 16) / 255).toPrecision(15),
148
+ B: (Number.parseInt("" + hex[5] + hex[6], 16) / 255).toPrecision(15)
149
+ };
150
+ return {
151
+ hex: hex.toLowerCase(),
152
+ rgb
153
+ };
154
+ };
291
155
  export const transformProps = async (rootPath, {
292
156
  android = {},
293
157
  licenseKey,
@@ -297,25 +161,33 @@ export const transformProps = async (rootPath, {
297
161
  log.error("Requires Node 20 (or higher)");
298
162
  process.exit(1);
299
163
  }
300
- const assetsOutputPath = path.resolve(rootPath, rawProps.assetsOutput);
301
- const logoPath = path.resolve(rootPath, rawProps.logo);
302
- const darkLogoPath = rawProps.darkLogo != null ? path.resolve(rootPath, rawProps.darkLogo) : undefined;
303
- const brandPath = rawProps.brand != null ? path.resolve(rootPath, rawProps.brand) : undefined;
304
- const darkBrandPath = rawProps.darkBrand != null ? path.resolve(rootPath, rawProps.darkBrand) : undefined;
305
- const logoWidth = rawProps.logoWidth - rawProps.logoWidth % 2;
306
- const brandWidth = rawProps.brandWidth - rawProps.brandWidth % 2;
164
+ const withDefaults = {
165
+ assetsOutput: "assets/bootsplash",
166
+ background: "#fff",
167
+ brandWidth: 80,
168
+ logoWidth: 100,
169
+ ...rawProps
170
+ };
171
+ const assetsOutputPath = path.resolve(rootPath, withDefaults.assetsOutput);
172
+ const logoPath = path.resolve(rootPath, withDefaults.logo);
173
+ const darkLogoPath = withDefaults.darkLogo != null ? path.resolve(rootPath, withDefaults.darkLogo) : undefined;
174
+ const brandPath = withDefaults.brand != null ? path.resolve(rootPath, withDefaults.brand) : undefined;
175
+ const darkBrandPath = withDefaults.darkBrand != null ? path.resolve(rootPath, withDefaults.darkBrand) : undefined;
176
+ const logoWidth = withDefaults.logoWidth - withDefaults.logoWidth % 2;
177
+ const brandWidth = withDefaults.brandWidth - withDefaults.brandWidth % 2;
307
178
  const [logo, darkLogo, brand, darkBrand] = await Promise.all([toAsset(logoPath, logoWidth), darkLogoPath != null ? toAsset(darkLogoPath, logoWidth) : undefined, brandPath != null ? toAsset(brandPath, brandWidth) : undefined, darkBrandPath != null ? toAsset(darkBrandPath, brandWidth) : undefined]);
308
- const background = parseColor(rawProps.background);
309
- const darkBackground = rawProps.darkBackground != null ? parseColor(rawProps.darkBackground) : undefined;
179
+ const background = parseColor(withDefaults.background);
180
+ const darkBackground = withDefaults.darkBackground != null ? parseColor(withDefaults.darkBackground) : undefined;
310
181
  const executeAddon = brand != null || darkBackground != null || darkLogo != null || darkBrand != null;
311
182
  if (licenseKey != null && !executeAddon) {
312
183
  log.warn("You specified a license key but none of the options that requires it.");
313
184
  }
185
+ const isPluginLoggerMode = loggerMode.type === "plugin";
314
186
  const optionNames = {
315
- brand: isExpo ? "brand" : "--brand",
316
- darkBackground: isExpo ? "darkBackground" : "--dark-background",
317
- darkLogo: isExpo ? "darkLogo" : "--dark-logo",
318
- darkBrand: isExpo ? "darkBrand" : "--dark-brand"
187
+ brand: isPluginLoggerMode ? "brand" : "--brand",
188
+ darkBackground: isPluginLoggerMode ? "darkBackground" : "--dark-background",
189
+ darkLogo: isPluginLoggerMode ? "darkLogo" : "--dark-logo",
190
+ darkBrand: isPluginLoggerMode ? "darkBrand" : "--dark-brand"
319
191
  };
320
192
  if (licenseKey == null && executeAddon) {
321
193
  const options = [brand != null ? optionNames.brand : "", darkBackground != null ? optionNames.darkBackground : "", darkLogo != null ? optionNames.darkLogo : "", darkBrand != null ? optionNames.darkBrand : ""].filter(option => option !== "").join(", ");
@@ -326,10 +198,10 @@ export const transformProps = async (rootPath, {
326
198
  log.error(`${optionNames.darkBrand} option couldn't be used without ${optionNames.brand}.`);
327
199
  process.exit(1);
328
200
  }
329
- if (logoWidth < rawProps.logoWidth) {
201
+ if (logoWidth < withDefaults.logoWidth) {
330
202
  log.warn(`Logo width must be a multiple of 2. It has been rounded to ${logoWidth}dp.`);
331
203
  }
332
- if (brandWidth < rawProps.brandWidth) {
204
+ if (brandWidth < withDefaults.brandWidth) {
333
205
  log.warn(`Brand width must be a multiple of 2. It has been rounded to ${brandWidth}dp.`);
334
206
  }
335
207
  const record = {
@@ -429,6 +301,68 @@ export const writeAndroidAssets = async ({
429
301
  });
430
302
  }));
431
303
  };
304
+ const getStoryboard = props => {
305
+ const {
306
+ background,
307
+ logo,
308
+ fileNameSuffix
309
+ } = props;
310
+ const {
311
+ R,
312
+ G,
313
+ B
314
+ } = background.rgb;
315
+ const frameWidth = 375;
316
+ const frameHeight = 667;
317
+ return dedent`
318
+ <?xml version="1.0" encoding="UTF-8"?>
319
+ <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
320
+ <device id="retina4_7" orientation="portrait" appearance="light"/>
321
+ <dependencies>
322
+ <deployment identifier="iOS"/>
323
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
324
+ <capability name="Named colors" minToolsVersion="9.0"/>
325
+ <capability name="Safe area layout guides" minToolsVersion="9.0"/>
326
+ <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
327
+ </dependencies>
328
+ <scenes>
329
+ <!--View Controller-->
330
+ <scene sceneID="EHf-IW-A2E">
331
+ <objects>
332
+ <viewController modalTransitionStyle="crossDissolve" id="01J-lp-oVM" sceneMemberID="viewController">
333
+ <view key="view" autoresizesSubviews="NO" contentMode="scaleToFill" id="Ze5-6b-2t3">
334
+ <rect key="frame" x="0.0" y="0.0" width="${frameWidth}" height="${frameHeight}"/>
335
+ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
336
+ <subviews>
337
+ <imageView autoresizesSubviews="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" image="BootSplashLogo-${fileNameSuffix}" translatesAutoresizingMaskIntoConstraints="NO" id="3lX-Ut-9ad">
338
+ <rect key="frame" x="${(frameWidth - logo.width) / 2}" y="${(frameHeight - logo.height) / 2}" width="${logo.width}" height="${logo.height}"/>
339
+ <accessibility key="accessibilityConfiguration">
340
+ <accessibilityTraits key="traits" image="YES" notEnabled="YES"/>
341
+ </accessibility>
342
+ </imageView>
343
+ </subviews>
344
+ <viewLayoutGuide key="safeArea" id="Bcu-3y-fUS"/>
345
+ <color key="backgroundColor" name="BootSplashBackground-${fileNameSuffix}"/>
346
+ <constraints>
347
+ <constraint firstItem="3lX-Ut-9ad" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="Fh9-Fy-1nT"/>
348
+ <constraint firstItem="3lX-Ut-9ad" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="nvB-Ic-PnI"/>
349
+ </constraints>
350
+ </view>
351
+ </viewController>
352
+ <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
353
+ </objects>
354
+ <point key="canvasLocation" x="0.0" y="0.0"/>
355
+ </scene>
356
+ </scenes>
357
+ <resources>
358
+ <image name="BootSplashLogo-${fileNameSuffix}" width="${logo.width}" height="${logo.height}"/>
359
+ <namedColor name="BootSplashBackground-${fileNameSuffix}">
360
+ <color red="${R}" green="${G}" blue="${B}" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
361
+ </namedColor>
362
+ </resources>
363
+ </document>
364
+ `;
365
+ };
432
366
  export const writeIOSAssets = async ({
433
367
  iosOutputPath,
434
368
  props
@@ -643,166 +577,4 @@ export const requireAddon = ({
643
577
  }
644
578
  }
645
579
  };
646
- export const generate = async ({
647
- platforms,
648
- html,
649
- flavor,
650
- plist,
651
- ...rawProps
652
- }) => {
653
- const props = await transformProps(workingPath, rawProps);
654
- const addon = requireAddon(props);
655
- const {
656
- background,
657
- brand
658
- } = props;
659
- const androidOutputPath = platforms.includes("android") ? getAndroidOutputPath({
660
- flavor
661
- }) : undefined;
662
- const iosOutputPath = platforms.includes("ios") ? getIOSOutputPath() : undefined;
663
- const htmlTemplatePath = platforms.includes("web") ? getHtmlTemplatePath({
664
- html
665
- }) : undefined;
666
- if (androidOutputPath != null) {
667
- await writeAndroidAssets({
668
- androidOutputPath,
669
- props
670
- });
671
- const manifestXmlPath = path.resolve(androidOutputPath, "..", "AndroidManifest.xml");
672
- if (hfs.exists(manifestXmlPath)) {
673
- const manifestXml = readXmlLike(manifestXmlPath);
674
- const activities = manifestXml.root.querySelectorAll("activity");
675
- for (const activity of activities) {
676
- if (activity.getAttribute("android:name") === ".MainActivity") {
677
- activity.setAttribute("android:theme", "@style/BootTheme");
678
- }
679
- }
680
- await writeXmlLike(manifestXmlPath, manifestXml.root.toString(), {
681
- ...manifestXml.formatOptions,
682
- formatter: "prettier",
683
- htmlWhitespaceSensitivity: "ignore",
684
- selfClosingTags: true,
685
- singleAttributePerLine: true
686
- });
687
- } else {
688
- log.warn("No AndroidManifest.xml found");
689
- }
690
- const valuesPath = path.resolve(androidOutputPath, "values");
691
- hfs.ensureDir(valuesPath);
692
- const colorsXmlPath = path.resolve(valuesPath, "colors.xml");
693
- const colorsXmlEntry = `<color name="bootsplash_background">${background.hex}</color>`;
694
- if (hfs.exists(colorsXmlPath)) {
695
- const colorsXml = readXmlLike(colorsXmlPath);
696
- const nextColor = parseHtml(colorsXmlEntry);
697
- const prevColor = colorsXml.root.querySelector('color[name="bootsplash_background"]');
698
- if (prevColor != null) {
699
- prevColor.replaceWith(nextColor);
700
- } else {
701
- colorsXml.root.querySelector("resources")?.appendChild(nextColor);
702
- }
703
- await writeXmlLike(colorsXmlPath, colorsXml.root.toString(), {
704
- ...colorsXml.formatOptions,
705
- formatter: "xmlFormatter"
706
- });
707
- } else {
708
- await writeXmlLike(colorsXmlPath, `<resources>${colorsXmlEntry}</resources>`, {
709
- formatter: "xmlFormatter"
710
- });
711
- }
712
- const stylesXmlPath = path.resolve(valuesPath, "styles.xml");
713
- if (hfs.exists(stylesXmlPath)) {
714
- const stylesXml = readXmlLike(stylesXmlPath);
715
- const prevStyle = stylesXml.root.querySelector('style[name="BootTheme"]');
716
- const parent = prevStyle?.getAttribute("parent") ?? "Theme.BootSplash";
717
- const extraItems = parseHtml(prevStyle?.text.split("\n").map(line => line.trim()).join("") ?? "").childNodes.filter(node => {
718
- if (!(node instanceof HTMLElement)) {
719
- return true;
720
- }
721
- const name = node.getAttribute("name");
722
- return name !== "bootSplashBackground" && name !== "bootSplashLogo" && name !== "bootSplashBrand" && name !== "postBootSplashTheme";
723
- }).map(node => node.toString());
724
- const styleItems = [...(extraItems.length > 0 ? [...extraItems, ""] : []), '<item name="bootSplashBackground">@color/bootsplash_background</item>', '<item name="bootSplashLogo">@drawable/bootsplash_logo</item>', ...(brand != null ? ['<item name="bootSplashBrand">@drawable/bootsplash_brand</item>'] : []), '<item name="postBootSplashTheme">@style/AppTheme</item>'];
725
- const nextStyle = parseHtml(dedent`
726
- <style name="BootTheme" parent="${parent}">
727
- ${styleItems.join("\n")}
728
- </style>
729
- `);
730
- prevStyle?.remove(); // remove the existing style
731
- stylesXml.root.querySelector("resources")?.appendChild(nextStyle);
732
- await writeXmlLike(stylesXmlPath, stylesXml.root.toString(), {
733
- ...stylesXml.formatOptions,
734
- formatter: "prettier",
735
- htmlWhitespaceSensitivity: "ignore"
736
- });
737
- } else {
738
- log.warn("No styles.xml found");
739
- }
740
- }
741
- if (iosOutputPath != null) {
742
- await writeIOSAssets({
743
- iosOutputPath,
744
- props
745
- });
746
- const pbxprojectPath = Expo.IOSConfig.Paths.getPBXProjectPath(projectRoot);
747
- const xcodeProjectPath = Expo.IOSConfig.Paths.getXcodeProjectPath(projectRoot);
748
- const project = Expo.IOSConfig.XcodeUtils.getPbxproj(projectRoot);
749
- const projectName = path.basename(iosOutputPath);
750
- const groupName = path.parse(xcodeProjectPath).name;
751
- Expo.IOSConfig.XcodeUtils.addResourceFileToGroup({
752
- project,
753
- filepath: path.join(projectName, "BootSplash.storyboard"),
754
- groupName,
755
- isBuildFile: true
756
- });
757
- Expo.IOSConfig.XcodeUtils.addResourceFileToGroup({
758
- project,
759
- filepath: path.join(projectName, "Colors.xcassets"),
760
- groupName,
761
- isBuildFile: true
762
- });
763
- hfs.write(pbxprojectPath, project.writeSync());
764
- log.write(pbxprojectPath);
765
- const infoPlistPath = getInfoPlistPath({
766
- iosOutputPath,
767
- plist
768
- });
769
- if (infoPlistPath != null) {
770
- const infoPlist = ExpoPlist.parse(hfs.text(infoPlistPath));
771
- infoPlist["UILaunchStoryboardName"] = "BootSplash";
772
- const formatted = formatXml(ExpoPlist.build(infoPlist), {
773
- collapseContent: true,
774
- forceSelfClosingEmptyTag: false,
775
- indentation: "\t",
776
- lineSeparator: "\n",
777
- whiteSpaceAtEndOfSelfclosingTag: false
778
- }).replace(/<string\/>/gm, "<string></string>").replace(/^\t/gm, "");
779
- hfs.write(infoPlistPath, formatted);
780
- log.write(infoPlistPath);
781
- }
782
- }
783
- if (htmlTemplatePath != null) {
784
- await writeWebAssets({
785
- htmlTemplatePath,
786
- props
787
- });
788
- }
789
- await writeGenericAssets({
790
- props
791
- });
792
- if (addon != null) {
793
- await addon.execute({
794
- props,
795
- androidOutputPath,
796
- iosOutputPath,
797
- htmlTemplatePath
798
- });
799
- } else {
800
- console.log(`
801
- ${pc.blue("┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓")}
802
- ${pc.blue("┃")} 🔑 ${pc.bold("Get a license key for brand image / dark mode support")} ${pc.blue("┃")}
803
- ${pc.blue("┃")} ${pc.underline("https://zoontek.gumroad.com/l/bootsplash-generator")} ${pc.blue("┃")}
804
- ${pc.blue("┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛")}`);
805
- }
806
- console.log(`\n💖 Thanks for using ${pc.underline("react-native-bootsplash")}`);
807
- };
808
- //# sourceMappingURL=generate.js.map
580
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["crypto","detectIndent","fs","parse","parseHtml","path","pc","htmlPlugin","cssPlugin","prettier","semver","sharp","dedent","formatXml","PACKAGE_NAME","loggerMode","type","setLoggerMode","value","log","error","text","console","red","title","emoji","underline","bold","warn","yellow","write","filePath","dimensions","relative","cwd","width","height","hfs","buffer","readFileSync","exists","existsSync","json","JSON","readDir","readdirSync","realPath","realpathSync","rm","rmSync","force","recursive","ensureDir","dir","mkdirSync","content","trimmed","trim","writeFileSync","writeJson","stringify","readXmlLike","root","formatOptions","indent","writeXmlLike","formatter","useCssPlugin","selfClosingTags","options","formatted","format","parser","bracketSameLine","printWidth","plugins","useTabs","tabWidth","amount","replace","collapseContent","forceSelfClosingEmptyTag","lineSeparator","whiteSpaceAtEndOfSelfclosingTag","indentation","toAsset","image","metadata","basename","process","exit","hash","Promise","all","clone","resize","toBuffer","then","Math","round","png","quality","toString","parseColor","up","toUpperCase","length","hex","rgb","R","Number","parseInt","toPrecision","G","B","toLowerCase","transformProps","rootPath","android","licenseKey","rawProps","lt","versions","node","withDefaults","assetsOutput","background","brandWidth","logoWidth","assetsOutputPath","resolve","logoPath","logo","darkLogoPath","darkLogo","undefined","brandPath","brand","darkBrandPath","darkBrand","darkBackground","executeAddon","isPluginLoggerMode","optionNames","filter","option","join","record","stableKey","Object","keys","sort","map","key","fileNameSuffix","createHash","outputLength","update","digest","writeAndroidAssets","androidOutputPath","props","ratio","suffix","drawableDirPath","canvasSize","canvas","create","channels","r","g","b","alpha","input","composite","toFile","getStoryboard","frameWidth","frameHeight","writeIOSAssets","iosOutputPath","file","flatMap","startsWith","forEach","storyboardPath","colorsSetPath","colors","idiom","color","components","blue","green","info","author","version","logoFileName","imagesSetPath","images","filename","scale","writeWebAssets","htmlTemplatePath","htmlTemplate","prevStyle","querySelector","base64","dataURI","nextStyle","replaceWith","appendChild","prevDiv","nextDiv","writeGenericAssets","requireAddon","addon","require","default"],"sourceRoot":"../../../src","sources":["extras/utils.ts"],"mappings":";;AACA,OAAOA,MAAM,MAAM,QAAQ;AAC3B,OAAOC,YAAY,MAAuB,eAAe;AACzD,OAAOC,EAAE,MAAM,IAAI;AACnB,SAASC,KAAK,IAAIC,SAAS,QAAQ,kBAAkB;AACrD,OAAOC,IAAI,MAAM,MAAM;AACvB,OAAOC,EAAE,MAAM,YAAY;AAE3B,OAAO,KAAKC,UAAU,MAAM,uBAAuB;AACnD,OAAO,KAAKC,SAAS,MAAM,0BAA0B;AACrD,OAAO,KAAKC,QAAQ,MAAM,qBAAqB;AAC/C,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAOC,KAAK,MAAsB,OAAO;AACzC,SAASC,MAAM,QAAQ,WAAW;AAClC,OAAOC,SAAS,MAAoC,eAAe;AAGnE,OAAO,MAAMC,YAAY,GAAG,yBAAyB;AA0DrD,IAAIC,UAAsB,GAAG;EAAEC,IAAI,EAAE;AAAS,CAAC;AAE/C,OAAO,MAAMC,aAAa,GAAIC,KAAiB,IAAK;EAClDH,UAAU,GAAGG,KAAK;AACpB,CAAC;AAED,OAAO,MAAMC,GAAG,GAAG;EACjBC,KAAK,EAAGC,IAAY,IAAK;IACvBC,OAAO,CAACH,GAAG,CACTb,EAAE,CAACiB,GAAG,CACJR,UAAU,CAACC,IAAI,KAAK,QAAQ,GACxB,MAAMF,YAAY,KAAKO,IAAI,EAAE,GAC7B,MAAMA,IAAI,EAChB,CACF,CAAC;EACH,CAAC;EACDG,KAAK,EAAEA,CAACC,KAAa,EAAEJ,IAAY,KAAK;IACtC,IAAIN,UAAU,CAACC,IAAI,KAAK,KAAK,EAAE;MAC7BM,OAAO,CAACH,GAAG,CAAC,KAAKM,KAAK,KAAKnB,EAAE,CAACoB,SAAS,CAACpB,EAAE,CAACqB,IAAI,CAACN,IAAI,CAAC,CAAC,EAAE,CAAC;IAC3D;EACF,CAAC;EACDO,IAAI,EAAGP,IAAY,IAAK;IACtBC,OAAO,CAACH,GAAG,CACTb,EAAE,CAACuB,MAAM,CACPd,UAAU,CAACC,IAAI,KAAK,QAAQ,GACxB,QAAQF,YAAY,KAAKO,IAAI,EAAE,GAC/B,OAAOA,IAAI,EACjB,CACF,CAAC;EACH,CAAC;EACDS,KAAK,EAAEA,CAACC,QAAgB,EAAEC,UAA8C,KAAK;IAC3E,IAAIjB,UAAU,CAACC,IAAI,KAAK,KAAK,EAAE;MAC7BM,OAAO,CAACH,GAAG,CACT,OAAOd,IAAI,CAAC4B,QAAQ,CAAClB,UAAU,CAACmB,GAAG,EAAEH,QAAQ,CAAC,EAAE,IAC7CC,UAAU,IAAI,IAAI,GACf,KAAKA,UAAU,CAACG,KAAK,IAAIH,UAAU,CAACI,MAAM,GAAG,GAC7C,EAAE,CACV,CAAC;IACH;EACF;AACF,CAAC;;AAED;AACA,OAAO,MAAMC,GAAG,GAAG;EACjBC,MAAM,EAAGjC,IAAY,IAAKH,EAAE,CAACqC,YAAY,CAAClC,IAAI,CAAC;EAC/CmC,MAAM,EAAGnC,IAAY,IAAKH,EAAE,CAACuC,UAAU,CAACpC,IAAI,CAAC;EAC7CqC,IAAI,EAAGrC,IAAY,IAAKsC,IAAI,CAACxC,KAAK,CAACD,EAAE,CAACqC,YAAY,CAAClC,IAAI,EAAE,OAAO,CAAC,CAAY;EAC7EuC,OAAO,EAAGvC,IAAY,IAAKH,EAAE,CAAC2C,WAAW,CAACxC,IAAI,EAAE,OAAO,CAAC;EACxDyC,QAAQ,EAAGzC,IAAY,IAAKH,EAAE,CAAC6C,YAAY,CAAC1C,IAAI,EAAE,OAAO,CAAC;EAC1D2C,EAAE,EAAG3C,IAAY,IAAKH,EAAE,CAAC+C,MAAM,CAAC5C,IAAI,EAAE;IAAE6C,KAAK,EAAE,IAAI;IAAEC,SAAS,EAAE;EAAK,CAAC,CAAC;EACvE9B,IAAI,EAAGhB,IAAY,IAAKH,EAAE,CAACqC,YAAY,CAAClC,IAAI,EAAE,OAAO,CAAC;EAEtD+C,SAAS,EAAGC,GAAW,IAAK;IAC1BnD,EAAE,CAACoD,SAAS,CAACD,GAAG,EAAE;MAAEF,SAAS,EAAE;IAAK,CAAC,CAAC;EACxC,CAAC;EACDrB,KAAK,EAAEA,CAACzB,IAAY,EAAEkD,OAAe,KAAK;IACxC,MAAMC,OAAO,GAAGD,OAAO,CAACE,IAAI,CAAC,CAAC;IAC9BvD,EAAE,CAACwD,aAAa,CAACrD,IAAI,EAAEmD,OAAO,KAAK,EAAE,GAAGA,OAAO,GAAGA,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC;EAC5E;AACF,CAAC;AAED,OAAO,MAAMG,SAAS,GAAGA,CAAC5B,QAAgB,EAAEwB,OAAe,KAAK;EAC9DlB,GAAG,CAACP,KAAK,CAACC,QAAQ,EAAEY,IAAI,CAACiB,SAAS,CAACL,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;EACrDpC,GAAG,CAACW,KAAK,CAACC,QAAQ,CAAC;AACrB,CAAC;AAgBD,OAAO,MAAM8B,WAAW,GAAI9B,QAAgB,IAAK;EAC/C,MAAMwB,OAAO,GAAGlB,GAAG,CAAChB,IAAI,CAACU,QAAQ,CAAC;EAElC,OAAO;IACL+B,IAAI,EAAE1D,SAAS,CAACmD,OAAO,CAAC;IACxBQ,aAAa,EAAE;MAAEC,MAAM,EAAE/D,YAAY,CAACsD,OAAO;IAAE;EACjD,CAAC;AACH,CAAC;AAED,OAAO,MAAMU,YAAY,GAAG,MAAAA,CAC1BlC,QAAgB,EAChBwB,OAAe,EACf;EAAES,MAAM;EAAE,GAAGD;AAA6B,CAAC,KACxC;EACH,IAAIA,aAAa,CAACG,SAAS,KAAK,UAAU,EAAE;IAC1C,MAAM;MACJA,SAAS;MACTC,YAAY,GAAG,KAAK;MACpBC,eAAe,GAAG,KAAK;MACvB,GAAGC;IACL,CAAC,GAAGN,aAAa;IAEjB,MAAMO,SAAS,GAAG,MAAM7D,QAAQ,CAAC8D,MAAM,CAAChB,OAAO,EAAE;MAC/CiB,MAAM,EAAE,MAAM;MACdC,eAAe,EAAE,IAAI;MACrBC,UAAU,EAAE,KAAK;MACjBC,OAAO,EAAE,CAACpE,UAAU,EAAE,IAAI4D,YAAY,GAAG,CAAC3D,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;MAC3DoE,OAAO,EAAEZ,MAAM,EAAEhD,IAAI,KAAK,KAAK;MAC/B6D,QAAQ,EAAE,CAACb,MAAM,EAAEc,MAAM,IAAI,CAAC,KAAK,CAAC;MACpC,GAAGT;IACL,CAAC,CAAC;IAEFhC,GAAG,CAACP,KAAK,CACPC,QAAQ,EACRqC,eAAe,GACXE,SAAS,CAACS,OAAO,CAAC,mBAAmB,EAAE,KAAK,CAAC,GAC7CT,SACN,CAAC;IAEDnD,GAAG,CAACW,KAAK,CAACC,QAAQ,CAAC;EACrB,CAAC,MAAM;IACL,MAAM;MAAEmC,SAAS;MAAE,GAAGG;IAAQ,CAAC,GAAGN,aAAa;IAE/C,MAAMO,SAAS,GAAGzD,SAAS,CAAC0C,OAAO,EAAE;MACnCyB,eAAe,EAAE,IAAI;MACrBC,wBAAwB,EAAE,IAAI;MAC9BC,aAAa,EAAE,IAAI;MACnBC,+BAA+B,EAAE,IAAI;MACrCC,WAAW,EAAE,CAACpB,MAAM,EAAEA,MAAM,IAAI,EAAE,KAAK,MAAM;MAC7C,GAAGK;IACL,CAAC,CAAC;IAEFhC,GAAG,CAACP,KAAK,CAACC,QAAQ,EAAEuC,SAAS,CAAC;IAC9BnD,GAAG,CAACW,KAAK,CAACC,QAAQ,CAAC;EACrB;AACF,CAAC;AAUD,MAAMsD,OAAO,GAAG,MAAAA,CAAOtD,QAAgB,EAAEI,KAAa,KAAqB;EACzE,MAAMmD,KAAK,GAAG3E,KAAK,CAACoB,QAAQ,CAAC;EAC7B,MAAM;IAAEwC;EAAO,CAAC,GAAG,MAAMe,KAAK,CAACC,QAAQ,CAAC,CAAC;EAEzC,IAAIhB,MAAM,KAAK,KAAK,IAAIA,MAAM,KAAK,KAAK,EAAE;IACxCpD,GAAG,CAACC,KAAK,CACP,GAAGf,IAAI,CAACmF,QAAQ,CAACzD,QAAQ,CAAC,uBAAuBwC,MAAM,oBACzD,CAAC;IACDkB,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAM,CAACtD,MAAM,EAAEuD,IAAI,CAAC,GAAG,MAAMC,OAAO,CAACC,GAAG,CAAC,CACvCP,KAAK,CACFQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAAC5D,KAAK,CAAC,CACb6D,QAAQ,CAAC,CAAC,CACVC,IAAI,CAAE3D,MAAM,IAAK3B,KAAK,CAAC2B,MAAM,CAAC,CAACiD,QAAQ,CAAC,CAAC,CAAC,CAC1CU,IAAI,CAAC,CAAC;IAAE7D,MAAM,GAAG;EAAE,CAAC,KAAK8D,IAAI,CAACC,KAAK,CAAC/D,MAAM,CAAC,CAAC,EAE/CkD,KAAK,CACFQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAAC5D,KAAK,CAAC,CACbiE,GAAG,CAAC;IAAEC,OAAO,EAAE;EAAI,CAAC,CAAC,CACrBL,QAAQ,CAAC,CAAC,CACVC,IAAI,CAAE3D,MAAM,IAAKA,MAAM,CAACgE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAC/C,CAAC;EAEF,OAAO;IACLjG,IAAI,EAAE0B,QAAQ;IACduD,KAAK;IACLK,IAAI;IACJvD,MAAM;IACND;EACF,CAAC;AACH,CAAC;AAED,MAAMoE,UAAU,GAAIrF,KAAa,IAAK;EACpC,MAAMsF,EAAE,GAAGtF,KAAK,CAACuF,WAAW,CAAC,CAAC,CAAC1B,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;EAExD,IAAIyB,EAAE,CAACE,MAAM,KAAK,CAAC,IAAIF,EAAE,CAACE,MAAM,KAAK,CAAC,EAAE;IACtCvF,GAAG,CAACC,KAAK,CAAC,IAAIF,KAAK,2CAA2C,CAAC;IAC/DuE,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMiB,GAAG,GACPH,EAAE,CAACE,MAAM,KAAK,CAAC,GACX,GAAG,GAAGF,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GACnD,GAAG,GAAGA,EAAE;EAEd,MAAMI,GAAG,GAAG;IACVC,CAAC,EAAE,CAACC,MAAM,CAACC,QAAQ,CAAC,EAAE,GAAGJ,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEK,WAAW,CAAC,EAAE,CAAC;IACpEC,CAAC,EAAE,CAACH,MAAM,CAACC,QAAQ,CAAC,EAAE,GAAGJ,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEK,WAAW,CAAC,EAAE,CAAC;IACpEE,CAAC,EAAE,CAACJ,MAAM,CAACC,QAAQ,CAAC,EAAE,GAAGJ,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEK,WAAW,CAAC,EAAE;EACrE,CAAC;EAED,OAAO;IAAEL,GAAG,EAAEA,GAAG,CAACQ,WAAW,CAAC,CAAC;IAAEP;EAAI,CAAC;AACxC,CAAC;AAED,OAAO,MAAMQ,cAAc,GAAG,MAAAA,CAC5BC,QAAgB,EAChB;EAAEC,OAAO,GAAG,CAAC,CAAC;EAAEC,UAAU;EAAE,GAAGC;AAAiC,CAAC,KAC9D;EACH,IAAI9G,MAAM,CAAC+G,EAAE,CAAChC,OAAO,CAACiC,QAAQ,CAACC,IAAI,EAAE,QAAQ,CAAC,EAAE;IAC9CxG,GAAG,CAACC,KAAK,CAAC,8BAA8B,CAAC;IACzCqE,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMkC,YAAY,GAAG;IACnBC,YAAY,EAAE,mBAAmB;IACjCC,UAAU,EAAE,MAAM;IAClBC,UAAU,EAAE,EAAE;IACdC,SAAS,EAAE,GAAG;IACd,GAAGR;EACL,CAAC;EAED,MAAMS,gBAAgB,GAAG5H,IAAI,CAAC6H,OAAO,CAACb,QAAQ,EAAEO,YAAY,CAACC,YAAY,CAAC;EAC1E,MAAMM,QAAQ,GAAG9H,IAAI,CAAC6H,OAAO,CAACb,QAAQ,EAAEO,YAAY,CAACQ,IAAI,CAAC;EAE1D,MAAMC,YAAY,GAChBT,YAAY,CAACU,QAAQ,IAAI,IAAI,GACzBjI,IAAI,CAAC6H,OAAO,CAACb,QAAQ,EAAEO,YAAY,CAACU,QAAQ,CAAC,GAC7CC,SAAS;EAEf,MAAMC,SAAS,GACbZ,YAAY,CAACa,KAAK,IAAI,IAAI,GACtBpI,IAAI,CAAC6H,OAAO,CAACb,QAAQ,EAAEO,YAAY,CAACa,KAAK,CAAC,GAC1CF,SAAS;EAEf,MAAMG,aAAa,GACjBd,YAAY,CAACe,SAAS,IAAI,IAAI,GAC1BtI,IAAI,CAAC6H,OAAO,CAACb,QAAQ,EAAEO,YAAY,CAACe,SAAS,CAAC,GAC9CJ,SAAS;EAEf,MAAMP,SAAS,GAAGJ,YAAY,CAACI,SAAS,GAAIJ,YAAY,CAACI,SAAS,GAAG,CAAE;EACvE,MAAMD,UAAU,GAAGH,YAAY,CAACG,UAAU,GAAIH,YAAY,CAACG,UAAU,GAAG,CAAE;EAE1E,MAAM,CAACK,IAAI,EAAEE,QAAQ,EAAEG,KAAK,EAAEE,SAAS,CAAC,GAAG,MAAM/C,OAAO,CAACC,GAAG,CAAC,CAC3DR,OAAO,CAAC8C,QAAQ,EAAEH,SAAS,CAAC,EAC5BK,YAAY,IAAI,IAAI,GAAGhD,OAAO,CAACgD,YAAY,EAAEL,SAAS,CAAC,GAAGO,SAAS,EACnEC,SAAS,IAAI,IAAI,GAAGnD,OAAO,CAACmD,SAAS,EAAET,UAAU,CAAC,GAAGQ,SAAS,EAC9DG,aAAa,IAAI,IAAI,GAAGrD,OAAO,CAACqD,aAAa,EAAEX,UAAU,CAAC,GAAGQ,SAAS,CACvE,CAAC;EAEF,MAAMT,UAAU,GAAGvB,UAAU,CAACqB,YAAY,CAACE,UAAU,CAAC;EAEtD,MAAMc,cAAc,GAClBhB,YAAY,CAACgB,cAAc,IAAI,IAAI,GAC/BrC,UAAU,CAACqB,YAAY,CAACgB,cAAc,CAAC,GACvCL,SAAS;EAEf,MAAMM,YAAY,GAChBJ,KAAK,IAAI,IAAI,IACbG,cAAc,IAAI,IAAI,IACtBN,QAAQ,IAAI,IAAI,IAChBK,SAAS,IAAI,IAAI;EAEnB,IAAIpB,UAAU,IAAI,IAAI,IAAI,CAACsB,YAAY,EAAE;IACvC1H,GAAG,CAACS,IAAI,CACN,uEACF,CAAC;EACH;EAEA,MAAMkH,kBAAkB,GAAG/H,UAAU,CAACC,IAAI,KAAK,QAAQ;EAEvD,MAAM+H,WAAW,GAAG;IAClBN,KAAK,EAAEK,kBAAkB,GAAG,OAAO,GAAG,SAAS;IAC/CF,cAAc,EAAEE,kBAAkB,GAAG,gBAAgB,GAAG,mBAAmB;IAC3ER,QAAQ,EAAEQ,kBAAkB,GAAG,UAAU,GAAG,aAAa;IACzDH,SAAS,EAAEG,kBAAkB,GAAG,WAAW,GAAG;EAChD,CAAC;EAED,IAAIvB,UAAU,IAAI,IAAI,IAAIsB,YAAY,EAAE;IACtC,MAAMxE,OAAO,GAAG,CACdoE,KAAK,IAAI,IAAI,GAAGM,WAAW,CAACN,KAAK,GAAG,EAAE,EACtCG,cAAc,IAAI,IAAI,GAAGG,WAAW,CAACH,cAAc,GAAG,EAAE,EACxDN,QAAQ,IAAI,IAAI,GAAGS,WAAW,CAACT,QAAQ,GAAG,EAAE,EAC5CK,SAAS,IAAI,IAAI,GAAGI,WAAW,CAACJ,SAAS,GAAG,EAAE,CAC/C,CACEK,MAAM,CAAEC,MAAM,IAAKA,MAAM,KAAK,EAAE,CAAC,CACjCC,IAAI,CAAC,IAAI,CAAC;IAEb/H,GAAG,CAACC,KAAK,CAAC,qDAAqDiD,OAAO,GAAG,CAAC;IAC1EoB,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,IAAI+C,KAAK,IAAI,IAAI,IAAIE,SAAS,IAAI,IAAI,EAAE;IACtCxH,GAAG,CAACC,KAAK,CACP,GAAG2H,WAAW,CAACJ,SAAS,oCAAoCI,WAAW,CAACN,KAAK,GAC/E,CAAC;IAEDhD,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,IAAIsC,SAAS,GAAGJ,YAAY,CAACI,SAAS,EAAE;IACtC7G,GAAG,CAACS,IAAI,CACN,8DAA8DoG,SAAS,KACzE,CAAC;EACH;EACA,IAAID,UAAU,GAAGH,YAAY,CAACG,UAAU,EAAE;IACxC5G,GAAG,CAACS,IAAI,CACN,+DAA+DmG,UAAU,KAC3E,CAAC;EACH;EAEA,MAAMoB,MAA8B,GAAG;IACrCrB,UAAU,EAAEA,UAAU,CAACnB,GAAG;IAC1BiC,cAAc,EAAEA,cAAc,EAAEjC,GAAG,IAAI,EAAE;IACzCyB,IAAI,EAAEA,IAAI,CAACzC,IAAI;IACf2C,QAAQ,EAAEA,QAAQ,EAAE3C,IAAI,IAAI,EAAE;IAC9B8C,KAAK,EAAEA,KAAK,EAAE9C,IAAI,IAAI,EAAE;IACxBgD,SAAS,EAAEA,SAAS,EAAEhD,IAAI,IAAI;EAChC,CAAC;EAED,MAAMyD,SAAS,GAAGC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC,CAClCI,IAAI,CAAC,CAAC,CACNC,GAAG,CAAEC,GAAG,IAAKN,MAAM,CAACM,GAAG,CAAC,CAAC,CACzBP,IAAI,CAAC,CAAC;EAET,MAAMQ,cAAc,GAAG1J,MAAM,CAC1B2J,UAAU,CAAC,UAAU,EAAE;IAAEC,YAAY,EAAE;EAAE,CAAC,CAAC,CAC3CC,MAAM,CAACT,SAAS,CAAC,CACjBU,MAAM,CAAC,KAAK,CAAC,CACb3C,WAAW,CAAC,CAAC;EAEhB,OAAO;IACLG,OAAO;IACPW,gBAAgB;IAChBV,UAAU;IACVsB,YAAY;IACZf,UAAU;IACVc,cAAc;IACdR,IAAI;IACJE,QAAQ;IACRG,KAAK;IACLE,SAAS;IACTe;EACF,CAAC;AACH,CAAC;AAID,OAAO,MAAMK,kBAAkB,GAAG,MAAAA,CAAO;EACvCC,iBAAiB;EACjBC;AAIF,CAAC,KAAK;EACJ,MAAM;IAAE7B,IAAI;IAAEK;EAAM,CAAC,GAAGwB,KAAK;EAE7B,IAAI7B,IAAI,CAACjG,KAAK,GAAG,GAAG,IAAIiG,IAAI,CAAChG,MAAM,GAAG,GAAG,EAAE;IACzC,OAAOjB,GAAG,CAACS,IAAI,CACb,+FACF,CAAC;EACH;EAEA,IAAI6G,KAAK,IAAI,IAAI,KAAKA,KAAK,CAACtG,KAAK,GAAG,GAAG,IAAIsG,KAAK,CAACrG,MAAM,GAAG,EAAE,CAAC,EAAE;IAC7D,OAAOjB,GAAG,CAACS,IAAI,CACb,+FACF,CAAC;EACH;EAEA,IAAIwG,IAAI,CAACjG,KAAK,GAAG,GAAG,IAAIiG,IAAI,CAAChG,MAAM,GAAG,GAAG,EAAE;IACzCjB,GAAG,CAACS,IAAI,CAAC,8DAA8D,CAAC;EAC1E;EAEAT,GAAG,CAACK,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;EAC1Ba,GAAG,CAACe,SAAS,CAAC4G,iBAAiB,CAAC;EAEhC,MAAMpE,OAAO,CAACC,GAAG,CACf,CACE;IAAEqE,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAO,CAAC,EAC5B;IAAED,KAAK,EAAE,GAAG;IAAEC,MAAM,EAAE;EAAO,CAAC,EAC9B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAQ,CAAC,EAC7B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAS,CAAC,EAC9B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAU,CAAC,CAChC,CAACX,GAAG,CAAC,CAAC;IAAEU,KAAK;IAAEC;EAAO,CAAC,KAAK;IAC3B,MAAMC,eAAe,GAAG/J,IAAI,CAAC6H,OAAO,CAClC8B,iBAAiB,EACjB,YAAYG,MAAM,EACpB,CAAC;IAED9H,GAAG,CAACe,SAAS,CAACgH,eAAe,CAAC;;IAE9B;IACA,MAAMC,UAAU,GAAG,GAAG,GAAGH,KAAK;;IAE9B;IACA,MAAMI,MAAM,GAAG3J,KAAK,CAAC;MACnB4J,MAAM,EAAE;QACNpI,KAAK,EAAEkI,UAAU;QACjBjI,MAAM,EAAEiI,UAAU;QAClBG,QAAQ,EAAE,CAAC;QACX1C,UAAU,EAAE;UACV2C,CAAC,EAAE,GAAG;UACNC,CAAC,EAAE,GAAG;UACNC,CAAC,EAAE,GAAG;UACNC,KAAK,EAAE;QACT;MACF;IACF,CAAC,CAAC;IAEF,MAAM7I,QAAQ,GAAG1B,IAAI,CAAC6H,OAAO,CAACkC,eAAe,EAAE,qBAAqB,CAAC;IAErE,OAAOhC,IAAI,CAAC9C,KAAK,CACdQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAACqC,IAAI,CAACjG,KAAK,GAAG+H,KAAK,CAAC,CAC1BlE,QAAQ,CAAC,CAAC,CACVC,IAAI,CAAE4E,KAAK,IACVP,MAAM,CAACQ,SAAS,CAAC,CAAC;MAAED;IAAM,CAAC,CAAC,CAAC,CAACzE,GAAG,CAAC;MAAEC,OAAO,EAAE;IAAI,CAAC,CAAC,CAAC0E,MAAM,CAAChJ,QAAQ,CACrE,CAAC,CACAkE,IAAI,CAAC,MAAM;MACV9E,GAAG,CAACW,KAAK,CAACC,QAAQ,EAAE;QAClBI,KAAK,EAAEkI,UAAU;QACjBjI,MAAM,EAAEiI;MACV,CAAC,CAAC;IACJ,CAAC,CAAC;EACN,CAAC,CACH,CAAC;AACH,CAAC;AAED,MAAMW,aAAa,GAAIf,KAAY,IAAK;EACtC,MAAM;IAAEnC,UAAU;IAAEM,IAAI;IAAEsB;EAAe,CAAC,GAAGO,KAAK;EAElD,MAAM;IAAEpD,CAAC;IAAEI,CAAC;IAAEC;EAAE,CAAC,GAAGY,UAAU,CAAClB,GAAG;EAClC,MAAMqE,UAAU,GAAG,GAAG;EACtB,MAAMC,WAAW,GAAG,GAAG;EAEvB,OAAOtK,MAAM;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mEAAmEqK,UAAU,aAAaC,WAAW;AACrG;AACA;AACA,qKAAqKxB,cAAc;AACnL,uDAAuD,CAACuB,UAAU,GAAG7C,IAAI,CAACjG,KAAK,IAAI,CAAC,QAAQ,CAAC+I,WAAW,GAAG9C,IAAI,CAAChG,MAAM,IAAI,CAAC,YAAYgG,IAAI,CAACjG,KAAK,aAAaiG,IAAI,CAAChG,MAAM;AACzK;AACA;AACA;AACA;AACA;AACA;AACA,kFAAkFsH,cAAc;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsCA,cAAc,YAAYtB,IAAI,CAACjG,KAAK,aAAaiG,IAAI,CAAChG,MAAM;AAClG,iDAAiDsH,cAAc;AAC/D,0BAA0B7C,CAAC,YAAYI,CAAC,WAAWC,CAAC;AACpD;AACA;AACA;AACA,CAAC;AACD,CAAC;AAED,OAAO,MAAMiE,cAAc,GAAG,MAAAA,CAAO;EACnCC,aAAa;EACbnB;AAIF,CAAC,KAAK;EACJ,MAAM;IAAEnC,UAAU;IAAEM,IAAI;IAAEsB;EAAe,CAAC,GAAGO,KAAK;EAElD9I,GAAG,CAACK,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;EACtBa,GAAG,CAACe,SAAS,CAACgI,aAAa,CAAC;;EAE5B;EACA/I,GAAG,CACAO,OAAO,CAACwI,aAAa,CAAC,CACtBpC,MAAM,CAAEqC,IAAI,IAAKA,IAAI,KAAK,iBAAiB,IAAIA,IAAI,KAAK,iBAAiB,CAAC,CAC1E7B,GAAG,CAAE6B,IAAI,IAAKhL,IAAI,CAAC6I,IAAI,CAACkC,aAAa,EAAEC,IAAI,CAAC,CAAC,CAC7CC,OAAO,CAAEjI,GAAG,IACXhB,GAAG,CACAO,OAAO,CAACS,GAAG,CAAC,CACZ2F,MAAM,CAAEqC,IAAI,IAAKA,IAAI,CAACE,UAAU,CAAC,YAAY,CAAC,CAAC,CAC/C/B,GAAG,CAAE6B,IAAI,IAAKhL,IAAI,CAAC6I,IAAI,CAAC7F,GAAG,EAAEgI,IAAI,CAAC,CACvC,CAAC,CACAG,OAAO,CAAEH,IAAI,IAAK;IACjBhJ,GAAG,CAACW,EAAE,CAACqI,IAAI,CAAC;EACd,CAAC,CAAC;EAEJ,MAAMI,cAAc,GAAGpL,IAAI,CAAC6H,OAAO,CAACkD,aAAa,EAAE,uBAAuB,CAAC;EAE3E,MAAMnH,YAAY,CAACwH,cAAc,EAAET,aAAa,CAACf,KAAK,CAAC,EAAE;IACvD/F,SAAS,EAAE,cAAc;IACzBiB,+BAA+B,EAAE;EACnC,CAAC,CAAC;EAEF,MAAMuG,aAAa,GAAGrL,IAAI,CAAC6H,OAAO,CAChCkD,aAAa,EACb,iBAAiB,EACjB,wBAAwB1B,cAAc,WACxC,CAAC;EAEDrH,GAAG,CAACe,SAAS,CAACsI,aAAa,CAAC;EAE5B/H,SAAS,CAACtD,IAAI,CAAC6H,OAAO,CAACwD,aAAa,EAAE,eAAe,CAAC,EAAE;IACtDC,MAAM,EAAE,CACN;MACEC,KAAK,EAAE,WAAW;MAClBC,KAAK,EAAE;QACL,aAAa,EAAE,MAAM;QACrBC,UAAU,EAAE;UACVC,IAAI,EAAEjE,UAAU,CAAClB,GAAG,CAACM,CAAC;UACtB8E,KAAK,EAAElE,UAAU,CAAClB,GAAG,CAACK,CAAC;UACvB1F,GAAG,EAAEuG,UAAU,CAAClB,GAAG,CAACC,CAAC;UACrB+D,KAAK,EAAE;QACT;MACF;IACF,CAAC,CACF;IACDqB,IAAI,EAAE;MACJC,MAAM,EAAE,OAAO;MACfC,OAAO,EAAE;IACX;EACF,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAG,QAAQ1C,cAAc,EAAE;EAE7C,MAAM2C,aAAa,GAAGhM,IAAI,CAAC6H,OAAO,CAChCkD,aAAa,EACb,iBAAiB,EACjB,kBAAkB1B,cAAc,WAClC,CAAC;EAEDrH,GAAG,CAACe,SAAS,CAACiJ,aAAa,CAAC;EAE5B1I,SAAS,CAACtD,IAAI,CAAC6H,OAAO,CAACmE,aAAa,EAAE,eAAe,CAAC,EAAE;IACtDC,MAAM,EAAE,CACN;MACEV,KAAK,EAAE,WAAW;MAClBW,QAAQ,EAAE,GAAGH,YAAY,MAAM;MAC/BI,KAAK,EAAE;IACT,CAAC,EACD;MACEZ,KAAK,EAAE,WAAW;MAClBW,QAAQ,EAAE,GAAGH,YAAY,SAAS;MAClCI,KAAK,EAAE;IACT,CAAC,EACD;MACEZ,KAAK,EAAE,WAAW;MAClBW,QAAQ,EAAE,GAAGH,YAAY,SAAS;MAClCI,KAAK,EAAE;IACT,CAAC,CACF;IACDP,IAAI,EAAE;MACJC,MAAM,EAAE,OAAO;MACfC,OAAO,EAAE;IACX;EACF,CAAC,CAAC;EAEF,MAAMvG,OAAO,CAACC,GAAG,CACf,CACE;IAAEqE,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAG,CAAC,EACxB;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAM,CAAC,EAC3B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAM,CAAC,CAC5B,CAACX,GAAG,CAAC,CAAC;IAAEU,KAAK;IAAEC;EAAO,CAAC,KAAK;IAC3B,MAAMpI,QAAQ,GAAG1B,IAAI,CAAC6H,OAAO,CAC3BmE,aAAa,EACb,GAAGD,YAAY,GAAGjC,MAAM,MAC1B,CAAC;IAED,OAAO/B,IAAI,CAAC9C,KAAK,CACdQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAACqC,IAAI,CAACjG,KAAK,GAAG+H,KAAK,CAAC,CAC1B9D,GAAG,CAAC;MAAEC,OAAO,EAAE;IAAI,CAAC,CAAC,CACrB0E,MAAM,CAAChJ,QAAQ,CAAC,CAChBkE,IAAI,CAAC,CAAC;MAAE9D,KAAK;MAAEC;IAAO,CAAC,KAAK;MAC3BjB,GAAG,CAACW,KAAK,CAACC,QAAQ,EAAE;QAAEI,KAAK;QAAEC;MAAO,CAAC,CAAC;IACxC,CAAC,CAAC;EACN,CAAC,CACH,CAAC;AACH,CAAC;AAED,OAAO,MAAMqK,cAAc,GAAG,MAAAA,CAAO;EACnCC,gBAAgB;EAChBzC;AAIF,CAAC,KAAK;EACJ,MAAM;IAAEnC,UAAU;IAAEM;EAAK,CAAC,GAAG6B,KAAK;EAElC9I,GAAG,CAACK,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;EAEtB,MAAMmL,YAAY,GAAG9I,WAAW,CAAC6I,gBAAgB,CAAC;EAClD,MAAM;IAAEnI;EAAO,CAAC,GAAG,MAAM6D,IAAI,CAAC9C,KAAK,CAACC,QAAQ,CAAC,CAAC;EAC9C,MAAMqH,SAAS,GAAGD,YAAY,CAAC7I,IAAI,CAAC+I,aAAa,CAAC,mBAAmB,CAAC;EAEtE,MAAMC,MAAM,GAAG,CACbvI,MAAM,KAAK,KAAK,GACZlC,GAAG,CAACC,MAAM,CAAC8F,IAAI,CAAC/H,IAAI,CAAC,GACrB,MAAM+H,IAAI,CAAC9C,KAAK,CACbQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAACG,IAAI,CAACC,KAAK,CAACiC,IAAI,CAACjG,KAAK,GAAG,CAAC,CAAC,CAAC,CAClCiE,GAAG,CAAC;IAAEC,OAAO,EAAE;EAAI,CAAC,CAAC,CACrBL,QAAQ,CAAC,CAAC,EACjBM,QAAQ,CAAC,QAAQ,CAAC;EAEpB,MAAMyG,OAAO,GAAG,cAAcxI,MAAM,GAAG,SAAS,GAAG,KAAK,WAAWuI,MAAM,EAAE;EAE3E,MAAME,SAAS,GAAG5M,SAAS,CAACQ,MAAM;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4BkH,UAAU,CAACnB,GAAG;AAC1C;AACA;AACA,wBAAwBoG,OAAO;AAC/B,iBAAiB3E,IAAI,CAACjG,KAAK;AAC3B,kBAAkBiG,IAAI,CAAChG,MAAM;AAC7B;AACA;AACA,GAAG,CAAC;EAEF,IAAIwK,SAAS,IAAI,IAAI,EAAE;IACrBA,SAAS,CAACK,WAAW,CAACD,SAAS,CAAC;EAClC,CAAC,MAAM;IACLL,YAAY,CAAC7I,IAAI,CAAC+I,aAAa,CAAC,MAAM,CAAC,EAAEK,WAAW,CAACF,SAAS,CAAC;EACjE;EAEA,MAAMG,OAAO,GAAGR,YAAY,CAAC7I,IAAI,CAAC+I,aAAa,CAAC,aAAa,CAAC;EAE9D,MAAMO,OAAO,GAAGhN,SAAS,CAACQ,MAAM;AAClC;AACA;AACA;AACA,GAAG,CAAC;EAEF,IAAIuM,OAAO,IAAI,IAAI,EAAE;IACnBA,OAAO,CAACF,WAAW,CAACG,OAAO,CAAC;EAC9B,CAAC,MAAM;IACLT,YAAY,CAAC7I,IAAI,CAAC+I,aAAa,CAAC,MAAM,CAAC,EAAEK,WAAW,CAACE,OAAO,CAAC;EAC/D;EAEA,MAAMnJ,YAAY,CAACyI,gBAAgB,EAAEC,YAAY,CAAC7I,IAAI,CAACwC,QAAQ,CAAC,CAAC,EAAE;IACjE,GAAGqG,YAAY,CAAC5I,aAAa;IAC7BG,SAAS,EAAE,UAAU;IACrBC,YAAY,EAAE;EAChB,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMkJ,kBAAkB,GAAG,MAAAA,CAAO;EAAEpD;AAAwB,CAAC,KAAK;EACvE,MAAM;IAAEhC,gBAAgB;IAAEH,UAAU;IAAEM;EAAK,CAAC,GAAG6B,KAAK;EAEpD9I,GAAG,CAACK,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC;EACzBa,GAAG,CAACe,SAAS,CAAC6E,gBAAgB,CAAC;EAE/BtE,SAAS,CAACtD,IAAI,CAAC6H,OAAO,CAACD,gBAAgB,EAAE,eAAe,CAAC,EAAE;IACzDH,UAAU,EAAEA,UAAU,CAACnB,GAAG;IAC1ByB,IAAI,EAAE;MACJjG,KAAK,EAAEiG,IAAI,CAACjG,KAAK;MACjBC,MAAM,EAAEgG,IAAI,CAAChG;IACf;EACF,CAAoB,CAAC;EAErB,MAAMwD,OAAO,CAACC,GAAG,CACf,CACE;IAAEqE,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAG,CAAC,EACxB;IAAED,KAAK,EAAE,GAAG;IAAEC,MAAM,EAAE;EAAQ,CAAC,EAC/B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAM,CAAC,EAC3B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAM,CAAC,EAC3B;IAAED,KAAK,EAAE,CAAC;IAAEC,MAAM,EAAE;EAAM,CAAC,CAC5B,CAACX,GAAG,CAAC,CAAC;IAAEU,KAAK;IAAEC;EAAO,CAAC,KAAK;IAC3B,MAAMpI,QAAQ,GAAG1B,IAAI,CAAC6H,OAAO,CAACD,gBAAgB,EAAE,OAAOkC,MAAM,MAAM,CAAC;IAEpE,OAAO/B,IAAI,CAAC9C,KAAK,CACdQ,KAAK,CAAC,CAAC,CACPC,MAAM,CAACG,IAAI,CAACC,KAAK,CAACiC,IAAI,CAACjG,KAAK,GAAG+H,KAAK,CAAC,CAAC,CACtC9D,GAAG,CAAC;MAAEC,OAAO,EAAE;IAAI,CAAC,CAAC,CACrB0E,MAAM,CAAChJ,QAAQ,CAAC,CAChBkE,IAAI,CAAC,CAAC;MAAE9D,KAAK;MAAEC;IAAO,CAAC,KAAK;MAC3BjB,GAAG,CAACW,KAAK,CAACC,QAAQ,EAAE;QAAEI,KAAK;QAAEC;MAAO,CAAC,CAAC;IACxC,CAAC,CAAC;EACN,CAAC,CACH,CAAC;AACH,CAAC;AASD,OAAO,MAAMkL,YAAY,GAAGA,CAAC;EAC3BzE,YAAY;EACZtB;AACK,CAAC,KA0BS;EACf,IAAIA,UAAU,IAAI,IAAI,IAAIsB,YAAY,EAAE;IACtC,IAAI;MACF,MAAM0E,KAAK,GAAGC,OAAO,CAAC,SAAS,CAAC;MAChC,OAAO,SAAS,IAAID,KAAK,GAAGA,KAAK,CAACE,OAAO,GAAGF,KAAK;IACnD,CAAC,CAAC,MAAM;MACN;IACF;EACF;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -1,5 +1,5 @@
1
1
  import * as Expo from "@expo/config-plugins";
2
- import { type AddonConfig, type Props } from "../generate";
2
+ import { type AddonConfig, type Props } from "../utils";
3
3
  declare const _default: {
4
4
  execute: ({ props, androidOutputPath, iosOutputPath, htmlTemplatePath, }: AddonConfig) => Promise<void>;
5
5
  writeAndroidAssets: ({ androidOutputPath, props, }: {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/extras/addon/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAS7C,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,KAAK,EAOX,MAAM,UAAU,CAAC;;8EA4wBf,WAAW;wDA7hBX;QACD,iBAAiB,EAAE,MAAM,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC;KACd;gDAkHE;QACD,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,KAAK,CAAC;KACd;mDA4NE;QACD,gBAAgB,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,KAAK,CAAC;KACd;oCAmH4C;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE;iDA4D1D;QACD,MAAM,EAAE,IAAI,CAAC,uBAAuB,CAAC;QACrC,KAAK,EAAE,KAAK,CAAC;KACd,KAAG,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC;;AA4EzC,wBAO4C"}
@@ -0,0 +1,8 @@
1
+ import * as Expo from "@expo/config-plugins";
2
+ import { type BootSplashPluginConfig, PACKAGE_NAME } from "./utils";
3
+ export declare const withBootSplash: Expo.ConfigPlugin<(Partial<BootSplashPluginConfig> & {
4
+ logo: string;
5
+ }) | undefined>;
6
+ declare const _default: (config: BootSplashPluginConfig) => [typeof PACKAGE_NAME, BootSplashPluginConfig];
7
+ export default _default;
8
+ //# sourceMappingURL=expo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expo.d.ts","sourceRoot":"","sources":["../../../../src/extras/expo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAS7C,OAAO,EACL,KAAK,sBAAsB,EAG3B,YAAY,EAQb,MAAM,SAAS,CAAC;AA4SjB,eAAO,MAAM,cAAc;UACkB,MAAM;eA8CnC,CAAC;yBAGf,QAAQ,sBAAsB,KAC7B,CAAC,OAAO,YAAY,EAAE,sBAAsB,CAAC;AAFhD,wBAE2E"}
@@ -0,0 +1,17 @@
1
+ export declare const generate: ({ platforms, html, flavor, plist, ...rawProps }: {
2
+ platforms: Array<"android" | "ios" | "web">;
3
+ html: string;
4
+ flavor: string;
5
+ plist?: string;
6
+ logo: string;
7
+ background: string;
8
+ logoWidth: number;
9
+ assetsOutput: string;
10
+ licenseKey?: string;
11
+ brand?: string;
12
+ brandWidth: number;
13
+ darkBackground?: string;
14
+ darkLogo?: string;
15
+ darkBrand?: string;
16
+ }) => Promise<void>;
17
+ //# sourceMappingURL=generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../../src/extras/generate.ts"],"names":[],"mappings":"AAoKA,eAAO,MAAM,QAAQ,GAAU,iDAM5B;IACD,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,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,kBA+NA,CAAC"}