* feat(ui): timeline zoom * stable draggable markers * integrate zoom into panels, ready up ai stuff for zoom * tabs for ai, slider styles * fixes for zoom tabs * code style
34 lines
1 KiB
TypeScript
34 lines
1 KiB
TypeScript
import BaseService from 'App/services/BaseService';
|
|
|
|
export default class AiService extends BaseService {
|
|
/**
|
|
* @returns stream of text symbols
|
|
* */
|
|
async getSummary(sessionId: string, start?: number, end?: number): Promise<string | null> {
|
|
const r = await this.client.post(`/sessions/${sessionId}/intelligent/summary`, {
|
|
frameStartTimestamp: start,
|
|
frameEndTimestamp: end,
|
|
});
|
|
|
|
return r.json();
|
|
}
|
|
|
|
async getDetailedSummary(sessionId: string, networkEvents: any[], feat: 'errors' | 'issues' | 'journey', start: number, end: number): Promise<string | null> {
|
|
const r = await this.client.post(`/sessions/${sessionId}/intelligent/detailed-summary`, {
|
|
event: feat,
|
|
frameStartTimestamp: start,
|
|
frameEndTimestamp: end,
|
|
devtoolsEvents: networkEvents,
|
|
});
|
|
|
|
return r.json();
|
|
}
|
|
|
|
async getSearchFilters(query: string): Promise<Record<string, any>> {
|
|
const r = await this.client.post('/intelligent/search', {
|
|
question: query,
|
|
});
|
|
const { data } = await r.json();
|
|
return data;
|
|
}
|
|
}
|