@servicetitan/titan-chatbot-ui 3.1.5 → 3.2.1

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 CHANGED
@@ -1,3 +1,15 @@
1
+ # v3.2.0 (Tue Sep 09 2025)
2
+
3
+ #### 🚀 Enhancement
4
+
5
+ - SPA-7282: Support Rendering of Markups in Chatbot Responses [#53](https://github.com/servicetitan/titan-chatbot-client/pull/53) ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
6
+
7
+ #### Authors: 1
8
+
9
+ - Alexandr Yarmolchuk ([@AlexYarmolchuk](https://github.com/AlexYarmolchuk))
10
+
11
+ ---
12
+
1
13
  # v3.1.4 (Fri Aug 22 2025)
2
14
 
3
15
  #### 🐛 Bug Fix
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { MultilineText } from '@servicetitan/titan-chat-ui';
2
+ import { MessageContentText } from '@servicetitan/titan-chat-ui';
3
3
  import classNames from 'classnames';
4
4
  import { observer } from 'mobx-react';
5
5
  import { Fragment, useMemo } from 'react';
@@ -12,6 +12,6 @@ export const ChatbotMessageAnswerReadonly = observer(({ message }) => {
12
12
  className: classNames(Styles.link, 'm-y-half-i'),
13
13
  }), []);
14
14
  const chatbotMessageData = useMemo(() => message === null || message === void 0 ? void 0 : message.data, [message]);
15
- return (_jsxs(Fragment, { children: [_jsx(MultilineText, { text: message.message, className: "m-y-half-i" }), chatbotMessageData && (_jsx(ChatbotLinks, { links: (_a = chatbotMessageData.scoredUrls) !== null && _a !== void 0 ? _a : [], seeMoreLabel: "Learn more", seeLessLabel: "Learn more", linkProps: linkProps }))] }));
15
+ return (_jsxs(Fragment, { children: [_jsx(MessageContentText, { message: message, className: "m-y-half-i" }), chatbotMessageData && (_jsx(ChatbotLinks, { links: (_a = chatbotMessageData.scoredUrls) !== null && _a !== void 0 ? _a : [], seeMoreLabel: "Learn more", seeLessLabel: "Learn more", linkProps: linkProps }))] }));
16
16
  });
17
17
  //# sourceMappingURL=chatbot-message-answer-readonly.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatbot-message-answer-readonly.js","sourceRoot":"","sources":["../../../../src/components/chatbot/messages/chatbot-message-answer-readonly.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAE/D,MAAM,CAAC,MAAM,4BAA4B,GAA0C,QAAQ,CACvF,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;IACZ,MAAM,SAAS,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACH,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC;KACnD,CAAC,EACF,EAAE,CACL,CAAC;IAEF,MAAM,kBAAkB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAsC,EACrD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,OAAO,CACH,MAAC,QAAQ,eACL,KAAC,aAAa,IAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAC,YAAY,GAAG,EAC9D,kBAAkB,IAAI,CACnB,KAAC,YAAY,IACT,KAAK,EAAE,MAAA,kBAAkB,CAAC,UAAU,mCAAI,EAAE,EAC1C,YAAY,EAAC,YAAY,EACzB,YAAY,EAAC,YAAY,EACzB,SAAS,EAAE,SAAS,GACtB,CACL,IACM,CACd,CAAC;AACN,CAAC,CACJ,CAAC"}
