@detergent-software/atk 8.6.1 → 8.7.0-dev.1
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/CHANGELOG.md +18 -0
- package/build/commands/audit.d.ts.map +1 -1
- package/build/commands/audit.js +5 -5
- package/build/commands/audit.js.map +1 -1
- package/build/commands/browse.js +6 -2
- package/build/commands/browse.js.map +1 -1
- package/build/commands/diff.d.ts.map +1 -1
- package/build/commands/diff.js +1 -1
- package/build/commands/diff.js.map +1 -1
- package/build/commands/doctor.d.ts +2 -1
- package/build/commands/doctor.d.ts.map +1 -1
- package/build/commands/doctor.js +9 -3
- package/build/commands/doctor.js.map +1 -1
- package/build/commands/install.js +9 -2
- package/build/commands/install.js.map +1 -1
- package/build/commands/outdated.d.ts.map +1 -1
- package/build/commands/outdated.js +9 -9
- package/build/commands/outdated.js.map +1 -1
- package/build/commands/pin.js +3 -3
- package/build/commands/pin.js.map +1 -1
- package/build/commands/sync.d.ts.map +1 -1
- package/build/commands/sync.js +11 -10
- package/build/commands/sync.js.map +1 -1
- package/build/commands/update.d.ts.map +1 -1
- package/build/commands/update.js +21 -7
- package/build/commands/update.js.map +1 -1
- package/build/commands/why.d.ts.map +1 -1
- package/build/commands/why.js +5 -4
- package/build/commands/why.js.map +1 -1
- package/build/components/DiffView.d.ts +4 -1
- package/build/components/DiffView.d.ts.map +1 -1
- package/build/components/DiffView.js +3 -2
- package/build/components/DiffView.js.map +1 -1
- package/build/components/ExcludedSkippedHint.d.ts +4 -1
- package/build/components/ExcludedSkippedHint.d.ts.map +1 -1
- package/build/components/ExcludedSkippedHint.js +3 -2
- package/build/components/ExcludedSkippedHint.js.map +1 -1
- package/build/components/FrozenSkippedHint.d.ts +4 -1
- package/build/components/FrozenSkippedHint.d.ts.map +1 -1
- package/build/components/FrozenSkippedHint.js +3 -2
- package/build/components/FrozenSkippedHint.js.map +1 -1
- package/build/components/SyncAllInSync.d.ts +4 -1
- package/build/components/SyncAllInSync.d.ts.map +1 -1
- package/build/components/SyncAllInSync.js +2 -2
- package/build/components/SyncAllInSync.js.map +1 -1
- package/build/components/SyncDriftedList.d.ts +4 -1
- package/build/components/SyncDriftedList.d.ts.map +1 -1
- package/build/components/SyncDriftedList.js +3 -3
- package/build/components/SyncDriftedList.js.map +1 -1
- package/build/hooks/useListActions.d.ts.map +1 -1
- package/build/hooks/useListActions.js +3 -1
- package/build/hooks/useListActions.js.map +1 -1
- package/build/lib/adapter.d.ts +7 -0
- package/build/lib/adapter.d.ts.map +1 -1
- package/build/lib/adapter.js +8 -0
- package/build/lib/adapter.js.map +1 -1
- package/build/lib/config-file.d.ts +5 -1
- package/build/lib/config-file.d.ts.map +1 -1
- package/build/lib/config-file.js +6 -3
- package/build/lib/config-file.js.map +1 -1
- package/build/lib/config-lock.d.ts +20 -0
- package/build/lib/config-lock.d.ts.map +1 -0
- package/build/lib/config-lock.js +60 -0
- package/build/lib/config-lock.js.map +1 -0
- package/build/lib/diagnostics.d.ts +12 -6
- package/build/lib/diagnostics.d.ts.map +1 -1
- package/build/lib/diagnostics.js +29 -24
- package/build/lib/diagnostics.js.map +1 -1
- package/build/lib/diff-command.d.ts +3 -0
- package/build/lib/diff-command.d.ts.map +1 -1
- package/build/lib/diff-command.js +10 -8
- package/build/lib/diff-command.js.map +1 -1
- package/build/lib/hook-config.d.ts +7 -0
- package/build/lib/hook-config.d.ts.map +1 -1
- package/build/lib/hook-config.js +11 -0
- package/build/lib/hook-config.js.map +1 -1
- package/build/lib/installer.d.ts +6 -2
- package/build/lib/installer.d.ts.map +1 -1
- package/build/lib/installer.js +47 -22
- package/build/lib/installer.js.map +1 -1
- package/build/lib/multi-tool-install.d.ts +1 -1
- package/build/lib/multi-tool-install.d.ts.map +1 -1
- package/build/lib/multi-tool-install.js +10 -6
- package/build/lib/multi-tool-install.js.map +1 -1
- package/build/lib/org.d.ts +2 -1
- package/build/lib/org.d.ts.map +1 -1
- package/build/lib/org.js +4 -3
- package/build/lib/org.js.map +1 -1
- package/build/lib/schemas/adapter.d.ts +31 -0
- package/build/lib/schemas/adapter.d.ts.map +1 -1
- package/build/lib/schemas/adapter.js +12 -0
- package/build/lib/schemas/adapter.js.map +1 -1
- package/build/lib/scope.d.ts +5 -0
- package/build/lib/scope.d.ts.map +1 -1
- package/build/lib/scope.js +7 -0
- package/build/lib/scope.js.map +1 -1
- package/build/lib/sync.d.ts +11 -2
- package/build/lib/sync.d.ts.map +1 -1
- package/build/lib/sync.js +8 -7
- package/build/lib/sync.js.map +1 -1
- package/build/lib/tool-resolver.d.ts +2 -0
- package/build/lib/tool-resolver.d.ts.map +1 -1
- package/build/lib/tool-resolver.js +8 -4
- package/build/lib/tool-resolver.js.map +1 -1
- package/build/lib/uninstaller.d.ts.map +1 -1
- package/build/lib/uninstaller.js +5 -3
- package/build/lib/uninstaller.js.map +1 -1
- package/build/lib/updater.d.ts +12 -6
- package/build/lib/updater.d.ts.map +1 -1
- package/build/lib/updater.js +56 -37
- package/build/lib/updater.js.map +1 -1
- package/build/lib/write-file.d.ts +12 -2
- package/build/lib/write-file.d.ts.map +1 -1
- package/build/lib/write-file.js +54 -7
- package/build/lib/write-file.js.map +1 -1
- package/package.json +1 -1
- package/tool-adapters/claude-code.json +31 -0
|
@@ -1,11 +1,14 @@
|
|
|
1
|
+
import { type Scope } from '../lib/scope.js';
|
|
1
2
|
interface FrozenSkippedHintProps {
|
|
2
3
|
/** Number of frozen assets that were skipped */
|
|
3
4
|
count: number;
|
|
5
|
+
/** The scope the run worked in, for the thaw command. */
|
|
6
|
+
scope?: Scope;
|
|
4
7
|
}
|
|
5
8
|
/**
|
|
6
9
|
* Dimmed hint showing how many frozen assets were skipped during sync.
|
|
7
10
|
* Renders nothing when count is 0.
|
|
8
11
|
*/
|
|
9
|
-
export default function FrozenSkippedHint({ count }: FrozenSkippedHintProps): import("react/jsx-runtime").JSX.Element | null;
|
|
12
|
+
export default function FrozenSkippedHint({ count, scope }: FrozenSkippedHintProps): import("react/jsx-runtime").JSX.Element | null;
|
|
10
13
|
export {};
|
|
11
14
|
//# sourceMappingURL=FrozenSkippedHint.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrozenSkippedHint.d.ts","sourceRoot":"","sources":["../../src/components/FrozenSkippedHint.tsx"],"names":[],"mappings":"AAEA,UAAU,sBAAsB;IAC9B,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"FrozenSkippedHint.d.ts","sourceRoot":"","sources":["../../src/components/FrozenSkippedHint.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,KAAK,EAAiB,MAAM,iBAAiB,CAAC;AAE5D,UAAU,sBAAsB;IAC9B,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,sBAAsB,kDASjF"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Text } from 'ink';
|
|
3
|
+
import { scopedCommand } from '../lib/scope.js';
|
|
3
4
|
/**
|
|
4
5
|
* Dimmed hint showing how many frozen assets were skipped during sync.
|
|
5
6
|
* Renders nothing when count is 0.
|
|
6
7
|
*/
|
|
7
|
-
export default function FrozenSkippedHint({ count }) {
|
|
8
|
+
export default function FrozenSkippedHint({ count, scope }) {
|
|
8
9
|
if (count === 0)
|
|
9
10
|
return null;
|
|
10
|
-
return (_jsxs(Text, { dimColor: true, children: [count, " frozen asset", count !== 1 ? 's' : '', " skipped (use atk thaw
|
|
11
|
+
return (_jsxs(Text, { dimColor: true, children: [count, " frozen asset", count !== 1 ? 's' : '', " skipped (use ", scopedCommand('atk thaw <name>', scope), " to allow sync)."] }));
|
|
11
12
|
}
|
|
12
13
|
//# sourceMappingURL=FrozenSkippedHint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrozenSkippedHint.js","sourceRoot":"","sources":["../../src/components/FrozenSkippedHint.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"FrozenSkippedHint.js","sourceRoot":"","sources":["../../src/components/FrozenSkippedHint.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAc,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAS5D;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EAAE,KAAK,EAAE,KAAK,EAA0B;IAChF,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7B,OAAO,CACL,MAAC,IAAI,IAAC,QAAQ,mBACX,KAAK,mBAAe,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,oBAAgB,aAAa,CAAC,iBAAiB,EAAE,KAAK,CAAC,wBAE7F,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import type { Scope } from '../lib/scope.js';
|
|
1
2
|
interface SyncAllInSyncProps {
|
|
2
3
|
/** Number of assets skipped because they were uninstalled for this tool */
|
|
3
4
|
excludedSkipped?: number;
|
|
4
5
|
/** Number of frozen assets that were skipped */
|
|
5
6
|
frozenSkipped: number;
|
|
7
|
+
/** The scope the run worked in, for the hints' commands */
|
|
8
|
+
scope?: Scope;
|
|
6
9
|
/** Number of assets that are already in sync */
|
|
7
10
|
skipped: number;
|
|
8
11
|
/** The tool name (e.g., "claude-code") */
|
|
@@ -11,6 +14,6 @@ interface SyncAllInSyncProps {
|
|
|
11
14
|
/**
|
|
12
15
|
* Message shown when all assets are already in sync for a tool.
|
|
13
16
|
*/
|
|
14
|
-
export default function SyncAllInSync({ excludedSkipped, frozenSkipped, skipped, tool }: SyncAllInSyncProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export default function SyncAllInSync({ excludedSkipped, frozenSkipped, scope, skipped, tool, }: SyncAllInSyncProps): import("react/jsx-runtime").JSX.Element;
|
|
15
18
|
export {};
|
|
16
19
|
//# sourceMappingURL=SyncAllInSync.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncAllInSync.d.ts","sourceRoot":"","sources":["../../src/components/SyncAllInSync.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SyncAllInSync.d.ts","sourceRoot":"","sources":["../../src/components/SyncAllInSync.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAK7C,UAAU,kBAAkB;IAC1B,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,eAAmB,EACnB,aAAa,EACb,KAAK,EACL,OAAO,EACP,IAAI,GACL,EAAE,kBAAkB,2CAUpB"}
|
|
@@ -5,7 +5,7 @@ import FrozenSkippedHint from './FrozenSkippedHint.js';
|
|
|
5
5
|
/**
|
|
6
6
|
* Message shown when all assets are already in sync for a tool.
|
|
7
7
|
*/
|
|
8
|
-
export default function SyncAllInSync({ excludedSkipped = 0, frozenSkipped, skipped, tool }) {
|
|
9
|
-
return (_jsxs(_Fragment, { children: [_jsxs(Text, { color: 'green', children: ["\u2713 All ", skipped, " asset", skipped !== 1 ? 's' : '', " are in sync for ", tool, ". No changes needed."] }), _jsx(FrozenSkippedHint, { count: frozenSkipped }), _jsx(ExcludedSkippedHint, { count: excludedSkipped, tool: tool })] }));
|
|
8
|
+
export default function SyncAllInSync({ excludedSkipped = 0, frozenSkipped, scope, skipped, tool, }) {
|
|
9
|
+
return (_jsxs(_Fragment, { children: [_jsxs(Text, { color: 'green', children: ["\u2713 All ", skipped, " asset", skipped !== 1 ? 's' : '', " are in sync for ", tool, ". No changes needed."] }), _jsx(FrozenSkippedHint, { count: frozenSkipped, scope: scope }), _jsx(ExcludedSkippedHint, { count: excludedSkipped, scope: scope, tool: tool })] }));
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=SyncAllInSync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncAllInSync.js","sourceRoot":"","sources":["../../src/components/SyncAllInSync.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"SyncAllInSync.js","sourceRoot":"","sources":["../../src/components/SyncAllInSync.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAI3B,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AAevD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,eAAe,GAAG,CAAC,EACnB,aAAa,EACb,KAAK,EACL,OAAO,EACP,IAAI,GACe;IACnB,OAAO,CACL,8BACE,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,4BACV,OAAO,YAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,uBAAmB,IAAI,4BAChE,EACP,KAAC,iBAAiB,IAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAI,EACzD,KAAC,mBAAmB,IAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,IACxE,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Scope } from '../lib/scope.js';
|
|
1
2
|
import type { SyncEntry, SyncFailure } from '../lib/sync.js';
|
|
2
3
|
interface SyncDriftedListProps {
|
|
3
4
|
/** Whether this is a dry-run (preview only) or a live sync */
|
|
@@ -10,6 +11,8 @@ interface SyncDriftedListProps {
|
|
|
10
11
|
failures?: SyncFailure[];
|
|
11
12
|
/** Number of frozen assets that were skipped */
|
|
12
13
|
frozenSkipped: number;
|
|
14
|
+
/** The scope the run worked in, for the hints' commands */
|
|
15
|
+
scope?: Scope;
|
|
13
16
|
/** Number of assets that were already in sync and skipped */
|
|
14
17
|
skipped: number;
|
|
15
18
|
/** The tool name (e.g., "claude-code") */
|
|
@@ -22,6 +25,6 @@ interface SyncDriftedListProps {
|
|
|
22
25
|
* refuse, and skip counts.
|
|
23
26
|
* In live mode: shows synced summary, entry list with placed files, failures, and skip counts.
|
|
24
27
|
*/
|
|
25
|
-
export default function SyncDriftedList({ dryRun, entries, excludedSkipped, failures, frozenSkipped, skipped, tool, }: SyncDriftedListProps): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
export default function SyncDriftedList({ dryRun, entries, excludedSkipped, failures, frozenSkipped, scope, skipped, tool, }: SyncDriftedListProps): import("react/jsx-runtime").JSX.Element;
|
|
26
29
|
export {};
|
|
27
30
|
//# sourceMappingURL=SyncDriftedList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncDriftedList.d.ts","sourceRoot":"","sources":["../../src/components/SyncDriftedList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7D,UAAU,oBAAoB;IAC5B,8DAA8D;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,mEAAmE;IACnE,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,eAAmB,EACnB,QAAa,EACb,aAAa,EACb,OAAO,EACP,IAAI,GACL,EAAE,oBAAoB,2CAmFtB"}
|
|
1
|
+
{"version":3,"file":"SyncDriftedList.d.ts","sourceRoot":"","sources":["../../src/components/SyncDriftedList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7D,UAAU,oBAAoB;IAC5B,8DAA8D;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,mEAAmE;IACnE,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,eAAmB,EACnB,QAAa,EACb,aAAa,EACb,KAAK,EACL,OAAO,EACP,IAAI,GACL,EAAE,oBAAoB,2CAmFtB"}
|
|
@@ -12,11 +12,11 @@ import FrozenSkippedHint from './FrozenSkippedHint.js';
|
|
|
12
12
|
* refuse, and skip counts.
|
|
13
13
|
* In live mode: shows synced summary, entry list with placed files, failures, and skip counts.
|
|
14
14
|
*/
|
|
15
|
-
export default function SyncDriftedList({ dryRun, entries, excludedSkipped = 0, failures = [], frozenSkipped, skipped, tool, }) {
|
|
15
|
+
export default function SyncDriftedList({ dryRun, entries, excludedSkipped = 0, failures = [], frozenSkipped, scope, skipped, tool, }) {
|
|
16
16
|
if (dryRun) {
|
|
17
|
-
return (_jsxs(_Fragment, { children: [_jsx(DryRunBanner, { action: 'sync', count: entries.length, tools: [tool] }), _jsx(Text, { children: " " }), entries.map((entry) => (_jsxs(Text, { children: [' ', _jsx(Text, { bold: true, children: formatOrgName(entry.asset.org, entry.asset.name) }), _jsxs(Text, { dimColor: true, children: [' ', "(", entry.asset.type, ") v", entry.asset.version] }), ' — ', entry.reason === 'missing' && _jsx(Text, { color: 'yellow', children: "missing files" }), entry.reason === 'modified' && _jsx(Text, { color: 'yellow', children: "modified files" }), entry.reason === 'forced' && _jsx(Text, { dimColor: true, children: "forced" })] }, identityKey(entry.asset)))), _jsx(SyncFailureList, { dryRun: true, failures: failures }), skipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsxs(Text, { dimColor: true, children: [skipped, " asset", skipped !== 1 ? 's' : '', " already in sync \u2014 would be skipped."] })] })), frozenSkipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(FrozenSkippedHint, { count: frozenSkipped })] })), excludedSkipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(ExcludedSkippedHint, { count: excludedSkipped, tool: tool })] }))] }));
|
|
17
|
+
return (_jsxs(_Fragment, { children: [_jsx(DryRunBanner, { action: 'sync', count: entries.length, tools: [tool] }), _jsx(Text, { children: " " }), entries.map((entry) => (_jsxs(Text, { children: [' ', _jsx(Text, { bold: true, children: formatOrgName(entry.asset.org, entry.asset.name) }), _jsxs(Text, { dimColor: true, children: [' ', "(", entry.asset.type, ") v", entry.asset.version] }), ' — ', entry.reason === 'missing' && _jsx(Text, { color: 'yellow', children: "missing files" }), entry.reason === 'modified' && _jsx(Text, { color: 'yellow', children: "modified files" }), entry.reason === 'forced' && _jsx(Text, { dimColor: true, children: "forced" })] }, identityKey(entry.asset)))), _jsx(SyncFailureList, { dryRun: true, failures: failures }), skipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsxs(Text, { dimColor: true, children: [skipped, " asset", skipped !== 1 ? 's' : '', " already in sync \u2014 would be skipped."] })] })), frozenSkipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(FrozenSkippedHint, { count: frozenSkipped, scope: scope })] })), excludedSkipped > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(ExcludedSkippedHint, { count: excludedSkipped, scope: scope, tool: tool })] }))] }));
|
|
18
18
|
}
|
|
19
|
-
return (_jsxs(_Fragment, { children: [entries.length > 0 && (_jsxs(Text, { color: 'green', children: ["\u2713 Synced ", entries.length, " asset", entries.length !== 1 ? 's' : '', " for ", tool] })), skipped > 0 && (_jsxs(Text, { dimColor: true, children: [skipped, " asset", skipped !== 1 ? 's' : '', " already in sync \u2014 skipped."] })), frozenSkipped > 0 && _jsx(FrozenSkippedHint, { count: frozenSkipped }), excludedSkipped > 0 && _jsx(ExcludedSkippedHint, { count: excludedSkipped, tool: tool }), entries.length > 0 && _jsx(Text, { children: " " }), entries.map((entry) => (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Text, { children: [_jsx(Text, { color: 'green', children: "\u2713" }), " ", _jsx(Text, { bold: true, children: formatOrgName(entry.asset.org, entry.asset.name) }), _jsxs(Text, { dimColor: true, children: [' ', "(", entry.asset.type, ") v", entry.asset.version] }), ' — ', entry.reason === 'missing' && _jsx(Text, { color: 'yellow', children: "restored missing files" }), entry.reason === 'modified' && _jsx(Text, { color: 'yellow', children: "restored modified files" }), entry.reason === 'forced' && _jsx(Text, { dimColor: true, children: "force re-synced" })] }), entry.result?.filesPlaced.map((f) => (_jsxs(Text, { dimColor: true, wrap: 'truncate', children: [' ', "\u2192 ", f.destination] }, f.destination)))] }, identityKey(entry.asset)))), _jsx(SyncFailureList, { dryRun: false, failures: failures })] }));
|
|
19
|
+
return (_jsxs(_Fragment, { children: [entries.length > 0 && (_jsxs(Text, { color: 'green', children: ["\u2713 Synced ", entries.length, " asset", entries.length !== 1 ? 's' : '', " for ", tool] })), skipped > 0 && (_jsxs(Text, { dimColor: true, children: [skipped, " asset", skipped !== 1 ? 's' : '', " already in sync \u2014 skipped."] })), frozenSkipped > 0 && _jsx(FrozenSkippedHint, { count: frozenSkipped, scope: scope }), excludedSkipped > 0 && _jsx(ExcludedSkippedHint, { count: excludedSkipped, scope: scope, tool: tool }), entries.length > 0 && _jsx(Text, { children: " " }), entries.map((entry) => (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Text, { children: [_jsx(Text, { color: 'green', children: "\u2713" }), " ", _jsx(Text, { bold: true, children: formatOrgName(entry.asset.org, entry.asset.name) }), _jsxs(Text, { dimColor: true, children: [' ', "(", entry.asset.type, ") v", entry.asset.version] }), ' — ', entry.reason === 'missing' && _jsx(Text, { color: 'yellow', children: "restored missing files" }), entry.reason === 'modified' && _jsx(Text, { color: 'yellow', children: "restored modified files" }), entry.reason === 'forced' && _jsx(Text, { dimColor: true, children: "force re-synced" })] }), entry.result?.filesPlaced.map((f) => (_jsxs(Text, { dimColor: true, wrap: 'truncate', children: [' ', "\u2192 ", f.destination] }, f.destination)))] }, identityKey(entry.asset)))), _jsx(SyncFailureList, { dryRun: false, failures: failures })] }));
|
|
20
20
|
}
|
|
21
21
|
/** The assets that failed to sync, or that a live sync would refuse (dry-run), with their guidance. */
|
|
22
22
|
function SyncFailureList({ dryRun, failures }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncDriftedList.js","sourceRoot":"","sources":["../../src/components/SyncDriftedList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"SyncDriftedList.js","sourceRoot":"","sources":["../../src/components/SyncDriftedList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAKhC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AAqBvD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,eAAe,GAAG,CAAC,EACnB,QAAQ,GAAG,EAAE,EACb,aAAa,EACb,KAAK,EACL,OAAO,EACP,IAAI,GACiB;IACrB,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CACL,8BACE,KAAC,YAAY,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,GAAI,EACpE,KAAC,IAAI,oBAAS,EACb,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB,MAAC,IAAI,eACF,IAAI,EACL,KAAC,IAAI,IAAC,IAAI,kBAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAQ,EACpE,MAAC,IAAI,IAAC,QAAQ,mBACX,GAAG,OACF,KAAK,CAAC,KAAK,CAAC,IAAI,SAAK,KAAK,CAAC,KAAK,CAAC,OAAO,IACrC,EACN,KAAK,EACL,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,8BAAqB,EACvE,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,+BAAsB,EACzE,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAC,IAAI,IAAC,QAAQ,6BAAc,KAVjD,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAW5B,CACR,CAAC,EACF,KAAC,eAAe,IAAC,MAAM,QAAC,QAAQ,EAAE,QAAQ,GAAI,EAC7C,OAAO,GAAG,CAAC,IAAI,CACd,8BACE,KAAC,IAAI,oBAAS,EACd,MAAC,IAAI,IAAC,QAAQ,mBACX,OAAO,YAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,iDACnC,IACN,CACJ,EACA,aAAa,GAAG,CAAC,IAAI,CACpB,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,iBAAiB,IAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAI,IACxD,CACJ,EACA,eAAe,GAAG,CAAC,IAAI,CACtB,8BACE,KAAC,IAAI,oBAAS,EACd,KAAC,mBAAmB,IAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,IACxE,CACJ,IACA,CACJ,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BACG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,+BACP,OAAO,CAAC,MAAM,YAAQ,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAO,IAAI,IACrE,CACR,EACA,OAAO,GAAG,CAAC,IAAI,CACd,MAAC,IAAI,IAAC,QAAQ,mBACX,OAAO,YAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,wCACnC,CACR,EACA,aAAa,GAAG,CAAC,IAAI,KAAC,iBAAiB,IAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAI,EAC9E,eAAe,GAAG,CAAC,IAAI,KAAC,mBAAmB,IAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,EAChG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,IAAI,oBAAS,EACpC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,uBAAS,OAAC,KAAC,IAAI,IAAC,IAAI,kBAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAQ,EACjG,MAAC,IAAI,IAAC,QAAQ,mBACX,GAAG,OACF,KAAK,CAAC,KAAK,CAAC,IAAI,SAAK,KAAK,CAAC,KAAK,CAAC,OAAO,IACrC,EACN,KAAK,EACL,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,uCAA8B,EAChF,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,wCAA+B,EAClF,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAC,IAAI,IAAC,QAAQ,sCAAuB,IAC9D,EACN,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACpC,MAAC,IAAI,IAAC,QAAQ,QAAqB,IAAI,EAAC,UAAU,aAC/C,IAAI,aAAI,CAAC,CAAC,WAAW,KADJ,CAAC,CAAC,WAAW,CAE1B,CACR,CAAC,KAhB6B,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAiBnD,CACP,CAAC,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI,IACrD,CACJ,CAAC;AACJ,CAAC;AAED,uGAAuG;AACvG,SAAS,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAgD;IACzF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,KAAK,GAAG,GAAG,QAAQ,CAAC,MAAM,SAAS,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC5E,OAAO,CACL,8BACE,KAAC,IAAI,oBAAS,EACd,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAI,MAAM,CAAC,CAAC,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,KAAK,EAAE,IAAQ,EAC9F,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CACzB,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,aAGtB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,uBAAS,OAAC,KAAC,IAAI,IAAC,IAAI,kBAAE,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GAAQ,EAC5F,MAAC,IAAI,IAAC,QAAQ,mBACX,GAAG,OACF,OAAO,CAAC,SAAS,SAAK,OAAO,CAAC,OAAO,IAClC,IACF,EACP,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,aACxC,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,YAAE,OAAO,CAAC,KAAK,GAAQ,EACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAC,IAAI,0BAAI,OAAO,CAAC,IAAI,IAAQ,CAAC,CAAC,CAAC,IAAI,EACnD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,QAAQ,kBAAE,OAAO,CAAC,OAAO,GAAQ,CAAC,CAAC,CAAC,IAAI,IAC7D,KAbD,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAcpF,CACP,CAAC,IACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useListActions.d.ts","sourceRoot":"","sources":["../../src/hooks/useListActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAwB/D;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EACpC,aAAa,EAAE,SAAS,CAAC,MAAM,CAAC,EAChC,eAAe,EAAE,SAAS,CAAC,IAAI,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACrG,gBAAgB,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,aAAa,CAAC,GACjD,IAAI,
|
|
1
|
+
{"version":3,"file":"useListActions.d.ts","sourceRoot":"","sources":["../../src/hooks/useListActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAwB/D;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EACpC,aAAa,EAAE,SAAS,CAAC,MAAM,CAAC,EAChC,eAAe,EAAE,SAAS,CAAC,IAAI,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EACrG,gBAAgB,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,aAAa,CAAC,GACjD,IAAI,CA+NN"}
|
|
@@ -3,7 +3,7 @@ import { isExcludedForTool, supportsType } from '../lib/asset-tools.js';
|
|
|
3
3
|
import { freezeAssetInConfig, isAssetFrozen, thawAssetInConfig } from '../lib/config.js';
|
|
4
4
|
import { errorMessage } from '../lib/errors.js';
|
|
5
5
|
import { LOCKFILE_LOCKED_MESSAGE, LockfileLockedError, pinAssetVersion, readLockfile, unpinAssetVersion, withLockfileLock, writeLockfile, } from '../lib/lockfile.js';
|
|
6
|
-
import { loadScopeConfig } from '../lib/scope.js';
|
|
6
|
+
import { isUserRoot, loadScopeConfig } from '../lib/scope.js';
|
|
7
7
|
import { uninstallAsset } from '../lib/uninstaller.js';
|
|
8
8
|
import { declarationAllowsVersion, excludedAtVersion, removeUndeclaredAfterUpdate, updateAsset, } from '../lib/updater.js';
|
|
9
9
|
/**
|
|
@@ -132,6 +132,7 @@ export function useListActions(state, dispatch, projectDirRef, resolvedToolRef,
|
|
|
132
132
|
// Failures placing a hook whose exclusion the latest version lifts: the tool never had
|
|
133
133
|
// it, so, as in `atk update`, the other tools still update.
|
|
134
134
|
const liftErrors = [];
|
|
135
|
+
const scope = (await isUserRoot(projectDirRef.current)) ? 'user' : 'project';
|
|
135
136
|
for (const adapter of adapters) {
|
|
136
137
|
if (excludedAtVersion(registry, installed, undefined, adapter) ||
|
|
137
138
|
!supportsType(adapter, installed.type))
|
|
@@ -148,6 +149,7 @@ export function useListActions(state, dispatch, projectDirRef, resolvedToolRef,
|
|
|
148
149
|
dispatch({ message, type: 'ACTION_PROGRESS' });
|
|
149
150
|
},
|
|
150
151
|
projectDir: projectDirRef.current,
|
|
152
|
+
scope,
|
|
151
153
|
toolLockfile: lockfile,
|
|
152
154
|
});
|
|
153
155
|
if (isExcludedForTool(installed, adapter.tool)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useListActions.js","sourceRoot":"","sources":["../../src/hooks/useListActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAM1D,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"useListActions.js","sourceRoot":"","sources":["../../src/hooks/useListActions.ts"],"names":[],"mappings":"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"}
|
package/build/lib/adapter.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AssetType } from './schemas/index.js';
|
|
2
|
+
import type { Scope } from './scope.js';
|
|
2
3
|
import { GuidedError } from './errors.js';
|
|
3
4
|
import { type Adapter, type PlacementConfig } from './schemas/adapter.js';
|
|
4
5
|
export interface AdapterDiagnostics {
|
|
@@ -15,6 +16,12 @@ export interface AdapterLoadFailure {
|
|
|
15
16
|
export declare class AdapterError extends GuidedError {
|
|
16
17
|
name: string;
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* The adapter as the scope sees it. At the user scope its placements are the adapter's
|
|
21
|
+
* `userPlacements` (none when it has none), so every reader of `placements` places assets,
|
|
22
|
+
* and finds their config entries, the user-scope way.
|
|
23
|
+
*/
|
|
24
|
+
export declare function adapterForScope(adapter: Adapter, scope: Scope): Adapter;
|
|
18
25
|
/**
|
|
19
26
|
* Clear the adapter cache (useful for testing).
|
|
20
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAgB,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,KAAK,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEzF,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAOD,qBAAa,YAAa,SAAQ,WAAW;IAClC,IAAI,SAAkB;CAChC;AAKD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAEvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS,CAEhG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,CAEpE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAqB1G;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAuBhE;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAoC1D;AAED;;;;;GAKG;AACH,wBAAsB,8BAA8B,IAAI,OAAO,CAAC;IAC9D,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,WAAW,EAAE,kBAAkB,CAAC;CACjC,CAAC,CAwDD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,EACD,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,GACjB;IACD,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,KAAK,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/E,CA8DA;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG5G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAEjF"}
|
package/build/lib/adapter.js
CHANGED
|
@@ -14,6 +14,14 @@ export class AdapterError extends GuidedError {
|
|
|
14
14
|
}
|
|
15
15
|
/** Cache loaded adapters by tool name. */
|
|
16
16
|
const adapterCache = new Map();
|
|
17
|
+
/**
|
|
18
|
+
* The adapter as the scope sees it. At the user scope its placements are the adapter's
|
|
19
|
+
* `userPlacements` (none when it has none), so every reader of `placements` places assets,
|
|
20
|
+
* and finds their config entries, the user-scope way.
|
|
21
|
+
*/
|
|
22
|
+
export function adapterForScope(adapter, scope) {
|
|
23
|
+
return scope === 'user' ? { ...adapter, placements: adapter.userPlacements ?? {} } : adapter;
|
|
24
|
+
}
|
|
17
25
|
/**
|
|
18
26
|
* Clear the adapter cache (useful for testing).
|
|
19
27
|
*/
|
package/build/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/lib/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PlacementConfig } from './schemas/adapter.js';
|
|
2
|
+
import { type WriteOptions } from './write-file.js';
|
|
2
3
|
/**
|
|
3
4
|
* Format-aware read/write helpers for tool config files that ATK registers
|
|
4
5
|
* assets into (e.g. Claude Code's `.mcp.json`, Codex CLI's `.codex/config.toml`).
|
|
@@ -44,6 +45,9 @@ export declare function resolveConfigFormat(filePath: string, placement?: Pick<P
|
|
|
44
45
|
* For TOML, re-serializing drops any comments the user had in the file; when
|
|
45
46
|
* that is about to happen, a one-line warning is emitted through `onProgress`
|
|
46
47
|
* so the loss is visible rather than silent.
|
|
48
|
+
*
|
|
49
|
+
* `options.atomic` writes through a temp file and a rename, for a file the tool rewrites while it
|
|
50
|
+
* runs (a placement with `configLockFile`).
|
|
47
51
|
*/
|
|
48
|
-
export declare function writeConfigFile(filePath: string, data: Record<string, unknown>, format: ConfigFormat, onProgress?: (message: string) => void): Promise<void>;
|
|
52
|
+
export declare function writeConfigFile(filePath: string, data: Record<string, unknown>, format: ConfigFormat, onProgress?: (message: string) => void, options?: WriteOptions): Promise<void>;
|
|
49
53
|
//# sourceMappingURL=config-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file.d.ts","sourceRoot":"","sources":["../../src/lib/config-file.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"config-file.d.ts","sourceRoot":"","sources":["../../src/lib/config-file.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAiB,KAAK,YAAY,EAAiB,MAAM,iBAAiB,CAAC;AAElF;;;;;;;;GAQG;AAEH,6DAA6D;AAC7D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAEjE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,GAAG,CAAC,CAKvE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtF;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAG7G;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,cAAc,CAAC,GAAG,SAAS,GAC5D,YAAY,CAEd;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,YAAY,EACpB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EACtC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
package/build/lib/config-file.js
CHANGED
|
@@ -51,10 +51,13 @@ export function resolveConfigFormat(filePath, placement) {
|
|
|
51
51
|
* For TOML, re-serializing drops any comments the user had in the file; when
|
|
52
52
|
* that is about to happen, a one-line warning is emitted through `onProgress`
|
|
53
53
|
* so the loss is visible rather than silent.
|
|
54
|
+
*
|
|
55
|
+
* `options.atomic` writes through a temp file and a rename, for a file the tool rewrites while it
|
|
56
|
+
* runs (a placement with `configLockFile`).
|
|
54
57
|
*/
|
|
55
|
-
export async function writeConfigFile(filePath, data, format, onProgress) {
|
|
58
|
+
export async function writeConfigFile(filePath, data, format, onProgress, options = {}) {
|
|
56
59
|
if (format === 'json') {
|
|
57
|
-
await writeJsonFile(filePath, data);
|
|
60
|
+
await writeJsonFile(filePath, data, options);
|
|
58
61
|
return;
|
|
59
62
|
}
|
|
60
63
|
if (onProgress && existsSync(filePath)) {
|
|
@@ -63,7 +66,7 @@ export async function writeConfigFile(filePath, data, format, onProgress) {
|
|
|
63
66
|
onProgress(`Warning: rewriting ${filePath} — TOML comments and custom formatting are not preserved`);
|
|
64
67
|
}
|
|
65
68
|
}
|
|
66
|
-
await writeTomlFile(filePath, data);
|
|
69
|
+
await writeTomlFile(filePath, data, options);
|
|
67
70
|
}
|
|
68
71
|
/** Recursively drop null/undefined members from plain objects (arrays are mapped, not filtered). */
|
|
69
72
|
function stripNullish(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file.js","sourceRoot":"","sources":["../../src/lib/config-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AAI/C,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"config-file.js","sourceRoot":"","sources":["../../src/lib/config-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { PlacementConfig } from './schemas/adapter.js';
|
|
2
|
+
/**
|
|
3
|
+
* The lock to hold while writing `file` (relative to `root`): the placement's `configLockFile`,
|
|
4
|
+
* under `root`, when `file` is the placement's `configFile`. Otherwise none.
|
|
5
|
+
*/
|
|
6
|
+
export declare function configLockPath(placement: Pick<PlacementConfig, 'configFile' | 'configLockFile'> | undefined, root: string, file: string): string | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* Run `fn` holding a tool's own config lock (a placement's `configLockFile`, such as Claude
|
|
9
|
+
* Code's `.claude.json.lock`), so a read-merge-write of a file the tool rewrites while it runs
|
|
10
|
+
* doesn't interleave with one of its own writes.
|
|
11
|
+
*
|
|
12
|
+
* The lock is a directory made with `mkdir`, the way the tool's `proper-lockfile` takes it.
|
|
13
|
+
* It is best effort: the tool doesn't wait for it either (ATK-324), so a lock still held after
|
|
14
|
+
* `waitMs` is left alone and `fn` runs without it. Only a lock this call made is removed.
|
|
15
|
+
* Without a `lockPath`, `fn` just runs.
|
|
16
|
+
*/
|
|
17
|
+
export declare function withConfigLock<T>(lockPath: string | undefined, fn: () => Promise<T>, { waitMs }?: {
|
|
18
|
+
waitMs?: number;
|
|
19
|
+
}): Promise<T>;
|
|
20
|
+
//# sourceMappingURL=config-lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-lock.d.ts","sourceRoot":"","sources":["../../src/lib/config-lock.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQ5D;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,YAAY,GAAG,gBAAgB,CAAC,GAAG,SAAS,EAC7E,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAOpB;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,EAAE,MAAqB,EAAE,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAClD,OAAO,CAAC,CAAC,CAAC,CAaZ"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { mkdir, rmdir } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { setTimeout as sleep } from 'node:timers/promises';
|
|
4
|
+
import { normalizeConfigPath } from './config-entries.js';
|
|
5
|
+
/** How long a held lock is waited for before going ahead without it. */
|
|
6
|
+
const LOCK_WAIT_MS = 1000;
|
|
7
|
+
const LOCK_RETRY_MS = 50;
|
|
8
|
+
/**
|
|
9
|
+
* The lock to hold while writing `file` (relative to `root`): the placement's `configLockFile`,
|
|
10
|
+
* under `root`, when `file` is the placement's `configFile`. Otherwise none.
|
|
11
|
+
*/
|
|
12
|
+
export function configLockPath(placement, root, file) {
|
|
13
|
+
if (!placement?.configLockFile || !placement.configFile) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
return normalizeConfigPath(file) === normalizeConfigPath(placement.configFile)
|
|
17
|
+
? join(root, placement.configLockFile)
|
|
18
|
+
: undefined;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Run `fn` holding a tool's own config lock (a placement's `configLockFile`, such as Claude
|
|
22
|
+
* Code's `.claude.json.lock`), so a read-merge-write of a file the tool rewrites while it runs
|
|
23
|
+
* doesn't interleave with one of its own writes.
|
|
24
|
+
*
|
|
25
|
+
* The lock is a directory made with `mkdir`, the way the tool's `proper-lockfile` takes it.
|
|
26
|
+
* It is best effort: the tool doesn't wait for it either (ATK-324), so a lock still held after
|
|
27
|
+
* `waitMs` is left alone and `fn` runs without it. Only a lock this call made is removed.
|
|
28
|
+
* Without a `lockPath`, `fn` just runs.
|
|
29
|
+
*/
|
|
30
|
+
export async function withConfigLock(lockPath, fn, { waitMs = LOCK_WAIT_MS } = {}) {
|
|
31
|
+
if (lockPath === undefined) {
|
|
32
|
+
return fn();
|
|
33
|
+
}
|
|
34
|
+
const acquired = await tryLock(lockPath, waitMs);
|
|
35
|
+
try {
|
|
36
|
+
return await fn();
|
|
37
|
+
}
|
|
38
|
+
finally {
|
|
39
|
+
if (acquired) {
|
|
40
|
+
await rmdir(lockPath).catch(() => undefined);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/** Make the lock directory, retrying while another process holds it, until `waitMs` has passed. */
|
|
45
|
+
async function tryLock(lockPath, waitMs) {
|
|
46
|
+
const deadline = Date.now() + waitMs;
|
|
47
|
+
for (;;) {
|
|
48
|
+
try {
|
|
49
|
+
await mkdir(lockPath);
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
if (error.code !== 'EEXIST' || Date.now() >= deadline) {
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
await sleep(LOCK_RETRY_MS);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=config-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-lock.js","sourceRoot":"","sources":["../../src/lib/config-lock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAI3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,wEAAwE;AACxE,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,SAA6E,EAC7E,IAAY,EACZ,IAAY;IAEZ,IAAI,CAAC,SAAS,EAAE,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,mBAAmB,CAAC,SAAS,CAAC,UAAU,CAAC;QAC5E,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAA4B,EAC5B,EAAoB,EACpB,EAAE,MAAM,GAAG,YAAY,KAA0B,EAAE;IAEnD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;YAAS,CAAC;QACT,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;AACH,CAAC;AAED,mGAAmG;AACnG,KAAK,UAAU,OAAO,CAAC,QAAgB,EAAE,MAAc;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;IACrC,SAAS,CAAC;QACR,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBACjF,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
|
|
@@ -2,18 +2,20 @@ import type { DiagnosticCheck } from '../components/index.js';
|
|
|
2
2
|
import type { ProjectConfig } from './schemas/config.js';
|
|
3
3
|
import type { Registry } from './schemas/index.js';
|
|
4
4
|
import type { InstalledAsset } from './schemas/lockfile.js';
|
|
5
|
+
import { type Scope } from './scope.js';
|
|
5
6
|
/**
|
|
6
7
|
* Check that the hook scripts a configured tool runs directly are executable. Returns
|
|
7
8
|
* undefined when there is nothing to check: on Windows, which has no exec bit, or when
|
|
8
|
-
* no installed hook places a script for any configured tool.
|
|
9
|
+
* no installed hook places a script for any configured tool. The sync command it suggests runs in
|
|
10
|
+
* `scope`.
|
|
9
11
|
*/
|
|
10
|
-
export declare function checkHookScripts(projectDir: string, tools: string[], assets: InstalledAsset[], platform?: NodeJS.Platform): Promise<DiagnosticCheck | undefined>;
|
|
12
|
+
export declare function checkHookScripts(projectDir: string, tools: string[], assets: InstalledAsset[], platform?: NodeJS.Platform, scope?: Scope): Promise<DiagnosticCheck | undefined>;
|
|
11
13
|
/**
|
|
12
14
|
* Check for hooks marked undeclared for a configured tool (`undeclaredTools`) whose locked version
|
|
13
15
|
* now declares it, so `atk sync` places them. A frozen hook is left out: sync skips it. Returns
|
|
14
|
-
* undefined when there are none.
|
|
16
|
+
* undefined when there are none. The sync command it suggests runs in `scope`.
|
|
15
17
|
*/
|
|
16
|
-
export declare function checkLiftedHooks(projectConfig: ProjectConfig, assets: InstalledAsset[], registry: Registry): DiagnosticCheck | undefined;
|
|
18
|
+
export declare function checkLiftedHooks(projectConfig: ProjectConfig, assets: InstalledAsset[], registry: Registry, scope?: Scope): DiagnosticCheck | undefined;
|
|
17
19
|
/**
|
|
18
20
|
* Check whether the given Node.js version string meets the project requirements.
|
|
19
21
|
*
|
|
@@ -26,7 +28,11 @@ export declare function checkNodeVersion(version: string): DiagnosticCheck;
|
|
|
26
28
|
* Extracted from the `doctor` command so it can be tested independently.
|
|
27
29
|
*
|
|
28
30
|
* @param progress - callback to report progress messages
|
|
29
|
-
* @param
|
|
31
|
+
* @param options - the scope to check, as `resolveScope` takes it: `projectRoot` (`-P`), or `user`
|
|
32
|
+
* (`--user`) for the user scope; neither finds the project root from the cwd
|
|
30
33
|
*/
|
|
31
|
-
export declare function runDiagnostics(progress: (message: string) => void,
|
|
34
|
+
export declare function runDiagnostics(progress: (message: string) => void, { projectRoot, user }?: {
|
|
35
|
+
projectRoot?: string;
|
|
36
|
+
user?: boolean;
|
|
37
|
+
}): Promise<DiagnosticCheck[]>;
|
|
32
38
|
//# sourceMappingURL=diagnostics.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/lib/diagnostics.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/lib/diagnostics.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAc5D,OAAO,EAAiC,KAAK,KAAK,EAAiB,MAAM,YAAY,CAAC;AAEtF;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,EAAE,cAAc,EAAE,EACxB,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA0CtC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,cAAc,EAAE,EACxB,QAAQ,EAAE,QAAQ,EAClB,KAAK,CAAC,EAAE,KAAK,GACZ,eAAe,GAAG,SAAS,CAmB7B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAqBjE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EACnC,EAAE,WAAW,EAAE,IAAI,EAAE,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GACnE,OAAO,CAAC,eAAe,EAAE,CAAC,CAoL5B"}
|