Anatomy
두 개의 독립된 native action을 같은 맥락에서 보여줍니다.
External Link
정확한 외부 URL로 이동하는 원래의 anchor. 외부 이동 표식을 보조적으로 표시하며 rel=noopener noreferrer를 사용합니다.
Copy Action
Link 옆에 고정 폭을 예약한 Quiet icon button. 눌렀을 때 탐색하지 않으며 실제 anchor.href를 복사합니다.
Feedback
Idle → Copied / Failed → Idle, 기본 3초. Live region이 결과를 알리고 실패를 성공으로 표시하지 않습니다.
States
Fine pointer Hover·Focus, coarse-pointer always visible, Disabled·Error are independently owned.
버튼은 항상 Tab 순서에 있고 키보드로 포커스하면 보입니다. 터치에서는 Hover에 의존하지 않습니다. 복사 아이콘은 성공할 때 Check, 실패할 때 Error로 교체되며 시각 상태만으로 결과를 전달하지 않습니다.
Usage
정식 URL을 열거나 복사해야 하는 외부 참조, 포트폴리오·근거 링크에서 사용합니다.
R2A Copyable Value는 값 복사가 주 동작이고, R2C는 URL 이동이 주 동작입니다. 버튼을 링크 안에 중첩하지 않고, 제품별 라우터나 도메인 데이터는 WBDS가 소유하지 않습니다. 좁은 테이블 셀에서도 Action lane을 먼저 확보합니다.
Accessibility
Link와 Button의 포커스·이름·결과를 분리합니다.
Tab → native Link → native Button, Enter/Space 복사, aria-label과 role=status 피드백, 320px/200% 텍스트 확대, Dark 및 터치 44px Action을 검사합니다. 앱에서는 @wbeen/wbds/copy-actions.js 의 initWbdsLinkCopyActions()를 명시적으로 초기화하거나 동등한 Adapter를 제공해야 합니다.