1
+ {"version":3,"file":"chatbot-message-answer-readonly.js","sourceRoot":"","sources":["../../../../src/components/chatbot/messages/chatbot-message-answer-readonly.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAE/D,MAAM,CAAC,MAAM,4BAA4B,GAA0C,QAAQ,CACvF,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;IACZ,MAAM,SAAS,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACH,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC;KACnD,CAAC,EACF,EAAE,CACL,CAAC;IAEF,MAAM,kBAAkB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAsC,EACrD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,OAAO,CACH,MAAC,QAAQ,eACL,KAAC,kBAAkB,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,YAAY,GAAG,EAC9D,kBAAkB,IAAI,CACnB,KAAC,YAAY,IACT,KAAK,EAAE,MAAA,kBAAkB,CAAC,UAAU,mCAAI,EAAE,EAC1C,YAAY,EAAC,YAAY,EACzB,YAAY,EAAC,YAAY,EACzB,SAAS,EAAE,SAAS,GACtB,CACL,IACM,CACd,CAAC;AACN,CAAC,CACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useDependencies } from '@servicetitan/react-ioc';
3
- import { MultilineText } from '@servicetitan/titan-chat-ui';
3
+ import { MessageContentText } from '@servicetitan/titan-chat-ui';
4
4
  import { CHATBOT_UI_STORE_TOKEN } from '@servicetitan/titan-chatbot-api';
5
5
  import classNames from 'classnames';
6
6
  import { observer } from 'mobx-react';
@@ -24,6 +24,6 @@ export const ChatbotMessageAnswer = observer(({ message }) => {
24
24
  primary: false,
25
25
  className: classNames(Styles.link, 'm-y-half-i'),
26
26
  }), []);
27
- return (_jsxs(Fragment, { children: [_jsx(MultilineText, { text: message.message, className: "m-y-half-i", "data-cy": "titan-chatbot-message-answer" }), chatbotMessageData && (_jsx(ChatbotLinks, { links: (_a = chatbotMessageData.scoredUrls) !== null && _a !== void 0 ? _a : [], onToggle: handleToggleLinks, seeMoreLabel: "Learn more", seeLessLabel: "Learn less", linkProps: linkProps }))] }));
27
+ return (_jsxs(Fragment, { children: [_jsx(MessageContentText, { message: message, className: "m-y-half-i", "data-cy": "titan-chatbot-message-answer" }), chatbotMessageData && (_jsx(ChatbotLinks, { links: (_a = chatbotMessageData.scoredUrls) !== null && _a !== void 0 ? _a : [], onToggle: handleToggleLinks, seeMoreLabel: "Learn more", seeLessLabel: "Learn less", linkProps: linkProps }))] }));
28
28
  });
29
29
  //# sourceMappingURL=chatbot-message-answer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatbot-message-answer.js","sourceRoot":"","sources":["../../../../src/components/chatbot/messages/chatbot-message-answer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAU,MAAM,iCAAiC,CAAC;AACjF,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAE/D,MAAM,CAAC,MAAM,oBAAoB,GAA0C,QAAQ,CAC/E,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;IACZ,MAAM,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;IACjE,MAAM,kBAAkB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAsC,EACrD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;;QACvC,IAAI,CAAA,MAAA,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,EAAE,MAAK,OAAO,CAAC,EAAE,EAAE,CAAC;YACpD,OAAO;QACX,CAAC;QACD,UAAU,CAAC,GAAG,EAAE;YACZ,cAAc,CAAC,aAAa,EAAE,CAAC;QACnC,CAAC,EAAE,GAAG,CAAC,CAAC;IACZ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAEjC,MAAM,SAAS,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACH,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC;KACnD,CAAC,EACF,EAAE,CACL,CAAC;IAEF,OAAO,CACH,MAAC,QAAQ,eACL,KAAC,aAAa,IACV,IAAI,EAAE,OAAO,CAAC,OAAO,EACrB,SAAS,EAAC,YAAY,aACd,8BAA8B,GACxC,EACD,kBAAkB,IAAI,CACnB,KAAC,YAAY,IACT,KAAK,EAAE,MAAA,kBAAkB,CAAC,UAAU,mCAAI,EAAE,EAC1C,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAC,YAAY,EACzB,YAAY,EAAC,YAAY,EACzB,SAAS,EAAE,SAAS,GACtB,CACL,IACM,CACd,CAAC;AACN,CAAC,CACJ,CAAC"}
