@servicetitan/titan-chatbot-ui-cypress 3.0.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.
Files changed (45) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +3 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/mocks/chat-ui.store.mock.d.ts +69 -0
  7. package/dist/mocks/chat-ui.store.mock.d.ts.map +1 -0
  8. package/dist/mocks/chat-ui.store.mock.js +303 -0
  9. package/dist/mocks/chat-ui.store.mock.js.map +1 -0
  10. package/dist/mocks/chatbot-api-client.mock.d.ts +11 -0
  11. package/dist/mocks/chatbot-api-client.mock.d.ts.map +1 -0
  12. package/dist/mocks/chatbot-api-client.mock.js +47 -0
  13. package/dist/mocks/chatbot-api-client.mock.js.map +1 -0
  14. package/dist/mocks/dependencies.mock.d.ts +7 -0
  15. package/dist/mocks/dependencies.mock.d.ts.map +1 -0
  16. package/dist/mocks/dependencies.mock.js +23 -0
  17. package/dist/mocks/dependencies.mock.js.map +1 -0
  18. package/dist/mocks/index.d.ts +6 -0
  19. package/dist/mocks/index.d.ts.map +1 -0
  20. package/dist/mocks/index.js +6 -0
  21. package/dist/mocks/index.js.map +1 -0
  22. package/dist/mocks/native-client-help-center.mock.d.ts +62 -0
  23. package/dist/mocks/native-client-help-center.mock.d.ts.map +1 -0
  24. package/dist/mocks/native-client-help-center.mock.js +130 -0
  25. package/dist/mocks/native-client-help-center.mock.js.map +1 -0
  26. package/dist/mocks/native-client.mock.d.ts +96 -0
  27. package/dist/mocks/native-client.mock.d.ts.map +1 -0
  28. package/dist/mocks/native-client.mock.js +206 -0
  29. package/dist/mocks/native-client.mock.js.map +1 -0
  30. package/dist/utils/chat-ui-selectors.d.ts +135 -0
  31. package/dist/utils/chat-ui-selectors.d.ts.map +1 -0
  32. package/dist/utils/chat-ui-selectors.js +273 -0
  33. package/dist/utils/chat-ui-selectors.js.map +1 -0
  34. package/package.json +35 -0
  35. package/src/cypress.d.ts +10 -0
  36. package/src/index.ts +2 -0
  37. package/src/mocks/chat-ui.store.mock.ts +114 -0
  38. package/src/mocks/chatbot-api-client.mock.ts +18 -0
  39. package/src/mocks/dependencies.mock.ts +7 -0
  40. package/src/mocks/index.ts +5 -0
  41. package/src/mocks/native-client-help-center.mock.ts +139 -0
  42. package/src/mocks/native-client.mock.ts +213 -0
  43. package/src/utils/chat-ui-selectors.ts +264 -0
  44. package/tsconfig.json +24 -0
  45. package/tsconfig.tsbuildinfo +1 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,45 @@
