Skip to content

Commit 1684502

Browse files
committed
Use createXXXMiddleware
1 parent adc627a commit 1684502

13 files changed

Lines changed: 219 additions & 174 deletions

File tree

__tests__/html/fluentTheme/withCustomDecorator.html

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
React,
2929
ReactDOM: { render },
3030
WebChat: {
31-
decorator: { DecoratorComposer },
31+
decorator: { createActivityBorderMiddleware, DecoratorComposer },
3232
FluentThemeProvider,
3333
ReactWebChat
3434
}
@@ -43,12 +43,12 @@
4343
}
4444

4545
const decoratorMiddleware = [
46-
init =>
47-
init === 'activity border' &&
48-
(next => request => (request.livestreamingState === 'completing' ? Flair : next(request))),
49-
init =>
50-
init === 'activity border' &&
51-
(next => request => (request.livestreamingState === 'preparing' ? Loader : next(request)))
46+
createActivityBorderMiddleware(
47+
next => request => (request.livestreamingState === 'completing' ? Flair : next(request))
48+
),
49+
createActivityBorderMiddleware(
50+
next => request => (request.livestreamingState === 'preparing' ? Loader : next(request))
51+
)
5252
];
5353

5454
const { directLine, store } = testHelpers.createDirectLineEmulator();

__tests__/html2/grouping/customGrouping.html

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,10 @@
3232

3333
const {
3434
React: { createElement },
35-
WebChat: { renderWebChat }
35+
WebChat: {
36+
decorator: { createActivityGroupingMiddleware },
37+
renderWebChat
38+
}
3639
} = window; // Imports in UMD fashion.
3740

3841
const clock = lolex.createClock();
@@ -62,22 +65,20 @@
6265
: undefined;
6366

6467
const decoratorMiddleware = [
65-
init =>
66-
init === 'activity grouping' &&
67-
(next => request => {
68-
const DownstreamComponent = next(request);
69-
70-
if (request.groupingName) {
71-
return ({ activities, children }) =>
72-
createElement(
73-
'div',
74-
{ className: `grouping grouping--${request.groupingName}` },
75-
createElement(DownstreamComponent, { activities }, children)
76-
);
77-
}
68+
createActivityGroupingMiddleware(next => request => {
69+
const DownstreamComponent = next(request);
70+
71+
if (request.groupingName) {
72+
return ({ activities, children }) =>
73+
createElement(
74+
'div',
75+
{ className: `grouping grouping--${request.groupingName}` },
76+
createElement(DownstreamComponent, { activities }, children)
77+
);
78+
}
7879

79-
return DownstreamComponent;
80-
})
80+
return DownstreamComponent;
81+
})
8182
];
8283