1
+ {"version":3,"file":"chatbot-message-answer.js","sourceRoot":"","sources":["../../../../src/components/chatbot/messages/chatbot-message-answer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,sBAAsB,EAAU,MAAM,iCAAiC,CAAC;AACjF,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,MAAM,sCAAsC,CAAC;AAE/D,MAAM,CAAC,MAAM,oBAAoB,GAA0C,QAAQ,CAC/E,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;IACZ,MAAM,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;IACjE,MAAM,kBAAkB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAsC,EACrD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;;QACvC,IAAI,CAAA,MAAA,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,EAAE,MAAK,OAAO,CAAC,EAAE,EAAE,CAAC;YACpD,OAAO;QACX,CAAC;QACD,UAAU,CAAC,GAAG,EAAE;YACZ,cAAc,CAAC,aAAa,EAAE,CAAC;QACnC,CAAC,EAAE,GAAG,CAAC,CAAC;IACZ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAEjC,MAAM,SAAS,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACH,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC;KACnD,CAAC,EACF,EAAE,CACL,CAAC;IAEF,OAAO,CACH,MAAC,QAAQ,eACL,KAAC,kBAAkB,IACf,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,YAAY,aACd,8BAA8B,GACxC,EACD,kBAAkB,IAAI,CACnB,KAAC,YAAY,IACT,KAAK,EAAE,MAAA,kBAAkB,CAAC,UAAU,mCAAI,EAAE,EAC1C,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAC,YAAY,EACzB,YAAY,EAAC,YAAY,EACzB,SAAS,EAAE,SAAS,GACtB,CACL,IACM,CACd,CAAC;AACN,CAAC,CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/titan-chatbot-ui",
3
- "version": "3.1.5",
3
+ "version": "3.2.1",
4
4
  "description": "Chatbot experience UI package",
5
5
  "repository": {
6
6
  "type": "git",
@@ -17,9 +17,9 @@
17
17
  "push:local": "yalc push"
18
18
  },
19
19
  "dependencies": {
20
- "@servicetitan/titan-chat-ui": "^3.1.5",
21
- "@servicetitan/titan-chat-ui-common": "^3.1.5",
22
- "@servicetitan/titan-chatbot-api": "^3.1.5",
20
+ "@servicetitan/titan-chat-ui": "^3.2.1",
21
+ "@servicetitan/titan-chat-ui-common": "^3.2.1",
22
+ "@servicetitan/titan-chatbot-api": "^3.2.1",
23
23
  "nanoid": "^5.1.5"
24
24
  },
25
25
  "peerDependencies": {
@@ -40,7 +40,7 @@
40
40
  "react-dom": ">=18"
41
41
  },
42
42
  "devDependencies": {
43
- "@servicetitan/cypress-shared": "^3.1.5",
43
+ "@servicetitan/cypress-shared": "^3.2.1",
44
44
  "cypress": "^14.3.2"
45
45
  },
46
46
  "keywords": [
@@ -53,5 +53,5 @@
53
53
  "cli": {
54
54
  "webpack": false
55
55
  },
56
- "gitHead": "d505add9e192f5d8260f14e15eee7460980e869b"
56
+ "gitHead": "f6a97e29c801f2dd05627766056f9b6e9b2c2318"
57
57
  }
@@ -1,4 +1,4 @@
1
- import { MultilineText } from '@servicetitan/titan-chat-ui';
1
+ import { MessageContentText } from '@servicetitan/titan-chat-ui';
2
2
  import { ChatMessageModelText } from '@servicetitan/titan-chat-ui-common';
3
3
  import { Models } from '@servicetitan/titan-chatbot-api';
4
4
  import classNames from 'classnames';
@@ -24,7 +24,7 @@ export const ChatbotMessageAnswerReadonly: FC<{ message: ChatMessageModelText }>
24
24
 
25
25
  return (
26
26
  <Fragment>
27
- <MultilineText text={message.message} className="m-y-half-i" />
27
+ <MessageContentText message={message} className="m-y-half-i" />
28
28
  {chatbotMessageData && (
29
29
  <ChatbotLinks
30
30
  links={chatbotMessageData.scoredUrls ?? []}
@@ -1,5 +1,5 @@
1
1
  import { useDependencies } from '@servicetitan/react-ioc';
2
- import { MultilineText } from '@servicetitan/titan-chat-ui';
2
+ import { MessageContentText } from '@servicetitan/titan-chat-ui';
3
3
  import { ChatMessageModelText } from '@servicetitan/titan-chat-ui-common';
4
4
  import { CHATBOT_UI_STORE_TOKEN, Models } from '@servicetitan/titan-chatbot-api';
5
5
  import classNames from 'classnames';
@@ -35,8 +35,8 @@ export const ChatbotMessageAnswer: FC<{ message: ChatMessageModelText }> = obser
35
35
 
36
36
  return (
37
37
  <Fragment>
38
- <MultilineText
39
- text={message.message}
38
+ <MessageContentText
39
+ message={message}
40
40
  className="m-y-half-i"
41
41
  data-cy="titan-chatbot-message-answer"
42
42
  />