@detergent-software/atk 3.0.0-dev.1 → 3.0.0-dev.10

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.
Files changed (181) hide show
  1. package/README.md +361 -0
  2. package/build/commands/audit.d.ts.map +1 -1
  3. package/build/commands/audit.js +77 -37
  4. package/build/commands/audit.js.map +1 -1
  5. package/build/commands/browse.d.ts.map +1 -1
  6. package/build/commands/browse.js +50 -115
  7. package/build/commands/browse.js.map +1 -1
  8. package/build/commands/diff.d.ts.map +1 -1
  9. package/build/commands/diff.js +2 -1
  10. package/build/commands/diff.js.map +1 -1
  11. package/build/commands/info.d.ts.map +1 -1
  12. package/build/commands/info.js +1 -1
  13. package/build/commands/info.js.map +1 -1
  14. package/build/commands/init.d.ts.map +1 -1
  15. package/build/commands/init.js +39 -405
  16. package/build/commands/init.js.map +1 -1
  17. package/build/commands/install.d.ts.map +1 -1
  18. package/build/commands/install.js +46 -31
  19. package/build/commands/install.js.map +1 -1
  20. package/build/commands/list.d.ts +2 -2
  21. package/build/commands/list.d.ts.map +1 -1
  22. package/build/commands/list.js +131 -27
  23. package/build/commands/list.js.map +1 -1
  24. package/build/commands/outdated.d.ts.map +1 -1
  25. package/build/commands/outdated.js +7 -6
  26. package/build/commands/outdated.js.map +1 -1
  27. package/build/commands/prune.d.ts.map +1 -1
  28. package/build/commands/prune.js +35 -47
  29. package/build/commands/prune.js.map +1 -1
  30. package/build/commands/publish.d.ts +3 -1
  31. package/build/commands/publish.d.ts.map +1 -1
  32. package/build/commands/publish.js +67 -390
  33. package/build/commands/publish.js.map +1 -1
  34. package/build/commands/setup.d.ts +1 -1
  35. package/build/commands/setup.d.ts.map +1 -1
  36. package/build/commands/setup.js +49 -242
  37. package/build/commands/setup.js.map +1 -1
  38. package/build/commands/sync.d.ts.map +1 -1
  39. package/build/commands/sync.js +111 -120
  40. package/build/commands/sync.js.map +1 -1
  41. package/build/commands/uninstall.d.ts.map +1 -1
  42. package/build/commands/uninstall.js +103 -218
  43. package/build/commands/uninstall.js.map +1 -1
  44. package/build/commands/update.d.ts.map +1 -1
  45. package/build/commands/update.js +30 -23
  46. package/build/commands/update.js.map +1 -1
  47. package/build/components/AssetTable.d.ts +3 -1
  48. package/build/components/AssetTable.d.ts.map +1 -1
  49. package/build/components/AssetTable.js +30 -37
  50. package/build/components/AssetTable.js.map +1 -1
  51. package/build/components/DryRunBanner.d.ts +3 -3
  52. package/build/components/DryRunBanner.d.ts.map +1 -1
  53. package/build/components/DryRunBanner.js +2 -2
  54. package/build/components/DryRunBanner.js.map +1 -1
  55. package/build/components/FilterBar.d.ts +10 -3
  56. package/build/components/FilterBar.d.ts.map +1 -1
  57. package/build/components/FilterBar.js +4 -4
  58. package/build/components/FilterBar.js.map +1 -1
  59. package/build/components/InitSuccess.d.ts +5 -0
  60. package/build/components/InitSuccess.d.ts.map +1 -0
  61. package/build/components/InitSuccess.js +20 -0
  62. package/build/components/InitSuccess.js.map +1 -0
  63. package/build/components/InstallSummary.d.ts +3 -3
  64. package/build/components/InstallSummary.d.ts.map +1 -1
  65. package/build/components/InstallSummary.js +2 -2
  66. package/build/components/InstallSummary.js.map +1 -1
  67. package/build/components/Link.d.ts +7 -0
  68. package/build/components/Link.d.ts.map +1 -0
  69. package/build/components/Link.js +6 -0
  70. package/build/components/Link.js.map +1 -0
  71. package/build/components/ListActionBar.d.ts +9 -0
  72. package/build/components/ListActionBar.d.ts.map +1 -0
  73. package/build/components/ListActionBar.js +30 -0
  74. package/build/components/ListActionBar.js.map +1 -0
  75. package/build/components/ListBrowseList.d.ts +25 -0
  76. package/build/components/ListBrowseList.d.ts.map +1 -0
  77. package/build/components/ListBrowseList.js +55 -0
  78. package/build/components/ListBrowseList.js.map +1 -0
  79. package/build/components/ListExpandedRow.d.ts +36 -0
  80. package/build/components/ListExpandedRow.d.ts.map +1 -0
  81. package/build/components/ListExpandedRow.js +46 -0
  82. package/build/components/ListExpandedRow.js.map +1 -0
  83. package/build/components/ListHelpBar.d.ts +19 -0
  84. package/build/components/ListHelpBar.d.ts.map +1 -0
  85. package/build/components/ListHelpBar.js +11 -0
  86. package/build/components/ListHelpBar.js.map +1 -0
  87. package/build/components/PromptField.d.ts +19 -0
  88. package/build/components/PromptField.d.ts.map +1 -0
  89. package/build/components/PromptField.js +7 -0
  90. package/build/components/PromptField.js.map +1 -0
  91. package/build/components/StatusBadge.d.ts +1 -1
  92. package/build/components/StatusBadge.d.ts.map +1 -1
  93. package/build/components/StatusBadge.js +4 -0
  94. package/build/components/StatusBadge.js.map +1 -1
  95. package/build/components/index.d.ts +7 -0
  96. package/build/components/index.d.ts.map +1 -1
  97. package/build/components/index.js +7 -0
  98. package/build/components/index.js.map +1 -1
  99. package/build/hooks/useBrowseState.d.ts +23 -0
  100. package/build/hooks/useBrowseState.d.ts.map +1 -1
  101. package/build/hooks/useBrowseState.js +77 -1
  102. package/build/hooks/useBrowseState.js.map +1 -1
  103. package/build/hooks/useConfirmation.d.ts +18 -0
  104. package/build/hooks/useConfirmation.d.ts.map +1 -0
  105. package/build/hooks/useConfirmation.js +56 -0
  106. package/build/hooks/useConfirmation.js.map +1 -0
  107. package/build/hooks/useInitState.d.ts +72 -0
  108. package/build/hooks/useInitState.d.ts.map +1 -0
  109. package/build/hooks/useInitState.js +372 -0
  110. package/build/hooks/useInitState.js.map +1 -0
  111. package/build/hooks/useListActions.d.ts +14 -0
  112. package/build/hooks/useListActions.d.ts.map +1 -0
  113. package/build/hooks/useListActions.js +151 -0
  114. package/build/hooks/useListActions.js.map +1 -0
  115. package/build/hooks/useListState.d.ts +147 -0
  116. package/build/hooks/useListState.d.ts.map +1 -0
  117. package/build/hooks/useListState.js +445 -0
  118. package/build/hooks/useListState.js.map +1 -0
  119. package/build/hooks/usePublishState.d.ts +115 -0
  120. package/build/hooks/usePublishState.d.ts.map +1 -0
  121. package/build/hooks/usePublishState.js +673 -0
  122. package/build/hooks/usePublishState.js.map +1 -0
  123. package/build/hooks/useSetupState.d.ts +59 -0
  124. package/build/hooks/useSetupState.d.ts.map +1 -0
  125. package/build/hooks/useSetupState.js +295 -0
  126. package/build/hooks/useSetupState.js.map +1 -0
  127. package/build/hooks/useUninstallState.d.ts +102 -0
  128. package/build/hooks/useUninstallState.d.ts.map +1 -0
  129. package/build/hooks/useUninstallState.js +342 -0
  130. package/build/hooks/useUninstallState.js.map +1 -0
  131. package/build/lib/checksum.d.ts +39 -0
  132. package/build/lib/checksum.d.ts.map +1 -1
  133. package/build/lib/checksum.js +101 -13
  134. package/build/lib/checksum.js.map +1 -1
  135. package/build/lib/config.d.ts +4 -1
  136. package/build/lib/config.d.ts.map +1 -1
  137. package/build/lib/config.js +9 -9
  138. package/build/lib/config.js.map +1 -1
  139. package/build/lib/diagnostics.js +1 -1
  140. package/build/lib/diagnostics.js.map +1 -1
  141. package/build/lib/format.d.ts +6 -0
  142. package/build/lib/format.d.ts.map +1 -0
  143. package/build/lib/format.js +18 -0
  144. package/build/lib/format.js.map +1 -0
  145. package/build/lib/github.d.ts +8 -0
  146. package/build/lib/github.d.ts.map +1 -1
  147. package/build/lib/github.js +9 -0
  148. package/build/lib/github.js.map +1 -1
  149. package/build/lib/installer.d.ts +1 -0
  150. package/build/lib/installer.d.ts.map +1 -1
  151. package/build/lib/installer.js +7 -7
  152. package/build/lib/installer.js.map +1 -1
  153. package/build/lib/lockfile.d.ts.map +1 -1
  154. package/build/lib/lockfile.js +1 -4
  155. package/build/lib/lockfile.js.map +1 -1
  156. package/build/lib/publisher.d.ts +35 -0
  157. package/build/lib/publisher.d.ts.map +1 -1
  158. package/build/lib/publisher.js +210 -16
  159. package/build/lib/publisher.js.map +1 -1
  160. package/build/lib/schemas/config.d.ts +7 -3
  161. package/build/lib/schemas/config.d.ts.map +1 -1
  162. package/build/lib/schemas/config.js +12 -2
  163. package/build/lib/schemas/config.js.map +1 -1
  164. package/build/lib/schemas/index.d.ts +1 -1
  165. package/build/lib/schemas/index.d.ts.map +1 -1
  166. package/build/lib/schemas/index.js +1 -1
  167. package/build/lib/schemas/index.js.map +1 -1
  168. package/build/lib/schemas/lockfile.d.ts +18 -0
  169. package/build/lib/schemas/lockfile.d.ts.map +1 -1
  170. package/build/lib/schemas/lockfile.js +10 -0
  171. package/build/lib/schemas/lockfile.js.map +1 -1
  172. package/build/lib/tool-resolver.d.ts +17 -6
  173. package/build/lib/tool-resolver.d.ts.map +1 -1
  174. package/build/lib/tool-resolver.js +31 -15
  175. package/build/lib/tool-resolver.js.map +1 -1
  176. package/build/lib/updater.d.ts.map +1 -1
  177. package/build/lib/updater.js +2 -1
  178. package/build/lib/updater.js.map +1 -1
  179. package/package.json +78 -65
  180. package/tool-adapters/claude-code.json +1 -1
  181. package/tool-adapters/copilot-cli.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePublishState.js","sourceRoot":"","sources":["../../src/hooks/usePublishState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { Adapter } from '../lib/schemas/adapter.js';
