Cloudscape 3.0.1390의 네이티브 구성 요소와 React 18.3.1을 사용합니다. Wizard의 기존 구성과 로컬 전용 상태를 유지합니다. · 구현 레퍼런스
02
AWS Cloudscape 디자인 시스템 디자인 참고 자료
Cloudscape 구성 요소 3.0.1390 및 design-tokens 3.0.114, visual-refresh 테마를 사용합니다. 값은 공개된 토큰 JSON에서 가져옵니다. 색상 모드와 콘텐츠 밀도는 별개의 차원입니다. 이 자료는 선별된 구현 참고 자료이며, 전체 토큰 내보내기가 아닙니다.
이 예제는 구성 단계와 검토 단계를 분리합니다. Wizard는 단계 탐색과 작업을 제공하고, 애플리케이션은 현재 인덱스, 필드 값, 유효성 검사 규칙, 최종 확인을 관리합니다. 사용자는 양식을 다시 작성하거나 선택한 용량을 잃지 않고 구성 단계로 돌아갈 수 있습니다. 전체 다단계 워크플로를 범용 Card 하나에 감추는 것보다 적합한 방식입니다.
네이티브 컨테이너로 구성하기
Container, Header, SpaceBetween으로 양식 섹션을 구성합니다. h1은 작업을 소개하고 h2는 설정 그룹의 이름을 지정합니다. 설명 텍스트는 설명 대상인 필드나 단계 옆에 표시합니다. 주변의 최대 너비 1200px와 페이지 여백은 명시적으로 지정한 애플리케이션 CSS 값이며, 내보낸 Cloudscape 레이아웃 토큰이 아닙니다.
AWS Cloudscape 디자인 시스템 시맨틱 토큰 및 시각 모드
값보다 역할을 먼저 선택하세요
이 참고 자료는 레이아웃 배경, 컨테이너 콘텐츠, 본문 텍스트, 인터랙티브 텍스트, 상태 피드백을 구분합니다. 각 값은 단순한 색상 팔레트가 아닙니다. 맞춤 UI를 만들 때 밝은 모드의 16진수 색상값을 상태마다 복사하는 대신 @cloudscape-design/design-tokens에서 이름이 지정된 토큰을 가져오세요. 토큰은 용도를 명시하며, 값은 변경될 수 있습니다.
라이브러리에서 모드 전환하기
미리보기에서는 global-styles의 Mode.Light 또는 Mode.Dark를 사용해 applyMode를 호출합니다. 이렇게 하면 임의의 CSS 색상을 대체하는 대신 구성 요소가 사용하는 모드가 업데이트됩니다. 어두운 검토 화면에서도 레이블, 선택된 용량, 탐색 상태는 그대로 유지됩니다. 원본 JSON에는 밝은 모드와 어두운 모드의 값이 모두 기록되어 있어 차이를 확인할 수 있습니다.
AWS Cloudscape 디자인 시스템 타이포그래피 및 Header 계층
글꼴 역할과 줄 높이 역할을 짝지어 사용하세요
visual-refresh의 본문 m 기준값은 14px 크기와 20px 줄 높이입니다. heading-xl은 24px 크기와 30px 줄 높이, heading-l은 20px 크기와 24px 줄 높이, heading-m은 18px 크기와 22px 줄 높이를 사용합니다. 이러한 역할은 간결한 양식의 계층 구조를 설명하며, 서로 바꿔 쓸 수 있는 마케팅용 대형 텍스트 크기가 아닙니다.
시맨틱 구성 요소 변형을 사용하세요
Header의 h1 변형은 Create a workspace라는 이름을 표시합니다. 컨테이너 헤더에는 h2를 사용하고, Box의 awsui-key-label 변형은 검토 레이블에 일관된 보조 스타일을 적용합니다. 검토 값은 일반 텍스트로 읽기 쉽게 표시합니다. 시각적 강조를 높이기 위해 모든 필드 레이블을 제목으로 바꾸지 마세요.
AWS Cloudscape 디자인 시스템 제어 필드 및 검토 구성
detail 이벤트 계약 이해하기
Input은 새 텍스트를 담은 detail.value가 포함된 이벤트를 발생시킵니다. Select는 문자열이 아니라 옵션 객체인 detail.selectedOption을 발생시킵니다. 전체 예제에서는 해당 객체를 저장하고 검토 화면에 레이블을 표시합니다. 이렇게 하면 selectedOption에 식별자만 전달해 Select가 비어 보이는 흔한 통합 오류를 방지할 수 있습니다.
필드 안내를 해당 필드와 함께 표시하세요
필드 형식 정책은 이 예제 애플리케이션에만 적용됩니다.
용량 옵션은 제품 또는 가격에 관한 주장이 아닙니다.
표시는 네이티브 구성 요소가 처리하고, 구성은 React 상태가 관리합니다.
AWS Cloudscape 디자인 시스템 밀도 및 반응형 레이아웃
조밀 모드를 확대/축소 수준처럼 취급하지 마세요
공개된 간격 조정 값은 밀도에 따라 다릅니다. 예를 들어 space-scaled-m은 편안한 모드에서 16px, 조밀 모드에서 12px이며, space-scaled-l은 각각 20px와 16px입니다. 이러한 차이는 콘텐츠를 바꾸거나 텍스트 크기를 임의로 줄이지 않고 세로 간격을 좁힙니다. 네이티브 구성 요소는 자체 밀도 규칙을 적용합니다.
단계와 검토 레이아웃이 화면에 맞게 조정되도록 하세요
Wizard는 사용 가능한 너비에 따라 탐색 표시 방식을 변경하고, ColumnLayout은 검토 메타데이터를 반응형으로 배치합니다. 애플리케이션 CSS은 600px 미만에서 바깥쪽 여백을 줄입니다. 이 예제는 데스크톱 단계 탐색 너비를 고정하지 않으며, 모바일에서도 로컬 작업인 Next, Previous, Confirm을 계속 표시합니다.
AWS Cloudscape 디자인 시스템 Wizard 유효성 검사 및 확인
탐색을 수락하기 전에 유효성을 검사하세요
onNavigate은 requestedStepIndex을 받습니다. 애플리케이션은 검토 단계로 이동하기 전에 현재 이름을 확인하고, 이름이 유효하지 않으면 단계를 그대로 둡니다. 편집하면 오류가 지워져 다음 제출 시 새로 유효성을 검사할 수 있습니다. 설정으로 돌아가도 이름과 선택한 옵션은 유지됩니다.
유효하지 않은 이름을 제출하고 설정 단계에 머무릅니다.
이름을 수정하고 다른 용량 프로필을 선택합니다.
검토 단계로 이동해 두 값을 모두 확인합니다.
두 값 모두 유지한 채 돌아가려면 설정 편집을 사용합니다.
로컬에서 확인하고 예제를 다시 시작합니다.
구성 예제와 실제 프로비저닝 구분하기
마지막 작업은 로컬 성공 Alert와 구성 요약을 표시합니다. 실제 리소스를 생성하는 것처럼 가장하지 않습니다. 실제 애플리케이션에서는 프로비저닝이 진행되는 동안 제출 작업을 대기 상태로 유지하고, 요청이 접수된 상태와 리소스 생성이 완료된 상태를 구분하며, 구성을 버리지 않고 실패를 복구할 방법을 제공하세요.
AWS Cloudscape 디자인 시스템 양식 접근성
레이블과 탐색 이름 유지하기
Wizard에는 navigationAriaLabel과 번역된 작업 문자열을 전달합니다. 각 Input과 Select는 레이블이 지정된 FormField 안에 배치됩니다. Alert는 네이티브 구성 요소의 시맨틱을 사용해 유효성 오류나 성공 결과를 전달합니다. 화면에 표시되는 제약 조건은 필드 레이블을 보완하며 대체하지 않습니다.
전체 작업의 키보드 탐색 경로 검토하기
키보드로 이름 필드에 포커스를 맞추고 용량 선택기를 연 다음, 다음 단계로 이동하고 돌아와 수정한 뒤 확인합니다. 네이티브 포커스 동작을 활용할 수 있지만, 단계 유효성 검사 규칙과 확인의 의미는 여전히 애플리케이션에서 정의해야 합니다. 구성 요소 라이브러리만으로는 누락된 비즈니스 규칙을 검증할 수 없습니다.
AWS Cloudscape 디자인 시스템 설치 및 사용자 지정 경계
관련 패키지를 함께 설치하기
구현에서는 개별 패키지 하위 경로를 통해 구성 요소를 가져오고, global-styles를 한 번 로드합니다. design-tokens는 사용자 지정 스타일의 참고 자료입니다. 제공된 React 엔트리 파일과 간결한 CSS 파일을 사용하면 Vite React 애플리케이션에서 대화형 예제를 재현할 수 있습니다. 호환되는 Cloudscape 패키지 버전을 함께 유지하세요.
표시된 네이티브 예제는 React 18.3.1과 함께 번들로 제공되었습니다. 설치할 Vite 릴리스에서 지원하는 Node.js 버전을 사용하고, 애플리케이션 잠금 파일에 지정된 버전을 유지하세요.
sh
npm create vite@latest cloudscape-workspace -- --template react
cd cloudscape-workspace
npm install
npm install [email protected][email protected] @cloudscape-design/[email protected] @cloudscape-design/[email protected] @cloudscape-design/global-styles
# Replace src/main.jsx and add src/cloudscape.css from the full examples.
npm run dev
프로젝트를 위한 프롬프트
에이전트 프롬프트
Cloudscape를 사용해 리소스 구성 워크플로를 구축하세요. 제공된 네이티브 Wizard/Container/FormField/Input/Select 코드와 visual-refresh 토큰 역할을 사용하세요. 단계 간 필드 값을 유지하고, 탐색 전에 유효성을 검사하며, 완전한 검토 화면을 표시하세요. 예시 용량 프로필은 실제 클라우드 제품이 아니라 내 도메인 모델을 위한 자리표시자로 취급하세요. API가 제공된 후에만 프로비저닝을 통합하고, 대기·실패·확정 결과를 구분하세요.
05
AWS Cloudscape 디자인 시스템 출처 및 범위
OpenDesign 가이드와 네이티브 Cloudscape 구성 요소 3.0.1390을 사용한 원본 로컬 작업 공간 구성 예제입니다. 용량 프로필은 가상의 애플리케이션 데이터입니다. 클라우드 계정, 프로비저닝 API 또는 실제 서비스 요금은 포함되지 않습니다.