cmcts-c-agent-embedding 1.0.8 → 1.0.9-cagent
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/.env +5 -36
- package/.env.example +34 -34
- package/.eslintrc.cjs +14 -14
- package/.prettierignore +3 -3
- package/.prettierrc +8 -8
- package/base.json +21 -21
- package/dist/components/Bot.d.ts +10 -0
- package/dist/components/Bot.d.ts.map +1 -1
- package/dist/components/FeedbackContentDialog.d.ts +3 -0
- package/dist/components/FeedbackContentDialog.d.ts.map +1 -1
- package/dist/components/Toast.d.ts +10 -0
- package/dist/components/Toast.d.ts.map +1 -0
- package/dist/components/bubbles/BotBubble.d.ts +5 -0
- package/dist/components/bubbles/BotBubble.d.ts.map +1 -1
- package/dist/components/bubbles/GuestBubble.d.ts.map +1 -1
- package/dist/components/bubbles/LoadingBubble.d.ts +7 -1
- package/dist/components/bubbles/LoadingBubble.d.ts.map +1 -1
- package/dist/components/bubbles/SourceBubble.d.ts.map +1 -1
- package/dist/components/bubbles/StarterPromptBubble.d.ts.map +1 -1
- package/dist/components/buttons/CopyMessageButton.d.ts +10 -0
- package/dist/components/buttons/CopyMessageButton.d.ts.map +1 -0
- package/dist/components/buttons/EditMessageButton.d.ts +8 -0
- package/dist/components/buttons/EditMessageButton.d.ts.map +1 -0
- package/dist/components/buttons/FeedbackButtons.d.ts +1 -0
- package/dist/components/buttons/FeedbackButtons.d.ts.map +1 -1
- package/dist/components/buttons/PopupToast.d.ts +7 -0
- package/dist/components/buttons/PopupToast.d.ts.map +1 -0
- package/dist/components/buttons/SendButton.d.ts +1 -0
- package/dist/components/buttons/SendButton.d.ts.map +1 -1
- package/dist/components/dialogs/EditMessageDialog.d.ts +9 -0
- package/dist/components/dialogs/EditMessageDialog.d.ts.map +1 -0
- package/dist/components/icons/AddImageIcon.d.ts.map +1 -1
- package/dist/components/icons/CheckIcon.d.ts +3 -0
- package/dist/components/icons/CheckIcon.d.ts.map +1 -0
- package/dist/components/icons/CmcIcon.d.ts +3 -0
- package/dist/components/icons/CmcIcon.d.ts.map +1 -0
- package/dist/components/icons/CopyIcon.d.ts +5 -0
- package/dist/components/icons/CopyIcon.d.ts.map +1 -0
- package/dist/components/icons/EditIcon.d.ts +5 -0
- package/dist/components/icons/EditIcon.d.ts.map +1 -0
- package/dist/components/icons/FullScreenIcon.d.ts +3 -0
- package/dist/components/icons/FullScreenIcon.d.ts.map +1 -0
- package/dist/components/icons/ResetBtn.d.ts +3 -0
- package/dist/components/icons/ResetBtn.d.ts.map +1 -0
- package/dist/components/icons/SendIconOff.d.ts +3 -0
- package/dist/components/icons/SendIconOff.d.ts.map +1 -0
- package/dist/components/icons/SendIconOn.d.ts +3 -0
- package/dist/components/icons/SendIconOn.d.ts.map +1 -0
- package/dist/components/icons/ThumbsDownIcon.d.ts +3 -1
- package/dist/components/icons/ThumbsDownIcon.d.ts.map +1 -1
- package/dist/components/icons/ThumbsUpIcon.d.ts +3 -1
- package/dist/components/icons/ThumbsUpIcon.d.ts.map +1 -1
- package/dist/components/icons/index.d.ts +4 -0
- package/dist/components/icons/index.d.ts.map +1 -1
- package/dist/components/image/PreviewImage.d.ts +5 -0
- package/dist/components/image/PreviewImage.d.ts.map +1 -0
- package/dist/components/inputs/textInput/components/ShortTextInput.d.ts +3 -0
- package/dist/components/inputs/textInput/components/ShortTextInput.d.ts.map +1 -1
- package/dist/components/inputs/textInput/components/TextInput.d.ts +19 -3
- package/dist/components/inputs/textInput/components/TextInput.d.ts.map +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/features/bubble/components/Bubble.d.ts.map +1 -1
- package/dist/features/bubble/types.d.ts +1 -0
- package/dist/features/bubble/types.d.ts.map +1 -1
- package/dist/features/full/components/Full.d.ts.map +1 -1
- package/dist/features/popup/components/Popup.d.ts +0 -1
- package/dist/features/popup/components/Popup.d.ts.map +1 -1
- package/dist/queries/sendMessageQuery.d.ts +47 -1
- package/dist/queries/sendMessageQuery.d.ts.map +1 -1
- package/dist/test/ScrollTest.d.ts +6 -0
- package/dist/test/ScrollTest.d.ts.map +1 -0
- package/dist/test/integrateBotScrollTest.d.ts +74 -0
- package/dist/test/integrateBotScrollTest.d.ts.map +1 -0
- package/dist/utils/googleAnalytics.d.ts +194 -0
- package/dist/utils/googleAnalytics.d.ts.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/scrollTestUtils.d.ts +130 -0
- package/dist/utils/scrollTestUtils.d.ts.map +1 -0
- package/dist/utils/security.d.ts +60 -0
- package/dist/utils/security.d.ts.map +1 -0
- package/dist/utils/security.test.d.ts +6 -0
- package/dist/utils/security.test.d.ts.map +1 -0
- package/dist/utils/ultimateJsonParser.d.ts +2 -0
- package/dist/utils/ultimateJsonParser.d.ts.map +1 -0
- package/dist/web.d.ts +4 -0
- package/dist/web.d.ts.map +1 -1
- package/dist/web.js +1 -1
- package/dist/window.d.ts +2 -0
- package/dist/window.d.ts.map +1 -1
- package/package.json +81 -79
- package/public/index.html +154 -155
- package/.husky/pre-commit +0 -18
- package/.idea/Flowise-share-chatbox.iml +0 -13
- package/.idea/codeStyles/Project.xml +0 -60
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/inspectionProfiles/Project_Default.xml +0 -16
- package/.idea/modules.xml +0 -9
- package/.idea/prettier.xml +0 -6
- package/.idea/vcs.xml +0 -7
- package/a.json +0 -57
- package/bun.lockb +0 -0
- package/dist/BubbleChat.d.ts +0 -13
- package/dist/BubbleChat.d.ts.map +0 -1
- package/dist/FullPageChat.d.ts +0 -18
- package/dist/FullPageChat.d.ts.map +0 -1
- package/dist/components/ImageUploadButton.d.ts +0 -11
- package/dist/components/ImageUploadButton.d.ts.map +0 -1
- package/dist/components/RecordAudioButton.d.ts +0 -11
- package/dist/components/RecordAudioButton.d.ts.map +0 -1
- package/dist/components/SendButton.d.ts +0 -12
- package/dist/components/SendButton.d.ts.map +0 -1
- package/dist/index.js +0 -1
- package/test.html +0 -17
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { Setter } from 'solid-js';
|
|
2
|
-
import { FileEvent, UploadsConfig } from '@/components/Bot';
|
|
2
|
+
import { FileEvent, IAction, UploadsConfig } from '@/components/Bot';
|
|
3
|
+
type FilePreviewData = string | ArrayBuffer;
|
|
4
|
+
type FilePreview = {
|
|
5
|
+
data: FilePreviewData;
|
|
6
|
+
mime: string;
|
|
7
|
+
name: string;
|
|
8
|
+
preview: string;
|
|
9
|
+
type: string;
|
|
10
|
+
};
|
|
3
11
|
type TextInputProps = {
|
|
4
12
|
placeholder?: string;
|
|
5
13
|
backgroundColor?: string;
|
|
@@ -8,11 +16,11 @@ type TextInputProps = {
|
|
|
8
16
|
inputValue: string;
|
|
9
17
|
fontSize?: number;
|
|
10
18
|
disabled?: boolean;
|
|
11
|
-
onSubmit: (value: string) => void;
|
|
19
|
+
onSubmit: (value: string, action?: IAction | undefined | null, faqId?: string) => void;
|
|
12
20
|
onInputChange: (value: string) => void;
|
|
13
21
|
uploadsConfig?: Partial<UploadsConfig>;
|
|
14
22
|
isFullFileUpload?: boolean;
|
|
15
|
-
setPreviews: Setter<
|
|
23
|
+
setPreviews: Setter<FilePreview[]>;
|
|
16
24
|
onMicrophoneClicked: () => void;
|
|
17
25
|
handleFileChange: (event: FileEvent<HTMLInputElement>) => void;
|
|
18
26
|
maxChars?: number;
|
|
@@ -22,6 +30,14 @@ type TextInputProps = {
|
|
|
22
30
|
sendSoundLocation?: string;
|
|
23
31
|
enableInputHistory?: boolean;
|
|
24
32
|
maxHistorySize?: number;
|
|
33
|
+
isLoading?: boolean;
|
|
34
|
+
apiHost?: string;
|
|
35
|
+
chatflowid: string;
|
|
36
|
+
isUseFAQ?: boolean;
|
|
37
|
+
setDisableInput: Setter<boolean>;
|
|
38
|
+
isWelcomeScreen?: boolean;
|
|
39
|
+
onFocus?: () => void;
|
|
40
|
+
onBlur?: () => void;
|
|
25
41
|
};
|
|
26
42
|
export declare const TextInput: (props: TextInputProps) => import("solid-js").JSX.Element;
|
|
27
43
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.d.ts","sourceRoot":"","sources":["../../../../../src/components/inputs/textInput/components/TextInput.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TextInput.d.ts","sourceRoot":"","sources":["../../../../../src/components/inputs/textInput/components/TextInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAA6C,MAAM,EAAO,MAAM,UAAU,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOrE,KAAK,eAAe,GAAG,MAAM,GAAG,WAAW,CAAC;AAC5C,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,KAAK,cAAc,GAAG;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACvF,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACnC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAOF,eAAO,MAAM,SAAS,UAAW,cAAc,mCA0X9C,CAAC"}
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,eAAO,MAAM,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,eAAO,MAAM,eAAe,EAAE,WAgB7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bubble.d.ts","sourceRoot":"","sources":["../../../../src/features/bubble/components/Bubble.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAO,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAOxD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,YAAY,CAAC;AAElD,eAAO,MAAM,MAAM,UAAW,WAAW,
|
|
1
|
+
{"version":3,"file":"Bubble.d.ts","sourceRoot":"","sources":["../../../../src/features/bubble/components/Bubble.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAO,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAOxD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,YAAY,CAAC;AAElD,eAAO,MAAM,MAAM,UAAW,WAAW,mCAqXxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/features/bubble/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/features/bubble/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Full.d.ts","sourceRoot":"","sources":["../../../../src/features/full/components/Full.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAMvD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEhD,eAAO,MAAM,IAAI,UAAW,SAAS;aAA0B,WAAW;
|
|
1
|
+
{"version":3,"file":"Full.d.ts","sourceRoot":"","sources":["../../../../src/features/full/components/Full.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAMvD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEhD,eAAO,MAAM,IAAI,UAAW,SAAS;aAA0B,WAAW;oCA+FzE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.d.ts","sourceRoot":"","sources":["../../../../src/features/popup/components/Popup.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Popup.d.ts","sourceRoot":"","sources":["../../../../src/features/popup/components/Popup.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AA4BF,eAAO,MAAM,KAAK,UAAW,UAAU,mCAkRtC,CAAC"}
|
|
@@ -10,6 +10,8 @@ export type IncomingInput = {
|
|
|
10
10
|
action?: IAction;
|
|
11
11
|
stored?: Record<string, any>;
|
|
12
12
|
fetch?: boolean;
|
|
13
|
+
faqId?: string;
|
|
14
|
+
useId?: string;
|
|
13
15
|
};
|
|
14
16
|
type BaseRequest = {
|
|
15
17
|
apiHost?: string;
|
|
@@ -23,7 +25,7 @@ export type FeedbackRatingType = 'THUMBS_UP' | 'THUMBS_DOWN';
|
|
|
23
25
|
export type FeedbackInput = {
|
|
24
26
|
chatId: string;
|
|
25
27
|
messageId: string;
|
|
26
|
-
rating:
|
|
28
|
+
rating: any;
|
|
27
29
|
content?: string;
|
|
28
30
|
};
|
|
29
31
|
export type CreateFeedbackRequest = BaseRequest & {
|
|
@@ -46,13 +48,21 @@ export type LeadCaptureInput = {
|
|
|
46
48
|
email?: string;
|
|
47
49
|
phone?: string;
|
|
48
50
|
};
|
|
51
|
+
export type GetFeedbackByMessageIdRequest = BaseRequest & {
|
|
52
|
+
messageId: string;
|
|
53
|
+
};
|
|
49
54
|
export type LeadCaptureRequest = BaseRequest & {
|
|
50
55
|
body: Partial<LeadCaptureInput>;
|
|
51
56
|
};
|
|
57
|
+
export declare const getUserFromLocalStorage: () => any | null;
|
|
52
58
|
export declare const sendFeedbackQuery: ({ chatflowid, apiHost, body, onRequest }: CreateFeedbackRequest) => Promise<{
|
|
53
59
|
data?: unknown;
|
|
54
60
|
error?: Error | undefined;
|
|
55
61
|
}>;
|
|
62
|
+
export declare const getFeedbackByMessageId: ({ messageId, apiHost, onRequest }: GetFeedbackByMessageIdRequest) => Promise<{
|
|
63
|
+
data?: unknown;
|
|
64
|
+
error?: Error | undefined;
|
|
65
|
+
}>;
|
|
56
66
|
export declare const updateFeedbackQuery: ({ id, apiHost, body, onRequest }: UpdateFeedbackRequest) => Promise<{
|
|
57
67
|
data?: unknown;
|
|
58
68
|
error?: Error | undefined;
|
|
@@ -73,6 +83,16 @@ export declare const getChatbotConfig: ({ chatflowid, apiHost, onRequest }: Mess
|
|
|
73
83
|
data?: any;
|
|
74
84
|
error?: Error | undefined;
|
|
75
85
|
}>;
|
|
86
|
+
export declare const getMessageById: ({ chatflowid, apiHost, onRequest, messageId }: BaseRequest & {
|
|
87
|
+
chatflowid?: string | undefined;
|
|
88
|
+
body?: IncomingInput | undefined;
|
|
89
|
+
} & {
|
|
90
|
+
messageId: string;
|
|
91
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
92
|
+
export declare const updateMessage: ({ apiHost, body, onRequest }: MessageRequest) => Promise<{
|
|
93
|
+
data?: any;
|
|
94
|
+
error?: Error | undefined;
|
|
95
|
+
}>;
|
|
76
96
|
export declare const isStreamAvailableQuery: ({ chatflowid, apiHost, onRequest }: MessageRequest) => Promise<{
|
|
77
97
|
data?: any;
|
|
78
98
|
error?: Error | undefined;
|
|
@@ -85,5 +105,31 @@ export declare const addLeadQuery: ({ apiHost, body, onRequest }: LeadCaptureReq
|
|
|
85
105
|
data?: any;
|
|
86
106
|
error?: Error | undefined;
|
|
87
107
|
}>;
|
|
108
|
+
export declare const searchFaqsQuery: ({ chatflowid, apiHost, query, onRequest, }: {
|
|
109
|
+
chatflowid?: string | undefined;
|
|
110
|
+
apiHost?: string | undefined;
|
|
111
|
+
query: string;
|
|
112
|
+
onRequest?: ((request: RequestInit) => Promise<void>) | undefined;
|
|
113
|
+
}) => Promise<{
|
|
114
|
+
data?: any;
|
|
115
|
+
error?: Error | undefined;
|
|
116
|
+
}>;
|
|
117
|
+
export declare const vectorSearchFaqsQuery: ({ chatflowid, apiHost, query, onRequest, }: {
|
|
118
|
+
chatflowid: string;
|
|
119
|
+
apiHost?: string | undefined;
|
|
120
|
+
query: string;
|
|
121
|
+
onRequest?: ((request: RequestInit) => Promise<void>) | undefined;
|
|
122
|
+
}) => Promise<{
|
|
123
|
+
data?: any;
|
|
124
|
+
error?: Error | undefined;
|
|
125
|
+
}>;
|
|
126
|
+
export declare const getFileContent: ({ apiHost, path, onRequest, }: {
|
|
127
|
+
apiHost?: string | undefined;
|
|
128
|
+
path: string;
|
|
129
|
+
onRequest?: ((request: RequestInit) => Promise<void>) | undefined;
|
|
130
|
+
}) => Promise<{
|
|
131
|
+
data?: any;
|
|
132
|
+
error?: Error | undefined;
|
|
133
|
+
}>;
|
|
88
134
|
export {};
|
|
89
135
|
//# sourceMappingURL=sendMessageQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendMessageQuery.d.ts","sourceRoot":"","sources":["../../src/queries/sendMessageQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"sendMessageQuery.d.ts","sourceRoot":"","sources":["../../src/queries/sendMessageQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollTest.d.ts","sourceRoot":"","sources":["../../src/test/ScrollTest.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,sCA8OtB,CAAC;AAGF,eAAO,MAAM,aAAa;;;CAezB,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration script to add scroll testing capabilities to the existing Bot component
|
|
3
|
+
*
|
|
4
|
+
* Usage:
|
|
5
|
+
* 1. Import this file in your Bot component
|
|
6
|
+
* 2. Call setupScrollTest() in onMount()
|
|
7
|
+
* 3. Use the returned test functions to test scroll behavior
|
|
8
|
+
*/
|
|
9
|
+
import { ScrollTester, StreamingSimulator, createScrollTestScenarios, createScrollDebugger } from '../utils/scrollTestUtils';
|
|
10
|
+
export interface BotScrollTestConfig {
|
|
11
|
+
chatContainer: HTMLElement;
|
|
12
|
+
isUserScroll: () => boolean;
|
|
13
|
+
setIsUserScroll: (value: boolean) => void;
|
|
14
|
+
messages: () => any[];
|
|
15
|
+
setMessages: (updater: (prev: any[]) => any[]) => void;
|
|
16
|
+
updateLastMessage: (text: string) => void;
|
|
17
|
+
scrollToBottom: () => void;
|
|
18
|
+
}
|
|
19
|
+
export interface BotScrollTestAPI {
|
|
20
|
+
scrollTester: ScrollTester;
|
|
21
|
+
streamingSimulator: StreamingSimulator;
|
|
22
|
+
scenarios: ReturnType<typeof createScrollTestScenarios>;
|
|
23
|
+
debugger: ReturnType<typeof createScrollDebugger>;
|
|
24
|
+
testBasicStreaming: () => Promise<void>;
|
|
25
|
+
testUserScrollBehavior: () => Promise<void>;
|
|
26
|
+
testMultipleMessages: () => Promise<void>;
|
|
27
|
+
runAllTests: () => Promise<void>;
|
|
28
|
+
startDebugMode: () => void;
|
|
29
|
+
stopDebugMode: () => void;
|
|
30
|
+
logScrollState: () => void;
|
|
31
|
+
simulateUserScrollUp: () => void;
|
|
32
|
+
simulateUserScrollDown: () => void;
|
|
33
|
+
forceScrollToBottom: () => void;
|
|
34
|
+
forceScrollToTop: () => void;
|
|
35
|
+
cleanup: () => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Setup scroll testing for Bot component
|
|
39
|
+
*/
|
|
40
|
+
export declare const setupBotScrollTest: (config: BotScrollTestConfig) => BotScrollTestAPI;
|
|
41
|
+
/**
|
|
42
|
+
* Example integration code for Bot.tsx
|
|
43
|
+
*
|
|
44
|
+
* Add this to your Bot component:
|
|
45
|
+
*
|
|
46
|
+
* ```typescript
|
|
47
|
+
* import { setupBotScrollTest } from './test/integrateBotScrollTest';
|
|
48
|
+
*
|
|
49
|
+
* // In your Bot component, after chatContainer is available:
|
|
50
|
+
* onMount(() => {
|
|
51
|
+
* if (chatContainer) {
|
|
52
|
+
* const scrollTestAPI = setupBotScrollTest({
|
|
53
|
+
* chatContainer,
|
|
54
|
+
* isUserScroll,
|
|
55
|
+
* setIsUserScroll,
|
|
56
|
+
* messages,
|
|
57
|
+
* setMessages,
|
|
58
|
+
* updateLastMessage,
|
|
59
|
+
* scrollToBottom,
|
|
60
|
+
* });
|
|
61
|
+
*
|
|
62
|
+
* // Optional: cleanup on unmount
|
|
63
|
+
* onCleanup(() => {
|
|
64
|
+
* scrollTestAPI.cleanup();
|
|
65
|
+
* });
|
|
66
|
+
* }
|
|
67
|
+
* });
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
/**
|
|
71
|
+
* Quick setup function for development/testing
|
|
72
|
+
*/
|
|
73
|
+
export declare const quickSetupScrollTest: () => void;
|
|
74
|
+
//# sourceMappingURL=integrateBotScrollTest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrateBotScrollTest.d.ts","sourceRoot":"","sources":["../../src/test/integrateBotScrollTest.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAE7H,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,WAAW,CAAC;IAC3B,YAAY,EAAE,MAAM,OAAO,CAAC;IAC5B,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,GAAG,EAAE,CAAC;IACtB,WAAW,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,KAAK,IAAI,CAAC;IACvD,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,SAAS,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;IACxD,QAAQ,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAGlD,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,sBAAsB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,IAAI,CAAC;IAG3B,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAG7B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,WAAY,mBAAmB,KAAG,gBA4H9D,CAAC;AAoBJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,YAWhC,CAAC"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Analytics utility for tracking chatbot interactions
|
|
3
|
+
*/
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window {
|
|
6
|
+
gtag?: (...args: any[]) => void;
|
|
7
|
+
dataLayer?: any[];
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export type GAEventParams = {
|
|
11
|
+
event_category?: string;
|
|
12
|
+
event_label?: string;
|
|
13
|
+
value?: number;
|
|
14
|
+
custom_parameters?: Record<string, any>;
|
|
15
|
+
};
|
|
16
|
+
export type ConsentSettings = {
|
|
17
|
+
ad_storage?: 'granted' | 'denied';
|
|
18
|
+
analytics_storage?: 'granted' | 'denied';
|
|
19
|
+
ad_user_data?: 'granted' | 'denied';
|
|
20
|
+
ad_personalization?: 'granted' | 'denied';
|
|
21
|
+
functionality_storage?: 'granted' | 'denied';
|
|
22
|
+
personalization_storage?: 'granted' | 'denied';
|
|
23
|
+
security_storage?: 'granted' | 'denied';
|
|
24
|
+
};
|
|
25
|
+
export declare class GoogleAnalytics {
|
|
26
|
+
private static instance;
|
|
27
|
+
private gaId;
|
|
28
|
+
private isInitialized;
|
|
29
|
+
private constructor();
|
|
30
|
+
static getInstance(): GoogleAnalytics;
|
|
31
|
+
/**
|
|
32
|
+
* Initialize Google Analytics with the provided tracking ID
|
|
33
|
+
*/
|
|
34
|
+
init(trackingId: string, consentSettings?: ConsentSettings): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Load Google Analytics script and initialize
|
|
37
|
+
* Following Google's official implementation pattern
|
|
38
|
+
*/
|
|
39
|
+
private loadGoogleAnalytics;
|
|
40
|
+
/**
|
|
41
|
+
* Obfuscate event names to avoid ad blocker detection
|
|
42
|
+
*/
|
|
43
|
+
private obfuscateEventName;
|
|
44
|
+
/**
|
|
45
|
+
* Track a custom event with anti-ad-blocker techniques
|
|
46
|
+
*/
|
|
47
|
+
trackEvent(eventName: string, params?: GAEventParams): void;
|
|
48
|
+
/**
|
|
49
|
+
* Track page view
|
|
50
|
+
*/
|
|
51
|
+
trackPageView(pagePath?: string, pageTitle?: string): void;
|
|
52
|
+
/**
|
|
53
|
+
* Track chatbot specific events
|
|
54
|
+
*/
|
|
55
|
+
trackChatbotEvent(action: string, details?: Record<string, any>): void;
|
|
56
|
+
/**
|
|
57
|
+
* Track user message sent
|
|
58
|
+
*/
|
|
59
|
+
trackUserMessage(messageLength: number, hasAttachments?: boolean): void;
|
|
60
|
+
/**
|
|
61
|
+
* Track bot response received
|
|
62
|
+
*/
|
|
63
|
+
trackBotResponse(responseTime: number, messageLength: number): void;
|
|
64
|
+
/**
|
|
65
|
+
* Track chatbot opened
|
|
66
|
+
*/
|
|
67
|
+
trackChatbotOpened(): void;
|
|
68
|
+
/**
|
|
69
|
+
* Track chatbot closed
|
|
70
|
+
*/
|
|
71
|
+
trackChatbotClosed(): void;
|
|
72
|
+
/**
|
|
73
|
+
* Track feedback given
|
|
74
|
+
*/
|
|
75
|
+
trackFeedback(rating: 'positive' | 'negative', messageId?: string): void;
|
|
76
|
+
/**
|
|
77
|
+
* Track starter prompt clicked
|
|
78
|
+
*/
|
|
79
|
+
trackStarterPromptClicked(prompt: string): void;
|
|
80
|
+
/**
|
|
81
|
+
* Track file upload with comprehensive details
|
|
82
|
+
*/
|
|
83
|
+
trackFileUpload(fileType: string, fileSize: number, uploadTime?: number, fileName?: string): void;
|
|
84
|
+
/**
|
|
85
|
+
* Track file download/export events
|
|
86
|
+
*/
|
|
87
|
+
trackFileDownload(fileType: string, fileName: string, source: string): void;
|
|
88
|
+
/**
|
|
89
|
+
* Track link clicks in messages
|
|
90
|
+
*/
|
|
91
|
+
trackLinkClick(url: string, linkText: string, messageType: 'user' | 'bot'): void;
|
|
92
|
+
/**
|
|
93
|
+
* Track image interactions
|
|
94
|
+
*/
|
|
95
|
+
trackImageInteraction(action: 'view' | 'zoom' | 'download', imageUrl: string): void;
|
|
96
|
+
/**
|
|
97
|
+
* Track search within chat history
|
|
98
|
+
*/
|
|
99
|
+
trackChatSearch(query: string, resultsCount: number): void;
|
|
100
|
+
/**
|
|
101
|
+
* Track chat export/sharing
|
|
102
|
+
*/
|
|
103
|
+
trackChatExport(format: string, messageCount: number, method: string): void;
|
|
104
|
+
/**
|
|
105
|
+
* Track performance metrics
|
|
106
|
+
*/
|
|
107
|
+
trackPerformance(metric: string, value: number, unit: string): void;
|
|
108
|
+
/**
|
|
109
|
+
* Track user satisfaction surveys
|
|
110
|
+
*/
|
|
111
|
+
trackSurveyResponse(surveyType: string, rating: number, feedback?: string): void;
|
|
112
|
+
/**
|
|
113
|
+
* Track A/B test variations
|
|
114
|
+
*/
|
|
115
|
+
trackABTest(testName: string, variation: string, action: string): void;
|
|
116
|
+
/**
|
|
117
|
+
* Track error occurred
|
|
118
|
+
*/
|
|
119
|
+
trackError(errorType: string, errorMessage: string): void;
|
|
120
|
+
/**
|
|
121
|
+
* Track session duration when chatbot is closed
|
|
122
|
+
*/
|
|
123
|
+
trackSessionDuration(durationMs: number, messageCount: number): void;
|
|
124
|
+
/**
|
|
125
|
+
* Track the host page where chatbot is embedded - Always reports to main domain
|
|
126
|
+
*/
|
|
127
|
+
trackHostPage(): void;
|
|
128
|
+
/**
|
|
129
|
+
* Track chatbot widget visibility changes
|
|
130
|
+
*/
|
|
131
|
+
trackWidgetVisibility(isVisible: boolean, trigger: string): void;
|
|
132
|
+
/**
|
|
133
|
+
* Track chatbot position/size changes
|
|
134
|
+
*/
|
|
135
|
+
trackWidgetResize(width: number, height: number, position: string): void;
|
|
136
|
+
/**
|
|
137
|
+
* Track user typing behavior
|
|
138
|
+
*/
|
|
139
|
+
trackTypingBehavior(action: 'start' | 'stop' | 'pause', inputLength: number): void;
|
|
140
|
+
/**
|
|
141
|
+
* Track message input focus/blur
|
|
142
|
+
*/
|
|
143
|
+
trackInputFocus(action: 'focus' | 'blur', timeSpent?: number): void;
|
|
144
|
+
/**
|
|
145
|
+
* Track scroll behavior in chat
|
|
146
|
+
*/
|
|
147
|
+
trackChatScroll(direction: 'up' | 'down', scrollPosition: number): void;
|
|
148
|
+
/**
|
|
149
|
+
* Track message copy/paste actions
|
|
150
|
+
*/
|
|
151
|
+
trackMessageCopy(messageId: string, messageType: 'user' | 'bot', textLength: number): void;
|
|
152
|
+
/**
|
|
153
|
+
* Track quick reply button clicks
|
|
154
|
+
*/
|
|
155
|
+
trackQuickReply(buttonText: string, buttonIndex: number): void;
|
|
156
|
+
/**
|
|
157
|
+
* Track suggested questions/prompts
|
|
158
|
+
*/
|
|
159
|
+
trackSuggestedPrompt(promptText: string, promptIndex: number): void;
|
|
160
|
+
/**
|
|
161
|
+
* Track voice input usage
|
|
162
|
+
*/
|
|
163
|
+
trackVoiceInput(action: 'start' | 'stop' | 'error', duration?: number): void;
|
|
164
|
+
/**
|
|
165
|
+
* Track theme/appearance changes
|
|
166
|
+
*/
|
|
167
|
+
trackThemeChange(theme: string, customizations?: Record<string, any>): void;
|
|
168
|
+
/**
|
|
169
|
+
* Track language changes
|
|
170
|
+
*/
|
|
171
|
+
trackLanguageChange(fromLang: string, toLang: string): void;
|
|
172
|
+
/**
|
|
173
|
+
* Track chatbot settings changes
|
|
174
|
+
*/
|
|
175
|
+
trackSettingsChange(setting: string, oldValue: any, newValue: any): void;
|
|
176
|
+
/**
|
|
177
|
+
* Set default consent state (GDPR compliance)
|
|
178
|
+
*/
|
|
179
|
+
setDefaultConsent(consentSettings: ConsentSettings): void;
|
|
180
|
+
/**
|
|
181
|
+
* Update consent state based on user interaction
|
|
182
|
+
*/
|
|
183
|
+
updateConsent(consentSettings: ConsentSettings): void;
|
|
184
|
+
/**
|
|
185
|
+
* Grant all consent (when user accepts all cookies)
|
|
186
|
+
*/
|
|
187
|
+
grantAllConsent(): void;
|
|
188
|
+
/**
|
|
189
|
+
* Deny all consent (when user rejects all cookies)
|
|
190
|
+
*/
|
|
191
|
+
denyAllConsent(): void;
|
|
192
|
+
}
|
|
193
|
+
export declare const googleAnalytics: GoogleAnalytics;
|
|
194
|
+
//# sourceMappingURL=googleAnalytics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"googleAnalytics.d.ts","sourceRoot":"","sources":["../../src/utils/googleAnalytics.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -2,6 +2,10 @@ export declare const isNotDefined: <T>(value: T | null | undefined) => value is
|
|
|
2
2
|
export declare const isDefined: <T>(value: T | null | undefined) => value is NonNullable<T>;
|
|
3
3
|
export declare const isEmpty: (value: string | undefined | null) => value is undefined;
|
|
4
4
|
export declare const isNotEmpty: (value: string | undefined | null) => value is string;
|
|
5
|
+
/**
|
|
6
|
+
* Clears authentication data from localStorage
|
|
7
|
+
* Used when 401 errors are detected or user logs out
|
|
8
|
+
*/
|
|
5
9
|
export declare const sendRequest: <ResponseData>(params: string | {
|
|
6
10
|
url: string;
|
|
7
11
|
method: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,+DAAuG,CAAC;AAEjI,eAAO,MAAM,SAAS,6DAAqG,CAAC;AAE5H,eAAO,MAAM,OAAO,UAAW,MAAM,GAAG,SAAS,GAAG,IAAI,uBAA8E,CAAC;AAEvI,eAAO,MAAM,UAAU,UAAW,MAAM,GAAG,SAAS,GAAG,IAAI,oBAA2E,CAAC;AAEvI,eAAO,MAAM,WAAW;SAGX,MAAM;YACH,MAAM;;;;;2BAKQ,WAAW,KAAK,QAAQ,IAAI,CAAC;;;;EAuD1D,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,MAAM,UAAU,MAAM,YAAW,OAAO,MAAM,EAAE,GAAG,CAAC,SAiBvG,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,MAAM,QAQzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,eAAgB,MAAM,SAyB/D,CAAC;AAEF,eAAO,MAAM,mBAAmB,SAAU,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,WAO1F,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,MAAM,UAAU,MAAM,UAAU,MAAM,SAKtE,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,MAAM,KAAG,MAczC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,+DAAuG,CAAC;AAEjI,eAAO,MAAM,SAAS,6DAAqG,CAAC;AAE5H,eAAO,MAAM,OAAO,UAAW,MAAM,GAAG,SAAS,GAAG,IAAI,uBAA8E,CAAC;AAEvI,eAAO,MAAM,UAAU,UAAW,MAAM,GAAG,SAAS,GAAG,IAAI,oBAA2E,CAAC;AAEvI;;;GAGG;AACH,eAAO,MAAM,WAAW;SAGX,MAAM;YACH,MAAM;;;;;2BAKQ,WAAW,KAAK,QAAQ,IAAI,CAAC;;;;EAuD1D,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,MAAM,UAAU,MAAM,YAAW,OAAO,MAAM,EAAE,GAAG,CAAC,SAiBvG,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,MAAM,QAQzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,eAAgB,MAAM,SAyB/D,CAAC;AAEF,eAAO,MAAM,mBAAmB,SAAU,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,WAO1F,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,MAAM,UAAU,MAAM,UAAU,MAAM,SAKtE,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,MAAM,KAAG,MAczC,CAAC"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for testing scroll behavior during chat streaming
|
|
3
|
+
*/
|
|
4
|
+
export interface ScrollTestConfig {
|
|
5
|
+
chatContainer: HTMLElement;
|
|
6
|
+
isUserScroll: () => boolean;
|
|
7
|
+
setIsUserScroll: (value: boolean) => void;
|
|
8
|
+
scrollToBottom: () => void;
|
|
9
|
+
onScrollStateChange?: (isUserScroll: boolean) => void;
|
|
10
|
+
}
|
|
11
|
+
export interface ScrollTestMetrics {
|
|
12
|
+
scrollTop: number;
|
|
13
|
+
scrollHeight: number;
|
|
14
|
+
clientHeight: number;
|
|
15
|
+
isAtBottom: boolean;
|
|
16
|
+
distanceFromBottom: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Get current scroll metrics for debugging
|
|
20
|
+
*/
|
|
21
|
+
export declare const getScrollMetrics: (container: HTMLElement) => ScrollTestMetrics;
|
|
22
|
+
/**
|
|
23
|
+
* Enhanced scroll behavior tester
|
|
24
|
+
*/
|
|
25
|
+
export declare class ScrollTester {
|
|
26
|
+
private config;
|
|
27
|
+
private metrics;
|
|
28
|
+
private lastScrollTop;
|
|
29
|
+
private scrollDirection;
|
|
30
|
+
private isScrolling;
|
|
31
|
+
private scrollTimeout;
|
|
32
|
+
constructor(config: ScrollTestConfig);
|
|
33
|
+
private setupScrollListener;
|
|
34
|
+
private handleScroll;
|
|
35
|
+
private logScrollEvent;
|
|
36
|
+
/**
|
|
37
|
+
* Get current scroll metrics
|
|
38
|
+
*/
|
|
39
|
+
getMetrics(): ScrollTestMetrics | null;
|
|
40
|
+
/**
|
|
41
|
+
* Check if user is currently scrolling
|
|
42
|
+
*/
|
|
43
|
+
isCurrentlyScrolling(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Get scroll direction
|
|
46
|
+
*/
|
|
47
|
+
getScrollDirection(): 'up' | 'down' | 'none';
|
|
48
|
+
/**
|
|
49
|
+
* Force scroll to bottom for testing
|
|
50
|
+
*/
|
|
51
|
+
forceScrollToBottom(behavior?: 'smooth' | 'instant'): void;
|
|
52
|
+
/**
|
|
53
|
+
* Force scroll to top for testing
|
|
54
|
+
*/
|
|
55
|
+
forceScrollToTop(behavior?: 'smooth' | 'instant'): void;
|
|
56
|
+
/**
|
|
57
|
+
* Scroll to specific position for testing
|
|
58
|
+
*/
|
|
59
|
+
scrollToPosition(position: number, behavior?: 'smooth' | 'instant'): void;
|
|
60
|
+
/**
|
|
61
|
+
* Cleanup event listeners
|
|
62
|
+
*/
|
|
63
|
+
destroy(): void;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Simulate streaming messages for testing
|
|
67
|
+
*/
|
|
68
|
+
export declare class StreamingSimulator {
|
|
69
|
+
private isStreaming;
|
|
70
|
+
private currentStreamId;
|
|
71
|
+
/**
|
|
72
|
+
* Simulate streaming a message word by word
|
|
73
|
+
*/
|
|
74
|
+
simulateStreamingMessage(message: string, onUpdate: (partialMessage: string) => void, options?: {
|
|
75
|
+
wordDelay?: number;
|
|
76
|
+
onComplete?: () => void;
|
|
77
|
+
onStart?: () => void;
|
|
78
|
+
}): Promise<void>;
|
|
79
|
+
/**
|
|
80
|
+
* Cancel current streaming
|
|
81
|
+
*/
|
|
82
|
+
cancelStreaming(): void;
|
|
83
|
+
/**
|
|
84
|
+
* Check if currently streaming
|
|
85
|
+
*/
|
|
86
|
+
isCurrentlyStreaming(): boolean;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Test scenarios for scroll behavior
|
|
90
|
+
*/
|
|
91
|
+
export declare const createScrollTestScenarios: (scrollTester: ScrollTester, streamingSimulator: StreamingSimulator, addMessage: (message: string) => void, updateLastMessage: (message: string) => void) => {
|
|
92
|
+
/**
|
|
93
|
+
* Test 1: Basic streaming with auto-scroll
|
|
94
|
+
*/
|
|
95
|
+
testBasicStreaming(): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Test 2: User scroll during streaming
|
|
98
|
+
*/
|
|
99
|
+
testUserScrollDuringStreaming(): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* Test 3: Multiple rapid messages
|
|
102
|
+
*/
|
|
103
|
+
testMultipleRapidMessages(): Promise<void>;
|
|
104
|
+
/**
|
|
105
|
+
* Test 4: Scroll to bottom during streaming
|
|
106
|
+
*/
|
|
107
|
+
testScrollToBottomDuringStreaming(): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Run all tests sequentially
|
|
110
|
+
*/
|
|
111
|
+
runAllTests(): Promise<void>;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Debug utilities for scroll testing
|
|
115
|
+
*/
|
|
116
|
+
export declare const createScrollDebugger: (scrollTester: ScrollTester) => {
|
|
117
|
+
/**
|
|
118
|
+
* Start logging scroll metrics periodically
|
|
119
|
+
*/
|
|
120
|
+
startDebugLogging(intervalMs?: number): void;
|
|
121
|
+
/**
|
|
122
|
+
* Stop debug logging
|
|
123
|
+
*/
|
|
124
|
+
stopDebugLogging(): void;
|
|
125
|
+
/**
|
|
126
|
+
* Log current state once
|
|
127
|
+
*/
|
|
128
|
+
logCurrentState(): void;
|
|
129
|
+
};
|
|
130
|
+
//# sourceMappingURL=scrollTestUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollTestUtils.d.ts","sourceRoot":"","sources":["../../src/utils/scrollTestUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,WAAW,CAAC;IAC3B,YAAY,EAAE,MAAM,OAAO,CAAC;IAC5B,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,cAAe,WAAW,KAAG,iBAczD,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAuB;gBAEhC,MAAM,EAAE,gBAAgB;IAKpC,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACH,UAAU,IAAI,iBAAiB,GAAG,IAAI;IAItC;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;OAEG;IACH,kBAAkB,IAAI,IAAI,GAAG,MAAM,GAAG,MAAM;IAI5C;;OAEG;IACH,mBAAmB,CAAC,QAAQ,GAAE,QAAQ,GAAG,SAAoB;IAO7D;;OAEG;IACH,gBAAgB,CAAC,QAAQ,GAAE,QAAQ,GAAG,SAAoB;IAO1D;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAQ,GAAG,SAAoB;IAO5E;;OAEG;IACH,OAAO;CAKR;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAK;IAE5B;;OAEG;IACG,wBAAwB,CAC5B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,EAC1C,OAAO,GAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;KACjB,GACL,OAAO,CAAC,IAAI,CAAC;IAuChB;;OAEG;IACH,eAAe;IAQf;;OAEG;IACH,oBAAoB,IAAI,OAAO;CAGhC;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,iBACtB,YAAY,sBACN,kBAAkB,wBAChB,MAAM,KAAK,IAAI,+BACR,MAAM,KAAK,IAAI;IAG1C;;OAEG;;IAeH;;OAEG;;IAwBH;;OAEG;;IAoBH;;OAEG;;IA2BH;;OAEG;;CAkBN,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,iBAAkB,YAAY;IAI3D;;OAEG;;IAoBH;;OAEG;;IASH;;OAEG;;CAUN,CAAC"}
|