@git.zone/tsdoc 1.11.1 → 1.11.3
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_ts/aidocs_classes/commit.js +65 -42
- package/dist_ts/aidocs_classes/description.js +68 -29
- package/dist_ts/aidocs_classes/projectcontext.d.ts +5 -5
- package/dist_ts/aidocs_classes/projectcontext.js +8 -16
- package/dist_ts/aidocs_classes/readme.js +156 -88
- package/dist_ts/classes.aidoc.d.ts +10 -6
- package/dist_ts/classes.aidoc.js +17 -11
- package/dist_ts/classes.diffprocessor.js +284 -0
- package/dist_ts/cli.js +21 -92
- package/dist_ts/plugins.d.ts +1 -2
- package/dist_ts/plugins.js +2 -3
- package/package.json +2 -3
- package/ts/aidocs_classes/commit.ts +67 -51
- package/ts/aidocs_classes/description.ts +72 -34
- package/ts/aidocs_classes/projectcontext.ts +7 -14
- package/ts/aidocs_classes/readme.ts +168 -93
- package/ts/classes.aidoc.ts +18 -11
- package/ts/cli.ts +20 -100
- package/ts/plugins.ts +1 -2
- package/dist_ts/context/config-manager.d.ts +0 -83
- package/dist_ts/context/config-manager.js +0 -318
- package/dist_ts/context/context-analyzer.d.ts +0 -73
- package/dist_ts/context/context-analyzer.js +0 -311
- package/dist_ts/context/context-cache.d.ts +0 -73
- package/dist_ts/context/context-cache.js +0 -239
- package/dist_ts/context/context-trimmer.d.ts +0 -60
- package/dist_ts/context/context-trimmer.js +0 -258
- package/dist_ts/context/diff-processor.js +0 -284
- package/dist_ts/context/enhanced-context.d.ts +0 -73
- package/dist_ts/context/enhanced-context.js +0 -275
- package/dist_ts/context/index.d.ts +0 -11
- package/dist_ts/context/index.js +0 -12
- package/dist_ts/context/iterative-context-builder.d.ts +0 -62
- package/dist_ts/context/iterative-context-builder.js +0 -395
- package/dist_ts/context/lazy-file-loader.d.ts +0 -60
- package/dist_ts/context/lazy-file-loader.js +0 -182
- package/dist_ts/context/task-context-factory.d.ts +0 -48
- package/dist_ts/context/task-context-factory.js +0 -86
- package/dist_ts/context/types.d.ts +0 -301
- package/dist_ts/context/types.js +0 -2
- package/dist_ts/tsdoc.classes.typedoc.d.ts +0 -10
- package/dist_ts/tsdoc.classes.typedoc.js +0 -48
- package/dist_ts/tsdoc.cli.d.ts +0 -1
- package/dist_ts/tsdoc.cli.js +0 -32
- package/dist_ts/tsdoc.logging.d.ts +0 -2
- package/dist_ts/tsdoc.logging.js +0 -14
- package/dist_ts/tsdoc.paths.d.ts +0 -8
- package/dist_ts/tsdoc.paths.js +0 -12
- package/dist_ts/tsdoc.plugins.d.ts +0 -11
- package/dist_ts/tsdoc.plugins.js +0 -15
- package/ts/context/config-manager.ts +0 -369
- package/ts/context/context-analyzer.ts +0 -391
- package/ts/context/context-cache.ts +0 -286
- package/ts/context/context-trimmer.ts +0 -310
- package/ts/context/enhanced-context.ts +0 -332
- package/ts/context/index.ts +0 -70
- package/ts/context/iterative-context-builder.ts +0 -512
- package/ts/context/lazy-file-loader.ts +0 -207
- package/ts/context/task-context-factory.ts +0 -120
- package/ts/context/types.ts +0 -324
- /package/dist_ts/{context/diff-processor.d.ts → classes.diffprocessor.d.ts} +0 -0
- /package/ts/{context/diff-processor.ts → classes.diffprocessor.ts} +0 -0
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tsdoc.plugins.js';
|
|
2
|
-
import * as paths from './tsdoc.paths.js';
|
|
3
|
-
export class TypeDoc {
|
|
4
|
-
constructor(dirPathArg) {
|
|
5
|
-
this.smartshellInstance = new plugins.smartshell.Smartshell({
|
|
6
|
-
executor: 'bash',
|
|
7
|
-
pathDirectories: [paths.binDir],
|
|
8
|
-
});
|
|
9
|
-
this.typedocDirectory = dirPathArg;
|
|
10
|
-
}
|
|
11
|
-
// Static
|
|
12
|
-
static async isTypeDocDir(dirPathArg) {
|
|
13
|
-
return true;
|
|
14
|
-
}
|
|
15
|
-
async compile(options) {
|
|
16
|
-
const data = {
|
|
17
|
-
compilerOptions: {
|
|
18
|
-
"experimentalDecorators": true,
|
|
19
|
-
"useDefineForClassFields": false,
|
|
20
|
-
"target": "ES2022",
|
|
21
|
-
"module": "ES2022",
|
|
22
|
-
"moduleResolution": "nodenext",
|
|
23
|
-
"skipLibCheck": true,
|
|
24
|
-
"allowSyntheticDefaultImports": true,
|
|
25
|
-
},
|
|
26
|
-
include: [],
|
|
27
|
-
};
|
|
28
|
-
let startDirectory = '';
|
|
29
|
-
if (plugins.smartfile.fs.isDirectory(plugins.path.join(paths.cwd, './ts'))) {
|
|
30
|
-
data.include.push(plugins.path.join(paths.cwd, './ts/**/*'));
|
|
31
|
-
startDirectory = 'ts';
|
|
32
|
-
}
|
|
33
|
-
if (plugins.smartfile.fs.isDirectory(plugins.path.join(paths.cwd, './ts_web'))) {
|
|
34
|
-
data.include.push(plugins.path.join(paths.cwd, './ts_web/**/*'));
|
|
35
|
-
if (!startDirectory) {
|
|
36
|
-
startDirectory = 'ts_web';
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
await plugins.smartfile.memory.toFs(JSON.stringify(data), paths.tsconfigFile);
|
|
40
|
-
let targetDir = paths.publicDir;
|
|
41
|
-
if (options?.publicSubdir) {
|
|
42
|
-
targetDir = plugins.path.join(targetDir, options.publicSubdir);
|
|
43
|
-
}
|
|
44
|
-
await this.smartshellInstance.exec(`typedoc --tsconfig ${paths.tsconfigFile} --out ${targetDir} ${startDirectory}/index.ts`);
|
|
45
|
-
plugins.smartfile.fs.remove(paths.tsconfigFile);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNkb2MuY2xhc3Nlcy50eXBlZG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvdHNkb2MuY2xhc3Nlcy50eXBlZG9jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sb0JBQW9CLENBQUM7QUFDOUMsT0FBTyxLQUFLLEtBQUssTUFBTSxrQkFBa0IsQ0FBQztBQUUxQyxNQUFNLE9BQU8sT0FBTztJQWFsQixZQUFZLFVBQVU7UUFaZix1QkFBa0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO1lBQzVELFFBQVEsRUFBRSxNQUFNO1lBQ2hCLGVBQWUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7U0FDaEMsQ0FBQyxDQUFDO1FBVUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFVBQVUsQ0FBQztJQUNyQyxDQUFDO0lBVEQsU0FBUztJQUNGLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQWtCO1FBQ2pELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQVFNLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBbUM7UUFDdEQsTUFBTSxJQUFJLEdBQUc7WUFDWCxlQUFlLEVBQUU7Z0JBQ2Ysd0JBQXdCLEVBQUUsSUFBSTtnQkFDOUIseUJBQXlCLEVBQUUsS0FBSztnQkFDaEMsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixrQkFBa0IsRUFBRSxVQUFVO2dCQUM5QixjQUFjLEVBQUUsSUFBSTtnQkFDcEIsOEJBQThCLEVBQUUsSUFBSTthQUNyQztZQUNELE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQztRQUNGLElBQUksY0FBYyxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEVBQUU7WUFDMUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzdELGNBQWMsR0FBRyxJQUFJLENBQUM7U0FDdkI7UUFFRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEVBQUU7WUFDOUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ25CLGNBQWMsR0FBRyxRQUFRLENBQUM7YUFDM0I7U0FDRjtRQUVELE1BQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlFLElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDaEMsSUFBSSxPQUFPLEVBQUUsWUFBWSxFQUFFO1lBQ3pCLFNBQVMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ2hFO1FBQ0QsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUNoQyxzQkFBc0IsS0FBSyxDQUFDLFlBQVksVUFBVSxTQUFTLElBQUksY0FBYyxXQUFXLENBQ3pGLENBQUM7UUFDRixPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDRiJ9
|
package/dist_ts/tsdoc.cli.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const run: () => Promise<void>;
|
package/dist_ts/tsdoc.cli.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tsdoc.plugins.js';
|
|
2
|
-
import * as paths from './tsdoc.paths.js';
|
|
3
|
-
import { logger } from './tsdoc.logging.js';
|
|
4
|
-
import { TypeDoc } from './tsdoc.classes.typedoc.js';
|
|
5
|
-
export const run = async () => {
|
|
6
|
-
const tsdocCli = new plugins.smartcli.Smartcli();
|
|
7
|
-
tsdocCli.standardCommand().subscribe(async (argvArg) => {
|
|
8
|
-
logger.log('warn', `Auto detecting environment!`);
|
|
9
|
-
switch (true) {
|
|
10
|
-
case await TypeDoc.isTypeDocDir(paths.cwd):
|
|
11
|
-
logger.log('ok', `Detected TypeDoc compliant directory at ${paths.cwd}`);
|
|
12
|
-
tsdocCli.triggerCommand('typedoc', argvArg);
|
|
13
|
-
break;
|
|
14
|
-
default:
|
|
15
|
-
logger.log('error', `Cannot determine docs format at ${paths.cwd}`);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
tsdocCli.addCommand('typedoc').subscribe(async (argvArg) => {
|
|
19
|
-
const typeDocInstance = new TypeDoc(paths.cwd);
|
|
20
|
-
await typeDocInstance.compile({
|
|
21
|
-
publicSubdir: argvArg.publicSubdir,
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
tsdocCli.addCommand('test').subscribe((argvArg) => {
|
|
25
|
-
tsdocCli.triggerCommand('typedoc', argvArg);
|
|
26
|
-
process.on('exit', async () => {
|
|
27
|
-
await plugins.smartfile.fs.remove(paths.publicDir);
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
tsdocCli.startParse();
|
|
31
|
-
};
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNkb2MuY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvdHNkb2MuY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sb0JBQW9CLENBQUM7QUFDOUMsT0FBTyxLQUFLLEtBQUssTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXJELE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxLQUFLLElBQUksRUFBRTtJQUM1QixNQUFNLFFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFakQsUUFBUSxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDckQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztRQUNsRCxRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssTUFBTSxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ3hDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLDJDQUEyQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDekUsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzVDLE1BQU07WUFDUjtnQkFDRSxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxtQ0FBbUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7U0FDdkU7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtRQUN6RCxNQUFNLGVBQWUsR0FBRyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0MsTUFBTSxlQUFlLENBQUMsT0FBTyxDQUFDO1lBQzVCLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtTQUNuQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDaEQsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDNUIsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7QUFDeEIsQ0FBQyxDQUFDIn0=
|
package/dist_ts/tsdoc.logging.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tsdoc.plugins.js';
|
|
2
|
-
export const logger = new plugins.smartlog.Smartlog({
|
|
3
|
-
logContext: {
|
|
4
|
-
company: 'Some Company',
|
|
5
|
-
companyunit: 'Some CompanyUnit',
|
|
6
|
-
containerName: 'Some Containername',
|
|
7
|
-
environment: 'local',
|
|
8
|
-
runtime: 'node',
|
|
9
|
-
zone: 'gitzone',
|
|
10
|
-
},
|
|
11
|
-
minimumLogLevel: 'silly',
|
|
12
|
-
});
|
|
13
|
-
logger.addLogDestination(new plugins.smartlogDestinationLocal.DestinationLocal());
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNkb2MubG9nZ2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3RzZG9jLmxvZ2dpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUNsRCxVQUFVLEVBQUU7UUFDVixPQUFPLEVBQUUsY0FBYztRQUN2QixXQUFXLEVBQUUsa0JBQWtCO1FBQy9CLGFBQWEsRUFBRSxvQkFBb0I7UUFDbkMsV0FBVyxFQUFFLE9BQU87UUFDcEIsT0FBTyxFQUFFLE1BQU07UUFDZixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELGVBQWUsRUFBRSxPQUFPO0NBQ3pCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMifQ==
|
package/dist_ts/tsdoc.paths.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare const packageDir: string;
|
|
2
|
-
export declare const cwd: string;
|
|
3
|
-
export declare const binDir: string;
|
|
4
|
-
export declare const assetsDir: string;
|
|
5
|
-
export declare const publicDir: string;
|
|
6
|
-
export declare const tsDir: string;
|
|
7
|
-
export declare const tsconfigFile: string;
|
|
8
|
-
export declare const typedocOptionsFile: string;
|
package/dist_ts/tsdoc.paths.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tsdoc.plugins.js';
|
|
2
|
-
// dirs
|
|
3
|
-
export const packageDir = plugins.path.join(plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url), '../');
|
|
4
|
-
export const cwd = process.cwd();
|
|
5
|
-
export const binDir = plugins.path.join(packageDir, './node_modules/.bin');
|
|
6
|
-
export const assetsDir = plugins.path.join(packageDir, './assets');
|
|
7
|
-
export const publicDir = plugins.path.join(cwd, './public');
|
|
8
|
-
export const tsDir = plugins.path.join(cwd, './ts');
|
|
9
|
-
// files
|
|
10
|
-
export const tsconfigFile = plugins.path.join(assetsDir, './tsconfig.json');
|
|
11
|
-
export const typedocOptionsFile = plugins.path.join(assetsDir, './typedoc.json');
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNkb2MucGF0aHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90c2RvYy5wYXRocy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBRTlDLE9BQU87QUFDUCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNwSCxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBQ2pDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUscUJBQXFCLENBQUMsQ0FBQztBQUMzRSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDNUQsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUVwRCxRQUFRO0FBQ1IsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQzVFLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDIn0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import * as path from 'path';
|
|
2
|
-
export { path };
|
|
3
|
-
import * as smartcli from '@pushrocks/smartcli';
|
|
4
|
-
import * as smartfile from '@pushrocks/smartfile';
|
|
5
|
-
import * as smartlog from '@pushrocks/smartlog';
|
|
6
|
-
import * as smartlogDestinationLocal from '@pushrocks/smartlog-destination-local';
|
|
7
|
-
import * as smartpath from '@pushrocks/smartpath';
|
|
8
|
-
import * as smartshell from '@pushrocks/smartshell';
|
|
9
|
-
export { smartcli, smartfile, smartlog, smartlogDestinationLocal, smartpath, smartshell };
|
|
10
|
-
import * as typedoc from 'typedoc';
|
|
11
|
-
export { typedoc };
|
package/dist_ts/tsdoc.plugins.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// node native
|
|
2
|
-
import * as path from 'path';
|
|
3
|
-
export { path };
|
|
4
|
-
// pushrocks scope
|
|
5
|
-
import * as smartcli from '@pushrocks/smartcli';
|
|
6
|
-
import * as smartfile from '@pushrocks/smartfile';
|
|
7
|
-
import * as smartlog from '@pushrocks/smartlog';
|
|
8
|
-
import * as smartlogDestinationLocal from '@pushrocks/smartlog-destination-local';
|
|
9
|
-
import * as smartpath from '@pushrocks/smartpath';
|
|
10
|
-
import * as smartshell from '@pushrocks/smartshell';
|
|
11
|
-
export { smartcli, smartfile, smartlog, smartlogDestinationLocal, smartpath, smartshell };
|
|
12
|
-
// third party scope
|
|
13
|
-
import * as typedoc from 'typedoc';
|
|
14
|
-
export { typedoc };
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNkb2MucGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3RzZG9jLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUNkLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUVoQixrQkFBa0I7QUFDbEIsT0FBTyxLQUFLLFFBQVEsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEtBQUssU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxRQUFRLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLHdCQUF3QixNQUFNLHVDQUF1QyxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxTQUFTLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxLQUFLLFVBQVUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsd0JBQXdCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO0FBRTFGLG9CQUFvQjtBQUNwQixPQUFPLEtBQUssT0FBTyxNQUFNLFNBQVMsQ0FBQztBQUVuQyxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMifQ==
|
|
@@ -1,369 +0,0 @@
|
|
|
1
|
-
import * as plugins from '../plugins.js';
|
|
2
|
-
import * as fs from 'fs';
|
|
3
|
-
import type {
|
|
4
|
-
IContextConfig,
|
|
5
|
-
ITrimConfig,
|
|
6
|
-
ITaskConfig,
|
|
7
|
-
TaskType,
|
|
8
|
-
ContextMode,
|
|
9
|
-
ICacheConfig,
|
|
10
|
-
IAnalyzerConfig,
|
|
11
|
-
IPrioritizationWeights,
|
|
12
|
-
ITierConfig,
|
|
13
|
-
IIterativeConfig
|
|
14
|
-
} from './types.js';
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Manages configuration for context building
|
|
18
|
-
*/
|
|
19
|
-
export class ConfigManager {
|
|
20
|
-
private static instance: ConfigManager;
|
|
21
|
-
private config: IContextConfig;
|
|
22
|
-
private projectDir: string = '';
|
|
23
|
-
private configCache: { mtime: number; config: IContextConfig } | null = null;
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Get the singleton instance of ConfigManager
|
|
27
|
-
*/
|
|
28
|
-
public static getInstance(): ConfigManager {
|
|
29
|
-
if (!ConfigManager.instance) {
|
|
30
|
-
ConfigManager.instance = new ConfigManager();
|
|
31
|
-
}
|
|
32
|
-
return ConfigManager.instance;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Private constructor for singleton pattern
|
|
37
|
-
*/
|
|
38
|
-
private constructor() {
|
|
39
|
-
this.config = this.getDefaultConfig();
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Initialize the config manager with a project directory
|
|
44
|
-
* @param projectDir The project directory
|
|
45
|
-
*/
|
|
46
|
-
public async initialize(projectDir: string): Promise<void> {
|
|
47
|
-
this.projectDir = projectDir;
|
|
48
|
-
await this.loadConfig();
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Get the default configuration
|
|
53
|
-
*/
|
|
54
|
-
private getDefaultConfig(): IContextConfig {
|
|
55
|
-
return {
|
|
56
|
-
maxTokens: 190000, // Default for o4-mini with some buffer
|
|
57
|
-
defaultMode: 'trimmed',
|
|
58
|
-
taskSpecificSettings: {
|
|
59
|
-
readme: {
|
|
60
|
-
mode: 'trimmed',
|
|
61
|
-
includePaths: ['ts/', 'src/'],
|
|
62
|
-
excludePaths: ['test/', 'node_modules/']
|
|
63
|
-
},
|
|
64
|
-
commit: {
|
|
65
|
-
mode: 'trimmed',
|
|
66
|
-
focusOnChangedFiles: true
|
|
67
|
-
},
|
|
68
|
-
description: {
|
|
69
|
-
mode: 'trimmed',
|
|
70
|
-
includePackageInfo: true
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
trimming: {
|
|
74
|
-
removeImplementations: true,
|
|
75
|
-
preserveInterfaces: true,
|
|
76
|
-
preserveTypeDefs: true,
|
|
77
|
-
preserveJSDoc: true,
|
|
78
|
-
maxFunctionLines: 5,
|
|
79
|
-
removeComments: true,
|
|
80
|
-
removeBlankLines: true
|
|
81
|
-
},
|
|
82
|
-
cache: {
|
|
83
|
-
enabled: true,
|
|
84
|
-
ttl: 3600, // 1 hour
|
|
85
|
-
maxSize: 100, // 100MB
|
|
86
|
-
directory: undefined // Will be set to .nogit/context-cache by ContextCache
|
|
87
|
-
},
|
|
88
|
-
analyzer: {
|
|
89
|
-
useAIRefinement: false, // Disabled by default for now
|
|
90
|
-
aiModel: 'haiku'
|
|
91
|
-
},
|
|
92
|
-
prioritization: {
|
|
93
|
-
dependencyWeight: 0.3,
|
|
94
|
-
relevanceWeight: 0.4,
|
|
95
|
-
efficiencyWeight: 0.2,
|
|
96
|
-
recencyWeight: 0.1
|
|
97
|
-
},
|
|
98
|
-
tiers: {
|
|
99
|
-
essential: { minScore: 0.8, trimLevel: 'none' },
|
|
100
|
-
important: { minScore: 0.5, trimLevel: 'light' },
|
|
101
|
-
optional: { minScore: 0.2, trimLevel: 'aggressive' }
|
|
102
|
-
},
|
|
103
|
-
iterative: {
|
|
104
|
-
maxIterations: 5,
|
|
105
|
-
firstPassFileLimit: 10,
|
|
106
|
-
subsequentPassFileLimit: 5,
|
|
107
|
-
temperature: 0.3,
|
|
108
|
-
model: 'gpt-4-turbo-preview'
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Load configuration from npmextra.json
|
|
115
|
-
*/
|
|
116
|
-
private async loadConfig(): Promise<void> {
|
|
117
|
-
try {
|
|
118
|
-
if (!this.projectDir) {
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
const npmextraJsonPath = plugins.path.join(this.projectDir, 'npmextra.json');
|
|
123
|
-
|
|
124
|
-
// Check if file exists
|
|
125
|
-
const fileExists = await plugins.fsInstance.file(npmextraJsonPath).exists();
|
|
126
|
-
if (!fileExists) {
|
|
127
|
-
return;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
// Check cache
|
|
131
|
-
const stats = await fs.promises.stat(npmextraJsonPath);
|
|
132
|
-
const currentMtime = Math.floor(stats.mtimeMs);
|
|
133
|
-
|
|
134
|
-
if (this.configCache && this.configCache.mtime === currentMtime) {
|
|
135
|
-
// Use cached config
|
|
136
|
-
this.config = this.configCache.config;
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
// Read the npmextra.json file
|
|
141
|
-
const npmextraJsonFile = await plugins.smartfileFactory.fromFilePath(npmextraJsonPath);
|
|
142
|
-
const npmextraContent = JSON.parse(npmextraJsonFile.contents.toString());
|
|
143
|
-
|
|
144
|
-
// Check for tsdoc context configuration
|
|
145
|
-
if (npmextraContent?.['@git.zone/tsdoc']?.context) {
|
|
146
|
-
// Merge with default config
|
|
147
|
-
this.config = this.mergeConfigs(this.config, npmextraContent['@git.zone/tsdoc'].context);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
// Cache the config
|
|
151
|
-
this.configCache = {
|
|
152
|
-
mtime: currentMtime,
|
|
153
|
-
config: { ...this.config }
|
|
154
|
-
};
|
|
155
|
-
} catch (error) {
|
|
156
|
-
console.error('Error loading context configuration:', error);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* Merge configurations, with userConfig taking precedence
|
|
162
|
-
* @param defaultConfig The default configuration
|
|
163
|
-
* @param userConfig The user configuration
|
|
164
|
-
*/
|
|
165
|
-
private mergeConfigs(defaultConfig: IContextConfig, userConfig: Partial<IContextConfig>): IContextConfig {
|
|
166
|
-
const result: IContextConfig = { ...defaultConfig };
|
|
167
|
-
|
|
168
|
-
// Merge top-level properties
|
|
169
|
-
if (userConfig.maxTokens !== undefined) result.maxTokens = userConfig.maxTokens;
|
|
170
|
-
if (userConfig.defaultMode !== undefined) result.defaultMode = userConfig.defaultMode;
|
|
171
|
-
|
|
172
|
-
// Merge task-specific settings
|
|
173
|
-
if (userConfig.taskSpecificSettings) {
|
|
174
|
-
result.taskSpecificSettings = result.taskSpecificSettings || {};
|
|
175
|
-
|
|
176
|
-
// For each task type, merge settings
|
|
177
|
-
(['readme', 'commit', 'description'] as TaskType[]).forEach(taskType => {
|
|
178
|
-
if (userConfig.taskSpecificSettings?.[taskType]) {
|
|
179
|
-
result.taskSpecificSettings![taskType] = {
|
|
180
|
-
...result.taskSpecificSettings![taskType],
|
|
181
|
-
...userConfig.taskSpecificSettings[taskType]
|
|
182
|
-
};
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
// Merge trimming configuration
|
|
188
|
-
if (userConfig.trimming) {
|
|
189
|
-
result.trimming = {
|
|
190
|
-
...result.trimming,
|
|
191
|
-
...userConfig.trimming
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
// Merge cache configuration
|
|
196
|
-
if (userConfig.cache) {
|
|
197
|
-
result.cache = {
|
|
198
|
-
...result.cache,
|
|
199
|
-
...userConfig.cache
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
// Merge analyzer configuration
|
|
204
|
-
if (userConfig.analyzer) {
|
|
205
|
-
result.analyzer = {
|
|
206
|
-
...result.analyzer,
|
|
207
|
-
...userConfig.analyzer
|
|
208
|
-
};
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
// Merge prioritization weights
|
|
212
|
-
if (userConfig.prioritization) {
|
|
213
|
-
result.prioritization = {
|
|
214
|
-
...result.prioritization,
|
|
215
|
-
...userConfig.prioritization
|
|
216
|
-
};
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// Merge tier configuration
|
|
220
|
-
if (userConfig.tiers) {
|
|
221
|
-
result.tiers = {
|
|
222
|
-
...result.tiers,
|
|
223
|
-
...userConfig.tiers
|
|
224
|
-
};
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
// Merge iterative configuration
|
|
228
|
-
if (userConfig.iterative) {
|
|
229
|
-
result.iterative = {
|
|
230
|
-
...result.iterative,
|
|
231
|
-
...userConfig.iterative
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
return result;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
/**
|
|
239
|
-
* Get the complete configuration
|
|
240
|
-
*/
|
|
241
|
-
public getConfig(): IContextConfig {
|
|
242
|
-
return this.config;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
/**
|
|
246
|
-
* Get the trimming configuration
|
|
247
|
-
*/
|
|
248
|
-
public getTrimConfig(): ITrimConfig {
|
|
249
|
-
return this.config.trimming || {};
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
/**
|
|
253
|
-
* Get configuration for a specific task
|
|
254
|
-
* @param taskType The type of task
|
|
255
|
-
*/
|
|
256
|
-
public getTaskConfig(taskType: TaskType): ITaskConfig {
|
|
257
|
-
// Get task-specific config or empty object
|
|
258
|
-
const taskConfig = this.config.taskSpecificSettings?.[taskType] || {};
|
|
259
|
-
|
|
260
|
-
// If mode is not specified, use default mode
|
|
261
|
-
if (!taskConfig.mode) {
|
|
262
|
-
taskConfig.mode = this.config.defaultMode;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
return taskConfig;
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
/**
|
|
269
|
-
* Get the maximum tokens allowed for context
|
|
270
|
-
*/
|
|
271
|
-
public getMaxTokens(): number {
|
|
272
|
-
return this.config.maxTokens || 190000;
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* Update the configuration
|
|
277
|
-
* @param config The new configuration
|
|
278
|
-
*/
|
|
279
|
-
public async updateConfig(config: Partial<IContextConfig>): Promise<void> {
|
|
280
|
-
// Merge with existing config
|
|
281
|
-
this.config = this.mergeConfigs(this.config, config);
|
|
282
|
-
|
|
283
|
-
// Invalidate cache
|
|
284
|
-
this.configCache = null;
|
|
285
|
-
|
|
286
|
-
try {
|
|
287
|
-
if (!this.projectDir) {
|
|
288
|
-
return;
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
// Read the existing npmextra.json file
|
|
292
|
-
const npmextraJsonPath = plugins.path.join(this.projectDir, 'npmextra.json');
|
|
293
|
-
let npmextraContent = {};
|
|
294
|
-
|
|
295
|
-
if (await plugins.fsInstance.file(npmextraJsonPath).exists()) {
|
|
296
|
-
const npmextraJsonFile = await plugins.smartfileFactory.fromFilePath(npmextraJsonPath);
|
|
297
|
-
npmextraContent = JSON.parse(npmextraJsonFile.contents.toString()) || {};
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
// Update the tsdoc context configuration
|
|
301
|
-
const typedContent = npmextraContent as any;
|
|
302
|
-
if (!typedContent.tsdoc) typedContent.tsdoc = {};
|
|
303
|
-
typedContent.tsdoc.context = this.config;
|
|
304
|
-
|
|
305
|
-
// Write back to npmextra.json
|
|
306
|
-
const updatedContent = JSON.stringify(npmextraContent, null, 2);
|
|
307
|
-
await plugins.fsInstance.file(npmextraJsonPath).encoding('utf8').write(updatedContent);
|
|
308
|
-
} catch (error) {
|
|
309
|
-
console.error('Error updating context configuration:', error);
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* Get cache configuration
|
|
315
|
-
*/
|
|
316
|
-
public getCacheConfig(): ICacheConfig {
|
|
317
|
-
return this.config.cache || { enabled: true, ttl: 3600, maxSize: 100 };
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
/**
|
|
321
|
-
* Get analyzer configuration
|
|
322
|
-
*/
|
|
323
|
-
public getAnalyzerConfig(): IAnalyzerConfig {
|
|
324
|
-
return this.config.analyzer || { useAIRefinement: false, aiModel: 'haiku' };
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
/**
|
|
328
|
-
* Get prioritization weights
|
|
329
|
-
*/
|
|
330
|
-
public getPrioritizationWeights(): IPrioritizationWeights {
|
|
331
|
-
return this.config.prioritization || {
|
|
332
|
-
dependencyWeight: 0.3,
|
|
333
|
-
relevanceWeight: 0.4,
|
|
334
|
-
efficiencyWeight: 0.2,
|
|
335
|
-
recencyWeight: 0.1
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* Get tier configuration
|
|
341
|
-
*/
|
|
342
|
-
public getTierConfig(): ITierConfig {
|
|
343
|
-
return this.config.tiers || {
|
|
344
|
-
essential: { minScore: 0.8, trimLevel: 'none' },
|
|
345
|
-
important: { minScore: 0.5, trimLevel: 'light' },
|
|
346
|
-
optional: { minScore: 0.2, trimLevel: 'aggressive' }
|
|
347
|
-
};
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
/**
|
|
351
|
-
* Get iterative configuration
|
|
352
|
-
*/
|
|
353
|
-
public getIterativeConfig(): IIterativeConfig {
|
|
354
|
-
return this.config.iterative || {
|
|
355
|
-
maxIterations: 5,
|
|
356
|
-
firstPassFileLimit: 10,
|
|
357
|
-
subsequentPassFileLimit: 5,
|
|
358
|
-
temperature: 0.3,
|
|
359
|
-
model: 'gpt-4-turbo-preview'
|
|
360
|
-
};
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
/**
|
|
364
|
-
* Clear the config cache (force reload on next access)
|
|
365
|
-
*/
|
|
366
|
-
public clearCache(): void {
|
|
367
|
-
this.configCache = null;
|
|
368
|
-
}
|
|
369
|
-
}
|