react-doctor 0.9.16 → 0.9.17-dev.888dc2a
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 +3 -3
- package/dist/{build-section-divider-DdDfVhIU.js → build-section-divider-SaQnctqK.js} +5 -5
- package/dist/{ci-DB7v3zSt.js → ci-BwPprgtv.js} +13 -13
- package/dist/cli.js +25 -25
- package/dist/{constants-rmkaA7iw.js → constants-DHn5rUeg.js} +5 -5
- package/dist/{design-CdjV6tS8.js → design-NGMlUJw8.js} +4 -4
- package/dist/{exit-gracefully-DYAZMdvL.js → exit-gracefully-IqbKl0nj.js} +6 -6
- package/dist/{handle-error-rZIxgzIJ.js → handle-error-BxDfT80U.js} +6 -6
- package/dist/index.d.ts +4 -1
- package/dist/index.js +9 -7
- package/dist/{inspect-td2f87RL.js → inspect-D3UYRxCv.js} +29 -29
- package/dist/{install-DFz26Git.js → install-C9z3xbKW.js} +10 -10
- package/dist/{install-doctor-script-DutA3AmF.js → install-doctor-script-BttpccU2.js} +5 -5
- package/dist/{install-github-workflow-CrCUq-fk.js → install-github-workflow-C7aU2_nG.js} +5 -5
- package/dist/{install-react-doctor-AjM8eNr6.js → install-react-doctor-g717jJGn.js} +9 -9
- package/dist/{is-cache-globally-disabled-DquUESHw.js → is-cache-globally-disabled-DDlh_f1u.js} +4 -4
- package/dist/{jsx-runtime-CmVfaGKL.js → jsx-runtime-BNEp1f1-.js} +6 -6
- package/dist/{print-branded-header-BSPcMb1k.js → print-branded-header-WMTAFewk.js} +4 -4
- package/dist/{prompt-runtime-scan-url-9SslR9ci.js → prompt-runtime-scan-url-BQ8Mxd5i.js} +5 -5
- package/dist/{read-object-file-FXP4EgJe.js → read-object-file-CBoKpfyS.js} +4 -4
- package/dist/{record-metric-DlQ2Xkco.js → record-metric-B8b4bjaB.js} +157 -83
- package/dist/{report-error-CsS16tjk.js → report-error-5G1BJCWR.js} +6 -6
- package/dist/{report-workflow-result-DL4pJV2h.js → report-workflow-result-BbAqdyMA.js} +6 -6
- package/dist/{resolve-scope-Dydx4htr.js → resolve-scope-IL1MWTU6.js} +6 -6
- package/dist/{rules-BITRtAOo.js → rules-FGhjacgJ.js} +7 -7
- package/dist/{run-scan-app-BvZAmq01.js → run-scan-app-Th0DEjyF.js} +11 -11
- package/dist/{runtime-scan-BKWHOq5l.js → runtime-scan-Dxruoh69.js} +10 -10
- package/dist/{sanitize-runtime-url-SAbuIQOl.js → sanitize-runtime-url-BQNu-U4v.js} +4 -4
- package/dist/{scan-BNqVRm8k.js → scan-DTdtBCbo.js} +10 -10
- package/dist/{should-fail-scan-gate-ASw8KS4V.js → should-fail-scan-gate-_gmz0don.js} +104 -18
- package/dist/{should-skip-prompts-D86BK2WZ.js → should-skip-prompts-DNkwhWow.js} +4 -4
- package/dist/{should-use-tui--ondyPLd.js → should-use-tui-laB7MG1v.js} +4 -4
- package/dist/skills/react-doctor/SKILL.md +1 -1
- package/dist/{start-scan-preamble-CCqs1vP4.js → start-scan-preamble-BPz3nzCQ.js} +5 -5
- package/dist/start-scan-preamble.js +3 -3
- package/dist/{telemetry-runtime-DRB6SHxI.js → telemetry-runtime-B5ReQ28o.js} +7 -7
- package/dist/{version-c57nNOfC.js → version-DRCfjrnM.js} +5 -5
- package/dist/{why-B16Tzl_q.js → why-qpHIO1XJ.js} +4 -4
- package/dist/{with-run-span-BpoDt67p.js → with-run-span-B072XQSZ.js} +6 -6
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -95,7 +95,7 @@ URLs, source paths, and React profiling details. Treat it as sensitive applicati
|
|
|
95
95
|
|
|
96
96
|
`--scope changed --base <ref>` reports only new findings in files touched by the diff. It scans those files at the base and in the current tree. Uncommitted changes use `HEAD` when the base is the current branch.
|
|
97
97
|
|
|
98
|
-
|
|
98
|
+
Findings are grouped by file path (following Git renames) and rule ID. Only the increase in each group's finding count is new: two findings at base and three now produce one new finding; two at base and two now produce none. Formatting, variable renames, edits inside flagged code, and line shifts do not create new findings when the count stays the same. Groups with no count increase need no location matching. When the count increases, exact fingerprint and message matches are paired first. Message similarity and line distance adjusted for Git diff shifts then select the most likely added findings. This is a count gate: fixing one issue and adding another under the same rule in the same file produces no increase. Current rule, severity, tag, and ignore settings apply before matching.
|
|
99
99
|
|
|
100
100
|
New files have no base findings. Add `--include-untracked` to scan untracked files too. Deleted files and removed findings are not reported. `--blocking`, the exit code, and summary counts use only the unmatched current findings. The score still describes the current scan.
|
|
101
101
|
|
|
@@ -109,9 +109,9 @@ react-doctor --baseline base-report.json --blocking warning
|
|
|
109
109
|
react-doctor --scope changed --baseline base-report.json --blocking warning
|
|
110
110
|
```
|
|
111
111
|
|
|
112
|
-
`--baseline` uses the same matching rules and skips the base scan. Use the same React Doctor version, rules, and scan options for both scans. The saved report must be a complete scan with fingerprints, not a previous comparison result. Regenerate older reports that lack fingerprints. Without Git, a saved report still works; rename matching requires Git history for the report's `sourceRevision`. With `--scope changed`, Git limits the scan to changed files when available; otherwise the full current tree is compared.
|
|
112
|
+
`--baseline` uses the same matching rules and skips the base scan. Use the same React Doctor version, rules, and scan options for both scans. The saved report must be a complete scan with fingerprints, not a previous comparison result. Saved reports record each project's source-dependent filter settings (`textComponents`, `rawTextWrapperComponents`, and `respectInlineDisables`). A mismatch requires a new base report with the current settings, or a Git comparison. Reports cannot recover findings that the original scan suppressed. Regenerate older reports that lack fingerprints or filter settings. Without Git, a saved report still works; rename matching requires Git history for the report's `sourceRevision`. With `--scope changed`, Git limits the scan to changed files when available; otherwise the full current tree is compared.
|
|
113
113
|
|
|
114
|
-
JSON reports keep schema version 3 and add optional diagnostic `fingerprint` and
|
|
114
|
+
JSON reports keep schema version 3 and add optional diagnostic `fingerprint`, report `sourceRevision`, and per-project `sourceFilterConfigHash` fields. The `baseline` block records `source` (`"base"` or `"baseline"`), `baseRef`, `baselineFile` for saved reports, and `matchedCount`. `newCount` equals the summary finding count.
|
|
115
115
|
|
|
116
116
|
## Telemetry
|
|
117
117
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { bt as DOCS_URL, lt as CANONICAL_GITHUB_URL } from "./constants-
|
|
4
|
-
import {
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="7ed2d098-ee2d-5dcb-b2fc-d080b0b47c8c")}catch(e){}}();
|
|
3
|
+
import { bt as DOCS_URL, lt as CANONICAL_GITHUB_URL } from "./constants-DHn5rUeg.js";
|
|
4
|
+
import { At as highlighter } from "./record-metric-B8b4bjaB.js";
|
|
5
5
|
//#region src/cli/utils/resolve-measure-width.ts
|
|
6
6
|
const resolveClampedWidth = (input) => {
|
|
7
7
|
const terminalColumns = process.stdout.columns;
|
|
@@ -77,5 +77,5 @@ const buildSectionDivider = () => highlighter.dim(`${DIVIDER_INDENT}${"─".repe
|
|
|
77
77
|
//#endregion
|
|
78
78
|
export { buildFooterLinkLines as n, buildSectionDivider as t };
|
|
79
79
|
|
|
80
|
-
//# sourceMappingURL=build-section-divider-
|
|
81
|
-
//# debugId=
|
|
80
|
+
//# sourceMappingURL=build-section-divider-SaQnctqK.js.map
|
|
81
|
+
//# debugId=7ed2d098-ee2d-5dcb-b2fc-d080b0b47c8c
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f57ad787-a2b3-5cea-a6f3-38d0aa3dab78")}catch(e){}}();
|
|
3
3
|
import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
|
|
4
|
-
import { kt as GITHUB_ACTIONS_SETUP_URL, u as METRIC, ut as CI_URL } from "./constants-
|
|
5
|
-
import {
|
|
6
|
-
import { o as isExpectedUserError } from "./telemetry-runtime-
|
|
7
|
-
import { n as handleUserError, t as handleError } from "./handle-error-
|
|
8
|
-
import { t as reportErrorToSentry } from "./report-error-
|
|
9
|
-
import { N as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-
|
|
10
|
-
import { a as readReactDoctorWorkflow, d as detectDefaultBranch, f as runCommand, l as prompts, n as getReactDoctorWorkflowPath, s as upgradeWorkflowActionToV2, t as buildWorkflowContent } from "./install-github-workflow-
|
|
11
|
-
import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-
|
|
12
|
-
import { t as shouldSkipPrompts } from "./should-skip-prompts-
|
|
13
|
-
import { t as printBrandedHeader } from "./print-branded-header-
|
|
4
|
+
import { kt as GITHUB_ACTIONS_SETUP_URL, u as METRIC, ut as CI_URL } from "./constants-DHn5rUeg.js";
|
|
5
|
+
import { At as highlighter, Cn as runSync, t as recordCount } from "./record-metric-B8b4bjaB.js";
|
|
6
|
+
import { o as isExpectedUserError } from "./telemetry-runtime-B5ReQ28o.js";
|
|
7
|
+
import { n as handleUserError, t as handleError } from "./handle-error-BxDfT80U.js";
|
|
8
|
+
import { t as reportErrorToSentry } from "./report-error-5G1BJCWR.js";
|
|
9
|
+
import { N as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-BttpccU2.js";
|
|
10
|
+
import { a as readReactDoctorWorkflow, d as detectDefaultBranch, f as runCommand, l as prompts, n as getReactDoctorWorkflowPath, s as upgradeWorkflowActionToV2, t as buildWorkflowContent } from "./install-github-workflow-C7aU2_nG.js";
|
|
11
|
+
import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-IL1MWTU6.js";
|
|
12
|
+
import { t as shouldSkipPrompts } from "./should-skip-prompts-DNkwhWow.js";
|
|
13
|
+
import { t as printBrandedHeader } from "./print-branded-header-WMTAFewk.js";
|
|
14
14
|
import * as fs$1 from "node:fs";
|
|
15
15
|
import * as path$1 from "node:path";
|
|
16
16
|
//#region src/cli/utils/ci/ci-provider.ts
|
|
@@ -7499,5 +7499,5 @@ const ciConfigAction = (options) => runCiCommand("config", runCiConfig, options)
|
|
|
7499
7499
|
//#endregion
|
|
7500
7500
|
export { ciConfigAction, ciInstallAction, ciUpgradeAction };
|
|
7501
7501
|
|
|
7502
|
-
//# sourceMappingURL=ci-
|
|
7503
|
-
//# debugId=
|
|
7502
|
+
//# sourceMappingURL=ci-BwPprgtv.js.map
|
|
7503
|
+
//# debugId=f57ad787-a2b3-5cea-a6f3-38d0aa3dab78
|
package/dist/cli.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
|
|
2
2
|
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cc8f2e34-2b12-55f0-907a-f0131fd67226")}catch(e){}}();
|
|
3
3
|
import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
|
|
4
|
-
import { lt as CANONICAL_GITHUB_URL, ut as CI_URL } from "./constants-
|
|
5
|
-
import "./start-scan-preamble-
|
|
6
|
-
import { At as
|
|
7
|
-
import { a as initializeSentry, n as shutdownTelemetry, o as isExpectedUserError, r as flushSentry } from "./telemetry-runtime-
|
|
8
|
-
import { t as exitGracefully } from "./exit-gracefully-
|
|
9
|
-
import { n as handleUserError, t as handleError } from "./handle-error-
|
|
4
|
+
import { lt as CANONICAL_GITHUB_URL, ut as CI_URL } from "./constants-DHn5rUeg.js";
|
|
5
|
+
import "./start-scan-preamble-BPz3nzCQ.js";
|
|
6
|
+
import { At as highlighter, Bn as isDirectory, Hn as isFile, Qt as setColorEnabled, S as isDebugFlagEnabled, _ as VERSION, d as isJsonModeActive, h as writeJsonErrorReport, ht as filterSourceFiles, i as isTelemetryEnabled, jt as isPathInsideDirectory, y as CliInputError } from "./record-metric-B8b4bjaB.js";
|
|
7
|
+
import { a as initializeSentry, n as shutdownTelemetry, o as isExpectedUserError, r as flushSentry } from "./telemetry-runtime-B5ReQ28o.js";
|
|
8
|
+
import { t as exitGracefully } from "./exit-gracefully-IqbKl0nj.js";
|
|
9
|
+
import { n as handleUserError, t as handleError } from "./handle-error-BxDfT80U.js";
|
|
10
10
|
import { n as getLastRunTraceId } from "./active-run-trace-Dewycxda.js";
|
|
11
|
-
import { t as reportErrorToSentry } from "./report-error-
|
|
11
|
+
import { t as reportErrorToSentry } from "./report-error-5G1BJCWR.js";
|
|
12
12
|
import { t as toForwardSlashes } from "./path-format-By20mo8A.js";
|
|
13
13
|
import { t as unrefStdin } from "./unref-stdin-D-NZBFpg.js";
|
|
14
14
|
import * as path$1 from "node:path";
|
|
@@ -3560,7 +3560,7 @@ ${highlighter.dim("Learn more:")}
|
|
|
3560
3560
|
const collectCategoryOption = (value, previousValues) => [...previousValues ?? [], value];
|
|
3561
3561
|
const program = new Command().name("react-doctor").description("Diagnose React codebase health").version(VERSION, "-v, --version", "display the version number").argument("[paths...]", "one project directory or source file paths to scan").option("--lint", "enable linting").option("--no-lint", "skip linting").addOption(new Option("--dead-code").hideHelp()).addOption(new Option("--no-dead-code").hideHelp()).option("--supply-chain", "enable the dependency supply-chain scan (default)").option("--no-supply-chain", "skip the dependency supply-chain scan (Socket.dev dependency health checks)").option("--verbose", "show every rule and per-file details (default shows top 3 rules)").option("--debug", "force a Sentry trace and print its id at the end (paste it into a bug report)").option("--output-dir <dir>", "directory for the full diagnostics dump (default: a temp folder)").option("--score", "output only the score").option("--json", "output a single structured JSON report (suppresses other output)").option("--json-compact", "with --json, emit compact JSON (no indentation)").option("--json-out <path>", "with --json, write the report to a file instead of stdout").option("--no-cache", "disable all scan caches for this run").option("-y, --yes", "skip prompts, scan all workspace projects").option("--no-parallel", "lint serially with one worker (default: parallel across CPU cores; set the worker count with REACT_DOCTOR_PARALLEL)").option("--project <name>", "select projects: workspace names or directory paths (comma-separated for multiple); overrides the `projects` config field").option("--scope <value>", "how much supported JS/TS and inline HTML script source to scan/report: full (default), files, changed (only new issues vs base), or lines (issues whose source spans touch changed lines)").option("--baseline <report.json>", "report only new issues compared with a saved JSON report").option("--base <ref>", "base git ref for files/changed/lines scope (auto-detected when omitted)").option("--include-untracked", "with --scope files/changed/lines, also scan ordinary untracked files (respects .gitignore)").addOption(new Option("--diff [base]", "[deprecated] alias for --scope changed (pass `false` to force a full scan)").hideHelp()).addOption(new Option("--changed-files-from <file>", "scan source files listed in a newline-delimited changed-files file").hideHelp()).option("--no-score", "skip the score API, the share URL, and crash reporting").addOption(new Option("--category <category>", "only show diagnostics in a category (repeatable; e.g. Security)").argParser(collectCategoryOption)).option("--no-telemetry", "alias for --no-score (skip the score API, share URL, and crash reporting)").option("--staged", "scan only staged (git index) files for pre-commit hooks (honors --project and config `projects`; exits 0 when nothing is staged)").option("--max-duration <seconds>", MAX_DURATION_OPTION_DESCRIPTION).option("--blocking <level>", "severity that fails CI: error (default), warning, or none (advisory)").addOption(new Option("--fail-on <level>", "[deprecated] alias for --blocking <level>").hideHelp()).option("--no-respect-inline-disables", "audit mode: neutralize inline lint suppressions before scanning").option("--warnings", "show warning-severity diagnostics (default)").option("--no-warnings", "hide warning-severity diagnostics (errors only)").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderRootHelpEpilog);
|
|
3562
3562
|
program.action(async (positionalPaths = [], flags) => {
|
|
3563
|
-
const { runScanCommand } = await import("./scan-
|
|
3563
|
+
const { runScanCommand } = await import("./scan-DTdtBCbo.js");
|
|
3564
3564
|
return runScanCommand({
|
|
3565
3565
|
...resolvePositionalScanInput(positionalPaths),
|
|
3566
3566
|
flags,
|
|
@@ -3568,75 +3568,75 @@ program.action(async (positionalPaths = [], flags) => {
|
|
|
3568
3568
|
});
|
|
3569
3569
|
});
|
|
3570
3570
|
program.command("design [directory]").description("Run only the focused UI design diagnostics").addHelpText("after", renderDesignHelpEpilog).action(async (directory, _options, command) => {
|
|
3571
|
-
const { designAction } = await import("./design-
|
|
3571
|
+
const { designAction } = await import("./design-NGMlUJw8.js");
|
|
3572
3572
|
return designAction(directory ?? ".", command.optsWithGlobals());
|
|
3573
3573
|
});
|
|
3574
3574
|
program.command("scan").description("Scan a React interaction in Chrome until you press Enter").argument("[url]", "HTTP(S) URL of the running React app; detects local apps when omitted").option("-f, --format <format>", "report format: text, json, or jsonl", "text").option("--cdp <url>", "reuse Chrome at this remote-debugging endpoint").option("--trace-out <path>", "save the compressed .json.gz DevTools trace at this path").addHelpText("after", renderRuntimeScanHelpEpilog).action(async (url, options) => {
|
|
3575
|
-
const { runtimeScanAction } = await import("./runtime-scan-
|
|
3575
|
+
const { runtimeScanAction } = await import("./runtime-scan-Dxruoh69.js");
|
|
3576
3576
|
return runtimeScanAction(url, options);
|
|
3577
3577
|
});
|
|
3578
3578
|
program.command("why <location>").description("Explain why a rule fired (or why a suppression didn't apply) at a file:line").option("--project <name>", "select projects: workspace names or directory paths (comma-separated for multiple)").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (location, options) => {
|
|
3579
|
-
const { whyAction } = await import("./why-
|
|
3579
|
+
const { whyAction } = await import("./why-qpHIO1XJ.js");
|
|
3580
3580
|
return whyAction(location, options);
|
|
3581
3581
|
});
|
|
3582
3582
|
program.command("install").alias("setup").description("Install the react-doctor skill into your coding agents and optional git hook").option("-y, --yes", "skip prompts, install for all detected agents").option("--dry-run", "show what would be installed without writing files").option("--agent-hooks", "install end-of-turn agent hooks for Claude Code and Cursor").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderInstallHelpEpilog).action(async (options, command) => {
|
|
3583
|
-
const { installAction } = await import("./install-
|
|
3583
|
+
const { installAction } = await import("./install-C9z3xbKW.js");
|
|
3584
3584
|
return installAction(options, command);
|
|
3585
3585
|
});
|
|
3586
3586
|
const providerOption = ["--provider <name>", "ci provider: github-actions or gitlab-ci (auto-detected by default)"];
|
|
3587
3587
|
const prOption = ["--pr", "open a pull request with the change instead of writing it to the working tree"];
|
|
3588
3588
|
const ci = program.command("ci").description("Set up, upgrade, and configure React Doctor in your CI");
|
|
3589
3589
|
ci.command("install").description("Add a CI workflow that scans every pull request").option(...providerOption).option(...prOption).option("--blocking <level>", "gate level: none (advisory, default), warning, or error").option("--scope <value>", "what a pull-request scan reports: changed (default), files, lines, full").option("--comment", "post a summary comment on each pull request").option("--no-comment", "don't post a summary comment").option("--review-comments", "add inline review comments on changed lines").option("--no-review-comments", "don't add inline review comments").option("--commit-status", "report a commit status with the health score").option("--no-commit-status", "don't report a commit status").option("-y, --yes", "skip prompts; use the defaults").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderCiHelpEpilog).action(async (_options, command) => {
|
|
3590
|
-
const { ciInstallAction } = await import("./ci-
|
|
3590
|
+
const { ciInstallAction } = await import("./ci-BwPprgtv.js");
|
|
3591
3591
|
return ciInstallAction(command.optsWithGlobals());
|
|
3592
3592
|
});
|
|
3593
3593
|
ci.command("config").description("Change the gate, scan scope, and pull-request reporting").option(...providerOption).option("--blocking <level>", "gate level: none (advisory), warning, or error").option("--scope <value>", "what a pull-request scan reports: changed, files, lines, or full").option("--comment", "post a summary comment on each pull request").option("--no-comment", "don't post a summary comment").option("--review-comments", "add inline review comments on changed lines").option("--no-review-comments", "don't add inline review comments").option("--commit-status", "report a commit status with the health score").option("--no-commit-status", "don't report a commit status").option("-y, --yes", "skip prompts; print the current settings").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (_options, command) => {
|
|
3594
|
-
const { ciConfigAction } = await import("./ci-
|
|
3594
|
+
const { ciConfigAction } = await import("./ci-BwPprgtv.js");
|
|
3595
3595
|
return ciConfigAction(command.optsWithGlobals());
|
|
3596
3596
|
});
|
|
3597
3597
|
ci.command("upgrade").description("Upgrade the CI workflow to the action's current major").option(...providerOption).option(...prOption).option("-y, --yes", "skip prompts").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (_options, command) => {
|
|
3598
|
-
const { ciUpgradeAction } = await import("./ci-
|
|
3598
|
+
const { ciUpgradeAction } = await import("./ci-BwPprgtv.js");
|
|
3599
3599
|
return ciUpgradeAction(command.optsWithGlobals());
|
|
3600
3600
|
});
|
|
3601
3601
|
program.command("version").description("show the version with Node and platform info").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async () => {
|
|
3602
|
-
const { versionAction } = await import("./version-
|
|
3602
|
+
const { versionAction } = await import("./version-DRCfjrnM.js");
|
|
3603
3603
|
return versionAction();
|
|
3604
3604
|
});
|
|
3605
3605
|
const rules = program.command("rules").description("List, explain, and configure which React Doctor rules run");
|
|
3606
3606
|
rules.command("list").description("List rules and the severity they run at under your config").option("--category <name>", "only show rules in a category (e.g. Performance)").option("--tag <name>", "only show rules with a tag (e.g. design, test-noise)").option("--framework <name>", "only show rules for a framework (e.g. global, nextjs)").option("--configured", "only show rules your config has changed from the default").option("--json", "output a structured JSON array").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (_options, command) => {
|
|
3607
|
-
const { rulesListAction } = await import("./rules-
|
|
3607
|
+
const { rulesListAction } = await import("./rules-FGhjacgJ.js");
|
|
3608
3608
|
return rulesListAction(command.optsWithGlobals());
|
|
3609
3609
|
});
|
|
3610
3610
|
rules.command("explain <rule>").description("Explain why a rule matters, its current severity, and how to configure it").option("--json", "output a structured JSON object").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
|
|
3611
|
-
const { rulesExplainAction } = await import("./rules-
|
|
3611
|
+
const { rulesExplainAction } = await import("./rules-FGhjacgJ.js");
|
|
3612
3612
|
return rulesExplainAction(rule, command.optsWithGlobals());
|
|
3613
3613
|
});
|
|
3614
3614
|
rules.command("set <rule> <severity>").description("Set a rule's severity: off, warn, or error").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, severity, _options, command) => {
|
|
3615
|
-
const { rulesSetAction } = await import("./rules-
|
|
3615
|
+
const { rulesSetAction } = await import("./rules-FGhjacgJ.js");
|
|
3616
3616
|
return rulesSetAction(rule, severity, command.optsWithGlobals());
|
|
3617
3617
|
});
|
|
3618
3618
|
rules.command("enable <rule>").description("Enable a rule at its recommended severity (or pass --severity)").option("--severity <level>", "severity to enable at: warn or error").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
|
|
3619
|
-
const { rulesEnableAction } = await import("./rules-
|
|
3619
|
+
const { rulesEnableAction } = await import("./rules-FGhjacgJ.js");
|
|
3620
3620
|
return rulesEnableAction(rule, command.optsWithGlobals());
|
|
3621
3621
|
});
|
|
3622
3622
|
rules.command("disable <rule>").description("Disable a rule so it never runs").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
|
|
3623
|
-
const { rulesDisableAction } = await import("./rules-
|
|
3623
|
+
const { rulesDisableAction } = await import("./rules-FGhjacgJ.js");
|
|
3624
3624
|
return rulesDisableAction(rule, command.optsWithGlobals());
|
|
3625
3625
|
});
|
|
3626
3626
|
rules.command("category <category> <severity>").description("Set the severity for a whole category (off, warn, error)").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (category, severity, _options, command) => {
|
|
3627
|
-
const { rulesCategoryAction } = await import("./rules-
|
|
3627
|
+
const { rulesCategoryAction } = await import("./rules-FGhjacgJ.js");
|
|
3628
3628
|
return rulesCategoryAction(category, severity, command.optsWithGlobals());
|
|
3629
3629
|
});
|
|
3630
3630
|
rules.command("ignore-tag <tag>").description("Skip a whole rule family by tag before linting (e.g. design)").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (tag, _options, command) => {
|
|
3631
|
-
const { rulesIgnoreTagAction } = await import("./rules-
|
|
3631
|
+
const { rulesIgnoreTagAction } = await import("./rules-FGhjacgJ.js");
|
|
3632
3632
|
return rulesIgnoreTagAction(tag, command.optsWithGlobals());
|
|
3633
3633
|
});
|
|
3634
3634
|
rules.command("unignore-tag <tag>").description("Stop ignoring a tag previously skipped via ignore-tag").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (tag, _options, command) => {
|
|
3635
|
-
const { rulesUnignoreTagAction } = await import("./rules-
|
|
3635
|
+
const { rulesUnignoreTagAction } = await import("./rules-FGhjacgJ.js");
|
|
3636
3636
|
return rulesUnignoreTagAction(tag, command.optsWithGlobals());
|
|
3637
3637
|
});
|
|
3638
3638
|
program.command("experimental-tui [directory]", { hidden: true }).description("[experimental] interactive, scrollable scan report").option("--blocking <level>", "severity that fails CI: error (default), warning, or none (advisory)").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addOption(new Option("--no-dead-code").hideHelp()).option("--no-supply-chain", "skip the dependency supply-chain scan").option("--score", "only print the numeric score (for scripts and CI)").option("--no-score", "skip the score API, the share URL, and crash reporting").option("--no-cache", "disable all scan caches for this run").option("--max-duration <seconds>", MAX_DURATION_OPTION_DESCRIPTION).option("-p, --project <names>", "scan specific workspace projects (comma-separated, or *)").option("-y, --yes", "skip the project prompt and scan every discovered project").action(async (directory = ".", _localOptions, command) => {
|
|
3639
|
-
const { runScanCommand } = await import("./scan-
|
|
3639
|
+
const { runScanCommand } = await import("./scan-DTdtBCbo.js");
|
|
3640
3640
|
return runScanCommand({
|
|
3641
3641
|
directory,
|
|
3642
3642
|
flags: command.optsWithGlobals(),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a2fb00c2-593b-5d58-b7fe-378efd853ad4")}catch(e){}}();
|
|
3
3
|
import { createRequire } from "node:module";
|
|
4
4
|
import * as fs$1 from "node:fs";
|
|
5
5
|
import fs from "node:fs";
|
|
@@ -11,7 +11,7 @@ import os from "node:os";
|
|
|
11
11
|
import crypto from "node:crypto";
|
|
12
12
|
import { Worker } from "node:worker_threads";
|
|
13
13
|
import * as net from "node:net";
|
|
14
|
-
//#region ../core/dist/constants-
|
|
14
|
+
//#region ../core/dist/constants-E-ghW6VY.js
|
|
15
15
|
const HTML_FILE_PATTERN = /\.html$/i;
|
|
16
16
|
const SOURCE_FILE_PATTERN = /\.(?:astro|tsx?|jsx?|mts|mjs|[hH][tT][mM][lL])$/;
|
|
17
17
|
const GENERATED_BUNDLE_FILE_PATTERN = /\.(iife|umd|global|min)\.m?js$/i;
|
|
@@ -425,7 +425,7 @@ const MAINTAINABILITY_CATEGORY = "Maintainability";
|
|
|
425
425
|
//#region ../core/dist/react-compiler-detection-worker-protocol-Dp5LlrE8.js
|
|
426
426
|
const isReactCompilerDetectionReply = (value) => typeof value === "object" && value !== null && "id" in value && typeof value.id === "number" && "hasReactCompiler" in value && (typeof value.hasReactCompiler === "boolean" || value.hasReactCompiler === null);
|
|
427
427
|
//#endregion
|
|
428
|
-
//#region ../core/dist/react-compiler-detection-client-
|
|
428
|
+
//#region ../core/dist/react-compiler-detection-client-fc698QTY.js
|
|
429
429
|
const pendingOutputsByRequestKey = /* @__PURE__ */ new Map();
|
|
430
430
|
const toRequestKey = (request) => [
|
|
431
431
|
request.directory,
|
|
@@ -1031,5 +1031,5 @@ const METRIC = {
|
|
|
1031
1031
|
//#endregion
|
|
1032
1032
|
export { warmReactCompilerDetection as $, OXLINT_WORKER_JOB_END_MARKER as $t, buildGitSourceListingRequest as A, TARGET_BLANK_BROWSER_SUPPORT as An, GITHUB_VIEWER_PERMISSION_TIMEOUT_MS as At, resolveGitCommand as B, MAINTAINABILITY_DUPLICATE_JSX_RULE as Bt, SENTRY_RELEASE_PREFIX as C, SUPPLY_CHAIN_CACHE_TTL_MS as Cn, ES_TARGET_YEAR_BY_NAME as Ct, TUI_REPORT_COMPACT_MAX_ROWS as D, SUPPLY_CHAIN_PLUGIN as Dn, GENERATED_BUNDLE_FILE_PATTERN as Dt, TRACKED_FILE_FLAGS_GIT_ARGUMENTS as E, SUPPLY_CHAIN_OVERLAP_TIMEOUT_MS as En, FILE_LINT_CACHE_MAX_FILE_COUNT as Et, lowerChildProcessPriority as F, VERCEL_NEXTJS_SECURITY_RELEASE_URL as Fn, HTML_FILE_PATTERN as Ft, resolvePluginPath as G, MINIFIED_SNIFF_BYTES as Gt, resolveOxlintThreadCount as H, MAINTAINABILITY_SOURCE_FILE_PATTERN as Ht, prefetchGitCommand as I, getCategoryImpact as In, IGNORED_DIRECTORIES as It, resolveTsConfigRelativePath as J, OXLINT_NODE_REQUIREMENT as Jt, resolveReactDoctorCacheDir as K, OCCURRENCE_MATCHED_CATEGORIES as Kt, prespawnOxlintWorkers as L, JSX_DUPLICATION_SOURCE_FILE_PATTERN as Lt, buildOxlintWorkerSpawnSpec as M, TELEMETRY_SHUTDOWN_TIMEOUT_MS as Mn, GIT_LS_FILES_MAX_BUFFER_BYTES as Mt, discardPrefetchedGitCommands as N, TSCONFIG_FILENAMES as Nn, GIT_SHOW_MAX_BUFFER_BYTES as Nt, TUI_REPORT_DETAIL_WIDTH_FRACTION as O, SUPPLY_CHAIN_RULE as On, GENERATED_SOURCE_DIRECTORY_PATTERN as Ot, killUnadoptedOxlintWorkers as P, TYPESCRIPT_DECLARATION_FILE_PATTERN as Pn, GIT_SOURCE_LISTING_ARGUMENTS as Pt, takeReactCompilerDetection as Q, OXLINT_SPLIT_TOTAL_BUDGET_MS as Qt, readSystemConcurrencyFacts as R, JSX_FILE_PATTERN as Rt, SENTRY_FLUSH_TIMEOUT_MS as S, SUPPLY_CHAIN_CACHE_SUBDIR as Sn, ENTERPRISE_CONTACT_URL as St, STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES as T, SUPPLY_CHAIN_IGNORED_PACKAGES as Tn, FILE_LINT_CACHE_FILENAME as Tt, resolveOxlintToolchainVersions as U, MAX_GLOB_PATTERN_LENGTH_CHARS as Ut, resolveOxlintBinary as V, MAINTAINABILITY_PLUGIN as Vt, resolveOxlintWorkerRuntime as W, MILLISECONDS_PER_SECOND as Wt, spawnOxlintWorkerProcess as X, OXLINT_OUTPUT_MAX_BYTES as Xt, setChildProcessRef as Y, OXLINT_OOM_RESCUE_BUDGET_MS as Yt, takePrespawnedOxlintWorker as Z, OXLINT_SPAWN_TIMEOUT_MS as Zt, SCAN_PREAMBLE_SKIP_FLAGS as _, SOURCE_FILE_PATTERN as _n, DIAGNOSTIC_CATEGORY_BUCKETS as _t, CACHE_DISABLED_VALUES as a, REACT_ROUTER_CAPABILITY_THRESHOLDS as an, AXIOM_METRICS_DATASET_HEADER as at, SCAN_RESULT_CACHE_MAX_HASHED_FILE_SIZE_BYTES as b, SPAWN_ARGS_MAX_LENGTH_CHARS_POSIX as bn, DOCS_URL as bt, HEAD_SHA_GIT_ARGUMENTS as c, ROOT_CAUSE_GROUPABLE_RULE_KEYS as cn, CANONICAL_DISCORD_URL as ct, METRIC_DISTRIBUTION_BOUNDARIES as d, SHARE_BASE_URL as dn, COMPILER_CLEANUP_BUCKET as dt, PROJECT_ANALYSIS_WORKER_MAX_OLD_SPACE_MB as en, ABORT_EXIT_CODES as et, MINIMUM_VTE_VERSION_FOR_HYPERLINKS as f, SIDECAR_LINT_CACHE_FILENAME as fn, COMPILER_CLEANUP_RULE_KEYS as ft, RUN_GIT_MAX_BUFFER_BYTES as g, SOCKET_PACKAGE_PAGE_BASE as gn, DEFAULT_BRANCH_CANDIDATES as gt, REPOSITORY_ROOT_GIT_ARGUMENTS as h, SOCKET_FREE_USER_AGENT as hn, CONFIG_SCHEMA_URL as ht, BASELINE_FILES_TEMP_DIR_PREFIX as i, REACT_BLOG_RSC_ADVISORY_URL as in, AXIOM_DEFAULT_DOMAIN as it, buildOxlintChildEnv as j, TELEMETRY_EXPORT_INTERVAL_MS as jn, GIT_CHECK_ATTR_MAX_BUFFER_BYTES as jt, WORKTREE_STATUS_GIT_ARGUMENTS as k, TAILWIND_POSTCSS7_COMPAT_ALIAS as kn, GITHUB_ACTIONS_SETUP_URL as kt, INTERNAL_ERROR_JSON_FALLBACK as l, SCANNED_DOT_DIRECTORIES as ln, CANONICAL_GITHUB_URL as lt, REACT_DOCTOR_CONFIG_PROJECT_NAME as m, SOCKET_FREE_PURL_API_BASE as mn, CONFIG_FINGERPRINT_FILENAMES as mt, AXIOM_METRICS_DATASET as n, PROJECT_ANALYSIS_WORKER_TIMEOUT_CEILING_MS as nn, APP_ONLY_RULE_KEYS as nt, CI_TRUST_COMPANIES as o, REACT_SERVER_DOM_PACKAGES as on, AXIOM_METRICS_PATH as ot, NANOSECONDS_PER_MILLISECOND as p, SKILL_NAME as pn, CONFIG_CACHE_TTL_MS as pt, resolveScanConcurrency as q, OXLINT_IGNORED_DECLARATION_DIAGNOSTIC_CODES as qt, AXIOM_TRACES_DATASET as r, PROJECT_ANALYSIS_WORKER_TIMEOUT_MS as rn, AXIOM_DATASET_HEADER as rt, GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS as s, RECOMMENDED_PNPM_MINIMUM_RELEASE_AGE_MINUTES as sn, AXIOM_TRACES_PATH as st, AXIOM_INGEST_TOKEN as t, PROJECT_ANALYSIS_WORKER_MEMORY_BUDGET_BYTES as tn, ADOPTABLE_LINT_CONFIG_FILENAMES as tt, METRIC as u, SCORE_API_URL as un, CI_URL as ut, SCAN_RESULT_CACHE_FILENAME as v, SPAWN_ARGS_MAX_LENGTH_CHARS as vn, DISABLE_DIRECTIVE_BACKUP_DIRECTORY_SEGMENTS as vt, STAGED_FILES_TEMP_DIR_PREFIX as w, SUPPLY_CHAIN_CATEGORY as wn, FETCH_TIMEOUT_MS as wt, SENTRY_DSN as x, STAGED_FILES_PROJECT_CONFIG_FILENAMES as xn, DUPLICATE_JSX_WORKER_IDLE_TIMEOUT_MS as xt, SCAN_RESULT_CACHE_GIT_ARGUMENTS as y, SPAWN_ARGS_MAX_LENGTH_CHARS_DARWIN as yn, DOCS_RULES_BASE_URL as yt, resolveConfiguredScanConcurrency as z, MAINTAINABILITY_CATEGORY as zt };
|
|
1033
1033
|
|
|
1034
|
-
//# sourceMappingURL=constants-
|
|
1035
|
-
//# debugId=
|
|
1034
|
+
//# sourceMappingURL=constants-DHn5rUeg.js.map
|
|
1035
|
+
//# debugId=a2fb00c2-593b-5d58-b7fe-378efd853ad4
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { t as inspectAction } from "./inspect-
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="acc3a6f9-92d4-5f5c-bc77-b563f29a6570")}catch(e){}}();
|
|
3
|
+
import { t as inspectAction } from "./inspect-D3UYRxCv.js";
|
|
4
4
|
//#region src/cli/commands/design.ts
|
|
5
5
|
const designAction = async (directory, flags) => inspectAction(directory, {
|
|
6
6
|
...flags,
|
|
@@ -10,5 +10,5 @@ const designAction = async (directory, flags) => inspectAction(directory, {
|
|
|
10
10
|
//#endregion
|
|
11
11
|
export { designAction };
|
|
12
12
|
|
|
13
|
-
//# sourceMappingURL=design-
|
|
14
|
-
//# debugId=
|
|
13
|
+
//# sourceMappingURL=design-NGMlUJw8.js.map
|
|
14
|
+
//# debugId=acc3a6f9-92d4-5f5c-bc77-b563f29a6570
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { d as isJsonModeActive, m as writeJsonCancellationReport } from "./record-metric-
|
|
4
|
-
import { n as shutdownTelemetry, r as flushSentry } from "./telemetry-runtime-
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="fc9b574a-06e4-57bd-97b6-4dd2e4567a06")}catch(e){}}();
|
|
3
|
+
import { d as isJsonModeActive, m as writeJsonCancellationReport } from "./record-metric-B8b4bjaB.js";
|
|
4
|
+
import { n as shutdownTelemetry, r as flushSentry } from "./telemetry-runtime-B5ReQ28o.js";
|
|
5
5
|
import { t as activeScanAbortRegistry } from "./active-scan-abort-registry-CCTgal0O.js";
|
|
6
|
-
import { n as buildFooterLinkLines, t as buildSectionDivider } from "./build-section-divider-
|
|
6
|
+
import { n as buildFooterLinkLines, t as buildSectionDivider } from "./build-section-divider-SaQnctqK.js";
|
|
7
7
|
//#region src/cli/utils/active-tui-renderer.ts
|
|
8
8
|
let activeTuiRenderer = null;
|
|
9
9
|
const registerActiveTuiRenderer = (renderer) => {
|
|
@@ -50,5 +50,5 @@ const exitGracefully = () => {
|
|
|
50
50
|
//#endregion
|
|
51
51
|
export { registerActiveTuiRenderer as n, exitGracefully as t };
|
|
52
52
|
|
|
53
|
-
//# sourceMappingURL=exit-gracefully-
|
|
54
|
-
//# debugId=
|
|
53
|
+
//# sourceMappingURL=exit-gracefully-IqbKl0nj.js.map
|
|
54
|
+
//# debugId=fc9b574a-06e4-57bd-97b6-4dd2e4567a06
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { ct as CANONICAL_DISCORD_URL, lt as CANONICAL_GITHUB_URL, u as METRIC } from "./constants-
|
|
4
|
-
import {
|
|
5
|
-
import { c as isNpmCacheCorruptionError, l as formatEnvironmentError, s as formatNpmCacheCorruptionError, u as isEnvironmentError } from "./telemetry-runtime-
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c7811196-c7a8-55dc-b81a-cd9e94a16e29")}catch(e){}}();
|
|
3
|
+
import { ct as CANONICAL_DISCORD_URL, lt as CANONICAL_GITHUB_URL, u as METRIC } from "./constants-DHn5rUeg.js";
|
|
4
|
+
import { At as highlighter, Cn as runSync, Nt as isReactDoctorError, Vn as isErrnoException, _ as VERSION, mn as gen, on as error, t as recordCount, vt as formatErrorChain, yt as formatReactDoctorError } from "./record-metric-B8b4bjaB.js";
|
|
5
|
+
import { c as isNpmCacheCorruptionError, l as formatEnvironmentError, s as formatNpmCacheCorruptionError, u as isEnvironmentError } from "./telemetry-runtime-B5ReQ28o.js";
|
|
6
6
|
//#region src/cli/utils/handle-error.ts
|
|
7
7
|
const OTLP_ENDPOINT_ENVIRONMENT_VARIABLE = "REACT_DOCTOR_OTLP_ENDPOINT";
|
|
8
8
|
const OTLP_AUTH_HEADER_ENVIRONMENT_VARIABLE = "REACT_DOCTOR_OTLP_AUTH_HEADER";
|
|
@@ -111,5 +111,5 @@ const handleUserError = (error$1, options = {}) => {
|
|
|
111
111
|
//#endregion
|
|
112
112
|
export { handleUserError as n, handleError as t };
|
|
113
113
|
|
|
114
|
-
//# sourceMappingURL=handle-error-
|
|
115
|
-
//# debugId=
|
|
114
|
+
//# sourceMappingURL=handle-error-BxDfT80U.js.map
|
|
115
|
+
//# debugId=c7811196-c7a8-55dc-b81a-cd9e94a16e29
|
package/dist/index.d.ts
CHANGED
|
@@ -341,7 +341,7 @@ interface Pipeable {
|
|
|
341
341
|
*/
|
|
342
342
|
declare const Class$1: new () => Pipeable;
|
|
343
343
|
//#endregion
|
|
344
|
-
//#region ../core/dist/resolve-scan-concurrency-
|
|
344
|
+
//#region ../core/dist/resolve-scan-concurrency-DJ7pmvUB.d.ts
|
|
345
345
|
/**
|
|
346
346
|
* A secondary source location attached to a diagnostic (oxlint's
|
|
347
347
|
* non-primary labels). Editors render these as
|
|
@@ -1202,6 +1202,7 @@ interface DiagnoseProjectsResult {
|
|
|
1202
1202
|
//#endregion
|
|
1203
1203
|
//#region src/types/inspect.d.ts
|
|
1204
1204
|
interface InspectResult {
|
|
1205
|
+
sourceFilterConfigHash?: string;
|
|
1205
1206
|
diagnostics: Diagnostic[];
|
|
1206
1207
|
score: ScoreResult | null;
|
|
1207
1208
|
skippedChecks: string[];
|
|
@@ -1279,6 +1280,7 @@ interface InspectResult {
|
|
|
1279
1280
|
fixedCount: number; /** Total findings at base (over the same files), for context. */
|
|
1280
1281
|
baseTotalCount: number; /** Pre-existing findings matched after moving to a different file. */
|
|
1281
1282
|
crossFileMatchCount?: number;
|
|
1283
|
+
ruleCountMatchCount?: number;
|
|
1282
1284
|
};
|
|
1283
1285
|
}
|
|
1284
1286
|
/**
|
|
@@ -1376,6 +1378,7 @@ interface JsonReportDiagnosticV3 extends Diagnostic {
|
|
|
1376
1378
|
tags: string[];
|
|
1377
1379
|
}
|
|
1378
1380
|
interface JsonReportProjectEntryV3 {
|
|
1381
|
+
sourceFilterConfigHash?: string;
|
|
1379
1382
|
directory: string;
|
|
1380
1383
|
packageRoot: string;
|
|
1381
1384
|
framework: ProjectInfo["framework"];
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d2b0583c-877f-57cf-8b0a-65519428807c")}catch(e){}}();
|
|
3
3
|
import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import * as fs$1$2 from "node:fs";
|
|
@@ -26,7 +26,7 @@ import { PassThrough } from "node:stream";
|
|
|
26
26
|
import { convertToTSX } from "@astrojs/compiler/sync";
|
|
27
27
|
import { STATUS_CODES } from "node:http";
|
|
28
28
|
import { gzipSync } from "node:zlib";
|
|
29
|
-
//#region ../core/dist/constants-
|
|
29
|
+
//#region ../core/dist/constants-E-ghW6VY.js
|
|
30
30
|
const HTML_FILE_PATTERN = /\.html$/i;
|
|
31
31
|
const SOURCE_FILE_PATTERN = /\.(?:astro|tsx?|jsx?|mts|mjs|[hH][tT][mM][lL])$/;
|
|
32
32
|
const GENERATED_BUNDLE_FILE_PATTERN = /\.(iife|umd|global|min)\.m?js$/i;
|
|
@@ -438,7 +438,7 @@ const isPlainObject = (value) => {
|
|
|
438
438
|
//#region ../core/dist/react-compiler-detection-worker-protocol-Dp5LlrE8.js
|
|
439
439
|
const isReactCompilerDetectionReply = (value) => typeof value === "object" && value !== null && "id" in value && typeof value.id === "number" && "hasReactCompiler" in value && (typeof value.hasReactCompiler === "boolean" || value.hasReactCompiler === null);
|
|
440
440
|
//#endregion
|
|
441
|
-
//#region ../core/dist/react-compiler-detection-client-
|
|
441
|
+
//#region ../core/dist/react-compiler-detection-client-fc698QTY.js
|
|
442
442
|
const pendingOutputsByRequestKey = /* @__PURE__ */ new Map();
|
|
443
443
|
const toRequestKey = (request) => [
|
|
444
444
|
request.directory,
|
|
@@ -2708,7 +2708,7 @@ var require_picomatch$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
2708
2708
|
module.exports = picomatch;
|
|
2709
2709
|
}));
|
|
2710
2710
|
//#endregion
|
|
2711
|
-
//#region ../core/dist/collect-unplugin-auto-import-global-scopes-
|
|
2711
|
+
//#region ../core/dist/collect-unplugin-auto-import-global-scopes-D2Skzhl1.js
|
|
2712
2712
|
var import_picomatch = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
2713
2713
|
const pico = require_picomatch$1();
|
|
2714
2714
|
const utils = require_utils();
|
|
@@ -3158,7 +3158,7 @@ const collectUnpluginAutoImportGlobalScopes = ({ rootDirectory, candidateFiles }
|
|
|
3158
3158
|
return scopes.some((scope) => scope.names.length > 0) ? scopes : [];
|
|
3159
3159
|
};
|
|
3160
3160
|
//#endregion
|
|
3161
|
-
//#region ../core/dist/detect-duplicate-jsx-subtrees-
|
|
3161
|
+
//#region ../core/dist/detect-duplicate-jsx-subtrees-CzQouU4i.js
|
|
3162
3162
|
const yieldToEventLoop = () => new Promise((resolve) => {
|
|
3163
3163
|
setImmediate(resolve);
|
|
3164
3164
|
});
|
|
@@ -3715,7 +3715,7 @@ const detectDuplicateJsxSubtreesCooperative = async (sourceReader, options = {})
|
|
|
3715
3715
|
});
|
|
3716
3716
|
};
|
|
3717
3717
|
//#endregion
|
|
3718
|
-
//#region ../core/dist/detect-react-compiler-
|
|
3718
|
+
//#region ../core/dist/detect-react-compiler-DIKiMJ1N.js
|
|
3719
3719
|
const NEXT_CONFIG_FILENAMES = [
|
|
3720
3720
|
"next.config.js",
|
|
3721
3721
|
"next.config.mjs",
|
|
@@ -25323,6 +25323,7 @@ var JsonReportProjectEntry = class extends Class("JsonReportProjectEntry")({
|
|
|
25323
25323
|
var JsonReportProjectEntryV3 = class extends Class("JsonReportProjectEntryV3")({
|
|
25324
25324
|
directory: String$1,
|
|
25325
25325
|
packageRoot: String$1,
|
|
25326
|
+
sourceFilterConfigHash: optional(String$1),
|
|
25326
25327
|
framework: Framework,
|
|
25327
25328
|
project: Unknown,
|
|
25328
25329
|
diagnostics: ArraySchema(JsonReportDiagnosticV3),
|
|
@@ -78843,6 +78844,7 @@ const buildJsonReport = (input) => {
|
|
|
78843
78844
|
return {
|
|
78844
78845
|
directory,
|
|
78845
78846
|
packageRoot: result.project.rootDirectory,
|
|
78847
|
+
...result.sourceFilterConfigHash ? { sourceFilterConfigHash: result.sourceFilterConfigHash } : {},
|
|
78846
78848
|
framework: result.project.framework,
|
|
78847
78849
|
project: result.project,
|
|
78848
78850
|
diagnostics: result.diagnostics.map((diagnostic) => toJsonReportDiagnostic(diagnostic, result.project.rootDirectory, input.directory)),
|
|
@@ -79312,4 +79314,4 @@ const toJsonReport = (result, options) => buildJsonReport({
|
|
|
79312
79314
|
export { AmbiguousProjectError, NoReactDependencyError, NotADirectoryError, PackageJsonNotFoundError, ProjectNotFoundError, ReactDoctorError, buildJsonReport, buildJsonReportError, clearCaches, defineConfig, diagnose, filterSourceFiles, getDiffInfo, hasReactRuntime, isProjectDiscoveryError, isReactDoctorError, summarizeDiagnostics, toJsonReport };
|
|
79313
79315
|
|
|
79314
79316
|
//# sourceMappingURL=index.js.map
|
|
79315
|
-
//# debugId=
|
|
79317
|
+
//# debugId=d2b0583c-877f-57cf-8b0a-65519428807c
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { N as discardPrefetchedGitCommands, T as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, lt as CANONICAL_GITHUB_URL, u as METRIC, w as STAGED_FILES_TEMP_DIR_PREFIX, xn as STAGED_FILES_PROJECT_CONFIG_FILENAMES } from "./constants-
|
|
4
|
-
import {
|
|
5
|
-
import { n as shutdownTelemetry, o as isExpectedUserError, r as flushSentry } from "./telemetry-runtime-
|
|
6
|
-
import { n as handleUserError, t as handleError } from "./handle-error-
|
|
7
|
-
import { t as reportErrorToSentry } from "./report-error-
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="199cd9aa-54a6-5a5b-9c59-07a5a7035077")}catch(e){}}();
|
|
3
|
+
import { N as discardPrefetchedGitCommands, T as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, lt as CANONICAL_GITHUB_URL, u as METRIC, w as STAGED_FILES_TEMP_DIR_PREFIX, xn as STAGED_FILES_PROJECT_CONFIG_FILENAMES } from "./constants-DHn5rUeg.js";
|
|
4
|
+
import { At as highlighter, Ct as getDiffInfo, D as isCodingAgentEnvironment, E as isCiOrCodingAgentEnvironment, Gt as remainingDeadlineBudgetMs, Jt as resolveScanTarget, K as StagedFiles, Ot as hasSupportedFrameworkOrLibrary, Rn as messageFromUnknown, S as isDebugFlagEnabled, Sn as runPromise, Un as isPlainObject, Vn as isErrnoException, Vt as mapWithConcurrency, Z as buildJsonReport, _ as VERSION, bt as getBaselineDiffPlan, dn as JsonReport, dt as detectAiTrainingEnvironment, f as setJsonReportDirectory, fn as decodeUnknownSync, ft as discoverSupportedSubprojects, g as writeJsonReport, gt as findLegacyConfig, h as writeJsonErrorReport, j as Git, kn as provide, mn as gen, n as recordDistribution, p as setJsonReportMode, t as recordCount, tn as toRelativePath, u as enableJsonMode, xt as getChangedLineRanges, y as CliInputError, yn as provide$1, zt as listWorkspacePackages } from "./record-metric-B8b4bjaB.js";
|
|
5
|
+
import { n as shutdownTelemetry, o as isExpectedUserError, r as flushSentry } from "./telemetry-runtime-B5ReQ28o.js";
|
|
6
|
+
import { n as handleUserError, t as handleError } from "./handle-error-BxDfT80U.js";
|
|
7
|
+
import { t as reportErrorToSentry } from "./report-error-5G1BJCWR.js";
|
|
8
8
|
import { t as toForwardSlashes } from "./path-format-By20mo8A.js";
|
|
9
|
-
import { N as cliLogger, c as spinner, i as hasDoctorScript, j as runGitRaw, k as runGit, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-
|
|
10
|
-
import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-
|
|
11
|
-
import { c as openWorkflowPullRequest, i as warnDeprecatedDiff, l as stageWorkflowFile, r as resolveScope, s as resolveBlockingLevel, t as finalizeScope } from "./resolve-scope-
|
|
12
|
-
import { t as shouldSkipPrompts } from "./should-skip-prompts-
|
|
13
|
-
import { A as createInvocationInspect, C as detectLaunchableAgents, D as buildHandoffPayload, E as launchCliAgent, M as resolveMergeBaseRef, N as printHeadlessReport, O as collectProjectSourceFiles, R as printDiagnosticsDump, S as setUpGitHubActions, T as copyToClipboard, U as buildEmptyReportMessage, V as filterDiagnosticsByCategories, W as resolveInvocationOxlintConcurrency, _ as retryMissingProjectScores, a as validateModeFlags, b as filterScansForSurface, c as partitionProjectScanOutcomes, d as buildCodeFrame, f as resolveProjectScan, g as resolveProjectRelativeDirectory, h as resolveProjectSourceFilePaths, i as validateIncludeUntrackedScope, j as inspect, k as deduplicateProjectScans, l as discoverWorkspacePackages, m as resolveProjectDiffIncludePaths, n as formatSkippedProjectsMessage, o as resolveExcludedProjectDirectories, p as resolveProjectChangedLineRanges, s as projectManifestChanged, t as shouldFailScanGate, u as selectProjects, v as resolveWorkspaceDeadCodeOwner, w as CLI_AGENT_BINARIES, x as countUniqueScannedFiles, y as resolveCliInspectOptions } from "./should-fail-scan-gate-
|
|
14
|
-
import { a as recordGate, g as loadAgentInstall, i as readPreference, o as runMigrations, p as SETUP_HINT_EVENT, r as isGatePending, s as writePreference, u as HANDOFF_TARGET_PREFERENCE_ID } from "./report-workflow-result-
|
|
15
|
-
import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithOutdatedReactDoctorHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-
|
|
16
|
-
import { t as readObjectFile } from "./read-object-file-
|
|
9
|
+
import { N as cliLogger, c as spinner, i as hasDoctorScript, j as runGitRaw, k as runGit, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-BttpccU2.js";
|
|
10
|
+
import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-C7aU2_nG.js";
|
|
11
|
+
import { c as openWorkflowPullRequest, i as warnDeprecatedDiff, l as stageWorkflowFile, r as resolveScope, s as resolveBlockingLevel, t as finalizeScope } from "./resolve-scope-IL1MWTU6.js";
|
|
12
|
+
import { t as shouldSkipPrompts } from "./should-skip-prompts-DNkwhWow.js";
|
|
13
|
+
import { A as createInvocationInspect, C as detectLaunchableAgents, D as buildHandoffPayload, E as launchCliAgent, M as resolveMergeBaseRef, N as printHeadlessReport, O as collectProjectSourceFiles, R as printDiagnosticsDump, S as setUpGitHubActions, T as copyToClipboard, U as buildEmptyReportMessage, V as filterDiagnosticsByCategories, W as resolveInvocationOxlintConcurrency, _ as retryMissingProjectScores, a as validateModeFlags, b as filterScansForSurface, c as partitionProjectScanOutcomes, d as buildCodeFrame, f as resolveProjectScan, g as resolveProjectRelativeDirectory, h as resolveProjectSourceFilePaths, i as validateIncludeUntrackedScope, j as inspect, k as deduplicateProjectScans, l as discoverWorkspacePackages, m as resolveProjectDiffIncludePaths, n as formatSkippedProjectsMessage, o as resolveExcludedProjectDirectories, p as resolveProjectChangedLineRanges, s as projectManifestChanged, t as shouldFailScanGate, u as selectProjects, v as resolveWorkspaceDeadCodeOwner, w as CLI_AGENT_BINARIES, x as countUniqueScannedFiles, y as resolveCliInspectOptions } from "./should-fail-scan-gate-_gmz0don.js";
|
|
14
|
+
import { a as recordGate, g as loadAgentInstall, i as readPreference, o as runMigrations, p as SETUP_HINT_EVENT, r as isGatePending, s as writePreference, u as HANDOFF_TARGET_PREFERENCE_ID } from "./report-workflow-result-BbAqdyMA.js";
|
|
15
|
+
import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithOutdatedReactDoctorHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-g717jJGn.js";
|
|
16
|
+
import { t as readObjectFile } from "./read-object-file-CBoKpfyS.js";
|
|
17
17
|
import * as fs$1 from "node:fs";
|
|
18
18
|
import fs from "node:fs";
|
|
19
19
|
import * as path$1 from "node:path";
|
|
@@ -24,6 +24,7 @@ const readBaselineReport = (file) => {
|
|
|
24
24
|
try {
|
|
25
25
|
const report = decodeUnknownSync(JsonReport)(JSON.parse(fs.readFileSync(file, "utf-8")));
|
|
26
26
|
if (!report.ok || report.mode === "baseline" || "baselineDegraded" in report && report.baselineDegraded || report.projects.length === 0 || report.projects.some((project) => project.skippedChecks.length > 0 || project.diagnostics.some((diagnostic) => diagnostic.fingerprint === void 0)) || report.schemaVersion === 3 && (report.skippedProjects?.length || report.projects.some((project) => !project.complete)) || report.diagnostics.some((diagnostic) => diagnostic.fingerprint === void 0)) throw new Error("Use a complete, non-comparison --json report from the current version, with diagnostic fingerprints.");
|
|
27
|
+
if (report.schemaVersion !== 3 || report.projects.some((project) => !project.sourceFilterConfigHash)) throw new Error("Regenerate the base --json report with the current version to record its source-dependent filter settings.");
|
|
27
28
|
return report;
|
|
28
29
|
} catch (error) {
|
|
29
30
|
throw new CliInputError(`Cannot read baseline report "${file}": ${error instanceof Error ? error.message : String(error)}`);
|
|
@@ -1133,6 +1134,7 @@ const isProjectSupplyChainEnabled = ({ flags, projectConfig }) => flags.supplyCh
|
|
|
1133
1134
|
const buildProjectInspectOptions = ({ context, projectScan, projectScanPlan, ownsWorkspaceDeadCode }) => {
|
|
1134
1135
|
const scanDirectory = projectScan.directory;
|
|
1135
1136
|
const savedBaseline = context.savedBaseline;
|
|
1137
|
+
const baselineProject = savedBaseline?.projects.find((project) => path$1.resolve(context.resolvedDirectory, path$1.relative(savedBaseline.directory, project.directory)) === scanDirectory);
|
|
1136
1138
|
const baselinePaths = projectScanPlan.includePaths ? new Set([...projectScanPlan.includePaths, ...projectScanPlan.projectBaselineBaseFiles ?? []]) : null;
|
|
1137
1139
|
return {
|
|
1138
1140
|
...context.scanOptions,
|
|
@@ -1148,19 +1150,17 @@ const buildProjectInspectOptions = ({ context, projectScan, projectScanPlan, own
|
|
|
1148
1150
|
retainExcludedProjectDeadCodeDiagnostics: ownsWorkspaceDeadCode,
|
|
1149
1151
|
baselineReport: savedBaseline && context.flags.baseline ? {
|
|
1150
1152
|
file: context.flags.baseline,
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
});
|
|
1163
|
-
}),
|
|
1153
|
+
sourceFilterConfigHash: baselineProject?.sourceFilterConfigHash,
|
|
1154
|
+
sourceRevision: savedBaseline.sourceRevision,
|
|
1155
|
+
diagnostics: baselineProject ? baselineProject.diagnostics.flatMap((diagnostic) => {
|
|
1156
|
+
const filePath = path$1.relative(baselineProject.directory, path$1.resolve(baselineProject.directory, diagnostic.filePath)).replace(/\\/g, "/");
|
|
1157
|
+
if (baselinePaths && !baselinePaths.has(filePath)) return [];
|
|
1158
|
+
return [{
|
|
1159
|
+
...diagnostic,
|
|
1160
|
+
relatedLocations: diagnostic.relatedLocations ? [...diagnostic.relatedLocations] : void 0,
|
|
1161
|
+
filePath
|
|
1162
|
+
}];
|
|
1163
|
+
}) : [],
|
|
1164
1164
|
renamedFiles: Object.fromEntries(Object.entries(context.baselineDiffPlan?.renamedFiles ?? {}).map(([basePath, headPath]) => [path$1.relative(scanDirectory, path$1.resolve(context.resolvedDirectory, basePath)).replace(/\\/g, "/"), path$1.relative(scanDirectory, path$1.resolve(context.resolvedDirectory, headPath)).replace(/\\/g, "/")]))
|
|
1165
1165
|
} : void 0,
|
|
1166
1166
|
baseline: context.baselineRef !== null && projectScanPlan.projectBaselineBaseFiles !== null && projectScanPlan.projectBaselineHeadFiles !== null ? {
|
|
@@ -1520,5 +1520,5 @@ const inspectAction = async (directory, flags, invocationCommand = "inspect", se
|
|
|
1520
1520
|
//#endregion
|
|
1521
1521
|
export { warnDeprecatedFailOn as n, runProjectMigrations as r, inspectAction as t };
|
|
1522
1522
|
|
|
1523
|
-
//# sourceMappingURL=inspect-
|
|
1524
|
-
//# debugId=
|
|
1523
|
+
//# sourceMappingURL=inspect-D3UYRxCv.js.map
|
|
1524
|
+
//# debugId=199cd9aa-54a6-5a5b-9c59-07a5a7035077
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import { u as METRIC } from "./constants-
|
|
4
|
-
import {
|
|
5
|
-
import { o as isExpectedUserError } from "./telemetry-runtime-
|
|
6
|
-
import { n as handleUserError, t as handleError } from "./handle-error-
|
|
7
|
-
import { t as reportErrorToSentry } from "./report-error-
|
|
8
|
-
import { t as printBrandedHeader } from "./print-branded-header-
|
|
9
|
-
import { n as runInstallReactDoctor } from "./install-react-doctor-
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="008e633c-68ba-51e4-ab1e-628d68f31d74")}catch(e){}}();
|
|
3
|
+
import { u as METRIC } from "./constants-DHn5rUeg.js";
|
|
4
|
+
import { Cn as runSync, t as recordCount } from "./record-metric-B8b4bjaB.js";
|
|
5
|
+
import { o as isExpectedUserError } from "./telemetry-runtime-B5ReQ28o.js";
|
|
6
|
+
import { n as handleUserError, t as handleError } from "./handle-error-BxDfT80U.js";
|
|
7
|
+
import { t as reportErrorToSentry } from "./report-error-5G1BJCWR.js";
|
|
8
|
+
import { t as printBrandedHeader } from "./print-branded-header-WMTAFewk.js";
|
|
9
|
+
import { n as runInstallReactDoctor } from "./install-react-doctor-g717jJGn.js";
|
|
10
10
|
//#region src/cli/commands/install.ts
|
|
11
11
|
const installAction = async (options, command) => {
|
|
12
12
|
recordCount(METRIC.cliInvoked, 1, { command: "install" });
|
|
@@ -30,5 +30,5 @@ const installAction = async (options, command) => {
|
|
|
30
30
|
//#endregion
|
|
31
31
|
export { installAction };
|
|
32
32
|
|
|
33
|
-
//# sourceMappingURL=install-
|
|
34
|
-
//# debugId=
|
|
33
|
+
//# sourceMappingURL=install-C9z3xbKW.js.map
|
|
34
|
+
//# debugId=008e633c-68ba-51e4-ab1e-628d68f31d74
|