@rnx-kit/cli 0.12.2 → 0.12.3
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/CHANGELOG.md +7 -0
- package/coverage/clover.xml +146 -119
- package/coverage/coverage-final.json +1 -1
- package/coverage/lcov-report/index.html +20 -20
- package/coverage/lcov-report/src/bundle/index.html +1 -1
- package/coverage/lcov-report/src/bundle/kit-config.ts.html +1 -1
- package/coverage/lcov-report/src/bundle/metro.ts.html +1 -1
- package/coverage/lcov-report/src/bundle/overrides.ts.html +1 -1
- package/coverage/lcov-report/src/copy-assets.ts.html +480 -111
- package/coverage/lcov-report/src/index.html +21 -21
- package/coverage/lcov-report/src/metro-config.ts.html +1 -1
- package/coverage/lcov-report/src/typescript/index.html +1 -1
- package/coverage/lcov-report/src/typescript/project-cache.ts.html +1 -1
- package/coverage/lcov.info +266 -219
- package/lib/copy-assets.d.ts +10 -1
- package/lib/copy-assets.d.ts.map +1 -1
- package/lib/copy-assets.js +111 -32
- package/lib/copy-assets.js.map +1 -1
- package/lib/test.js +3 -6
- package/lib/test.js.map +1 -1
- package/package.json +1 -1
- package/src/copy-assets.ts +169 -46
- package/src/test.ts +3 -3
- package/test/__mocks__/child_process.js +5 -0
- package/test/__mocks__/fs-extra.js +2 -0
- package/test/__mocks__/fs.js +19 -0
- package/test/copy-assets/assembleAarBundle.test.ts +306 -0
- package/test/{copy-assets.test.ts → copy-assets/copyAssets.test.ts} +3 -13
- package/test/copy-assets/helpers.ts +13 -0
package/lib/copy-assets.js
CHANGED
|
@@ -32,7 +32,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
32
32
|
});
|
|
33
33
|
};
|
|
34
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.rnxCopyAssetsCommand = exports.copyProjectAssets = exports.gatherConfigs = exports.copyAssets = exports.versionOf = void 0;
|
|
35
|
+
exports.rnxCopyAssetsCommand = exports.copyProjectAssets = exports.gatherConfigs = exports.copyAssets = exports.assembleAarBundle = exports.versionOf = void 0;
|
|
36
36
|
const console_1 = require("@rnx-kit/console");
|
|
37
37
|
const array_1 = require("@rnx-kit/tools-language/array");
|
|
38
38
|
const package_1 = require("@rnx-kit/tools-node/package");
|
|
@@ -41,6 +41,14 @@ const child_process_1 = require("child_process");
|
|
|
41
41
|
const fs = __importStar(require("fs-extra"));
|
|
42
42
|
const os = __importStar(require("os"));
|
|
43
43
|
const path = __importStar(require("path"));
|
|
44
|
+
const defaultAndroidConfig = {
|
|
45
|
+
androidPluginVersion: "7.1.3",
|
|
46
|
+
compileSdkVersion: 31,
|
|
47
|
+
defaultConfig: {
|
|
48
|
+
minSdkVersion: 23,
|
|
49
|
+
targetSdkVersion: 29,
|
|
50
|
+
},
|
|
51
|
+
};
|
|
44
52
|
function ensureOption(options, opt, flag = opt) {
|
|
45
53
|
if (options[opt] == null) {
|
|
46
54
|
(0, console_1.error)(`Missing required option: --${flag}`);
|
|
@@ -56,6 +64,9 @@ function findGradleProject(projectRoot) {
|
|
|
56
64
|
}
|
|
57
65
|
return undefined;
|
|
58
66
|
}
|
|
67
|
+
function gradleTargetName(packageName) {
|
|
68
|
+
return (packageName.startsWith("@") ? packageName.slice(1) : packageName).replace(/[^\w\-.]+/g, "_");
|
|
69
|
+
}
|
|
59
70
|
function isAssetsConfig(config) {
|
|
60
71
|
return typeof config === "object" && config !== null && "getAssets" in config;
|
|
61
72
|
}
|
|
@@ -63,21 +74,34 @@ function keysOf(record) {
|
|
|
63
74
|
return record ? Object.keys(record) : [];
|
|
64
75
|
}
|
|
65
76
|
function versionOf(pkgName) {
|
|
66
|
-
const
|
|
77
|
+
const packageDir = (0, package_1.findPackageDependencyDir)(pkgName);
|
|
78
|
+
if (!packageDir) {
|
|
79
|
+
throw new Error(`Could not find module '${pkgName}'`);
|
|
80
|
+
}
|
|
81
|
+
const { version } = (0, package_1.readPackage)(packageDir);
|
|
67
82
|
return version;
|
|
68
83
|
}
|
|
69
84
|
exports.versionOf = versionOf;
|
|
70
85
|
function getAndroidPaths(context, packageName, { targetName, version, output }) {
|
|
71
|
-
const projectRoot =
|
|
86
|
+
const projectRoot = (0, package_1.findPackageDependencyDir)(packageName);
|
|
87
|
+
if (!projectRoot) {
|
|
88
|
+
throw new Error(`Could not find module '${packageName}'`);
|
|
89
|
+
}
|
|
90
|
+
const gradleFriendlyName = targetName || gradleTargetName(packageName);
|
|
91
|
+
const aarVersion = version || versionOf(packageName);
|
|
72
92
|
switch (packageName) {
|
|
73
93
|
case "hermes-engine":
|
|
74
94
|
return {
|
|
95
|
+
targetName: gradleFriendlyName,
|
|
96
|
+
version: aarVersion,
|
|
75
97
|
projectRoot,
|
|
76
98
|
output: path.join(projectRoot, "android", "hermes-release.aar"),
|
|
77
99
|
destination: path.join(context.options.assetsDest, "aar", `hermes-release-${versionOf(packageName)}.aar`),
|
|
78
100
|
};
|
|
79
101
|
case "react-native":
|
|
80
102
|
return {
|
|
103
|
+
targetName: gradleFriendlyName,
|
|
104
|
+
version: aarVersion,
|
|
81
105
|
projectRoot,
|
|
82
106
|
output: path.join(projectRoot, "android"),
|
|
83
107
|
destination: path.join(context.options.assetsDest, "aar", "react-native"),
|
|
@@ -85,17 +109,20 @@ function getAndroidPaths(context, packageName, { targetName, version, output })
|
|
|
85
109
|
default: {
|
|
86
110
|
const androidProject = findGradleProject(projectRoot);
|
|
87
111
|
return {
|
|
112
|
+
targetName: gradleFriendlyName,
|
|
113
|
+
version: aarVersion,
|
|
88
114
|
projectRoot,
|
|
89
115
|
androidProject,
|
|
90
116
|
output: output ||
|
|
91
117
|
(androidProject &&
|
|
92
|
-
path.join(androidProject, "build", "outputs", "aar", `${
|
|
93
|
-
destination: path.join(context.options.assetsDest, "aar", `${
|
|
118
|
+
path.join(androidProject, "build", "outputs", "aar", `${gradleFriendlyName}-release.aar`)),
|
|
119
|
+
destination: path.join(context.options.assetsDest, "aar", `${gradleFriendlyName}-${aarVersion}.aar`),
|
|
94
120
|
};
|
|
95
121
|
}
|
|
96
122
|
}
|
|
97
123
|
}
|
|
98
124
|
function assembleAarBundle(context, packageName, { aar }) {
|
|
125
|
+
var _a, _b, _c, _d, _e, _f;
|
|
99
126
|
return __awaiter(this, void 0, void 0, function* () {
|
|
100
127
|
if (!aar) {
|
|
101
128
|
return;
|
|
@@ -106,44 +133,96 @@ function assembleAarBundle(context, packageName, { aar }) {
|
|
|
106
133
|
(0, console_1.warn)(`Skipped \`${packageName}\`: cannot find \`gradlew\``);
|
|
107
134
|
return;
|
|
108
135
|
}
|
|
109
|
-
const { androidProject, output } = getAndroidPaths(context, packageName, aar);
|
|
136
|
+
const { targetName, version, androidProject, output } = getAndroidPaths(context, packageName, aar);
|
|
110
137
|
if (!androidProject || !output) {
|
|
111
138
|
(0, console_1.warn)(`Skipped \`${packageName}\`: cannot find \`build.gradle\``);
|
|
112
139
|
return;
|
|
113
140
|
}
|
|
114
|
-
const {
|
|
141
|
+
const { env: customEnv, dependencies, android } = aar;
|
|
142
|
+
const env = Object.assign(Object.assign({ NODE_MODULES_PATH: path.join(process.cwd(), "node_modules"), REACT_NATIVE_VERSION: versionOf("react-native") }, process.env), customEnv);
|
|
143
|
+
const outputDir = path.join(context.options.assetsDest, "aar");
|
|
144
|
+
yield fs.ensureDir(outputDir);
|
|
145
|
+
const dest = path.join(outputDir, `${targetName}-${version}.aar`);
|
|
115
146
|
const targets = [`:${targetName}:assembleRelease`];
|
|
116
|
-
const targetsToCopy = [];
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
147
|
+
const targetsToCopy = [[output, dest]];
|
|
148
|
+
const settings = path.join(androidProject, "settings.gradle");
|
|
149
|
+
if (fs.existsSync(settings)) {
|
|
150
|
+
if (dependencies) {
|
|
151
|
+
for (const [dependencyName, aar] of Object.entries(dependencies)) {
|
|
152
|
+
const { targetName, output, destination } = getAndroidPaths(context, dependencyName, aar);
|
|
153
|
+
if (output) {
|
|
154
|
+
if (!fs.existsSync(output)) {
|
|
155
|
+
targets.push(`:${targetName}:assembleRelease`);
|
|
156
|
+
targetsToCopy.push([output, destination]);
|
|
157
|
+
}
|
|
158
|
+
else if (!fs.existsSync(destination)) {
|
|
159
|
+
targetsToCopy.push([output, destination]);
|
|
160
|
+
}
|
|
127
161
|
}
|
|
128
162
|
}
|
|
129
163
|
}
|
|
164
|
+
// Run only one Gradle task at a time
|
|
165
|
+
(0, child_process_1.spawnSync)(gradlew, targets, { cwd: androidProject, stdio: "inherit", env });
|
|
130
166
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
167
|
+
else {
|
|
168
|
+
const reactNativePath = (0, package_1.findPackageDependencyDir)("react-native");
|
|
169
|
+
if (!reactNativePath) {
|
|
170
|
+
throw new Error("Could not find 'react-native'");
|
|
171
|
+
}
|
|
172
|
+
const buildDir = path.join(process.cwd(), "node_modules", ".rnx-gradle-build", targetName);
|
|
173
|
+
const compileSdkVersion = (_a = android === null || android === void 0 ? void 0 : android.compileSdkVersion) !== null && _a !== void 0 ? _a : defaultAndroidConfig.compileSdkVersion;
|
|
174
|
+
const minSdkVersion = (_c = (_b = android === null || android === void 0 ? void 0 : android.defaultConfig) === null || _b === void 0 ? void 0 : _b.minSdkVersion) !== null && _c !== void 0 ? _c : defaultAndroidConfig.defaultConfig.minSdkVersion;
|
|
175
|
+
const targetSdkVersion = (_e = (_d = android === null || android === void 0 ? void 0 : android.defaultConfig) === null || _d === void 0 ? void 0 : _d.targetSdkVersion) !== null && _e !== void 0 ? _e : defaultAndroidConfig.defaultConfig.targetSdkVersion;
|
|
176
|
+
const androidPluginVersion = (_f = android === null || android === void 0 ? void 0 : android.androidPluginVersion) !== null && _f !== void 0 ? _f : defaultAndroidConfig.androidPluginVersion;
|
|
177
|
+
const buildRelativeReactNativePath = path.relative(buildDir, reactNativePath);
|
|
178
|
+
const buildGradle = [
|
|
179
|
+
"buildscript {",
|
|
180
|
+
" ext {",
|
|
181
|
+
` compileSdkVersion = ${compileSdkVersion}`,
|
|
182
|
+
` minSdkVersion = ${minSdkVersion}`,
|
|
183
|
+
` targetSdkVersion = ${targetSdkVersion}`,
|
|
184
|
+
` androidPluginVersion = "${androidPluginVersion}"`,
|
|
185
|
+
" }",
|
|
186
|
+
"",
|
|
187
|
+
" repositories {",
|
|
188
|
+
" mavenCentral()",
|
|
189
|
+
" google()",
|
|
190
|
+
" }",
|
|
191
|
+
"",
|
|
192
|
+
" dependencies {",
|
|
193
|
+
' classpath("com.android.tools.build:gradle:${project.ext.androidPluginVersion}")',
|
|
194
|
+
" }",
|
|
195
|
+
"}",
|
|
196
|
+
"",
|
|
197
|
+
"allprojects {",
|
|
198
|
+
" repositories {",
|
|
199
|
+
" maven {",
|
|
200
|
+
" // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm",
|
|
201
|
+
` url("\${rootDir}/${buildRelativeReactNativePath}/android")`,
|
|
202
|
+
" }",
|
|
203
|
+
" mavenCentral()",
|
|
204
|
+
" google()",
|
|
205
|
+
" }",
|
|
206
|
+
"}",
|
|
207
|
+
"",
|
|
208
|
+
].join("\n");
|
|
209
|
+
const gradleProperties = "android.useAndroidX=true\n";
|
|
210
|
+
const settingsGradle = [
|
|
211
|
+
`include(":${targetName}")`,
|
|
212
|
+
`project(":${targetName}").projectDir = file("${androidProject}")`,
|
|
213
|
+
"",
|
|
214
|
+
].join("\n");
|
|
215
|
+
yield fs.ensureDir(buildDir);
|
|
216
|
+
yield fs.writeFile(path.join(buildDir, "build.gradle"), buildGradle);
|
|
217
|
+
yield fs.writeFile(path.join(buildDir, "gradle.properties"), gradleProperties);
|
|
218
|
+
yield fs.writeFile(path.join(buildDir, "settings.gradle"), settingsGradle);
|
|
219
|
+
// Run only one Gradle task at a time
|
|
220
|
+
(0, child_process_1.spawnSync)(gradlew, targets, { cwd: buildDir, stdio: "inherit", env });
|
|
221
|
+
}
|
|
222
|
+
yield Promise.all(targetsToCopy.map(([src, dest]) => fs.copy(src, dest)));
|
|
145
223
|
});
|
|
146
224
|
}
|
|
225
|
+
exports.assembleAarBundle = assembleAarBundle;
|
|
147
226
|
function copyFiles(files, destination) {
|
|
148
227
|
return __awaiter(this, void 0, void 0, function* () {
|
|
149
228
|
if (!(0, array_1.isNonEmptyArray)(files)) {
|
package/lib/copy-assets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy-assets.js","sourceRoot":"","sources":["../src/copy-assets.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"copy-assets.js","sourceRoot":"","sources":["../src/copy-assets.ts"],"names":[],"mappings":"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"}
|
package/lib/test.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.rnxTestCommand = exports.rnxTest = void 0;
|
|
4
|
+
const tools_node_1 = require("@rnx-kit/tools-node");
|
|
7
5
|
const platform_1 = require("@rnx-kit/tools-react-native/platform");
|
|
8
6
|
const jest_cli_1 = require("jest-cli");
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
7
|
const COMMAND_NAME = "rnx-test";
|
|
11
8
|
function rnxTest(_argv, _config, { platform }) {
|
|
12
9
|
const commandIndex = process.argv.indexOf(COMMAND_NAME);
|
|
@@ -34,8 +31,8 @@ function jestOptions() {
|
|
|
34
31
|
//
|
|
35
32
|
// To work around this, resolve `jest-cli` first, then use the resolved path
|
|
36
33
|
// to import `./build/cli/args`.
|
|
37
|
-
const jestPath =
|
|
38
|
-
const { options } = require(`${
|
|
34
|
+
const jestPath = (0, tools_node_1.findPackageDependencyDir)("jest-cli") || "jest-cli";
|
|
35
|
+
const { options } = require(`${jestPath}/build/cli/args`);
|
|
39
36
|
return Object.keys(options).map((option) => {
|
|
40
37
|
const { default: defaultValue, description, type } = options[option];
|
|
41
38
|
return {
|
package/lib/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;;AACA,oDAA+D;AAC/D,mEAAqE;AACrE,uCAA0C;AAiB1C,MAAM,YAAY,GAAG,UAAU,CAAC;AAEhC,SAAgB,OAAO,CACrB,KAAe,EACf,OAAkB,EAClB,EAAE,QAAQ,EAAQ;IAElB,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACxD,IAAI,YAAY,GAAG,CAAC,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IAED,4EAA4E;IAC5E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IAElD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACjD,IAAI,aAAa,GAAG,CAAC,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;KACxD;IAED,yEAAyE;IACzE,qEAAqE;IACrE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IAE9B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,QAAQ,CAAC;IAC7C,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAxBD,0BAwBC;AAED,SAAS,WAAW;IAClB,oDAAoD;IACpD,EAAE;IACF,oEAAoE;IACpE,wCAAwC;IACxC,EAAE;IACF,4EAA4E;IAC5E,gCAAgC;IAChC,MAAM,QAAQ,GAAG,IAAA,qCAAwB,EAAC,UAAU,CAAC,IAAI,UAAU,CAAC;IACpE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,QAAQ,iBAAiB,CAAC,CAAC;IAE1D,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACzC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO;YACL,IAAI,EAAE,KAAK,MAAM,KAAK,IAAI,GAAG;YAC7B,WAAW;YACX,OAAO,EAAE,YAAY;SACtB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAEY,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,mCAAmC;IAChD,IAAI,EAAE,OAAO;IACb,OAAO,EAAE;QACP;YACE,IAAI,EAAE,8CAA8C;YACpD,WAAW,EAAE,oBAAoB;YACjC,KAAK,EAAE,wBAAa;SACrB;QACD,GAAG,WAAW,EAAE;KACjB;CACF,CAAC"}
|
package/package.json
CHANGED
package/src/copy-assets.ts
CHANGED
|
@@ -2,7 +2,11 @@ import type { Config as CLIConfig } from "@react-native-community/cli-types";
|
|
|
2
2
|
import { error, info, warn } from "@rnx-kit/console";
|
|
3
3
|
import { isNonEmptyArray } from "@rnx-kit/tools-language/array";
|
|
4
4
|
import type { PackageManifest } from "@rnx-kit/tools-node/package";
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
findPackageDependencyDir,
|
|
7
|
+
findPackageDir,
|
|
8
|
+
readPackage,
|
|
9
|
+
} from "@rnx-kit/tools-node/package";
|
|
6
10
|
import type { AllPlatforms } from "@rnx-kit/tools-react-native";
|
|
7
11
|
import { parsePlatform } from "@rnx-kit/tools-react-native";
|
|
8
12
|
import { spawnSync } from "child_process";
|
|
@@ -11,9 +15,17 @@ import * as os from "os";
|
|
|
11
15
|
import * as path from "path";
|
|
12
16
|
|
|
13
17
|
export type AndroidArchive = {
|
|
14
|
-
targetName
|
|
18
|
+
targetName?: string;
|
|
15
19
|
version?: string;
|
|
16
20
|
output?: string;
|
|
21
|
+
android?: {
|
|
22
|
+
androidPluginVersion?: string;
|
|
23
|
+
compileSdkVersion?: number;
|
|
24
|
+
defaultConfig?: {
|
|
25
|
+
minSdkVersion?: number;
|
|
26
|
+
targetSdkVersion?: number;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
17
29
|
};
|
|
18
30
|
|
|
19
31
|
export type NativeAssets = {
|
|
@@ -44,6 +56,15 @@ export type AssetsConfig = {
|
|
|
44
56
|
getAssets?: (context: Context) => Promise<NativeAssets>;
|
|
45
57
|
};
|
|
46
58
|
|
|
59
|
+
const defaultAndroidConfig: Required<Required<AndroidArchive>["android"]> = {
|
|
60
|
+
androidPluginVersion: "7.1.3",
|
|
61
|
+
compileSdkVersion: 31,
|
|
62
|
+
defaultConfig: {
|
|
63
|
+
minSdkVersion: 23,
|
|
64
|
+
targetSdkVersion: 29,
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
|
|
47
68
|
function ensureOption(options: Options, opt: string, flag = opt) {
|
|
48
69
|
if (options[opt] == null) {
|
|
49
70
|
error(`Missing required option: --${flag}`);
|
|
@@ -61,6 +82,12 @@ function findGradleProject(projectRoot: string): string | undefined {
|
|
|
61
82
|
return undefined;
|
|
62
83
|
}
|
|
63
84
|
|
|
85
|
+
function gradleTargetName(packageName: string): string {
|
|
86
|
+
return (
|
|
87
|
+
packageName.startsWith("@") ? packageName.slice(1) : packageName
|
|
88
|
+
).replace(/[^\w\-.]+/g, "_");
|
|
89
|
+
}
|
|
90
|
+
|
|
64
91
|
function isAssetsConfig(config: unknown): config is AssetsConfig {
|
|
65
92
|
return typeof config === "object" && config !== null && "getAssets" in config;
|
|
66
93
|
}
|
|
@@ -70,7 +97,12 @@ function keysOf(record: Record<string, unknown> | undefined): string[] {
|
|
|
70
97
|
}
|
|
71
98
|
|
|
72
99
|
export function versionOf(pkgName: string): string {
|
|
73
|
-
const
|
|
100
|
+
const packageDir = findPackageDependencyDir(pkgName);
|
|
101
|
+
if (!packageDir) {
|
|
102
|
+
throw new Error(`Could not find module '${pkgName}'`);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
const { version } = readPackage(packageDir);
|
|
74
106
|
return version;
|
|
75
107
|
}
|
|
76
108
|
|
|
@@ -79,13 +111,19 @@ function getAndroidPaths(
|
|
|
79
111
|
packageName: string,
|
|
80
112
|
{ targetName, version, output }: AndroidArchive
|
|
81
113
|
) {
|
|
82
|
-
const projectRoot =
|
|
83
|
-
|
|
84
|
-
|
|
114
|
+
const projectRoot = findPackageDependencyDir(packageName);
|
|
115
|
+
if (!projectRoot) {
|
|
116
|
+
throw new Error(`Could not find module '${packageName}'`);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
const gradleFriendlyName = targetName || gradleTargetName(packageName);
|
|
120
|
+
const aarVersion = version || versionOf(packageName);
|
|
85
121
|
|
|
86
122
|
switch (packageName) {
|
|
87
123
|
case "hermes-engine":
|
|
88
124
|
return {
|
|
125
|
+
targetName: gradleFriendlyName,
|
|
126
|
+
version: aarVersion,
|
|
89
127
|
projectRoot,
|
|
90
128
|
output: path.join(projectRoot, "android", "hermes-release.aar"),
|
|
91
129
|
destination: path.join(
|
|
@@ -97,6 +135,8 @@ function getAndroidPaths(
|
|
|
97
135
|
|
|
98
136
|
case "react-native":
|
|
99
137
|
return {
|
|
138
|
+
targetName: gradleFriendlyName,
|
|
139
|
+
version: aarVersion,
|
|
100
140
|
projectRoot,
|
|
101
141
|
output: path.join(projectRoot, "android"),
|
|
102
142
|
destination: path.join(
|
|
@@ -109,6 +149,8 @@ function getAndroidPaths(
|
|
|
109
149
|
default: {
|
|
110
150
|
const androidProject = findGradleProject(projectRoot);
|
|
111
151
|
return {
|
|
152
|
+
targetName: gradleFriendlyName,
|
|
153
|
+
version: aarVersion,
|
|
112
154
|
projectRoot,
|
|
113
155
|
androidProject,
|
|
114
156
|
output:
|
|
@@ -119,19 +161,19 @@ function getAndroidPaths(
|
|
|
119
161
|
"build",
|
|
120
162
|
"outputs",
|
|
121
163
|
"aar",
|
|
122
|
-
`${
|
|
164
|
+
`${gradleFriendlyName}-release.aar`
|
|
123
165
|
)),
|
|
124
166
|
destination: path.join(
|
|
125
167
|
context.options.assetsDest,
|
|
126
168
|
"aar",
|
|
127
|
-
`${
|
|
169
|
+
`${gradleFriendlyName}-${aarVersion}.aar`
|
|
128
170
|
),
|
|
129
171
|
};
|
|
130
172
|
}
|
|
131
173
|
}
|
|
132
174
|
}
|
|
133
175
|
|
|
134
|
-
async function assembleAarBundle(
|
|
176
|
+
export async function assembleAarBundle(
|
|
135
177
|
context: Context,
|
|
136
178
|
packageName: string,
|
|
137
179
|
{ aar }: NativeAssets
|
|
@@ -149,55 +191,136 @@ async function assembleAarBundle(
|
|
|
149
191
|
return;
|
|
150
192
|
}
|
|
151
193
|
|
|
152
|
-
const { androidProject, output } = getAndroidPaths(
|
|
194
|
+
const { targetName, version, androidProject, output } = getAndroidPaths(
|
|
195
|
+
context,
|
|
196
|
+
packageName,
|
|
197
|
+
aar
|
|
198
|
+
);
|
|
153
199
|
if (!androidProject || !output) {
|
|
154
200
|
warn(`Skipped \`${packageName}\`: cannot find \`build.gradle\``);
|
|
155
201
|
return;
|
|
156
202
|
}
|
|
157
203
|
|
|
158
|
-
const {
|
|
204
|
+
const { env: customEnv, dependencies, android } = aar;
|
|
205
|
+
const env = {
|
|
206
|
+
NODE_MODULES_PATH: path.join(process.cwd(), "node_modules"),
|
|
207
|
+
REACT_NATIVE_VERSION: versionOf("react-native"),
|
|
208
|
+
...process.env,
|
|
209
|
+
...customEnv,
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
const outputDir = path.join(context.options.assetsDest, "aar");
|
|
213
|
+
await fs.ensureDir(outputDir);
|
|
214
|
+
|
|
215
|
+
const dest = path.join(outputDir, `${targetName}-${version}.aar`);
|
|
216
|
+
|
|
159
217
|
const targets = [`:${targetName}:assembleRelease`];
|
|
160
|
-
const targetsToCopy: [string, string][] = [];
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
218
|
+
const targetsToCopy: [string, string][] = [[output, dest]];
|
|
219
|
+
|
|
220
|
+
const settings = path.join(androidProject, "settings.gradle");
|
|
221
|
+
if (fs.existsSync(settings)) {
|
|
222
|
+
if (dependencies) {
|
|
223
|
+
for (const [dependencyName, aar] of Object.entries(dependencies)) {
|
|
224
|
+
const { targetName, output, destination } = getAndroidPaths(
|
|
225
|
+
context,
|
|
226
|
+
dependencyName,
|
|
227
|
+
aar
|
|
228
|
+
);
|
|
229
|
+
if (output) {
|
|
230
|
+
if (!fs.existsSync(output)) {
|
|
231
|
+
targets.push(`:${targetName}:assembleRelease`);
|
|
232
|
+
targetsToCopy.push([output, destination]);
|
|
233
|
+
} else if (!fs.existsSync(destination)) {
|
|
234
|
+
targetsToCopy.push([output, destination]);
|
|
235
|
+
}
|
|
174
236
|
}
|
|
175
237
|
}
|
|
176
238
|
}
|
|
177
|
-
}
|
|
178
239
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
REACT_NATIVE_VERSION: versionOf("react-native"),
|
|
187
|
-
...process.env,
|
|
188
|
-
...env,
|
|
189
|
-
},
|
|
190
|
-
});
|
|
240
|
+
// Run only one Gradle task at a time
|
|
241
|
+
spawnSync(gradlew, targets, { cwd: androidProject, stdio: "inherit", env });
|
|
242
|
+
} else {
|
|
243
|
+
const reactNativePath = findPackageDependencyDir("react-native");
|
|
244
|
+
if (!reactNativePath) {
|
|
245
|
+
throw new Error("Could not find 'react-native'");
|
|
246
|
+
}
|
|
191
247
|
|
|
192
|
-
|
|
193
|
-
|
|
248
|
+
const buildDir = path.join(
|
|
249
|
+
process.cwd(),
|
|
250
|
+
"node_modules",
|
|
251
|
+
".rnx-gradle-build",
|
|
252
|
+
targetName
|
|
253
|
+
);
|
|
254
|
+
|
|
255
|
+
const compileSdkVersion =
|
|
256
|
+
android?.compileSdkVersion ?? defaultAndroidConfig.compileSdkVersion;
|
|
257
|
+
const minSdkVersion =
|
|
258
|
+
android?.defaultConfig?.minSdkVersion ??
|
|
259
|
+
defaultAndroidConfig.defaultConfig.minSdkVersion;
|
|
260
|
+
const targetSdkVersion =
|
|
261
|
+
android?.defaultConfig?.targetSdkVersion ??
|
|
262
|
+
defaultAndroidConfig.defaultConfig.targetSdkVersion;
|
|
263
|
+
const androidPluginVersion =
|
|
264
|
+
android?.androidPluginVersion ??
|
|
265
|
+
defaultAndroidConfig.androidPluginVersion;
|
|
266
|
+
const buildRelativeReactNativePath = path.relative(
|
|
267
|
+
buildDir,
|
|
268
|
+
reactNativePath
|
|
269
|
+
);
|
|
270
|
+
|
|
271
|
+
const buildGradle = [
|
|
272
|
+
"buildscript {",
|
|
273
|
+
" ext {",
|
|
274
|
+
` compileSdkVersion = ${compileSdkVersion}`,
|
|
275
|
+
` minSdkVersion = ${minSdkVersion}`,
|
|
276
|
+
` targetSdkVersion = ${targetSdkVersion}`,
|
|
277
|
+
` androidPluginVersion = "${androidPluginVersion}"`,
|
|
278
|
+
" }",
|
|
279
|
+
"",
|
|
280
|
+
" repositories {",
|
|
281
|
+
" mavenCentral()",
|
|
282
|
+
" google()",
|
|
283
|
+
" }",
|
|
284
|
+
"",
|
|
285
|
+
" dependencies {",
|
|
286
|
+
' classpath("com.android.tools.build:gradle:${project.ext.androidPluginVersion}")',
|
|
287
|
+
" }",
|
|
288
|
+
"}",
|
|
289
|
+
"",
|
|
290
|
+
"allprojects {",
|
|
291
|
+
" repositories {",
|
|
292
|
+
" maven {",
|
|
293
|
+
" // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm",
|
|
294
|
+
` url("\${rootDir}/${buildRelativeReactNativePath}/android")`,
|
|
295
|
+
" }",
|
|
296
|
+
" mavenCentral()",
|
|
297
|
+
" google()",
|
|
298
|
+
" }",
|
|
299
|
+
"}",
|
|
300
|
+
"",
|
|
301
|
+
].join("\n");
|
|
302
|
+
|
|
303
|
+
const gradleProperties = "android.useAndroidX=true\n";
|
|
304
|
+
|
|
305
|
+
const settingsGradle = [
|
|
306
|
+
`include(":${targetName}")`,
|
|
307
|
+
`project(":${targetName}").projectDir = file("${androidProject}")`,
|
|
308
|
+
"",
|
|
309
|
+
].join("\n");
|
|
310
|
+
|
|
311
|
+
await fs.ensureDir(buildDir);
|
|
312
|
+
await fs.writeFile(path.join(buildDir, "build.gradle"), buildGradle);
|
|
313
|
+
await fs.writeFile(
|
|
314
|
+
path.join(buildDir, "gradle.properties"),
|
|
315
|
+
gradleProperties
|
|
316
|
+
);
|
|
317
|
+
await fs.writeFile(path.join(buildDir, "settings.gradle"), settingsGradle);
|
|
318
|
+
|
|
319
|
+
// Run only one Gradle task at a time
|
|
320
|
+
spawnSync(gradlew, targets, { cwd: buildDir, stdio: "inherit", env });
|
|
321
|
+
}
|
|
194
322
|
|
|
195
|
-
|
|
196
|
-
const dest = path.join(destination, `${targetName}-${aarVersion}.aar`);
|
|
197
|
-
await Promise.all([
|
|
198
|
-
fs.copy(output, dest),
|
|
199
|
-
...targetsToCopy.map(([src, dest]) => fs.copy(src, dest)),
|
|
200
|
-
]);
|
|
323
|
+
await Promise.all(targetsToCopy.map(([src, dest]) => fs.copy(src, dest)));
|
|
201
324
|
}
|
|
202
325
|
|
|
203
326
|
async function copyFiles(files: unknown, destination: string): Promise<void> {
|
package/src/test.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Config as CLIConfig } from "@react-native-community/cli-types";
|
|
2
|
+
import { findPackageDependencyDir } from "@rnx-kit/tools-node";
|
|
2
3
|
import { parsePlatform } from "@rnx-kit/tools-react-native/platform";
|
|
3
4
|
import { run as runJest } from "jest-cli";
|
|
4
|
-
import path from "path";
|
|
5
5
|
|
|
6
6
|
type Args = {
|
|
7
7
|
platform: "android" | "ios" | "macos" | "windows" | "win32";
|
|
@@ -54,8 +54,8 @@ function jestOptions(): Options[] {
|
|
|
54
54
|
//
|
|
55
55
|
// To work around this, resolve `jest-cli` first, then use the resolved path
|
|
56
56
|
// to import `./build/cli/args`.
|
|
57
|
-
const jestPath =
|
|
58
|
-
const { options } = require(`${
|
|
57
|
+
const jestPath = findPackageDependencyDir("jest-cli") || "jest-cli";
|
|
58
|
+
const { options } = require(`${jestPath}/build/cli/args`);
|
|
59
59
|
|
|
60
60
|
return Object.keys(options).map((option) => {
|
|
61
61
|
const { default: defaultValue, description, type } = options[option];
|