@patternfly/chatbot 2.2.0-prerelease.7 → 2.2.0-prerelease.8
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/dist/cjs/Message/ListMessage/OrderedListMessage.d.ts +1 -1
- package/dist/cjs/Message/ListMessage/OrderedListMessage.js +2 -2
- package/dist/cjs/Message/Message.js +1 -1
- package/dist/cjs/Message/Message.test.js +21 -0
- package/dist/esm/Message/ListMessage/OrderedListMessage.d.ts +1 -1
- package/dist/esm/Message/ListMessage/OrderedListMessage.js +2 -2
- package/dist/esm/Message/Message.js +1 -1
- package/dist/esm/Message/Message.test.js +21 -0
- package/package.json +1 -1
- package/src/Message/ListMessage/OrderedListMessage.tsx +2 -2
- package/src/Message/Message.test.tsx +22 -0
- package/src/Message/Message.tsx +1 -1
@@ -1,4 +1,4 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { ExtraProps } from 'react-markdown';
|
3
|
-
declare const OrderedListMessage: ({ children }: JSX.IntrinsicElements["ol"] & ExtraProps) => React.JSX.Element;
|
3
|
+
declare const OrderedListMessage: ({ children, start }: JSX.IntrinsicElements["ol"] & ExtraProps) => React.JSX.Element;
|
4
4
|
export default OrderedListMessage;
|
@@ -8,6 +8,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
9
9
|
const react_1 = __importDefault(require("react"));
|
10
10
|
const react_core_1 = require("@patternfly/react-core");
|
11
|
-
const OrderedListMessage = ({ children }) => (react_1.default.createElement("div", { className: "pf-chatbot__message-ordered-list" },
|
12
|
-
react_1.default.createElement(react_core_1.List, { component: react_core_1.ListComponent.ol, type: react_core_1.OrderType.number }, children)));
|
11
|
+
const OrderedListMessage = ({ children, start }) => (react_1.default.createElement("div", { className: "pf-chatbot__message-ordered-list" },
|
12
|
+
react_1.default.createElement(react_core_1.List, { component: react_core_1.ListComponent.ol, type: react_core_1.OrderType.number, start: start }, children)));
|
13
13
|
exports.default = OrderedListMessage;
|
@@ -56,7 +56,7 @@ const Message = (_a) => {
|
|
56
56
|
p: TextMessage_1.default,
|
57
57
|
code: ({ children }) => react_1.default.createElement(CodeBlockMessage_1.default, Object.assign({}, codeBlockProps), children),
|
58
58
|
ul: UnorderedListMessage_1.default,
|
59
|
-
ol: OrderedListMessage_1.default,
|
59
|
+
ol: (props) => react_1.default.createElement(OrderedListMessage_1.default, Object.assign({}, props)),
|
60
60
|
li: ListItemMessage_1.default
|
61
61
|
}, remarkPlugins: [remark_gfm_1.default] }, content)),
|
62
62
|
!isLoading && sources && react_1.default.createElement(SourcesCard_1.default, Object.assign({}, sources)),
|
@@ -60,6 +60,21 @@ spec:
|
|
60
60
|
url: https://raw.githubusercontent.com/Azure-Samples/helm-charts/master/docs
|
61
61
|
`;
|
62
62
|
const INLINE_CODE = `Here is an inline code - \`() => void\``;
|
63
|
+
const ORDERED_LIST_WITH_CODE = `
|
64
|
+
1. Item 1
|
65
|
+
2. Item 2
|
66
|
+
|
67
|
+
\`\`\`yaml
|
68
|
+
- name: Hello World Playbook
|
69
|
+
hosts: localhost
|
70
|
+
tasks:
|
71
|
+
- name: Print Hello World
|
72
|
+
ansible.builtin.debug:
|
73
|
+
msg: "Hello, World!"
|
74
|
+
\`\`\`
|
75
|
+
|
76
|
+
3. Item 3
|
77
|
+
`;
|
63
78
|
const checkListItemsRendered = () => {
|
64
79
|
const items = ['Item 1', 'Item 2', 'Item 3'];
|
65
80
|
expect(react_2.screen.getAllByRole('listitem')).toHaveLength(3);
|
@@ -280,6 +295,12 @@ describe('Message', () => {
|
|
280
295
|
expect(react_2.screen.getByText('Here is an ordered list:')).toBeTruthy();
|
281
296
|
checkListItemsRendered();
|
282
297
|
});
|
298
|
+
it('should render ordered lists correctly if there is interstitial content', () => {
|
299
|
+
(0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST_WITH_CODE }));
|
300
|
+
checkListItemsRendered();
|
301
|
+
const list = react_2.screen.getAllByRole('list')[1];
|
302
|
+
expect(list).toHaveAttribute('start', '3');
|
303
|
+
});
|
283
304
|
it('should render inline code', () => {
|
284
305
|
(0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: INLINE_CODE }));
|
285
306
|
expect(react_2.screen.getByText(/() => void/i)).toBeTruthy();
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { ExtraProps } from 'react-markdown';
|
3
|
-
declare const OrderedListMessage: ({ children }: JSX.IntrinsicElements["ol"] & ExtraProps) => React.JSX.Element;
|
3
|
+
declare const OrderedListMessage: ({ children, start }: JSX.IntrinsicElements["ol"] & ExtraProps) => React.JSX.Element;
|
4
4
|
export default OrderedListMessage;
|
@@ -3,6 +3,6 @@
|
|
3
3
|
// ============================================================================
|
4
4
|
import React from 'react';
|
5
5
|
import { List, ListComponent, OrderType } from '@patternfly/react-core';
|
6
|
-
const OrderedListMessage = ({ children }) => (React.createElement("div", { className: "pf-chatbot__message-ordered-list" },
|
7
|
-
React.createElement(List, { component: ListComponent.ol, type: OrderType.number }, children)));
|
6
|
+
const OrderedListMessage = ({ children, start }) => (React.createElement("div", { className: "pf-chatbot__message-ordered-list" },
|
7
|
+
React.createElement(List, { component: ListComponent.ol, type: OrderType.number, start: start }, children)));
|
8
8
|
export default OrderedListMessage;
|
@@ -50,7 +50,7 @@ export const Message = (_a) => {
|
|
50
50
|
p: TextMessage,
|
51
51
|
code: ({ children }) => React.createElement(CodeBlockMessage, Object.assign({}, codeBlockProps), children),
|
52
52
|
ul: UnorderedListMessage,
|
53
|
-
ol: OrderedListMessage,
|
53
|
+
ol: (props) => React.createElement(OrderedListMessage, Object.assign({}, props)),
|
54
54
|
li: ListItemMessage
|
55
55
|
}, remarkPlugins: [remarkGfm] }, content)),
|
56
56
|
!isLoading && sources && React.createElement(SourcesCard, Object.assign({}, sources)),
|
@@ -55,6 +55,21 @@ spec:
|
|
55
55
|
url: https://raw.githubusercontent.com/Azure-Samples/helm-charts/master/docs
|
56
56
|
`;
|
57
57
|
const INLINE_CODE = `Here is an inline code - \`() => void\``;
|
58
|
+
const ORDERED_LIST_WITH_CODE = `
|
59
|
+
1. Item 1
|
60
|
+
2. Item 2
|
61
|
+
|
62
|
+
\`\`\`yaml
|
63
|
+
- name: Hello World Playbook
|
64
|
+
hosts: localhost
|
65
|
+
tasks:
|
66
|
+
- name: Print Hello World
|
67
|
+
ansible.builtin.debug:
|
68
|
+
msg: "Hello, World!"
|
69
|
+
\`\`\`
|
70
|
+
|
71
|
+
3. Item 3
|
72
|
+
`;
|
58
73
|
const checkListItemsRendered = () => {
|
59
74
|
const items = ['Item 1', 'Item 2', 'Item 3'];
|
60
75
|
expect(screen.getAllByRole('listitem')).toHaveLength(3);
|
@@ -275,6 +290,12 @@ describe('Message', () => {
|
|
275
290
|
expect(screen.getByText('Here is an ordered list:')).toBeTruthy();
|
276
291
|
checkListItemsRendered();
|
277
292
|
});
|
293
|
+
it('should render ordered lists correctly if there is interstitial content', () => {
|
294
|
+
render(React.createElement(Message, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST_WITH_CODE }));
|
295
|
+
checkListItemsRendered();
|
296
|
+
const list = screen.getAllByRole('list')[1];
|
297
|
+
expect(list).toHaveAttribute('start', '3');
|
298
|
+
});
|
278
299
|
it('should render inline code', () => {
|
279
300
|
render(React.createElement(Message, { avatar: "./img", role: "user", name: "User", content: INLINE_CODE }));
|
280
301
|
expect(screen.getByText(/() => void/i)).toBeTruthy();
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@patternfly/chatbot",
|
3
|
-
"version": "2.2.0-prerelease.
|
3
|
+
"version": "2.2.0-prerelease.8",
|
4
4
|
"description": "This library provides React components based on PatternFly 6 that can be used to build chatbots.",
|
5
5
|
"main": "dist/cjs/index.js",
|
6
6
|
"module": "dist/esm/index.js",
|
@@ -6,9 +6,9 @@ import React from 'react';
|
|
6
6
|
import { ExtraProps } from 'react-markdown';
|
7
7
|
import { List, ListComponent, OrderType } from '@patternfly/react-core';
|
8
8
|
|
9
|
-
const OrderedListMessage = ({ children }: JSX.IntrinsicElements['ol'] & ExtraProps) => (
|
9
|
+
const OrderedListMessage = ({ children, start }: JSX.IntrinsicElements['ol'] & ExtraProps) => (
|
10
10
|
<div className="pf-chatbot__message-ordered-list">
|
11
|
-
<List component={ListComponent.ol} type={OrderType.number}>
|
11
|
+
<List component={ListComponent.ol} type={OrderType.number} start={start}>
|
12
12
|
{children}
|
13
13
|
</List>
|
14
14
|
</div>
|
@@ -53,6 +53,22 @@ spec:
|
|
53
53
|
|
54
54
|
const INLINE_CODE = `Here is an inline code - \`() => void\``;
|
55
55
|
|
56
|
+
const ORDERED_LIST_WITH_CODE = `
|
57
|
+
1. Item 1
|
58
|
+
2. Item 2
|
59
|
+
|
60
|
+
\`\`\`yaml
|
61
|
+
- name: Hello World Playbook
|
62
|
+
hosts: localhost
|
63
|
+
tasks:
|
64
|
+
- name: Print Hello World
|
65
|
+
ansible.builtin.debug:
|
66
|
+
msg: "Hello, World!"
|
67
|
+
\`\`\`
|
68
|
+
|
69
|
+
3. Item 3
|
70
|
+
`;
|
71
|
+
|
56
72
|
const checkListItemsRendered = () => {
|
57
73
|
const items = ['Item 1', 'Item 2', 'Item 3'];
|
58
74
|
expect(screen.getAllByRole('listitem')).toHaveLength(3);
|
@@ -344,6 +360,12 @@ describe('Message', () => {
|
|
344
360
|
expect(screen.getByText('Here is an ordered list:')).toBeTruthy();
|
345
361
|
checkListItemsRendered();
|
346
362
|
});
|
363
|
+
it('should render ordered lists correctly if there is interstitial content', () => {
|
364
|
+
render(<Message avatar="./img" role="user" name="User" content={ORDERED_LIST_WITH_CODE} />);
|
365
|
+
checkListItemsRendered();
|
366
|
+
const list = screen.getAllByRole('list')[1];
|
367
|
+
expect(list).toHaveAttribute('start', '3');
|
368
|
+
});
|
347
369
|
it('should render inline code', () => {
|
348
370
|
render(<Message avatar="./img" role="user" name="User" content={INLINE_CODE} />);
|
349
371
|
expect(screen.getByText(/() => void/i)).toBeTruthy();
|
package/src/Message/Message.tsx
CHANGED
@@ -156,7 +156,7 @@ export const Message: React.FunctionComponent<MessageProps> = ({
|
|
156
156
|
p: TextMessage,
|
157
157
|
code: ({ children }) => <CodeBlockMessage {...codeBlockProps}>{children}</CodeBlockMessage>,
|
158
158
|
ul: UnorderedListMessage,
|
159
|
-
ol: OrderedListMessage
|
159
|
+
ol: (props) => <OrderedListMessage {...props} />,
|
160
160
|
li: ListItemMessage
|
161
161
|
}}
|
162
162
|
remarkPlugins={[remarkGfm]}
|