feat: replace checkboxes with Switch component for better UI consistency
- Updated DoctorDetailPage, MySecretariesPage, RecordNumberSettingsPage, RepresentationsPage, ResourcePoolsPage, ResourceTypesPage, SecretariesPage, SecretaryDetailPage, SettingsPage, SkillsPage, SmsWalletPage, and TagsSettingsPage to use the new Switch component instead of native checkboxes. - Enhanced accessibility by ensuring the Switch component uses appropriate roles and labels. - Added tests for the new Switch component to ensure functionality and accessibility compliance. - Updated styles to accommodate the new Switch component design.
This commit is contained in:
@@ -7,6 +7,7 @@ import { digitsOnly, parseUserNumberClamped } from '../lib/utils';
|
||||
import Modal from './ui/Modal';
|
||||
import PriceInput from './ui/PriceInput';
|
||||
import type { ServiceItem } from '../types';
|
||||
import Switch from './ui/Switch';
|
||||
|
||||
interface TenantInsurance {
|
||||
uuid: string;
|
||||
@@ -111,15 +112,12 @@ function ContractCard({ contract, item }: { contract: TenantInsurance; item: Ser
|
||||
پوشش پیشفرض قرارداد: {contract.coverage_percent}٪
|
||||
</div>
|
||||
</div>
|
||||
<label className="switch">
|
||||
<input
|
||||
type="checkbox"
|
||||
checked={draft.covered}
|
||||
disabled={isLoading}
|
||||
onChange={(e) => setDraft((d) => ({ ...d, covered: e.target.checked }))}
|
||||
/>
|
||||
<span className="switch-track"><span className="switch-thumb" /></span>
|
||||
</label>
|
||||
<Switch
|
||||
checked={draft.covered}
|
||||
disabled={isLoading}
|
||||
onChange={(v) => setDraft((d) => ({ ...d, covered: v }))}
|
||||
ariaLabel="پوشش بیمه برای این سرویس"
|
||||
/>
|
||||
</div>
|
||||
|
||||
{/* بدنه — فقط وقتی پوشش فعال است */}
|
||||
|
||||
Reference in New Issue
Block a user