1
+ # v3.0.0 (Tue Jul 15 2025)
2
+
3
+ #### 💥 Breaking Change
4
+
5
+ - SPA-6889: Common client interface for HC Chatbot and Titan Chatbot [#28](https://github.com/servicetitan/titan-chatbot-client/pull/28) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
6
+
7
+ #### Authors: 1
8
+
9
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
10
+
11
+ ---
12
+
13
+ # v2.1.0 (Tue Jun 10 2025)
14
+
15
+ #### 🚀 Enhancement
16
+
17
+ - SPA-6766: Extended cypress helpers [#23](https://github.com/servicetitan/titan-chatbot-client/pull/23) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
18
+
19
+ #### Authors: 1
20
+
21
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
22
+
23
+ ---
24
+
25
+ # v2.0.4 (Mon Jun 09 2025)
26
+
27
+ #### 🐛 Bug Fix
28
+
29
+ - SPA-6766: Swapped data-cy and data-cy2 for chat message [#22](https://github.com/servicetitan/titan-chatbot-client/pull/22) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
30
+
31
+ #### Authors: 1
32
+
33
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
34
+
35
+ ---
36
+
37
+ # v2.0.3 (Mon Jun 09 2025)
38
+
39
+ #### 🐛 Bug Fix
40
+
41
+ - SPA-6766: Reorganized packages [#21](https://github.com/servicetitan/titan-chatbot-client/pull/21) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
42
+
43
+ #### Authors: 1
44
+
45
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
@@ -0,0 +1,3 @@
1
+ export { ChatUiSelectors } from './utils/chat-ui-selectors';
2
+ export * as CypressMocks from './mocks';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,YAAY,MAAM,SAAS,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export { ChatUiSelectors } from './utils/chat-ui-selectors';
2
+ export * as CypressMocks from './mocks';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,YAAY,MAAM,SAAS,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { ChatConfiguration, ChatEndReason, ChatError, ChatErrorOptions, ChatMessageModelBase, ChatMessageState, ChatParticipantIcon, ChatRunState, ChatTimer, ChatUiEventListener, IChatUiStore, symbolAgent, symbolUser } from '@servicetitan/titan-chat-ui-common';
2
+ export declare class ChatUiStoreMock implements IChatUiStore {
3
+ scrollCounter: number;
4
+ isFilePickerEnabled: boolean;
5
+ isStarting: boolean;
6
+ isStarted: boolean;
7
+ isAgentTyping: boolean;
8
+ status: ChatRunState;
9
+ file: undefined;
10
+ participants: {
11
+ [symbolAgent]: {
12
+ isAgent: boolean;
13
+ name: string;
14
+ icon: ChatParticipantIcon;
15
+ };
16
+ [symbolUser]: {
17
+ isAgent: boolean;
18
+ name: string;
19
+ icon: ChatParticipantIcon;
20
+ };
21
+ };
22
+ get user(): {
23
+ isAgent: boolean;
24
+ name: string;
25
+ icon: ChatParticipantIcon;
26
+ };
27
+ get agent(): {
28
+ isAgent: boolean;
29
+ name: string;
30
+ icon: ChatParticipantIcon;
31
+ };
32
+ get isEnded(): boolean;
33
+ get isError(): boolean;
34
+ get customizations(): {};
35
+ messages: ChatMessageModelBase[];
36
+ sendMessageRetry: (message: ChatMessageModelBase) => Promise<void>;
37
+ sendMessageText: (message: string) => Promise<void>;
38
+ setFile: (file: any) => void;
39
+ triggerScroll: () => void;
40
+ addMessage: (isAgent: boolean, message: string, data?: any) => void;
41
+ off: <T>(event: string, listener: ChatUiEventListener<T>) => void;
42
+ on: <T>(event: string, listener: ChatUiEventListener<T>) => void;
43
+ resetError: (runState: ChatRunState) => void;
44
+ reset: (resetState?: boolean) => void;
45
+ resetFile: () => void;
46
+ setAgentTyping: (typing: boolean) => void;
47
+ setChatError: (chatError: ChatError) => void;
48
+ setError: <T = any>(message: string, options?: ChatErrorOptions<T>) => void;
49
+ setFilePickerEnabled: (isEnabled: boolean) => void;
50
+ setMessageState: (message: ChatMessageModelBase, state: ChatMessageState, data?: any) => void;
51
+ addMessageWelcome: (message: string) => void;
52
+ setCustomizationContext: (customizationContext?: unknown) => void;
53
+ chasitorTyping: (isTyping: boolean) => Promise<void>;
54
+ configure: (configuration?: ChatConfiguration) => void;
55
+ run: (configuration?: ChatConfiguration, data?: unknown) => Promise<void>;
56
+ recover: () => Promise<void>;
57
+ destroy: () => Promise<void>;
58
+ setAgentIcon: (icon: ChatParticipantIcon) => void;
59
+ setAgentName: (name: string) => void;
60
+ setIncomingSound: (soundUrl: string) => void;
61
+ setMessages: (messages: ChatMessageModelBase[]) => void;
62
+ setStatus: (status: ChatRunState) => void;
63
+ setTimer: (timer?: ChatTimer) => void;
64
+ restartTimers: () => Promise<void>;
65
+ restart: () => Promise<void>;
66
+ cancelChat: () => Promise<void>;
67
+ endChat: (endReason?: ChatEndReason) => Promise<void>;
68
+ }
69
+ //# sourceMappingURL=chat-ui.store.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-ui.store.mock.d.ts","sourceRoot":"","sources":["../../src/mocks/chat-ui.store.mock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,303 @@
1
+ import { ChatMessageState, ChatParticipantIcon, ChatRunState, symbolAgent, symbolUser, } from '@servicetitan/titan-chat-ui-common';
2
+ export class ChatUiStoreMock {
3
+ constructor() {
4
+ Object.defineProperty(this, "scrollCounter", {
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true,
8
+ value: 0
9
+ });
10
+ Object.defineProperty(this, "isFilePickerEnabled", {
11
+ enumerable: true,
12
+ configurable: true,
13
+ writable: true,
14
+ value: true
15
+ });
16
+ Object.defineProperty(this, "isStarting", {
17
+ enumerable: true,
18
+ configurable: true,
19
+ writable: true,
20
+ value: false
21
+ });
22
+ Object.defineProperty(this, "isStarted", {
23
+ enumerable: true,
24
+ configurable: true,
25
+ writable: true,
26
+ value: true
27
+ });
28
+ Object.defineProperty(this, "isAgentTyping", {
29
+ enumerable: true,
30
+ configurable: true,
31
+ writable: true,
32
+ value: false
33
+ });
34
+ Object.defineProperty(this, "status", {
35
+ enumerable: true,
36
+ configurable: true,
37
+ writable: true,
38
+ value: ChatRunState.Started
39
+ });
40
+ Object.defineProperty(this, "file", {
41
+ enumerable: true,
42
+ configurable: true,
43
+ writable: true,
44
+ value: undefined
45
+ });
46
+ Object.defineProperty(this, "participants", {
47
+ enumerable: true,
48
+ configurable: true,
49
+ writable: true,
50
+ value: {
51
+ [symbolAgent]: {
52
+ isAgent: true,
53
+ name: 'Agent',
54
+ icon: ChatParticipantIcon.Bot,
55
+ },
56
+ [symbolUser]: {
57
+ isAgent: false,
58
+ name: 'User',
59
+ icon: ChatParticipantIcon.Initials,
60
+ },
61
+ }
62
+ });
63
+ Object.defineProperty(this, "messages", {
64
+ enumerable: true,
65
+ configurable: true,
66
+ writable: true,
67
+ value: [
68
+ {
69
+ type: 'welcome',
70
+ id: 'messageid',
71
+ state: ChatMessageState.Delivered,
72
+ timestamp: new Date(),
73
+ message: 'Hi there! I’m ServiceTitan Bot, a chatbot powered by Titan Intelligence designed to answer your questions about using ServiceTitan. I’m here to help you, but I’m still learning, so I might not have all the answers yet. Do you have a question?',
74
+ participant: {
75
+ isAgent: true,
76
+ name: 'Agent',
77
+ icon: ChatParticipantIcon.Bot,
78
+ },
79
+ },
80
+ {
81
+ type: 'message',
82
+ id: 'messageid2',
83
+ state: ChatMessageState.Delivered,
84
+ timestamp: new Date(),
85
+ message: 'How to create a form?',
86
+ participant: {
87
+ isAgent: false,
88
+ name: 'User',
89
+ icon: ChatParticipantIcon.Initials,
90
+ },
91
+ },
92
+ ]
93
+ });
94
+ Object.defineProperty(this, "sendMessageRetry", {
95
+ enumerable: true,
96
+ configurable: true,
97
+ writable: true,
98
+ value: cy.stub()
99
+ });
100
+ Object.defineProperty(this, "sendMessageText", {
101
+ enumerable: true,
102
+ configurable: true,
103
+ writable: true,
104
+ value: cy.stub()
105
+ });
106
+ Object.defineProperty(this, "setFile", {
107
+ enumerable: true,
108
+ configurable: true,
109
+ writable: true,
110
+ value: cy.stub()
111
+ });
112
+ Object.defineProperty(this, "triggerScroll", {
113
+ enumerable: true,
114
+ configurable: true,
115
+ writable: true,
116
+ value: cy.stub()
117
+ });
118
+ Object.defineProperty(this, "addMessage", {
119
+ enumerable: true,
120
+ configurable: true,
121
+ writable: true,
122
+ value: cy.stub()
123
+ });
124
+ Object.defineProperty(this, "off", {
125
+ enumerable: true,
126
+ configurable: true,
127
+ writable: true,
128
+ value: cy.stub()
129
+ });
130
+ Object.defineProperty(this, "on", {
131
+ enumerable: true,
132
+ configurable: true,
133
+ writable: true,
134
+ value: cy.stub()
135
+ });
136
+ Object.defineProperty(this, "resetError", {
137
+ enumerable: true,
138
+ configurable: true,
139
+ writable: true,
140
+ value: cy.stub()
141
+ });
142
+ Object.defineProperty(this, "reset", {
143
+ enumerable: true,
144
+ configurable: true,
145
+ writable: true,
146
+ value: cy.stub()
147
+ });
148
+ Object.defineProperty(this, "resetFile", {
149
+ enumerable: true,
150
+ configurable: true,
151
+ writable: true,
152
+ value: cy.stub()
153
+ });
154
+ Object.defineProperty(this, "setAgentTyping", {
155
+ enumerable: true,
156
+ configurable: true,
157
+ writable: true,
158
+ value: cy.stub()
159
+ });
160
+ Object.defineProperty(this, "setChatError", {
161
+ enumerable: true,
162
+ configurable: true,
163
+ writable: true,
164
+ value: cy.stub()
165
+ });
166
+ Object.defineProperty(this, "setError", {
167
+ enumerable: true,
168
+ configurable: true,
169
+ writable: true,
170
+ value: cy.stub()
171
+ });
172
+ Object.defineProperty(this, "setFilePickerEnabled", {
173
+ enumerable: true,
174
+ configurable: true,
175
+ writable: true,
176
+ value: cy.stub()
177
+ });
178
+ Object.defineProperty(this, "setMessageState", {
179
+ enumerable: true,
180
+ configurable: true,
181
+ writable: true,
182
+ value: cy.stub()
183
+ });
184
+ Object.defineProperty(this, "addMessageWelcome", {
185
+ enumerable: true,
186
+ configurable: true,
187
+ writable: true,
188
+ value: cy.stub()
189
+ });
190
+ Object.defineProperty(this, "setCustomizationContext", {
191
+ enumerable: true,
192
+ configurable: true,
193
+ writable: true,
194
+ value: cy.stub()
195
+ });
196
+ Object.defineProperty(this, "chasitorTyping", {
197
+ enumerable: true,
198
+ configurable: true,
199
+ writable: true,
200
+ value: cy.stub()
201
+ });
202
+ Object.defineProperty(this, "configure", {
203
+ enumerable: true,
204
+ configurable: true,
205
+ writable: true,
206
+ value: cy.stub()
207
+ });
208
+ Object.defineProperty(this, "run", {
209
+ enumerable: true,
210
+ configurable: true,
211
+ writable: true,
212
+ value: cy.stub()
213
+ });
214
+ Object.defineProperty(this, "recover", {
215
+ enumerable: true,
216
+ configurable: true,
217
+ writable: true,
218
+ value: cy.stub()
219
+ });
220
+ Object.defineProperty(this, "destroy", {
221
+ enumerable: true,
222
+ configurable: true,
223
+ writable: true,
224
+ value: cy.stub()
225
+ });
226
+ Object.defineProperty(this, "setAgentIcon", {
227
+ enumerable: true,
228
+ configurable: true,
229
+ writable: true,
230
+ value: cy.stub()
231
+ });
232
+ Object.defineProperty(this, "setAgentName", {
233
+ enumerable: true,
234
+ configurable: true,
235
+ writable: true,
236
+ value: cy.stub()
237
+ });
238
+ Object.defineProperty(this, "setIncomingSound", {
239
+ enumerable: true,
240
+ configurable: true,
241
+ writable: true,
242
+ value: cy.stub()
243
+ });
244
+ Object.defineProperty(this, "setMessages", {
245
+ enumerable: true,
246
+ configurable: true,
247
+ writable: true,
248
+ value: cy.stub()
249
+ });
250
+ Object.defineProperty(this, "setStatus", {
251
+ enumerable: true,
252
+ configurable: true,
253
+ writable: true,
254
+ value: cy.stub()
255
+ });
256
+ Object.defineProperty(this, "setTimer", {
257
+ enumerable: true,
258
+ configurable: true,
259
+ writable: true,
260
+ value: cy.stub()
261
+ });
262
+ Object.defineProperty(this, "restartTimers", {
263
+ enumerable: true,
264
+ configurable: true,
265
+ writable: true,
266
+ value: cy.stub()
267
+ });
268
+ Object.defineProperty(this, "restart", {
269
+ enumerable: true,
270
+ configurable: true,
271
+ writable: true,
272
+ value: cy.stub()
273
+ });
274
+ Object.defineProperty(this, "cancelChat", {
275
+ enumerable: true,
276
+ configurable: true,
277
+ writable: true,
278
+ value: cy.stub()
279
+ });
280
+ Object.defineProperty(this, "endChat", {
281
+ enumerable: true,
282
+ configurable: true,
283
+ writable: true,
284
+ value: cy.stub()
285
+ });
286
+ }
287
+ get user() {
288
+ return this.participants[symbolUser];
289
+ }
290
+ get agent() {
291
+ return this.participants[symbolAgent];
292
+ }
293
+ get isEnded() {
294
+ return false;
295
+ }
296
+ get isError() {
297
+ return false;
298
+ }
299
+ get customizations() {
300
+ return {};
301
+ }
302
+ }
303
+ //# sourceMappingURL=chat-ui.store.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-ui.store.mock.js","sourceRoot":"","sources":["../../src/mocks/chat-ui.store.mock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { IChatbotApiClient, Models } from '@servicetitan/titan-chatbot-api';
2
+ export declare class ChatbotApiClientMock implements IChatbotApiClient {
3
+ postFeedback: (body: Models.IFeedback, abortSignal?: AbortSignal) => Promise<Models.Feedback>;
4
+ postMessage: (body: Models.IUserMessage, abortSignal?: AbortSignal) => Promise<Models.BotMessage>;
5
+ getOptions: (abortSignal?: AbortSignal) => Promise<Models.FrontendModel>;
6
+ postSession: (body: Models.ISession, abortSignal?: AbortSignal) => Promise<Models.Session>;
7
+ patchSession: (body: Models.ISession, abortSignal?: AbortSignal) => Promise<Models.Session>;
8
+ deleteSession: (body: Models.ISession, abortSignal?: AbortSignal) => Promise<Models.Session>;
9
+ postRefreshAuthCookies: (abortSignal?: AbortSignal) => Promise<boolean>;
10
+ }
11
+ //# sourceMappingURL=chatbot-api-client.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatbot-api-client.mock.d.ts","sourceRoot":"","sources":["../../src/mocks/chatbot-api-client.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAE5E,qBAAa,oBAAqB,YAAW,iBAAiB;IAC1D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC/E;IACd,WAAW,EAAE,CACT,IAAI,EAAE,MAAM,CAAC,YAAY,EACzB,WAAW,CAAC,EAAE,WAAW,KACxB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAa;IAC5C,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAa;IACrF,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAC5E;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAC7E;IACd,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAC9E;IACd,sBAAsB,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAa;CACvF"}
@@ -0,0 +1,47 @@
1
+ export class ChatbotApiClientMock {
2
+ constructor() {
3
+ Object.defineProperty(this, "postFeedback", {
4
+ enumerable: true,
5
+ configurable: true,
6
+ writable: true,
7
+ value: cy.stub()
8
+ });
9
+ Object.defineProperty(this, "postMessage", {
10
+ enumerable: true,
11
+ configurable: true,
12
+ writable: true,
13
+ value: cy.stub()
14
+ });
15
+ Object.defineProperty(this, "getOptions", {
16
+ enumerable: true,
17
+ configurable: true,
18
+ writable: true,
19
+ value: cy.stub()
20
+ });
21
+ Object.defineProperty(this, "postSession", {
22
+ enumerable: true,
23
+ configurable: true,
24
+ writable: true,
25
+ value: cy.stub()
26
+ });
27
+ Object.defineProperty(this, "patchSession", {
28
+ enumerable: true,
29
+ configurable: true,
30
+ writable: true,
31
+ value: cy.stub()
32
+ });
33
+ Object.defineProperty(this, "deleteSession", {
34
+ enumerable: true,
35
+ configurable: true,
36
+ writable: true,
37
+ value: cy.stub()
38
+ });
39
+ Object.defineProperty(this, "postRefreshAuthCookies", {
40
+ enumerable: true,
41
+ configurable: true,
42
+ writable: true,
43
+ value: cy.stub()
44
+ });
45
+ }
46
+ }
47
+ //# sourceMappingURL=chatbot-api-client.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatbot-api-client.mock.js","sourceRoot":"","sources":["../../src/mocks/chatbot-api-client.mock.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,oBAAoB;IAAjC;QACI;;;;mBACI,EAAE,CAAC,IAAI,EAAE;WAAC;QACd;;;;mBAGkC,EAAE,CAAC,IAAI,EAAE;WAAC;QAC5C;;;;mBAA2E,EAAE,CAAC,IAAI,EAAE;WAAC;QACrF;;;;mBACI,EAAE,CAAC,IAAI,EAAE;WAAC;QACd;;;;mBACI,EAAE,CAAC,IAAI,EAAE;WAAC;QACd;;;;mBACI,EAAE,CAAC,IAAI,EAAE;WAAC;QACd;;;;mBAA0E,EAAE,CAAC,IAAI,EAAE;WAAC;IACxF,CAAC;CAAA"}
@@ -0,0 +1,7 @@
1
+ import { ILog, LogError, LogInfo, LogWarning } from '@servicetitan/log-service';
2
+ export declare class LogMock implements ILog {
3
+ error: (entry: LogError) => void;
4
+ info: (entry: LogInfo) => void;
5
+ warning: (entry: LogWarning) => void;
6
+ }
7
+ //# sourceMappingURL=dependencies.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.mock.d.ts","sourceRoot":"","sources":["../../src/mocks/dependencies.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEhF,qBAAa,OAAQ,YAAW,IAAI;IAChC,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAa;IAC7C,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAa;IAC3C,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAa;CACpD"}
@@ -0,0 +1,23 @@
1
+ export class LogMock {
2
+ constructor() {
3
+ Object.defineProperty(this, "error", {
4
+ enumerable: true,
5
+ configurable: true,
6
+ writable: true,
7
+ value: cy.stub()
8
+ });
9
+ Object.defineProperty(this, "info", {
10
+ enumerable: true,
11
+ configurable: true,
12
+ writable: true,
13
+ value: cy.stub()
14
+ });
15
+ Object.defineProperty(this, "warning", {
16
+ enumerable: true,
17
+ configurable: true,
18
+ writable: true,
19
+ value: cy.stub()
20
+ });
21
+ }
22
+ }
23
+ //# sourceMappingURL=dependencies.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.mock.js","sourceRoot":"","sources":["../../src/mocks/dependencies.mock.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,OAAO;IAApB;QACI;;;;mBAAmC,EAAE,CAAC,IAAI,EAAE;WAAC;QAC7C;;;;mBAAiC,EAAE,CAAC,IAAI,EAAE;WAAC;QAC3C;;;;mBAAuC,EAAE,CAAC,IAAI,EAAE;WAAC;IACrD,CAAC;CAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './chat-ui.store.mock';
2
+ export * from './dependencies.mock';
3
+ export * from './chatbot-api-client.mock';
4
+ export * as HC from './native-client-help-center.mock';
5
+ export * as TC from './native-client.mock';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './chat-ui.store.mock';
2
+ export * from './dependencies.mock';
3
+ export * from './chatbot-api-client.mock';
4
+ export * as HC from './native-client-help-center.mock';
5
+ export * as TC from './native-client.mock';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,62 @@
1
+ export declare function interceptFilterOptions(baseUrl: string): string;
2
+ export declare const CreateSession: {
3
+ request: {
4
+ instance: string;
5
+ };
6
+ response: {
7
+ id: number;
8
+ createdUtc: string;
9
+ closedUtc: null;
10
+ botId: string;
11
+ source: {
12
+ instance: string;
13
+ category: null;
14
+ subCategory: null;
15
+ };
16
+ };
17
+ intercept: (baseUrl: string) => string;
18
+ };
19
+ export declare const SendUserMessage: {
20
+ request: {
21
+ source: {
22
+ area: string;
23
+ };
24
+ filters: {};
25
+ sessionId: number;
26
+ text: string;
27
+ };
28
+ response: {
29
+ error: null;
30
+ isTransientError: null;
31
+ retryAfter: null;
32
+ guardFlag: string;
33
+ isGuardrailed: boolean;
34
+ scoredUrls: {
35
+ url: string;
36
+ score: number;
37
+ title: string;
38
+ }[];
39
+ botVersion: string;
40
+ metadata: {};
41
+ userMessageId: number;
42
+ id: number;
43
+ sessionId: number;
44
+ timestampUtc: string;
45
+ text: string;
46
+ };
47
+ intercept: (baseUrl: string) => string;
48
+ };
49
+ export declare const MessageFeedback: {
50
+ request: {
51
+ rating: number;
52
+ };
53
+ intercept: (baseUrl: string) => string;
54
+ };
55
+ export declare const SessionFeedback: {
56
+ request: {
57
+ description: string;
58
+ rating: number;
59
+ };
60
+ intercept: (baseUrl: string) => string;
61
+ };
62
+ //# sourceMappingURL=native-client-help-center.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-client-help-center.mock.d.ts","sourceRoot":"","sources":["../../src/mocks/native-client-help-center.mock.ts"],"names":[],"mappings":"AAMA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,UAqCrD;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;yBAeD,MAAM;CAO9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAsCH,MAAM;CAO9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;yBAEH,MAAM;CAU9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;yBAEH,MAAM;CAM9B,CAAC"}