@ace-sdk/core 2.0.1 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cache/project-index.d.ts +152 -0
- package/dist/cache/project-index.d.ts.map +1 -0
- package/dist/cache/project-index.js +290 -0
- package/dist/cache/project-index.js.map +1 -0
- package/dist/config/loader.d.ts +2 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +4 -4
- package/dist/config/loader.js.map +1 -1
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/services/bootstrap-stream.d.ts +113 -0
- package/dist/services/bootstrap-stream.d.ts.map +1 -0
- package/dist/services/bootstrap-stream.js +261 -0
- package/dist/services/bootstrap-stream.js.map +1 -0
- package/dist/services/import-graph.d.ts +111 -0
- package/dist/services/import-graph.d.ts.map +1 -0
- package/dist/services/import-graph.js +292 -0
- package/dist/services/import-graph.js.map +1 -0
- package/dist/services/language-detector.d.ts +120 -0
- package/dist/services/language-detector.d.ts.map +1 -0
- package/dist/services/language-detector.js +210 -0
- package/dist/services/language-detector.js.map +1 -0
- package/dist/types/bootstrap-events.d.ts +251 -0
- package/dist/types/bootstrap-events.d.ts.map +1 -0
- package/dist/types/bootstrap-events.js +103 -0
- package/dist/types/bootstrap-events.js.map +1 -0
- package/dist/types/project-dna.d.ts +151 -0
- package/dist/types/project-dna.d.ts.map +1 -0
- package/dist/types/project-dna.js +42 -0
- package/dist/types/project-dna.js.map +1 -0
- package/package.json +3 -2
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Index Cache using SQLite
|
|
3
|
+
*
|
|
4
|
+
* Lightweight persistent index of project files for smart file selection.
|
|
5
|
+
* Uses git commits for invalidation instead of time-based TTL.
|
|
6
|
+
*
|
|
7
|
+
* @package @ace-sdk/core
|
|
8
|
+
*/
|
|
9
|
+
import type { ImportGraph } from '../services/import-graph.js';
|
|
10
|
+
/**
|
|
11
|
+
* Entry for a file in the project index
|
|
12
|
+
*/
|
|
13
|
+
export interface ProjectIndexEntry {
|
|
14
|
+
/** File path relative to repo root */
|
|
15
|
+
path: string;
|
|
16
|
+
/** Detected programming language */
|
|
17
|
+
language: string | null;
|
|
18
|
+
/** Number of imports */
|
|
19
|
+
imports: number;
|
|
20
|
+
/** Number of files importing this */
|
|
21
|
+
importedBy: number;
|
|
22
|
+
/** Is a hub file (5+ importers) */
|
|
23
|
+
isHub: boolean;
|
|
24
|
+
/** Is an entry point (no dependents) */
|
|
25
|
+
isEntryPoint: boolean;
|
|
26
|
+
/** File last modified timestamp */
|
|
27
|
+
lastModified: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Project metadata stored in the index
|
|
31
|
+
*/
|
|
32
|
+
export interface ProjectMetadata {
|
|
33
|
+
/** Last indexed git commit */
|
|
34
|
+
lastCommit: string | null;
|
|
35
|
+
/** Last indexed timestamp */
|
|
36
|
+
lastIndexed: number;
|
|
37
|
+
/** Primary language */
|
|
38
|
+
primaryLanguage: string | null;
|
|
39
|
+
/** Total files indexed */
|
|
40
|
+
totalFiles: number;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Configuration for project index
|
|
44
|
+
*/
|
|
45
|
+
export interface ProjectIndexConfig {
|
|
46
|
+
/** Organization ID */
|
|
47
|
+
orgId: string;
|
|
48
|
+
/** Project ID */
|
|
49
|
+
projectId: string;
|
|
50
|
+
/** Cache directory (defaults to ~/.ace-cache) */
|
|
51
|
+
cacheDir?: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* SQLite-based project file index
|
|
55
|
+
*
|
|
56
|
+
* Stores file metadata for smart bootstrap file selection.
|
|
57
|
+
* Uses git commits for cache invalidation.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const index = new ProjectIndex({ orgId: 'myorg', projectId: 'myproject' });
|
|
62
|
+
*
|
|
63
|
+
* // Check if reindex needed
|
|
64
|
+
* if (index.needsReindex('/path/to/repo')) {
|
|
65
|
+
* const graph = await buildImportGraph({ repoPath: '/path/to/repo' });
|
|
66
|
+
* await index.updateFromGraph(graph, '/path/to/repo');
|
|
67
|
+
* }
|
|
68
|
+
*
|
|
69
|
+
* // Get priority files
|
|
70
|
+
* const hubs = index.getHubFiles(20);
|
|
71
|
+
* const entries = index.getEntryPoints();
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare class ProjectIndex {
|
|
75
|
+
private db;
|
|
76
|
+
private readonly orgId;
|
|
77
|
+
private readonly projectId;
|
|
78
|
+
constructor(config: ProjectIndexConfig);
|
|
79
|
+
/**
|
|
80
|
+
* Initialize database schema
|
|
81
|
+
*/
|
|
82
|
+
private initSchema;
|
|
83
|
+
/**
|
|
84
|
+
* Update index from import graph analysis
|
|
85
|
+
*/
|
|
86
|
+
updateFromGraph(graph: ImportGraph, repoPath: string): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Get hub files (most imported)
|
|
89
|
+
*/
|
|
90
|
+
getHubFiles(limit?: number): string[];
|
|
91
|
+
/**
|
|
92
|
+
* Get entry point files
|
|
93
|
+
*/
|
|
94
|
+
getEntryPoints(): string[];
|
|
95
|
+
/**
|
|
96
|
+
* Get files by language
|
|
97
|
+
*/
|
|
98
|
+
getFilesByLanguage(language: string, limit?: number): string[];
|
|
99
|
+
/**
|
|
100
|
+
* Get most imported files (top N by importedBy count)
|
|
101
|
+
*/
|
|
102
|
+
getMostImported(limit?: number): ProjectIndexEntry[];
|
|
103
|
+
/**
|
|
104
|
+
* Get all indexed files
|
|
105
|
+
*/
|
|
106
|
+
getAllFiles(): string[];
|
|
107
|
+
/**
|
|
108
|
+
* Check if reindex is needed based on git commit
|
|
109
|
+
*/
|
|
110
|
+
needsReindex(repoPath: string): {
|
|
111
|
+
needsReindex: boolean;
|
|
112
|
+
changedFiles?: string[];
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Get project metadata
|
|
116
|
+
*/
|
|
117
|
+
getProjectMetadata(): ProjectMetadata;
|
|
118
|
+
/**
|
|
119
|
+
* Get metadata value
|
|
120
|
+
*/
|
|
121
|
+
getMetadata(key: string): string | null;
|
|
122
|
+
/**
|
|
123
|
+
* Set metadata value
|
|
124
|
+
*/
|
|
125
|
+
setMetadata(key: string, value: string): void;
|
|
126
|
+
/**
|
|
127
|
+
* Get current git commit hash
|
|
128
|
+
*/
|
|
129
|
+
private getGitCommit;
|
|
130
|
+
/**
|
|
131
|
+
* Get files changed since a commit
|
|
132
|
+
*/
|
|
133
|
+
private getChangedFilesSince;
|
|
134
|
+
/**
|
|
135
|
+
* Close database connection
|
|
136
|
+
*/
|
|
137
|
+
close(): void;
|
|
138
|
+
/**
|
|
139
|
+
* Clear all data from the index
|
|
140
|
+
*/
|
|
141
|
+
clear(): void;
|
|
142
|
+
/**
|
|
143
|
+
* Get index statistics
|
|
144
|
+
*/
|
|
145
|
+
getStats(): {
|
|
146
|
+
totalFiles: number;
|
|
147
|
+
hubFiles: number;
|
|
148
|
+
entryPoints: number;
|
|
149
|
+
languages: Record<string, number>;
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=project-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-index.d.ts","sourceRoot":"","sources":["../../src/cache/project-index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAM/D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,KAAK,EAAE,OAAO,CAAC;IACf,wCAAwC;IACxC,YAAY,EAAE,OAAO,CAAC;IACtB,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,kBAAkB;IAwBtC;;OAEG;IACH,OAAO,CAAC,UAAU;IA4BlB;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC1E;;OAEG;IACH,WAAW,CAAC,KAAK,GAAE,MAAW,GAAG,MAAM,EAAE;IAWzC;;OAEG;IACH,cAAc,IAAI,MAAM,EAAE;IAQ1B;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAY9D;;OAEG;IACH,eAAe,CAAC,KAAK,GAAE,MAAW,GAAG,iBAAiB,EAAE;IAmBxD;;OAEG;IACH,WAAW,IAAI,MAAM,EAAE;IAKvB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;IAuBlF;;OAEG;IACH,kBAAkB,IAAI,eAAe;IASrC;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAQvC;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7C;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,QAAQ,IAAI;QACV,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnC;CAmBF"}
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Index Cache using SQLite
|
|
3
|
+
*
|
|
4
|
+
* Lightweight persistent index of project files for smart file selection.
|
|
5
|
+
* Uses git commits for invalidation instead of time-based TTL.
|
|
6
|
+
*
|
|
7
|
+
* @package @ace-sdk/core
|
|
8
|
+
*/
|
|
9
|
+
import Database from 'better-sqlite3';
|
|
10
|
+
import { join } from 'path';
|
|
11
|
+
import { homedir } from 'os';
|
|
12
|
+
import { existsSync, mkdirSync } from 'fs';
|
|
13
|
+
import { execSync } from 'child_process';
|
|
14
|
+
// =============================================================================
|
|
15
|
+
// Project Index Class
|
|
16
|
+
// =============================================================================
|
|
17
|
+
/**
|
|
18
|
+
* SQLite-based project file index
|
|
19
|
+
*
|
|
20
|
+
* Stores file metadata for smart bootstrap file selection.
|
|
21
|
+
* Uses git commits for cache invalidation.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const index = new ProjectIndex({ orgId: 'myorg', projectId: 'myproject' });
|
|
26
|
+
*
|
|
27
|
+
* // Check if reindex needed
|
|
28
|
+
* if (index.needsReindex('/path/to/repo')) {
|
|
29
|
+
* const graph = await buildImportGraph({ repoPath: '/path/to/repo' });
|
|
30
|
+
* await index.updateFromGraph(graph, '/path/to/repo');
|
|
31
|
+
* }
|
|
32
|
+
*
|
|
33
|
+
* // Get priority files
|
|
34
|
+
* const hubs = index.getHubFiles(20);
|
|
35
|
+
* const entries = index.getEntryPoints();
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export class ProjectIndex {
|
|
39
|
+
db;
|
|
40
|
+
orgId;
|
|
41
|
+
projectId;
|
|
42
|
+
constructor(config) {
|
|
43
|
+
// Store for future use (cross-project features)
|
|
44
|
+
this.orgId = config.orgId;
|
|
45
|
+
this.projectId = config.projectId;
|
|
46
|
+
void this.orgId; // Mark as intentionally unused for now
|
|
47
|
+
void this.projectId; // Mark as intentionally unused for now
|
|
48
|
+
// Ensure cache directory exists
|
|
49
|
+
const cacheDir = config.cacheDir || join(homedir(), '.ace-cache');
|
|
50
|
+
if (!existsSync(cacheDir)) {
|
|
51
|
+
mkdirSync(cacheDir, { recursive: true });
|
|
52
|
+
}
|
|
53
|
+
// Create database for this org/project
|
|
54
|
+
const dbPath = join(cacheDir, `${config.orgId}_${config.projectId}_index.db`);
|
|
55
|
+
this.db = new Database(dbPath);
|
|
56
|
+
// Enable WAL mode for better performance
|
|
57
|
+
this.db.pragma('journal_mode = WAL');
|
|
58
|
+
// Initialize schema
|
|
59
|
+
this.initSchema();
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Initialize database schema
|
|
63
|
+
*/
|
|
64
|
+
initSchema() {
|
|
65
|
+
this.db.exec(`
|
|
66
|
+
-- Files table
|
|
67
|
+
CREATE TABLE IF NOT EXISTS files (
|
|
68
|
+
path TEXT PRIMARY KEY,
|
|
69
|
+
language TEXT,
|
|
70
|
+
imports INTEGER DEFAULT 0,
|
|
71
|
+
imported_by INTEGER DEFAULT 0,
|
|
72
|
+
is_hub INTEGER DEFAULT 0,
|
|
73
|
+
is_entry_point INTEGER DEFAULT 0,
|
|
74
|
+
last_modified INTEGER,
|
|
75
|
+
indexed_at INTEGER
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
-- Project metadata table
|
|
79
|
+
CREATE TABLE IF NOT EXISTS project_meta (
|
|
80
|
+
key TEXT PRIMARY KEY,
|
|
81
|
+
value TEXT
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
-- Indexes for common queries
|
|
85
|
+
CREATE INDEX IF NOT EXISTS idx_hub ON files(is_hub) WHERE is_hub = 1;
|
|
86
|
+
CREATE INDEX IF NOT EXISTS idx_entry ON files(is_entry_point) WHERE is_entry_point = 1;
|
|
87
|
+
CREATE INDEX IF NOT EXISTS idx_language ON files(language);
|
|
88
|
+
CREATE INDEX IF NOT EXISTS idx_imported_by ON files(imported_by DESC);
|
|
89
|
+
`);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Update index from import graph analysis
|
|
93
|
+
*/
|
|
94
|
+
async updateFromGraph(graph, repoPath) {
|
|
95
|
+
const now = Date.now();
|
|
96
|
+
const gitCommit = this.getGitCommit(repoPath);
|
|
97
|
+
const insert = this.db.prepare(`
|
|
98
|
+
INSERT OR REPLACE INTO files
|
|
99
|
+
(path, imports, imported_by, is_hub, is_entry_point, indexed_at)
|
|
100
|
+
VALUES (?, ?, ?, ?, ?, ?)
|
|
101
|
+
`);
|
|
102
|
+
const transaction = this.db.transaction(() => {
|
|
103
|
+
// Clear existing files
|
|
104
|
+
this.db.exec('DELETE FROM files');
|
|
105
|
+
// Insert all nodes
|
|
106
|
+
for (const [path, node] of graph.nodes) {
|
|
107
|
+
insert.run(path, node.imports.length, node.importedBy.length, node.isHub ? 1 : 0, node.isEntryPoint ? 1 : 0, now);
|
|
108
|
+
}
|
|
109
|
+
// Update metadata
|
|
110
|
+
this.setMetadata('last_commit', gitCommit || '');
|
|
111
|
+
this.setMetadata('last_indexed', String(now));
|
|
112
|
+
this.setMetadata('total_files', String(graph.nodes.size));
|
|
113
|
+
});
|
|
114
|
+
transaction();
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get hub files (most imported)
|
|
118
|
+
*/
|
|
119
|
+
getHubFiles(limit = 50) {
|
|
120
|
+
const rows = this.db.prepare(`
|
|
121
|
+
SELECT path FROM files
|
|
122
|
+
WHERE is_hub = 1
|
|
123
|
+
ORDER BY imported_by DESC
|
|
124
|
+
LIMIT ?
|
|
125
|
+
`).all(limit);
|
|
126
|
+
return rows.map(r => r.path);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get entry point files
|
|
130
|
+
*/
|
|
131
|
+
getEntryPoints() {
|
|
132
|
+
const rows = this.db.prepare(`
|
|
133
|
+
SELECT path FROM files WHERE is_entry_point = 1
|
|
134
|
+
`).all();
|
|
135
|
+
return rows.map(r => r.path);
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Get files by language
|
|
139
|
+
*/
|
|
140
|
+
getFilesByLanguage(language, limit) {
|
|
141
|
+
const query = limit
|
|
142
|
+
? this.db.prepare(`SELECT path FROM files WHERE language = ? LIMIT ?`)
|
|
143
|
+
: this.db.prepare(`SELECT path FROM files WHERE language = ?`);
|
|
144
|
+
const rows = (limit
|
|
145
|
+
? query.all(language, limit)
|
|
146
|
+
: query.all(language));
|
|
147
|
+
return rows.map(r => r.path);
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Get most imported files (top N by importedBy count)
|
|
151
|
+
*/
|
|
152
|
+
getMostImported(limit = 50) {
|
|
153
|
+
const rows = this.db.prepare(`
|
|
154
|
+
SELECT path, language, imports, imported_by, is_hub, is_entry_point, last_modified
|
|
155
|
+
FROM files
|
|
156
|
+
ORDER BY imported_by DESC
|
|
157
|
+
LIMIT ?
|
|
158
|
+
`).all(limit);
|
|
159
|
+
return rows.map(r => ({
|
|
160
|
+
path: r.path,
|
|
161
|
+
language: r.language,
|
|
162
|
+
imports: r.imports,
|
|
163
|
+
importedBy: r.imported_by,
|
|
164
|
+
isHub: Boolean(r.is_hub),
|
|
165
|
+
isEntryPoint: Boolean(r.is_entry_point),
|
|
166
|
+
lastModified: r.last_modified
|
|
167
|
+
}));
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Get all indexed files
|
|
171
|
+
*/
|
|
172
|
+
getAllFiles() {
|
|
173
|
+
const rows = this.db.prepare(`SELECT path FROM files`).all();
|
|
174
|
+
return rows.map(r => r.path);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Check if reindex is needed based on git commit
|
|
178
|
+
*/
|
|
179
|
+
needsReindex(repoPath) {
|
|
180
|
+
const lastCommit = this.getMetadata('last_commit');
|
|
181
|
+
const currentCommit = this.getGitCommit(repoPath);
|
|
182
|
+
// No previous index
|
|
183
|
+
if (!lastCommit) {
|
|
184
|
+
return { needsReindex: true };
|
|
185
|
+
}
|
|
186
|
+
// Same commit, no changes
|
|
187
|
+
if (lastCommit === currentCommit) {
|
|
188
|
+
return { needsReindex: false };
|
|
189
|
+
}
|
|
190
|
+
// Get changed files since last index
|
|
191
|
+
const changedFiles = this.getChangedFilesSince(repoPath, lastCommit);
|
|
192
|
+
return {
|
|
193
|
+
needsReindex: true,
|
|
194
|
+
changedFiles
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get project metadata
|
|
199
|
+
*/
|
|
200
|
+
getProjectMetadata() {
|
|
201
|
+
return {
|
|
202
|
+
lastCommit: this.getMetadata('last_commit'),
|
|
203
|
+
lastIndexed: parseInt(this.getMetadata('last_indexed') || '0', 10),
|
|
204
|
+
primaryLanguage: this.getMetadata('primary_language'),
|
|
205
|
+
totalFiles: parseInt(this.getMetadata('total_files') || '0', 10)
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Get metadata value
|
|
210
|
+
*/
|
|
211
|
+
getMetadata(key) {
|
|
212
|
+
const row = this.db.prepare(`
|
|
213
|
+
SELECT value FROM project_meta WHERE key = ?
|
|
214
|
+
`).get(key);
|
|
215
|
+
return row?.value || null;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Set metadata value
|
|
219
|
+
*/
|
|
220
|
+
setMetadata(key, value) {
|
|
221
|
+
this.db.prepare(`
|
|
222
|
+
INSERT OR REPLACE INTO project_meta (key, value) VALUES (?, ?)
|
|
223
|
+
`).run(key, value);
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Get current git commit hash
|
|
227
|
+
*/
|
|
228
|
+
getGitCommit(repoPath) {
|
|
229
|
+
try {
|
|
230
|
+
const result = execSync('git rev-parse HEAD', {
|
|
231
|
+
cwd: repoPath,
|
|
232
|
+
encoding: 'utf8',
|
|
233
|
+
stdio: ['pipe', 'pipe', 'pipe']
|
|
234
|
+
});
|
|
235
|
+
return result.trim();
|
|
236
|
+
}
|
|
237
|
+
catch {
|
|
238
|
+
return null;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Get files changed since a commit
|
|
243
|
+
*/
|
|
244
|
+
getChangedFilesSince(repoPath, commit) {
|
|
245
|
+
try {
|
|
246
|
+
const result = execSync(`git diff --name-only ${commit}..HEAD`, {
|
|
247
|
+
cwd: repoPath,
|
|
248
|
+
encoding: 'utf8',
|
|
249
|
+
stdio: ['pipe', 'pipe', 'pipe']
|
|
250
|
+
});
|
|
251
|
+
return result.trim().split('\n').filter(Boolean);
|
|
252
|
+
}
|
|
253
|
+
catch {
|
|
254
|
+
return [];
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Close database connection
|
|
259
|
+
*/
|
|
260
|
+
close() {
|
|
261
|
+
this.db.close();
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Clear all data from the index
|
|
265
|
+
*/
|
|
266
|
+
clear() {
|
|
267
|
+
this.db.exec('DELETE FROM files');
|
|
268
|
+
this.db.exec('DELETE FROM project_meta');
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Get index statistics
|
|
272
|
+
*/
|
|
273
|
+
getStats() {
|
|
274
|
+
const totalFiles = this.db.prepare('SELECT COUNT(*) as count FROM files').get().count;
|
|
275
|
+
const hubFiles = this.db.prepare('SELECT COUNT(*) as count FROM files WHERE is_hub = 1').get().count;
|
|
276
|
+
const entryPoints = this.db.prepare('SELECT COUNT(*) as count FROM files WHERE is_entry_point = 1').get().count;
|
|
277
|
+
const langRows = this.db.prepare(`
|
|
278
|
+
SELECT language, COUNT(*) as count
|
|
279
|
+
FROM files
|
|
280
|
+
WHERE language IS NOT NULL
|
|
281
|
+
GROUP BY language
|
|
282
|
+
`).all();
|
|
283
|
+
const languages = {};
|
|
284
|
+
for (const row of langRows) {
|
|
285
|
+
languages[row.language] = row.count;
|
|
286
|
+
}
|
|
287
|
+
return { totalFiles, hubFiles, entryPoints, languages };
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
//# sourceMappingURL=project-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-index.js","sourceRoot":"","sources":["../../src/cache/project-index.ts"],"names":[],"mappings":"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"}
|
package/dist/config/loader.d.ts
CHANGED
|
@@ -48,7 +48,8 @@ export interface LoadConfigResult {
|
|
|
48
48
|
*/
|
|
49
49
|
export declare function loadConfig(overrides?: ConfigOverrides, logger?: ILogger): AceConfig;
|
|
50
50
|
/**
|
|
51
|
-
* Get config file path
|
|
51
|
+
* Get config file path (XDG-compliant)
|
|
52
|
+
* Returns: ~/.config/ace/config.json (or $XDG_CONFIG_HOME/ace/config.json)
|
|
52
53
|
*/
|
|
53
54
|
export declare function getConfigPath(): string;
|
|
54
55
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGlD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,SAAS,GAAE,eAAoB,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAkMvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,GAAE,eAAoB,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAGvF"}
|
package/dist/config/loader.js
CHANGED
|
@@ -14,10 +14,9 @@
|
|
|
14
14
|
* @package @ace-sdk/core
|
|
15
15
|
*/
|
|
16
16
|
import { readFileSync, existsSync } from 'fs';
|
|
17
|
-
import { homedir } from 'os';
|
|
18
17
|
import { join } from 'path';
|
|
19
18
|
import { execSync } from 'child_process';
|
|
20
|
-
import { autoMigrateConfig, expandPath } from './xdg.js';
|
|
19
|
+
import { autoMigrateConfig, expandPath, getXdgConfigPath } from './xdg.js';
|
|
21
20
|
/**
|
|
22
21
|
* Validate orgs configuration structure (v3.8.1)
|
|
23
22
|
*/
|
|
@@ -275,10 +274,11 @@ export function loadConfig(overrides = {}, logger) {
|
|
|
275
274
|
return config;
|
|
276
275
|
}
|
|
277
276
|
/**
|
|
278
|
-
* Get config file path
|
|
277
|
+
* Get config file path (XDG-compliant)
|
|
278
|
+
* Returns: ~/.config/ace/config.json (or $XDG_CONFIG_HOME/ace/config.json)
|
|
279
279
|
*/
|
|
280
280
|
export function getConfigPath() {
|
|
281
|
-
return
|
|
281
|
+
return getXdgConfigPath();
|
|
282
282
|
}
|
|
283
283
|
/**
|
|
284
284
|
* Check if configuration is complete
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -29,4 +29,16 @@ export type { SemanticVersion } from './utils/semver.js';
|
|
|
29
29
|
export { parseVersion, compareVersions, satisfiesVersion } from './utils/semver.js';
|
|
30
30
|
export type { CodeBlock } from './utils/code-extractor.js';
|
|
31
31
|
export { extractFunctionBodies, isInteresting, extractCodeBlocksFromMarkdown, extractAddedLinesFromDiff } from './utils/code-extractor.js';
|
|
32
|
+
export type { LanguageStats as ProjectLanguageStats, ProjectType, FrameworkInfo, GraphMetrics, CodeHealthMetrics, PatternDetection, Recommendation, ProjectDNA, StoreProjectDNARequest, StoreProjectDNAResponse } from './types/project-dna.js';
|
|
33
|
+
export { createEmptyProjectDNA } from './types/project-dna.js';
|
|
34
|
+
export type { PlaybookSection, BootstrapStage, BootstrapStatistics, ReceivedStageData, AnalyzingStageData, SynthesizingStageData, MergingStageData, DoneStageData, ErrorStageData, BootstrapStageData, BootstrapSSEEvent, BootstrapEventType, BootstrapStartedData, BootstrapProgressData, BootstrapPatternsData, BootstrapHealthData, BootstrapCompleteData, BootstrapErrorData, BootstrapEventData } from './types/bootstrap-events.js';
|
|
35
|
+
export { BOOTSTRAP_STAGE_LABELS, isReceivedEvent, isAnalyzingEvent, isSynthesizingEvent, isMergingEvent, isDoneEvent, isErrorEvent, isTerminalEvent, isStartedEvent, isStageEvent, isProgressEvent, isPatternsEvent, isHealthEvent, isCompleteEvent } from './types/bootstrap-events.js';
|
|
36
|
+
export type { LanguageStats, LanguageAnalysisOptions } from './services/language-detector.js';
|
|
37
|
+
export { LanguageDetector, DEFAULT_IGNORED_PATTERNS, DEFAULT_CATEGORIES } from './services/language-detector.js';
|
|
38
|
+
export type { FileNode, ImportGraph, ImportGraphOptions } from './services/import-graph.js';
|
|
39
|
+
export { buildImportGraph, selectPriorityFiles, graphToMetrics, calculateHealthMetrics, DEFAULT_IGNORE_PATHS, HUB_THRESHOLD } from './services/import-graph.js';
|
|
40
|
+
export type { ProjectIndexEntry, ProjectMetadata, ProjectIndexConfig } from './cache/project-index.js';
|
|
41
|
+
export { ProjectIndex } from './cache/project-index.js';
|
|
42
|
+
export type { BootstrapStreamOptions, BootstrapStreamResult } from './services/bootstrap-stream.js';
|
|
43
|
+
export { bootstrapWithStreaming, bootstrapWithoutStreaming } from './services/bootstrap-stream.js';
|
|
32
44
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,YAAY,EAEV,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,cAAc,EACd,aAAa,EAGb,aAAa,EACb,0BAA0B,EAC1B,4BAA4B,EAG5B,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAGlB,kBAAkB,EAClB,gBAAgB,EAGhB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAEhF,YAAY,EAEV,SAAS,EACT,SAAS,EACT,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAM7D,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,OAAO,EAEL,UAAU,EACV,aAAa,EACb,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAEL,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAEL,aAAa,EACb,eAAe,EACf,WAAW,EACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEL,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAM/D,OAAO,EAEL,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAEL,cAAc,EACf,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AAMpC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAEL,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAEL,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -47,4 +47,14 @@ parseVersion, compareVersions, satisfiesVersion } from './utils/semver.js';
|
|
|
47
47
|
export {
|
|
48
48
|
// Code extraction
|
|
49
49
|
extractFunctionBodies, isInteresting, extractCodeBlocksFromMarkdown, extractAddedLinesFromDiff } from './utils/code-extractor.js';
|
|
50
|
+
export { createEmptyProjectDNA } from './types/project-dna.js';
|
|
51
|
+
export { BOOTSTRAP_STAGE_LABELS,
|
|
52
|
+
// New type guards (v3.13.0)
|
|
53
|
+
isReceivedEvent, isAnalyzingEvent, isSynthesizingEvent, isMergingEvent, isDoneEvent, isErrorEvent, isTerminalEvent,
|
|
54
|
+
// Legacy type guards (deprecated)
|
|
55
|
+
isStartedEvent, isStageEvent, isProgressEvent, isPatternsEvent, isHealthEvent, isCompleteEvent } from './types/bootstrap-events.js';
|
|
56
|
+
export { LanguageDetector, DEFAULT_IGNORED_PATTERNS, DEFAULT_CATEGORIES } from './services/language-detector.js';
|
|
57
|
+
export { buildImportGraph, selectPriorityFiles, graphToMetrics, calculateHealthMetrics, DEFAULT_IGNORE_PATHS, HUB_THRESHOLD } from './services/import-graph.js';
|
|
58
|
+
export { ProjectIndex } from './cache/project-index.js';
|
|
59
|
+
export { bootstrapWithStreaming, bootstrapWithoutStreaming } from './services/bootstrap-stream.js';
|
|
50
60
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAyCH,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAchF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAO7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,OAAO;AACL,gBAAgB;AAChB,UAAU,EACV,aAAa,EACb,YAAY,EACb,MAAM,oBAAoB,CAAC;AAI5B,OAAO;AACL,oBAAoB;AACpB,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO;AACL,mBAAmB;AACnB,aAAa,EACb,eAAe,EACf,WAAW,EACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO;AACL,iBAAiB;AACjB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO;AACL,qBAAqB;AACrB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAE7B,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,OAAO;AACL,qBAAqB;AACrB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO;AACL,sCAAsC;AACtC,cAAc,EACf,MAAM,4BAA4B,CAAC;AAcpC,OAAO;AACL,sBAAsB;AACtB,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAI3B,OAAO;AACL,kBAAkB;AAClB,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAyCH,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAchF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAO7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,OAAO;AACL,gBAAgB;AAChB,UAAU,EACV,aAAa,EACb,YAAY,EACb,MAAM,oBAAoB,CAAC;AAI5B,OAAO;AACL,oBAAoB;AACpB,UAAU,EACV,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO;AACL,mBAAmB;AACnB,aAAa,EACb,eAAe,EACf,WAAW,EACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO;AACL,iBAAiB;AACjB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO;AACL,qBAAqB;AACrB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAE7B,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,OAAO;AACL,qBAAqB;AACrB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO;AACL,sCAAsC;AACtC,cAAc,EACf,MAAM,4BAA4B,CAAC;AAcpC,OAAO;AACL,sBAAsB;AACtB,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAI3B,OAAO;AACL,kBAAkB;AAClB,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAmBnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AA8B/D,OAAO,EACL,sBAAsB;AACtB,4BAA4B;AAC5B,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe;AACf,kCAAkC;AAClC,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,aAAa,EACb,eAAe,EAChB,MAAM,6BAA6B,CAAC;AAWrC,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAYzC,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACd,MAAM,4BAA4B,CAAC;AAYpC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAWxD,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC"}
|