fix: use HM Label instead of bare <label> for switch fields
ai-generation-guard.mjs flagged REUSE-004 on 5 native <label> wrappers around Switch controls in Toolbar/OptionsPanel; swapped to @hm-design/ui's Label per AGENTS.md field-label rule. Remaining guard findings (hidden file input, dynamic panel geometry, per-entity CAD layer color) are documented exceptions with no matching HM component. Refs #1
This commit is contained in:
1 parent
b114581c07
commit
c7a782f19c
2 files changed
+11
-11
No files matched your search
@@ -107,13 +107,13 @@ export function OptionsPanel({
|
||||
<div className="space-y-5">
|
||||
<section className="space-y-3">
|
||||
<h4 className="text-xs font-semibold uppercase tracking-wide text-muted-foreground">선가중치</h4>
|
||||
<label className="flex items-center justify-between text-sm">
|
||||
<Label className="w-full justify-between text-sm">
|
||||
표시 사용
|
||||
<Switch
|
||||
checked={options.lineweightOn ?? false}
|
||||
onCheckedChange={(on) => onSetLineweightOn(on)}
|
||||
/>
|
||||
</label>
|
||||
</Label>
|
||||
<SliderNumberRow
|
||||
label="표시 배율 (px/mm)"
|
||||
value={lwScale}
|
||||
@@ -128,10 +128,10 @@ export function OptionsPanel({
|
||||
|
||||
<section className="space-y-3 border-t pt-4">
|
||||
<h4 className="text-xs font-semibold uppercase tracking-wide text-muted-foreground">표시</h4>
|
||||
<label className="flex items-center justify-between text-sm">
|
||||
<Label className="w-full justify-between text-sm">
|
||||
그리드
|
||||
<Switch checked={options.grid} onCheckedChange={onSetGrid} />
|
||||
</label>
|
||||
</Label>
|
||||
<SliderNumberRow
|
||||
label="줌 속도"
|
||||
value={options.zoomSpeed}
|
||||
@@ -144,10 +144,10 @@ export function OptionsPanel({
|
||||
|
||||
<section className="space-y-3 border-t pt-4">
|
||||
<h4 className="text-xs font-semibold uppercase tracking-wide text-muted-foreground">2.5D</h4>
|
||||
<label className="flex items-center justify-between text-sm">
|
||||
<Label className="w-full justify-between text-sm">
|
||||
2.5D 보기
|
||||
<Switch checked={is25D} onCheckedChange={onSet25D} />
|
||||
</label>
|
||||
</Label>
|
||||
<div className={is25D ? '' : 'pointer-events-none opacity-50'}>
|
||||
<SliderNumberRow
|
||||
label="Z 높이 배율"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { useRef } from 'react';
|
||||
import { Button, Switch, Tabs, TabsList, TabsTrigger, Badge, Toggle } from '@hm-design/ui';
|
||||
import { Button, Label, Switch, Tabs, TabsList, TabsTrigger, Badge, Toggle } from '@hm-design/ui';
|
||||
import { FolderOpen, Scan, Layers, SlidersHorizontal, Info as InfoIcon } from 'lucide-react';
|
||||
import type { CadSpace } from '../viewer2d/cadSpaces';
|
||||
import { LicenseNotice } from './LicenseNotice';
|
||||
@@ -91,15 +91,15 @@ export function Toolbar({
|
||||
<Scan /> Fit
|
||||
</Button>
|
||||
|
||||
<label className="flex items-center gap-1.5 text-xs text-muted-foreground">
|
||||
<Label className="gap-1.5 text-xs text-muted-foreground">
|
||||
<Switch checked={is25D} onCheckedChange={onToggle25D} />
|
||||
2.5D
|
||||
</label>
|
||||
</Label>
|
||||
|
||||
<label className="flex items-center gap-1.5 text-xs text-muted-foreground">
|
||||
<Label className="gap-1.5 text-xs text-muted-foreground">
|
||||
<Switch checked={canvasDark} onCheckedChange={onToggleTheme} />
|
||||
캔버스 테마
|
||||
</label>
|
||||
</Label>
|
||||
|
||||
<div className="ml-auto flex items-center gap-1">
|
||||
<Toggle pressed={layersOpen} onPressedChange={onToggleLayers} size="sm" aria-label="레이어 패널" title="Layers">
|
||||
|
||||
Reference in new issue
Block a user