expo-release-it 0.6.1 → 0.6.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/build/EnvUtil-DWWwkHaf.js +8 -0
- package/build/EnvUtil-DWWwkHaf.js.map +1 -0
- package/build/FastlaneOption-B0pfn4ji.js +35 -0
- package/build/FastlaneOption-B0pfn4ji.js.map +1 -0
- package/build/FileUtil-B9JnWobK.js +57 -0
- package/build/FileUtil-B9JnWobK.js.map +1 -0
- package/build/InqueryInputs-BSXevUsc.js +112 -0
- package/build/InqueryInputs-BSXevUsc.js.map +1 -0
- package/build/MetadataSyncUtil-BfIdWQFq.js +42 -0
- package/build/MetadataSyncUtil-BfIdWQFq.js.map +1 -0
- package/build/OptionHolder-CnJWw2NY.js +99 -0
- package/build/OptionHolder-CnJWw2NY.js.map +1 -0
- package/build/VersionUtil-DNdM_l9_.js +101 -0
- package/build/VersionUtil-DNdM_l9_.js.map +1 -0
- package/build/build-Cfszpodi.js +88 -0
- package/build/build-Cfszpodi.js.map +1 -0
- package/build/bump-CA4z8SNw.js +122 -0
- package/build/bump-CA4z8SNw.js.map +1 -0
- package/build/calculateElapsed-CynU9UU_.js +13 -0
- package/build/calculateElapsed-CynU9UU_.js.map +1 -0
- package/build/command/build.d.ts +7 -3
- package/build/command/build.js +23 -711
- package/build/command/bump.d.ts +7 -3
- package/build/command/bump.js +14 -486
- package/build/command/init.d.ts +7 -3
- package/build/command/init.js +13 -462
- package/build/command/pull.d.ts +7 -3
- package/build/command/pull.js +22 -696
- package/build/command/submit.d.ts +7 -3
- package/build/command/submit.js +23 -700
- package/build/command/upload.d.ts +7 -3
- package/build/command/upload.js +23 -705
- package/build/execShellScript-Bd5xbFX5.js +22 -0
- package/build/execShellScript-Bd5xbFX5.js.map +1 -0
- package/build/generateAppStoreConnectApiKeyFile-Bv4uKCVV.js +18 -0
- package/build/generateAppStoreConnectApiKeyFile-Bv4uKCVV.js.map +1 -0
- package/build/hydrateKeyholderFileValues-B9LnsTkK.js +11 -0
- package/build/hydrateKeyholderFileValues-B9LnsTkK.js.map +1 -0
- package/build/index.d.ts +3 -1
- package/build/index.js +62 -1247
- package/build/index.js.map +1 -1
- package/build/init-BHnpAl7P.js +148 -0
- package/build/init-BHnpAl7P.js.map +1 -0
- package/build/injectTemplatePlaceHolders-9RrxkVt3.js +16 -0
- package/build/injectTemplatePlaceHolders-9RrxkVt3.js.map +1 -0
- package/build/iterateAllFiles-CbEPek2B.js +15 -0
- package/build/iterateAllFiles-CbEPek2B.js.map +1 -0
- package/build/logger-DvQ7ScMQ.js +16 -0
- package/build/logger-DvQ7ScMQ.js.map +1 -0
- package/build/parseConfigFile-C69Q1c8t.js +29 -0
- package/build/parseConfigFile-C69Q1c8t.js.map +1 -0
- package/build/prepareAndroid-B7ipkKfY.js +53 -0
- package/build/prepareAndroid-B7ipkKfY.js.map +1 -0
- package/build/prepareIos-CTXKmWHb.js +33 -0
- package/build/prepareIos-CTXKmWHb.js.map +1 -0
- package/build/pull-DO3D2c-e.js +70 -0
- package/build/pull-DO3D2c-e.js.map +1 -0
- package/build/replaceStringIfNotContain-CgZ460_D.js +9 -0
- package/build/replaceStringIfNotContain-CgZ460_D.js.map +1 -0
- package/build/setup-thd9BHpb.js +25 -0
- package/build/setup-thd9BHpb.js.map +1 -0
- package/build/spinner-BVmbE9I_.js +15 -0
- package/build/spinner-BVmbE9I_.js.map +1 -0
- package/build/submit-Dq95dq-u.js +65 -0
- package/build/submit-Dq95dq-u.js.map +1 -0
- package/build/throwError-DMF6E5pu.js +14 -0
- package/build/throwError-DMF6E5pu.js.map +1 -0
- package/build/type/{ExpoReleaseItConfiguration.d.d.ts → ExpoReleaseItConfiguration.d.ts} +7 -5
- package/build/upload-7XqUSKBA.js +68 -0
- package/build/upload-7XqUSKBA.js.map +1 -0
- package/build/util/EnvUtil.d.ts +3 -1
- package/build/util/EnvUtil.js +3 -10
- package/build/util/FastlaneOption.d.ts +3 -1
- package/build/util/FastlaneOption.js +4 -118
- package/build/util/FileUtil.d.ts +4 -2
- package/build/util/FileUtil.js +3 -78
- package/build/util/MetadataSyncUtil.d.ts +3 -1
- package/build/util/MetadataSyncUtil.js +5 -177
- package/build/util/OptionHolder.d.ts +45 -43
- package/build/util/OptionHolder.js +3 -88
- package/build/util/calculateElapsed.d.ts +3 -1
- package/build/util/calculateElapsed.js +3 -12
- package/build/util/generateAppStoreConnectApiKeyFile.d.ts +3 -1
- package/build/util/generateAppStoreConnectApiKeyFile.js +4 -117
- package/build/util/injectTemplatePlaceHolders.d.ts +3 -1
- package/build/util/injectTemplatePlaceHolders.js +5 -137
- package/build/util/input/InqueryInputs.d.ts +19 -12
- package/build/util/input/InqueryInputs.js +4 -205
- package/build/util/iterateAllFiles.d.ts +3 -1
- package/build/util/iterateAllFiles.js +3 -34
- package/build/util/logger.d.ts +10 -8
- package/build/util/logger.js +3 -16
- package/build/util/parseConfigFile.d.ts +3 -1
- package/build/util/parseConfigFile.js +4 -151
- package/build/util/replaceStringIfNotContain.d.ts +5 -0
- package/build/util/replaceStringIfNotContain.js +3 -0
- package/build/util/setup/VersionUtil.d.ts +9 -4
- package/build/util/setup/VersionUtil.js +8 -253
- package/build/util/setup/execShellScript.d.ts +16 -14
- package/build/util/setup/execShellScript.js +3 -19
- package/build/util/setup/hydrateKeyholderFileValues.d.ts +3 -1
- package/build/util/setup/hydrateKeyholderFileValues.js +4 -101
- package/build/util/setup/prepareAndroid.d.ts +3 -1
- package/build/util/setup/prepareAndroid.js +12 -281
- package/build/util/setup/prepareIos.d.ts +3 -1
- package/build/util/setup/prepareIos.js +11 -263
- package/build/util/setup/setup.d.ts +3 -1
- package/build/util/setup/setup.js +11 -272
- package/build/util/spinner.d.ts +3 -1
- package/build/util/spinner.js +3 -14
- package/build/util/throwError.d.ts +3 -1
- package/build/util/throwError.js +4 -33
- package/package.json +7 -7
- package/build/command/build.js.map +0 -1
- package/build/command/bump.js.map +0 -1
- package/build/command/init.js.map +0 -1
- package/build/command/pull.js.map +0 -1
- package/build/command/submit.js.map +0 -1
- package/build/command/upload.js.map +0 -1
- package/build/type/ExpoReleaseItConfiguration.d.js +0 -1
- package/build/type/ExpoReleaseItConfiguration.d.js.map +0 -1
- package/build/util/EnvUtil.js.map +0 -1
- package/build/util/FastlaneOption.js.map +0 -1
- package/build/util/FileUtil.js.map +0 -1
- package/build/util/MetadataSyncUtil.js.map +0 -1
- package/build/util/OptionHolder.js.map +0 -1
- package/build/util/calculateElapsed.js.map +0 -1
- package/build/util/generateAppStoreConnectApiKeyFile.js.map +0 -1
- package/build/util/injectTemplatePlaceHolders.js.map +0 -1
- package/build/util/input/InqueryInputs.js.map +0 -1
- package/build/util/iterateAllFiles.js.map +0 -1
- package/build/util/logger.js.map +0 -1
- package/build/util/parseConfigFile.js.map +0 -1
- package/build/util/setup/VersionUtil.js.map +0 -1
- package/build/util/setup/execShellScript.js.map +0 -1
- package/build/util/setup/hydrateKeyholderFileValues.js.map +0 -1
- package/build/util/setup/prepareAndroid.js.map +0 -1
- package/build/util/setup/prepareIos.js.map +0 -1
- package/build/util/setup/setup.js.map +0 -1
- package/build/util/spinner.js.map +0 -1
- package/build/util/throwError.js.map +0 -1
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { isDev } from "./EnvUtil-DWWwkHaf.js";
|
|
2
|
+
import { OptionHolder } from "./OptionHolder-CnJWw2NY.js";
|
|
3
|
+
import { constructInquirerFormattedMessage } from "./InqueryInputs-BSXevUsc.js";
|
|
4
|
+
import { logger } from "./logger-DvQ7ScMQ.js";
|
|
5
|
+
import { exe } from "./execShellScript-Bd5xbFX5.js";
|
|
6
|
+
import { throwError } from "./throwError-DMF6E5pu.js";
|
|
7
|
+
import { checkVersionCodeIsTiedWithVersionName, generateVersionCodeTiedWithVersionName, injectBinaryVersions } from "./VersionUtil-DNdM_l9_.js";
|
|
8
|
+
import { setup } from "./setup-thd9BHpb.js";
|
|
9
|
+
import { is } from "@mj-studio/js-util";
|
|
10
|
+
import { select } from "@inquirer/prompts";
|
|
11
|
+
import semver from "semver";
|
|
12
|
+
|
|
13
|
+
//#region src/command/bump.ts
|
|
14
|
+
async function bump({ options }) {
|
|
15
|
+
Object.assign(OptionHolder.input, options);
|
|
16
|
+
await preCheck();
|
|
17
|
+
await setup();
|
|
18
|
+
const nextVersionName = semver.inc(OptionHolder.versionName, OptionHolder.input.semverIncrement);
|
|
19
|
+
const nextVersionCode = (() => {
|
|
20
|
+
if (checkVersionCodeIsTiedWithVersionName(OptionHolder.versionName, OptionHolder.versionCode)) return generateVersionCodeTiedWithVersionName(nextVersionName);
|
|
21
|
+
else {
|
|
22
|
+
logger.warn("version name is not tied with version code like (1.3.5=1003005). Version code is just incremented by 1.");
|
|
23
|
+
return `${Number(OptionHolder.versionCode) + 1}`;
|
|
24
|
+
}
|
|
25
|
+
})();
|
|
26
|
+
logger.info(`Next Version: ${nextVersionName}(${nextVersionCode})`);
|
|
27
|
+
await injectBinaryVersions({
|
|
28
|
+
versionName: nextVersionName,
|
|
29
|
+
versionCode: nextVersionCode
|
|
30
|
+
});
|
|
31
|
+
logger.success("Binary versions have been bumped in expo config file");
|
|
32
|
+
await processCommit({
|
|
33
|
+
nextVersionName,
|
|
34
|
+
nextVersionCode
|
|
35
|
+
});
|
|
36
|
+
if (OptionHolder.input.git.commit) await promptTagAndPush({
|
|
37
|
+
nextVersionName,
|
|
38
|
+
nextVersionCode
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async function preCheck() {
|
|
42
|
+
if (isDev) return;
|
|
43
|
+
try {
|
|
44
|
+
let hasChange = false;
|
|
45
|
+
try {
|
|
46
|
+
await exe("git", [
|
|
47
|
+
"diff",
|
|
48
|
+
"--quiet",
|
|
49
|
+
"HEAD"
|
|
50
|
+
]);
|
|
51
|
+
} catch (_) {
|
|
52
|
+
hasChange = true;
|
|
53
|
+
}
|
|
54
|
+
if (hasChange) throwError("Workspace is not clean. Before bump version, you should commit all changes.");
|
|
55
|
+
} catch (e) {
|
|
56
|
+
throwError("Precheck Failed", e);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async function processCommit({ nextVersionCode, nextVersionName }) {
|
|
60
|
+
if (!is.boolean(OptionHolder.input.git.commit)) OptionHolder.input.git.commit = await select({
|
|
61
|
+
message: constructInquirerFormattedMessage({ name: "Commit?" }),
|
|
62
|
+
choices: [{
|
|
63
|
+
name: "yes",
|
|
64
|
+
value: true
|
|
65
|
+
}, {
|
|
66
|
+
name: "no",
|
|
67
|
+
value: false
|
|
68
|
+
}]
|
|
69
|
+
});
|
|
70
|
+
if (!is.notEmptyString(OptionHolder.input.git.commitMessage)) OptionHolder.input.git.commitMessage = "chore: release $(version) 🚀";
|
|
71
|
+
if (OptionHolder.input.git.commit) {
|
|
72
|
+
await exe("git", ["add", "--all"]);
|
|
73
|
+
await exe("git", [
|
|
74
|
+
"commit",
|
|
75
|
+
"-m",
|
|
76
|
+
OptionHolder.input.git.commitMessage.replaceAll("$(version)", `${nextVersionName}(${nextVersionCode})`)
|
|
77
|
+
]);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async function promptTagAndPush({ nextVersionCode, nextVersionName }) {
|
|
81
|
+
if (!is.boolean(OptionHolder.input.git.tag)) OptionHolder.input.git.tag = await select({
|
|
82
|
+
message: constructInquirerFormattedMessage({ name: "Tag?" }),
|
|
83
|
+
choices: [{
|
|
84
|
+
name: "yes",
|
|
85
|
+
value: true
|
|
86
|
+
}, {
|
|
87
|
+
name: "no",
|
|
88
|
+
value: false
|
|
89
|
+
}]
|
|
90
|
+
});
|
|
91
|
+
if (!is.notEmptyString(OptionHolder.input.git.tagName)) OptionHolder.input.git.tagName = "v$(version)";
|
|
92
|
+
const tagName = OptionHolder.input.git.tagName.replaceAll("$(version)", `${nextVersionName}(${nextVersionCode})`);
|
|
93
|
+
if (OptionHolder.input.git.tag) await exe("git", [
|
|
94
|
+
"tag",
|
|
95
|
+
"-a",
|
|
96
|
+
tagName,
|
|
97
|
+
"-m",
|
|
98
|
+
tagName
|
|
99
|
+
]);
|
|
100
|
+
if (!is.boolean(OptionHolder.input.git.push)) OptionHolder.input.git.push = await select({
|
|
101
|
+
message: constructInquirerFormattedMessage({ name: "Push?" }),
|
|
102
|
+
choices: [{
|
|
103
|
+
name: "yes",
|
|
104
|
+
value: true
|
|
105
|
+
}, {
|
|
106
|
+
name: "no",
|
|
107
|
+
value: false
|
|
108
|
+
}]
|
|
109
|
+
});
|
|
110
|
+
if (OptionHolder.input.git.push) {
|
|
111
|
+
if (OptionHolder.input.git.tag) await exe("git", [
|
|
112
|
+
"push",
|
|
113
|
+
"origin",
|
|
114
|
+
tagName
|
|
115
|
+
]);
|
|
116
|
+
await exe("git", ["push"]);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
//#endregion
|
|
121
|
+
export { bump };
|
|
122
|
+
//# sourceMappingURL=bump-CA4z8SNw.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bump-CA4z8SNw.js","names":[],"sources":["../src/command/bump.ts"],"sourcesContent":["import { select } from '@inquirer/prompts';\nimport { is } from '@mj-studio/js-util';\nimport semver from 'semver';\nimport { isDev } from '../util/EnvUtil';\nimport { OptionHolder } from '../util/OptionHolder';\nimport { constructInquirerFormattedMessage } from '../util/input/InqueryInputs';\nimport { logger } from '../util/logger';\nimport {\n checkVersionCodeIsTiedWithVersionName,\n generateVersionCodeTiedWithVersionName,\n injectBinaryVersions,\n} from '../util/setup/VersionUtil';\nimport { exe } from '../util/setup/execShellScript';\nimport { setup } from '../util/setup/setup';\nimport { throwError } from '../util/throwError';\n\nexport async function bump({ options }: { options: any }) {\n Object.assign(OptionHolder.input, options);\n await preCheck();\n await setup();\n\n const nextVersionName = semver.inc(OptionHolder.versionName, OptionHolder.input.semverIncrement)!;\n const nextVersionCode = (() => {\n if (checkVersionCodeIsTiedWithVersionName(OptionHolder.versionName, OptionHolder.versionCode)) {\n return generateVersionCodeTiedWithVersionName(nextVersionName);\n } else {\n logger.warn(\n 'version name is not tied with version code like (1.3.5=1003005). Version code is just incremented by 1.',\n );\n return `${Number(OptionHolder.versionCode) + 1}`;\n }\n })();\n\n logger.info(`Next Version: ${nextVersionName}(${nextVersionCode})`);\n\n await injectBinaryVersions({ versionName: nextVersionName, versionCode: nextVersionCode });\n logger.success('Binary versions have been bumped in expo config file');\n\n await processCommit({ nextVersionName, nextVersionCode });\n if (OptionHolder.input.git.commit) {\n await promptTagAndPush({ nextVersionName, nextVersionCode });\n }\n}\n\nasync function preCheck() {\n if (isDev) return;\n try {\n let hasChange = false;\n try {\n await exe('git', ['diff', '--quiet', 'HEAD']);\n } catch (_) {\n hasChange = true;\n }\n if (hasChange) {\n throwError('Workspace is not clean. Before bump version, you should commit all changes.');\n }\n } catch (e) {\n throwError('Precheck Failed', e);\n }\n}\n\nasync function processCommit({\n nextVersionCode,\n nextVersionName,\n}: {\n nextVersionName: string;\n nextVersionCode: string;\n}) {\n if (!is.boolean(OptionHolder.input.git.commit)) {\n OptionHolder.input.git.commit = await select({\n message: constructInquirerFormattedMessage({ name: 'Commit?' }),\n choices: [\n { name: 'yes', value: true },\n { name: 'no', value: false },\n ],\n });\n }\n if (!is.notEmptyString(OptionHolder.input.git.commitMessage)) {\n OptionHolder.input.git.commitMessage = 'chore: release $(version) 🚀';\n }\n\n if (OptionHolder.input.git.commit) {\n await exe('git', ['add', '--all']);\n await exe('git', [\n 'commit',\n '-m',\n OptionHolder.input.git.commitMessage!.replaceAll(\n '$(version)',\n `${nextVersionName}(${nextVersionCode})`,\n ),\n ]);\n }\n}\n\nasync function promptTagAndPush({\n nextVersionCode,\n nextVersionName,\n}: {\n nextVersionName: string;\n nextVersionCode: string;\n}) {\n if (!is.boolean(OptionHolder.input.git.tag)) {\n OptionHolder.input.git.tag = await select({\n message: constructInquirerFormattedMessage({ name: 'Tag?' }),\n choices: [\n { name: 'yes', value: true },\n { name: 'no', value: false },\n ],\n });\n }\n if (!is.notEmptyString(OptionHolder.input.git.tagName)) {\n OptionHolder.input.git.tagName = 'v$(version)';\n }\n\n const tagName = OptionHolder.input.git.tagName!.replaceAll(\n '$(version)',\n `${nextVersionName}(${nextVersionCode})`,\n );\n\n if (OptionHolder.input.git.tag) {\n await exe('git', ['tag', '-a', tagName, '-m', tagName]);\n }\n\n if (!is.boolean(OptionHolder.input.git.push)) {\n OptionHolder.input.git.push = await select({\n message: constructInquirerFormattedMessage({ name: 'Push?' }),\n choices: [\n { name: 'yes', value: true },\n { name: 'no', value: false },\n ],\n });\n }\n\n if (OptionHolder.input.git.push) {\n if (OptionHolder.input.git.tag) {\n await exe('git', ['push', 'origin', tagName]);\n }\n await exe('git', ['push']);\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { padZero } from "@mj-studio/js-util";
|
|
2
|
+
|
|
3
|
+
//#region src/util/calculateElapsed.ts
|
|
4
|
+
function calculateElapsed(t) {
|
|
5
|
+
let seconds = Math.floor((Date.now() - t) / 1e3);
|
|
6
|
+
const minutes = Math.floor(seconds / 60);
|
|
7
|
+
seconds = seconds % 60;
|
|
8
|
+
return `${minutes}:${padZero(seconds)}`;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//#endregion
|
|
12
|
+
export { calculateElapsed };
|
|
13
|
+
//# sourceMappingURL=calculateElapsed-CynU9UU_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculateElapsed-CynU9UU_.js","names":["t: number"],"sources":["../src/util/calculateElapsed.ts"],"sourcesContent":["import { padZero } from '@mj-studio/js-util';\n\nexport function calculateElapsed(t: number) {\n let seconds = Math.floor((Date.now() - t) / 1000);\n const minutes = Math.floor(seconds / 60);\n seconds = seconds % 60;\n return `${minutes}:${padZero(seconds)}`;\n}\n"],"mappings":";;;AAEA,SAAgB,iBAAiBA,GAAW;CAC1C,IAAI,UAAU,KAAK,OAAO,KAAK,KAAK,GAAG,KAAK,IAAK;CACjD,MAAM,UAAU,KAAK,MAAM,UAAU,GAAG;AACxC,WAAU,UAAU;AACpB,SAAQ,EAAE,QAAQ,GAAG,QAAQ,QAAQ,CAAC;AACvC"}
|
package/build/command/build.d.ts
CHANGED