feat: unify mobile filter sheets

This commit is contained in:
lingniu
2026-07-19 04:44:21 +08:00
parent d3eb77e2c7
commit 9a87d14d6d
11 changed files with 417 additions and 64 deletions

View File

@@ -7,6 +7,7 @@ import type { AdminUser, CustomerUserInput, CustomerVehicleGrantInput } from '..
import { useMobileLayout } from '../hooks/useMobileLayout';
import { useSideSheetA11y } from '../hooks/useSideSheetA11y';
import { MobileFilterToggle } from '../shared/MobileFilterToggle';
import { MobileFilterSheet, MobileFilterSheetSection } from '../shared/MobileFilterSheet';
import { TablePagination } from '../shared/TablePagination';
import { VehicleCandidateList } from '../shared/VehicleCandidateList';
import { WorkspaceFilterPanel } from '../shared/WorkspaceFilterPanel';
@@ -389,19 +390,19 @@ export default function UsersPage() {
collapsedLabel="修改"
onToggle={mobileFiltersOpen ? closeMobileFilters : openMobileFilters}
/>
<SideSheet
<MobileFilterSheet
className="v2-user-mobile-filter-sidesheet"
visible={mobileFiltersOpen}
placement="bottom"
height="min(62dvh, 480px)"
aria-label="客户账号筛选"
title={<div className="v2-user-mobile-filter-title"><strong></strong><span></span></div>}
ariaLabel="客户账号筛选"
title="筛选客户账号"
description="按账号信息与权限状态缩小客户范围"
onCancel={closeMobileFilters}
footer={<div className="v2-user-mobile-filter-footer"><Button theme="light" onClick={resetMobileFilters}></Button><Button theme="solid" onClick={applyMobileFilters}></Button></div>}
secondaryAction={{ label: '重置条件', onClick: resetMobileFilters }}
primaryAction={{ label: '应用筛选', onClick: applyMobileFilters }}
>
<form className="v2-user-mobile-filter-form" onSubmit={submitMobileFilters}>
<section aria-label="客户账号筛选条件">
<header><strong></strong><span></span></header>
<MobileFilterSheetSection ariaLabel="客户账号筛选条件" title="账号范围" description="筛选仅在应用后更新客户目录,关闭不会丢失当前结果。">
<div>
<label>
<span></span>
@@ -417,9 +418,9 @@ export default function UsersPage() {
/>
</label>
</div>
</section>
</MobileFilterSheetSection>
</form>
</SideSheet>
</MobileFilterSheet>
</div> : <WorkspaceFilterPanel
className="v2-user-filter-panel"
title="账号范围"