@servicetitan/titan-chat-ui-common 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.
- package/CHANGELOG.md +9 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/models/__mocks__/support-chat.mock.d.ts +9 -0
- package/dist/models/__mocks__/support-chat.mock.d.ts.map +1 -0
- package/dist/models/__mocks__/support-chat.mock.js +82 -0
- package/dist/models/__mocks__/support-chat.mock.js.map +1 -0
- package/dist/models/chat-customizations.d.ts +42 -0
- package/dist/models/chat-customizations.d.ts.map +1 -0
- package/dist/models/chat-customizations.js +2 -0
- package/dist/models/chat-customizations.js.map +1 -0
- package/dist/models/file-descriptor.d.ts +7 -0
- package/dist/models/file-descriptor.d.ts.map +1 -0
- package/dist/models/file-descriptor.js +2 -0
- package/dist/models/file-descriptor.js.map +1 -0
- package/dist/models/index.d.ts +4 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +4 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/support-chat.d.ts +76 -0
- package/dist/models/support-chat.d.ts.map +1 -0
- package/dist/models/support-chat.js +75 -0
- package/dist/models/support-chat.js.map +1 -0
- package/dist/stores/__tests__/chat-ui.store.test.d.ts +2 -0
- package/dist/stores/__tests__/chat-ui.store.test.d.ts.map +1 -0
- package/dist/stores/__tests__/chat-ui.store.test.js +424 -0
- package/dist/stores/__tests__/chat-ui.store.test.js.map +1 -0
- package/dist/stores/chat-ui-backend-echo.store.d.ts +13 -0
- package/dist/stores/chat-ui-backend-echo.store.d.ts.map +1 -0
- package/dist/stores/chat-ui-backend-echo.store.js +115 -0
- package/dist/stores/chat-ui-backend-echo.store.js.map +1 -0
- package/dist/stores/chat-ui-backend.store.d.ts +6 -0
- package/dist/stores/chat-ui-backend.store.d.ts.map +1 -0
- package/dist/stores/chat-ui-backend.store.js +3 -0
- package/dist/stores/chat-ui-backend.store.js.map +1 -0
- package/dist/stores/chat-ui.store.d.ts +153 -0
- package/dist/stores/chat-ui.store.d.ts.map +1 -0
- package/dist/stores/chat-ui.store.js +683 -0
- package/dist/stores/chat-ui.store.js.map +1 -0
- package/dist/stores/index.d.ts +4 -0
- package/dist/stores/index.d.ts.map +1 -0
- package/dist/stores/index.js +4 -0
- package/dist/stores/index.js.map +1 -0
- package/dist/utils/__tests__/text-utils.test.d.ts +2 -0
- package/dist/utils/__tests__/text-utils.test.d.ts.map +1 -0
- package/dist/utils/__tests__/text-utils.test.js +59 -0
- package/dist/utils/__tests__/text-utils.test.js.map +1 -0
- package/dist/utils/test-utils.d.ts +5 -0
- package/dist/utils/test-utils.d.ts.map +1 -0
- package/dist/utils/test-utils.js +17 -0
- package/dist/utils/test-utils.js.map +1 -0
- package/dist/utils/text-utils.d.ts +6 -0
- package/dist/utils/text-utils.d.ts.map +1 -0
- package/dist/utils/text-utils.js +33 -0
- package/dist/utils/text-utils.js.map +1 -0
- package/package.json +36 -0
- package/src/cypress.d.ts +10 -0
- package/src/index.ts +4 -0
- package/src/models/__mocks__/support-chat.mock.ts +105 -0
- package/src/models/chat-customizations.ts +50 -0
- package/src/models/file-descriptor.ts +6 -0
- package/src/models/index.ts +3 -0
- package/src/models/support-chat.ts +117 -0
- package/src/stores/__tests__/chat-ui.store.test.ts +531 -0
- package/src/stores/chat-ui-backend-echo.store.ts +98 -0
- package/src/stores/chat-ui-backend.store.ts +10 -0
- package/src/stores/chat-ui.store.ts +539 -0
- package/src/stores/index.ts +11 -0
- package/src/utils/__tests__/text-utils.test.ts +70 -0
- package/src/utils/test-utils.ts +22 -0
- package/src/utils/text-utils.ts +36 -0
- package/tsconfig.json +15 -0
- package/tsconfig.tsbuildinfo +1 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
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))
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ChatMessageModelFile, ChatMessageModelText, ChatMessageModelTimeout, ChatMessageModelWelcome, ChatParticipantModel } from '../support-chat';
|
|
2
|
+
export declare function mockChatAgent(overrides?: Partial<ChatParticipantModel>): ChatParticipantModel;
|
|
3
|
+
export declare function mockChatUser(overrides?: Partial<ChatParticipantModel>): ChatParticipantModel;
|
|
4
|
+
export declare function mockChatMessageModelText(isAgent: boolean, overrides?: Partial<ChatMessageModelText>): ChatMessageModelText;
|
|
5
|
+
export declare function mockChatMessageModelWelcome(overrides?: Partial<ChatMessageModelWelcome>): ChatMessageModelWelcome;
|
|
6
|
+
export declare function mockChatMessageModelFile(overrides?: Partial<ChatMessageModelFile>): ChatMessageModelFile;
|
|
7
|
+
export declare function mockChatMessageModelTimeout(overrides?: Partial<ChatMessageModelTimeout>): ChatMessageModelTimeout;
|
|
8
|
+
export declare function mockChatConversation(): (ChatMessageModelText | ChatMessageModelWelcome)[];
|
|
9
|
+
//# sourceMappingURL=support-chat.mock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"support-chat.mock.d.ts","sourceRoot":"","sources":["../../../src/models/__mocks__/support-chat.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EAGvB,oBAAoB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,wBAAgB,aAAa,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAO7F;AAED,wBAAgB,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAO5F;AAED,wBAAgB,wBAAwB,CACpC,OAAO,EAAE,OAAO,EAChB,SAAS,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAC1C,oBAAoB,CAWtB;AAED,wBAAgB,2BAA2B,CACvC,SAAS,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAC7C,uBAAuB,CAWzB;AAED,wBAAgB,wBAAwB,CACpC,SAAS,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAC1C,oBAAoB,CAWtB;AAED,wBAAgB,2BAA2B,CACvC,SAAS,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAC7C,uBAAuB,CAUzB;AAED,wBAAgB,oBAAoB,uDAgBnC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { ChatMessageState, ChatParticipantIcon, } from '../support-chat';
|
|
2
|
+
export function mockChatAgent(overrides) {
|
|
3
|
+
return {
|
|
4
|
+
isAgent: true,
|
|
5
|
+
name: 'agent name',
|
|
6
|
+
icon: ChatParticipantIcon.Bot,
|
|
7
|
+
...overrides,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export function mockChatUser(overrides) {
|
|
11
|
+
return {
|
|
12
|
+
isAgent: false,
|
|
13
|
+
name: 'user name',
|
|
14
|
+
icon: ChatParticipantIcon.Initials,
|
|
15
|
+
...overrides,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export function mockChatMessageModelText(isAgent, overrides) {
|
|
19
|
+
return {
|
|
20
|
+
id: 'id',
|
|
21
|
+
type: 'message',
|
|
22
|
+
message: 'message',
|
|
23
|
+
timestamp: new Date('2000-01-01T00:00:00Z'),
|
|
24
|
+
state: ChatMessageState.Delivered,
|
|
25
|
+
data: {},
|
|
26
|
+
participant: isAgent ? mockChatAgent() : mockChatUser(),
|
|
27
|
+
...overrides,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export function mockChatMessageModelWelcome(overrides) {
|
|
31
|
+
return {
|
|
32
|
+
id: 'id',
|
|
33
|
+
type: 'welcome',
|
|
34
|
+
message: 'message welcome',
|
|
35
|
+
timestamp: new Date('2000-01-01T00:00:00Z'),
|
|
36
|
+
state: ChatMessageState.Delivered,
|
|
37
|
+
data: {},
|
|
38
|
+
participant: mockChatAgent(),
|
|
39
|
+
...overrides,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
export function mockChatMessageModelFile(overrides) {
|
|
43
|
+
return {
|
|
44
|
+
id: 'id',
|
|
45
|
+
type: 'file',
|
|
46
|
+
timestamp: new Date('2000-01-01T00:00:00Z'),
|
|
47
|
+
state: ChatMessageState.Delivered,
|
|
48
|
+
fileName: 'file name',
|
|
49
|
+
data: {},
|
|
50
|
+
participant: mockChatUser(),
|
|
51
|
+
...overrides,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export function mockChatMessageModelTimeout(overrides) {
|
|
55
|
+
return {
|
|
56
|
+
id: 'id',
|
|
57
|
+
type: 'timeout',
|
|
58
|
+
timestamp: new Date('2000-01-01T00:00:00Z'),
|
|
59
|
+
state: ChatMessageState.Delivered,
|
|
60
|
+
data: {},
|
|
61
|
+
participant: mockChatAgent(),
|
|
62
|
+
...overrides,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export function mockChatConversation() {
|
|
66
|
+
return [
|
|
67
|
+
mockChatMessageModelWelcome(),
|
|
68
|
+
mockChatMessageModelText(false, {
|
|
69
|
+
message: 'question 1',
|
|
70
|
+
}),
|
|
71
|
+
mockChatMessageModelText(true, {
|
|
72
|
+
message: 'answer 1',
|
|
73
|
+
}),
|
|
74
|
+
mockChatMessageModelText(false, {
|
|
75
|
+
message: 'question 2',
|
|
76
|
+
}),
|
|
77
|
+
mockChatMessageModelText(true, {
|
|
78
|
+
message: 'answer 2',
|
|
79
|
+
}),
|
|
80
|
+
];
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=support-chat.mock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"support-chat.mock.js","sourceRoot":"","sources":["../../../src/models/__mocks__/support-chat.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,gBAAgB,EAChB,mBAAmB,GAEtB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,UAAU,aAAa,CAAC,SAAyC;IACnE,OAAO;QACH,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,mBAAmB,CAAC,GAAG;QAC7B,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAyC;IAClE,OAAO;QACH,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,mBAAmB,CAAC,QAAQ;QAClC,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,OAAgB,EAChB,SAAyC;IAEzC,OAAO;QACH,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;QAC3C,KAAK,EAAE,gBAAgB,CAAC,SAAS;QACjC,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE;QACvD,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,2BAA2B,CACvC,SAA4C;IAE5C,OAAO;QACH,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,iBAAiB;QAC1B,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;QAC3C,KAAK,EAAE,gBAAgB,CAAC,SAAS;QACjC,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,aAAa,EAAE;QAC5B,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,SAAyC;IAEzC,OAAO;QACH,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;QAC3C,KAAK,EAAE,gBAAgB,CAAC,SAAS;QACjC,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,YAAY,EAAE;QAC3B,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,2BAA2B,CACvC,SAA4C;IAE5C,OAAO;QACH,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;QAC3C,KAAK,EAAE,gBAAgB,CAAC,SAAS;QACjC,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,aAAa,EAAE;QAC5B,GAAG,SAAS;KACf,CAAC;AACN,CAAC;AAED,MAAM,UAAU,oBAAoB;IAChC,OAAO;QACH,2BAA2B,EAAE;QAC7B,wBAAwB,CAAC,KAAK,EAAE;YAC5B,OAAO,EAAE,YAAY;SACxB,CAAC;QACF,wBAAwB,CAAC,IAAI,EAAE;YAC3B,OAAO,EAAE,UAAU;SACtB,CAAC;QACF,wBAAwB,CAAC,KAAK,EAAE;YAC5B,OAAO,EAAE,YAAY;SACxB,CAAC;QACF,wBAAwB,CAAC,IAAI,EAAE;YAC3B,OAAO,EAAE,UAAU;SACtB,CAAC;KACL,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { FC, PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
import { ChatMessageModelBase, ChatParticipantIcon } from './support-chat';
|
|
3
|
+
export interface IChatMessageProps<T extends ChatMessageModelBase = ChatMessageModelBase> {
|
|
4
|
+
message: T;
|
|
5
|
+
omitAvatar?: boolean;
|
|
6
|
+
omitTimestamp?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface ChatMessageTemplateCustomization<T extends ChatMessageModelBase = ChatMessageModelBase> {
|
|
9
|
+
component: FC<PropsWithChildren<IChatMessageProps<T>>>;
|
|
10
|
+
predicate: (message: T) => boolean;
|
|
11
|
+
}
|
|
12
|
+
export type ChatMessageTemplateCustomizations = Partial<{
|
|
13
|
+
agent: ChatMessageTemplateCustomization;
|
|
14
|
+
user: ChatMessageTemplateCustomization;
|
|
15
|
+
}>;
|
|
16
|
+
export interface ChatMessageCustomization<T extends ChatMessageModelBase = ChatMessageModelBase> {
|
|
17
|
+
predicate: (message: T) => boolean;
|
|
18
|
+
component?: FC<IChatMessageProps<T>>;
|
|
19
|
+
isSystem?: boolean;
|
|
20
|
+
isIgnored?: boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface ChatMessageTypingCustomization {
|
|
23
|
+
component: FC<{
|
|
24
|
+
avatar: {
|
|
25
|
+
className?: string;
|
|
26
|
+
name: string;
|
|
27
|
+
icon: ChatParticipantIcon;
|
|
28
|
+
};
|
|
29
|
+
}>;
|
|
30
|
+
}
|
|
31
|
+
export interface ChatInputCustomization {
|
|
32
|
+
isDisabled?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export type ChatCustomizations = Partial<{
|
|
35
|
+
messageTemplates: ChatMessageTemplateCustomizations;
|
|
36
|
+
messages: ChatMessageCustomization[];
|
|
37
|
+
messageTyping: ChatMessageTypingCustomization;
|
|
38
|
+
input: ChatInputCustomization;
|
|
39
|
+
footerComponent: ReactNode;
|
|
40
|
+
loadingComponent: ReactNode;
|
|
41
|
+
}>;
|
|
42
|
+
//# sourceMappingURL=chat-customizations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-customizations.d.ts","sourceRoot":"","sources":["../../src/models/chat-customizations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE3E,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IACpF,OAAO,EAAE,CAAC,CAAC;IACX,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,gCAAgC,CAC7C,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAErD,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC;CACtC;AAED,MAAM,MAAM,iCAAiC,GAAG,OAAO,CAAC;IACpD,KAAK,EAAE,gCAAgC,CAAC;IACxC,IAAI,EAAE,gCAAgC,CAAC;CAC1C,CAAC,CAAC;AAEH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB;IAC3F,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,8BAA8B;IAC3C,SAAS,EAAE,EAAE,CAAC;QACV,MAAM,EAAE;YACJ,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,mBAAmB,CAAC;SAC7B,CAAC;KACL,CAAC,CAAC;CACN;AAED,MAAM,WAAW,sBAAsB;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;IACrC,gBAAgB,EAAE,iCAAiC,CAAC;IACpD,QAAQ,EAAE,wBAAwB,EAAE,CAAC;IACrC,aAAa,EAAE,8BAA8B,CAAC;IAC9C,KAAK,EAAE,sBAAsB,CAAC;IAC9B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;CAC/B,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-customizations.js","sourceRoot":"","sources":["../../src/models/chat-customizations.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-descriptor.d.ts","sourceRoot":"","sources":["../../src/models/file-descriptor.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-descriptor.js","sourceRoot":"","sources":["../../src/models/file-descriptor.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export interface ChatTimer {
|
|
2
|
+
secondsLeft: number;
|
|
3
|
+
secondsTotal: number;
|
|
4
|
+
}
|
|
5
|
+
export declare enum ChatMessageState {
|
|
6
|
+
Delivering = "Delivering",
|
|
7
|
+
Delivered = "Delivered",
|
|
8
|
+
Failed = "Failed"
|
|
9
|
+
}
|
|
10
|
+
export declare enum ChatEndReason {
|
|
11
|
+
ByUser = "ByUser",
|
|
12
|
+
ByAgent = "ByAgent",
|
|
13
|
+
ByTimeout = "ByTimeout",
|
|
14
|
+
ByFailedToStart = "ByFailedToStart"
|
|
15
|
+
}
|
|
16
|
+
export declare enum ChatParticipantIcon {
|
|
17
|
+
Empty = "empty",
|
|
18
|
+
Initials = "initials",
|
|
19
|
+
Bot = "bot"
|
|
20
|
+
}
|
|
21
|
+
export interface ChatParticipantModel {
|
|
22
|
+
isAgent: boolean;
|
|
23
|
+
name: string;
|
|
24
|
+
icon: ChatParticipantIcon;
|
|
25
|
+
}
|
|
26
|
+
export interface ChatConfiguration {
|
|
27
|
+
agentName?: string;
|
|
28
|
+
agentIcon?: ChatParticipantIcon;
|
|
29
|
+
}
|
|
30
|
+
export interface ChatMessageModelBase {
|
|
31
|
+
id: string;
|
|
32
|
+
timestamp: Date;
|
|
33
|
+
type: string;
|
|
34
|
+
participant: ChatParticipantModel;
|
|
35
|
+
state: ChatMessageState;
|
|
36
|
+
data?: any;
|
|
37
|
+
}
|
|
38
|
+
export interface ChatMessageModelTimeout extends ChatMessageModelBase {
|
|
39
|
+
type: 'timeout';
|
|
40
|
+
}
|
|
41
|
+
export interface ChatMessageModelText extends ChatMessageModelBase {
|
|
42
|
+
type: 'message';
|
|
43
|
+
message: string;
|
|
44
|
+
}
|
|
45
|
+
export interface ChatMessageModelWelcome extends ChatMessageModelBase {
|
|
46
|
+
type: 'welcome';
|
|
47
|
+
message: string;
|
|
48
|
+
}
|
|
49
|
+
export interface ChatMessageModelFile extends ChatMessageModelBase {
|
|
50
|
+
type: 'file';
|
|
51
|
+
fileName: string;
|
|
52
|
+
}
|
|
53
|
+
export type ChatErrorRecoverStrategy = {
|
|
54
|
+
recoverButtonTitle: string;
|
|
55
|
+
} | false;
|
|
56
|
+
export interface ChatErrorOptions<T = any> {
|
|
57
|
+
title?: string;
|
|
58
|
+
recoverStrategy?: ChatErrorRecoverStrategy;
|
|
59
|
+
data?: T;
|
|
60
|
+
}
|
|
61
|
+
export declare class ChatError<T = any> extends Error {
|
|
62
|
+
title: string;
|
|
63
|
+
recoverStrategy: ChatErrorRecoverStrategy;
|
|
64
|
+
data?: T;
|
|
65
|
+
constructor(message: string, options?: ChatErrorOptions<T>);
|
|
66
|
+
toJSON(): Record<string, any>;
|
|
67
|
+
fromJSON(json: Record<string, any>): ChatError<T>;
|
|
68
|
+
}
|
|
69
|
+
export declare enum ChatRunState {
|
|
70
|
+
Offline = 0,
|
|
71
|
+
Initializing = 1,
|
|
72
|
+
Started = 2,
|
|
73
|
+
Ended = 3,
|
|
74
|
+
Error = 4
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=support-chat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"support-chat.d.ts","sourceRoot":"","sources":["../../src/models/support-chat.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,oBAAY,gBAAgB;IACxB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,MAAM,WAAW;CACpB;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,eAAe,oBAAoB;CACtC;AAED,oBAAY,mBAAmB;IAC3B,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,GAAG,QAAQ;CACd;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,oBAAoB,CAAC;IAClC,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACjE,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAC9D,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACjE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,wBAAwB,GAC9B;IACI,kBAAkB,EAAE,MAAM,CAAC;CAC9B,GACD,KAAK,CAAC;AAEZ,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,CAAC;CACZ;AAED,qBAAa,SAAS,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,KAAK;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,wBAAwB,CAAC;IAC1C,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEG,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAS1D,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;CASpD;AAED,oBAAY,YAAY;IACpB,OAAO,IAAI;IACX,YAAY,IAAI;IAChB,OAAO,IAAI;IACX,KAAK,IAAI;IACT,KAAK,IAAI;CACZ"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
export var ChatMessageState;
|
|
2
|
+
(function (ChatMessageState) {
|
|
3
|
+
ChatMessageState["Delivering"] = "Delivering";
|
|
4
|
+
ChatMessageState["Delivered"] = "Delivered";
|
|
5
|
+
ChatMessageState["Failed"] = "Failed";
|
|
6
|
+
})(ChatMessageState || (ChatMessageState = {}));
|
|
7
|
+
export var ChatEndReason;
|
|
8
|
+
(function (ChatEndReason) {
|
|
9
|
+
ChatEndReason["ByUser"] = "ByUser";
|
|
10
|
+
ChatEndReason["ByAgent"] = "ByAgent";
|
|
11
|
+
ChatEndReason["ByTimeout"] = "ByTimeout";
|
|
12
|
+
ChatEndReason["ByFailedToStart"] = "ByFailedToStart";
|
|
13
|
+
})(ChatEndReason || (ChatEndReason = {}));
|
|
14
|
+
export var ChatParticipantIcon;
|
|
15
|
+
(function (ChatParticipantIcon) {
|
|
16
|
+
ChatParticipantIcon["Empty"] = "empty";
|
|
17
|
+
ChatParticipantIcon["Initials"] = "initials";
|
|
18
|
+
ChatParticipantIcon["Bot"] = "bot";
|
|
19
|
+
})(ChatParticipantIcon || (ChatParticipantIcon = {}));
|
|
20
|
+
export class ChatError extends Error {
|
|
21
|
+
constructor(message, options) {
|
|
22
|
+
var _a, _b;
|
|
23
|
+
super(message);
|
|
24
|
+
Object.defineProperty(this, "title", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true,
|
|
27
|
+
writable: true,
|
|
28
|
+
value: void 0
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(this, "recoverStrategy", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
configurable: true,
|
|
33
|
+
writable: true,
|
|
34
|
+
value: void 0
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(this, "data", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
configurable: true,
|
|
39
|
+
writable: true,
|
|
40
|
+
value: void 0
|
|
41
|
+
});
|
|
42
|
+
this.name = 'ChatError';
|
|
43
|
+
this.title = (_a = options === null || options === void 0 ? void 0 : options.title) !== null && _a !== void 0 ? _a : 'Chat Error';
|
|
44
|
+
this.recoverStrategy = (_b = options === null || options === void 0 ? void 0 : options.recoverStrategy) !== null && _b !== void 0 ? _b : false;
|
|
45
|
+
this.data = options === null || options === void 0 ? void 0 : options.data;
|
|
46
|
+
Object.setPrototypeOf(this, ChatError.prototype);
|
|
47
|
+
}
|
|
48
|
+
toJSON() {
|
|
49
|
+
return {
|
|
50
|
+
name: this.name,
|
|
51
|
+
message: this.message,
|
|
52
|
+
title: this.title,
|
|
53
|
+
recoverStrategy: this.recoverStrategy,
|
|
54
|
+
data: this.data,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
fromJSON(json) {
|
|
58
|
+
const error = new ChatError(json.message, {
|
|
59
|
+
title: json.title,
|
|
60
|
+
recoverStrategy: json.recoverStrategy,
|
|
61
|
+
data: json.data,
|
|
62
|
+
});
|
|
63
|
+
error.name = json.name;
|
|
64
|
+
return error;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export var ChatRunState;
|
|
68
|
+
(function (ChatRunState) {
|
|
69
|
+
ChatRunState[ChatRunState["Offline"] = 0] = "Offline";
|
|
70
|
+
ChatRunState[ChatRunState["Initializing"] = 1] = "Initializing";
|
|
71
|
+
ChatRunState[ChatRunState["Started"] = 2] = "Started";
|
|
72
|
+
ChatRunState[ChatRunState["Ended"] = 3] = "Ended";
|
|
73
|
+
ChatRunState[ChatRunState["Error"] = 4] = "Error";
|
|
74
|
+
})(ChatRunState || (ChatRunState = {}));
|
|
75
|
+
//# sourceMappingURL=support-chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"support-chat.js","sourceRoot":"","sources":["../../src/models/support-chat.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,6CAAyB,CAAA;IACzB,2CAAuB,CAAA;IACvB,qCAAiB,CAAA;AACrB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACrB,kCAAiB,CAAA;IACjB,oCAAmB,CAAA;IACnB,wCAAuB,CAAA;IACvB,oDAAmC,CAAA;AACvC,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB;AAED,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC3B,sCAAe,CAAA;IACf,4CAAqB,CAAA;IACrB,kCAAW,CAAA;AACf,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAqDD,MAAM,OAAO,SAAmB,SAAQ,KAAK;IAKzC,YAAY,OAAe,EAAE,OAA6B;;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QALnB;;;;;WAAc;QACd;;;;;WAA0C;QAC1C;;;;;WAAS;QAIL,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,YAAY,CAAC;QAC5C,IAAI,CAAC,eAAe,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,mCAAI,KAAK,CAAC;QACzD,IAAI,CAAC,IAAI,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC;QAC1B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,MAAM;QACF,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;IAED,QAAQ,CAAC,IAAyB;QAC9B,MAAM,KAAK,GAAG,IAAI,SAAS,CAAI,IAAI,CAAC,OAAO,EAAE;YACzC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACpB,qDAAW,CAAA;IACX,+DAAgB,CAAA;IAChB,qDAAW,CAAA;IACX,iDAAS,CAAA;IACT,iDAAS,CAAA;AACb,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-ui.store.test.d.ts","sourceRoot":"","sources":["../../../src/stores/__tests__/chat-ui.store.test.ts"],"names":[],"mappings":""}
|