1
0
mirror of https://gitcode.com/github-mirrors/react-native-update-cli.git synced 2025-09-16 01:41:37 +08:00
Code Issues Packages Projects Releases Wiki Activity GitHub Gitee

one in all command

This commit is contained in:
sunnylqm
2025-06-20 20:32:06 +08:00
parent c7d0aadbf2
commit 2cfe451db5
4 changed files with 101 additions and 20 deletions

View File

@@ -57,6 +57,27 @@
},
"metaInfo": {
"hasValue": true
},
"packageId": {
"hasValue": true
},
"packageVersion": {
"hasValue": true
},
"minPackageVersion": {
"hasValue": true
},
"maxPackageVersion": {
"hasValue": true
},
"packageVersionRange": {
"hasValue": true
},
"rollout": {
"hasValue": true
},
"dryRun": {
"default": false
}
}
},
@@ -175,6 +196,27 @@
"metaInfo": {
"hasValue": true,
"description": "Meta information for publishing"
},
"packageId": {
"hasValue": true
},
"packageVersion": {
"hasValue": true
},
"minPackageVersion": {
"hasValue": true
},
"maxPackageVersion": {
"hasValue": true
},
"packageVersionRange": {
"hasValue": true
},
"rollout": {
"hasValue": true
},
"dryRun": {
"default": false
}
}
},

View File

@@ -1,6 +1,6 @@
{
"name": "react-native-update-cli",
"version": "1.45.6",
"version": "1.46.0",
"description": "command line tool for react-native-update (remote updates for react native)",
"main": "index.js",
"bin": {

View File

@@ -19,7 +19,7 @@ import { t } from './utils/i18n';
import { tempDir } from './utils/constants';
import { checkLockFiles } from './utils/check-lockfile';
import { addGitIgnore } from './utils/add-gitignore';
import { commands as versionCommands } from './versions';
import { versionCommands } from './versions';
type Diff = (oldSource?: Buffer, newSource?: Buffer) => Buffer;
@@ -926,6 +926,13 @@ export const commands = {
name,
description,
metaInfo,
packageId,
packageVersion,
minPackageVersion,
maxPackageVersion,
packageVersionRange,
rollout,
dryRun,
} = translateOptions({
...options,
tempDir,
@@ -974,6 +981,13 @@ export const commands = {
name,
description,
metaInfo,
packageId,
packageVersion,
minPackageVersion,
maxPackageVersion,
packageVersionRange,
rollout,
dryRun: Boolean(dryRun),
},
});

View File

@@ -10,7 +10,8 @@ import type { Package, Platform, Version } from 'types';
import { satisfies } from 'compare-versions';
import chalk from 'chalk';
interface CommandOptions {
interface VersionCommandOptions {
appId?: string;
name?: string;
description?: string;
metaInfo?: string;
@@ -156,13 +157,13 @@ export const bindVersionToPackages = async ({
console.log(t('operationComplete', { count: pkgs.length }));
};
export const commands = {
export const versionCommands = {
publish: async function ({
args,
options,
}: {
args: string[];
options: CommandOptions;
options: VersionCommandOptions;
}) {
const fn = args[0];
const { name, description, metaInfo } = options;
@@ -191,26 +192,52 @@ export const commands = {
saveToLocal(fn, `${appId}/ppk/${id}.ppk`);
console.log(t('packageUploadSuccess', { id }));
const v = await question(t('updateNativePackageQuestion'));
if (v.toLowerCase() === 'y') {
await this.update({ args: [], options: { versionId: id, platform } });
const {
packageId,
packageVersion,
packageVersionRange,
minPackageVersion,
maxPackageVersion,
rollout,
dryRun,
} = options;
if (
packageId ||
packageVersion ||
packageVersionRange ||
minPackageVersion ||
maxPackageVersion
) {
await this.update({
options: {
versionId: id,
platform,
packageId,
packageVersion,
packageVersionRange,
minPackageVersion,
maxPackageVersion,
rollout,
dryRun,
},
});
} else {
const q = await question(t('updateNativePackageQuestion'));
if (q.toLowerCase() === 'y') {
await this.update({ options: { versionId: id, platform } });
}
}
return versionName;
},
versions: async ({ options }: { options: CommandOptions }) => {
versions: async ({ options }: { options: VersionCommandOptions }) => {
const platform = await getPlatform(options.platform);
const { appId } = await getSelectedApp(platform);
await listVersions(appId);
},
update: async ({
args,
options,
}: {
args: string[];
options: CommandOptions;
}) => {
update: async ({ options }: { options: VersionCommandOptions }) => {
const platform = await getPlatform(options.platform);
const { appId } = await getSelectedApp(platform);
const appId = options.appId || (await getSelectedApp(platform)).appId;
let versionId = options.versionId || (await chooseVersion(appId)).id;
if (versionId === 'null') {
versionId = undefined;
@@ -309,11 +336,9 @@ export const commands = {
});
},
updateVersionInfo: async ({
args,
options,
}: {
args: string[];
options: CommandOptions;
options: VersionCommandOptions;
}) => {
const platform = await getPlatform(options.platform);
const { appId } = await getSelectedApp(platform);