cmcts-c-agent-embedding 1.0.5 → 1.0.6-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/README.md +349 -349
- 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 +1 -0
- 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/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/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.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/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/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 -77
- package/public/index.html +154 -153
- package/server.js +401 -401
- package/.husky/pre-commit +0 -18
- package/.idea/Flowise-share-chatbox.iml +0 -12
- 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 -8
- package/.idea/prettier.xml +0 -6
- package/.idea/vcs.xml +0 -6
- 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 +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"}
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ultimateJsonParser.d.ts","sourceRoot":"","sources":["../../src/utils/ultimateJsonParser.ts"],"names":[],"mappings":"AAsBA,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAgDzD"}
|
package/dist/web.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ declare const chatbot: {
|
|
|
8
8
|
theme?: import("./features/bubble/types").BubbleTheme | undefined;
|
|
9
9
|
chatwootUrl?: string | undefined;
|
|
10
10
|
roomIds?: Record<string, string> | undefined;
|
|
11
|
+
isUseFAQ?: boolean | undefined;
|
|
12
|
+
onResetChat?: (() => Promise<void>) | undefined;
|
|
11
13
|
} & {
|
|
12
14
|
id?: string | undefined;
|
|
13
15
|
}) => void;
|
|
@@ -20,6 +22,8 @@ declare const chatbot: {
|
|
|
20
22
|
theme?: import("./features/bubble/types").BubbleTheme | undefined;
|
|
21
23
|
chatwootUrl?: string | undefined;
|
|
22
24
|
roomIds?: Record<string, string> | undefined;
|
|
25
|
+
isUseFAQ?: boolean | undefined;
|
|
26
|
+
onResetChat?: (() => Promise<void>) | undefined;
|
|
23
27
|
}) => void;
|
|
24
28
|
destroy: () => void;
|
|
25
29
|
};
|
package/dist/web.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAiB,CAAC;AAI/B,eAAe,OAAO,CAAC"}
|