@detergent-software/atk 8.7.0-dev.1 → 8.7.0-dev.11

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 (215) hide show
  1. package/CHANGELOG.md +106 -0
  2. package/build/commands/audit.d.ts.map +1 -1
  3. package/build/commands/audit.js +34 -11
  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 +23 -15
  7. package/build/commands/browse.js.map +1 -1
  8. package/build/commands/freeze.d.ts.map +1 -1
  9. package/build/commands/freeze.js +11 -6
  10. package/build/commands/freeze.js.map +1 -1
  11. package/build/commands/index.d.ts.map +1 -1
  12. package/build/commands/index.js +1 -0
  13. package/build/commands/index.js.map +1 -1
  14. package/build/commands/install.d.ts.map +1 -1
  15. package/build/commands/install.js +94 -29
  16. package/build/commands/install.js.map +1 -1
  17. package/build/commands/list.d.ts +2 -1
  18. package/build/commands/list.d.ts.map +1 -1
  19. package/build/commands/list.js +82 -66
  20. package/build/commands/list.js.map +1 -1
  21. package/build/commands/move.d.ts +28 -0
  22. package/build/commands/move.d.ts.map +1 -0
  23. package/build/commands/move.js +180 -0
  24. package/build/commands/move.js.map +1 -0
  25. package/build/commands/outdated.d.ts +2 -1
  26. package/build/commands/outdated.d.ts.map +1 -1
  27. package/build/commands/outdated.js +67 -24
  28. package/build/commands/outdated.js.map +1 -1
  29. package/build/commands/pin.d.ts.map +1 -1
  30. package/build/commands/pin.js +12 -7
  31. package/build/commands/pin.js.map +1 -1
  32. package/build/commands/prune.d.ts.map +1 -1
  33. package/build/commands/prune.js +17 -10
  34. package/build/commands/prune.js.map +1 -1
  35. package/build/commands/sync.d.ts.map +1 -1
  36. package/build/commands/sync.js +24 -15
  37. package/build/commands/sync.js.map +1 -1
  38. package/build/commands/thaw.d.ts.map +1 -1
  39. package/build/commands/thaw.js +11 -6
  40. package/build/commands/thaw.js.map +1 -1
  41. package/build/commands/uninstall.d.ts.map +1 -1
  42. package/build/commands/uninstall.js +20 -15
  43. package/build/commands/uninstall.js.map +1 -1
  44. package/build/commands/unpin.d.ts.map +1 -1
  45. package/build/commands/unpin.js +11 -6
  46. package/build/commands/unpin.js.map +1 -1
  47. package/build/commands/update.d.ts.map +1 -1
  48. package/build/commands/update.js +13 -13
  49. package/build/commands/update.js.map +1 -1
  50. package/build/components/CrossScopeWarning.d.ts +12 -0
  51. package/build/components/CrossScopeWarning.d.ts.map +1 -0
  52. package/build/components/CrossScopeWarning.js +13 -0
  53. package/build/components/CrossScopeWarning.js.map +1 -0
  54. package/build/components/DryRunBanner.d.ts +3 -1
  55. package/build/components/DryRunBanner.d.ts.map +1 -1
  56. package/build/components/DryRunBanner.js +2 -2
  57. package/build/components/DryRunBanner.js.map +1 -1
  58. package/build/components/InstallConfirmBar.d.ts.map +1 -1
  59. package/build/components/InstallConfirmBar.js +1 -3
  60. package/build/components/InstallConfirmBar.js.map +1 -1
  61. package/build/components/InstallSummary.d.ts +3 -1
  62. package/build/components/InstallSummary.d.ts.map +1 -1
  63. package/build/components/InstallSummary.js +2 -2
  64. package/build/components/InstallSummary.js.map +1 -1
  65. package/build/components/ListActionBar.d.ts +4 -2
  66. package/build/components/ListActionBar.d.ts.map +1 -1
  67. package/build/components/ListActionBar.js +5 -4
  68. package/build/components/ListActionBar.js.map +1 -1
  69. package/build/components/ListBrowseList.d.ts +7 -6
  70. package/build/components/ListBrowseList.d.ts.map +1 -1
  71. package/build/components/ListBrowseList.js +10 -6
  72. package/build/components/ListBrowseList.js.map +1 -1
  73. package/build/components/StatusBadge.d.ts +1 -1
  74. package/build/components/StatusBadge.d.ts.map +1 -1
  75. package/build/components/StatusBadge.js +1 -0
  76. package/build/components/StatusBadge.js.map +1 -1
  77. package/build/components/SyncAllInSync.d.ts +3 -1
  78. package/build/components/SyncAllInSync.d.ts.map +1 -1
  79. package/build/components/SyncAllInSync.js +2 -2
  80. package/build/components/SyncAllInSync.js.map +1 -1
  81. package/build/components/SyncDriftedList.d.ts +3 -1
  82. package/build/components/SyncDriftedList.d.ts.map +1 -1
  83. package/build/components/SyncDriftedList.js +3 -3
  84. package/build/components/SyncDriftedList.js.map +1 -1
  85. package/build/components/SyncNoAssets.d.ts +3 -1
  86. package/build/components/SyncNoAssets.d.ts.map +1 -1
  87. package/build/components/SyncNoAssets.js +2 -2
  88. package/build/components/SyncNoAssets.js.map +1 -1
  89. package/build/components/index.d.ts +1 -0
  90. package/build/components/index.d.ts.map +1 -1
  91. package/build/components/index.js +1 -0
  92. package/build/components/index.js.map +1 -1
  93. package/build/hooks/useInitState.d.ts.map +1 -1
  94. package/build/hooks/useInitState.js +4 -2
  95. package/build/hooks/useInitState.js.map +1 -1
  96. package/build/hooks/useListActions.d.ts +19 -6
  97. package/build/hooks/useListActions.d.ts.map +1 -1
  98. package/build/hooks/useListActions.js +37 -33
  99. package/build/hooks/useListActions.js.map +1 -1
  100. package/build/hooks/useListState.d.ts +29 -12
  101. package/build/hooks/useListState.d.ts.map +1 -1
  102. package/build/hooks/useListState.js +22 -6
  103. package/build/hooks/useListState.js.map +1 -1
  104. package/build/hooks/usePruneState.d.ts +6 -0
  105. package/build/hooks/usePruneState.d.ts.map +1 -1
  106. package/build/hooks/usePruneState.js +6 -1
  107. package/build/hooks/usePruneState.js.map +1 -1
  108. package/build/hooks/useResolvedScope.d.ts +21 -0
  109. package/build/hooks/useResolvedScope.d.ts.map +1 -0
  110. package/build/hooks/useResolvedScope.js +15 -0
  111. package/build/hooks/useResolvedScope.js.map +1 -0
  112. package/build/hooks/useUninstallState.d.ts +17 -8
  113. package/build/hooks/useUninstallState.d.ts.map +1 -1
  114. package/build/hooks/useUninstallState.js +48 -12
  115. package/build/hooks/useUninstallState.js.map +1 -1
  116. package/build/lib/adapter.d.ts +41 -2
  117. package/build/lib/adapter.d.ts.map +1 -1
  118. package/build/lib/adapter.js +147 -12
  119. package/build/lib/adapter.js.map +1 -1
  120. package/build/lib/checksum.d.ts.map +1 -1
  121. package/build/lib/checksum.js +2 -1
  122. package/build/lib/checksum.js.map +1 -1
  123. package/build/lib/config-entries.d.ts +5 -3
  124. package/build/lib/config-entries.d.ts.map +1 -1
  125. package/build/lib/config-entries.js +7 -4
  126. package/build/lib/config-entries.js.map +1 -1
  127. package/build/lib/config-file.d.ts +10 -3
  128. package/build/lib/config-file.d.ts.map +1 -1
  129. package/build/lib/config-file.js +29 -7
  130. package/build/lib/config-file.js.map +1 -1
  131. package/build/lib/config-lock.d.ts +3 -1
  132. package/build/lib/config-lock.d.ts.map +1 -1
  133. package/build/lib/config-lock.js +12 -5
  134. package/build/lib/config-lock.js.map +1 -1
  135. package/build/lib/cross-scope.d.ts +50 -0
  136. package/build/lib/cross-scope.d.ts.map +1 -0
  137. package/build/lib/cross-scope.js +132 -0
  138. package/build/lib/cross-scope.js.map +1 -0
  139. package/build/lib/diagnostics.d.ts +15 -2
  140. package/build/lib/diagnostics.d.ts.map +1 -1
  141. package/build/lib/diagnostics.js +152 -10
  142. package/build/lib/diagnostics.js.map +1 -1
  143. package/build/lib/diff-command.d.ts.map +1 -1
  144. package/build/lib/diff-command.js +7 -7
  145. package/build/lib/diff-command.js.map +1 -1
  146. package/build/lib/init.d.ts.map +1 -1
  147. package/build/lib/init.js +2 -1
  148. package/build/lib/init.js.map +1 -1
  149. package/build/lib/installed-for-tool.d.ts +2 -1
  150. package/build/lib/installed-for-tool.d.ts.map +1 -1
  151. package/build/lib/installed-for-tool.js +7 -4
  152. package/build/lib/installed-for-tool.js.map +1 -1
  153. package/build/lib/installer.d.ts +2 -2
  154. package/build/lib/installer.d.ts.map +1 -1
  155. package/build/lib/installer.js +111 -40
  156. package/build/lib/installer.js.map +1 -1
  157. package/build/lib/lockfile.d.ts +1 -1
  158. package/build/lib/lockfile.d.ts.map +1 -1
  159. package/build/lib/lockfile.js +2 -2
  160. package/build/lib/lockfile.js.map +1 -1
  161. package/build/lib/mover.d.ts +103 -0
  162. package/build/lib/mover.d.ts.map +1 -0
  163. package/build/lib/mover.js +375 -0
  164. package/build/lib/mover.js.map +1 -0
  165. package/build/lib/owned-paths.d.ts.map +1 -1
  166. package/build/lib/owned-paths.js +8 -8
  167. package/build/lib/owned-paths.js.map +1 -1
  168. package/build/lib/read-scopes.d.ts +32 -0
  169. package/build/lib/read-scopes.d.ts.map +1 -0
  170. package/build/lib/read-scopes.js +55 -0
  171. package/build/lib/read-scopes.js.map +1 -0
  172. package/build/lib/root-path.d.ts +7 -0
  173. package/build/lib/root-path.d.ts.map +1 -0
  174. package/build/lib/root-path.js +10 -0
  175. package/build/lib/root-path.js.map +1 -0
  176. package/build/lib/schemas/adapter.d.ts +49 -1
  177. package/build/lib/schemas/adapter.d.ts.map +1 -1
  178. package/build/lib/schemas/adapter.js +36 -0
  179. package/build/lib/schemas/adapter.js.map +1 -1
  180. package/build/lib/schemas/lockfile.d.ts +2 -0
  181. package/build/lib/schemas/lockfile.d.ts.map +1 -1
  182. package/build/lib/schemas/lockfile.js +8 -2
  183. package/build/lib/schemas/lockfile.js.map +1 -1
  184. package/build/lib/scope.d.ts +11 -0
  185. package/build/lib/scope.d.ts.map +1 -1
  186. package/build/lib/scope.js +12 -0
  187. package/build/lib/scope.js.map +1 -1
  188. package/build/lib/sync.d.ts +2 -1
  189. package/build/lib/sync.d.ts.map +1 -1
  190. package/build/lib/sync.js +12 -5
  191. package/build/lib/sync.js.map +1 -1
  192. package/build/lib/toml-edit.d.ts +10 -0
  193. package/build/lib/toml-edit.d.ts.map +1 -0
  194. package/build/lib/toml-edit.js +311 -0
  195. package/build/lib/toml-edit.js.map +1 -0
  196. package/build/lib/tool-resolver.d.ts +12 -0
  197. package/build/lib/tool-resolver.d.ts.map +1 -1
  198. package/build/lib/tool-resolver.js +34 -8
  199. package/build/lib/tool-resolver.js.map +1 -1
  200. package/build/lib/uninstaller.d.ts +37 -2
  201. package/build/lib/uninstaller.d.ts.map +1 -1
  202. package/build/lib/uninstaller.js +121 -35
  203. package/build/lib/uninstaller.js.map +1 -1
  204. package/build/lib/updater.d.ts +3 -2
  205. package/build/lib/updater.d.ts.map +1 -1
  206. package/build/lib/updater.js +18 -12
  207. package/build/lib/updater.js.map +1 -1
  208. package/build/lib/write-file.d.ts +5 -2
  209. package/build/lib/write-file.d.ts.map +1 -1
  210. package/build/lib/write-file.js +6 -3
  211. package/build/lib/write-file.js.map +1 -1
  212. package/package.json +1 -1
  213. package/tool-adapters/claude-code.json +13 -0
  214. package/tool-adapters/codex-cli.json +28 -0
  215. package/tool-adapters/copilot-cli.json +46 -2
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/lib/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/lib/sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ type Table = Record<string, unknown>;
2
+ /**
3
+ * The text of `text` changed to hold `after`, with only the `section.child` tables that differ
4
+ * edited, or `undefined` when that can't be done: the documents differ outside such tables, the
5
+ * file defines a table another way (an inline table, dotted keys), or the edit doesn't read back as
6
+ * `after`. The caller then rewrites the whole document.
7
+ */
8
+ export declare function editTomlTables(text: string, after: Table): string | undefined;
9
+ export {};
10
+ //# sourceMappingURL=toml-edit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toml-edit.d.ts","sourceRoot":"","sources":["../../src/lib/toml-edit.ts"],"names":[],"mappings":"AA0BA,KAAK,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AASrC;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CA2B7E"}
@@ -0,0 +1,311 @@
1
+ import { parse as parseToml, stringify as stringifyToml } from 'smol-toml';
2
+ /**
3
+ * The text of `text` changed to hold `after`, with only the `section.child` tables that differ
4
+ * edited, or `undefined` when that can't be done: the documents differ outside such tables, the
5
+ * file defines a table another way (an inline table, dotted keys), or the edit doesn't read back as
6
+ * `after`. The caller then rewrites the whole document.
7
+ */
8
+ export function editTomlTables(text, after) {
9
+ let before;
10
+ try {
11
+ before = parseToml(text);
12
+ }
13
+ catch {
14
+ return undefined;
15
+ }
16
+ const changes = tableChanges(before, after);
17
+ if (changes === undefined)
18
+ return undefined;
19
+ if (changes.length === 0)
20
+ return text;
21
+ const lines = splitLines(text);
22
+ const eol = text.includes('\r\n') ? '\r\n' : '\n';
23
+ for (const change of changes) {
24
+ if (!applyChange(lines, change, eol))
25
+ return undefined;
26
+ }
27
+ for (const section of Object.keys(before)) {
28
+ if (after[section] === undefined && !removeEmptyHeader(lines, section))
29
+ return undefined;
30
+ }
31
+ const result = lines.map((line) => line.body + line.eol).join('');
32
+ try {
33
+ return sameValue(parseToml(result), after) ? result : undefined;
34
+ }
35
+ catch {
36
+ return undefined;
37
+ }
38
+ }
39
+ /** Put one table change into `lines`. False when the text can't be read. */
40
+ function applyChange(lines, { child, section, value }, eol) {
41
+ const blocks = scanBlocks(lines);
42
+ if (blocks === undefined)
43
+ return false;
44
+ const own = blocks.filter((b) => b.path.length >= 2 && b.path[0] === section && b.path[1] === child);
45
+ if (own.length > 0) {
46
+ // Last first, so the earlier blocks' line numbers still hold.
47
+ for (const block of own.toReversed()) {
48
+ removeLines(lines, block.start, block.end, value === undefined || block !== own[0]);
49
+ }
50
+ if (value !== undefined) {
51
+ const at = own[0].start;
52
+ // The line before may now end the file without a line ending.
53
+ const before = lines[at - 1];
54
+ if (before !== undefined && before.eol === '')
55
+ before.eol = eol;
56
+ lines.splice(at, 0, ...tableLines(section, child, value, eol));
57
+ }
58
+ return true;
59
+ }
60
+ if (value === undefined)
61
+ return true;
62
+ const sectionBlocks = blocks.filter((b) => b.path[0] === section);
63
+ const at = sectionBlocks.length > 0 ? sectionBlocks.at(-1).end : lines.length;
64
+ const last = lines[at - 1];
65
+ if (last !== undefined && last.eol === '')
66
+ last.eol = eol;
67
+ const separator = last !== undefined && last.body.trim() !== '' ? [{ body: '', eol }] : [];
68
+ lines.splice(at, 0, ...separator, ...tableLines(section, child, value, eol));
69
+ return true;
70
+ }
71
+ /** Whether `value` is a TOML table (a plain object, not an array or a date). */
72
+ function isTable(value) {
73
+ return value !== null && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Date);
74
+ }
75
+ /** How a line reads, carried over the lines a multi-line string or array spans. */
76
+ function kindOf(body, state) {
77
+ let kind = 'content';
78
+ if (state.multiline === undefined && state.depth === 0) {
79
+ const trimmed = body.trimStart();
80
+ if (trimmed === '')
81
+ return 'blank';
82
+ if (trimmed.startsWith('#'))
83
+ return 'comment';
84
+ if (trimmed.startsWith('['))
85
+ kind = 'header';
86
+ }
87
+ if (kind === 'header')
88
+ return kind;
89
+ let i = 0;
90
+ while (i < body.length) {
91
+ if (state.multiline !== undefined) {
92
+ if (state.multiline === '"""' && body[i] === '\\') {
93
+ i += 2;
94
+ }
95
+ else if (body.startsWith(state.multiline, i)) {
96
+ // Up to two more quotes right before the closing delimiter belong to the string.
97
+ let run = 3;
98
+ while (run < 5 && body[i + run] === state.multiline[0])
99
+ run++;
100
+ i += run;
101
+ state.multiline = undefined;
102
+ }
103
+ else {
104
+ i++;
105
+ }
106
+ continue;
107
+ }
108
+ const char = body[i];
109
+ if (char === '#')
110
+ break;
111
+ if (body.startsWith('"""', i) || body.startsWith("'''", i)) {
112
+ state.multiline = body.startsWith('"""', i) ? '"""' : "'''";
113
+ i += 3;
114
+ }
115
+ else if (char === '"') {
116
+ i++;
117
+ while (i < body.length && body[i] !== '"')
118
+ i += body[i] === '\\' ? 2 : 1;
119
+ i++;
120
+ }
121
+ else if (char === "'") {
122
+ const close = body.indexOf("'", i + 1);
123
+ i = close === -1 ? body.length : close + 1;
124
+ }
125
+ else {
126
+ if (char === '[' || char === '{')
127
+ state.depth++;
128
+ if (char === ']' || char === '}')
129
+ state.depth--;
130
+ i++;
131
+ }
132
+ }
133
+ return state.depth < 0 ? undefined : kind;
134
+ }
135
+ /** The key path of a `[a.b]` or `[[a.b]]` header line, or `undefined` when it doesn't parse. */
136
+ function parseHeader(line) {
137
+ const trimmed = line.trim();
138
+ const open = trimmed.startsWith('[[') ? 2 : 1;
139
+ const path = [];
140
+ let i = open;
141
+ for (;;) {
142
+ while (trimmed[i] === ' ' || trimmed[i] === '\t')
143
+ i++;
144
+ let raw;
145
+ if (trimmed[i] === '"' || trimmed[i] === "'") {
146
+ const quote = trimmed[i];
147
+ let j = i + 1;
148
+ while (j < trimmed.length && trimmed[j] !== quote)
149
+ j += quote === '"' && trimmed[j] === '\\' ? 2 : 1;
150
+ raw = trimmed.slice(i, j + 1);
151
+ i = j + 1;
152
+ let key;
153
+ try {
154
+ key = parseToml(`k = ${raw}`)['k'];
155
+ }
156
+ catch {
157
+ return undefined;
158
+ }
159
+ if (typeof key !== 'string')
160
+ return undefined;
161
+ path.push(key);
162
+ }
163
+ else {
164
+ raw = /^[A-Za-z0-9_-]+/.exec(trimmed.slice(i))?.[0] ?? '';
165
+ if (raw === '')
166
+ return undefined;
167
+ path.push(raw);
168
+ i += raw.length;
169
+ }
170
+ while (trimmed[i] === ' ' || trimmed[i] === '\t')
171
+ i++;
172
+ if (trimmed[i] === '.') {
173
+ i++;
174
+ continue;
175
+ }
176
+ return trimmed.startsWith(']'.repeat(open), i) ? path : undefined;
177
+ }
178
+ }
179
+ /**
180
+ * Drop the bare `[section]` header ATK's tables sat under, now that the section is gone from the
181
+ * document. Its comments stay. False when the header still has keys (the edit can't be made).
182
+ */
183
+ function removeEmptyHeader(lines, section) {
184
+ const blocks = scanBlocks(lines);
185
+ if (blocks === undefined)
186
+ return false;
187
+ for (const block of blocks.toReversed()) {
188
+ if (block.path.length !== 1 || block.path[0] !== section)
189
+ continue;
190
+ if (block.end - block.start > 1)
191
+ return false;
192
+ removeLines(lines, block.start, block.end, true);
193
+ }
194
+ return true;
195
+ }
196
+ /**
197
+ * Remove lines `start` to `end`. With `dropSeparator`, also the blank line that set them apart: the
198
+ * one before them, or, at the top of the file, the one after.
199
+ */
200
+ function removeLines(lines, start, end, dropSeparator) {
201
+ const isBlank = (index) => lines[index] !== undefined && lines[index].body.trim() === '';
202
+ let from = start;
203
+ let to = end;
204
+ if (dropSeparator && isBlank(start - 1))
205
+ from--;
206
+ else if (dropSeparator && start === 0 && isBlank(end))
207
+ to++;
208
+ const removedLast = lines[to - 1];
209
+ lines.splice(from, to - from);
210
+ // Keep the file's last line ending as it was.
211
+ if (to - from > 0 && from === lines.length && from > 0)
212
+ lines[from - 1].eol = removedLast.eol;
213
+ }
214
+ /** Deep equality of two TOML values; a missing member and an `undefined` or `null` one are alike. */
215
+ function sameValue(a, b) {
216
+ if (a instanceof Date || b instanceof Date) {
217
+ return a instanceof Date && b instanceof Date && a.toISOString() === b.toISOString();
218
+ }
219
+ if (Array.isArray(a) || Array.isArray(b)) {
220
+ return Array.isArray(a) && Array.isArray(b) && a.length === b.length && a.every((v, i) => sameValue(v, b[i]));
221
+ }
222
+ if (isTable(a) && isTable(b)) {
223
+ const keys = new Set([...Object.keys(a), ...Object.keys(b)]);
224
+ return [...keys].every((key) => {
225
+ const x = a[key] ?? undefined;
226
+ const y = b[key] ?? undefined;
227
+ return x === undefined || y === undefined ? x === y : sameValue(x, y);
228
+ });
229
+ }
230
+ return a === b || (Number.isNaN(a) && Number.isNaN(b));
231
+ }
232
+ /** Each table header in `lines` and its block, or `undefined` when the text can't be read. */
233
+ function scanBlocks(lines) {
234
+ const state = { depth: 0, multiline: undefined };
235
+ const kinds = [];
236
+ const headers = [];
237
+ for (const [index, line] of lines.entries()) {
238
+ const kind = kindOf(line.body, state);
239
+ if (kind === undefined)
240
+ return undefined;
241
+ kinds.push(kind);
242
+ if (kind === 'header') {
243
+ const path = parseHeader(line.body);
244
+ if (path === undefined)
245
+ return undefined;
246
+ headers.push({ line: index, path });
247
+ }
248
+ }
249
+ return headers.map(({ line, path }, i) => {
250
+ // Comments and blank lines at a block's end belong to what follows it.
251
+ let end = headers[i + 1]?.line ?? lines.length;
252
+ while (end - 1 > line && kinds[end - 1] !== 'content')
253
+ end--;
254
+ return { end, path, start: line };
255
+ });
256
+ }
257
+ /** Split text into lines, each keeping its own line ending. */
258
+ function splitLines(text) {
259
+ if (text === '')
260
+ return [];
261
+ const parts = text.split(/(\r?\n)/);
262
+ const lines = [];
263
+ for (let i = 0; i < parts.length; i += 2) {
264
+ const body = parts[i];
265
+ const eol = parts[i + 1] ?? '';
266
+ if (body === '' && eol === '' && i === parts.length - 1)
267
+ break;
268
+ lines.push({ body, eol });
269
+ }
270
+ return lines;
271
+ }
272
+ /**
273
+ * The `section.child` table changes that turn `before` into `after`, or `undefined` when they differ
274
+ * in anything else (a top-level key, a section that isn't a table, an entry that isn't one).
275
+ */
276
+ function tableChanges(before, after) {
277
+ const changes = [];
278
+ for (const section of new Set([...Object.keys(before), ...Object.keys(after)])) {
279
+ if (sameValue(before[section], after[section]))
280
+ continue;
281
+ const was = tableOrAbsent(before[section]);
282
+ const is = tableOrAbsent(after[section]);
283
+ if (was === null || is === null)
284
+ return undefined;
285
+ for (const child of new Set([...Object.keys(was ?? {}), ...Object.keys(is ?? {})])) {
286
+ if (sameValue(was?.[child], is?.[child]))
287
+ continue;
288
+ const old = tableOrAbsent(was?.[child]);
289
+ const value = tableOrAbsent(is?.[child]);
290
+ if (old === null || value === null)
291
+ return undefined;
292
+ changes.push({ child, section, value });
293
+ }
294
+ }
295
+ return changes;
296
+ }
297
+ /** The lines of a `[section.child]` table (and its sub-tables) as smol-toml writes it. */
298
+ function tableLines(section, child, value, eol) {
299
+ const text = stringifyToml({ [section]: { [child]: value } });
300
+ return text
301
+ .replace(/\n$/, '')
302
+ .split('\n')
303
+ .map((body) => ({ body, eol }));
304
+ }
305
+ /** `value` as a table, `undefined` when it is absent, or `null` when it is something else. */
306
+ function tableOrAbsent(value) {
307
+ if (value === undefined || value === null)
308
+ return undefined;
309
+ return isTable(value) ? value : null;
310
+ }
311
+ //# sourceMappingURL=toml-edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toml-edit.js","sourceRoot":"","sources":["../../src/lib/toml-edit.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,16 @@
1
1
  import type { Adapter } from './schemas/adapter.js';
