MCPcopy Index your code
hub / github.com/changesets/changesets / pre

Function pre

packages/cli/src/commands/pre/index.ts:10–49  ·  view source on GitHub ↗
(
  rootDir: string,
  options: { command: "enter"; tag: string } | { command: "exit"; tag?: string }
)

Source from the content-addressed store, hash-verified

8} from "@changesets/errors";
9
10export default async function pre(
11 rootDir: string,
12 options: { command: "enter"; tag: string } | { command: "exit"; tag?: string }
13) {
14 if (options.command === "enter") {
15 try {
16 await enterPre(rootDir, options.tag);
17 logger.success(`Entered pre mode with tag ${pc.cyan(options.tag)}`);
18 logger.info(
19 "Run `changeset version` to version packages with prerelease versions"
20 );
21 } catch (err) {
22 if (err instanceof PreEnterButInPreModeError) {
23 logger.error("`changeset pre enter` cannot be run when in pre mode");
24 logger.info(
25 "If you're trying to exit pre mode, run `changeset pre exit`"
26 );
27 throw new ExitError(1);
28 }
29 throw err;
30 }
31 } else {
32 try {
33 await exitPre(rootDir);
34 logger.success(`Exited pre mode`);
35 logger.info(
36 "Run `changeset version` to version packages with normal versions"
37 );
38 } catch (err) {
39 if (err instanceof PreExitButNotInPreModeError) {
40 logger.error("`changeset pre exit` can only be run when in pre mode");
41 logger.info(
42 "If you're trying to enter pre mode, run `changeset pre enter`"
43 );
44 throw new ExitError(1);
45 }
46 throw err;
47 }
48 }
49}

Callers 3

runFunction · 0.85
version.test.tsFile · 0.85
index.test.tsFile · 0.85

Calls 2

enterPreFunction · 0.90
exitPreFunction · 0.90

Tested by

no test coverage detected