react-native-platform-override 1.9.20 → 1.9.22
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/lib-commonjs/Api.d.ts +57 -57
- package/lib-commonjs/Api.js +187 -187
- package/lib-commonjs/BatchingQueue.d.ts +15 -15
- package/lib-commonjs/BatchingQueue.js +57 -57
- package/lib-commonjs/Cli.d.ts +7 -7
- package/lib-commonjs/Cli.js +323 -323
- package/lib-commonjs/CrossProcessLock.d.ts +44 -44
- package/lib-commonjs/CrossProcessLock.js +147 -147
- package/lib-commonjs/DiffStrategy.d.ts +24 -24
- package/lib-commonjs/DiffStrategy.js +34 -34
- package/lib-commonjs/FileRepository.d.ts +62 -62
- package/lib-commonjs/FileRepository.js +21 -21
- package/lib-commonjs/FileSearch.d.ts +21 -21
- package/lib-commonjs/FileSearch.js +77 -77
- package/lib-commonjs/FileSystemRepository.d.ts +20 -20
- package/lib-commonjs/FileSystemRepository.js +62 -62
- package/lib-commonjs/GitReactFileRepository.d.ts +56 -56
- package/lib-commonjs/GitReactFileRepository.js +202 -202
- package/lib-commonjs/Hash.d.ts +33 -33
- package/lib-commonjs/Hash.js +81 -81
- package/lib-commonjs/Manifest.d.ts +80 -80
- package/lib-commonjs/Manifest.js +157 -157
- package/lib-commonjs/Override.d.ts +182 -182
- package/lib-commonjs/Override.js +248 -248
- package/lib-commonjs/OverrideFactory.d.ts +33 -33
- package/lib-commonjs/OverrideFactory.js +85 -85
- package/lib-commonjs/OverridePrompt.d.ts +30 -30
- package/lib-commonjs/OverridePrompt.js +130 -130
- package/lib-commonjs/PackageUtils.d.ts +15 -15
- package/lib-commonjs/PackageUtils.js +40 -40
- package/lib-commonjs/PathUtils.d.ts +14 -14
- package/lib-commonjs/PathUtils.js +31 -31
- package/lib-commonjs/Serialized.d.ts +158 -158
- package/lib-commonjs/Serialized.js +145 -145
- package/lib-commonjs/UpgradeStrategy.d.ts +39 -39
- package/lib-commonjs/UpgradeStrategy.js +102 -102
- package/lib-commonjs/ValidationStrategy.d.ts +57 -57
- package/lib-commonjs/ValidationStrategy.js +124 -124
- package/lib-commonjs/refFromVersion.d.ts +10 -10
- package/lib-commonjs/refFromVersion.js +98 -98
- package/lib-commonjs/refFromVersion.js.map +1 -1
- package/lib-commonjs/scripts/generateManifest.d.ts +7 -7
- package/lib-commonjs/scripts/generateManifest.js +196 -196
- package/lib-commonjs/scripts/hashFile.d.ts +7 -7
- package/lib-commonjs/scripts/hashFile.js +17 -17
- package/lib-commonjs/scripts/testLocks.d.ts +1 -1
- package/lib-commonjs/scripts/testLocks.js +29 -29
- package/package.json +10 -10
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Microsoft Corporation.
|
|
3
|
-
* Licensed under the MIT License.
|
|
4
|
-
*
|
|
5
|
-
* @format
|
|
6
|
-
*/
|
|
7
|
-
export declare function getAbbreviatedRef(reactNativeVersion: string): string;
|
|
8
|
-
export declare function fetchFullRef(reactNativeVersion: string, opts?: {
|
|
9
|
-
githubToken?: string;
|
|
10
|
-
}): Promise<string>;
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Microsoft Corporation.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*
|
|
5
|
+
* @format
|
|
6
|
+
*/
|
|
7
|
+
export declare function getAbbreviatedRef(reactNativeVersion: string): string;
|
|
8
|
+
export declare function fetchFullRef(reactNativeVersion: string, opts?: {
|
|
9
|
+
githubToken?: string;
|
|
10
|
+
}): Promise<string>;
|
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) Microsoft Corporation.
|
|
4
|
-
* Licensed under the MIT License.
|
|
5
|
-
*
|
|
6
|
-
* @format
|
|
7
|
-
*/
|
|
8
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.fetchFullRef = exports.getAbbreviatedRef = void 0;
|
|
13
|
-
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
14
|
-
const semver_1 = __importDefault(require("semver"));
|
|
15
|
-
function getAbbreviatedRef(reactNativeVersion) {
|
|
16
|
-
if (!semver_1.default.valid(reactNativeVersion)) {
|
|
17
|
-
throw new Error(`${reactNativeVersion} is not a valid semver version`);
|
|
18
|
-
}
|
|
19
|
-
if (semver_1.default.
|
|
20
|
-
reactNativeVersion.includes('nightly')) {
|
|
21
|
-
return extractHashFromNightlyVersion(reactNativeVersion);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
return `v${reactNativeVersion}`;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.getAbbreviatedRef = getAbbreviatedRef;
|
|
28
|
-
async function fetchFullRef(reactNativeVersion, opts) {
|
|
29
|
-
if (!semver_1.default.valid(reactNativeVersion)) {
|
|
30
|
-
throw new Error(`${reactNativeVersion} is not a valid semver version`);
|
|
31
|
-
}
|
|
32
|
-
if (semver_1.default.
|
|
33
|
-
reactNativeVersion.includes('nightly')) {
|
|
34
|
-
const abbrevHash = extractHashFromNightlyVersion(reactNativeVersion);
|
|
35
|
-
return fetchFullCommitHash(abbrevHash, opts);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
return `refs/tags/v${reactNativeVersion}`;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
exports.fetchFullRef = fetchFullRef;
|
|
42
|
-
// Nightly build have progressed from
|
|
43
|
-
// 1. 0.0.0-<commitHash>
|
|
44
|
-
// 2. 0.0.0-<commitHash>-<date>-<time> (transitional)
|
|
45
|
-
// 3. 0.0.0-<date>-<time>-<commitHash>
|
|
46
|
-
// 4. <version>-nightly-<date>-<commitHash>
|
|
47
|
-
function extractHashFromNightlyVersion(reactNativeVersion) {
|
|
48
|
-
// Several versions do not fall into the normal rule for positioning. Special
|
|
49
|
-
// case them.
|
|
50
|
-
const transitionalVersions = [
|
|
51
|
-
'0.0.0-2d2de744b-20210929-2246',
|
|
52
|
-
'0.0.0-1ee16fc2f-20210930-2008',
|
|
53
|
-
'0.0.0-34b7d22f3-20211001-2008',
|
|
54
|
-
'0.0.0-36f3bf2f5-20211002-2010',
|
|
55
|
-
'0.0.0-36f3bf2f5-20211003-2009',
|
|
56
|
-
'0.0.0-36f3bf2f5-20211004-2008',
|
|
57
|
-
'0.0.0-046b02628-20211005-2008',
|
|
58
|
-
'0.0.0-22801870f-20211006-2008',
|
|
59
|
-
'0.0.0-e612d3a11-20211007-2009',
|
|
60
|
-
'0.0.0-c901c43d1-20211008-2008',
|
|
61
|
-
'0.0.0-232d02c5f-20211009-2008',
|
|
62
|
-
'0.0.0-232d02c5f-20211009-2008',
|
|
63
|
-
'0.0.0-232d02c5f-20211009-2008',
|
|
64
|
-
'0.0.0-232d02c5f-20211009-2008',
|
|
65
|
-
'0.0.0-91adb761c-20211013-2010',
|
|
66
|
-
];
|
|
67
|
-
const preSegment = String(semver_1.default.prerelease(reactNativeVersion)[0]);
|
|
68
|
-
const splitPre = preSegment.split('-');
|
|
69
|
-
// Handle #1
|
|
70
|
-
if (splitPre.length === 1) {
|
|
71
|
-
return splitPre[0];
|
|
72
|
-
}
|
|
73
|
-
// Handle #2
|
|
74
|
-
if (transitionalVersions.includes(reactNativeVersion)) {
|
|
75
|
-
return splitPre[0];
|
|
76
|
-
}
|
|
77
|
-
// Handle #3
|
|
78
|
-
if (splitPre.length === 3) {
|
|
79
|
-
return splitPre[2];
|
|
80
|
-
}
|
|
81
|
-
// Handle #4
|
|
82
|
-
return splitPre[3];
|
|
83
|
-
}
|
|
84
|
-
async function fetchFullCommitHash(abbrevHash, opts) {
|
|
85
|
-
// We cannot get abbreviated hash directly from a remote, so query Github's
|
|
86
|
-
// API for it.
|
|
87
|
-
const commitInfo = await (0, node_fetch_1.default)(`https://api.github.com/repos/facebook/react-native/commits/${abbrevHash}`, {
|
|
88
|
-
headers: {
|
|
89
|
-
'Content-Type': 'application/json',
|
|
90
|
-
'User-Agent': 'react-native-platform-override',
|
|
91
|
-
...((opts === null || opts === void 0 ? void 0 : opts.githubToken) && { Authorization: `Token ${opts.githubToken}` }),
|
|
92
|
-
},
|
|
93
|
-
});
|
|
94
|
-
if (!commitInfo.ok) {
|
|
95
|
-
throw new Error(`Unable to query Github for commit '${abbrevHash}' Status: '${commitInfo.statusText}'`);
|
|
96
|
-
}
|
|
97
|
-
return (await commitInfo.json()).sha;
|
|
98
|
-
}
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Microsoft Corporation.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*
|
|
6
|
+
* @format
|
|
7
|
+
*/
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.fetchFullRef = exports.getAbbreviatedRef = void 0;
|
|
13
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
14
|
+
const semver_1 = __importDefault(require("semver"));
|
|
15
|
+
function getAbbreviatedRef(reactNativeVersion) {
|
|
16
|
+
if (!semver_1.default.valid(reactNativeVersion)) {
|
|
17
|
+
throw new Error(`${reactNativeVersion} is not a valid semver version`);
|
|
18
|
+
}
|
|
19
|
+
if (semver_1.default.ltr(reactNativeVersion, '0.0.0', { includePrerelease: true }) ||
|
|
20
|
+
reactNativeVersion.includes('nightly')) {
|
|
21
|
+
return extractHashFromNightlyVersion(reactNativeVersion);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
return `v${reactNativeVersion}`;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.getAbbreviatedRef = getAbbreviatedRef;
|
|
28
|
+
async function fetchFullRef(reactNativeVersion, opts) {
|
|
29
|
+
if (!semver_1.default.valid(reactNativeVersion)) {
|
|
30
|
+
throw new Error(`${reactNativeVersion} is not a valid semver version`);
|
|
31
|
+
}
|
|
32
|
+
if (semver_1.default.ltr(reactNativeVersion, '0.0.0', { includePrerelease: true }) ||
|
|
33
|
+
reactNativeVersion.includes('nightly')) {
|
|
34
|
+
const abbrevHash = extractHashFromNightlyVersion(reactNativeVersion);
|
|
35
|
+
return fetchFullCommitHash(abbrevHash, opts);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
return `refs/tags/v${reactNativeVersion}`;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.fetchFullRef = fetchFullRef;
|
|
42
|
+
// Nightly build have progressed from
|
|
43
|
+
// 1. 0.0.0-<commitHash>
|
|
44
|
+
// 2. 0.0.0-<commitHash>-<date>-<time> (transitional)
|
|
45
|
+
// 3. 0.0.0-<date>-<time>-<commitHash>
|
|
46
|
+
// 4. <version>-nightly-<date>-<commitHash>
|
|
47
|
+
function extractHashFromNightlyVersion(reactNativeVersion) {
|
|
48
|
+
// Several versions do not fall into the normal rule for positioning. Special
|
|
49
|
+
// case them.
|
|
50
|
+
const transitionalVersions = [
|
|
51
|
+
'0.0.0-2d2de744b-20210929-2246',
|
|
52
|
+
'0.0.0-1ee16fc2f-20210930-2008',
|
|
53
|
+
'0.0.0-34b7d22f3-20211001-2008',
|
|
54
|
+
'0.0.0-36f3bf2f5-20211002-2010',
|
|
55
|
+
'0.0.0-36f3bf2f5-20211003-2009',
|
|
56
|
+
'0.0.0-36f3bf2f5-20211004-2008',
|
|
57
|
+
'0.0.0-046b02628-20211005-2008',
|
|
58
|
+
'0.0.0-22801870f-20211006-2008',
|
|
59
|
+
'0.0.0-e612d3a11-20211007-2009',
|
|
60
|
+
'0.0.0-c901c43d1-20211008-2008',
|
|
61
|
+
'0.0.0-232d02c5f-20211009-2008',
|
|
62
|
+
'0.0.0-232d02c5f-20211009-2008',
|
|
63
|
+
'0.0.0-232d02c5f-20211009-2008',
|
|
64
|
+
'0.0.0-232d02c5f-20211009-2008',
|
|
65
|
+
'0.0.0-91adb761c-20211013-2010',
|
|
66
|
+
];
|
|
67
|
+
const preSegment = String(semver_1.default.prerelease(reactNativeVersion)[0]);
|
|
68
|
+
const splitPre = preSegment.split('-');
|
|
69
|
+
// Handle #1
|
|
70
|
+
if (splitPre.length === 1) {
|
|
71
|
+
return splitPre[0];
|
|
72
|
+
}
|
|
73
|
+
// Handle #2
|
|
74
|
+
if (transitionalVersions.includes(reactNativeVersion)) {
|
|
75
|
+
return splitPre[0];
|
|
76
|
+
}
|
|
77
|
+
// Handle #3
|
|
78
|
+
if (splitPre.length === 3) {
|
|
79
|
+
return splitPre[2];
|
|
80
|
+
}
|
|
81
|
+
// Handle #4
|
|
82
|
+
return splitPre[3];
|
|
83
|
+
}
|
|
84
|
+
async function fetchFullCommitHash(abbrevHash, opts) {
|
|
85
|
+
// We cannot get abbreviated hash directly from a remote, so query Github's
|
|
86
|
+
// API for it.
|
|
87
|
+
const commitInfo = await (0, node_fetch_1.default)(`https://api.github.com/repos/facebook/react-native/commits/${abbrevHash}`, {
|
|
88
|
+
headers: {
|
|
89
|
+
'Content-Type': 'application/json',
|
|
90
|
+
'User-Agent': 'react-native-platform-override',
|
|
91
|
+
...((opts === null || opts === void 0 ? void 0 : opts.githubToken) && { Authorization: `Token ${opts.githubToken}` }),
|
|
92
|
+
},
|
|
93
|
+
});
|
|
94
|
+
if (!commitInfo.ok) {
|
|
95
|
+
throw new Error(`Unable to query Github for commit '${abbrevHash}' Status: '${commitInfo.statusText}'`);
|
|
96
|
+
}
|
|
97
|
+
return (await commitInfo.json()).sha;
|
|
98
|
+
}
|
|
99
99
|
//# sourceMappingURL=refFromVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refFromVersion.js","sourceRoot":"","sources":["../src/refFromVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,4DAA+B;AAC/B,oDAA4B;AAE5B,SAAgB,iBAAiB,CAAC,kBAA0B;IAC1D,IAAI,CAAC,gBAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,GAAG,kBAAkB,gCAAgC,CAAC,CAAC;KACxE;IAED,IACE,gBAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"refFromVersion.js","sourceRoot":"","sources":["../src/refFromVersion.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * @format\n */\n\nimport fetch from 'node-fetch';\nimport semver from 'semver';\n\nexport function getAbbreviatedRef(reactNativeVersion: string): string {\n if (!semver.valid(reactNativeVersion)) {\n throw new Error(`${reactNativeVersion} is not a valid semver version`);\n }\n\n if (\n semver.ltr(reactNativeVersion, '0.0.0', {includePrerelease: true}) ||\n reactNativeVersion.includes('nightly')\n ) {\n return extractHashFromNightlyVersion(reactNativeVersion);\n } else {\n return `v${reactNativeVersion}`;\n }\n}\n\nexport async function fetchFullRef(\n reactNativeVersion: string,\n opts?: {githubToken?: string},\n): Promise<string> {\n if (!semver.valid(reactNativeVersion)) {\n throw new Error(`${reactNativeVersion} is not a valid semver version`);\n }\n\n if (\n semver.ltr(reactNativeVersion, '0.0.0', {includePrerelease: true}) ||\n reactNativeVersion.includes('nightly')\n ) {\n const abbrevHash = extractHashFromNightlyVersion(reactNativeVersion);\n return fetchFullCommitHash(abbrevHash, opts);\n } else {\n return `refs/tags/v${reactNativeVersion}`;\n }\n}\n\n// Nightly build have progressed from\n// 1. 0.0.0-<commitHash>\n// 2. 0.0.0-<commitHash>-<date>-<time> (transitional)\n// 3. 0.0.0-<date>-<time>-<commitHash>\n// 4. <version>-nightly-<date>-<commitHash>\nfunction extractHashFromNightlyVersion(reactNativeVersion: string): string {\n // Several versions do not fall into the normal rule for positioning. Special\n // case them.\n const transitionalVersions = [\n '0.0.0-2d2de744b-20210929-2246',\n '0.0.0-1ee16fc2f-20210930-2008',\n '0.0.0-34b7d22f3-20211001-2008',\n '0.0.0-36f3bf2f5-20211002-2010',\n '0.0.0-36f3bf2f5-20211003-2009',\n '0.0.0-36f3bf2f5-20211004-2008',\n '0.0.0-046b02628-20211005-2008',\n '0.0.0-22801870f-20211006-2008',\n '0.0.0-e612d3a11-20211007-2009',\n '0.0.0-c901c43d1-20211008-2008',\n '0.0.0-232d02c5f-20211009-2008',\n '0.0.0-232d02c5f-20211009-2008',\n '0.0.0-232d02c5f-20211009-2008',\n '0.0.0-232d02c5f-20211009-2008',\n '0.0.0-91adb761c-20211013-2010',\n ];\n\n const preSegment = String(semver.prerelease(reactNativeVersion)![0]);\n const splitPre = preSegment.split('-');\n\n // Handle #1\n if (splitPre.length === 1) {\n return splitPre[0];\n }\n\n // Handle #2\n if (transitionalVersions.includes(reactNativeVersion)) {\n return splitPre[0];\n }\n\n // Handle #3\n if (splitPre.length === 3) {\n return splitPre[2];\n }\n\n // Handle #4\n return splitPre[3];\n}\n\nasync function fetchFullCommitHash(\n abbrevHash: string,\n opts?: {githubToken?: string},\n): Promise<string> {\n // We cannot get abbreviated hash directly from a remote, so query Github's\n // API for it.\n const commitInfo = await fetch(\n `https://api.github.com/repos/facebook/react-native/commits/${abbrevHash}`,\n {\n headers: {\n 'Content-Type': 'application/json',\n 'User-Agent': 'react-native-platform-override',\n ...(opts?.githubToken && {Authorization: `Token ${opts.githubToken}`}),\n },\n },\n );\n if (!commitInfo.ok) {\n throw new Error(\n `Unable to query Github for commit '${abbrevHash}' Status: '${commitInfo.statusText}'`,\n );\n }\n\n return (await commitInfo.json()).sha;\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) Microsoft Corporation.
|
|
3
|
-
* Licensed under the MIT License.
|
|
4
|
-
*
|
|
5
|
-
* @format
|
|
6
|
-
*/
|
|
7
|
-
export {};
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Microsoft Corporation.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*
|
|
5
|
+
* @format
|
|
6
|
+
*/
|
|
7
|
+
export {};
|