@bookjane2/bookjane-design-library 9.0.31 → 9.0.32
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/lib/components/BKJPagination/BKJPagination.d.ts.map +1 -1
- package/lib/components/BKJPagination/BKJPagination.js +1 -1
- package/lib/components/BKJPagination/BKJPagination.js.map +1 -1
- package/lib/components/BKJPagination/BKJPagination.styled.d.ts +1 -1
- package/lib/components/BKJPagination/BKJPagination.styled.d.ts.map +1 -1
- package/lib/components/BKJPagination/BKJPagination.styled.js +1 -1
- package/lib/components/BKJPagination/BKJPagination.test.d.ts +2 -0
- package/lib/components/BKJPagination/BKJPagination.test.d.ts.map +1 -0
- package/lib/components/BKJPagination/BKJPagination.test.js +79 -0
- package/lib/components/BKJPagination/BKJPagination.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPagination.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"BKJPagination.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA8CvD,CAAC"}
|
|
@@ -2,6 +2,6 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { BKJIcon } from '../BKJIcon/index.js';
|
|
3
3
|
import { BKJPaginationButton, BKJPaginationDisplay, BKJPaginationText, BKJPaginationWrapper, } from './BKJPagination.styled.js';
|
|
4
4
|
export const BKJPagination = ({ disabled = false, pageCount, currentPage = 1, onFirstPage, onLastPage, onNextPage, onPrevPage, }) => {
|
|
5
|
-
return (_jsxs(BKJPaginationWrapper, { children: [_jsx(BKJPaginationButton, { disabled: disabled || currentPage <= 1, onClick: onFirstPage, children: _jsx(BKJIcon, { iconName: "ChevronDoubleLeft" }) }), _jsx(BKJPaginationButton, { disabled: disabled || currentPage <= 1, onClick: onPrevPage, children: _jsx(BKJIcon, { iconName: "ChevronLeft" }) }), _jsx(BKJPaginationDisplay, { children: _jsxs(BKJPaginationText, { children: [currentPage, " of ", pageCount] }) }), _jsx(BKJPaginationButton, { disabled: disabled || currentPage >= pageCount, onClick: onNextPage, children: _jsx(BKJIcon, { iconName: "ChevronRight" }) }), _jsx(BKJPaginationButton, { disabled: disabled || currentPage >= pageCount, onClick: onLastPage, children: _jsx(BKJIcon, { iconName: "ChevronDoubleRight" }) })] }));
|
|
5
|
+
return (_jsxs(BKJPaginationWrapper, { "aria-label": "Pagination", children: [_jsx(BKJPaginationButton, { "aria-label": "First page", disabled: disabled || currentPage <= 1, onClick: onFirstPage, children: _jsx(BKJIcon, { iconName: "ChevronDoubleLeft" }) }), _jsx(BKJPaginationButton, { "aria-label": "Previous page", disabled: disabled || currentPage <= 1, onClick: onPrevPage, children: _jsx(BKJIcon, { iconName: "ChevronLeft" }) }), _jsx(BKJPaginationDisplay, { role: "status", "aria-live": "polite", children: _jsxs(BKJPaginationText, { children: [currentPage, " of ", pageCount] }) }), _jsx(BKJPaginationButton, { "aria-label": "Next page", disabled: disabled || currentPage >= pageCount, onClick: onNextPage, children: _jsx(BKJIcon, { iconName: "ChevronRight" }) }), _jsx(BKJPaginationButton, { "aria-label": "Last page", disabled: disabled || currentPage >= pageCount, onClick: onLastPage, children: _jsx(BKJIcon, { iconName: "ChevronDoubleRight" }) })] }));
|
|
6
6
|
};
|
|
7
7
|
//# sourceMappingURL=BKJPagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPagination.js","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,MAAM,aAAa,GAAkC,CAAC,EAC3D,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,WAAW,GAAG,CAAC,EACf,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,GACX,EAAE,EAAE;IACH,OAAO,CACL,MAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"BKJPagination.js","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,CAAC,MAAM,aAAa,GAAkC,CAAC,EAC3D,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,WAAW,GAAG,CAAC,EACf,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,GACX,EAAE,EAAE;IACH,OAAO,CACL,MAAC,oBAAoB,kBAAY,YAAY,aAC3C,KAAC,mBAAmB,kBACP,YAAY,EACvB,QAAQ,EAAE,QAAQ,IAAI,WAAW,IAAI,CAAC,EACtC,OAAO,EAAE,WAAW,YAEpB,KAAC,OAAO,IAAC,QAAQ,EAAC,mBAAmB,GAAG,GACpB,EACtB,KAAC,mBAAmB,kBACP,eAAe,EAC1B,QAAQ,EAAE,QAAQ,IAAI,WAAW,IAAI,CAAC,EACtC,OAAO,EAAE,UAAU,YAEnB,KAAC,OAAO,IAAC,QAAQ,EAAC,aAAa,GAAG,GACd,EACtB,KAAC,oBAAoB,IAAC,IAAI,EAAC,QAAQ,eAAW,QAAQ,YACpD,MAAC,iBAAiB,eACf,WAAW,UAAM,SAAS,IACT,GACC,EACvB,KAAC,mBAAmB,kBACP,WAAW,EACtB,QAAQ,EAAE,QAAQ,IAAI,WAAW,IAAI,SAAS,EAC9C,OAAO,EAAE,UAAU,YAEnB,KAAC,OAAO,IAAC,QAAQ,EAAC,cAAc,GAAG,GACf,EACtB,KAAC,mBAAmB,kBACP,WAAW,EACtB,QAAQ,EAAE,QAAQ,IAAI,WAAW,IAAI,SAAS,EAC9C,OAAO,EAAE,UAAU,YAEnB,KAAC,OAAO,IAAC,QAAQ,EAAC,oBAAoB,GAAG,GACrB,IACD,CACxB,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const BKJPaginationWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<
|
|
1
|
+
export declare const BKJPaginationWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, never>> & string;
|
|
2
2
|
export declare const BKJPaginationButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
|
|
3
3
|
disabled?: boolean;
|
|
4
4
|
}>> & string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPagination.styled.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.styled.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"BKJPagination.styled.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.styled.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,uNAOhC,CAAC;AAEF,eAAO,MAAM,mBAAmB;eAA8B,OAAO;YAsBpE,CAAC;AAEF,eAAO,MAAM,oBAAoB,6NAQhC,CAAC;AAEF,eAAO,MAAM,iBAAiB,yOAM7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJPagination.test.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { screen } from '@testing-library/react';
|
|
4
|
+
import userEvent from '@testing-library/user-event';
|
|
5
|
+
import { renderAndCheckA11y, renderWithTheme } from '../../test-utils/index.js';
|
|
6
|
+
import { BKJPagination } from './BKJPagination.js';
|
|
7
|
+
const noop = () => undefined;
|
|
8
|
+
describe('BKJPagination — Accessibility (FR-007)', () => {
|
|
9
|
+
it('a) jest-axe zero violations on default render', async () => {
|
|
10
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJPagination, { pageCount: 10, currentPage: 5, onFirstPage: noop, onPrevPage: noop, onNextPage: noop, onLastPage: noop }));
|
|
11
|
+
expect(axeResults).toHaveNoViolations();
|
|
12
|
+
});
|
|
13
|
+
it('b) outer element is <nav aria-label="Pagination">', () => {
|
|
14
|
+
renderWithTheme(_jsx(BKJPagination, { pageCount: 10, currentPage: 5, onFirstPage: noop, onPrevPage: noop, onNextPage: noop, onLastPage: noop }));
|
|
15
|
+
const nav = screen.getByRole('navigation', { name: 'Pagination' });
|
|
16
|
+
expect(nav.tagName).toBe('NAV');
|
|
17
|
+
});
|
|
18
|
+
it('c) four buttons carry hardcoded English aria-labels', () => {
|
|
19
|
+
renderWithTheme(_jsx(BKJPagination, { pageCount: 10, currentPage: 5, onFirstPage: noop, onPrevPage: noop, onNextPage: noop, onLastPage: noop }));
|
|
20
|
+
const buttons = screen.getAllByRole('button');
|
|
21
|
+
expect(buttons).toHaveLength(4);
|
|
22
|
+
buttons.forEach((b) => expect(b.tagName).toBe('BUTTON'));
|
|
23
|
+
expect(screen.getByRole('button', { name: 'First page' })).toBeInTheDocument();
|
|
24
|
+
expect(screen.getByRole('button', { name: 'Previous page' })).toBeInTheDocument();
|
|
25
|
+
expect(screen.getByRole('button', { name: 'Next page' })).toBeInTheDocument();
|
|
26
|
+
expect(screen.getByRole('button', { name: 'Last page' })).toBeInTheDocument();
|
|
27
|
+
});
|
|
28
|
+
it('d) BKJPaginationDisplay carries role="status" + aria-live="polite"', () => {
|
|
29
|
+
renderWithTheme(_jsx(BKJPagination, { pageCount: 10, currentPage: 5, onFirstPage: noop, onPrevPage: noop, onNextPage: noop, onLastPage: noop }));
|
|
30
|
+
const display = screen.getByRole('status');
|
|
31
|
+
expect(display).toHaveAttribute('aria-live', 'polite');
|
|
32
|
+
});
|
|
33
|
+
it('e) native disabled attribute set on First+Prev at first-page state', () => {
|
|
34
|
+
renderWithTheme(_jsx(BKJPagination, { pageCount: 10, currentPage: 1, onFirstPage: noop, onPrevPage: noop, onNextPage: noop, onLastPage: noop }));
|
|
35
|
+
expect(screen.getByRole('button', { name: 'First page' })).toBeDisabled();
|
|
36
|
+
expect(screen.getByRole('button', { name: 'Previous page' })).toBeDisabled();
|
|
37
|
+
expect(screen.getByRole('button', { name: 'Next page' })).not.toBeDisabled();
|
|
38
|
+
expect(screen.getByRole('button', { name: 'Last page' })).not.toBeDisabled();
|
|
39
|
+
});
|
|
40
|
+
it('f) live-region textContent reads "X of N" and mutates on Next click', async () => {
|
|
41
|
+
const user = userEvent.setup();
|
|
42
|
+
function Stateful() {
|
|
43
|
+
const [page, setPage] = React.useState(5);
|
|
44
|
+
return (_jsx(BKJPagination, { pageCount: 10, currentPage: page, onFirstPage: () => setPage(1), onPrevPage: () => setPage(page - 1), onNextPage: () => setPage(page + 1), onLastPage: () => setPage(10) }));
|
|
45
|
+
}
|
|
46
|
+
renderWithTheme(_jsx(Stateful, {}));
|
|
47
|
+
const display = screen.getByRole('status');
|
|
48
|
+
expect(display).toHaveTextContent('5 of 10');
|
|
49
|
+
await user.click(screen.getByRole('button', { name: 'Next page' }));
|
|
50
|
+
expect(display).toHaveTextContent('6 of 10');
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
describe('BKJPagination — Keyboard operability (FR-008)', () => {
|
|
54
|
+
it('Tab traverses First → Prev → Next → Last; Enter and Space activate', async () => {
|
|
55
|
+
const user = userEvent.setup();
|
|
56
|
+
const onFirstPage = jest.fn();
|
|
57
|
+
const onPrevPage = jest.fn();
|
|
58
|
+
const onNextPage = jest.fn();
|
|
59
|
+
const onLastPage = jest.fn();
|
|
60
|
+
renderWithTheme(_jsx(BKJPagination, { pageCount: 10, currentPage: 5, onFirstPage: onFirstPage, onPrevPage: onPrevPage, onNextPage: onNextPage, onLastPage: onLastPage }));
|
|
61
|
+
await user.tab();
|
|
62
|
+
expect(document.activeElement).toBe(screen.getByRole('button', { name: 'First page' }));
|
|
63
|
+
await user.keyboard('{Enter}');
|
|
64
|
+
expect(onFirstPage).toHaveBeenCalledTimes(1);
|
|
65
|
+
await user.tab();
|
|
66
|
+
expect(document.activeElement).toBe(screen.getByRole('button', { name: 'Previous page' }));
|
|
67
|
+
await user.keyboard(' ');
|
|
68
|
+
expect(onPrevPage).toHaveBeenCalledTimes(1);
|
|
69
|
+
await user.tab();
|
|
70
|
+
expect(document.activeElement).toBe(screen.getByRole('button', { name: 'Next page' }));
|
|
71
|
+
await user.keyboard('{Enter}');
|
|
72
|
+
expect(onNextPage).toHaveBeenCalledTimes(1);
|
|
73
|
+
await user.tab();
|
|
74
|
+
expect(document.activeElement).toBe(screen.getByRole('button', { name: 'Last page' }));
|
|
75
|
+
await user.keyboard(' ');
|
|
76
|
+
expect(onLastPage).toHaveBeenCalledTimes(1);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=BKJPagination.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJPagination.test.js","sourceRoot":"","sources":["../../../src/components/BKJPagination/BKJPagination.test.tsx"],"names":[],"mappings":"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"}
|