--- {"id":"number-input","title":"숫자 입력","category":"컴포넌트","order":33,"summary":"수량·자원량처럼 수치 연산 가능한 값의 사용·상태·접근성 계약.","status":"문서 기준 · UI 미검증","references":["components/number-input/usage"]} --- # 숫자 입력 ## 목적과 사용 수량·자원량처럼 수치 연산 가능한 값에 사용합니다. 전화번호·식별자·우편번호처럼 숫자 모양의 문자열은 텍스트 입력입니다. ## 구성과 변형 라벨, 수치, 단위, 범위·증감 컨트롤. 변형의 외형은 각 제품의 기존 [토큰](tokens.md)을 사용합니다. Carbon의 크기·색·모서리·아이콘을 가져오지 않습니다. ## 동작 규칙 - NUM-01 MUST: 최소·최대·단위·step을 실제 서버 제한과 맞춥니다. - NUM-02 MUST: 빈 값과 0을 구분하고 사용자가 입력하지 않은 유료 수량을 조용히 추가하지 않습니다. - NUM-03 SHOULD: 큰 폭의 입력을 작은 증감 버튼 클릭만으로 강제하지 않습니다. - NUM-04 MUST: 소수점·음수·범위 밖 입력의 거절 이유를 안내합니다. ## 접근성 증가·감소 버튼의 이름과 값·범위를 알립니다. 휠 오조작으로 금액이 바뀌지 않게 검토합니다. 공통 [접근성 기준](accessibility.md)도 함께 적용합니다. ## 콘텐츠 예시 좋음: ‘메모리 (GiB)’ / 피함: 단위 없는 8. ## 우리 구현과 연결 VPS 자원 상품과 Blesta 수량의 정책은 별도 서버 소유입니다. 공통 UI 문서로 자원 한도를 변경하지 않습니다. 제품별 소유 경로는 [WICKEDVPS](product-vps.md), [Panel](product-panel.md), [Blesta](product-blesta.md)와 [소스 근거](source-evidence.md)를 확인합니다. 코드 존재와 모든 사용처의 준수는 다르며, 별도 표시가 없는 제품별 준수 상태는 미검증입니다. ## 상태와 검증 최솟값·최댓값·비숫자·소수·붙여넣기·빈 값·서버 거절을 확인합니다. 일반·hover·focus·실행 중·실패·성공·disabled·read-only 중 해당하는 상태를 기록합니다. 해당하지 않는 상태를 임의로 만들지 말고 이유를 남깁니다. [검증 체크리스트](testing.md)에 증거를 연결합니다.