@react-native-windows/cli 0.0.0-canary.26 → 0.0.0-canary.260
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindows.d.ts +88 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindows.js +705 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindows.js.map +1 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindowsOptions.d.ts +14 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindowsOptions.js +33 -0
- package/lib-commonjs/commands/autolinkWindows/autolinkWindowsOptions.js.map +1 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindows.d.ts +27 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindows.js +211 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindows.js.map +1 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindowsOptions.d.ts +12 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindowsOptions.js +23 -0
- package/lib-commonjs/commands/codegenWindows/codegenWindowsOptions.js.map +1 -0
- package/lib-commonjs/{config → commands/config}/configUtils.d.ts +141 -93
- package/lib-commonjs/commands/config/configUtils.js +420 -0
- package/lib-commonjs/commands/config/configUtils.js.map +1 -0
- package/lib-commonjs/{config → commands/config}/dependencyConfig.d.ts +38 -37
- package/lib-commonjs/commands/config/dependencyConfig.js +230 -0
- package/lib-commonjs/commands/config/dependencyConfig.js.map +1 -0
- package/lib-commonjs/{config → commands/config}/projectConfig.d.ts +28 -24
- package/lib-commonjs/commands/config/projectConfig.js +191 -0
- package/lib-commonjs/commands/config/projectConfig.js.map +1 -0
- package/lib-commonjs/commands/healthCheck/healthCheckList.d.ts +6 -0
- package/lib-commonjs/commands/healthCheck/healthCheckList.js +21 -0
- package/lib-commonjs/commands/healthCheck/healthCheckList.js.map +1 -0
- package/lib-commonjs/commands/healthCheck/healthChecks.d.ts +7 -0
- package/lib-commonjs/commands/healthCheck/healthChecks.js +124 -0
- package/lib-commonjs/commands/healthCheck/healthChecks.js.map +1 -0
- package/lib-commonjs/commands/initWindows/initWindows.d.ts +46 -0
- package/lib-commonjs/commands/initWindows/initWindows.js +275 -0
- package/lib-commonjs/commands/initWindows/initWindows.js.map +1 -0
- package/lib-commonjs/commands/initWindows/initWindowsOptions.d.ts +16 -0
- package/lib-commonjs/commands/initWindows/initWindowsOptions.js +42 -0
- package/lib-commonjs/commands/initWindows/initWindowsOptions.js.map +1 -0
- package/lib-commonjs/{runWindows → commands/runWindows}/runWindows.d.ts +10 -10
- package/lib-commonjs/commands/runWindows/runWindows.js +322 -0
- package/lib-commonjs/commands/runWindows/runWindows.js.map +1 -0
- package/lib-commonjs/{runWindows → commands/runWindows}/runWindowsOptions.d.ts +56 -52
- package/lib-commonjs/{runWindows → commands/runWindows}/runWindowsOptions.js +132 -131
- package/lib-commonjs/commands/runWindows/runWindowsOptions.js.map +1 -0
- package/lib-commonjs/e2etest/autolink.test.d.ts +6 -0
- package/lib-commonjs/e2etest/autolink.test.js +367 -0
- package/lib-commonjs/e2etest/autolink.test.js.map +1 -0
- package/lib-commonjs/e2etest/dependencyConfig.test.d.ts +6 -0
- package/lib-commonjs/e2etest/dependencyConfig.test.js +130 -0
- package/lib-commonjs/e2etest/dependencyConfig.test.js.map +1 -0
- package/lib-commonjs/e2etest/healthChecks.test.d.ts +6 -0
- package/lib-commonjs/e2etest/healthChecks.test.js +31 -0
- package/lib-commonjs/e2etest/healthChecks.test.js.map +1 -0
- package/lib-commonjs/e2etest/initWindows.test.d.ts +6 -0
- package/lib-commonjs/e2etest/initWindows.test.js +110 -0
- package/lib-commonjs/e2etest/initWindows.test.js.map +1 -0
- package/lib-commonjs/e2etest/projectConfig.test.d.ts +6 -0
- package/lib-commonjs/e2etest/projectConfig.test.js +111 -0
- package/lib-commonjs/e2etest/projectConfig.test.js.map +1 -0
- package/lib-commonjs/e2etest/projectConfig.utils.d.ts +8 -0
- package/lib-commonjs/e2etest/projectConfig.utils.js +77 -0
- package/lib-commonjs/e2etest/projectConfig.utils.js.map +1 -0
- package/lib-commonjs/e2etest/runWindows.test.d.ts +6 -0
- package/lib-commonjs/e2etest/runWindows.test.js +61 -0
- package/lib-commonjs/e2etest/runWindows.test.js.map +1 -0
- package/lib-commonjs/e2etest/typesUpToDate.test.d.ts +6 -0
- package/lib-commonjs/e2etest/typesUpToDate.test.js +21 -0
- package/lib-commonjs/e2etest/typesUpToDate.test.js.map +1 -0
- package/lib-commonjs/generator-common/index.d.ts +39 -23
- package/lib-commonjs/generator-common/index.js +242 -221
- package/lib-commonjs/generator-common/index.js.map +1 -1
- package/lib-commonjs/generator-windows/index.d.ts +10 -10
- package/lib-commonjs/generator-windows/index.js +341 -364
- package/lib-commonjs/generator-windows/index.js.map +1 -1
- package/lib-commonjs/index.d.ts +50 -47
- package/lib-commonjs/index.js +77 -39
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/{runWindows/utils → utils}/build.d.ts +12 -13
- package/lib-commonjs/{runWindows/utils → utils}/build.js +89 -91
- package/lib-commonjs/utils/build.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/checkRequirements.d.ts +6 -6
- package/lib-commonjs/{runWindows/utils → utils}/checkRequirements.js +69 -65
- package/lib-commonjs/utils/checkRequirements.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/commandWithProgress.d.ts +21 -13
- package/lib-commonjs/{runWindows/utils → utils}/commandWithProgress.js +149 -113
- package/lib-commonjs/utils/commandWithProgress.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/deploy.d.ts +12 -12
- package/lib-commonjs/utils/deploy.js +354 -0
- package/lib-commonjs/utils/deploy.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/info.d.ts +6 -6
- package/lib-commonjs/{runWindows/utils → utils}/info.js +28 -25
- package/lib-commonjs/utils/info.js.map +1 -0
- package/lib-commonjs/utils/msbuildtools.d.ts +28 -0
- package/lib-commonjs/utils/msbuildtools.js +281 -0
- package/lib-commonjs/utils/msbuildtools.js.map +1 -0
- package/lib-commonjs/utils/nameHelpers.d.ts +9 -0
- package/lib-commonjs/utils/nameHelpers.js +46 -0
- package/lib-commonjs/utils/nameHelpers.js.map +1 -0
- package/lib-commonjs/utils/pathHelpers.d.ts +9 -0
- package/lib-commonjs/utils/pathHelpers.js +37 -0
- package/lib-commonjs/utils/pathHelpers.js.map +1 -0
- package/lib-commonjs/utils/telemetryHelpers.d.ts +29 -0
- package/lib-commonjs/utils/telemetryHelpers.js +121 -0
- package/lib-commonjs/utils/telemetryHelpers.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/version.d.ts +19 -19
- package/lib-commonjs/{runWindows/utils → utils}/version.js +109 -109
- package/lib-commonjs/utils/version.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/vsInstalls.d.ts +34 -34
- package/lib-commonjs/utils/vsInstalls.js +102 -0
- package/lib-commonjs/utils/vsInstalls.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/vstools.d.ts +16 -15
- package/lib-commonjs/utils/vstools.js +190 -0
- package/lib-commonjs/utils/vstools.js.map +1 -0
- package/lib-commonjs/{runWindows/utils → utils}/winappdeploytool.d.ts +24 -24
- package/lib-commonjs/{runWindows/utils → utils}/winappdeploytool.js +108 -105
- package/lib-commonjs/utils/winappdeploytool.js.map +1 -0
- package/package.json +49 -31
- package/{powershell → src/powershell}/Add-AppDevPackage.ps1 +2 -2
- package/src/powershell/Eval-MsBuildProperties.ps1 +156 -0
- package/{powershell → src/powershell}/WindowsStoreAppUtils.ps1 +10 -0
- package/CHANGELOG.json +0 -413
- package/CHANGELOG.md +0 -200
- package/lib-commonjs/config/configUtils.js +0 -253
- package/lib-commonjs/config/configUtils.js.map +0 -1
- package/lib-commonjs/config/dependencyConfig.js +0 -167
- package/lib-commonjs/config/dependencyConfig.js.map +0 -1
- package/lib-commonjs/config/projectConfig.js +0 -121
- package/lib-commonjs/config/projectConfig.js.map +0 -1
- package/lib-commonjs/runWindows/runWindows.js +0 -159
- package/lib-commonjs/runWindows/runWindows.js.map +0 -1
- package/lib-commonjs/runWindows/runWindowsOptions.js.map +0 -1
- package/lib-commonjs/runWindows/utils/autolink.d.ts +0 -7
- package/lib-commonjs/runWindows/utils/autolink.js +0 -353
- package/lib-commonjs/runWindows/utils/autolink.js.map +0 -1
- package/lib-commonjs/runWindows/utils/build.js.map +0 -1
- package/lib-commonjs/runWindows/utils/checkRequirements.js.map +0 -1
- package/lib-commonjs/runWindows/utils/commandWithProgress.js.map +0 -1
- package/lib-commonjs/runWindows/utils/deploy.js +0 -247
- package/lib-commonjs/runWindows/utils/deploy.js.map +0 -1
- package/lib-commonjs/runWindows/utils/info.js.map +0 -1
- package/lib-commonjs/runWindows/utils/msbuildtools.d.ts +0 -22
- package/lib-commonjs/runWindows/utils/msbuildtools.js +0 -195
- package/lib-commonjs/runWindows/utils/msbuildtools.js.map +0 -1
- package/lib-commonjs/runWindows/utils/version.js.map +0 -1
- package/lib-commonjs/runWindows/utils/vsInstalls.js +0 -70
- package/lib-commonjs/runWindows/utils/vsInstalls.js.map +0 -1
- package/lib-commonjs/runWindows/utils/vstools.js +0 -150
- package/lib-commonjs/runWindows/utils/vstools.js.map +0 -1
- package/lib-commonjs/runWindows/utils/winappdeploytool.js.map +0 -1
package/CHANGELOG.md
DELETED
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
# Change Log - @react-native-windows/cli
|
|
2
|
-
|
|
3
|
-
This log was last generated on Sat, 31 Oct 2020 05:06:14 GMT and should not be manually modified.
|
|
4
|
-
|
|
5
|
-
<!-- Start content -->
|
|
6
|
-
|
|
7
|
-
## 0.0.0-canary.26
|
|
8
|
-
|
|
9
|
-
Sat, 31 Oct 2020 05:06:14 GMT
|
|
10
|
-
|
|
11
|
-
### Changes
|
|
12
|
-
|
|
13
|
-
- Fix Generator Failing to Overwrite Template Files (ngerlem@microsoft.com)
|
|
14
|
-
|
|
15
|
-
## 0.0.0-canary.25
|
|
16
|
-
|
|
17
|
-
Fri, 30 Oct 2020 05:07:51 GMT
|
|
18
|
-
|
|
19
|
-
### Changes
|
|
20
|
-
|
|
21
|
-
- Enable Hermes Bytecode Compilation and SourceMap Creation as Part of Build (ngerlem@microsoft.com)
|
|
22
|
-
|
|
23
|
-
## 0.0.0-canary.24
|
|
24
|
-
|
|
25
|
-
Thu, 29 Oct 2020 05:05:49 GMT
|
|
26
|
-
|
|
27
|
-
### Changes
|
|
28
|
-
|
|
29
|
-
- Allow Hermes to be used in C++ projects without modifying source code (ngerlem@microsoft.com)
|
|
30
|
-
|
|
31
|
-
## 0.0.0-canary.23
|
|
32
|
-
|
|
33
|
-
Sat, 17 Oct 2020 05:06:20 GMT
|
|
34
|
-
|
|
35
|
-
### Changes
|
|
36
|
-
|
|
37
|
-
- C# apps have x86 platform=x86 but C++ apps have Win32 (asklar@microsoft.com)
|
|
38
|
-
- Revert "Fix project config and package deploy to support the windows code in a different location (#6232)" (dannyvv@microsoft.com)
|
|
39
|
-
|
|
40
|
-
## 0.0.0-canary.22
|
|
41
|
-
|
|
42
|
-
Fri, 16 Oct 2020 05:04:19 GMT
|
|
43
|
-
|
|
44
|
-
### Changes
|
|
45
|
-
|
|
46
|
-
- Fix config and app publish to allow for the windows native source code to live in a different location (dannyvv@microsoft.com)
|
|
47
|
-
|
|
48
|
-
## 0.0.0-canary.21
|
|
49
|
-
|
|
50
|
-
Thu, 01 Oct 2020 05:08:11 GMT
|
|
51
|
-
|
|
52
|
-
### Changes
|
|
53
|
-
|
|
54
|
-
- ESLint Fixup (ngerlem@microsoft.com)
|
|
55
|
-
|
|
56
|
-
## 0.0.0-canary.20
|
|
57
|
-
|
|
58
|
-
Tue, 29 Sep 2020 05:05:53 GMT
|
|
59
|
-
|
|
60
|
-
### Changes
|
|
61
|
-
|
|
62
|
-
- Fix run-windows Warnings Using Node 14 (ngerlem@microsoft.com)
|
|
63
|
-
|
|
64
|
-
## 0.0.0-canary.19
|
|
65
|
-
|
|
66
|
-
Fri, 25 Sep 2020 05:05:40 GMT
|
|
67
|
-
|
|
68
|
-
### Changes
|
|
69
|
-
|
|
70
|
-
- Fix casing rules for new projects names for `react-native-windows-init` (jthysell@microsoft.com)
|
|
71
|
-
- Add -NoProfile to powershell invocations to ensure deterministic script execution where user profiles do not have the ability to break or change the build outputs (dannyvv@microsoft.com)
|
|
72
|
-
|
|
73
|
-
## 0.0.0-canary.18
|
|
74
|
-
|
|
75
|
-
Thu, 24 Sep 2020 05:06:21 GMT
|
|
76
|
-
|
|
77
|
-
### Changes
|
|
78
|
-
|
|
79
|
-
- Zero-Config Tests for CLI, react-native-windows-init, react-native-windows-codegen (ngerlem@microsoft.com)
|
|
80
|
-
|
|
81
|
-
## 0.0.0-canary.17
|
|
82
|
-
|
|
83
|
-
Mon, 21 Sep 2020 05:06:22 GMT
|
|
84
|
-
|
|
85
|
-
### Changes
|
|
86
|
-
|
|
87
|
-
- Fixup eslint config (ngerlem@microsoft.com)
|
|
88
|
-
|
|
89
|
-
## 0.0.0-canary.16
|
|
90
|
-
|
|
91
|
-
Sat, 19 Sep 2020 05:05:08 GMT
|
|
92
|
-
|
|
93
|
-
### Changes
|
|
94
|
-
|
|
95
|
-
- Adding new native module template support to react-native-windows-init (jthysell@microsoft.com)
|
|
96
|
-
|
|
97
|
-
## 0.0.0-canary.15
|
|
98
|
-
|
|
99
|
-
Wed, 16 Sep 2020 05:05:28 GMT
|
|
100
|
-
|
|
101
|
-
### Changes
|
|
102
|
-
|
|
103
|
-
- Enable trying Previews of VS as a fallback (asklar@winse.microsoft.com)
|
|
104
|
-
- Yarn on Windows breaks apps that read from the environment variables (asklar@winse.microsoft.com)
|
|
105
|
-
|
|
106
|
-
## 0.0.0-canary.14
|
|
107
|
-
|
|
108
|
-
Tue, 15 Sep 2020 05:05:15 GMT
|
|
109
|
-
|
|
110
|
-
### Changes
|
|
111
|
-
|
|
112
|
-
- fix ts warning (asklar@microsoft.com)
|
|
113
|
-
|
|
114
|
-
## 0.0.0-canary.13
|
|
115
|
-
|
|
116
|
-
Mon, 14 Sep 2020 22:03:37 GMT
|
|
117
|
-
|
|
118
|
-
### Changes
|
|
119
|
-
|
|
120
|
-
- Reconcile package versions (ngerlem@microsoft.com)
|
|
121
|
-
|
|
122
|
-
## 0.0.0-canary.11
|
|
123
|
-
|
|
124
|
-
Wed, 09 Sep 2020 05:06:35 GMT
|
|
125
|
-
|
|
126
|
-
### Changes
|
|
127
|
-
|
|
128
|
-
- Enable @typescript-eslint/no-floating-promises (ngerlem@microsoft.com)
|
|
129
|
-
|
|
130
|
-
## 0.0.0-canary.10
|
|
131
|
-
|
|
132
|
-
Wed, 02 Sep 2020 05:05:16 GMT
|
|
133
|
-
|
|
134
|
-
### Changes
|
|
135
|
-
|
|
136
|
-
- Keep Templates in react-native-windows Package (ngerlem@microsoft.com)
|
|
137
|
-
|
|
138
|
-
## 0.0.0-canary.9
|
|
139
|
-
|
|
140
|
-
Fri, 28 Aug 2020 05:06:54 GMT
|
|
141
|
-
|
|
142
|
-
### Changes
|
|
143
|
-
|
|
144
|
-
- Fixed templates so C++ apps can consume C# native modules (jthysell@microsoft.com)
|
|
145
|
-
|
|
146
|
-
## 0.0.0-canary.8
|
|
147
|
-
|
|
148
|
-
Wed, 26 Aug 2020 05:07:06 GMT
|
|
149
|
-
|
|
150
|
-
### Changes
|
|
151
|
-
|
|
152
|
-
- Fix deploy bug where a framework package is installed for one arch but not the one that we are building for (asklar@winse.microsoft.com)
|
|
153
|
-
|
|
154
|
-
## 0.0.0-canary.7
|
|
155
|
-
|
|
156
|
-
Tue, 25 Aug 2020 05:05:08 GMT
|
|
157
|
-
|
|
158
|
-
### Changes
|
|
159
|
-
|
|
160
|
-
- Default run-windows to disabling parallel MSBuild When Machine Has < 16GB of Memory (ngerlem@microsoft.com)
|
|
161
|
-
|
|
162
|
-
## 0.0.0-canary.5
|
|
163
|
-
|
|
164
|
-
Thu, 20 Aug 2020 05:05:23 GMT
|
|
165
|
-
|
|
166
|
-
### Changes
|
|
167
|
-
|
|
168
|
-
- Add --singleproc to run-windows (asklar@microsoft.com)
|
|
169
|
-
|
|
170
|
-
## 0.0.0-canary.4
|
|
171
|
-
|
|
172
|
-
Wed, 19 Aug 2020 05:04:41 GMT
|
|
173
|
-
|
|
174
|
-
### Changes
|
|
175
|
-
|
|
176
|
-
- Fixing config and autolinking (jthysell@microsoft.com)
|
|
177
|
-
|
|
178
|
-
## 0.0.0-canary.3
|
|
179
|
-
|
|
180
|
-
Fri, 14 Aug 2020 05:05:34 GMT
|
|
181
|
-
|
|
182
|
-
### Changes
|
|
183
|
-
|
|
184
|
-
- Disable autolinking check in msbuild when using `react-native run-windows` (jthysell@microsoft.com)
|
|
185
|
-
|
|
186
|
-
## 0.0.0-canary.2
|
|
187
|
-
|
|
188
|
-
Tue, 11 Aug 2020 07:36:05 GMT
|
|
189
|
-
|
|
190
|
-
### Changes
|
|
191
|
-
|
|
192
|
-
- Make C# CodeGen the default (dannyvv@microsoft.com)
|
|
193
|
-
|
|
194
|
-
## 0.0.0-canary.1
|
|
195
|
-
|
|
196
|
-
Tue, 28 Jul 2020 05:06:13 GMT
|
|
197
|
-
|
|
198
|
-
### Changes
|
|
199
|
-
|
|
200
|
-
- Separate local-cli into its own package (ngerlem@microsoft.com)
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) Microsoft Corporation.
|
|
4
|
-
* Licensed under the MIT License.
|
|
5
|
-
* @format
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.getProjectGuid = exports.getProjectNamespace = exports.getProjectName = exports.importProjectExists = exports.findPropertyValue = exports.readProjectFile = exports.getProjectLanguage = exports.findAppProjectFiles = exports.findDependencyProjectFiles = exports.isRnwDependencyProject = exports.findSolutionFiles = exports.isRnwSolution = exports.findWindowsFolder = exports.findFiles = void 0;
|
|
9
|
-
const fs = require("fs");
|
|
10
|
-
const path = require("path");
|
|
11
|
-
const glob = require("glob");
|
|
12
|
-
const xmldom_1 = require("xmldom");
|
|
13
|
-
const xpath = require("xpath");
|
|
14
|
-
const msbuildSelect = xpath.useNamespaces({
|
|
15
|
-
msbuild: 'http://schemas.microsoft.com/developer/msbuild/2003',
|
|
16
|
-
});
|
|
17
|
-
/**
|
|
18
|
-
* Search for files matching the pattern under the target folder.
|
|
19
|
-
* @param folder The absolute path to target folder.
|
|
20
|
-
* @param filenamePattern The pattern to search for.
|
|
21
|
-
* @return Return the array of relative file paths.
|
|
22
|
-
*/
|
|
23
|
-
function findFiles(folder, filenamePattern) {
|
|
24
|
-
const files = glob.sync(path.join('**', filenamePattern), {
|
|
25
|
-
cwd: folder,
|
|
26
|
-
ignore: [
|
|
27
|
-
'node_modules/**',
|
|
28
|
-
'**/Debug/**',
|
|
29
|
-
'**/Release/**',
|
|
30
|
-
'**/WinUI3/**',
|
|
31
|
-
'**/Generated Files/**',
|
|
32
|
-
'**/packages/**',
|
|
33
|
-
],
|
|
34
|
-
});
|
|
35
|
-
return files;
|
|
36
|
-
}
|
|
37
|
-
exports.findFiles = findFiles;
|
|
38
|
-
/**
|
|
39
|
-
* Search for the windows sub-folder under the target folder.
|
|
40
|
-
* @param folder The absolute path to the target folder.
|
|
41
|
-
* @return The absolute path to the windows folder, if it exists.
|
|
42
|
-
*/
|
|
43
|
-
function findWindowsFolder(folder) {
|
|
44
|
-
const winDir = 'windows';
|
|
45
|
-
const joinedDir = path.join(folder, winDir);
|
|
46
|
-
if (fs.existsSync(joinedDir)) {
|
|
47
|
-
return joinedDir;
|
|
48
|
-
}
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
exports.findWindowsFolder = findWindowsFolder;
|
|
52
|
-
/**
|
|
53
|
-
* Checks if the target file path is a RNW solution file by checking if it contains the string "ReactNative".
|
|
54
|
-
* @param filePath The absolute file path to check.
|
|
55
|
-
* @return Whether the path is to a RNW solution file.
|
|
56
|
-
*/
|
|
57
|
-
function isRnwSolution(filePath) {
|
|
58
|
-
return (fs
|
|
59
|
-
.readFileSync(filePath)
|
|
60
|
-
.toString()
|
|
61
|
-
.search(/ReactNative/) > 0);
|
|
62
|
-
}
|
|
63
|
-
exports.isRnwSolution = isRnwSolution;
|
|
64
|
-
/**
|
|
65
|
-
* Search for the RNW solution files under the target folder.
|
|
66
|
-
* @param winFolder The absolute path to target folder.
|
|
67
|
-
* @return Return the array of relative file paths.
|
|
68
|
-
*/
|
|
69
|
-
function findSolutionFiles(winFolder) {
|
|
70
|
-
// First search for all potential solution files
|
|
71
|
-
const allSolutions = findFiles(winFolder, '*.sln');
|
|
72
|
-
if (allSolutions.length === 0) {
|
|
73
|
-
// If there're no solution files, return 0
|
|
74
|
-
return [];
|
|
75
|
-
}
|
|
76
|
-
else if (allSolutions.length === 1) {
|
|
77
|
-
// If there is exactly one solution file, assume it's it
|
|
78
|
-
return [allSolutions[0]];
|
|
79
|
-
}
|
|
80
|
-
var solutionFiles = [];
|
|
81
|
-
// Try to find any solution file that appears to be a React Native solution
|
|
82
|
-
for (const solutionFile of allSolutions) {
|
|
83
|
-
if (isRnwSolution(path.join(winFolder, solutionFile))) {
|
|
84
|
-
solutionFiles.push(solutionFile);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return solutionFiles;
|
|
88
|
-
}
|
|
89
|
-
exports.findSolutionFiles = findSolutionFiles;
|
|
90
|
-
/**
|
|
91
|
-
* Checks if the target file path is a RNW lib project file.
|
|
92
|
-
* @param filePath The absolute file path to check.
|
|
93
|
-
* @return Whether the path is to a RNW lib project file.
|
|
94
|
-
*/
|
|
95
|
-
function isRnwDependencyProject(filePath) {
|
|
96
|
-
const projectContents = readProjectFile(filePath);
|
|
97
|
-
const projectLang = getProjectLanguage(filePath);
|
|
98
|
-
if (projectLang === 'cs') {
|
|
99
|
-
return importProjectExists(projectContents, 'Microsoft.ReactNative.Uwp.CSharpLib.targets');
|
|
100
|
-
}
|
|
101
|
-
else if (projectLang === 'cpp') {
|
|
102
|
-
return importProjectExists(projectContents, 'Microsoft.ReactNative.Uwp.CppLib.targets');
|
|
103
|
-
}
|
|
104
|
-
return false;
|
|
105
|
-
}
|
|
106
|
-
exports.isRnwDependencyProject = isRnwDependencyProject;
|
|
107
|
-
/**
|
|
108
|
-
* Search for the RNW lib project files under the target folder.
|
|
109
|
-
* @param winFolder The absolute path to target folder.
|
|
110
|
-
* @return Return the array of relative file paths.
|
|
111
|
-
*/
|
|
112
|
-
function findDependencyProjectFiles(winFolder) {
|
|
113
|
-
// First, search for all potential project files
|
|
114
|
-
const allCppProj = findFiles(winFolder, '*.vcxproj');
|
|
115
|
-
const allCsProj = findFiles(winFolder, '*.csproj');
|
|
116
|
-
const allProjects = allCppProj.concat(allCsProj);
|
|
117
|
-
if (allProjects.length === 0) {
|
|
118
|
-
// If there're no project files, return 0
|
|
119
|
-
return [];
|
|
120
|
-
}
|
|
121
|
-
var dependencyProjectFiles = [];
|
|
122
|
-
// Try to find any project file that appears to be a dependency project
|
|
123
|
-
for (const projectFile of allProjects) {
|
|
124
|
-
if (isRnwDependencyProject(path.join(winFolder, projectFile))) {
|
|
125
|
-
dependencyProjectFiles.push(projectFile);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return dependencyProjectFiles;
|
|
129
|
-
}
|
|
130
|
-
exports.findDependencyProjectFiles = findDependencyProjectFiles;
|
|
131
|
-
/**
|
|
132
|
-
* Checks if the target file path is a RNW app project file.
|
|
133
|
-
* @param filePath The absolute file path to check.
|
|
134
|
-
* @return Whether the path is to a RNW app project file.
|
|
135
|
-
*/
|
|
136
|
-
function isRnwAppProject(filePath) {
|
|
137
|
-
const projectContents = readProjectFile(filePath);
|
|
138
|
-
const projectLang = getProjectLanguage(filePath);
|
|
139
|
-
if (projectLang === 'cs') {
|
|
140
|
-
return importProjectExists(projectContents, 'Microsoft.ReactNative.Uwp.CSharpApp.targets');
|
|
141
|
-
}
|
|
142
|
-
else if (projectLang === 'cpp') {
|
|
143
|
-
return importProjectExists(projectContents, 'Microsoft.ReactNative.Uwp.CppApp.targets');
|
|
144
|
-
}
|
|
145
|
-
return false;
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Search for the RNW app project files under the target folder.
|
|
149
|
-
* @param winFolder The absolute path to target folder.
|
|
150
|
-
* @return Return the array of relative file paths.
|
|
151
|
-
*/
|
|
152
|
-
function findAppProjectFiles(winFolder) {
|
|
153
|
-
// First, search for all potential project files
|
|
154
|
-
const allCppProj = findFiles(winFolder, '*.vcxproj');
|
|
155
|
-
const allCsProj = findFiles(winFolder, '*.csproj');
|
|
156
|
-
const allProjects = allCppProj.concat(allCsProj);
|
|
157
|
-
if (allProjects.length === 0) {
|
|
158
|
-
// If there're no project files, return 0
|
|
159
|
-
return [];
|
|
160
|
-
}
|
|
161
|
-
var appProjectFiles = [];
|
|
162
|
-
// Try to find any project file that appears to be an app project
|
|
163
|
-
for (const projectFile of allProjects) {
|
|
164
|
-
if (isRnwAppProject(path.join(winFolder, projectFile))) {
|
|
165
|
-
appProjectFiles.push(projectFile);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
return appProjectFiles;
|
|
169
|
-
}
|
|
170
|
-
exports.findAppProjectFiles = findAppProjectFiles;
|
|
171
|
-
/**
|
|
172
|
-
* Returns the programming language of the project file.
|
|
173
|
-
* @param projectPath The project file path to check.
|
|
174
|
-
* @return The language string: cpp, cs, or null if unknown.
|
|
175
|
-
*/
|
|
176
|
-
function getProjectLanguage(projectPath) {
|
|
177
|
-
if (projectPath.endsWith('.vcxproj')) {
|
|
178
|
-
return 'cpp';
|
|
179
|
-
}
|
|
180
|
-
else if (projectPath.endsWith('.csproj')) {
|
|
181
|
-
return 'cs';
|
|
182
|
-
}
|
|
183
|
-
return null;
|
|
184
|
-
}
|
|
185
|
-
exports.getProjectLanguage = getProjectLanguage;
|
|
186
|
-
/**
|
|
187
|
-
* Reads in the contents of the target project file.
|
|
188
|
-
* @param projectPath The target project file path.
|
|
189
|
-
* @return The project file contents.
|
|
190
|
-
*/
|
|
191
|
-
function readProjectFile(projectPath) {
|
|
192
|
-
const projectContents = fs.readFileSync(projectPath, 'utf8').toString();
|
|
193
|
-
return new xmldom_1.DOMParser().parseFromString(projectContents, 'application/xml');
|
|
194
|
-
}
|
|
195
|
-
exports.readProjectFile = readProjectFile;
|
|
196
|
-
/**
|
|
197
|
-
* Search for the given property in the project contents and return its value.
|
|
198
|
-
* @param projectContents The XML project contents.
|
|
199
|
-
* @param propertyName The property to look for.
|
|
200
|
-
* @return The value of the tag if it exists.
|
|
201
|
-
*/
|
|
202
|
-
function findPropertyValue(projectContents, propertyName) {
|
|
203
|
-
var nodes = msbuildSelect(`//msbuild:PropertyGroup/msbuild:${propertyName}`, projectContents);
|
|
204
|
-
if (nodes.length > 0) {
|
|
205
|
-
// Take the last one
|
|
206
|
-
return nodes[nodes.length - 1].textContent;
|
|
207
|
-
}
|
|
208
|
-
return null;
|
|
209
|
-
}
|
|
210
|
-
exports.findPropertyValue = findPropertyValue;
|
|
211
|
-
/**
|
|
212
|
-
* Search for the given import project in the project contents and return if it exists.
|
|
213
|
-
* @param projectContents The XML project contents.
|
|
214
|
-
* @param projectName The project to look for.
|
|
215
|
-
* @return If the target exists.
|
|
216
|
-
*/
|
|
217
|
-
function importProjectExists(projectContents, projectName) {
|
|
218
|
-
var nodes = msbuildSelect(`//msbuild:Import[contains(@Project,'${projectName}')]`, projectContents);
|
|
219
|
-
return nodes.length > 0;
|
|
220
|
-
}
|
|
221
|
-
exports.importProjectExists = importProjectExists;
|
|
222
|
-
/**
|
|
223
|
-
* Gets the name of the project from the project contents.
|
|
224
|
-
* @param projectPath The project file path to check.
|
|
225
|
-
* @param projectContents The XML project contents.
|
|
226
|
-
* @return The project name.
|
|
227
|
-
*/
|
|
228
|
-
function getProjectName(projectContents) {
|
|
229
|
-
const name = findPropertyValue(projectContents, 'ProjectName') ||
|
|
230
|
-
findPropertyValue(projectContents, 'AssemblyName') ||
|
|
231
|
-
'';
|
|
232
|
-
return name;
|
|
233
|
-
}
|
|
234
|
-
exports.getProjectName = getProjectName;
|
|
235
|
-
/**
|
|
236
|
-
* Gets the namespace of the project from the project contents.
|
|
237
|
-
* @param projectContents The XML project contents.
|
|
238
|
-
* @return The project namespace.
|
|
239
|
-
*/
|
|
240
|
-
function getProjectNamespace(projectContents) {
|
|
241
|
-
return findPropertyValue(projectContents, 'RootNamespace');
|
|
242
|
-
}
|
|
243
|
-
exports.getProjectNamespace = getProjectNamespace;
|
|
244
|
-
/**
|
|
245
|
-
* Gets the guid of the project from the project contents.
|
|
246
|
-
* @param projectContents The XML project contents.
|
|
247
|
-
* @return The project guid.
|
|
248
|
-
*/
|
|
249
|
-
function getProjectGuid(projectContents) {
|
|
250
|
-
return findPropertyValue(projectContents, 'ProjectGuid');
|
|
251
|
-
}
|
|
252
|
-
exports.getProjectGuid = getProjectGuid;
|
|
253
|
-
//# sourceMappingURL=configUtils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configUtils.js","sourceRoot":"","sources":["../../src/config/configUtils.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,yBAAyB;AACzB,6BAA6B;AAC7B,6BAA6B;AAE7B,mCAAiC;AACjC,+BAA+B;AAE/B,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IACxC,OAAO,EAAE,qDAAqD;CAC/D,CAAC,CAAC;AAEH;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,MAAc,EAAE,eAAuB;IAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE;QACxD,GAAG,EAAE,MAAM;QACX,MAAM,EAAE;YACN,iBAAiB;YACjB,aAAa;YACb,eAAe;YACf,cAAc;YACd,uBAAuB;YACvB,gBAAgB;SACjB;KACF,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC;AAdD,8BAcC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,MAAM,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC5B,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,8CAQC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC5C,OAAO,CACL,EAAE;SACC,YAAY,CAAC,QAAQ,CAAC;SACtB,QAAQ,EAAE;SACV,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAC7B,CAAC;AACJ,CAAC;AAPD,sCAOC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,SAAiB;IACjD,gDAAgD;IAChD,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEnD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,0CAA0C;QAC1C,OAAO,EAAE,CAAC;KACX;SAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QACpC,wDAAwD;QACxD,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1B;IAED,IAAI,aAAa,GAAG,EAAE,CAAC;IAEvB,2EAA2E;IAC3E,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE;QACvC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE;YACrD,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAClC;KACF;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAtBD,8CAsBC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,QAAgB;IACrD,MAAM,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAElD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,OAAO,mBAAmB,CACxB,eAAe,EACf,6CAA6C,CAC9C,CAAC;KACH;SAAM,IAAI,WAAW,KAAK,KAAK,EAAE;QAChC,OAAO,mBAAmB,CACxB,eAAe,EACf,0CAA0C,CAC3C,CAAC;KACH;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAjBD,wDAiBC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CAAC,SAAiB;IAC1D,gDAAgD;IAChD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAEnD,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,yCAAyC;QACzC,OAAO,EAAE,CAAC;KACX;IAED,IAAI,sBAAsB,GAAG,EAAE,CAAC;IAEhC,uEAAuE;IACvE,KAAK,MAAM,WAAW,IAAI,WAAW,EAAE;QACrC,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE;YAC7D,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC1C;KACF;IAED,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAtBD,gEAsBC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAElD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,OAAO,mBAAmB,CACxB,eAAe,EACf,6CAA6C,CAC9C,CAAC;KACH;SAAM,IAAI,WAAW,KAAK,KAAK,EAAE;QAChC,OAAO,mBAAmB,CACxB,eAAe,EACf,0CAA0C,CAC3C,CAAC;KACH;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,SAAiB;IACnD,gDAAgD;IAChD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAEnD,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,yCAAyC;QACzC,OAAO,EAAE,CAAC;KACX;IAED,IAAI,eAAe,GAAG,EAAE,CAAC;IAEzB,iEAAiE;IACjE,KAAK,MAAM,WAAW,IAAI,WAAW,EAAE;QACrC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE;YACtD,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACnC;KACF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAtBD,kDAsBC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,WAAmB;IACpD,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpC,OAAO,KAAK,CAAC;KACd;SAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC1C,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,gDAQC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxE,OAAO,IAAI,kBAAS,EAAE,CAAC,eAAe,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;AAC7E,CAAC;AAHD,0CAGC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAC/B,eAAqB,EACrB,YAAoB;IAEpB,IAAI,KAAK,GAAG,aAAa,CACvB,mCAAmC,YAAY,EAAE,EACjD,eAAe,CAChB,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,oBAAoB;QACpB,OAAQ,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAU,CAAC,WAAW,CAAC;KACtD;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAfD,8CAeC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CACjC,eAAqB,EACrB,WAAmB;IAEnB,IAAI,KAAK,GAAG,aAAa,CACvB,uCAAuC,WAAW,KAAK,EACvD,eAAe,CAChB,CAAC;IAEF,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AAC1B,CAAC;AAVD,kDAUC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,eAAqB;IAClD,MAAM,IAAI,GACR,iBAAiB,CAAC,eAAe,EAAE,aAAa,CAAC;QACjD,iBAAiB,CAAC,eAAe,EAAE,cAAc,CAAC;QAClD,EAAE,CAAC;IAEL,OAAO,IAAI,CAAC;AACd,CAAC;AAPD,wCAOC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,eAAqB;IACvD,OAAO,iBAAiB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAC7D,CAAC;AAFD,kDAEC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,eAAqB;IAClD,OAAO,iBAAiB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAC3D,CAAC;AAFD,wCAEC"}
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) Microsoft Corporation.
|
|
4
|
-
* Licensed under the MIT License.
|
|
5
|
-
* @format
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.dependencyConfigWindows = void 0;
|
|
9
|
-
const path = require("path");
|
|
10
|
-
const configUtils = require("./configUtils.js");
|
|
11
|
-
/**
|
|
12
|
-
* Gets the config of any RNW native modules under the target folder.
|
|
13
|
-
* @param userConfig A manually specified override config.
|
|
14
|
-
* @return The config if any RNW native modules exist.
|
|
15
|
-
*/
|
|
16
|
-
function dependencyConfigWindows(folder, userConfig = {}) {
|
|
17
|
-
if (userConfig === null) {
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
20
|
-
const usingManualProjectsOverride = 'projects' in userConfig && Array.isArray(userConfig.projects);
|
|
21
|
-
const usingManualNugetPackagesOverride = 'nugetPackages' in userConfig && Array.isArray(userConfig.nugetPackages);
|
|
22
|
-
var result = {
|
|
23
|
-
folder,
|
|
24
|
-
projects: usingManualProjectsOverride ? userConfig.projects : [],
|
|
25
|
-
solutionFile: null,
|
|
26
|
-
nugetPackages: usingManualNugetPackagesOverride
|
|
27
|
-
? userConfig.nugetPackages
|
|
28
|
-
: [],
|
|
29
|
-
};
|
|
30
|
-
let sourceDir = null;
|
|
31
|
-
if (usingManualProjectsOverride && result.projects.length > 0) {
|
|
32
|
-
// Manually provided projects, so extract the sourceDir
|
|
33
|
-
if (!('sourceDir' in userConfig)) {
|
|
34
|
-
sourceDir =
|
|
35
|
-
'Error: Source dir is required if projects are specified, but it is not specified in react-native.config.';
|
|
36
|
-
}
|
|
37
|
-
else if (userConfig.sourceDir === null) {
|
|
38
|
-
sourceDir =
|
|
39
|
-
'Error: Source dir is required if projects are specified, but it is null in react-native.config.';
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
sourceDir = path.join(folder, userConfig.sourceDir);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
else if (!usingManualProjectsOverride) {
|
|
46
|
-
// No manually provided projects, try to find sourceDir
|
|
47
|
-
sourceDir = configUtils.findWindowsFolder(folder);
|
|
48
|
-
}
|
|
49
|
-
if (sourceDir === null) {
|
|
50
|
-
// Try to salvage the missing sourceDir
|
|
51
|
-
if (result.projects.length === 0 && result.nugetPackages.length > 0) {
|
|
52
|
-
// Only nuget packages, no sourceDir required
|
|
53
|
-
return result;
|
|
54
|
-
}
|
|
55
|
-
else if (result.projects.length > 0) {
|
|
56
|
-
// Projects overridden but no sourceDir, assume the sourceDir === folder
|
|
57
|
-
sourceDir = folder;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
else if (sourceDir.startsWith('Error: ')) {
|
|
61
|
-
// Source dir error, bail with error
|
|
62
|
-
result.sourceDir = sourceDir;
|
|
63
|
-
return result;
|
|
64
|
-
}
|
|
65
|
-
if (sourceDir === null) {
|
|
66
|
-
// After everything above, if sourceDir is still null,
|
|
67
|
-
// there's nothing more to look for here, bail
|
|
68
|
-
return null;
|
|
69
|
-
}
|
|
70
|
-
result.sourceDir = sourceDir.substr(folder.length + 1);
|
|
71
|
-
const usingManualSolutionFile = 'solutionFile' in userConfig;
|
|
72
|
-
var solutionFile = null;
|
|
73
|
-
if (usingManualSolutionFile && userConfig.solutionFile !== null) {
|
|
74
|
-
// Manually provided solutionFile, so extract it
|
|
75
|
-
solutionFile = path.join(sourceDir, userConfig.solutionFile);
|
|
76
|
-
}
|
|
77
|
-
else if (!usingManualSolutionFile) {
|
|
78
|
-
// No manually provided solutionFile, try to find it
|
|
79
|
-
const foundSolutions = configUtils.findSolutionFiles(sourceDir);
|
|
80
|
-
if (foundSolutions.length === 1) {
|
|
81
|
-
solutionFile = path.join(sourceDir, foundSolutions[0]);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
result.solutionFile =
|
|
85
|
-
solutionFile !== null ? solutionFile.substr(sourceDir.length + 1) : null;
|
|
86
|
-
if (usingManualProjectsOverride) {
|
|
87
|
-
// react-native.config used, fill out (auto) items for each provided project, verify (req) items are present
|
|
88
|
-
const alwaysRequired = [
|
|
89
|
-
'projectFile',
|
|
90
|
-
'directDependency',
|
|
91
|
-
];
|
|
92
|
-
for (let project of result.projects) {
|
|
93
|
-
// Verifying (req) items
|
|
94
|
-
var errorFound = false;
|
|
95
|
-
alwaysRequired.forEach(item => {
|
|
96
|
-
if (!(item in project)) {
|
|
97
|
-
project[item] = `Error: ${item} is required for each project in react-native.config`;
|
|
98
|
-
errorFound = true;
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
if (errorFound) {
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
const projectFile = path.join(sourceDir, project.projectFile);
|
|
105
|
-
const projectContents = configUtils.readProjectFile(projectFile);
|
|
106
|
-
// Calculating (auto) items
|
|
107
|
-
project.projectName = configUtils.getProjectName(projectContents);
|
|
108
|
-
project.projectLang = configUtils.getProjectLanguage(projectFile);
|
|
109
|
-
project.projectGuid = configUtils.getProjectGuid(projectContents);
|
|
110
|
-
if (project.directDependency) {
|
|
111
|
-
// Calculating more (auto) items
|
|
112
|
-
const projectNamespace = configUtils.getProjectNamespace(projectContents);
|
|
113
|
-
if (projectNamespace !== null) {
|
|
114
|
-
const cppNamespace = projectNamespace.replace(/\./g, '::');
|
|
115
|
-
const csNamespace = projectNamespace.replace(/::/g, '.');
|
|
116
|
-
project.cppHeaders = project.cppHeaders || [`winrt/${csNamespace}.h`];
|
|
117
|
-
project.cppPackageProviders = project.cppPackageProviders || [
|
|
118
|
-
`${cppNamespace}::ReactPackageProvider`,
|
|
119
|
-
];
|
|
120
|
-
project.csNamespaces = project.csNamespaces || [`${csNamespace}`];
|
|
121
|
-
project.csPackageProviders = project.csPackageProviders || [
|
|
122
|
-
`${csNamespace}.ReactPackageProvider`,
|
|
123
|
-
];
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
// No react-native.config, try to heurestically find any projects
|
|
130
|
-
const foundProjects = configUtils.findDependencyProjectFiles(sourceDir);
|
|
131
|
-
for (const foundProject of foundProjects) {
|
|
132
|
-
const projectFile = path.join(sourceDir, foundProject);
|
|
133
|
-
const projectLang = configUtils.getProjectLanguage(projectFile);
|
|
134
|
-
const projectContents = configUtils.readProjectFile(projectFile);
|
|
135
|
-
const projectName = configUtils.getProjectName(projectContents);
|
|
136
|
-
const projectGuid = configUtils.getProjectGuid(projectContents);
|
|
137
|
-
const projectNamespace = configUtils.getProjectNamespace(projectContents);
|
|
138
|
-
const directDependency = true;
|
|
139
|
-
let cppHeaders = [];
|
|
140
|
-
let cppPackageProviders = [];
|
|
141
|
-
let csNamespaces = [];
|
|
142
|
-
let csPackageProviders = [];
|
|
143
|
-
if (projectNamespace !== null) {
|
|
144
|
-
const cppNamespace = projectNamespace.replace(/\./g, '::');
|
|
145
|
-
const csNamespace = projectNamespace.replace(/::/g, '.');
|
|
146
|
-
cppHeaders.push(`winrt/${csNamespace}.h`);
|
|
147
|
-
cppPackageProviders.push(`${cppNamespace}::ReactPackageProvider`);
|
|
148
|
-
csNamespaces.push(`${csNamespace}`);
|
|
149
|
-
csPackageProviders.push(`${csNamespace}.ReactPackageProvider`);
|
|
150
|
-
}
|
|
151
|
-
result.projects.push({
|
|
152
|
-
projectFile: projectFile.substr(sourceDir.length + 1),
|
|
153
|
-
projectName,
|
|
154
|
-
projectLang,
|
|
155
|
-
projectGuid,
|
|
156
|
-
directDependency,
|
|
157
|
-
cppHeaders,
|
|
158
|
-
cppPackageProviders,
|
|
159
|
-
csNamespaces,
|
|
160
|
-
csPackageProviders,
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
return result;
|
|
165
|
-
}
|
|
166
|
-
exports.dependencyConfigWindows = dependencyConfigWindows;
|
|
167
|
-
//# sourceMappingURL=dependencyConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyConfig.js","sourceRoot":"","sources":["../../src/config/dependencyConfig.ts"],"names":[],"mappings":"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"}
|