8384
renderWebChat(

__tests__/html2/grouping/disableAll.html

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,31 @@
1616
run(async function () {
1717
const {
1818
React: { createElement },
19-
WebChat: { renderWebChat }
19+
WebChat: {
20+
decorator: { createActivityGroupingMiddleware },
21+
renderWebChat
22+
}
2023
} = window; // Imports in UMD fashion.
2124

2225
const clock = lolex.createClock();
2326

2427
const { directLine, store } = testHelpers.createDirectLineEmulator({ ponyfill: clock });
2528

2629
const decoratorMiddleware = [
27-
init =>
28-
init === 'activity grouping' &&
29-
(next => request => {
30-
const DownstreamComponent = next(request);
31-
32-
if (request.groupingName) {
33-
return ({ activities, children }) =>
34-
createElement(
35-
'div',
36-
{ className: `grouping grouping--${request.groupingName}` },
37-
createElement(DownstreamComponent, { activities }, children)
38-
);
39-
}
40-
41-
return DownstreamComponent;
42-
})
30+
createActivityGroupingMiddleware(next => request => {
31+
const DownstreamComponent = next(request);
32+
33+
if (request.groupingName) {
34+
return ({ activities, children }) =>
35+
createElement(
36+
'div',
37+
{ className: `grouping grouping--${request.groupingName}` },
38+
createElement(DownstreamComponent, { activities }, children)
39+
);
40+
}
41+
42+
return DownstreamComponent;
43+
})
4344
];
4445

4546
renderWebChat(

__tests__/html2/grouping/disableSender.html

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,31 @@
1616
run(async function () {
1717
const {
1818
React: { createElement },
19-
WebChat: { renderWebChat }
19+
WebChat: {
20+
decorator: { createActivityGroupingMiddleware },
21+
renderWebChat
22+
}
2023
} = window; // Imports in UMD fashion.
2124

2225
const clock = lolex.createClock();
2326

2427
const { directLine, store } = testHelpers.createDirectLineEmulator({ ponyfill: clock });
2528

2629
const decoratorMiddleware = [
27-
init =>
28-
init === 'activity grouping' &&
29-
(next => request => {
30-
const DownstreamComponent = next(request);
31-
32-
if (request.groupingName) {
33-
return ({ activities, children }) =>
34-
createElement(
35-
'div',
36-
{ className: `grouping grouping--${request.groupingName}` },
37-
createElement(DownstreamComponent, { activities }, children)
38-
);
39-
}
40-
41-
return DownstreamComponent;
42-
})
30+
createActivityGroupingMiddleware(next => request => {
31+
const DownstreamComponent = next(request);
32+
33+
if (request.groupingName) {
34+
return ({ activities, children }) =>
35+
createElement(
36+
'div',
37+
{ className: `grouping grouping--${request.groupingName}` },
38+
createElement(DownstreamComponent, { activities }, children)
39+
);
40+
}
41+
42+
return DownstreamComponent;
43+
})
4344
];
4445

4546
renderWebChat(

__tests__/html2/grouping/disableStatus.html

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,31 @@
1616
run(async function () {
1717
const {
1818
React: { createElement },
19-
WebChat: { renderWebChat }
19+
WebChat: {
20+
decorator: { createActivityGroupingMiddleware },
21+
renderWebChat
22+
}
2023
} = window; // Imports in UMD fashion.
2124

2225
const clock = lolex.createClock();
2326

2427
const { directLine, store } = testHelpers.createDirectLineEmulator({ ponyfill: clock });
2528

2629
const decoratorMiddleware = [
27-
init =>
28-
init === 'activity grouping' &&
29-
(next => request => {
30-
const DownstreamComponent = next(request);
31-
32-
if (request.groupingName) {
33-
return ({ activities, children }) =>
34-
createElement(
35-
'div',
36-
{ className: `grouping grouping--${request.groupingName}` },
37-
createElement(DownstreamComponent, { activities }, children)
38-
);
39-
}
40-
41-
return DownstreamComponent;
42-
})
30+
createActivityGroupingMiddleware(next => request => {
31+
const DownstreamComponent = next(request);
32+
33+
if (request.groupingName) {
34+
return ({ activities, children }) =>
35+
createElement(
36+
'div',
37+
{ className: `grouping grouping--${request.groupingName}` },
38+
createElement(DownstreamComponent, { activities }, children)
39+
);
40+
}
41+
42+
return DownstreamComponent;
43+
})
4344
];
4445

4546
renderWebChat(

__tests__/html2/grouping/disableStatus.perSender.html

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,31 @@
1616
run(async function () {
1717
const {
1818
React: { createElement },
19-
WebChat: { renderWebChat }
19+
WebChat: {
20+
decorator: { createActivityGroupingMiddleware },
21+
renderWebChat
22+
}
2023
} = window; // Imports in UMD fashion.
2124

2225
const clock = lolex.createClock();
2326

2427
const { directLine, store } = testHelpers.createDirectLineEmulator({ ponyfill: clock });
2528

2629
const decoratorMiddleware = [
27-
init =>
28-
init === 'activity grouping' &&
29-
(next => request => {
30-
const DownstreamComponent = next(request);
31-
32-
if (request.groupingName) {
33-
return ({ activities, children }) =>
34-
createElement(
35-
'div',
36-
{ className: `grouping grouping--${request.groupingName}` },
37-
createElement(DownstreamComponent, { activities }, children)
38-
);
39-
}
40-
41-
return DownstreamComponent;
42-
})
30+
createActivityGroupingMiddleware(next => request => {
31+
const DownstreamComponent = next(request);
32+
33+
if (request.groupingName) {
34+
return ({ activities, children }) =>
35+
createElement(
36+
'div',
37+
{ className: `grouping grouping--${request.groupingName}` },
38+
createElement(DownstreamComponent, { activities }, children)
39+
);
40+
}
41+
42+
return DownstreamComponent;
43+
})
4344
];
4445

4546
renderWebChat(

__tests__/html2/grouping/extraneousGroup.html

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@
2828
run(async function () {
2929
const {
3030
React: { createElement },
31-
WebChat: { renderWebChat }
31+
WebChat: {
32+
decorator: { createActivityGroupingMiddleware },
33+
renderWebChat
34+
}
3235
} = window; // Imports in UMD fashion.
3336

3437
const clock = lolex.createClock();
@@ -50,22 +53,20 @@
5053
});
5154

5255
const decoratorMiddleware = [
53-
init =>
54-
init === 'activity grouping' &&
55-
(next => request => {
56-
const DownstreamComponent = next(request);
57-
58-
if (request.groupingName) {
59-
return ({ activities, children }) =>
60-
createElement(
61-
'div',
62-
{ className: `grouping grouping--${request.groupingName}` },
63-
createElement(DownstreamComponent, { activities }, children)
64-
);
65-
}
66-
67-
return DownstreamComponent;
68-
})
56+
createActivityGroupingMiddleware(next => request => {
57+
const DownstreamComponent = next(request);
58+
59+
if (request.groupingName) {
60+
return ({ activities, children }) =>
61+
createElement(
62+
'div',
63+
{ className: `grouping grouping--${request.groupingName}` },
64+
createElement(DownstreamComponent, { activities }, children)
65+
);
66+
}
67+
68+
return DownstreamComponent;
69+
})
6970
];
7071

7172
renderWebChat(

__tests__/html2/grouping/fluentTheme.html

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@
3535
const {
3636
React: { createElement },
3737
ReactDOM: { render },
38-
WebChat: { FluentThemeProvider, ReactWebChat }
38+
WebChat: {
39+
decorator: { createActivityGroupingMiddleware },
40+
FluentThemeProvider,
41+
ReactWebChat
42+
}
3943
} = window; // Imports in UMD fashion.
4044

4145
const clock = lolex.createClock();
@@ -59,22 +63,20 @@
5963
: undefined;
6064

6165
const decoratorMiddleware = [
62-
init =>
63-
init === 'activity grouping' &&
64-
(next => request => {
65-
const DownstreamComponent = next(request);
66-
67-
if (request.groupingName) {
68-
return ({ activities, children }) =>
69-
createElement(
70-
'div',
71-
{ className: `grouping grouping--${request.groupingName}` },
72-
DownstreamComponent ? createElement(DownstreamComponent, { activities }, children) : children
73-
);
74-
}
75-
76-
return DownstreamComponent;
77-
})
66+
createActivityGroupingMiddleware(next => request => {
67+
const DownstreamComponent = next(request);
68+
69+
if (request.groupingName) {
70+
return ({ activities, children }) =>
71+
createElement(
72+
'div',
73+
{ className: `grouping grouping--${request.groupingName}` },
74+
DownstreamComponent ? createElement(DownstreamComponent, { activities }, children) : children
75+
);
76+
}
77+
78+
return DownstreamComponent;
79+
})
7880
];
7981

8082
render(

0 commit comments

Comments
 (0)