2
+ import { SetupRequiredError } from './errors.js';
3
+ /** The error for a scope with no tools, naming the setup command of the scope at `root`. */
4
+ export declare function noToolsError(root: string): Promise<SetupRequiredError>;
5
+ /**
6
+ * Resolve the tools a command that places files (install, sync, update) targets, as `resolveTools`
7
+ * does, but refuse a `--tool` the scope isn't set up for when it has tools. Uninstall, sync, update
8
+ * and audit work on the scope's tools, so a copy placed for another tool would go untracked.
9
+ */
10
+ export declare function resolvePlacingTools(toolOption?: string, projectDir?: string): Promise<Array<{
11
+ adapter: Adapter;
12
+ tool: string;
13
+ }>>;
2
14
  /**
3
15
  * Resolve a single tool to target, returning both the resolved tool name and its adapter config.
4
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tool-resolver.d.ts","sourceRoot":"","sources":["../../src/lib/tool-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAOpD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAG7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAclG;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CA0BpD"}
1
+ {"version":3,"file":"tool-resolver.d.ts","sourceRoot":"","sources":["../../src/lib/tool-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD,4FAA4F;AAC5F,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAM5E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAWpD;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAG7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAclG;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CA0BpD"}
@@ -2,6 +2,31 @@ import { adapterForScope, loadAdapter } from './adapter.js';
2
2
  import { SetupRequiredError } from './errors.js';
3
3
  import { findProjectRoot } from './paths.js';
4
4
  import { isUserRoot, loadScopeConfig, setupGuidance } from './scope.js';
5
+ /** The error for a scope with no tools, naming the setup command of the scope at `root`. */
6
+ export async function noToolsError(root) {
7
+ const { command, hint } = await setupGuidance(root);
8
+ return new SetupRequiredError(`No tools configured. Run \`${command}\` to select your AI coding tool.`, {
9
+ command,
10
+ hint,
11
+ });
12
+ }
13
+ /**
14
+ * Resolve the tools a command that places files (install, sync, update) targets, as `resolveTools`
15
+ * does, but refuse a `--tool` the scope isn't set up for when it has tools. Uninstall, sync, update
16
+ * and audit work on the scope's tools, so a copy placed for another tool would go untracked.
17
+ */
18
+ export async function resolvePlacingTools(toolOption, projectDir) {
19
+ const resolvedDir = projectDir ?? findProjectRoot();
20
+ if (toolOption) {
21
+ // An unknown tool gets the adapter's own error, not advice to set it up.
22
+ await loadAdapter(toolOption, resolvedDir);
23
+ const configured = (await loadScopeConfig(resolvedDir))?.tools ?? [];
24
+ if (configured.length > 0 && !configured.includes(toolOption)) {
25
+ throw await unconfiguredToolError(toolOption, configured, resolvedDir);
26
+ }
27
+ }
28
+ return resolveTools(toolOption, resolvedDir);
29
+ }
5
30
  /**
6
31
  * Resolve a single tool to target, returning both the resolved tool name and its adapter config.
7
32
  *
@@ -55,7 +80,7 @@ export async function resolveTools(toolOption, projectDir) {
55
80
  const scope = (await isUserRoot(resolvedDir)) ? 'user' : 'project';
56
81
  // When --tool flag is provided, return only that single tool
57
82
  if (toolOption) {
58
- const adapter = adapterForScope(await loadAdapter(toolOption), scope);
83
+ const adapter = adapterForScope(await loadAdapter(toolOption, resolvedDir), scope, resolvedDir);
59
84
  return [{ adapter, tool: toolOption }];
60
85
  }
61
86
  // Read all tools from the scope config
@@ -66,17 +91,18 @@ export async function resolveTools(toolOption, projectDir) {
66
91
  }
67
92
  const results = [];
68
93
  for (const tool of tools) {
69
- const adapter = adapterForScope(await loadAdapter(tool), scope);
94
+ const adapter = adapterForScope(await loadAdapter(tool, resolvedDir), scope, resolvedDir);
70
95
  results.push({ adapter, tool });
71
96
  }
72
97
  return results;
73
98
  }
74
- /** The error for a scope with no tools, naming the setup command of the scope at `root`. */
75
- async function noToolsError(root) {
76
- const { command, hint } = await setupGuidance(root);
77
- return new SetupRequiredError(`No tools configured. Run \`${command}\` to select your AI coding tool.`, {
78
- command,
79
- hint,
99
+ /** The refusal of a `--tool` that the scope at `root`, set up for `configured`, doesn't have. */
100
+ async function unconfiguredToolError(tool, configured, root) {
101
+ const { command, user } = await setupGuidance(root);
102
+ const where = user ? 'the user scope' : 'this project';
103
+ return new SetupRequiredError(`${tool} is not set up for ${where} (its tools: ${configured.join(', ')}).`, {
104
+ command: [command, ...[...configured, tool].map((t) => `--tool ${t}`)].join(' '),
105
+ hint: `Add it to the tools of ${where}, then run the command again.`,
80
106
  });
81
107
  }
82
108
  //# sourceMappingURL=tool-resolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-resolver.js","sourceRoot":"","sources":["../../src/lib/tool-resolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAExE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAmB,EACnB,UAAmB;IAEnB,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC3D,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAmB,EAAE,UAAmB;IAC7E,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,IAAI,eAAe,EAAE,CAAC;IACpD,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,aAAa,EAAE,KAAK,CAAC;IAEnC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAmB,EACnB,UAAmB;IAEnB,MAAM,WAAW,GAAG,UAAU,IAAI,eAAe,EAAE,CAAC;IACpD,kEAAkE;IAClE,MAAM,KAAK,GAAG,CAAC,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAEnE,6DAA6D;IAC7D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,uCAAuC;IACvC,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,aAAa,EAAE,KAAK,CAAC;IAEnC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,OAAO,GAA8C,EAAE,CAAC;IAC9D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,4FAA4F;AAC5F,KAAK,UAAU,YAAY,CAAC,IAAY;IACtC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,IAAI,kBAAkB,CAAC,8BAA8B,OAAO,mCAAmC,EAAE;QACtG,OAAO;QACP,IAAI;KACL,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"tool-resolver.js","sourceRoot":"","sources":["../../src/lib/tool-resolver.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,12 @@ export interface UninstallOptions {
84
84
  onProgress?: (message: string) => void;
85
85
  /** Optional org scope for asset identity matching. */
86
86
  org?: string;
87
+ /**
88
+ * Tools whose files are removed only where they still hold what ATK placed (their recorded
89
+ * checksum): the other tools a plain uninstall found a copy for ({@link adaptersWithCopies}),
90
+ * whose paths may hold files of the user's own for the other assets it removes.
91
+ */
92
+ placedByAtkTools?: string[];
87
93
  /** Pre-computed uninstall plan to avoid re-computing. */
88
94
  plan?: UninstallPlan;
89
95
  /** Project root directory. */
@@ -131,6 +137,18 @@ export interface UninstallResult {
131
137
  export declare class UninstallerError extends GuidedError {
132
138
  name: string;
133
139
  }
140
+ /**
141
+ * The adapters of the other bundled tools, beyond `removing`, that still have ATK's copy of one of
142
+ * `assets` (see {@link hasCopyForTool}, with `placedByAtk`), scoped as `scope` places them. An
143
+ * uninstall that drops the entries for every tool removes these copies too rather than leave them
144
+ * untracked: one placed with `--tool` for a tool the scope wasn't set up for, or for a tool since
145
+ * taken out of the scope's tools. A tool whose placements can't be resolved here is skipped.
146
+ */
147
+ export declare function adaptersWithCopies(assets: InstalledAsset[], removing: Adapter[], projectDir: string, { lockfile, onProgress, scope }: {
148
+ lockfile: Lockfile;
149
+ onProgress?: (message: string) => void;
150
+ scope: Scope;
151
+ }): Promise<Adapter[]>;
134
152
  /**
135
153
  * Execute a bundle uninstall plan, removing assets and orphaned dependencies.
136
154
  * Errors are collected per-asset rather than aborting the entire operation.
@@ -162,17 +180,34 @@ export declare function planBundleUninstall(lockfile: Lockfile, bundleName: stri
162
180
  * already uninstalled for all of them are not counted as dependents.
163
181
  */
164
182
  export declare function planUninstall(lockfile: Lockfile, assetName: string, org?: string, type?: AssetType, removingTools?: string[]): UninstallPlan;
183
+ /**
184
+ * Delete the files `installed` placed for the adapter's tool, at the adapter's placements, and the
185
+ * empty directories they leave below the placements' own. A file another entry of `lockfile` also
186
+ * places for the tool is kept, and so is one that is on disk the same file as one of `keep`. With
187
+ * `placedByAtk`, so is one that doesn't hold what ATK placed (its recorded checksum).
188
+ * Returns the absolute paths removed.
189
+ */
190
+ export declare function removePlacedFiles(installed: InstalledAsset, adapter: Adapter, projectDir: string, { keep, lockfile, onProgress, placedByAtk, }: {
191
+ keep?: string[];
192
+ lockfile: Lockfile;
193
+ onProgress?: (message: string) => void;
194
+ placedByAtk?: boolean;
195
+ }): Promise<string[]>;
165
196
  /**
166
197
  * Remove a single asset's files and config entries from disk.
167
198
  * Does NOT touch the lockfile — caller is responsible for lockfile updates.
168
199
  *
169
200
  * Uses the adapter to dynamically resolve installed file paths and config entries
170
201
  * from the asset's source paths, rather than reading pre-computed paths from the lockfile.
171
- * A file or config entry that another entry of `lockfile` also places for the tool is kept.
202
+ * At the user scope they resolve in the user config directory the asset was placed in for the
203
+ * tool, which is not the current one when its `userConfigDir.env` moved since.
204
+ * A file or config entry that another entry of `lockfile` also places for the tool is kept, and
205
+ * with `placedByAtk` a file that doesn't hold what ATK placed (see {@link removePlacedFiles}).
172
206
  */
173
- export declare function removeSingleAsset(installed: InstalledAsset, adapter: Adapter, projectDir: string, { lockfile, onProgress }: {
207
+ export declare function removeSingleAsset(installed: InstalledAsset, currentAdapter: Adapter, projectDir: string, { lockfile, onProgress, placedByAtk, }: {
174
208
  lockfile: Lockfile;
175
209
  onProgress?: (message: string) => void;
210
+ placedByAtk?: boolean;
176
211
  }): Promise<{
177
212
  configEntriesCleaned: Array<{
178
213
  file: string;
@@ -1 +1 @@
1
- {"version":3,"file":"uninstaller.d.ts","sourceRoot":"","sources":["../../src/lib/uninstaller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AASxC,OAAO,EAAgB,WAAW,EAAE,MAAM,aAAa,CAAC;AAsBxD,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,+DAA+D;IAC/D,YAAY,EAAE,KAAK,CAAC,cAAc,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,UAAU,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5F,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpF,cAAc,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrF,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrG;AAED,MAAM,WAAW,gBAAgB;IAC/B,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC/B,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,qCAAqC;IACrC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;;OAMG;IACH,SAAS,CAAC,EAAE;QAAE,kBAAkB,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAC9C,+FAA+F;IAC/F,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,6DAA6D;IAC7D,oBAAoB,EAAE,cAAc,EAAE,CAAC;IACvC,2CAA2C;IAC3C,OAAO,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,oBAAoB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,gBAAiB,SAAQ,WAAW;IACtC,IAAI,SAAsB;CACpC;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAgGhC;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,EAAE,QAAQ,EAAE,WAAmB,EAAE,EAAE;IAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/F,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,GAAE,MAAM,EAAO,GAC3B,mBAAmB,CAwErB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,SAAS,EAChB,aAAa,GAAE,MAAM,EAAO,GAC3B,aAAa,CAiCf;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GACvF,OAAO,CAAC;IAAE,oBAAoB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAmFjG;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE;IAAE,WAAW,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAC7F,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAgF7G"}
1
+ {"version":3,"file":"uninstaller.d.ts","sourceRoot":"","sources":["../../src/lib/uninstaller.ts"],"names":[],"mappings":"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"}