2
+ export type SetupAction = {
3
+ actions: SummaryAction[];
4
+ type: 'CREATE_DONE';
5
+ } | {
6
+ adapters: Adapter[];
7
+ cursorIndex?: number;
8
+ orgLocked: boolean;
9
+ orgValue: string;
10
+ phase: SetupPhase;
11
+ projectDir: string;
12
+ selectedTools?: string[];
13
+ type: 'LOAD_DONE';
14
+ } | {
15
+ message: string;
16
+ type: 'ERROR';
17
+ } | {
18
+ tool: string;
19
+ type: 'TOGGLE_TOOL';
20
+ } | {
21
+ type: 'CONFIRM_TOOLS';
22
+ } | {
23
+ type: 'CURSOR_DOWN';
24
+ } | {
25
+ type: 'CURSOR_UP';
26
+ } | {
27
+ type: 'SET_ORG';
28
+ value: string;
29
+ } | {
30
+ type: 'SUBMIT_ORG';
31
+ };
32
+ export interface SetupFlags {
33
+ isTTY: boolean;
34
+ orgFlag?: string;
35
+ projectRoot?: string;
36
+ toolFlag?: string;
37
+ yes: boolean;
38
+ }
39
+ export type SetupPhase = 'creating' | 'done' | 'error' | 'loading' | 'org-input' | 'select-tool';
40
+ export interface SetupState {
41
+ adapters: Adapter[];
42
+ cursorIndex: number;
43
+ errorMessage: string;
44
+ flags: SetupFlags;
45
+ orgLocked: boolean;
46
+ orgValue: string;
47
+ phase: SetupPhase;
48
+ projectDir: string;
49
+ selectedTools: string[];
50
+ summaryActions: SummaryAction[];
51
+ }
52
+ export interface SummaryAction {
53
+ detail?: string;
54
+ label: string;
55
+ }
56
+ export declare function createInitialState(flags: SetupFlags): SetupState;
57
+ export declare function setupReducer(state: SetupState, action: SetupAction): SetupState;
58
+ export declare function useSetupState(flags: SetupFlags): readonly [SetupState, React.Dispatch<SetupAction>];
59
+ //# sourceMappingURL=useSetupState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSetupState.d.ts","sourceRoot":"","sources":["../../src/hooks/useSetupState.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAYzD,MAAM,MAAM,WAAW,GACnB;IAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,GACjD;IACE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,WAAW,CAAC;CACnB,GACD;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAE3B,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;AAEjG,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAMD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAahE;AAMD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,GAAG,UAAU,CA0D/E;AAMD,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAyOnG"}
@@ -0,0 +1,295 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { useEffect, useReducer } from 'react';
3
+ import { loadAdapter, loadAllAdapters } from '../lib/adapter.js';
4
+ import { loadConfig, loadProjectConfig, saveProjectConfig } from '../lib/config.js';
5
+ import { ensureGitignoreEntries } from '../lib/gitignore.js';
6
+ import { getLockfilePath, readLockfile, writeLockfile } from '../lib/lockfile.js';
7
+ import { findProjectRoot } from '../lib/paths.js';
8
+ // ---------------------------------------------------------------------------
9
+ // Initial state factory
10
+ // ---------------------------------------------------------------------------
11
+ export function createInitialState(flags) {
12
+ return {
13
+ adapters: [],
14
+ cursorIndex: 0,
15
+ errorMessage: '',
16
+ flags,
17
+ orgLocked: false,
18
+ orgValue: '',
19
+ phase: 'loading',
20
+ projectDir: '',
21
+ selectedTools: [],
22
+ summaryActions: [],
23
+ };
24
+ }
25
+ // ---------------------------------------------------------------------------
26
+ // Pure reducer
27
+ // ---------------------------------------------------------------------------
28
+ export function setupReducer(state, action) {
29
+ switch (action.type) {
30
+ case 'CONFIRM_TOOLS': {
31
+ if (state.selectedTools.length === 0)
32
+ return state;
33
+ const nextPhase = state.orgLocked ? 'creating' : 'org-input';
34
+ return { ...state, phase: nextPhase };
35
+ }
36
+ case 'CREATE_DONE':
37
+ return { ...state, phase: 'done', summaryActions: action.actions };
38
+ case 'CURSOR_DOWN': {
39
+ const len = state.adapters.length;
40
+ if (len === 0)
41
+ return state;
42
+ return { ...state, cursorIndex: state.cursorIndex < len - 1 ? state.cursorIndex + 1 : 0 };
43
+ }
44
+ case 'CURSOR_UP': {
45
+ const len = state.adapters.length;
46
+ if (len === 0)
47
+ return state;
48
+ return { ...state, cursorIndex: state.cursorIndex > 0 ? state.cursorIndex - 1 : len - 1 };
49
+ }
50
+ case 'ERROR':
51
+ return { ...state, errorMessage: action.message, phase: 'error' };
52
+ case 'LOAD_DONE': {
53
+ return {
54
+ ...state,
55
+ adapters: action.adapters,
56
+ cursorIndex: action.cursorIndex ?? 0,
57
+ orgLocked: action.orgLocked,
58
+ orgValue: action.orgValue,
59
+ phase: action.phase,
60
+ projectDir: action.projectDir,
61
+ selectedTools: action.selectedTools ?? state.selectedTools,
62
+ };
63
+ }
64
+ case 'SET_ORG':
65
+ return { ...state, orgValue: action.value };
66
+ case 'SUBMIT_ORG':
67
+ return { ...state, phase: 'creating' };
68
+ case 'TOGGLE_TOOL': {
69
+ const toolSet = new Set(state.selectedTools);
70
+ if (toolSet.has(action.tool)) {
71
+ toolSet.delete(action.tool);
72
+ }
73
+ else {
74
+ toolSet.add(action.tool);
75
+ }
76
+ return { ...state, selectedTools: [...toolSet] };
77
+ }
78
+ default:
79
+ return state;
80
+ }
81
+ }
82
+ // ---------------------------------------------------------------------------
83
+ // Hook
84
+ // ---------------------------------------------------------------------------
85
+ export function useSetupState(flags) {
86
+ const [state, dispatch] = useReducer(setupReducer, undefined, () => createInitialState(flags));
87
+ // --- Loading effect ---
88
+ useEffect(() => {
89
+ if (state.phase !== 'loading')
90
+ return;
91
+ let cancelled = false;
92
+ const load = async () => {
93
+ const { flags: f } = state;
94
+ const resolvedDir = findProjectRoot(f.projectRoot);
95
+ const [allAdapters, config, existingLockfile] = await Promise.all([
96
+ loadAllAdapters(),
97
+ loadConfig(),
98
+ readLockfile(resolvedDir),
99
+ ]);
100
+ if (cancelled)
101
+ return;
102
+ // Determine org state
103
+ const existingOrg = existingLockfile.org;
104
+ let orgValue;
105
+ let orgLocked;
106
+ if (existingOrg) {
107
+ orgValue = existingOrg;
108
+ orgLocked = true;
109
+ }
110
+ else {
111
+ orgValue = f.orgFlag ?? config.org ?? '';
112
+ orgLocked = false;
113
+ }
114
+ // Load existing project config
115
+ const projConfig = await loadProjectConfig(resolvedDir);
116
+ if (cancelled)
117
+ return;
118
+ // Determine next phase and selected tools based on flags
119
+ if (f.toolFlag) {
120
+ const nextPhase = f.yes || f.orgFlag !== undefined || !f.isTTY ? 'creating' : existingOrg ? 'creating' : 'org-input';
121
+ dispatch({
122
+ adapters: allAdapters,
123
+ orgLocked,
124
+ orgValue,
125
+ phase: nextPhase,
126
+ projectDir: resolvedDir,
127
+ selectedTools: [f.toolFlag],
128
+ type: 'LOAD_DONE',
129
+ });
130
+ return;
131
+ }
132
+ if (f.yes) {
133
+ const defaultTools = projConfig?.tools ?? ['claude-code'];
134
+ dispatch({
135
+ adapters: allAdapters,
136
+ orgLocked,
137
+ orgValue,
138
+ phase: 'creating',
139
+ projectDir: resolvedDir,
140
+ selectedTools: defaultTools,
141
+ type: 'LOAD_DONE',
142
+ });
143
+ return;
144
+ }
145
+ if (allAdapters.length === 0) {
146
+ dispatch({ message: 'No tool adapters found. Cannot proceed with setup.', type: 'ERROR' });
147
+ return;
148
+ }
149
+ if (!f.isTTY) {
150
+ const defaultTools = projConfig?.tools ?? ['claude-code'];
151
+ dispatch({
152
+ adapters: allAdapters,
153
+ orgLocked,
154
+ orgValue,
155
+ phase: 'creating',
156
+ projectDir: resolvedDir,
157
+ selectedTools: defaultTools,
158
+ type: 'LOAD_DONE',
159
+ });
160
+ return;
161
+ }
162
+ // Interactive mode: pre-select existing tools from config
163
+ const selectedTools = projConfig?.tools ?? [];
164
+ dispatch({
165
+ adapters: allAdapters,
166
+ orgLocked,
167
+ orgValue,
168
+ phase: 'select-tool',
169
+ projectDir: resolvedDir,
170
+ selectedTools,
171
+ type: 'LOAD_DONE',
172
+ });
173
+ };
174
+ load().catch((err) => {
175
+ if (!cancelled) {
176
+ dispatch({ message: err instanceof Error ? err.message : String(err), type: 'ERROR' });
177
+ }
178
+ });
179
+ return () => {
180
+ cancelled = true;
181
+ };
182
+ // Phase-gated effect: only runs when entering 'loading'
183
+ // eslint-disable-next-line react-hooks/exhaustive-deps
184
+ }, [state.phase]);
185
+ // --- Creating effect ---
186
+ useEffect(() => {
187
+ if (state.phase !== 'creating')
188
+ return;
189
+ let cancelled = false;
190
+ const create = async () => {
191
+ const actions = [];
192
+ const resolvedOrg = state.orgLocked ? state.orgValue.trim() : state.orgValue.trim() || undefined;
193
+ // 1. Write .atkrc.json with { tools: [...] }
194
+ await saveProjectConfig(state.projectDir, { tools: state.selectedTools });
195
+ actions.push({ detail: `tools: ${state.selectedTools.join(', ')}`, label: 'Wrote .atkrc.json' });
196
+ // 2. Write .atk-lock.json
197
+ const lockfilePath = getLockfilePath(state.projectDir);
198
+ if (existsSync(lockfilePath)) {
199
+ // Preserve existing assets and org
200
+ const existing = await readLockfile(state.projectDir);
201
+ // Only update org if it's not already set and we have a new one
202
+ const updatedLockfile = {
203
+ ...existing,
204
+ lockVersion: 1,
205
+ ...(resolvedOrg !== undefined && !existing.org ? { org: resolvedOrg } : {}),
206
+ };
207
+ await writeLockfile(state.projectDir, updatedLockfile);
208
+ actions.push({
209
+ detail: `${(existing.assets ?? []).length} existing asset(s) preserved`,
210
+ label: 'Updated .atk-lock.json',
211
+ });
212
+ }
213
+ else {
214
+ await writeLockfile(state.projectDir, {
215
+ assets: [],
216
+ lockVersion: 1,
217
+ ...(resolvedOrg !== undefined ? { org: resolvedOrg } : {}),
218
+ });
219
+ actions.push({
220
+ detail: resolvedOrg ? `org: ${resolvedOrg}` : 'no org',
221
+ label: 'Created .atk-lock.json',
222
+ });
223
+ }
224
+ // 3. Ensure .atkrc.json is in .gitignore via the adapters' gitignore entries
225
+ const allAdded = [];
226
+ let anyAdapterLoaded = false;
227
+ for (const tool of state.selectedTools) {
228
+ try {
229
+ const adapter = await loadAdapter(tool);
230
+ anyAdapterLoaded = true;
231
+ const { added } = await ensureGitignoreEntries(state.projectDir, adapter);
232
+ allAdded.push(...added);
233
+ }
234
+ catch {
235
+ // Individual adapter load failure is non-fatal; continue with others
236
+ }
237
+ }
238
+ if (!anyAdapterLoaded) {
239
+ // If no adapters could be loaded, manually ensure .atkrc.json is gitignored
240
+ try {
241
+ const { readFile: readFileAsync, writeFile: writeFileAsync } = await import('node:fs/promises');
242
+ const { join } = await import('node:path');
243
+ const gitignorePath = join(state.projectDir, '.gitignore');
244
+ let content = '';
245
+ if (existsSync(gitignorePath)) {
246
+ content = await readFileAsync(gitignorePath, 'utf-8');
247
+ }
248
+ if (!content.includes('.atkrc.json')) {
249
+ const atkHeader = '# ATK managed assets';
250
+ if (content.includes(atkHeader)) {
251
+ const lines = content.split('\n');
252
+ const headerIndex = lines.findIndex((line) => line.trim() === atkHeader);
253
+ let insertIndex = headerIndex + 1;
254
+ while (insertIndex < lines.length &&
255
+ lines[insertIndex].trim() !== '' &&
256
+ !lines[insertIndex].startsWith('#')) {
257
+ insertIndex++;
258
+ }
259
+ lines.splice(insertIndex, 0, '.atkrc.json');
260
+ await writeFileAsync(gitignorePath, lines.join('\n'), 'utf-8');
261
+ }
262
+ else {
263
+ const separator = content.length > 0 && !content.endsWith('\n') ? '\n\n' : content.length > 0 ? '\n' : '';
264
+ await writeFileAsync(gitignorePath, `${content}${separator}# ATK managed assets\n.atkrc.json\n`, 'utf-8');
265
+ }
266
+ allAdded.push('.atkrc.json');
267
+ }
268
+ }
269
+ catch {
270
+ // Non-fatal
271
+ }
272
+ }
273
+ if (allAdded.length > 0) {
274
+ // Deduplicate entries
275
+ const uniqueAdded = [...new Set(allAdded)];
276
+ actions.push({ detail: uniqueAdded.join(', '), label: 'Updated .gitignore' });
277
+ }
278
+ if (cancelled)
279
+ return;
280
+ dispatch({ actions, type: 'CREATE_DONE' });
281
+ };
282
+ create().catch((err) => {
283
+ if (!cancelled) {
284
+ dispatch({ message: err instanceof Error ? err.message : String(err), type: 'ERROR' });
285
+ }
286
+ });
287
+ return () => {
288
+ cancelled = true;
289
+ };
290
+ // Phase-gated effect: only runs when entering 'creating'
291
+ // eslint-disable-next-line react-hooks/exhaustive-deps
292
+ }, [state.phase]);
293
+ return [state, dispatch];
294
+ }
295
+ //# sourceMappingURL=useSetupState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSetupState.js","sourceRoot":"","sources":["../../src/hooks/useSetupState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import type { Adapter } from '../lib/schemas/adapter.js';
2
+ import type { Lockfile } from '../lib/schemas/lockfile.js';
3
+ import type { BundleUninstallPlan, BundleUninstallResult, UninstallPlan, UninstallResult } from '../lib/uninstaller.js';
4
+ export interface ToolUninstallSuccess {
5
+ plan: UninstallPlan;
6
+ results: UninstallResult[];
7
+ tool: string;
8
+ }
9
+ export type UninstallAction = {
10
+ bundleError?: null | string;
11
+ bundleResult?: BundleUninstallResult | null;
12
+ singleError?: null | string;
13
+ singleResult?: null | UninstallResult[];
14
+ type: 'EXECUTE_DONE';
15
+ } | {
16
+ message: string;
17
+ type: 'ERROR';
18
+ } | {
19
+ message: string;
20
+ type: 'EXECUTE_ERROR';
21
+ } | {
22
+ message: string;
23
+ type: 'EXECUTE_PROGRESS';
24
+ } | {
25
+ message: string;
26
+ type: 'LOAD_PROGRESS';
27
+ } | {
28
+ outcome: UninstallOutcome;
29
+ type: 'LOAD_DONE';
30
+ } | {
31
+ type: 'CANCEL';
32
+ } | {
33
+ type: 'CONFIRM';
34
+ };
35
+ export interface UninstallFlags {
36
+ cascade: boolean;
37
+ dryRun: boolean;
38
+ name: string;
39
+ projectRoot?: string;
40
+ refresh: boolean;
41
+ tool?: string;
42
+ yes: boolean;
43
+ }
44
+ export type UninstallOutcome = {
45
+ adapter: Adapter;
46
+ lockfile: Lockfile;
47
+ outcome: 'confirming';
48
+ plan: UninstallPlan;
49
+ tool: string;
50
+ tools: Array<{
51
+ adapter: Adapter;
52
+ tool: string;
53
+ }>;
54
+ } | {
55
+ bundleName: string;
56
+ outcome: 'bundle-not-installed';
57
+ } | {
58
+ name: string;
59
+ outcome: 'not-installed';
60
+ } | {
61
+ outcome: 'bundle-confirming';
62
+ plan: BundleUninstallPlan;
63
+ tools: Array<{
64
+ adapter: Adapter;
65
+ tool: string;
66
+ }>;
67
+ } | {
68
+ outcome: 'bundle-success';
69
+ plan: BundleUninstallPlan;
70
+ result: BundleUninstallResult;
71
+ tools: string[];
72
+ } | {
73
+ outcome: 'dry-run-bundle';
74
+ plan: BundleUninstallPlan;
75
+ tools: string[];
76
+ } | {
77
+ outcome: 'dry-run-single';
78
+ plan: UninstallPlan;
79
+ tools: Array<{
80
+ adapter: Adapter;
81
+ tool: string;
82
+ }>;
83
+ } | {
84
+ outcome: 'success';
85
+ toolResults: ToolUninstallSuccess[];
86
+ };
87
+ export type UninstallPhase = 'confirming' | 'done' | 'error' | 'executing' | 'loading';
88
+ export interface UninstallState {
89
+ bundleError: null | string;
90
+ bundleResult: BundleUninstallResult | null;
91
+ errorMessage: string;
92
+ flags: UninstallFlags;
93
+ outcome: null | UninstallOutcome;
94
+ phase: UninstallPhase;
95
+ progress: string;
96
+ singleError: null | string;
97
+ singleResult: null | UninstallResult[];
98
+ }
99
+ export declare function createInitialState(flags: UninstallFlags): UninstallState;
100
+ export declare function uninstallReducer(state: UninstallState, action: UninstallAction): UninstallState;
101
+ export declare function useUninstallState(flags: UninstallFlags): readonly [UninstallState, React.Dispatch<UninstallAction>];
102
+ //# sourceMappingURL=useUninstallState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUninstallState.d.ts","sourceRoot":"","sources":["../../src/hooks/useUninstallState.ts"],"names":[],"mappings":"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"}