diff --git a/src/components/DocumentationTopic/TopicsLinkCardGrid.vue b/src/components/DocumentationTopic/TopicsLinkCardGrid.vue index b0d5bbf71..733843ffc 100644 --- a/src/components/DocumentationTopic/TopicsLinkCardGrid.vue +++ b/src/components/DocumentationTopic/TopicsLinkCardGrid.vue @@ -81,11 +81,13 @@ export default { usePager, }) => (usePager ? { [TopicSectionsStyle.compactGrid]: { + [BreakpointName.xlarge]: 8, [BreakpointName.large]: 6, [BreakpointName.medium]: 6, [BreakpointName.small]: 1, }, [TopicSectionsStyle.detailedGrid]: { + [BreakpointName.xlarge]: 6, [BreakpointName.large]: 4, [BreakpointName.medium]: 2, [BreakpointName.small]: 1, diff --git a/src/styles/core/_breakpoints.scss b/src/styles/core/_breakpoints.scss index c037937a3..d86234889 100644 --- a/src/styles/core/_breakpoints.scss +++ b/src/styles/core/_breakpoints.scss @@ -21,6 +21,7 @@ $breakpoint-attributes: ( ), large: ( min-width: 1251px, + max-width: 1919px, content-width: 980px, ), medium: ( diff --git a/src/utils/breakpoints.js b/src/utils/breakpoints.js index 737278c92..3a4c4b3cf 100644 --- a/src/utils/breakpoints.js +++ b/src/utils/breakpoints.js @@ -28,6 +28,7 @@ export const BreakpointAttributes = { }, [BreakpointName.large]: { minWidth: 1251, + maxWidth: 1919, contentWidth: 980, }, [BreakpointName.medium]: { diff --git a/tests/unit/components/DocumentationTopic/TopicsLinkCardGrid.spec.js b/tests/unit/components/DocumentationTopic/TopicsLinkCardGrid.spec.js index 6afaaf350..da0bb6aa3 100644 --- a/tests/unit/components/DocumentationTopic/TopicsLinkCardGrid.spec.js +++ b/tests/unit/components/DocumentationTopic/TopicsLinkCardGrid.spec.js @@ -17,7 +17,7 @@ import { TopicSectionsStyle } from '@/constants/TopicSectionsStyle'; const ref = n => ({ identifier: `ref${n}` }); const defaultProps = { - items: [...Array(10).keys()].map(n => ref(n)), + items: [...Array(8).keys()].map(n => ref(n)), }; const createWrapper = ({ propsData, ...others } = {}) => shallowMount(TopicsLinkCardGrid, { @@ -51,22 +51,28 @@ describe('TopicsLinkCardGrid', () => { }, }); - // 10 items => 2 pages at large breakpoint (6 links per page) + // 8 items => 2 pages at large breakpoint (6 links per page) let pager = wrapper.find(Pager); expect(pager.exists()).toBe(true); expect(pager.props('pages').length).toBe(2); - // 10 items => 2 pages at medium breakpoint (6 links per page) + // 8 items => 1 pages at xlarge breakpoint (8 links per page) + wrapper.setData({ breakpoint: BreakpointName.xlarge }); + pager = wrapper.find(Pager); + expect(pager.exists()).toBe(true); + expect(pager.props('pages').length).toBe(1); + + // 8 items => 2 pages at medium breakpoint (6 links per page) wrapper.setData({ breakpoint: BreakpointName.medium }); pager = wrapper.find(Pager); expect(pager.exists()).toBe(true); expect(pager.props('pages').length).toBe(2); - // 10 items => 10 pages at small breakpoint (1 links per page) + // 8 items => 8 pages at small breakpoint (1 links per page) wrapper.setData({ breakpoint: BreakpointName.small }); pager = wrapper.find(Pager); expect(pager.exists()).toBe(true); - expect(pager.props('pages').length).toBe(10); + expect(pager.props('pages').length).toBe(8); }); }); @@ -79,23 +85,23 @@ describe('TopicsLinkCardGrid', () => { }, }); - // 10 items => 3 pages at large breakpoint (4 links per page) + // 8 items => 2 pages at large breakpoint (4 links per page) let pager = wrapper.find(Pager); expect(pager.classes('detailedGrid')).toBe(true); expect(pager.exists()).toBe(true); - expect(pager.props('pages').length).toBe(3); + expect(pager.props('pages').length).toBe(2); - // 10 items => 5 pages at medium breakpoint (2 links per page) + // 8 items => 4 pages at medium breakpoint (2 links per page) wrapper.setData({ breakpoint: BreakpointName.medium }); pager = wrapper.find(Pager); expect(pager.exists()).toBe(true); - expect(pager.props('pages').length).toBe(5); + expect(pager.props('pages').length).toBe(4); - // 10 items => 10 pages at small breakpoint (1 links per page) + // 8 items => 8 pages at small breakpoint (1 links per page) wrapper.setData({ breakpoint: BreakpointName.small }); pager = wrapper.find(Pager); expect(pager.exists()).toBe(true); - expect(pager.props('pages').length).toBe(10); + expect(pager.props('pages').length).toBe(8); }); }); });