@servicetitan/titan-chat-ui-common 7.1.2 → 8.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 (42) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/hooks/use-customization-chat.js +2 -1
  3. package/dist/hooks/use-customization-chat.js.map +1 -1
  4. package/dist/index.js +1 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/models/__mocks__/support-chat.mock.js +13 -12
  7. package/dist/models/__mocks__/support-chat.mock.js.map +1 -1
  8. package/dist/models/chat-customizations.js +2 -1
  9. package/dist/models/chat-customizations.js.map +1 -1
  10. package/dist/models/file-descriptor.js +2 -1
  11. package/dist/models/file-descriptor.js.map +1 -1
  12. package/dist/models/index.d.ts +2 -2
  13. package/dist/models/index.d.ts.map +1 -1
  14. package/dist/models/index.js +1 -2
  15. package/dist/models/index.js.map +1 -1
  16. package/dist/models/support-chat.js +37 -41
  17. package/dist/models/support-chat.js.map +1 -1
  18. package/dist/stores/__tests__/chat-ui.store.test.js +117 -106
  19. package/dist/stores/__tests__/chat-ui.store.test.js.map +1 -1
  20. package/dist/stores/chat-ui-backend-echo.store.js +86 -87
  21. package/dist/stores/chat-ui-backend-echo.store.js.map +1 -1
  22. package/dist/stores/chat-ui-backend.store.js +1 -0
  23. package/dist/stores/chat-ui-backend.store.js.map +1 -1
  24. package/dist/stores/chat-ui.store.d.ts +2 -2
  25. package/dist/stores/chat-ui.store.d.ts.map +1 -1
  26. package/dist/stores/chat-ui.store.js +307 -329
  27. package/dist/stores/chat-ui.store.js.map +1 -1
  28. package/dist/stores/index.d.ts +4 -2
  29. package/dist/stores/index.d.ts.map +1 -1
  30. package/dist/stores/index.js +2 -1
  31. package/dist/stores/index.js.map +1 -1
  32. package/dist/utils/__tests__/text-utils.test.js +33 -14
  33. package/dist/utils/__tests__/text-utils.test.js.map +1 -1
  34. package/dist/utils/test-utils.js +5 -5
  35. package/dist/utils/test-utils.js.map +1 -1
  36. package/dist/utils/text-utils.js +12 -12
  37. package/dist/utils/text-utils.js.map +1 -1
  38. package/package.json +2 -2
  39. package/src/models/index.ts +2 -2
  40. package/src/stores/chat-ui.store.ts +1 -3
  41. package/src/stores/index.ts +3 -3
  42. package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,16 @@
