@servicetitan/titan-chat-ui-anvil2 3.0.1 → 3.1.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 +12 -0
- package/dist/components/chat/__tests-cy__/chat-error.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-error.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-error.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-error.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-input-file.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-input-file.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-input-file.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-input-file.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-input.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-input.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-input.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-input.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-log.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-log.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-log.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-log.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-messages.test.js +2 -91
- package/dist/components/chat/__tests-cy__/chat-messages.test.js.map +1 -1
- package/dist/components/chat/__tests-cy__/chat-notifications.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-notifications.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-notifications.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-notifications.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-timer.test.d.ts +2 -0
- package/dist/components/chat/__tests-cy__/chat-timer.test.d.ts.map +1 -0
- package/dist/components/chat/__tests-cy__/chat-timer.test.js +6 -0
- package/dist/components/chat/__tests-cy__/chat-timer.test.js.map +1 -0
- package/dist/components/chat/__tests-cy__/chat.test.js +3 -127
- package/dist/components/chat/__tests-cy__/chat.test.js.map +1 -1
- package/dist/components/chat/chat-connecting.js +1 -1
- package/dist/components/chat/chat-connecting.js.map +1 -1
- package/dist/components/chat/chat-error.d.ts +3 -1
- package/dist/components/chat/chat-error.d.ts.map +1 -1
- package/dist/components/chat/chat-error.js +3 -4
- package/dist/components/chat/chat-error.js.map +1 -1
- package/dist/components/chat/chat-input-file.d.ts.map +1 -1
- package/dist/components/chat/chat-input-file.js +19 -15
- package/dist/components/chat/chat-input-file.js.map +1 -1
- package/dist/components/chat/chat-input.d.ts.map +1 -1
- package/dist/components/chat/chat-input.js +5 -6
- package/dist/components/chat/chat-input.js.map +1 -1
- package/dist/components/chat/chat-input.module.less +4 -0
- package/dist/components/chat/chat-message-template-user.d.ts.map +1 -1
- package/dist/components/chat/chat-message-template-user.js +2 -2
- package/dist/components/chat/chat-message-template-user.js.map +1 -1
- package/dist/components/chat/chat-timer.d.ts.map +1 -1
- package/dist/components/chat/chat-timer.js +2 -3
- package/dist/components/chat/chat-timer.js.map +1 -1
- package/dist/components/chat/chat.d.ts.map +1 -1
- package/dist/components/chat/chat.js +7 -2
- package/dist/components/chat/chat.js.map +1 -1
- package/dist/components/chat/chat.module.less +9 -0
- package/dist/components/message-content/__tests-cy__/message-content-file.test.d.ts +2 -0
- package/dist/components/message-content/__tests-cy__/message-content-file.test.d.ts.map +1 -0
- package/dist/components/message-content/__tests-cy__/message-content-file.test.js +6 -0
- package/dist/components/message-content/__tests-cy__/message-content-file.test.js.map +1 -0
- package/dist/components/messages/__tests-cy__/message-agent.test.js +11 -77
- package/dist/components/messages/__tests-cy__/message-agent.test.js.map +1 -1
- package/dist/components/messages/__tests-cy__/message-system.test.js +6 -15
- package/dist/components/messages/__tests-cy__/message-system.test.js.map +1 -1
- package/dist/components/messages/__tests-cy__/message-timeout.test.js +2 -21
- package/dist/components/messages/__tests-cy__/message-timeout.test.js.map +1 -1
- package/dist/components/messages/__tests-cy__/message-typing.test.js +3 -45
- package/dist/components/messages/__tests-cy__/message-typing.test.js.map +1 -1
- package/dist/components/messages/__tests-cy__/message-user.test.js +3 -23
- package/dist/components/messages/__tests-cy__/message-user.test.js.map +1 -1
- package/dist/components/messages/message-timeout.d.ts.map +1 -1
- package/dist/components/messages/message-timeout.js +2 -1
- package/dist/components/messages/message-timeout.js.map +1 -1
- package/dist/components/messages/message-timeout.module.less +3 -0
- package/dist/components/messages/message-typing.js +1 -1
- package/dist/components/messages/message-typing.js.map +1 -1
- package/dist/components/messages/message-typing.module.less +4 -0
- package/package.json +4 -4
- package/src/components/chat/__tests-cy__/chat-error.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat-input-file.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat-input.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat-log.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat-messages.test.tsx +2 -107
- package/src/components/chat/__tests-cy__/chat-notifications.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat-timer.test.tsx +6 -0
- package/src/components/chat/__tests-cy__/chat.test.tsx +3 -161
- package/src/components/chat/chat-connecting.tsx +1 -1
- package/src/components/chat/chat-error.tsx +18 -21
- package/src/components/chat/chat-input-file.tsx +66 -31
- package/src/components/chat/chat-input.module.less +4 -0
- package/src/components/chat/chat-input.module.less.d.ts +1 -0
- package/src/components/chat/chat-input.tsx +31 -26
- package/src/components/chat/chat-message-template-user.tsx +11 -8
- package/src/components/chat/chat-timer.tsx +3 -9
- package/src/components/chat/chat.module.less +9 -0
- package/src/components/chat/chat.module.less.d.ts +4 -0
- package/src/components/chat/chat.tsx +33 -20
- package/src/components/message-content/__tests-cy__/message-content-file.test.tsx +6 -0
- package/src/components/messages/__tests-cy__/message-agent.test.tsx +15 -136
- package/src/components/messages/__tests-cy__/message-system.test.tsx +10 -28
- package/src/components/messages/__tests-cy__/message-timeout.test.tsx +2 -25
- package/src/components/messages/__tests-cy__/message-typing.test.tsx +3 -54
- package/src/components/messages/__tests-cy__/message-user.test.tsx +3 -37
- package/src/components/messages/message-timeout.module.less +3 -0
- package/src/components/messages/message-timeout.module.less.d.ts +3 -0
- package/src/components/messages/message-timeout.tsx +3 -2
- package/src/components/messages/message-typing.module.less +4 -0
- package/src/components/messages/message-typing.module.less.d.ts +1 -0
- package/src/components/messages/message-typing.tsx +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/components/chat/chat-error.module.less +0 -6
- package/dist/components/chat/chat-timer.module.less +0 -5
- package/src/components/chat/chat-error.module.less +0 -6
- package/src/components/chat/chat-error.module.less.d.ts +0 -3
- package/src/components/chat/chat-timer.module.less +0 -5
- package/src/components/chat/chat-timer.module.less.d.ts +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-message-template-user.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-template-user.tsx"],"names":[],"mappings":"AAGA,OAAO,EAGH,iBAAiB,EACpB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAe,MAAM,OAAO,CAAC;AAI3D,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"chat-message-template-user.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-message-template-user.tsx"],"names":[],"mappings":"AAGA,OAAO,EAGH,iBAAiB,EACpB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAe,MAAM,OAAO,CAAC;AAI3D,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CA0C5E,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Button, Text } from '@servicetitan/anvil2';
|
|
2
|
+
import { Button, Flex, Text } from '@servicetitan/anvil2';
|
|
3
3
|
import IconRefresh from '@servicetitan/anvil2/assets/icons/material/round/refresh.svg';
|
|
4
4
|
import { useDependencies } from '@servicetitan/react-ioc';
|
|
5
5
|
import { CHAT_UI_STORE_TOKEN, ChatMessageState, } from '@servicetitan/titan-chat-ui-common';
|
|
@@ -11,6 +11,6 @@ export const ChatMessageTemplateUser = observer(({ children, message, omitTimest
|
|
|
11
11
|
const [chatUiStore] = useDependencies(CHAT_UI_STORE_TOKEN);
|
|
12
12
|
const isError = message.state === ChatMessageState.Failed;
|
|
13
13
|
const handleRetry = useCallback(() => chatUiStore.sendMessageRetry(message), [chatUiStore, message]);
|
|
14
|
-
return (_jsx(MessageUser, { isError: isError, messageFooter: isError ? (_jsxs(Text, { variant: "eyebrow", className: "c-
|
|
14
|
+
return (_jsx(MessageUser, { isError: isError, messageFooter: isError ? (_jsxs(Flex, { direction: "row", alignItems: "center", gap: "1", children: [_jsx(Text, { variant: "eyebrow", className: "c-danger", "data-cy": "titan-chat-message-error", children: "Message not delivered. Retry" }), _jsx(Button, { icon: IconRefresh, appearance: "ghost", size: "small", className: "c-danger", "aria-label": "Retry send message", onClick: handleRetry, "data-cy": "titan-chat-message-error-retry" })] })) : !omitTimestamp ? (_jsx(MessageFooter, { timestamp: message.timestamp })) : null, children: children }));
|
|
15
15
|
});
|
|
16
16
|
//# sourceMappingURL=chat-message-template-user.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-message-template-user.js","sourceRoot":"","sources":["../../../src/components/chat/chat-message-template-user.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-message-template-user.js","sourceRoot":"","sources":["../../../src/components/chat/chat-message-template-user.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,WAAW,MAAM,8DAA8D,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACH,mBAAmB,EACnB,gBAAgB,GAEnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAyB,WAAW,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,CAAC,MAAM,uBAAuB,GAA6C,QAAQ,CACrF,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE;IACrC,MAAM,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,KAAK,gBAAgB,CAAC,MAAM,CAAC;IAE1D,MAAM,WAAW,GAAG,WAAW,CAC3B,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAC3C,CAAC,WAAW,EAAE,OAAO,CAAC,CACzB,CAAC;IAEF,OAAO,CACH,KAAC,WAAW,IACR,OAAO,EAAE,OAAO,EAChB,aAAa,EACT,OAAO,CAAC,CAAC,CAAC,CACN,MAAC,IAAI,IAAC,SAAS,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAC,GAAG,aAC7C,KAAC,IAAI,IACD,OAAO,EAAC,SAAS,EACjB,SAAS,EAAC,UAAU,aACZ,0BAA0B,6CAG/B,EACP,KAAC,MAAM,IACH,IAAI,EAAE,WAAW,EACjB,UAAU,EAAC,OAAO,EAClB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,UAAU,gBACT,oBAAoB,EAC/B,OAAO,EAAE,WAAW,aACZ,gCAAgC,GAC1C,IACC,CACV,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACjB,KAAC,aAAa,IAAC,SAAS,EAAE,OAAO,CAAC,SAAS,GAAI,CAClD,CAAC,CAAC,CAAC,IAAI,YAGX,QAAQ,GACC,CACjB,CAAC;AACN,CAAC,CACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-timer.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-timer.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-timer.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat-timer.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,EAqBtB,CAAC"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { Alert, Link, Text } from '@servicetitan/anvil2';
|
|
3
3
|
import { useDependencies } from '@servicetitan/react-ioc';
|
|
4
4
|
import { CHAT_UI_STORE_TOKEN } from '@servicetitan/titan-chat-ui-common';
|
|
5
5
|
import { observer } from 'mobx-react';
|
|
6
6
|
import { useCallback } from 'react';
|
|
7
|
-
import * as Styles from './chat-timer.module.less';
|
|
8
7
|
export const ChatTimer = observer(() => {
|
|
9
8
|
var _a, _b;
|
|
10
9
|
const [chatUiStore] = useDependencies(CHAT_UI_STORE_TOKEN);
|
|
@@ -13,6 +12,6 @@ export const ChatTimer = observer(() => {
|
|
|
13
12
|
if (!chatUiStore.timer) {
|
|
14
13
|
return null;
|
|
15
14
|
}
|
|
16
|
-
return (_jsxs(
|
|
15
|
+
return (_jsxs(Alert, { status: "info", title: "Chat inactive", "data-cy": "titan-chat-timer", children: [_jsxs(Text, { variant: "body", children: ['Are you still there? Please respond within ', _jsxs("b", { children: [secondsLeft, "s"] }), ' or this chat will time out.'] }), _jsx(Link, { onClick: restartTimers, appearance: "secondary", "data-cy": "titan-chat-timer-restart", children: "I'm here" })] }));
|
|
17
16
|
});
|
|
18
17
|
//# sourceMappingURL=chat-timer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-timer.js","sourceRoot":"","sources":["../../../src/components/chat/chat-timer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"chat-timer.js","sourceRoot":"","sources":["../../../src/components/chat/chat-timer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,WAAW,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,SAAS,GAAO,QAAQ,CAAC,GAAG,EAAE;;IACvC,MAAM,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,MAAA,MAAA,WAAW,CAAC,KAAK,0CAAE,WAAW,mCAAI,CAAC,CAAC;IAExD,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpF,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,CACH,MAAC,KAAK,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,eAAe,aAAS,kBAAkB,aACjE,MAAC,IAAI,IAAC,OAAO,EAAC,MAAM,aACf,6CAA6C,EAC9C,wBAAI,WAAW,SAAM,EACpB,8BAA8B,IAC5B,EACP,KAAC,IAAI,IAAC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAC,WAAW,aAAS,0BAA0B,yBAEhF,IACH,CACX,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAuB,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAuB,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAG7F,OAAO,EAAE,EAAE,EAAqB,MAAM,OAAO,CAAC;AAQ9C,MAAM,WAAW,UAAU;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACvC;AAED,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,UAAU,CAsD9B,CAAC"}
|
|
@@ -2,13 +2,15 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Flex } from '@servicetitan/anvil2';
|
|
3
3
|
import { useDependencies } from '@servicetitan/react-ioc';
|
|
4
4
|
import { CHAT_UI_STORE_TOKEN } from '@servicetitan/titan-chat-ui-common';
|
|
5
|
+
import classNames from 'classnames';
|
|
5
6
|
import { observer } from 'mobx-react';
|
|
6
|
-
import {
|
|
7
|
+
import { useEffect, useRef } from 'react';
|
|
7
8
|
import { ChatConnecting } from './chat-connecting';
|
|
8
9
|
import { ChatInput } from './chat-input';
|
|
9
10
|
import { ChatInputFile } from './chat-input-file';
|
|
10
11
|
import { ChatMessages } from './chat-messages';
|
|
11
12
|
import { ChatNotifications } from './chat-notifications';
|
|
13
|
+
import * as Styles from './chat.module.less';
|
|
12
14
|
export const Chat = observer(({ className, customizations }) => {
|
|
13
15
|
var _a, _b;
|
|
14
16
|
const scrollRef = useRef(null);
|
|
@@ -25,6 +27,9 @@ export const Chat = observer(({ className, customizations }) => {
|
|
|
25
27
|
}
|
|
26
28
|
}, 0);
|
|
27
29
|
}, [chatUiStore.scrollCounter]);
|
|
28
|
-
|
|
30
|
+
if (chatUiStore.isStarting) {
|
|
31
|
+
return (_jsx(Flex, { direction: "column", className: className, "data-cy": "titan-chat", children: loadingComponent !== null && loadingComponent !== void 0 ? loadingComponent : _jsx(ChatConnecting, { className: "p-inline-6 p-block-4" }) }));
|
|
32
|
+
}
|
|
33
|
+
return (_jsxs(Flex, { direction: "column", className: className, "data-cy": "titan-chat", children: [_jsx(Flex, { direction: "column", ref: scrollRef, grow: "1", className: classNames('p-inline-6 p-block-4', Styles.scrollContainer), children: _jsx(ChatMessages, { messages: chatUiStore.messages, showTypingIndicator: chatUiStore.isAgentTyping }) }), _jsx(ChatNotifications, {}), !((_b = (_a = chatUiStore.customizations) === null || _a === void 0 ? void 0 : _a.input) === null || _b === void 0 ? void 0 : _b.isDisabled) && (_jsxs(Flex, { className: "p-inline-6 p-block-4", direction: "column", gap: "4", children: [_jsx(ChatInputFile, { className: classNames('p-4 border-radius-small border-color-subdued', Styles.fileContainer) }), _jsx(ChatInput, {}), Boolean(footerComponent) && footerComponent] }))] }));
|
|
29
34
|
});
|
|
30
35
|
//# sourceMappingURL=chat.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAsB,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAM,
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/components/chat/chat.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-content-file.test.d.ts","sourceRoot":"","sources":["../../../../src/components/message-content/__tests-cy__/message-content-file.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { runMessageContentFileSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
2
|
+
import { MessageContentFile } from '../message-content-file';
|
|
3
|
+
describe('MessageContentFile', () => {
|
|
4
|
+
runMessageContentFileSharedTests(MessageContentFile, { isAnvil2: true });
|
|
5
|
+
});
|
|
6
|
+
//# sourceMappingURL=message-content-file.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-content-file.test.js","sourceRoot":"","sources":["../../../../src/components/message-content/__tests-cy__/message-content-file.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,gCAAgC,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC"}
|
|
@@ -1,83 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AnvilProvider, Button, Flex, Text } from '@servicetitan/anvil2';
|
|
1
|
+
import { Button, Flex, Text } from '@servicetitan/anvil2';
|
|
3
2
|
import IconThumbDown from '@servicetitan/anvil2/assets/icons/material/round/thumb_down.svg';
|
|
4
3
|
import IconThumbUp from '@servicetitan/anvil2/assets/icons/material/round/thumb_up.svg';
|
|
5
|
-
import {
|
|
6
|
-
import { ChatUiSelectors } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
7
|
-
import { mount as cyMount } from 'cypress/react';
|
|
4
|
+
import { runMessageAgentSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
8
5
|
import { MessageAgent } from '../message-agent';
|
|
9
6
|
import { MessageFooter } from '../message-footer';
|
|
10
|
-
describe('
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
mount(_jsx(MessageAgent, { avatar: {
|
|
20
|
-
name: 'Test User Name',
|
|
21
|
-
icon: ChatParticipantIcon.Bot,
|
|
22
|
-
className: 'custom-class',
|
|
23
|
-
}, children: _jsx(Text, { "data-cy": "content", children: "message agent content" }) }));
|
|
24
|
-
ChatUiSelectors.chatMessageAgent.should('be.visible').children().should('have.length', 2);
|
|
25
|
-
ChatUiSelectors.chatAvatarBot.should('be.visible').should('have.class', 'custom-class');
|
|
26
|
-
ChatUiSelectors.chatMessageContentAgent.should('contain.text', 'message agent content');
|
|
27
|
-
});
|
|
28
|
-
it('should be full width', () => {
|
|
29
|
-
mount(_jsx(MessageAgent, { fullWidth: true, avatar: {
|
|
30
|
-
name: 'Test User Name',
|
|
31
|
-
icon: ChatParticipantIcon.Bot,
|
|
32
|
-
}, children: _jsx(Text, { children: "message agent content" }) }));
|
|
33
|
-
ChatUiSelectors.chatMessageContentAgent.should('contain.text', 'message agent content');
|
|
34
|
-
});
|
|
35
|
-
it('should render with custom data-cy', () => {
|
|
36
|
-
mount(_jsx(MessageAgent, { "data-cy": "custom-data-cy", avatar: {
|
|
37
|
-
name: 'Test User Name',
|
|
38
|
-
icon: ChatParticipantIcon.Bot,
|
|
39
|
-
}, children: _jsx(Text, { children: "message agent content" }) }));
|
|
40
|
-
cy.getCy('custom-data-cy').should('be.visible');
|
|
41
|
-
});
|
|
42
|
-
it('should render custom message footer', () => {
|
|
43
|
-
mount(_jsx(MessageAgent, { messageFooter: _jsxs(Flex, { direction: "row", justifyContent: "space-between", alignItems: "center", children: [_jsx(MessageFooter, { name: "name", timestamp: new Date() }), _jsxs(Flex, { direction: "row", gap: "2", children: [_jsx(Button, { icon: IconThumbUp, size: "small", appearance: "ghost" }), _jsx(Button, { icon: IconThumbDown, size: "small", appearance: "ghost" })] })] }), avatar: {
|
|
44
|
-
name: 'Test User Name',
|
|
45
|
-
icon: ChatParticipantIcon.Bot,
|
|
46
|
-
}, children: _jsx(Text, { children: "message agent content" }) }));
|
|
47
|
-
ChatUiSelectors.chatMessageAgent.should('be.visible').children().should('have.length', 2);
|
|
48
|
-
ChatUiSelectors.chatMessageFooter
|
|
49
|
-
.should('be.visible')
|
|
50
|
-
.should('contain.text', 'name • 10:10 AM');
|
|
51
|
-
});
|
|
52
|
-
it('should render subtle message', () => {
|
|
53
|
-
mount(_jsx(MessageAgent, { subtle: true, avatar: {
|
|
54
|
-
name: 'Test User Name',
|
|
55
|
-
icon: ChatParticipantIcon.Bot,
|
|
56
|
-
}, children: _jsx(Flex, { className: "border h-100", alignItems: "center", "data-cy": "custom-content", children: _jsx(Text, { children: "message agent content" }) }) }));
|
|
57
|
-
ChatUiSelectors.chatAvatarBot.should('be.visible');
|
|
58
|
-
cy.getCy('custom-content')
|
|
59
|
-
.should('be.visible')
|
|
60
|
-
.should('contain.text', 'message agent content');
|
|
61
|
-
});
|
|
62
|
-
describe('with different icon types', () => {
|
|
63
|
-
const render = (icon) => {
|
|
64
|
-
return mount(_jsx(MessageAgent, { avatar: {
|
|
65
|
-
name: 'Test User Name',
|
|
66
|
-
icon,
|
|
67
|
-
}, children: _jsx(Text, { children: "message agent content" }) }));
|
|
68
|
-
};
|
|
69
|
-
it('icon bot', () => {
|
|
70
|
-
render(ChatParticipantIcon.Bot);
|
|
71
|
-
ChatUiSelectors.chatAvatarBot.should('be.visible');
|
|
72
|
-
});
|
|
73
|
-
it('icon initials', () => {
|
|
74
|
-
render(ChatParticipantIcon.Initials);
|
|
75
|
-
ChatUiSelectors.chatAvatarInitials.should('be.visible').should('contain.text', 'T');
|
|
76
|
-
});
|
|
77
|
-
it('icon empty', () => {
|
|
78
|
-
render(ChatParticipantIcon.Empty);
|
|
79
|
-
ChatUiSelectors.chatAvatarEmpty.should('exist').should('not.be.visible');
|
|
80
|
-
});
|
|
81
|
-
});
|
|
7
|
+
describe('MessageAgent', () => {
|
|
8
|
+
runMessageAgentSharedTests(MessageAgent, {
|
|
9
|
+
TextComponent: Text,
|
|
10
|
+
ButtonComponent: Button,
|
|
11
|
+
ContainerComponent: Flex,
|
|
12
|
+
MessageFooterComponent: MessageFooter,
|
|
13
|
+
thumbUpIcon: IconThumbUp,
|
|
14
|
+
thumbDownIcon: IconThumbDown,
|
|
15
|
+
}, { isAnvil2: true });
|
|
82
16
|
});
|
|
83
17
|
//# sourceMappingURL=message-agent.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-agent.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-agent.test.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-agent.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-agent.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,aAAa,MAAM,iEAAiE,CAAC;AAC5F,OAAO,WAAW,MAAM,+DAA+D,CAAC;AACxF,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,0BAA0B,CACtB,YAAY,EACZ;QACI,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE,MAAM;QACvB,kBAAkB,EAAE,IAAI;QACxB,sBAAsB,EAAE,aAAa;QACrC,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,aAAa;KAC/B,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACrB,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
1
|
import { Flex, Text } from '@servicetitan/anvil2';
|
|
3
|
-
import {
|
|
4
|
-
import { mount } from 'cypress/react';
|
|
2
|
+
import { runMessageSystemSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
5
3
|
import { MessageSystem } from '../message-system';
|
|
6
|
-
describe('
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
mount(_jsx(MessageSystem, { className: "custom-class", children: _jsx(Flex, { className: "border", children: _jsx(Text, { "data-cy": "content", children: "message system content" }) }) }));
|
|
12
|
-
ChatUiSelectors.chatMessageSystem.should('have.class', 'custom-class').should('be.visible');
|
|
13
|
-
});
|
|
14
|
-
it('should be properly rendered fullwidth', () => {
|
|
15
|
-
mount(_jsx(MessageSystem, { className: "custom-class", fullWidth: true, children: _jsx(Flex, { className: "border", children: _jsx(Text, { "data-cy": "content", children: "message system content" }) }) }));
|
|
16
|
-
ChatUiSelectors.chatMessageSystem.should('have.class', 'custom-class').should('be.visible');
|
|
17
|
-
});
|
|
4
|
+
describe('MessageSystem', () => {
|
|
5
|
+
runMessageSystemSharedTests(MessageSystem, {
|
|
6
|
+
TextComponent: Text,
|
|
7
|
+
ContainerComponent: Flex,
|
|
8
|
+
}, { isAnvil2: true });
|
|
18
9
|
});
|
|
19
10
|
//# sourceMappingURL=message-system.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-system.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-system.test.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-system.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-system.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC3B,2BAA2B,CACvB,aAAa,EACb;QACI,aAAa,EAAE,IAAI;QACnB,kBAAkB,EAAE,IAAI;KAC3B,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACrB,CAAC;AACN,CAAC,CAAC,CAAC"}
|
|
@@ -1,25 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ChatUiSelectors } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
3
|
-
import { mount } from 'cypress/react';
|
|
1
|
+
import { runMessageTimeoutSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
4
2
|
import { MessageTimeout } from '../message-timeout';
|
|
5
3
|
describe('MessageTimeout', () => {
|
|
6
|
-
|
|
7
|
-
const onResume = cy.spy().as('onResume');
|
|
8
|
-
const onReset = cy.spy().as('onReset');
|
|
9
|
-
mount(_jsx(MessageTimeout, { onResume: onResume, onReset: onReset }));
|
|
10
|
-
ChatUiSelectors.chatMessageTimeout
|
|
11
|
-
.should('be.visible')
|
|
12
|
-
.should('contain.text', [
|
|
13
|
-
'Your session has timed out.',
|
|
14
|
-
'Would you like to resume it or start a new one?',
|
|
15
|
-
'Continue session or Start new session',
|
|
16
|
-
].join(''));
|
|
17
|
-
ChatUiSelectors.chatMessageTimeoutResume.should('be.visible');
|
|
18
|
-
ChatUiSelectors.chatMessageTimeoutReset.should('be.visible');
|
|
19
|
-
ChatUiSelectors.chatMessageTimeoutResume.click();
|
|
20
|
-
cy.get('@onResume').should('have.been.calledOnce');
|
|
21
|
-
ChatUiSelectors.chatMessageTimeoutReset.click();
|
|
22
|
-
cy.get('@onReset').should('have.been.calledOnce');
|
|
23
|
-
});
|
|
4
|
+
runMessageTimeoutSharedTests(MessageTimeout);
|
|
24
5
|
});
|
|
25
6
|
//# sourceMappingURL=message-timeout.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-timeout.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-timeout.test.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-timeout.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-timeout.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC5B,4BAA4B,CAAC,cAAc,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC"}
|
|
@@ -1,48 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ChatParticipantIcon } from '@servicetitan/titan-chat-ui-common';
|
|
3
|
-
import { ChatUiSelectors } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
4
|
-
import { mount } from 'cypress/react';
|
|
1
|
+
import { runMessageTypingSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
5
2
|
import { MessageTyping } from '../message-typing';
|
|
6
|
-
describe('
|
|
7
|
-
|
|
8
|
-
mount(_jsx(MessageTyping, { avatar: {
|
|
9
|
-
name: 'Test User Name',
|
|
10
|
-
icon,
|
|
11
|
-
className: 'custom-class',
|
|
12
|
-
} }));
|
|
13
|
-
ChatUiSelectors.chatMessageTyping.should('be.visible').children().should('have.length', 2);
|
|
14
|
-
ChatUiSelectors.chatMessageTypingDots.should('be.visible');
|
|
15
|
-
}
|
|
16
|
-
it('should render message with bot icon', () => {
|
|
17
|
-
render(ChatParticipantIcon.Bot);
|
|
18
|
-
ChatUiSelectors.chatAvatarBot
|
|
19
|
-
.should('be.visible')
|
|
20
|
-
.should('have.class', 'custom-class')
|
|
21
|
-
.invoke('css', 'background-image')
|
|
22
|
-
.then(bgColor => {
|
|
23
|
-
const isSvg = Boolean(bgColor.indexOf('data:image/svg+xml;base64') >= 0);
|
|
24
|
-
expect(isSvg).to.eq(true);
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
it('should render message with empty icon', () => {
|
|
28
|
-
render(ChatParticipantIcon.Empty);
|
|
29
|
-
ChatUiSelectors.chatAvatarEmpty.should('exist').should('not.be.visible');
|
|
30
|
-
});
|
|
31
|
-
it('should render message with initials', () => {
|
|
32
|
-
render(ChatParticipantIcon.Initials);
|
|
33
|
-
ChatUiSelectors.chatAvatarInitials.should('be.visible').should('contain.text', 'T');
|
|
34
|
-
});
|
|
35
|
-
it('should not cancel the dots animation', () => {
|
|
36
|
-
cy.clock();
|
|
37
|
-
render(ChatParticipantIcon.Initials);
|
|
38
|
-
// Verify the rendered component + check the dots animation doesn't change over the time
|
|
39
|
-
ChatUiSelectors.chatMessageTypingDots.should('be.visible');
|
|
40
|
-
cy.tick(10000);
|
|
41
|
-
ChatUiSelectors.chatMessageTypingDots.should('be.visible');
|
|
42
|
-
cy.tick(20000);
|
|
43
|
-
ChatUiSelectors.chatMessageTypingDots.should('be.visible');
|
|
44
|
-
cy.tick(30000);
|
|
45
|
-
ChatUiSelectors.chatMessageTypingDots.should('be.visible');
|
|
46
|
-
});
|
|
3
|
+
describe('MessageTyping', () => {
|
|
4
|
+
runMessageTypingSharedTests(MessageTyping);
|
|
47
5
|
});
|
|
48
6
|
//# sourceMappingURL=message-typing.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-typing.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-typing.test.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-typing.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-typing.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC3B,2BAA2B,CAAC,aAAa,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC"}
|
|
@@ -1,27 +1,7 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
1
|
import { Text } from '@servicetitan/anvil2';
|
|
3
|
-
import {
|
|
4
|
-
import { mount } from 'cypress/react';
|
|
2
|
+
import { runMessageUserSharedTests } from '@servicetitan/titan-chatbot-ui-cypress';
|
|
5
3
|
import { MessageUser } from '../message-user';
|
|
6
|
-
describe('
|
|
7
|
-
|
|
8
|
-
cy.viewport('macbook-13');
|
|
9
|
-
});
|
|
10
|
-
it('should be properly rendered', () => {
|
|
11
|
-
mount(_jsx(MessageUser, { children: _jsx(Text, { "data-cy": "content", children: "message user content" }) }));
|
|
12
|
-
ChatUiSelectors.chatMessageUser.should('be.visible');
|
|
13
|
-
ChatUiSelectors.chatMessageContent
|
|
14
|
-
.should('be.visible')
|
|
15
|
-
.should('contain.text', 'message user content');
|
|
16
|
-
});
|
|
17
|
-
it('should be properly rendered with long text', () => {
|
|
18
|
-
const longText = 'message user content '.repeat(100).trim();
|
|
19
|
-
mount(_jsx(MessageUser, { children: _jsx(Text, { "data-cy": "content", children: longText }) }));
|
|
20
|
-
ChatUiSelectors.chatMessageContent.should('be.visible').should('contain.text', longText);
|
|
21
|
-
});
|
|
22
|
-
it('should be rendered with footer', () => {
|
|
23
|
-
mount(_jsx(MessageUser, { messageFooter: _jsx(Text, { children: "message user footer" }), children: _jsx(Text, { "data-cy": "content", children: "message user content" }) }));
|
|
24
|
-
ChatUiSelectors.chatMessageFooter.should('be.visible');
|
|
25
|
-
});
|
|
4
|
+
describe('MessageUser', () => {
|
|
5
|
+
runMessageUserSharedTests(MessageUser, Text);
|
|
26
6
|
});
|
|
27
7
|
//# sourceMappingURL=message-user.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-user.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-user.test.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-user.test.js","sourceRoot":"","sources":["../../../../src/components/messages/__tests-cy__/message-user.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-timeout.d.ts","sourceRoot":"","sources":["../../../src/components/messages/message-timeout.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"message-timeout.d.ts","sourceRoot":"","sources":["../../../src/components/messages/message-timeout.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAIxC,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,oBAAoB,CAqCnD,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Divider, Flex, Link, Text } from '@servicetitan/anvil2';
|
|
3
3
|
import { useCallback } from 'react';
|
|
4
4
|
import { MessageSystem } from './message-system';
|
|
5
|
+
import * as Styles from './message-timeout.module.less';
|
|
5
6
|
export const MessageTimeout = ({ onReset, onResume }) => {
|
|
6
7
|
const handleResume = useCallback(() => {
|
|
7
8
|
onResume();
|
|
@@ -9,6 +10,6 @@ export const MessageTimeout = ({ onReset, onResume }) => {
|
|
|
9
10
|
const handleReset = useCallback(() => {
|
|
10
11
|
onReset();
|
|
11
12
|
}, [onReset]);
|
|
12
|
-
return (_jsx(MessageSystem, { "data-cy": "titan-chat-message-timeout", fullWidth: true, children: _jsxs(Flex, { direction: "column", gap: "4", children: [_jsx(Divider, {}), _jsxs(Text, {
|
|
13
|
+
return (_jsx(MessageSystem, { "data-cy": "titan-chat-message-timeout", fullWidth: true, children: _jsxs(Flex, { direction: "column", alignItems: "center", gap: "4", children: [_jsx(Divider, {}), _jsxs(Text, { variant: "body", className: Styles.timeoutMessage, children: ["Your session has timed out.", _jsx("br", {}), "Would you like to resume it or start a new one?", _jsx("br", {}), _jsx(Link, { onClick: handleResume, appearance: "primary", "data-cy": "titan-chat-message-timeout-resume", children: "Continue session" }), ' ', "or", ' ', _jsx(Link, { onClick: handleReset, appearance: "primary", "data-cy": "titan-chat-message-timeout-reset", children: "Start new session" })] })] }) }));
|
|
13
14
|
};
|
|
14
15
|
//# sourceMappingURL=message-timeout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-timeout.js","sourceRoot":"","sources":["../../../src/components/messages/message-timeout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAM,WAAW,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"message-timeout.js","sourceRoot":"","sources":["../../../src/components/messages/message-timeout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAM,WAAW,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAC;AAOxD,MAAM,CAAC,MAAM,cAAc,GAA6B,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC9E,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,QAAQ,EAAE,CAAC;IACf,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,OAAO,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CACH,KAAC,aAAa,eAAS,4BAA4B,EAAC,SAAS,kBACzD,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAC,GAAG,aAChD,KAAC,OAAO,KAAG,EACX,MAAC,IAAI,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAE,MAAM,CAAC,cAAc,4CAEjD,cAAM,qDAEN,cAAM,EACN,KAAC,IAAI,IACD,OAAO,EAAE,YAAY,EACrB,UAAU,EAAC,SAAS,aACZ,mCAAmC,iCAGxC,EAAC,GAAG,QACR,GAAG,EACN,KAAC,IAAI,IACD,OAAO,EAAE,WAAW,EACpB,UAAU,EAAC,SAAS,aACZ,kCAAkC,kCAGvC,IACJ,IACJ,GACK,CACnB,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -2,5 +2,5 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Flex } from '@servicetitan/anvil2';
|
|
3
3
|
import { MessageAgent } from './message-agent';
|
|
4
4
|
import * as Styles from './message-typing.module.less';
|
|
5
|
-
export const MessageTyping = ({ avatar }) => (_jsx(MessageAgent, { avatar: avatar, "data-cy": "titan-chat-message-typing", subtle: true, children: _jsx(Flex, { className:
|
|
5
|
+
export const MessageTyping = ({ avatar }) => (_jsx(MessageAgent, { avatar: avatar, "data-cy": "titan-chat-message-typing", subtle: true, children: _jsx(Flex, { className: Styles.container, alignItems: "center", children: _jsxs("div", { className: Styles.dotsContainer, "data-cy": "titan-chat-message-typing-dots", children: [_jsx("span", { className: Styles.dot }), _jsx("span", { className: Styles.dot }), _jsx("span", { className: Styles.dot })] }) }) }));
|
|
6
6
|
//# sourceMappingURL=message-typing.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-typing.js","sourceRoot":"","sources":["../../../src/components/messages/message-typing.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,MAAM,MAAM,8BAA8B,CAAC;AAMvD,MAAM,CAAC,MAAM,aAAa,GAA4B,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAClE,KAAC,YAAY,IAAC,MAAM,EAAE,MAAM,aAAU,2BAA2B,EAAC,MAAM,kBACpE,KAAC,IAAI,IAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"message-typing.js","sourceRoot":"","sources":["../../../src/components/messages/message-typing.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,MAAM,MAAM,8BAA8B,CAAC;AAMvD,MAAM,CAAC,MAAM,aAAa,GAA4B,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAClE,KAAC,YAAY,IAAC,MAAM,EAAE,MAAM,aAAU,2BAA2B,EAAC,MAAM,kBACpE,KAAC,IAAI,IAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,EAAC,QAAQ,YAClD,eAAK,SAAS,EAAE,MAAM,CAAC,aAAa,aAAU,gCAAgC,aAC1E,eAAM,SAAS,EAAE,MAAM,CAAC,GAAG,GAAI,EAC/B,eAAM,SAAS,EAAE,MAAM,CAAC,GAAG,GAAI,EAC/B,eAAM,SAAS,EAAE,MAAM,CAAC,GAAG,GAAI,IAC7B,GACH,GACI,CAClB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@servicetitan/titan-chat-ui-anvil2",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.1",
|
|
4
4
|
"description": "Chat experience UI package (Anvil2 version)",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"push:local": "yalc push"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@servicetitan/titan-chat-ui-common": "^3.
|
|
20
|
+
"@servicetitan/titan-chat-ui-common": "^3.1.1",
|
|
21
21
|
"lodash": "4.17.21",
|
|
22
22
|
"nanoid": "^5.1.5"
|
|
23
23
|
},
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"react-dom": "^18"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@servicetitan/titan-chatbot-ui-cypress": "^3.
|
|
39
|
+
"@servicetitan/titan-chatbot-ui-cypress": "^3.1.1",
|
|
40
40
|
"cypress": "^14.3.2"
|
|
41
41
|
},
|
|
42
42
|
"keywords": [
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"cli": {
|
|
50
50
|
"webpack": false
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "83c89de5b42d24ce5d7fcd034810bf596a673a08"
|
|
53
53
|
}
|