resolve-solo 0.2.0 → 0.3.0
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/cli.d.ts.map +1 -1
- package/dist/cli.js +124 -3
- package/dist/cli.js.map +1 -1
- package/dist/database.d.ts +46 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +185 -0
- package/dist/database.js.map +1 -0
- package/package.json +1 -1
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AA6BH,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,iBAgEhE"}
|
package/dist/cli.js
CHANGED
|
@@ -11,6 +11,7 @@ import { saveDemoData, loadDemoData, deleteDemoData, demoDataExists, getStorageI
|
|
|
11
11
|
import { buildTimeline, deduplicateTimeline } from './timeline.js';
|
|
12
12
|
import { generateInvestigationPaths, findRecallMatches, detectMissingSignals, generateSuggestions, } from './investigation.js';
|
|
13
13
|
import { displayInvestigation, promptTimeSaved } from './demo-output.js';
|
|
14
|
+
import { saveSession, getActiveSession, getTimelineItem, addNote, getNotes, closeSession } from './database.js';
|
|
14
15
|
import chalk from 'chalk';
|
|
15
16
|
export async function main(args = process.argv.slice(2)) {
|
|
16
17
|
// Join all args into a single natural language input
|
|
@@ -40,13 +41,13 @@ export async function main(args = process.argv.slice(2)) {
|
|
|
40
41
|
await handleInvestigate(parsed.query || 'recent issues');
|
|
41
42
|
break;
|
|
42
43
|
case 'details':
|
|
43
|
-
|
|
44
|
+
handleDetails(parsed.args);
|
|
44
45
|
break;
|
|
45
46
|
case 'note':
|
|
46
|
-
|
|
47
|
+
handleNote(parsed.args.join(' '));
|
|
47
48
|
break;
|
|
48
49
|
case 'close':
|
|
49
|
-
|
|
50
|
+
await handleClose(parsed.args.join(' '));
|
|
50
51
|
break;
|
|
51
52
|
case 'report-weekly':
|
|
52
53
|
showNotImplemented('report weekly');
|
|
@@ -192,6 +193,8 @@ async function handleInvestigate(query) {
|
|
|
192
193
|
missingSignals,
|
|
193
194
|
suggestions,
|
|
194
195
|
};
|
|
196
|
+
// Save session to database
|
|
197
|
+
saveSession(result);
|
|
195
198
|
// Display investigation
|
|
196
199
|
displayInvestigation(result);
|
|
197
200
|
// Suggest next commands
|
|
@@ -202,6 +205,124 @@ async function handleInvestigate(query) {
|
|
|
202
205
|
console.log(chalk.cyan(' resolveai close fixed connection pool size'));
|
|
203
206
|
console.log();
|
|
204
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* Handle show details command
|
|
210
|
+
*/
|
|
211
|
+
function handleDetails(args) {
|
|
212
|
+
console.log();
|
|
213
|
+
// Get active session
|
|
214
|
+
const session = getActiveSession();
|
|
215
|
+
if (!session) {
|
|
216
|
+
console.log(chalk.yellow('⚠️ No active investigation session'));
|
|
217
|
+
console.log();
|
|
218
|
+
console.log('Run', chalk.cyan('resolveai investigate <query>'), 'first');
|
|
219
|
+
console.log();
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
// Extract item number from args (e.g., "show details for item 3" -> 3)
|
|
223
|
+
const itemNum = parseInt(args[args.length - 1]);
|
|
224
|
+
if (isNaN(itemNum)) {
|
|
225
|
+
console.log(chalk.red('✗ Invalid item number'));
|
|
226
|
+
console.log('Usage:', chalk.cyan('resolveai show details for item <number>'));
|
|
227
|
+
console.log();
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
// Get timeline item
|
|
231
|
+
const item = getTimelineItem(session.sessionId, itemNum);
|
|
232
|
+
if (!item) {
|
|
233
|
+
console.log(chalk.red(`✗ Item ${itemNum} not found in current investigation`));
|
|
234
|
+
console.log();
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
// Display detailed view
|
|
238
|
+
console.log(chalk.bold.cyan(`📋 Item ${itemNum} Details`));
|
|
239
|
+
console.log();
|
|
240
|
+
console.log(chalk.bold('Type:'), item.signal);
|
|
241
|
+
console.log(chalk.bold('Target:'), item.target);
|
|
242
|
+
console.log(chalk.bold('Time:'), new Date(item.timestamp).toLocaleString());
|
|
243
|
+
console.log(chalk.bold('Summary:'), item.summary);
|
|
244
|
+
console.log(chalk.bold('Why it matters:'), item.whyItMatters);
|
|
245
|
+
console.log(chalk.bold('Confidence:'), item.confidence);
|
|
246
|
+
console.log();
|
|
247
|
+
if (item.details) {
|
|
248
|
+
console.log(chalk.bold('Additional Details:'));
|
|
249
|
+
console.log(JSON.stringify(item.details, null, 2));
|
|
250
|
+
console.log();
|
|
251
|
+
}
|
|
252
|
+
console.log(chalk.gray('Session:'), chalk.gray(session.sessionId));
|
|
253
|
+
console.log();
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Handle note command
|
|
257
|
+
*/
|
|
258
|
+
function handleNote(note) {
|
|
259
|
+
console.log();
|
|
260
|
+
if (!note.trim()) {
|
|
261
|
+
console.log(chalk.red('✗ Note cannot be empty'));
|
|
262
|
+
console.log('Usage:', chalk.cyan('resolveai note <your note>'));
|
|
263
|
+
console.log();
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
// Get active session
|
|
267
|
+
const session = getActiveSession();
|
|
268
|
+
if (!session) {
|
|
269
|
+
console.log(chalk.yellow('⚠️ No active investigation session'));
|
|
270
|
+
console.log();
|
|
271
|
+
console.log('Run', chalk.cyan('resolveai investigate <query>'), 'first');
|
|
272
|
+
console.log();
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
// Add note
|
|
276
|
+
addNote(session.sessionId, note);
|
|
277
|
+
console.log(chalk.green('✓ Note added'));
|
|
278
|
+
console.log();
|
|
279
|
+
console.log(chalk.gray(`Session: ${session.sessionId}`));
|
|
280
|
+
console.log();
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Handle close command
|
|
284
|
+
*/
|
|
285
|
+
async function handleClose(resolution) {
|
|
286
|
+
console.log();
|
|
287
|
+
// Get active session
|
|
288
|
+
const session = getActiveSession();
|
|
289
|
+
if (!session) {
|
|
290
|
+
console.log(chalk.yellow('⚠️ No active investigation session'));
|
|
291
|
+
console.log();
|
|
292
|
+
console.log('Run', chalk.cyan('resolveai investigate <query>'), 'first');
|
|
293
|
+
console.log();
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
296
|
+
// Use provided resolution or default
|
|
297
|
+
const finalResolution = resolution.trim() || 'Investigation closed';
|
|
298
|
+
console.log(chalk.cyan('🎯 Closing investigation...'));
|
|
299
|
+
console.log();
|
|
300
|
+
console.log(chalk.bold('Query:'), session.query);
|
|
301
|
+
console.log(chalk.bold('Resolution:'), finalResolution);
|
|
302
|
+
console.log();
|
|
303
|
+
// Get all notes for this session
|
|
304
|
+
const notes = getNotes(session.sessionId);
|
|
305
|
+
if (notes.length > 0) {
|
|
306
|
+
console.log(chalk.bold('Your notes:'));
|
|
307
|
+
for (const note of notes) {
|
|
308
|
+
const time = new Date(note.timestamp).toLocaleTimeString();
|
|
309
|
+
console.log(chalk.gray(` [${time}]`), note.note);
|
|
310
|
+
}
|
|
311
|
+
console.log();
|
|
312
|
+
}
|
|
313
|
+
// Prompt for time saved
|
|
314
|
+
const timeSaved = await promptTimeSaved();
|
|
315
|
+
// Close session and save to memory
|
|
316
|
+
closeSession(session.sessionId, finalResolution, timeSaved);
|
|
317
|
+
console.log();
|
|
318
|
+
console.log(chalk.green('✓ Investigation closed and saved to memory'));
|
|
319
|
+
console.log(chalk.gray(` Time saved: ${timeSaved} minutes`));
|
|
320
|
+
console.log();
|
|
321
|
+
console.log(chalk.bold('Next steps:'));
|
|
322
|
+
console.log(chalk.cyan(' resolveai investigate <new issue>'));
|
|
323
|
+
console.log(chalk.cyan(' resolveai report weekly'));
|
|
324
|
+
console.log();
|
|
325
|
+
}
|
|
205
326
|
/**
|
|
206
327
|
* Handle demo seed command
|
|
207
328
|
*/
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database module for session persistence
|
|
3
|
+
*
|
|
4
|
+
* Uses SQLite to store:
|
|
5
|
+
* - Investigation sessions
|
|
6
|
+
* - Session timeline items
|
|
7
|
+
* - Session notes
|
|
8
|
+
* - Closed incidents for recall
|
|
9
|
+
*/
|
|
10
|
+
import Database from 'better-sqlite3';
|
|
11
|
+
import type { InvestigationResult, TimelineItem } from './investigation-types.js';
|
|
12
|
+
/**
|
|
13
|
+
* Get or create database connection
|
|
14
|
+
*/
|
|
15
|
+
export declare function getDatabase(): Database.Database;
|
|
16
|
+
/**
|
|
17
|
+
* Save investigation session
|
|
18
|
+
*/
|
|
19
|
+
export declare function saveSession(result: InvestigationResult): void;
|
|
20
|
+
/**
|
|
21
|
+
* Get active session (most recent unclosed session)
|
|
22
|
+
*/
|
|
23
|
+
export declare function getActiveSession(): {
|
|
24
|
+
sessionId: string;
|
|
25
|
+
query: string;
|
|
26
|
+
} | null;
|
|
27
|
+
/**
|
|
28
|
+
* Get timeline item by index for active session
|
|
29
|
+
*/
|
|
30
|
+
export declare function getTimelineItem(sessionId: string, itemIndex: number): TimelineItem | null;
|
|
31
|
+
/**
|
|
32
|
+
* Add note to session
|
|
33
|
+
*/
|
|
34
|
+
export declare function addNote(sessionId: string, note: string): void;
|
|
35
|
+
/**
|
|
36
|
+
* Get all notes for a session
|
|
37
|
+
*/
|
|
38
|
+
export declare function getNotes(sessionId: string): Array<{
|
|
39
|
+
timestamp: string;
|
|
40
|
+
note: string;
|
|
41
|
+
}>;
|
|
42
|
+
/**
|
|
43
|
+
* Close session and save to incidents
|
|
44
|
+
*/
|
|
45
|
+
export declare function closeSession(sessionId: string, resolution: string, timeSavedMinutes: number): void;
|
|
46
|
+
//# sourceMappingURL=database.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAQlF;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAY/C;AAuDD;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAiC7D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAY9E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAYzF;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAS7D;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAUtF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,GACvB,IAAI,CA4CN"}
|
package/dist/database.js
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database module for session persistence
|
|
3
|
+
*
|
|
4
|
+
* Uses SQLite to store:
|
|
5
|
+
* - Investigation sessions
|
|
6
|
+
* - Session timeline items
|
|
7
|
+
* - Session notes
|
|
8
|
+
* - Closed incidents for recall
|
|
9
|
+
*/
|
|
10
|
+
import Database from 'better-sqlite3';
|
|
11
|
+
import path from 'node:path';
|
|
12
|
+
import fs from 'node:fs';
|
|
13
|
+
// Use test database path if running tests
|
|
14
|
+
const DB_DIR = process.env.NODE_ENV === 'test'
|
|
15
|
+
? path.join(process.cwd(), '.resolveai-test')
|
|
16
|
+
: path.join(process.cwd(), '.resolveai');
|
|
17
|
+
const DB_PATH = path.join(DB_DIR, 'memory.sqlite');
|
|
18
|
+
/**
|
|
19
|
+
* Get or create database connection
|
|
20
|
+
*/
|
|
21
|
+
export function getDatabase() {
|
|
22
|
+
// Ensure directory exists
|
|
23
|
+
if (!fs.existsSync(DB_DIR)) {
|
|
24
|
+
fs.mkdirSync(DB_DIR, { recursive: true });
|
|
25
|
+
}
|
|
26
|
+
const db = new Database(DB_PATH);
|
|
27
|
+
// Initialize schema if needed
|
|
28
|
+
initializeSchema(db);
|
|
29
|
+
return db;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Initialize database schema
|
|
33
|
+
*/
|
|
34
|
+
function initializeSchema(db) {
|
|
35
|
+
// Sessions table
|
|
36
|
+
db.exec(`
|
|
37
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
38
|
+
id TEXT PRIMARY KEY,
|
|
39
|
+
query TEXT NOT NULL,
|
|
40
|
+
mode TEXT NOT NULL,
|
|
41
|
+
created_at TEXT NOT NULL,
|
|
42
|
+
closed_at TEXT,
|
|
43
|
+
resolution TEXT,
|
|
44
|
+
time_saved_minutes INTEGER
|
|
45
|
+
)
|
|
46
|
+
`);
|
|
47
|
+
// Session timeline items
|
|
48
|
+
db.exec(`
|
|
49
|
+
CREATE TABLE IF NOT EXISTS session_timeline (
|
|
50
|
+
session_id TEXT NOT NULL,
|
|
51
|
+
item_id TEXT NOT NULL,
|
|
52
|
+
item_index INTEGER NOT NULL,
|
|
53
|
+
item_data TEXT NOT NULL,
|
|
54
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id)
|
|
55
|
+
)
|
|
56
|
+
`);
|
|
57
|
+
// Session notes
|
|
58
|
+
db.exec(`
|
|
59
|
+
CREATE TABLE IF NOT EXISTS session_notes (
|
|
60
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
61
|
+
session_id TEXT NOT NULL,
|
|
62
|
+
timestamp TEXT NOT NULL,
|
|
63
|
+
note TEXT NOT NULL,
|
|
64
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id)
|
|
65
|
+
)
|
|
66
|
+
`);
|
|
67
|
+
// Closed incidents for recall
|
|
68
|
+
db.exec(`
|
|
69
|
+
CREATE TABLE IF NOT EXISTS incidents (
|
|
70
|
+
id TEXT PRIMARY KEY,
|
|
71
|
+
query TEXT NOT NULL,
|
|
72
|
+
resolution TEXT NOT NULL,
|
|
73
|
+
time_saved_minutes INTEGER,
|
|
74
|
+
created_at TEXT NOT NULL,
|
|
75
|
+
closed_at TEXT NOT NULL,
|
|
76
|
+
timeline_summary TEXT
|
|
77
|
+
)
|
|
78
|
+
`);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Save investigation session
|
|
82
|
+
*/
|
|
83
|
+
export function saveSession(result) {
|
|
84
|
+
const db = getDatabase();
|
|
85
|
+
// Insert session
|
|
86
|
+
const insertSession = db.prepare(`
|
|
87
|
+
INSERT OR REPLACE INTO sessions (id, query, mode, created_at)
|
|
88
|
+
VALUES (?, ?, ?, ?)
|
|
89
|
+
`);
|
|
90
|
+
insertSession.run(result.sessionId, result.query, result.mode, new Date().toISOString());
|
|
91
|
+
// Insert timeline items
|
|
92
|
+
const insertItem = db.prepare(`
|
|
93
|
+
INSERT OR REPLACE INTO session_timeline (session_id, item_id, item_index, item_data)
|
|
94
|
+
VALUES (?, ?, ?, ?)
|
|
95
|
+
`);
|
|
96
|
+
for (let i = 0; i < result.timeline.length; i++) {
|
|
97
|
+
const item = result.timeline[i];
|
|
98
|
+
insertItem.run(result.sessionId, item.id, i + 1, // 1-indexed for user display
|
|
99
|
+
JSON.stringify(item));
|
|
100
|
+
}
|
|
101
|
+
db.close();
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Get active session (most recent unclosed session)
|
|
105
|
+
*/
|
|
106
|
+
export function getActiveSession() {
|
|
107
|
+
const db = getDatabase();
|
|
108
|
+
const session = db
|
|
109
|
+
.prepare('SELECT id, query FROM sessions WHERE closed_at IS NULL ORDER BY created_at DESC LIMIT 1')
|
|
110
|
+
.get();
|
|
111
|
+
db.close();
|
|
112
|
+
if (!session)
|
|
113
|
+
return null;
|
|
114
|
+
return { sessionId: session.id, query: session.query };
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get timeline item by index for active session
|
|
118
|
+
*/
|
|
119
|
+
export function getTimelineItem(sessionId, itemIndex) {
|
|
120
|
+
const db = getDatabase();
|
|
121
|
+
const row = db
|
|
122
|
+
.prepare('SELECT item_data FROM session_timeline WHERE session_id = ? AND item_index = ?')
|
|
123
|
+
.get(sessionId, itemIndex);
|
|
124
|
+
db.close();
|
|
125
|
+
if (!row)
|
|
126
|
+
return null;
|
|
127
|
+
return JSON.parse(row.item_data);
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Add note to session
|
|
131
|
+
*/
|
|
132
|
+
export function addNote(sessionId, note) {
|
|
133
|
+
const db = getDatabase();
|
|
134
|
+
db.prepare(`
|
|
135
|
+
INSERT INTO session_notes (session_id, timestamp, note)
|
|
136
|
+
VALUES (?, ?, ?)
|
|
137
|
+
`).run(sessionId, new Date().toISOString(), note);
|
|
138
|
+
db.close();
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get all notes for a session
|
|
142
|
+
*/
|
|
143
|
+
export function getNotes(sessionId) {
|
|
144
|
+
const db = getDatabase();
|
|
145
|
+
const notes = db
|
|
146
|
+
.prepare('SELECT timestamp, note FROM session_notes WHERE session_id = ? ORDER BY timestamp')
|
|
147
|
+
.all(sessionId);
|
|
148
|
+
db.close();
|
|
149
|
+
return notes;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Close session and save to incidents
|
|
153
|
+
*/
|
|
154
|
+
export function closeSession(sessionId, resolution, timeSavedMinutes) {
|
|
155
|
+
const db = getDatabase();
|
|
156
|
+
// Update session
|
|
157
|
+
db.prepare(`
|
|
158
|
+
UPDATE sessions
|
|
159
|
+
SET closed_at = ?, resolution = ?, time_saved_minutes = ?
|
|
160
|
+
WHERE id = ?
|
|
161
|
+
`).run(new Date().toISOString(), resolution, timeSavedMinutes, sessionId);
|
|
162
|
+
// Copy to incidents table for recall
|
|
163
|
+
const session = db
|
|
164
|
+
.prepare('SELECT query, created_at FROM sessions WHERE id = ?')
|
|
165
|
+
.get(sessionId);
|
|
166
|
+
if (session) {
|
|
167
|
+
// Get timeline summary
|
|
168
|
+
const timeline = db
|
|
169
|
+
.prepare('SELECT item_data FROM session_timeline WHERE session_id = ? ORDER BY item_index')
|
|
170
|
+
.all(sessionId);
|
|
171
|
+
const timelineSummary = timeline
|
|
172
|
+
.slice(0, 5)
|
|
173
|
+
.map((row) => {
|
|
174
|
+
const item = JSON.parse(row.item_data);
|
|
175
|
+
return `${item.signal}: ${item.summary}`;
|
|
176
|
+
})
|
|
177
|
+
.join('; ');
|
|
178
|
+
db.prepare(`
|
|
179
|
+
INSERT INTO incidents (id, query, resolution, time_saved_minutes, created_at, closed_at, timeline_summary)
|
|
180
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)
|
|
181
|
+
`).run(sessionId, session.query, resolution, timeSavedMinutes, session.created_at, new Date().toISOString(), timelineSummary);
|
|
182
|
+
}
|
|
183
|
+
db.close();
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=database.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
|