@apps-megafy/agentic-chat 0.1.22
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/AdmissionChat.d.ts +3 -0
- package/dist/AdmissionChat.d.ts.map +1 -0
- package/dist/AdmissionChat.js +179 -0
- package/dist/AdmissionChat.js.map +1 -0
- package/dist/hooks/useAdmissionState.d.ts +9 -0
- package/dist/hooks/useAdmissionState.d.ts.map +1 -0
- package/dist/hooks/useAdmissionState.js +66 -0
- package/dist/hooks/useAdmissionState.js.map +1 -0
- package/dist/hooks/useAgentStream.d.ts +20 -0
- package/dist/hooks/useAgentStream.d.ts.map +1 -0
- package/dist/hooks/useAgentStream.js +680 -0
- package/dist/hooks/useAgentStream.js.map +1 -0
- package/dist/hooks/useDocumentUpload.d.ts +26 -0
- package/dist/hooks/useDocumentUpload.d.ts.map +1 -0
- package/dist/hooks/useDocumentUpload.js +72 -0
- package/dist/hooks/useDocumentUpload.js.map +1 -0
- package/dist/hooks/useVoiceInput.d.ts +14 -0
- package/dist/hooks/useVoiceInput.d.ts.map +1 -0
- package/dist/hooks/useVoiceInput.js +93 -0
- package/dist/hooks/useVoiceInput.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/services/agentClient.d.ts +38 -0
- package/dist/services/agentClient.d.ts.map +1 -0
- package/dist/services/agentClient.js +74 -0
- package/dist/services/agentClient.js.map +1 -0
- package/dist/services/websocketClient.d.ts +10 -0
- package/dist/services/websocketClient.d.ts.map +1 -0
- package/dist/services/websocketClient.js +29 -0
- package/dist/services/websocketClient.js.map +1 -0
- package/dist/types/index.d.ts +126 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../src/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { AgentAttachment } from "@apps-megafy/ui";
|
|
2
|
+
import type { ChangeEvent } from "react";
|
|
3
|
+
export interface UseDocumentUploadOptions {
|
|
4
|
+
accept?: string;
|
|
5
|
+
multiple?: boolean;
|
|
6
|
+
onUpload?: (file: File) => Promise<AgentAttachment>;
|
|
7
|
+
onUploaded?: (attachment: AgentAttachment, file: File) => void | Promise<void>;
|
|
8
|
+
onError?: (error: Error) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function useDocumentUpload({ accept, multiple, onUpload, onUploaded, onError }?: UseDocumentUploadOptions): {
|
|
11
|
+
inputRef: import("react").RefObject<HTMLInputElement | null>;
|
|
12
|
+
documents: AgentAttachment[];
|
|
13
|
+
isUploading: boolean;
|
|
14
|
+
openFilePicker: () => void;
|
|
15
|
+
/** Procesa un File directamente (p.ej. captura de cámara). */
|
|
16
|
+
handleFile: (file: File) => Promise<void>;
|
|
17
|
+
inputProps: {
|
|
18
|
+
ref: import("react").RefObject<HTMLInputElement | null>;
|
|
19
|
+
type: "file";
|
|
20
|
+
accept: string;
|
|
21
|
+
multiple: boolean;
|
|
22
|
+
className: string;
|
|
23
|
+
onChange: (event: ChangeEvent<HTMLInputElement>) => Promise<void>;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=useDocumentUpload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDocumentUpload.d.ts","sourceRoot":"","sources":["../../src/hooks/useDocumentUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGzC,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACpD,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,wBAAgB,iBAAiB,CAAC,EAChC,MAAyD,EACzD,QAAgB,EAChB,QAAQ,EACR,UAAU,EACV,OAAO,EACR,GAAE,wBAA6B;;;;;IA4C5B,8DAA8D;uBAlCjD,IAAI;;;;;;;0BA0CG,WAAW,CAAC,gBAAgB,CAAC;;EAIpD"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { useCallback, useRef, useState } from "react";
|
|
2
|
+
export function useDocumentUpload({ accept = "application/pdf,image/png,image/jpeg,image/jpg", multiple = false, onUpload, onUploaded, onError } = {}) {
|
|
3
|
+
const inputRef = useRef(null);
|
|
4
|
+
const [documents, setDocuments] = useState([]);
|
|
5
|
+
const [isUploading, setIsUploading] = useState(false);
|
|
6
|
+
const openFilePicker = useCallback(() => {
|
|
7
|
+
inputRef.current?.click();
|
|
8
|
+
}, []);
|
|
9
|
+
const processFile = useCallback(async (file) => {
|
|
10
|
+
setIsUploading(true);
|
|
11
|
+
try {
|
|
12
|
+
const attachment = onUpload ? await onUpload(file) : createLocalAttachment(file);
|
|
13
|
+
setDocuments((current) => [...current, attachment]);
|
|
14
|
+
await onUploaded?.(attachment, file);
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
const normalizedError = error instanceof Error ? error : new Error("No se pudo subir el documento.");
|
|
18
|
+
onError?.(normalizedError);
|
|
19
|
+
}
|
|
20
|
+
finally {
|
|
21
|
+
setIsUploading(false);
|
|
22
|
+
}
|
|
23
|
+
}, [onError, onUpload, onUploaded]);
|
|
24
|
+
const handleFiles = useCallback(async (files, inputEl) => {
|
|
25
|
+
if (!files?.length)
|
|
26
|
+
return;
|
|
27
|
+
const selectedFiles = multiple ? Array.from(files) : [files[0]];
|
|
28
|
+
for (const file of selectedFiles) {
|
|
29
|
+
await processFile(file);
|
|
30
|
+
}
|
|
31
|
+
if (inputEl)
|
|
32
|
+
inputEl.value = "";
|
|
33
|
+
}, [multiple, processFile]);
|
|
34
|
+
return {
|
|
35
|
+
inputRef,
|
|
36
|
+
documents,
|
|
37
|
+
isUploading,
|
|
38
|
+
openFilePicker,
|
|
39
|
+
/** Procesa un File directamente (p.ej. captura de cámara). */
|
|
40
|
+
handleFile: processFile,
|
|
41
|
+
inputProps: {
|
|
42
|
+
ref: inputRef,
|
|
43
|
+
type: "file",
|
|
44
|
+
accept,
|
|
45
|
+
multiple,
|
|
46
|
+
className: "hidden",
|
|
47
|
+
onChange: (event) => handleFiles(event.target.files, event.target),
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function createLocalAttachment(file) {
|
|
52
|
+
const isImage = file.type.startsWith("image/");
|
|
53
|
+
return {
|
|
54
|
+
id: `${file.name}-${file.lastModified}`,
|
|
55
|
+
name: file.name,
|
|
56
|
+
url: URL.createObjectURL(file),
|
|
57
|
+
kind: isImage ? "image" : "document",
|
|
58
|
+
mimeType: file.type,
|
|
59
|
+
sizeLabel: formatBytes(file.size),
|
|
60
|
+
sizeBytes: file.size
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
function formatBytes(bytes) {
|
|
64
|
+
if (bytes < 1024) {
|
|
65
|
+
return `${bytes} B`;
|
|
66
|
+
}
|
|
67
|
+
if (bytes < 1024 * 1024) {
|
|
68
|
+
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
69
|
+
}
|
|
70
|
+
return `${(bytes / 1024 / 1024).toFixed(1)} MB`;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=useDocumentUpload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDocumentUpload.js","sourceRoot":"","sources":["../../src/hooks/useDocumentUpload.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface UseVoiceInputOptions {
|
|
2
|
+
/** URL base del STT service. Ej: "http://localhost:8001". Vacío = deshabilitado. */
|
|
3
|
+
sttUrl: string;
|
|
4
|
+
/** Llamado con el texto transcripto cuando la operación finaliza con éxito. */
|
|
5
|
+
onTranscript: (text: string) => void;
|
|
6
|
+
onError?: (error: Error) => void;
|
|
7
|
+
}
|
|
8
|
+
export interface UseVoiceInputReturn {
|
|
9
|
+
isRecording: boolean;
|
|
10
|
+
isTranscribing: boolean;
|
|
11
|
+
toggle: () => void;
|
|
12
|
+
}
|
|
13
|
+
export declare function useVoiceInput({ sttUrl, onTranscript, onError, }: UseVoiceInputOptions): UseVoiceInputReturn;
|
|
14
|
+
//# sourceMappingURL=useVoiceInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVoiceInput.d.ts","sourceRoot":"","sources":["../../src/hooks/useVoiceInput.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,oFAAoF;IACpF,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,YAAY,EACZ,OAAO,GACR,EAAE,oBAAoB,GAAG,mBAAmB,CAoF5C"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { useCallback, useRef, useState } from "react";
|
|
2
|
+
export function useVoiceInput({ sttUrl, onTranscript, onError, }) {
|
|
3
|
+
const [isRecording, setIsRecording] = useState(false);
|
|
4
|
+
const [isTranscribing, setIsTranscribing] = useState(false);
|
|
5
|
+
const recorderRef = useRef(null);
|
|
6
|
+
const chunksRef = useRef([]);
|
|
7
|
+
const stop = useCallback(() => {
|
|
8
|
+
recorderRef.current?.stop();
|
|
9
|
+
recorderRef.current = null;
|
|
10
|
+
setIsRecording(false);
|
|
11
|
+
}, []);
|
|
12
|
+
const start = useCallback(async () => {
|
|
13
|
+
if (!sttUrl) {
|
|
14
|
+
onError?.(new Error("El servicio de transcripción de voz no está configurado."));
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
let stream;
|
|
18
|
+
try {
|
|
19
|
+
stream = await navigator.mediaDevices.getUserMedia({ audio: true });
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
onError?.(new Error("No se pudo acceder al micrófono."));
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const mimeType = pickMimeType();
|
|
26
|
+
const recorder = new MediaRecorder(stream, mimeType ? { mimeType } : undefined);
|
|
27
|
+
chunksRef.current = [];
|
|
28
|
+
recorder.ondataavailable = (event) => {
|
|
29
|
+
if (event.data.size > 0)
|
|
30
|
+
chunksRef.current.push(event.data);
|
|
31
|
+
};
|
|
32
|
+
recorder.onstop = async () => {
|
|
33
|
+
stream.getTracks().forEach((track) => track.stop());
|
|
34
|
+
const blob = new Blob(chunksRef.current, {
|
|
35
|
+
type: recorder.mimeType || "audio/webm",
|
|
36
|
+
});
|
|
37
|
+
if (blob.size === 0) {
|
|
38
|
+
onError?.(new Error("No se capturó audio."));
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
setIsTranscribing(true);
|
|
42
|
+
try {
|
|
43
|
+
const form = new FormData();
|
|
44
|
+
const ext = extensionFromMime(recorder.mimeType);
|
|
45
|
+
form.append("audio", blob, `recording.${ext}`);
|
|
46
|
+
const res = await fetch(`${sttUrl.replace(/\/$/, "")}/transcribe`, {
|
|
47
|
+
method: "POST",
|
|
48
|
+
body: form,
|
|
49
|
+
});
|
|
50
|
+
if (!res.ok) {
|
|
51
|
+
throw new Error(`Error del servidor STT (${res.status})`);
|
|
52
|
+
}
|
|
53
|
+
const data = (await res.json());
|
|
54
|
+
onTranscript(data.text ?? "");
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
onError?.(err instanceof Error ? err : new Error(String(err)));
|
|
58
|
+
}
|
|
59
|
+
finally {
|
|
60
|
+
setIsTranscribing(false);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
recorder.start();
|
|
64
|
+
recorderRef.current = recorder;
|
|
65
|
+
setIsRecording(true);
|
|
66
|
+
}, [sttUrl, onTranscript, onError]);
|
|
67
|
+
const toggle = useCallback(() => {
|
|
68
|
+
if (isRecording) {
|
|
69
|
+
stop();
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
start();
|
|
73
|
+
}
|
|
74
|
+
}, [isRecording, start, stop]);
|
|
75
|
+
return { isRecording, isTranscribing, toggle };
|
|
76
|
+
}
|
|
77
|
+
function pickMimeType() {
|
|
78
|
+
const candidates = [
|
|
79
|
+
"audio/webm;codecs=opus",
|
|
80
|
+
"audio/webm",
|
|
81
|
+
"audio/ogg;codecs=opus",
|
|
82
|
+
"audio/mp4",
|
|
83
|
+
];
|
|
84
|
+
return candidates.find((type) => MediaRecorder.isTypeSupported(type));
|
|
85
|
+
}
|
|
86
|
+
function extensionFromMime(mimeType) {
|
|
87
|
+
if (mimeType.includes("ogg"))
|
|
88
|
+
return "ogg";
|
|
89
|
+
if (mimeType.includes("mp4"))
|
|
90
|
+
return "mp4";
|
|
91
|
+
return "webm";
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=useVoiceInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVoiceInput.js","sourceRoot":"","sources":["../../src/hooks/useVoiceInput.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./AdmissionChat";
|
|
2
|
+
export * from "./hooks/useAdmissionState";
|
|
3
|
+
export * from "./hooks/useAgentStream";
|
|
4
|
+
export * from "./hooks/useDocumentUpload";
|
|
5
|
+
export * from "./hooks/useVoiceInput";
|
|
6
|
+
export * from "./services/agentClient";
|
|
7
|
+
export * from "./services/websocketClient";
|
|
8
|
+
export * from "./types";
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,SAAS,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./AdmissionChat";
|
|
2
|
+
export * from "./hooks/useAdmissionState";
|
|
3
|
+
export * from "./hooks/useAgentStream";
|
|
4
|
+
export * from "./hooks/useDocumentUpload";
|
|
5
|
+
export * from "./hooks/useVoiceInput";
|
|
6
|
+
export * from "./services/agentClient";
|
|
7
|
+
export * from "./services/websocketClient";
|
|
8
|
+
export * from "./types";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export interface ResolveAgentUrlOptions {
|
|
2
|
+
sessionId: string;
|
|
3
|
+
websocketUrl?: string;
|
|
4
|
+
agentBaseUrl?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ClientDocumentMessage {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
kind: "image" | "document";
|
|
10
|
+
mimeType?: string;
|
|
11
|
+
sizeBytes?: number;
|
|
12
|
+
contentBase64: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ClientDocumentReferenceMessage {
|
|
15
|
+
id: string;
|
|
16
|
+
name: string;
|
|
17
|
+
kind: "image" | "document";
|
|
18
|
+
mimeType?: string;
|
|
19
|
+
sizeBytes?: number;
|
|
20
|
+
storage: "s3";
|
|
21
|
+
bucket: string;
|
|
22
|
+
key: string;
|
|
23
|
+
}
|
|
24
|
+
export interface ClientQuickActionMessage {
|
|
25
|
+
id: string;
|
|
26
|
+
label: string;
|
|
27
|
+
value?: string;
|
|
28
|
+
}
|
|
29
|
+
export declare function resolveAgentWebSocketUrl({ sessionId, websocketUrl, agentBaseUrl }: ResolveAgentUrlOptions): string;
|
|
30
|
+
export declare function getEnvValue(key: string): string | undefined;
|
|
31
|
+
export declare function createClientMessage(content: string): string;
|
|
32
|
+
export declare function createClientPingMessage(): string;
|
|
33
|
+
export declare function createClientQuickActionMessage(action: ClientQuickActionMessage): string;
|
|
34
|
+
export declare function createClientDocumentMessage(document: ClientDocumentMessage): string;
|
|
35
|
+
export declare function createClientDocumentReferenceMessage(document: ClientDocumentReferenceMessage): string;
|
|
36
|
+
export declare function createClientResetSessionMessage(): string;
|
|
37
|
+
export declare function createClientBulkAnswerMessage(widgetId: string, answers: Record<string, string>): string;
|
|
38
|
+
//# sourceMappingURL=agentClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentClient.d.ts","sourceRoot":"","sources":["../../src/services/agentClient.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,YAAY,EACZ,YAAY,EACb,EAAE,sBAAsB,GAAG,MAAM,CAiBjC;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAU3D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,UAElD;AAED,wBAAgB,uBAAuB,WAEtC;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,wBAAwB,UAS9E;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,qBAAqB,UAY1E;AAED,wBAAgB,oCAAoC,CAAC,QAAQ,EAAE,8BAA8B,UAc5F;AAED,wBAAgB,+BAA+B,WAE9C;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAGhC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
const DEFAULT_AGENT_BASE_URL = "ws://127.0.0.1:8000";
|
|
2
|
+
export function resolveAgentWebSocketUrl({ sessionId, websocketUrl, agentBaseUrl }) {
|
|
3
|
+
if (websocketUrl) {
|
|
4
|
+
return websocketUrl.replace(":sessionId", encodeURIComponent(sessionId));
|
|
5
|
+
}
|
|
6
|
+
const baseUrl = agentBaseUrl ??
|
|
7
|
+
getEnvValue("VITE_ADMISSION_AGENT_WS_URL") ??
|
|
8
|
+
getEnvValue("NEXT_PUBLIC_ADMISSION_AGENT_WS_URL") ??
|
|
9
|
+
DEFAULT_AGENT_BASE_URL;
|
|
10
|
+
const normalizedBase = baseUrl
|
|
11
|
+
.replace(/^http:\/\//, "ws://")
|
|
12
|
+
.replace(/^https:\/\//, "wss://")
|
|
13
|
+
.replace(/\/$/, "");
|
|
14
|
+
return `${normalizedBase}/ws/chat/${encodeURIComponent(sessionId)}`;
|
|
15
|
+
}
|
|
16
|
+
export function getEnvValue(key) {
|
|
17
|
+
const metaValue = import.meta.env?.[key];
|
|
18
|
+
if (metaValue) {
|
|
19
|
+
return metaValue;
|
|
20
|
+
}
|
|
21
|
+
const maybeProcess = globalThis;
|
|
22
|
+
return maybeProcess.process?.env?.[key];
|
|
23
|
+
}
|
|
24
|
+
export function createClientMessage(content) {
|
|
25
|
+
return JSON.stringify({ type: "message", content });
|
|
26
|
+
}
|
|
27
|
+
export function createClientPingMessage() {
|
|
28
|
+
return JSON.stringify({ type: "ping" });
|
|
29
|
+
}
|
|
30
|
+
export function createClientQuickActionMessage(action) {
|
|
31
|
+
return JSON.stringify({
|
|
32
|
+
type: "quick_action",
|
|
33
|
+
action: {
|
|
34
|
+
id: action.id,
|
|
35
|
+
label: action.label,
|
|
36
|
+
value: action.value
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
export function createClientDocumentMessage(document) {
|
|
41
|
+
return JSON.stringify({
|
|
42
|
+
type: "document",
|
|
43
|
+
document: {
|
|
44
|
+
id: document.id,
|
|
45
|
+
name: document.name,
|
|
46
|
+
kind: document.kind,
|
|
47
|
+
mime_type: document.mimeType,
|
|
48
|
+
size_bytes: document.sizeBytes,
|
|
49
|
+
content_base64: document.contentBase64
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
export function createClientDocumentReferenceMessage(document) {
|
|
54
|
+
return JSON.stringify({
|
|
55
|
+
type: "document",
|
|
56
|
+
document: {
|
|
57
|
+
id: document.id,
|
|
58
|
+
name: document.name,
|
|
59
|
+
kind: document.kind,
|
|
60
|
+
mime_type: document.mimeType,
|
|
61
|
+
size_bytes: document.sizeBytes,
|
|
62
|
+
storage: document.storage,
|
|
63
|
+
bucket: document.bucket,
|
|
64
|
+
key: document.key
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
export function createClientResetSessionMessage() {
|
|
69
|
+
return JSON.stringify({ type: "reset_session" });
|
|
70
|
+
}
|
|
71
|
+
export function createClientBulkAnswerMessage(widgetId, answers) {
|
|
72
|
+
return JSON.stringify({ type: "bulk_answer", widget_id: widgetId, answers });
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=agentClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentClient.js","sourceRoot":"","sources":["../../src/services/agentClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ServerMessage } from "../types";
|
|
2
|
+
export type AgentSocketHandler = {
|
|
3
|
+
onOpen?: () => void;
|
|
4
|
+
onMessage?: (message: ServerMessage) => void;
|
|
5
|
+
onError?: (error: Event) => void;
|
|
6
|
+
onClose?: (event: CloseEvent) => void;
|
|
7
|
+
};
|
|
8
|
+
export declare function createAgentSocket(url: string, handler: AgentSocketHandler): WebSocket;
|
|
9
|
+
export declare function parseServerMessage(raw: unknown): ServerMessage | null;
|
|
10
|
+
//# sourceMappingURL=websocketClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocketClient.d.ts","sourceRoot":"","sources":["../../src/services/websocketClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,aAczE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAcrE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export function createAgentSocket(url, handler) {
|
|
2
|
+
const socket = new WebSocket(url);
|
|
3
|
+
socket.addEventListener("open", () => handler.onOpen?.());
|
|
4
|
+
socket.addEventListener("error", (event) => handler.onError?.(event));
|
|
5
|
+
socket.addEventListener("close", (event) => handler.onClose?.(event));
|
|
6
|
+
socket.addEventListener("message", (event) => {
|
|
7
|
+
const parsed = parseServerMessage(event.data);
|
|
8
|
+
if (parsed) {
|
|
9
|
+
handler.onMessage?.(parsed);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return socket;
|
|
13
|
+
}
|
|
14
|
+
export function parseServerMessage(raw) {
|
|
15
|
+
if (typeof raw !== "string") {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
const parsed = JSON.parse(raw);
|
|
20
|
+
if (!parsed || typeof parsed !== "object" || !("type" in parsed)) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
return parsed;
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=websocketClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocketClient.js","sourceRoot":"","sources":["../../src/services/websocketClient.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,OAA2B;IACxE,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;IAElC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;QAChD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { AgentAttachment, AgentMessage, AgentVisualConfig, ConfirmationSummary, FrontendWidget, QuickAction } from "@apps-megafy/ui";
|
|
2
|
+
export interface PhaseSectionProgress {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
total: number;
|
|
6
|
+
completed: number;
|
|
7
|
+
}
|
|
8
|
+
export interface PhaseProgress {
|
|
9
|
+
id: string;
|
|
10
|
+
label: string;
|
|
11
|
+
total: number;
|
|
12
|
+
completed: number;
|
|
13
|
+
sections?: PhaseSectionProgress[];
|
|
14
|
+
}
|
|
15
|
+
export interface AdmissionProgressSummary {
|
|
16
|
+
total: number;
|
|
17
|
+
completed: number;
|
|
18
|
+
percentage: number;
|
|
19
|
+
phases?: PhaseProgress[];
|
|
20
|
+
fields?: {
|
|
21
|
+
total: number;
|
|
22
|
+
completed: number;
|
|
23
|
+
};
|
|
24
|
+
documents?: {
|
|
25
|
+
total: number;
|
|
26
|
+
completed: number;
|
|
27
|
+
};
|
|
28
|
+
questionnaires?: {
|
|
29
|
+
total: number;
|
|
30
|
+
completed: number;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export interface AdmissionConsentConfig {
|
|
34
|
+
title: string;
|
|
35
|
+
body: string;
|
|
36
|
+
required?: boolean;
|
|
37
|
+
}
|
|
38
|
+
export interface AdmissionChatTheme extends AgentVisualConfig {
|
|
39
|
+
headerTitle?: string;
|
|
40
|
+
headerSubtitle?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface AdmissionChatProps {
|
|
43
|
+
sessionId: string;
|
|
44
|
+
websocketUrl?: string;
|
|
45
|
+
agentBaseUrl?: string;
|
|
46
|
+
documentUploadUrl?: string;
|
|
47
|
+
sttUrl?: string;
|
|
48
|
+
theme?: AdmissionChatTheme;
|
|
49
|
+
consent?: AdmissionConsentConfig;
|
|
50
|
+
initialMessages?: AgentMessage[];
|
|
51
|
+
inputPlaceholder?: string;
|
|
52
|
+
connectionTimeoutMs?: number;
|
|
53
|
+
className?: string;
|
|
54
|
+
showResetButton?: boolean;
|
|
55
|
+
onResetSession?: () => void;
|
|
56
|
+
onDocumentUpload?: (file: File) => Promise<AgentAttachment>;
|
|
57
|
+
onError?: (error: Error) => void;
|
|
58
|
+
}
|
|
59
|
+
export type AgentConnectionStatus = 'idle' | 'connecting' | 'open' | 'closed' | 'error' | 'timeout';
|
|
60
|
+
export type ServerMessage = {
|
|
61
|
+
type: 'session_ready';
|
|
62
|
+
session_id: string;
|
|
63
|
+
is_new: boolean;
|
|
64
|
+
progress?: AdmissionProgressSummary;
|
|
65
|
+
quick_actions?: QuickAction[];
|
|
66
|
+
widgets?: FrontendWidget[];
|
|
67
|
+
} | {
|
|
68
|
+
type: 'history';
|
|
69
|
+
messages: Array<{
|
|
70
|
+
role: 'user' | 'assistant';
|
|
71
|
+
content: string;
|
|
72
|
+
attachments?: AgentAttachment[];
|
|
73
|
+
confirmation?: ConfirmationSummary;
|
|
74
|
+
}>;
|
|
75
|
+
quick_actions?: QuickAction[];
|
|
76
|
+
widgets?: FrontendWidget[];
|
|
77
|
+
} | {
|
|
78
|
+
type: 'message';
|
|
79
|
+
role: 'assistant' | 'user';
|
|
80
|
+
content: string;
|
|
81
|
+
attachments?: AgentAttachment[];
|
|
82
|
+
confirmation?: ConfirmationSummary;
|
|
83
|
+
quick_actions?: QuickAction[];
|
|
84
|
+
widgets?: FrontendWidget[];
|
|
85
|
+
} | {
|
|
86
|
+
type: 'stream_start';
|
|
87
|
+
} | {
|
|
88
|
+
type: 'stream_token';
|
|
89
|
+
token: string;
|
|
90
|
+
} | {
|
|
91
|
+
type: 'stream_end';
|
|
92
|
+
content: string;
|
|
93
|
+
attachments?: AgentAttachment[];
|
|
94
|
+
confirmation?: ConfirmationSummary;
|
|
95
|
+
quick_actions?: QuickAction[];
|
|
96
|
+
widgets?: FrontendWidget[];
|
|
97
|
+
} | {
|
|
98
|
+
type: 'quick_actions';
|
|
99
|
+
actions: QuickAction[];
|
|
100
|
+
} | {
|
|
101
|
+
type: 'widgets';
|
|
102
|
+
widgets: FrontendWidget[];
|
|
103
|
+
} | {
|
|
104
|
+
type: 'progress';
|
|
105
|
+
data: AdmissionProgressSummary;
|
|
106
|
+
complete?: boolean;
|
|
107
|
+
quick_actions?: QuickAction[];
|
|
108
|
+
widgets?: FrontendWidget[];
|
|
109
|
+
} | {
|
|
110
|
+
type: 'pong';
|
|
111
|
+
} | {
|
|
112
|
+
type: 'error';
|
|
113
|
+
code: string;
|
|
114
|
+
message: string;
|
|
115
|
+
};
|
|
116
|
+
export interface UseAgentStreamOptions {
|
|
117
|
+
sessionId: string;
|
|
118
|
+
websocketUrl?: string;
|
|
119
|
+
agentBaseUrl?: string;
|
|
120
|
+
documentUploadUrl?: string;
|
|
121
|
+
initialMessages?: AgentMessage[];
|
|
122
|
+
connectionTimeoutMs?: number;
|
|
123
|
+
onProgress?: (progress: AdmissionProgressSummary) => void;
|
|
124
|
+
onError?: (error: Error) => void;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IAEzB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACvD;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAEpG,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,wBAAwB,CAAC;IACpC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;QAChC,YAAY,CAAC,EAAE,mBAAmB,CAAC;KACpC,CAAC,CAAC;IACH,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,GACD;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACvC;IACE,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,GACD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,GACD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAErD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC1D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
|