Skip to content

Commit bc37699

Browse files
committed
* pager: refactor by eslint.
1 parent b88e7d8 commit bc37699

12 files changed

Lines changed: 43 additions & 43 deletions

lib/pager/dev.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ onPageUpdate(() => {
2626
},
2727
});
2828
console.log('> pager', pager);
29-
let pagerCount = 1;
29+
let pagerCount = 1;
3030
const pagerMaxCount = new Pager('#pagerMaxCount', {
3131
items: [
3232
{type: 'link', page: 'prev', icon: 'icon-angle-left', hint: '上一页'},
@@ -48,7 +48,7 @@ onPageUpdate(() => {
4848
}
4949
const fElement = info.event.target.closest('.pager');
5050
const btns = fElement.querySelectorAll('.pager-nav');
51-
btns.forEach(element => {
51+
btns.forEach((element) => {
5252
element.classList.remove('active');
5353
});
5454
info.event.target.classList.toggle('active');
@@ -70,7 +70,7 @@ onPageUpdate(() => {
7070
}
7171
const fElement = info.event.target.closest('.pager');
7272
const btns = fElement.querySelectorAll('.pager-nav');
73-
btns.forEach(element => {
73+
btns.forEach((element) => {
7474
element.classList.remove('active');
7575
});
7676
info.event.target.classList.toggle('active');
@@ -92,6 +92,4 @@ onPageUpdate(() => {
9292
},
9393
});
9494
console.log('goto', pagerGoto);
95-
96-
9795
});
Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {HElement} from '@zui/core';
1+
import {ComponentChildren, HElement} from '@zui/core';
22
import {formatString} from '@zui/helpers';
33
import {updatePagerInfo} from '../helpers/update-pager-info';
44
import {PagerInfo, PagerInfoProps} from '../types';
@@ -11,11 +11,13 @@ export function PagerInfoItem({
1111
pagerInfo,
1212
children,
1313
...props
14-
}: PagerInfoProps & {pagerInfo: PagerInfo}) {
14+
}: PagerInfoProps & {pagerInfo: PagerInfo; children: ComponentChildren; key: string}) {
1515
const info = updatePagerInfo(pagerInfo, page);
1616
text = typeof text === 'function' ? text(info) : formatString(text, info);
17-
return (<HElement {...props}>
18-
{children}
19-
{text}
20-
</HElement>);
17+
return (
18+
<HElement {...props}>
19+
{children}
20+
{text}
21+
</HElement>
22+
);
2123
}

lib/pager/src/component/pager-link.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ export function PagerLink({
1212
pagerInfo,
1313
linkCreator,
1414
...btnProps
15-
}: PagerLinkProps & {pagerInfo: PagerInfo, linkCreator: PageLinkCreator}) {
15+
}: PagerLinkProps & {pagerInfo: PagerInfo; linkCreator: PageLinkCreator}) {
1616
const info = updatePagerInfo(pagerInfo, page);
1717
if (btnProps.text === undefined && !btnProps.icon && format) {
1818
btnProps.text = typeof format === 'function' ? format(info) : formatString(format, info);
1919
}
2020
if (btnProps.url === undefined && linkCreator) {
21-
btnProps.url = typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info);
21+
btnProps.url = typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info);
2222
}
2323
if (btnProps.disabled === undefined) {
2424
btnProps.disabled = page !== undefined && info.page === pagerInfo.page;

lib/pager/src/component/pager-nav.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export function PagerNav({
1111
pagerInfo,
1212
linkCreator,
1313
...btnProps
14-
}: PagerNavProps & {pagerInfo: PagerInfo, linkCreator: PageLinkCreator}) {
14+
}: PagerNavProps & {pagerInfo: PagerInfo; linkCreator: PageLinkCreator}) {
1515
if (!pagerInfo.pageTotal) {
1616
return;
1717
}
@@ -26,32 +26,32 @@ export function PagerNav({
2626

2727
const createItem = (current: number, total: number) => {
2828
const elements: ComponentChildren[] = [];
29-
for (let i = current; i <= total; i++ ) {
29+
for (let i = current; i <= total; i++) {
3030
newBtnProps.text = i;
3131
delete newBtnProps.icon;
3232
newBtnProps.disabled = false;
3333
const info = updatePagerInfo(pagerInfo, i);
3434
if (linkCreator) {
35-
newBtnProps.url = typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info);
35+
newBtnProps.url = typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info);
3636
}
3737
elements.push(<Button type={type} {...newBtnProps} />);
3838
}
3939
return elements;
4040
};
4141

4242
let resultElements: ComponentChildren[] = [];
43-
resultElements = [...createItem(1, 1)];
43+
resultElements = [...createItem(1, 1)];
4444
if (pagerInfo.pageTotal <= 1) {
4545
return resultElements;
4646
}
4747
if (pagerInfo.pageTotal <= count) {
48-
resultElements = [...resultElements, ...createItem(2, pagerInfo.pageTotal)];
48+
resultElements = [...resultElements, ...createItem(2, pagerInfo.pageTotal)];
4949
} else if (pagerInfo.page < (count - 2)) {
50-
resultElements = [...resultElements, ...createItem(2, count - 2), createEllipsis(), ...createItem(pagerInfo.pageTotal, pagerInfo.pageTotal)];
50+
resultElements = [...resultElements, ...createItem(2, count - 2), createEllipsis(), ...createItem(pagerInfo.pageTotal, pagerInfo.pageTotal)];
5151
} else if (pagerInfo.page > (pagerInfo.pageTotal - count + 3)) {
5252
resultElements = [...resultElements, createEllipsis(), ...createItem((pagerInfo.pageTotal - count + 3), pagerInfo.pageTotal)];
5353
} else {
54-
resultElements = [...resultElements, createEllipsis(), ...createItem(pagerInfo.page - Math.ceil((count - 4) / 2), pagerInfo.page + Math.floor((count - 4) / 2)), createEllipsis(), ...createItem(pagerInfo.pageTotal, pagerInfo.pageTotal)];
54+
resultElements = [...resultElements, createEllipsis(), ...createItem(pagerInfo.page - Math.ceil((count - 4) / 2), pagerInfo.page + Math.floor((count - 4) / 2)), createEllipsis(), ...createItem(pagerInfo.pageTotal, pagerInfo.pageTotal)];
5555
}
5656
return resultElements;
5757
}

lib/pager/src/component/pager-size-menu.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ export function PagerSizeMenu({
1313
menu,
1414
itemProps,
1515
...dropdownProps
16-
}: PagerSizeMenuProps & {pagerInfo: PagerInfo, linkCreator: PageLinkCreator}) {
17-
dropdown.items = items.map(recPerPage => {
16+
}: PagerSizeMenuProps & {pagerInfo: PagerInfo; linkCreator: PageLinkCreator}) {
17+
dropdown.items = items.map((recPerPage) => {
1818
const info = {...pagerInfo, recPerPage};
1919
return {
2020
...itemProps,
2121
key: recPerPage,
2222
text: `${recPerPage}`,
2323
active: recPerPage === pagerInfo.recPerPage,
24-
url: linkCreator ? (typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info)) : undefined,
24+
url: linkCreator ? (typeof linkCreator === 'function' ? linkCreator(info) : formatString(linkCreator, info)) : undefined,
2525
'z-change-page-size': recPerPage,
2626
} as unknown as Item;
2727
}) as Item[];

lib/pager/src/component/pager.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ export class Pager<T extends PagerOptions = PagerOptions> extends Toolbar<T> {
6969
}
7070
};
7171

72-
protected _handleClickSizeMenu = (info: {event: Event, item: Item}) => {
72+
protected _handleClickSizeMenu = (info: {event: Event; item: Item}) => {
7373
const {item} = info;
7474
const recPerPage = item['z-change-page-size'];
7575
if (typeof recPerPage === 'number' && !item.disabled) {
@@ -121,7 +121,7 @@ export class Pager<T extends PagerOptions = PagerOptions> extends Toolbar<T> {
121121
if (type === 'size-menu') {
122122
propsMap.menu = {
123123
onClickItem: this._handleClickSizeMenu,
124-
...(propsMap.menu as {}),
124+
...(propsMap.menu as object),
125125
};
126126
}
127127
if (type === 'link') {

lib/pager/src/helpers/update-pager-info.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ export function updatePagerInfo(info: PagerInfo, page?: PageName): PagerInfo {
1111
} else if (page === 'prev') {
1212
page = info.page - 1;
1313
} else if (page === 'next') {
14-
page = info.page + 1;
14+
page = info.page + 1;
1515
} else if (page === 'current') {
16-
page = info.page;
17-
} else {
16+
page = info.page;
17+
} else {
1818
page = Number.parseInt(page, 10);
1919
}
2020
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import type {Item} from '@zui/list';
1+
import type {Item} from '@zui/common-list';
22
import type {PageName} from './page-name';
33
import type {PagerInfo} from './pager-info';
44

55
export interface PagerInfoProps extends Item {
6-
type: 'info',
7-
page?: PageName,
6+
type: 'info';
7+
page?: PageName;
88
text?: string | ((info: PagerInfo) => string);
99
}
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import type {Item} from '@zui/list';
1+
import type {Item} from '@zui/common-list';
22
import type {ButtonProps} from '@zui/button';
33
import type {PageName} from './page-name';
44
import type {PagerInfo} from './pager-info';
55

6-
export interface PagerLinkProps extends Item, Omit<ButtonProps, 'type'> {
7-
type: 'link',
8-
page?: PageName,
6+
export interface PagerLinkProps extends Omit<Item, 'key'>, Omit<ButtonProps, 'type'> {
7+
type: 'link';
8+
page?: PageName;
99
format?: string | ((info: PagerInfo) => string);
1010
}

lib/pager/src/types/pager-nav-props.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import type {Item} from '@zui/list';
1+
import type {Item} from '@zui/common-list';
22
import type {ButtonProps} from '@zui/button';
33
import type {PagerInfo} from './pager-info';
44

5-
export interface PagerNavProps extends Item, Omit<ButtonProps, 'type'> {
5+
export interface PagerNavProps extends Omit<Item, 'key'>, Omit<ButtonProps, 'type'> {
66
type: 'nav';
77
count?: number;
88
format?: string | ((info: PagerInfo) => string);

0 commit comments

Comments
 (0)