Skip to content

Commit 86d9305

Browse files
authored
fix(compass-assistant): fix selecting text across messages (#7318)
fix selecting text across messages
1 parent 79ffc8a commit 86d9305

File tree

1 file changed

+29
-30
lines changed

1 file changed

+29
-30
lines changed

packages/compass-assistant/src/assistant-chat.tsx

Lines changed: 29 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ const messageFeedFixesStyles = css({
112112
gap: spacing[400],
113113

114114
// TODO(COMPASS-9751): We're setting the font weight to 600 here as the LG styling for the Assistant header isn't set
115-
'& > div > div:has(svg[aria-label="Sparkle Icon"]) p': {
115+
'& > div > div > div:has(svg[aria-label="Sparkle Icon"]) p': {
116116
fontWeight: 600,
117117
},
118118
});
@@ -174,20 +174,17 @@ export const AssistantChat: React.FunctionComponent<AssistantChatProps> = ({
174174
}
175175
}, [hasNonGenuineConnections, chat, setMessages]);
176176

177-
// Transform AI SDK messages to LeafyGreen chat format and reverse the order of the messages
178-
// for displaying it correctly with flex-direction: column-reverse.
179-
const lgMessages = messages
180-
.map((message) => ({
181-
id: message.id,
182-
messageBody:
183-
message.metadata?.displayText ||
184-
message.parts
185-
?.filter((part) => part.type === 'text')
186-
.map((part) => part.text)
187-
.join(''),
188-
isSender: message.role === 'user',
189-
}))
190-
.reverse();
177+
// Transform AI SDK messages to LeafyGreen chat format
178+
const lgMessages = messages.map((message) => ({
179+
id: message.id,
180+
messageBody:
181+
message.metadata?.displayText ||
182+
message.parts
183+
?.filter((part) => part.type === 'text')
184+
.map((part) => part.text)
185+
.join(''),
186+
isSender: message.role === 'user',
187+
}));
191188

192189
const handleMessageSend = useCallback(
193190
(messageBody: string) => {
@@ -249,21 +246,23 @@ export const AssistantChat: React.FunctionComponent<AssistantChatProps> = ({
249246
data-testid="assistant-chat-messages"
250247
className={messageFeedFixesStyles}
251248
>
252-
{lgMessages.map((messageFields) => (
253-
<Message
254-
key={messageFields.id}
255-
sourceType="markdown"
256-
{...messageFields}
257-
data-testid={`assistant-message-${messageFields.id}`}
258-
>
259-
{messageFields.isSender === false && (
260-
<MessageActions
261-
onRatingChange={handleFeedback}
262-
onSubmitFeedback={handleFeedback}
263-
/>
264-
)}
265-
</Message>
266-
))}
249+
<div>
250+
{lgMessages.map((messageFields) => (
251+
<Message
252+
key={messageFields.id}
253+
sourceType="markdown"
254+
{...messageFields}
255+
data-testid={`assistant-message-${messageFields.id}`}
256+
>
257+
{messageFields.isSender === false && (
258+
<MessageActions
259+
onRatingChange={handleFeedback}
260+
onSubmitFeedback={handleFeedback}
261+
/>
262+
)}
263+
</Message>
264+
))}
265+
</div>
267266
<DisclaimerText className={disclaimerTextStyles}>
268267
This feature is powered by generative AI. See our{' '}
269268
<Link

0 commit comments

Comments
 (0)