浏览代码

Feat: Alter TransferList props #3221 (#6226)

### What problem does this PR solve?

Feat: Alter TransferList props #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
tags/v0.18.0
balibabu 7 个月前
父节点
当前提交
6e5cbd0196
没有帐户链接到提交者的电子邮件
共有 2 个文件被更改,包括 16 次插入5 次删除
  1. 15
    5
      web/src/components/ui/transfer-list.tsx
  2. 1
    0
      web/src/interfaces/database/user-setting.ts

+ 15
- 5
web/src/components/ui/transfer-list.tsx 查看文件

@@ -16,10 +16,19 @@ export type TransferListItemType = {
selected?: boolean;
};

type TransferListProps = {
export enum TransferListMoveDirection {
Left = 'left',
Right = 'right',
}

export type TransferListProps = {
items: TransferListItemType[];
targetKeys?: string[];
onChange?(targetKeys: string[], direction: 'left' | 'right'): void;
onChange?(
targetKeys: string[],
direction: TransferListMoveDirection,
moveKeys: string[],
): void;
};

export const TransferList = memo(function ({
@@ -39,7 +48,8 @@ export const TransferList = memo(function ({
setLeftList(leftList.filter((item) => !item.selected));
onChange?.(
rightItems.map((x) => x.key),
'right',
TransferListMoveDirection.Right,
selectedItems.map((x) => x.key),
);
}, [leftList, onChange, rightList]);

@@ -50,7 +60,8 @@ export const TransferList = memo(function ({
setRightList(rightItems);
onChange?.(
rightItems.map((x) => x.key),
'left',
TransferListMoveDirection.Left,
selectedItems.map((x) => x.key),
);
}, [onChange, rightList]);

@@ -76,7 +87,6 @@ export const TransferList = memo(function ({
const leftItems = items.filter(
(x) => !targetKeys?.some((y) => y === x.key),
);
console.log('🚀 ~ useEffect ~ leftItems:', leftItems);
setLeftList(leftItems);
const rightItems = items.filter((x) =>
targetKeys?.some((y) => y === x.key),

+ 1
- 0
web/src/interfaces/database/user-setting.ts 查看文件

@@ -69,6 +69,7 @@ interface Es {
}

export interface ITenantUser {
id: string;
avatar: string;
delta_seconds: number;
email: string;

正在加载...
取消
保存