@gm-pc/react 1.28.0-beta.11 → 1.28.0-beta.13
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gm-pc/react",
|
|
3
|
-
"version": "1.28.0-beta.
|
|
3
|
+
"version": "1.28.0-beta.13",
|
|
4
4
|
"description": "观麦前端基础组件库",
|
|
5
5
|
"author": "liyatang <liyatang@qq.com>",
|
|
6
6
|
"homepage": "https://github.com/gmfe/gm-pc#readme",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@gm-common/hooks": "^2.10.0",
|
|
26
26
|
"@gm-common/tool": "^2.10.0",
|
|
27
|
-
"@gm-pc/locales": "^1.28.0-beta.
|
|
27
|
+
"@gm-pc/locales": "^1.28.0-beta.13",
|
|
28
28
|
"big.js": "^6.0.1",
|
|
29
29
|
"classnames": "^2.2.5",
|
|
30
30
|
"lodash": "^4.17.19",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"react-router-dom": "^5.2.0",
|
|
49
49
|
"react-window": "^1.8.5"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "c8234f419681aca5321788b5e0cf39a36716e30d"
|
|
52
52
|
}
|
|
@@ -402,46 +402,47 @@ class MoreSelectBase<V extends string | number = string> extends Component<
|
|
|
402
402
|
listHeight,
|
|
403
403
|
} = this.props
|
|
404
404
|
|
|
405
|
-
const selectedValues = new Set(selected
|
|
405
|
+
const selectedValues = new Set(selected?.map((v) => v.value))
|
|
406
406
|
|
|
407
407
|
// 分离已勾选和未勾选的数据
|
|
408
|
-
const selectedGroups: MoreSelectGroupDataItem<V>[] = []
|
|
409
408
|
const availableGroups: MoreSelectGroupDataItem<V>[] = []
|
|
409
|
+
// 已选中区域直接使用 selected 构建,不受筛选影响
|
|
410
|
+
const selectedGroups: MoreSelectGroupDataItem<V>[] = []
|
|
410
411
|
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
412
|
+
if (multiple) {
|
|
413
|
+
filterData.forEach((group) => {
|
|
414
|
+
const availableChildren = group.children.filter(
|
|
415
|
+
(item) => !selectedValues.has(item.value)
|
|
416
|
+
)
|
|
417
|
+
|
|
418
|
+
if (availableChildren.length > 0) {
|
|
419
|
+
availableGroups.push({
|
|
420
|
+
...group,
|
|
421
|
+
children: availableChildren,
|
|
422
|
+
})
|
|
423
|
+
}
|
|
424
|
+
})
|
|
418
425
|
|
|
419
|
-
if (
|
|
426
|
+
if (selected.length > 0) {
|
|
420
427
|
selectedGroups.push({
|
|
421
|
-
|
|
422
|
-
children:
|
|
423
|
-
})
|
|
424
|
-
}
|
|
425
|
-
if (availableChildren.length > 0) {
|
|
426
|
-
availableGroups.push({
|
|
427
|
-
...group,
|
|
428
|
-
children: availableChildren,
|
|
428
|
+
label: '',
|
|
429
|
+
children: selected,
|
|
429
430
|
})
|
|
430
431
|
}
|
|
431
|
-
}
|
|
432
|
+
}
|
|
432
433
|
|
|
433
434
|
return (
|
|
434
435
|
<div style={{ height: listHeight, overflow: 'auto' }}>
|
|
435
|
-
{
|
|
436
|
+
{selected.length > 0 && multiple && (
|
|
436
437
|
<>
|
|
437
438
|
<div className='gm-more-select-section-title gm-padding-5 gm-text-desc gm-text-12'>
|
|
438
|
-
|
|
439
|
+
已选中
|
|
439
440
|
</div>
|
|
440
441
|
<ListBase
|
|
441
442
|
selected={selected.map((v) => v.value)}
|
|
442
443
|
data={selectedGroups}
|
|
443
444
|
multiple={multiple}
|
|
444
|
-
isGroupList={
|
|
445
|
+
isGroupList={false}
|
|
445
446
|
className='gm-border-0'
|
|
446
447
|
renderItem={renderListItem}
|
|
447
448
|
onSelect={this._handleSelect}
|
|
@@ -450,24 +451,25 @@ class MoreSelectBase<V extends string | number = string> extends Component<
|
|
|
450
451
|
/>
|
|
451
452
|
</>
|
|
452
453
|
)}
|
|
453
|
-
|
|
454
|
-
|
|
454
|
+
<>
|
|
455
|
+
{multiple && (
|
|
455
456
|
<div className='gm-more-select-section-title gm-padding-5 gm-text-desc gm-text-12'>
|
|
456
|
-
|
|
457
|
+
未选中
|
|
457
458
|
</div>
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
459
|
+
)}
|
|
460
|
+
|
|
461
|
+
<ListBase
|
|
462
|
+
selected={selected.map((v) => v.value)}
|
|
463
|
+
data={multiple ? availableGroups : filterData}
|
|
464
|
+
multiple={multiple}
|
|
465
|
+
isGroupList={isGroupList}
|
|
466
|
+
className='gm-border-0'
|
|
467
|
+
renderItem={renderListItem}
|
|
468
|
+
onSelect={this._handleSelect}
|
|
469
|
+
isScrollTo
|
|
470
|
+
willActiveIndex={willActiveIndex!}
|
|
471
|
+
/>
|
|
472
|
+
</>
|
|
471
473
|
</div>
|
|
472
474
|
)
|
|
473
475
|
}
|