1
+ # v8.0.0 (Wed Jun 03 2026)
2
+
3
+ #### 💥 Breaking Change
4
+
5
+ - SPA-8584: Upgrade Platform Packages in Titan Chatbot UI [#90](https://github.com/servicetitan/titan-chatbot-client/pull/90) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk) [@Copilot](https://github.com/Copilot))
6
+
7
+ #### Authors: 2
8
+
9
+ - [@Copilot](https://github.com/Copilot)
10
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
11
+
12
+ ---
13
+
1
14
  # v6.1.1 (Wed May 06 2026)
2
15
 
3
16
  #### ⚠️ Pushed to `master`
@@ -1,7 +1,8 @@
1
1
  import { useDependencies } from '@servicetitan/react-ioc';
2
2
  import { CHAT_UI_STORE_TOKEN } from '../stores';
3
- export const useCustomizationChat = () => {
3
+ export const useCustomizationChat = ()=>{
4
4
  const [chatUiStore] = useDependencies(CHAT_UI_STORE_TOKEN);
5
5
  return chatUiStore.customizations;
6
6
  };
7
+
7
8
  //# sourceMappingURL=use-customization-chat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-customization-chat.js","sourceRoot":"","sources":["../../src/hooks/use-customization-chat.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;IAC3D,OAAO,WAAW,CAAC,cAAc,CAAC;AACtC,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../src/hooks/use-customization-chat.tsx"],"sourcesContent":["import { useDependencies } from '@servicetitan/react-ioc';\nimport { CHAT_UI_STORE_TOKEN } from '../stores';\n\nexport const useCustomizationChat = () => {\n const [chatUiStore] = useDependencies(CHAT_UI_STORE_TOKEN);\n return chatUiStore.customizations;\n};\n"],"names":["useDependencies","CHAT_UI_STORE_TOKEN","useCustomizationChat","chatUiStore","customizations"],"mappings":"AAAA,SAASA,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,mBAAmB,QAAQ,YAAY;AAEhD,OAAO,MAAMC,uBAAuB;IAChC,MAAM,CAACC,YAAY,GAAGH,gBAAgBC;IACtC,OAAOE,YAAYC,cAAc;AACrC,EAAE"}
package/dist/index.js CHANGED
@@ -3,4 +3,5 @@ export * from './models';
3
3
  export * from './hooks/use-customization-chat';
4
4
  export * from './utils/text-utils';
5
5
  export * from './utils/test-utils';
6
+
6
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './stores';\nexport * from './models';\nexport * from './hooks/use-customization-chat';\nexport * from './utils/text-utils';\nexport * from './utils/test-utils';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW;AACzB,cAAc,WAAW;AACzB,cAAc,iCAAiC;AAC/C,cAAc,qBAAqB;AACnC,cAAc,qBAAqB"}
@@ -1,10 +1,10 @@
1
- import { ChatMessageState, ChatParticipantIcon, } from '../support-chat';
1
+ import { ChatMessageState, ChatParticipantIcon } from '../support-chat';
2
2
  export function mockChatAgent(overrides) {
3
3
  return {
4
4
  isAgent: true,
5
5
  name: 'agent name',
6
6
  icon: ChatParticipantIcon.Bot,
7
- ...overrides,
7
+ ...overrides
8
8
  };
9
9
  }
10
10
  export function mockChatUser(overrides) {
@@ -12,7 +12,7 @@ export function mockChatUser(overrides) {
12
12
  isAgent: false,
13
13
  name: 'user name',
14
14
  icon: ChatParticipantIcon.Initials,
15
- ...overrides,
15
+ ...overrides
16
16
  };
17
17
  }
18
18
  export function mockChatMessageModelText(isAgent, overrides) {
@@ -24,7 +24,7 @@ export function mockChatMessageModelText(isAgent, overrides) {
24
24
  state: ChatMessageState.Delivered,
25
25
  data: {},
26
26
  participant: isAgent ? mockChatAgent() : mockChatUser(),
27
- ...overrides,
27
+ ...overrides
28
28
  };
29
29
  }
30
30
  export function mockChatMessageModelWelcome(overrides) {
@@ -36,7 +36,7 @@ export function mockChatMessageModelWelcome(overrides) {
36
36
  state: ChatMessageState.Delivered,
37
37
  data: {},
38
38
  participant: mockChatAgent(),
39
- ...overrides,
39
+ ...overrides
40
40
  };
41
41
  }
42
42
  export function mockChatMessageModelFile(overrides) {
@@ -48,7 +48,7 @@ export function mockChatMessageModelFile(overrides) {
48
48
  fileName: 'file name',
49
49
  data: {},
50
50
  participant: mockChatUser(),
51
- ...overrides,
51
+ ...overrides
52
52
  };
53
53
  }
54
54
  export function mockChatMessageModelTimeout(overrides) {
@@ -59,24 +59,25 @@ export function mockChatMessageModelTimeout(overrides) {
59
59
  state: ChatMessageState.Delivered,
60
60
  data: {},
61
61
  participant: mockChatAgent(),
62
- ...overrides,
62
+ ...overrides
63
63
  };
64
64
  }
65
65
  export function mockChatConversation() {
66
66
  return [
67
67
  mockChatMessageModelWelcome(),
68
68
  mockChatMessageModelText(false, {
69
- message: 'question 1',
69
+ message: 'question 1'
70
70
  }),
71
71
  mockChatMessageModelText(true, {
72
- message: 'answer 1',
72
+ message: 'answer 1'
73
73
  }),
74
74
  mockChatMessageModelText(false, {
75
- message: 'question 2',
75
+ message: 'question 2'
76
76
  }),
77
77
  mockChatMessageModelText(true, {
78
- message: 'answer 2',
79
- }),
78
+ message: 'answer 2'
79
+ })
80
80
  ];
81
81
  }
82
+
82
83
  //# sourceMappingURL=support-chat.mock.js.map
@@ -1 +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"}
1
+ {"version":3,"sources":["../../../src/models/__mocks__/support-chat.mock.ts"],"sourcesContent":["import {\n ChatMessageModelFile,\n ChatMessageModelText,\n ChatMessageModelTimeout,\n ChatMessageModelWelcome,\n ChatMessageState,\n ChatParticipantIcon,\n ChatParticipantModel,\n} from '../support-chat';\n\nexport function mockChatAgent(overrides?: Partial<ChatParticipantModel>): ChatParticipantModel {\n return {\n isAgent: true,\n name: 'agent name',\n icon: ChatParticipantIcon.Bot,\n ...overrides,\n };\n}\n\nexport function mockChatUser(overrides?: Partial<ChatParticipantModel>): ChatParticipantModel {\n return {\n isAgent: false,\n name: 'user name',\n icon: ChatParticipantIcon.Initials,\n ...overrides,\n };\n}\n\nexport function mockChatMessageModelText(\n isAgent: boolean,\n overrides?: Partial<ChatMessageModelText>\n): ChatMessageModelText {\n return {\n id: 'id',\n type: 'message',\n message: 'message',\n timestamp: new Date('2000-01-01T00:00:00Z'),\n state: ChatMessageState.Delivered,\n data: {},\n participant: isAgent ? mockChatAgent() : mockChatUser(),\n ...overrides,\n };\n}\n\nexport function mockChatMessageModelWelcome(\n overrides?: Partial<ChatMessageModelWelcome>\n): ChatMessageModelWelcome {\n return {\n id: 'id',\n type: 'welcome',\n message: 'message welcome',\n timestamp: new Date('2000-01-01T00:00:00Z'),\n state: ChatMessageState.Delivered,\n data: {},\n participant: mockChatAgent(),\n ...overrides,\n };\n}\n\nexport function mockChatMessageModelFile(\n overrides?: Partial<ChatMessageModelFile>\n): ChatMessageModelFile {\n return {\n id: 'id',\n type: 'file',\n timestamp: new Date('2000-01-01T00:00:00Z'),\n state: ChatMessageState.Delivered,\n fileName: 'file name',\n data: {},\n participant: mockChatUser(),\n ...overrides,\n };\n}\n\nexport function mockChatMessageModelTimeout(\n overrides?: Partial<ChatMessageModelTimeout>\n): ChatMessageModelTimeout {\n return {\n id: 'id',\n type: 'timeout',\n timestamp: new Date('2000-01-01T00:00:00Z'),\n state: ChatMessageState.Delivered,\n data: {},\n participant: mockChatAgent(),\n ...overrides,\n };\n}\n\nexport function mockChatConversation() {\n return [\n mockChatMessageModelWelcome(),\n mockChatMessageModelText(false, {\n message: 'question 1',\n }),\n mockChatMessageModelText(true, {\n message: 'answer 1',\n }),\n mockChatMessageModelText(false, {\n message: 'question 2',\n }),\n mockChatMessageModelText(true, {\n message: 'answer 2',\n }),\n ];\n}\n"],"names":["ChatMessageState","ChatParticipantIcon","mockChatAgent","overrides","isAgent","name","icon","Bot","mockChatUser","Initials","mockChatMessageModelText","id","type","message","timestamp","Date","state","Delivered","data","participant","mockChatMessageModelWelcome","mockChatMessageModelFile","fileName","mockChatMessageModelTimeout","mockChatConversation"],"mappings":"AAAA,SAKIA,gBAAgB,EAChBC,mBAAmB,QAEhB,kBAAkB;AAEzB,OAAO,SAASC,cAAcC,SAAyC;IACnE,OAAO;QACHC,SAAS;QACTC,MAAM;QACNC,MAAML,oBAAoBM,GAAG;QAC7B,GAAGJ,SAAS;IAChB;AACJ;AAEA,OAAO,SAASK,aAAaL,SAAyC;IAClE,OAAO;QACHC,SAAS;QACTC,MAAM;QACNC,MAAML,oBAAoBQ,QAAQ;QAClC,GAAGN,SAAS;IAChB;AACJ;AAEA,OAAO,SAASO,yBACZN,OAAgB,EAChBD,SAAyC;IAEzC,OAAO;QACHQ,IAAI;QACJC,MAAM;QACNC,SAAS;QACTC,WAAW,IAAIC,KAAK;QACpBC,OAAOhB,iBAAiBiB,SAAS;QACjCC,MAAM,CAAC;QACPC,aAAaf,UAAUF,kBAAkBM;QACzC,GAAGL,SAAS;IAChB;AACJ;AAEA,OAAO,SAASiB,4BACZjB,SAA4C;IAE5C,OAAO;QACHQ,IAAI;QACJC,MAAM;QACNC,SAAS;QACTC,WAAW,IAAIC,KAAK;QACpBC,OAAOhB,iBAAiBiB,SAAS;QACjCC,MAAM,CAAC;QACPC,aAAajB;QACb,GAAGC,SAAS;IAChB;AACJ;AAEA,OAAO,SAASkB,yBACZlB,SAAyC;IAEzC,OAAO;QACHQ,IAAI;QACJC,MAAM;QACNE,WAAW,IAAIC,KAAK;QACpBC,OAAOhB,iBAAiBiB,SAAS;QACjCK,UAAU;QACVJ,MAAM,CAAC;QACPC,aAAaX;QACb,GAAGL,SAAS;IAChB;AACJ;AAEA,OAAO,SAASoB,4BACZpB,SAA4C;IAE5C,OAAO;QACHQ,IAAI;QACJC,MAAM;QACNE,WAAW,IAAIC,KAAK;QACpBC,OAAOhB,iBAAiBiB,SAAS;QACjCC,MAAM,CAAC;QACPC,aAAajB;QACb,GAAGC,SAAS;IAChB;AACJ;AAEA,OAAO,SAASqB;IACZ,OAAO;QACHJ;QACAV,yBAAyB,OAAO;YAC5BG,SAAS;QACb;QACAH,yBAAyB,MAAM;YAC3BG,SAAS;QACb;QACAH,yBAAyB,OAAO;YAC5BG,SAAS;QACb;QACAH,yBAAyB,MAAM;YAC3BG,SAAS;QACb;KACH;AACL"}
@@ -1,2 +1,3 @@
1
- export {};
1
+ export { };
2
+
2
3
  //# sourceMappingURL=chat-customizations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-customizations.js","sourceRoot":"","sources":["../../src/models/chat-customizations.ts"],"names":[],"mappings":""}
1
+ {"version":3,"sources":["../../src/models/chat-customizations.ts"],"sourcesContent":["import { FC, PropsWithChildren, ReactNode } from 'react';\nimport { ChatMessageModelBase, ChatParticipantIcon } from './support-chat';\n\nexport interface IChatMessageProps<T extends ChatMessageModelBase = ChatMessageModelBase> {\n message: T;\n omitAvatar?: boolean;\n omitTimestamp?: boolean;\n}\n\nexport interface ChatMessageTemplateCustomization<\n T extends ChatMessageModelBase = ChatMessageModelBase,\n> {\n component: FC<PropsWithChildren<IChatMessageProps<T>>>;\n predicate: (message: T) => boolean;\n}\n\nexport type ChatMessageTemplateCustomizations = Partial<{\n agent: ChatMessageTemplateCustomization;\n user: ChatMessageTemplateCustomization;\n}>;\n\nexport interface ChatMessageCustomization<T extends ChatMessageModelBase = ChatMessageModelBase> {\n predicate: (message: T) => boolean;\n component?: FC<IChatMessageProps<T>>;\n isSystem?: boolean; // System messages are messages that are not sent by the user or the agent and rendered without chat bubbles\n isIgnored?: boolean;\n}\n\nexport interface ChatMessageTypingCustomization {\n component: FC<{\n avatar: {\n className?: string;\n name: string;\n icon: ChatParticipantIcon;\n };\n }>;\n}\n\nexport interface ChatInputCustomization {\n placeholderText?: string;\n isDisabled?: boolean;\n additionalButtons?: {\n position: 'left' | 'right';\n component: FC;\n }[];\n}\n\nexport type ChatCustomizations = Partial<{\n messageTemplates: ChatMessageTemplateCustomizations;\n messages: ChatMessageCustomization[];\n messageTyping: ChatMessageTypingCustomization;\n input: ChatInputCustomization;\n footerComponent: ReactNode;\n loadingComponent: ReactNode;\n}>;\n"],"names":[],"mappings":"AA+CA,WAOG"}
@@ -1,2 +1,3 @@
1
- export {};
1
+ export { };
2
+
2
3
  //# sourceMappingURL=file-descriptor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-descriptor.js","sourceRoot":"","sources":["../../src/models/file-descriptor.ts"],"names":[],"mappings":""}
1
+ {"version":3,"sources":["../../src/models/file-descriptor.ts"],"sourcesContent":["export interface FileDescriptor {\n displayName?: string;\n downloadLink?: string;\n file: File | string;\n uploadProgress?: number;\n}\n"],"names":[],"mappings":"AAAA,WAKC"}
@@ -1,5 +1,5 @@
1
1
  export * from './support-chat';
2
2
  export * from './__mocks__/support-chat.mock';
3
- export * from './chat-customizations';
4
- export * from './file-descriptor';
3
+ export type * from './chat-customizations';
4
+ export type * from './file-descriptor';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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;AACtC,cAAc,mBAAmB,CAAC"}
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,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,mBAAmB,CAAC"}
@@ -1,5 +1,4 @@
1
1
  export * from './support-chat';
2
2
  export * from './__mocks__/support-chat.mock';
3
- export * from './chat-customizations';
4
- export * from './file-descriptor';
3
+
5
4
  //# sourceMappingURL=index.js.map
@@ -1 +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;AACtC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"sources":["../../src/models/index.ts"],"sourcesContent":["export * from './support-chat';\nexport * from './__mocks__/support-chat.mock';\nexport type * from './chat-customizations';\nexport type * from './file-descriptor';\n"],"names":[],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,gCAAgC"}
@@ -1,76 +1,72 @@
1
- export var ChatMessageState;
2
- (function (ChatMessageState) {
1
+ function _define_property(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value: value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ } else {
10
+ obj[key] = value;
11
+ }
12
+ return obj;
13
+ }
14
+ export var ChatMessageState = /*#__PURE__*/ function(ChatMessageState) {
3
15
  ChatMessageState["Delivering"] = "Delivering";
4
16
  ChatMessageState["Delivered"] = "Delivered";
5
17
  ChatMessageState["Failed"] = "Failed";
6
- })(ChatMessageState || (ChatMessageState = {}));
7
- export var ChatEndReason;
8
- (function (ChatEndReason) {
18
+ return ChatMessageState;
19
+ }({});
20
+ export var ChatEndReason = /*#__PURE__*/ function(ChatEndReason) {
9
21
  ChatEndReason["ByUser"] = "ByUser";
10
22
  ChatEndReason["ByAgent"] = "ByAgent";
11
23
  ChatEndReason["ByTimeout"] = "ByTimeout";
12
24
  ChatEndReason["ByFailedToStart"] = "ByFailedToStart";
13
- })(ChatEndReason || (ChatEndReason = {}));
14
- export var ChatParticipantIcon;
15
- (function (ChatParticipantIcon) {
25
+ return ChatEndReason;
26
+ }({});
27
+ export var ChatParticipantIcon = /*#__PURE__*/ function(ChatParticipantIcon) {
16
28
  ChatParticipantIcon["Empty"] = "empty";
17
29
  ChatParticipantIcon["Initials"] = "initials";
18
30
  ChatParticipantIcon["Bot"] = "bot";
19
31
  ChatParticipantIcon["Atlas"] = "atlas";
20
- })(ChatParticipantIcon || (ChatParticipantIcon = {}));
32
+ return ChatParticipantIcon;
33
+ }({});
21
34
  export class ChatError extends Error {
22
- constructor(message, options) {
23
- var _a, _b;
24
- super(message);
25
- Object.defineProperty(this, "title", {
26
- enumerable: true,
27
- configurable: true,
28
- writable: true,
29
- value: void 0
30
- });
31
- Object.defineProperty(this, "recoverStrategy", {
32
- enumerable: true,
33
- configurable: true,
34
- writable: true,
35
- value: void 0
36
- });
37
- Object.defineProperty(this, "data", {
38
- enumerable: true,
39
- configurable: true,
40
- writable: true,
41
- value: void 0
42
- });
43
- this.name = 'ChatError';
44
- this.title = (_a = options === null || options === void 0 ? void 0 : options.title) !== null && _a !== void 0 ? _a : 'Chat Error';
45
- this.recoverStrategy = (_b = options === null || options === void 0 ? void 0 : options.recoverStrategy) !== null && _b !== void 0 ? _b : false;
46
- this.data = options === null || options === void 0 ? void 0 : options.data;
47
- Object.setPrototypeOf(this, ChatError.prototype);
48
- }
49
35
  toJSON() {
50
36
  return {
51
37
  name: this.name,
52
38
  message: this.message,
53
39
  title: this.title,
54
40
  recoverStrategy: this.recoverStrategy,
55
- data: this.data,
41
+ data: this.data
56
42
  };
57
43
  }
58
44
  fromJSON(json) {
59
45
  const error = new ChatError(json.message, {
60
46
  title: json.title,
61
47
  recoverStrategy: json.recoverStrategy,
62
- data: json.data,
48
+ data: json.data
63
49
  });
64
50
  error.name = json.name;
65
51
  return error;
66
52
  }
53
+ constructor(message, options){
54
+ var _ref, _ref1;
55
+ super(message), _define_property(this, "title", void 0), _define_property(this, "recoverStrategy", void 0), _define_property(this, "data", void 0);
56
+ this.name = 'ChatError';
57
+ this.title = (_ref = options === null || options === void 0 ? void 0 : options.title) !== null && _ref !== void 0 ? _ref : 'Chat Error';
58
+ this.recoverStrategy = (_ref1 = options === null || options === void 0 ? void 0 : options.recoverStrategy) !== null && _ref1 !== void 0 ? _ref1 : false;
59
+ this.data = options === null || options === void 0 ? void 0 : options.data;
60
+ Object.setPrototypeOf(this, ChatError.prototype);
61
+ }
67
62
  }
