Skip to content

Commit ef5ca49

Browse files
committed
sort
1 parent db9a50e commit ef5ca49

13 files changed

Lines changed: 38 additions & 39 deletions

File tree

packages/api/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,7 @@ export default function createDefaultGroupActivitiesMiddleware({
100100
messages,
101101
([last], [current]) =>
102102
typeof last?.isPartOf?.['@id'] === 'string' && last.isPartOf['@id'] === current?.isPartOf?.['@id']
103-
).map(bin =>
104-
// Position-based sorting is now handled at the reducer level
105-
bin.map(([, activity]) => activity)
106-
)
103+
).map(bin => bin.map(([, activity]) => activity))
107104
};
108105
}
109106
: undefined

packages/component/src/Activity/StackedLayout.module.css

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,12 @@
104104

105105
.stacked-layout__message-status {
106106
color: var(--webchat__color--subtle);
107-
margin-inline-start: var(--webchat__padding--regular);
108-
margin-block: calc(var(--webchat__padding--regular) + 1px);
109-
place-self: start;
110-
font-size: 1.1em;
111107
display: grid;
108+
font-size: 1.1em;
112109
grid-template-areas: "message-status-icon";
110+
margin-block: calc(var(--webchat__padding--regular) + 1px);
111+
margin-inline-start: var(--webchat__padding--regular);
112+
place-self: start;
113113

114114
> * {
115115
grid-area: message-status-icon;

packages/component/src/Activity/StackedLayout.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,18 @@ import ScreenReaderText from '../ScreenReaderText';
1313
import isZeroOrPositive from '../Utils/isZeroOrPositive';
1414
import textFormatToContentType from '../Utils/textFormatToContentType';
1515
import useUniqueId from '../hooks/internal/useUniqueId';
16+
import { ComponentIcon } from '../Icon';
1617
import AttachmentRow from './AttachmentRow';
1718
import Bubble from './Bubble';
1819
import CodeBlockContent from './CodeBlockContent';
1920
import CollapsibleContent from './CollapsibleContent';
2021
import StackedLayoutMain from './StackedLayoutMain';
2122
import StackedLayoutRoot from './StackedLayoutRoot';
2223
import StackedLayoutStatus from './StackedLayoutStatus';
24+
import MessageStatusLoader from './private/MessageStatusLoader';
2325
import { useGetLogicalGroupKey } from '../providers/ActivityLogicalGrouping';
2426

2527
import styles from './StackedLayout.module.css';
26-
import { ComponentIcon } from '../Icon';
27-
import MessageStatusLoader from './private/MessageStatusLoader';
2828

2929
const { useAvatarForBot, useAvatarForUser, useLocalizer, useGetKeyByActivity, useStyleOptions } = hooks;
3030

packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.module.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,6 @@
4646
}
4747

4848
:global(.webchat) .collapsible-grouping__content--open {
49-
visibility: unset;
5049
height: auto;
50+
visibility: unset;
5151
}

packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,26 @@ import {
1717
type InferOutput
1818
} from 'valibot';
1919

20-
import usePartGroupingLogicalGroup from './usePartGroupingLogicalGroup';
21-
import CollapsibleGrouping from '../CollapsibleGrouping';
22-
import useActivityElementMapRef from '../../../../../providers/ChatHistoryDOM/useActivityElementRef';
2320
import StackedLayoutMain from '../../../../../Activity/StackedLayoutMain';
2421
import StackedLayoutRoot from '../../../../../Activity/StackedLayoutRoot';
2522
import StackedLayoutStatus from '../../../../../Activity/StackedLayoutStatus';
23+
import useActivityElementMapRef from '../../../../../providers/ChatHistoryDOM/useActivityElementRef';
2624
import useActiveDescendantId from '../../../../../providers/TranscriptFocus/useActiveDescendantId';
2725
import useGetGroupDescendantIdByActivityKey from '../../../../../providers/TranscriptFocus/useGetGroupDescendantIdByActivityKey';
26+
import useFocusByGroupKey from '../../../../../providers/TranscriptFocus/useFocusByGroupKey';
27+
import FocusTrap from '../../../../../Transcript/FocusTrap';
28+
import useRenderActivityProps from '../../../../../Transcript/hooks/useRenderActivityProps';
2829
import {
30+
TranscriptActivityList,
2931
TranscriptFocusContent,
3032
TranscriptFocusContentOverlay,
3133
TranscriptFocusContentActiveDescendant,
3234
TranscriptFocusIndicator
3335
} from '../../../../../Transcript/TranscriptFocus';
34-
import useFocusByGroupKey from '../../../../../providers/TranscriptFocus/useFocusByGroupKey';
35-
import FocusTrap from '../../../../../Transcript/FocusTrap';
36-
import useRenderActivityProps from '../../../../../Transcript/hooks/useRenderActivityProps';
3736
import isZeroOrPositive from '../../../../../Utils/isZeroOrPositive';
3837
import { android } from '../../../../../Utils/detectBrowser';
39-
import TranscriptActivityList from '../../../../../Transcript/TranscriptFocus/TranscriptActivityList';
38+
import CollapsibleGrouping from '../CollapsibleGrouping';
39+
import usePartGroupingLogicalGroup from './usePartGroupingLogicalGroup';
4040

4141
import styles from './PartGroupingActivity.module.css';
4242

packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/usePartGroupingLogicalGroup.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
import random from 'math-random';
12
import { useCallback, useEffect, useMemo } from 'react';
23
import { useRefFrom } from 'use-ref-from';
3-
import random from 'math-random';
4+
import { useStateWithRef } from 'use-state-with-ref';
45

56
import { useAddLogicalGrouping, useRemoveLogicalGrouping } from '../../../../../providers/ActivityLogicalGrouping';
6-
import { useStateWithRef } from 'use-state-with-ref';
77

88
type UsePartGroupingLogicalGroupOptions = {
99
activityKeys: readonly string[];

packages/component/src/Transcript/TranscriptFocus/TranscriptFocus.module.css

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/* Focus area container */
22

33
:global(.webchat) .transcript-focus-area {
4-
outline: 0;
54
display: grid;
65
grid-template-areas: 'content';
6+
outline: 0;
77

88
--webchat__transcript--spacing: 10px;
99

@@ -65,20 +65,20 @@
6565
To account for the differences, we use absolute/relative positioning as the rest of our code assumes so.
6666
*/
6767
.transcript-focus-area__content-overlay {
68-
position: relative;
68+
min-height: 0;
69+
grid-area: content;
6970
/* The bounding box is expanded to both top and bottom to scroll focus indicator into view. */
7071
/* We should ignore clicks to make sure this expansion don't register click as focus. */
7172
/* Otherwise, when clicking on the very bottom edge of the activity, it will focus on next activity instead. */
7273
pointer-events: none;
74+
position: relative;
7375
width: 100%;
74-
grid-area: content;
75-
min-height: 0;
7676
}
7777

7878
/* When the content is focused as active descendant, scrollIntoView() will scroll this invisible div into view. */
7979
.transcript-focus-area__content-active-descendant {
80-
position: absolute;
8180
inset: calc(var(--webchat__transcript--spacing) / -1) 0 calc(var(--webchat__transcript--spacing) / -1) 0;
81+
position: absolute;
8282
}
8383

8484
.transcript-focus-area__terminator {

packages/component/src/Transcript/TranscriptFocus/TranscriptFocusArea.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@ import { useStyles } from '@msinternal/botframework-webchat-styles/react';
22
import cx from 'classnames';
33
import React, { forwardRef, type HTMLAttributes } from 'react';
44

5-
import styles from './TranscriptFocus.module.css';
65
import TranscriptFocusIndicator from './TranscriptFocusIndicator';
76

7+
import styles from './TranscriptFocus.module.css';
8+
89
type TranscriptFocusAreaProps = HTMLAttributes<HTMLDivElement>;
910

1011
const TranscriptFocusArea = forwardRef<HTMLDivElement, TranscriptFocusAreaProps>(

packages/component/src/Transcript/TranscriptFocus/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
export { default as TranscriptActivityList, type TranscriptActivityListProps } from './TranscriptActivityList';
12
export { default as TranscriptFocusArea, type TranscriptFocusAreaProps } from './TranscriptFocusArea';
23
export { default as TranscriptFocusContent, type TranscriptFocusContentProps } from './TranscriptFocusContent';
34
export {

packages/component/src/providers/TranscriptFocus/private/Context.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ type TranscriptFocusContextType = {
66
focusByActivityKey: (activityKey: boolean | string | undefined, withFocus: boolean | undefined) => void;
77
focusByGroupKey: (groupKey: string | undefined, withFocus: boolean | undefined) => void;
88
focusedActivityKeyState: readonly [string];
9-
focusedGroupKeyState: readonly [string];
109
focusedExplicitlyState: readonly [boolean];
10+
focusedGroupKeyState: readonly [string];
1111
focusRelativeActivity: (delta: number) => void;
1212
getDescendantIdByActivityKey: (activityKey?: string) => string | undefined;
1313
getGroupDescendantIdByActivityKey: (activityKey?: string) => string | undefined;

0 commit comments

Comments
 (0)