@2amtech/hai 0.0.2 → 0.0.4
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/dist/commands/init.js +4 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/pull.js +20 -3
- package/dist/commands/pull.js.map +1 -1
- package/dist/helpers/init.d.ts +4 -1
- package/dist/helpers/init.js +16 -3
- package/dist/helpers/init.js.map +1 -1
- package/dist/helpers/main-config.d.ts +5 -0
- package/dist/helpers/main-config.js +29 -0
- package/dist/helpers/main-config.js.map +1 -0
- package/dist/helpers/pull.d.ts +1 -0
- package/dist/helpers/pull.js +2 -0
- package/dist/helpers/pull.js.map +1 -1
- package/dist/plugins/atlassian/confluence-client.d.ts +1 -1
- package/dist/plugins/atlassian/confluence-client.js +49 -21
- package/dist/plugins/atlassian/confluence-client.js.map +1 -1
- package/dist/schemas/main-config.d.ts +5 -0
- package/dist/schemas/main-config.js +5 -0
- package/dist/schemas/main-config.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/wizard/summary-step.d.ts +3 -1
- package/dist/wizard/summary-step.js +3 -2
- package/dist/wizard/summary-step.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/init.js
CHANGED
|
@@ -54,12 +54,13 @@ export default function InitCommand() {
|
|
|
54
54
|
const { setError } = useErrorContext();
|
|
55
55
|
const [steps, setSteps] = useState([...INITIAL_STEPS]);
|
|
56
56
|
const [isSaving, setIsSaving] = useState(false);
|
|
57
|
+
const [initResult, setInitResult] = useState(null);
|
|
57
58
|
if (isSaving || !config) {
|
|
58
59
|
return (React.createElement(Spinner, { label: "Saving configuration and doing initial pull..." }));
|
|
59
60
|
}
|
|
60
61
|
const currentStep = steps[0];
|
|
61
62
|
if (!currentStep) {
|
|
62
|
-
return React.createElement(SummaryStep,
|
|
63
|
+
return React.createElement(SummaryStep, { aiAlreadyInitialized: initResult?.aiAlreadyInitialized ?? false });
|
|
63
64
|
}
|
|
64
65
|
const { capability, label } = STEP_MAP[currentStep];
|
|
65
66
|
return (React.createElement(ProviderStep, { key: currentStep, capability: capability, label: label, onComplete: (plugin, data) => {
|
|
@@ -100,7 +101,8 @@ export default function InitCommand() {
|
|
|
100
101
|
setError(e);
|
|
101
102
|
})
|
|
102
103
|
.then(() => initializeEnvironment(updatedConfig))
|
|
103
|
-
.then(
|
|
104
|
+
.then(result => {
|
|
105
|
+
setInitResult(result);
|
|
104
106
|
setIsSaving(false);
|
|
105
107
|
setSteps([]);
|
|
106
108
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../source/commands/init.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AACtC,OAAO,EAAC,IAAI,EAAE,GAAG,EAAC,MAAM,KAAK,CAAC;AAC9B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAC/D,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAC,uBAAuB,EAAE,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../source/commands/init.tsx"],"names":[],"mappings":"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"}
|
package/dist/commands/pull.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
|
-
import { Text } from 'ink';
|
|
2
|
+
import { Text, useApp } from 'ink';
|
|
3
3
|
import '../plugins/index.js';
|
|
4
4
|
import Spinner from '../ui/spinner.js';
|
|
5
5
|
import { useConfigContext } from '../contexts/config-context.js';
|
|
6
6
|
import { pullTickets, pullSpecs } from '../helpers/pull.js';
|
|
7
7
|
const PHASE_FLOW = ['tickets', 'specs', 'done'];
|
|
8
8
|
export default function PullCommand({ dryRun, tickets, specs, updateLocal, }) {
|
|
9
|
+
const { exit } = useApp();
|
|
9
10
|
const [phases, setPhases] = useState([...PHASE_FLOW]);
|
|
10
11
|
const [error, setError] = useState(null);
|
|
11
12
|
useEffect(() => {
|
|
@@ -19,6 +20,18 @@ export default function PullCommand({ dryRun, tickets, specs, updateLocal, }) {
|
|
|
19
20
|
setPhases(['done']);
|
|
20
21
|
}
|
|
21
22
|
}, [tickets, specs]);
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
if (phases[0] === 'done') {
|
|
25
|
+
exit();
|
|
26
|
+
process.exit(0);
|
|
27
|
+
}
|
|
28
|
+
}, [phases, exit]);
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
if (error) {
|
|
31
|
+
exit(error);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
34
|
+
}, [error, exit]);
|
|
22
35
|
if (error) {
|
|
23
36
|
return React.createElement(Text, { color: "red" },
|
|
24
37
|
"Error during pull: ",
|
|
@@ -40,22 +53,26 @@ function RenderPhase({ phase, onNextPhase, onError, isDryRun, shouldUpdateLocal,
|
|
|
40
53
|
}
|
|
41
54
|
function TicketSync({ onNextPhase, onError, isDryRun, shouldUpdateLocal, }) {
|
|
42
55
|
const { config } = useConfigContext();
|
|
56
|
+
const [progress, setProgress] = useState('Syncing tickets...');
|
|
43
57
|
useEffect(() => {
|
|
44
58
|
pullTickets(config, {
|
|
45
59
|
dryRun: isDryRun,
|
|
46
60
|
updateLocal: shouldUpdateLocal,
|
|
61
|
+
onProgress: setProgress,
|
|
47
62
|
}).then(onNextPhase, onError);
|
|
48
63
|
}, [config, isDryRun, shouldUpdateLocal, onNextPhase, onError]);
|
|
49
|
-
return React.createElement(Spinner, { label:
|
|
64
|
+
return React.createElement(Spinner, { label: progress });
|
|
50
65
|
}
|
|
51
66
|
function SpecSync({ onNextPhase, onError, isDryRun, shouldUpdateLocal, }) {
|
|
52
67
|
const { config } = useConfigContext();
|
|
68
|
+
const [progress, setProgress] = useState('Syncing specs...');
|
|
53
69
|
useEffect(() => {
|
|
54
70
|
pullSpecs(config, {
|
|
55
71
|
dryRun: isDryRun,
|
|
56
72
|
updateLocal: shouldUpdateLocal,
|
|
73
|
+
onProgress: setProgress,
|
|
57
74
|
}).then(onNextPhase, onError);
|
|
58
75
|
}, [config, isDryRun, shouldUpdateLocal, onNextPhase, onError]);
|
|
59
|
-
return React.createElement(Spinner, { label:
|
|
76
|
+
return React.createElement(Spinner, { label: progress });
|
|
60
77
|
}
|
|
61
78
|
//# sourceMappingURL=pull.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../source/commands/pull.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AACjD,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../source/commands/pull.tsx"],"names":[],"mappings":"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"}
|
package/dist/helpers/init.d.ts
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
import type { HaiConfig } from '../schemas/config.js';
|
|
2
|
-
export
|
|
2
|
+
export type InitResult = {
|
|
3
|
+
aiAlreadyInitialized: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare function initializeEnvironment(config: HaiConfig): Promise<InitResult>;
|
package/dist/helpers/init.js
CHANGED
|
@@ -3,16 +3,29 @@ import { ensureDir } from '../helpers/fs.js';
|
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { resolveAiProvider } from '../plugins/resolve.js';
|
|
5
5
|
import { pullAll } from '../helpers/pull.js';
|
|
6
|
+
import { findPluginForCapability } from '../schemas/config.js';
|
|
7
|
+
import { readMainConfig, writeMainConfig, isProviderInitialized, addInitializedProvider, } from './main-config.js';
|
|
6
8
|
export async function initializeEnvironment(config) {
|
|
7
9
|
await runPreflightChecks({
|
|
8
|
-
gitIgnoreEntriesMustBeSatisfied: false
|
|
10
|
+
gitIgnoreEntriesMustBeSatisfied: false,
|
|
9
11
|
});
|
|
10
12
|
const cwd = process.cwd();
|
|
11
13
|
await ensureDir(join(cwd, '.ai', 'tickets'));
|
|
12
14
|
await ensureDir(join(cwd, '.ai', 'specs'));
|
|
13
|
-
const
|
|
14
|
-
await
|
|
15
|
+
const aiEntry = findPluginForCapability(config, 'ai');
|
|
16
|
+
let mainConfig = await readMainConfig();
|
|
17
|
+
let aiAlreadyInitialized = false;
|
|
18
|
+
if (aiEntry && !isProviderInitialized(mainConfig, aiEntry.plugin)) {
|
|
19
|
+
const aiProvider = resolveAiProvider(config);
|
|
20
|
+
await aiProvider.install(cwd);
|
|
21
|
+
mainConfig = addInitializedProvider(mainConfig, aiEntry.plugin);
|
|
22
|
+
}
|
|
23
|
+
else if (aiEntry) {
|
|
24
|
+
aiAlreadyInitialized = true;
|
|
25
|
+
}
|
|
26
|
+
await writeMainConfig(mainConfig);
|
|
15
27
|
await ensureGitignoreEntries();
|
|
16
28
|
await pullAll(config);
|
|
29
|
+
return { aiAlreadyInitialized };
|
|
17
30
|
}
|
|
18
31
|
//# sourceMappingURL=init.js.map
|
package/dist/helpers/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../source/helpers/init.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../source/helpers/init.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sBAAsB,EACtB,kBAAkB,GAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAC,uBAAuB,EAAC,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACN,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,sBAAsB,GACtB,MAAM,kBAAkB,CAAC;AAM1B,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,MAAiB;IAC5D,MAAM,kBAAkB,CAAC;QACxB,+BAA+B,EAAE,KAAK;KACtC,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7C,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,IAAI,UAAU,GAAG,MAAM,cAAc,EAAE,CAAC;IAExC,IAAI,oBAAoB,GAAG,KAAK,CAAC;IAEjC,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,UAAU,GAAG,sBAAsB,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACpB,oBAAoB,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IAClC,MAAM,sBAAsB,EAAE,CAAC;IAE/B,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,OAAO,EAAC,oBAAoB,EAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { HaiMainConfig } from '../schemas/main-config.js';
|
|
2
|
+
export declare function readMainConfig(path?: string): Promise<HaiMainConfig>;
|
|
3
|
+
export declare function writeMainConfig(config: HaiMainConfig, path?: string): Promise<void>;
|
|
4
|
+
export declare function isProviderInitialized(config: HaiMainConfig, providerId: string): boolean;
|
|
5
|
+
export declare function addInitializedProvider(config: HaiMainConfig, providerId: string): HaiMainConfig;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { join } from 'node:path';
|
|
2
|
+
import { readJsonFileSafe, writeJsonFile } from './fs.js';
|
|
3
|
+
import { HaiMainConfigSchema } from '../schemas/main-config.js';
|
|
4
|
+
const DEFAULT_MAIN_CONFIG_FILENAME = 'hai.main.json';
|
|
5
|
+
function defaultPath(path) {
|
|
6
|
+
return path ?? join(process.cwd(), DEFAULT_MAIN_CONFIG_FILENAME);
|
|
7
|
+
}
|
|
8
|
+
export async function readMainConfig(path) {
|
|
9
|
+
const filePath = defaultPath(path);
|
|
10
|
+
const data = await readJsonFileSafe(filePath);
|
|
11
|
+
return HaiMainConfigSchema.parse(data);
|
|
12
|
+
}
|
|
13
|
+
export async function writeMainConfig(config, path) {
|
|
14
|
+
const filePath = defaultPath(path);
|
|
15
|
+
await writeJsonFile(filePath, config);
|
|
16
|
+
}
|
|
17
|
+
export function isProviderInitialized(config, providerId) {
|
|
18
|
+
return config.initializedProviders.includes(providerId);
|
|
19
|
+
}
|
|
20
|
+
export function addInitializedProvider(config, providerId) {
|
|
21
|
+
if (config.initializedProviders.includes(providerId)) {
|
|
22
|
+
return config;
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
...config,
|
|
26
|
+
initializedProviders: [...config.initializedProviders, providerId],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=main-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main-config.js","sourceRoot":"","sources":["../../source/helpers/main-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AACxD,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAG9D,MAAM,4BAA4B,GAAG,eAAe,CAAC;AAErD,SAAS,WAAW,CAAC,IAAa;IACjC,OAAO,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,4BAA4B,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAa;IACjD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,MAAqB,EACrB,IAAa;IAEb,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,MAAqB,EACrB,UAAkB;IAElB,OAAO,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACrC,MAAqB,EACrB,UAAkB;IAElB,IAAI,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,OAAO;QACN,GAAG,MAAM;QACT,oBAAoB,EAAE,CAAC,GAAG,MAAM,CAAC,oBAAoB,EAAE,UAAU,CAAC;KAClE,CAAC;AACH,CAAC"}
|
package/dist/helpers/pull.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { HaiConfig } from '../schemas/config.js';
|
|
|
2
2
|
type PullOptions = {
|
|
3
3
|
dryRun?: boolean;
|
|
4
4
|
updateLocal?: boolean;
|
|
5
|
+
onProgress?: (message: string) => void;
|
|
5
6
|
};
|
|
6
7
|
export declare function pullTickets(config: HaiConfig, options?: PullOptions): Promise<void>;
|
|
7
8
|
export declare function pullSpecs(config: HaiConfig, options?: PullOptions): Promise<void>;
|
package/dist/helpers/pull.js
CHANGED
|
@@ -11,6 +11,7 @@ export async function pullTickets(config, options = {}) {
|
|
|
11
11
|
await provider.sync(destPath, {
|
|
12
12
|
dryRun: options.dryRun ?? false,
|
|
13
13
|
updateLocal: options.updateLocal ?? false,
|
|
14
|
+
onProgress: options.onProgress,
|
|
14
15
|
});
|
|
15
16
|
if (!options.dryRun) {
|
|
16
17
|
await generateIndex(aiDir, destPath, 'Ticket Index', 'ticket-index.md');
|
|
@@ -25,6 +26,7 @@ export async function pullSpecs(config, options = {}) {
|
|
|
25
26
|
await provider.sync(destPath, {
|
|
26
27
|
dryRun: options.dryRun ?? false,
|
|
27
28
|
updateLocal: options.updateLocal ?? false,
|
|
29
|
+
onProgress: options.onProgress,
|
|
28
30
|
});
|
|
29
31
|
if (!options.dryRun) {
|
|
30
32
|
await generateIndex(aiDir, destPath, 'Specifications Index', 'specification-index.md');
|
package/dist/helpers/pull.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../source/helpers/pull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEzC,OAAO,EACN,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,GACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,WAAW,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../source/helpers/pull.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export declare class ConfluenceProvider implements SpecProvider {
|
|
|
10
10
|
private readonly ancestor?;
|
|
11
11
|
constructor(config: ConfluenceProviderConfig, spaces: string[], ancestor?: string);
|
|
12
12
|
fetchSpaces(): Promise<Space[]>;
|
|
13
|
-
fetchPages(spaceKey: string, ancestorTitle?: string): Promise<SpecPage[]>;
|
|
13
|
+
fetchPages(spaceKey: string, ancestorTitle?: string, onProgress?: (message: string) => void): Promise<SpecPage[]>;
|
|
14
14
|
sync(destPath: string, options?: SyncOptions): Promise<SyncResult>;
|
|
15
15
|
private static sanitizeFilename;
|
|
16
16
|
private static buildFilePath;
|
|
@@ -37,6 +37,7 @@ export class ConfluenceProvider {
|
|
|
37
37
|
}
|
|
38
38
|
async fetchSpaces() {
|
|
39
39
|
const allSpaces = [];
|
|
40
|
+
const seen = new Set();
|
|
40
41
|
let start = 0;
|
|
41
42
|
const limit = 250;
|
|
42
43
|
while (true) {
|
|
@@ -44,20 +45,22 @@ export class ConfluenceProvider {
|
|
|
44
45
|
start,
|
|
45
46
|
limit,
|
|
46
47
|
}));
|
|
48
|
+
let added = 0;
|
|
47
49
|
for (const s of data.results) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
});
|
|
50
|
+
const id = String(s.id);
|
|
51
|
+
if (seen.has(id))
|
|
52
|
+
continue;
|
|
53
|
+
seen.add(id);
|
|
54
|
+
allSpaces.push({ id, key: s.key, name: s.name });
|
|
55
|
+
added++;
|
|
53
56
|
}
|
|
54
|
-
if (data.
|
|
57
|
+
if (added === 0 || !data._links?.next)
|
|
55
58
|
break;
|
|
56
|
-
start +=
|
|
59
|
+
start += data.results.length;
|
|
57
60
|
}
|
|
58
61
|
return allSpaces;
|
|
59
62
|
}
|
|
60
|
-
async fetchPages(spaceKey, ancestorTitle) {
|
|
63
|
+
async fetchPages(spaceKey, ancestorTitle, onProgress) {
|
|
61
64
|
let ancestorId;
|
|
62
65
|
if (ancestorTitle) {
|
|
63
66
|
ancestorId = await this.findPageByTitle(spaceKey, ancestorTitle);
|
|
@@ -65,7 +68,7 @@ export class ConfluenceProvider {
|
|
|
65
68
|
throw new Error(`Ancestor page not found: "${ancestorTitle}" in space ${spaceKey}`);
|
|
66
69
|
}
|
|
67
70
|
}
|
|
68
|
-
const pages = await this.fetchAllPages(spaceKey, ancestorId);
|
|
71
|
+
const pages = await this.fetchAllPages(spaceKey, ancestorId, onProgress);
|
|
69
72
|
const specPages = [];
|
|
70
73
|
for (const page of pages) {
|
|
71
74
|
let bodyMarkdown = '';
|
|
@@ -104,6 +107,7 @@ export class ConfluenceProvider {
|
|
|
104
107
|
}
|
|
105
108
|
async sync(destPath, options) {
|
|
106
109
|
const dryRun = options?.dryRun ?? false;
|
|
110
|
+
const onProgress = options?.onProgress;
|
|
107
111
|
const result = {
|
|
108
112
|
downloaded: [],
|
|
109
113
|
updated: [],
|
|
@@ -112,7 +116,8 @@ export class ConfluenceProvider {
|
|
|
112
116
|
// Fetch pages from all configured spaces
|
|
113
117
|
const pages = [];
|
|
114
118
|
for (const space of this.spaces) {
|
|
115
|
-
|
|
119
|
+
onProgress?.(`Fetching pages from ${space}...`);
|
|
120
|
+
const spacePages = await this.fetchPages(space, this.ancestor, onProgress);
|
|
116
121
|
pages.push(...spacePages);
|
|
117
122
|
}
|
|
118
123
|
// Build map of target file paths
|
|
@@ -127,7 +132,10 @@ export class ConfluenceProvider {
|
|
|
127
132
|
localFiles.add(filePath);
|
|
128
133
|
}
|
|
129
134
|
// Download new / update existing
|
|
135
|
+
const total = targetPaths.size;
|
|
136
|
+
let processed = 0;
|
|
130
137
|
for (const [filePath, page] of targetPaths) {
|
|
138
|
+
processed++;
|
|
131
139
|
const rendered = ConfluenceProvider.renderSpecPage(page);
|
|
132
140
|
if (!localFiles.has(filePath)) {
|
|
133
141
|
if (!dryRun) {
|
|
@@ -135,6 +143,7 @@ export class ConfluenceProvider {
|
|
|
135
143
|
await writeFile(filePath, rendered, 'utf-8');
|
|
136
144
|
}
|
|
137
145
|
result.downloaded.push(page.title);
|
|
146
|
+
onProgress?.(`Writing ${processed}/${total}: ${page.title}`);
|
|
138
147
|
}
|
|
139
148
|
else {
|
|
140
149
|
const localContent = await readFile(filePath, 'utf-8');
|
|
@@ -145,6 +154,7 @@ export class ConfluenceProvider {
|
|
|
145
154
|
await writeFile(filePath, rendered, 'utf-8');
|
|
146
155
|
}
|
|
147
156
|
result.updated.push(page.title);
|
|
157
|
+
onProgress?.(`Updating ${processed}/${total}: ${page.title}`);
|
|
148
158
|
}
|
|
149
159
|
localFiles.delete(filePath);
|
|
150
160
|
}
|
|
@@ -194,14 +204,15 @@ export class ConfluenceProvider {
|
|
|
194
204
|
static isRemoteNewer(remoteDate, localDate) {
|
|
195
205
|
return remoteDate >= localDate;
|
|
196
206
|
}
|
|
197
|
-
async fetchAllPages(spaceKey, ancestorId) {
|
|
207
|
+
async fetchAllPages(spaceKey, ancestorId, onProgress) {
|
|
198
208
|
if (ancestorId) {
|
|
199
|
-
return this.fetchDescendants(ancestorId);
|
|
209
|
+
return this.fetchDescendants(ancestorId, onProgress);
|
|
200
210
|
}
|
|
201
|
-
return this.fetchSpacePages(spaceKey);
|
|
211
|
+
return this.fetchSpacePages(spaceKey, onProgress);
|
|
202
212
|
}
|
|
203
|
-
async fetchSpacePages(spaceKey) {
|
|
213
|
+
async fetchSpacePages(spaceKey, onProgress) {
|
|
204
214
|
const allPages = [];
|
|
215
|
+
const seen = new Set();
|
|
205
216
|
let start = 0;
|
|
206
217
|
const limit = 250;
|
|
207
218
|
while (true) {
|
|
@@ -212,15 +223,24 @@ export class ConfluenceProvider {
|
|
|
212
223
|
start,
|
|
213
224
|
limit,
|
|
214
225
|
}));
|
|
215
|
-
|
|
216
|
-
|
|
226
|
+
let added = 0;
|
|
227
|
+
for (const item of data.results) {
|
|
228
|
+
if (seen.has(item.id))
|
|
229
|
+
continue;
|
|
230
|
+
seen.add(item.id);
|
|
231
|
+
allPages.push(item);
|
|
232
|
+
added++;
|
|
233
|
+
}
|
|
234
|
+
onProgress?.(`Fetching pages from ${spaceKey}: ${allPages.length} so far`);
|
|
235
|
+
if (added === 0 || !data._links?.next)
|
|
217
236
|
break;
|
|
218
|
-
start +=
|
|
237
|
+
start += data.results.length;
|
|
219
238
|
}
|
|
220
239
|
return allPages;
|
|
221
240
|
}
|
|
222
|
-
async fetchDescendants(ancestorId) {
|
|
241
|
+
async fetchDescendants(ancestorId, onProgress) {
|
|
223
242
|
const allPages = [];
|
|
243
|
+
const seen = new Set();
|
|
224
244
|
let start = 0;
|
|
225
245
|
const limit = 250;
|
|
226
246
|
while (true) {
|
|
@@ -231,10 +251,18 @@ export class ConfluenceProvider {
|
|
|
231
251
|
start,
|
|
232
252
|
limit,
|
|
233
253
|
}));
|
|
234
|
-
|
|
235
|
-
|
|
254
|
+
let added = 0;
|
|
255
|
+
for (const item of data.results) {
|
|
256
|
+
if (seen.has(item.id))
|
|
257
|
+
continue;
|
|
258
|
+
seen.add(item.id);
|
|
259
|
+
allPages.push(item);
|
|
260
|
+
added++;
|
|
261
|
+
}
|
|
262
|
+
onProgress?.(`Fetching pages: ${allPages.length} so far`);
|
|
263
|
+
if (added === 0 || !data._links?.next)
|
|
236
264
|
break;
|
|
237
|
-
start +=
|
|
265
|
+
start += data.results.length;
|
|
238
266
|
}
|
|
239
267
|
return allPages;
|
|
240
268
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confluence-client.js","sourceRoot":"","sources":["../../../source/plugins/atlassian/confluence-client.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"confluence-client.js","sourceRoot":"","sources":["../../../source/plugins/atlassian/confluence-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main-config.js","sourceRoot":"","sources":["../../source/schemas/main-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACrD,CAAC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ function capabilitySummary(config, capability) {
|
|
|
19
19
|
return `${entry.plugin}: (unknown)`;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
export default function SummaryStep() {
|
|
22
|
+
export default function SummaryStep({ aiAlreadyInitialized }) {
|
|
23
23
|
const { config } = useConfigContext();
|
|
24
24
|
if (!config) {
|
|
25
25
|
return null;
|
|
@@ -32,7 +32,8 @@ export default function SummaryStep() {
|
|
|
32
32
|
React.createElement(Newline, null),
|
|
33
33
|
aiSummary && React.createElement(Text, null,
|
|
34
34
|
"* AI Provider: ",
|
|
35
|
-
aiSummary
|
|
35
|
+
aiSummary,
|
|
36
|
+
aiAlreadyInitialized && React.createElement(Text, { color: "yellow" }, " (already initialized \u2014 skipped reinstall)")),
|
|
36
37
|
ticketSummary && React.createElement(Text, null,
|
|
37
38
|
"* Ticket Provider: ",
|
|
38
39
|
ticketSummary),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summary-step.js","sourceRoot":"","sources":["../../source/wizard/summary-step.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,KAAK,CAAC;AAEvC,OAAO,EAAC,uBAAuB,EAAE,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAC,gBAAgB,EAAC,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAE7C,SAAS,iBAAiB,CACzB,MAAiB,EACjB,UAA0B;IAE1B,MAAM,KAAK,GAAG,uBAAuB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,GAAG,KAAK,CAAC,MAAM,aAAa,CAAC;IACrC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,WAAW;
|
|
1
|
+
{"version":3,"file":"summary-step.js","sourceRoot":"","sources":["../../source/wizard/summary-step.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@2amtech/hai",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "Helper AI (HAI) is an AI environment initializer setting up a standardized AI workflow supporting multiple AI providers.",
|
|
6
6
|
"author": "Aleksandar Panic",
|