68
- export var ChatRunState;
69
- (function (ChatRunState) {
63
+ export var ChatRunState = /*#__PURE__*/ function(ChatRunState) {
70
64
  ChatRunState[ChatRunState["Offline"] = 0] = "Offline";
71
65
  ChatRunState[ChatRunState["Initializing"] = 1] = "Initializing";
72
66
  ChatRunState[ChatRunState["Started"] = 2] = "Started";
73
67
  ChatRunState[ChatRunState["Ended"] = 3] = "Ended";
74
68
  ChatRunState[ChatRunState["Error"] = 4] = "Error";
75
- })(ChatRunState || (ChatRunState = {}));
69
+ return ChatRunState;
70
+ }({});
71
+
76
72
  //# sourceMappingURL=support-chat.js.map
@@ -1 +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,mBAKX;AALD,WAAY,mBAAmB;IAC3B,sCAAe,CAAA;IACf,4CAAqB,CAAA;IACrB,kCAAW,CAAA;IACX,sCAAe,CAAA;AACnB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAsDD,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"}
1
+ {"version":3,"sources":["../../src/models/support-chat.ts"],"sourcesContent":["export interface ChatTimer {\n secondsLeft: number;\n secondsTotal: number;\n}\n\nexport enum ChatMessageState {\n Delivering = 'Delivering',\n Delivered = 'Delivered',\n Failed = 'Failed',\n}\n\nexport enum ChatEndReason {\n ByUser = 'ByUser',\n ByAgent = 'ByAgent',\n ByTimeout = 'ByTimeout',\n ByFailedToStart = 'ByFailedToStart',\n}\n\nexport enum ChatParticipantIcon {\n Empty = 'empty',\n Initials = 'initials',\n Bot = 'bot',\n Atlas = 'atlas',\n}\n\nexport interface ChatParticipantModel {\n isAgent: boolean;\n name: string;\n icon: ChatParticipantIcon;\n}\n\nexport interface ChatConfiguration {\n agentName?: string;\n agentIcon?: ChatParticipantIcon;\n}\n\nexport interface ChatMessageModelBase {\n id: string;\n timestamp: Date;\n type: string;\n participant: ChatParticipantModel;\n state: ChatMessageState;\n error?: string;\n data?: any;\n}\n\nexport interface ChatMessageModelTimeout extends ChatMessageModelBase {\n type: 'timeout';\n}\n\nexport interface ChatMessageModelText extends ChatMessageModelBase {\n type: 'message';\n message: string;\n}\n\nexport interface ChatMessageModelWelcome extends ChatMessageModelBase {\n type: 'welcome';\n message: string;\n}\n\nexport interface ChatMessageModelFile extends ChatMessageModelBase {\n type: 'file';\n fileName: string;\n}\n\nexport type ChatErrorRecoverStrategy =\n | {\n recoverButtonTitle: string;\n }\n | false;\n\nexport interface ChatErrorOptions<T = any> {\n title?: string;\n recoverStrategy?: ChatErrorRecoverStrategy;\n data?: T;\n}\n\nexport class ChatError<T = any> extends Error {\n title: string;\n recoverStrategy: ChatErrorRecoverStrategy;\n data?: T;\n\n constructor(message: string, options?: ChatErrorOptions<T>) {\n super(message);\n this.name = 'ChatError';\n this.title = options?.title ?? 'Chat Error';\n this.recoverStrategy = options?.recoverStrategy ?? false;\n this.data = options?.data;\n Object.setPrototypeOf(this, ChatError.prototype);\n }\n\n toJSON(): Record<string, any> {\n return {\n name: this.name,\n message: this.message,\n title: this.title,\n recoverStrategy: this.recoverStrategy,\n data: this.data,\n };\n }\n\n fromJSON(json: Record<string, any>): ChatError<T> {\n const error = new ChatError<T>(json.message, {\n title: json.title,\n recoverStrategy: json.recoverStrategy,\n data: json.data,\n });\n error.name = json.name;\n return error;\n }\n}\n\nexport enum ChatRunState {\n Offline = 0,\n Initializing = 1,\n Started = 2,\n Ended = 3,\n Error = 4,\n}\n"],"names":["ChatMessageState","ChatEndReason","ChatParticipantIcon","ChatError","Error","toJSON","name","message","title","recoverStrategy","data","fromJSON","json","error","options","Object","setPrototypeOf","prototype","ChatRunState"],"mappings":";;;;;;;;;;;;;AAKA,OAAO,IAAA,AAAKA,0CAAAA;;;;WAAAA;MAIX;AAED,OAAO,IAAA,AAAKC,uCAAAA;;;;;WAAAA;MAKX;AAED,OAAO,IAAA,AAAKC,6CAAAA;;;;;WAAAA;MAKX;AAsDD,OAAO,MAAMC,kBAA2BC;IAcpCC,SAA8B;QAC1B,OAAO;YACHC,MAAM,IAAI,CAACA,IAAI;YACfC,SAAS,IAAI,CAACA,OAAO;YACrBC,OAAO,IAAI,CAACA,KAAK;YACjBC,iBAAiB,IAAI,CAACA,eAAe;YACrCC,MAAM,IAAI,CAACA,IAAI;QACnB;IACJ;IAEAC,SAASC,IAAyB,EAAgB;QAC9C,MAAMC,QAAQ,IAAIV,UAAaS,KAAKL,OAAO,EAAE;YACzCC,OAAOI,KAAKJ,KAAK;YACjBC,iBAAiBG,KAAKH,eAAe;YACrCC,MAAME,KAAKF,IAAI;QACnB;QACAG,MAAMP,IAAI,GAAGM,KAAKN,IAAI;QACtB,OAAOO;IACX;IA3BA,YAAYN,OAAe,EAAEO,OAA6B,CAAE;;QACxD,KAAK,CAACP,UALVC,uBAAAA,SAAAA,KAAAA,IACAC,uBAAAA,mBAAAA,KAAAA,IACAC,uBAAAA,QAAAA,KAAAA;QAII,IAAI,CAACJ,IAAI,GAAG;QACZ,IAAI,CAACE,KAAK,WAAGM,oBAAAA,8BAAAA,QAASN,KAAK,uCAAI;QAC/B,IAAI,CAACC,eAAe,YAAGK,oBAAAA,8BAAAA,QAASL,eAAe,yCAAI;QACnD,IAAI,CAACC,IAAI,GAAGI,oBAAAA,8BAAAA,QAASJ,IAAI;QACzBK,OAAOC,cAAc,CAAC,IAAI,EAAEb,UAAUc,SAAS;IACnD;AAqBJ;AAEA,OAAO,IAAA,AAAKC,sCAAAA;;;;;;WAAAA;MAMX"}