VanillaFront 26

ColorPicker(색상선택)

Va.ColorPicker — 컬러 스와치 + 팝업 팔레트 입력 필드색상을 선택하는 입력 컴포넌트입니다. 좌측에 현재 색상을 보여주는 스와치, 우측에 hex 코드 텍스트 입력창이 있고, 스와치를 클릭하거나 필드에서 Enter를 누르면 벌집(honeycomb) 모양 컬러맵 팝업이 열립니다.클래스: Va.ColorPicker — va_colorpicker.js:27short name: colorPicker상속: Va.PureField (Input/Search/Number와 형제)파일: va_component.js가 아니라 별도 파일 va_colorpicker.js 에 정의 (직접 import 필요)베이스 CSS: va-colorpicker (+ PureField의 field-wrapper)1. 기본 사용im..

NumberField (숫자필드)

Va.NumberField — 라벨 + 숫자 입력 + 검증까지 감싼 폼 필드Va.Number가 순수 숫자 입력이라면, Va.NumberField는 그 위에 라벨·필수 표시·검증 메시지·설명 텍스트를 얹은 "완성된 숫자 폼 필드" 입니다. Field 계열의 3형제(InputField, SearchField, NumberField)와 같은 아키텍처를 따르되, 내부에 Va.Number를 소유합니다.클래스: Va.NumberField — va_component.js:5494short name: numberField상속: Va.Field (InputField·SearchField와 형제)내부 컴포넌트: Va.Number 인스턴스를 자식으로 소유 (fieldComponent)isContainer: true베이스 C..

Number (숫자)

Va.Number — 숫자 전용 입력 필드를 감싸는 PureField 계열 컴포넌트입니다. min/max/step/소수점 자릿수 제한을 옵션 하나로 지정할 수 있고, 브라우저 표준 스피너(위/아래 화살표) UI가 자동으로 붙습니다.클래스: Va.Number — va_component.js:1257short name: number상속: Va.PureField (Input/Search와 형제)DOM 태그: (하드코딩)isContainer: true베이스 CSS: va-input (Input과 동일 클래스 공유)1. 기본 사용{ tagName: 'number', value: 10, min: 0, max: 100, step: 1, onChange: 'onQtyChange'}렌더..

Search (검색)

Va.Search — 검색 입력 필드Va.Input과 거의 동일한 텍스트 입력이지만, HTML 표준 를 사용해 브라우저가 자동으로 검색 아이콘 · 지우기(×) 버튼 을 그려주는 컴포넌트입니다. 코드 자체는 초미니 클래스 — 사실상 "type을 'search'로 고정한 Input"입니다.클래스: Va.Search — va_component.js:1216short name: search상속: Va.PureField (Input과 형제)DOM 태그: (하드코딩)isContainer: true베이스 CSS: va-input (Input과 동일 클래스 공유)1. 기본 사용{ tagName: 'search', placeholder: '검색어를 입력하세요', onChange: 'onSearch'}..

InputField (입력필드)

Va.InputField — 라벨 + 입력 + 검증까지 한 세트로 묶은 폼 필드Va.Input이 순수 입력 자체라면, Va.InputField는 그 위에 라벨·필수 표시·검증 메시지·설명 텍스트·info 툴팁을 얹은 "완성된 폼 필드" 입니다. 실무에서 폼을 만들 때 훨씬 자주 쓰는 컴포넌트.클래스: Va.InputField — va_component.js:5377short name: inputField상속: Va.Field (Field 계열의 베이스)내부 컴포넌트: Va.Input 인스턴스를 자식으로 소유 (fieldComponent)isContainer: true베이스 CSS: va-field1. 기본 사용{ tagName: 'inputField', label: '이름', value:..

Input (입력)

Va.Input — 텍스트 입력 필드 (PureField 계열)가장 기본이 되는 폼 입력 컴포넌트입니다. HTML 을 감싸되, PureField 베이스가 제공하는 값 관리·마스킹·이벤트·상태 처리를 그대로 활용하고, Input 자신은 숫자 포맷팅(numberComma) 만 추가로 얹은 얇은 확장입니다.클래스: Va.Input — va_component.js:1165short name: input상속: Va.PureField (Component 직속 아님 — Field 계열의 베이스)DOM 태그: (기본 type="text")isContainer: true베이스 CSS: va-input (+ va-purefield)1. 기본 사용{ tagName: 'input', value: '홍길동', ..

ButtonGroup (버튼그룹)

Va.ButtonGroup — 상호 배타적 선택을 자동화하는 버튼 컨테이너여러 버튼을 나란히 담고, 하나가 선택되면 나머지는 자동으로 해제되는 라디오형 컨테이너입니다. Va.Div를 상속해 레이아웃 컨테이너 특성을 그대로 갖고, 그 위에 그룹 배타 선택 로직만 얹은 얇은 확장.클래스: Va.ButtonGroup — va_component.js:17484short name: buttonGroup상속: Va.Div (다른 버튼 계열과 달리 Component 직속 아님)isContainer: true베이스 CSS: va-div (Div의 것을 그대로 씀 — 자체 va-button-group 클래스 없음)1. 기본 사용{ tagName: 'buttonGroup', layout: 'ds-flex fd-..

카테고리 없음 2026.09.09

Link (링크)

Va.Link — 하이퍼링크 컴포넌트브라우저 표준 태그를 감싸는 얇은 래퍼입니다. 프레임워크의 이벤트 시스템·CSS 테마·상태 관리에 편입시킨 것 외에는 표준 HTML 링크와 거의 동일하게 동작합니다.클래스: Va.Link — va_component.js:11446short name: link상속: Va.ComponentDOM 태그: (앵커)isContainer: false베이스 CSS: va-link1. 기본 사용{ tagName: 'link', innerHTML: 'Microsoft', href: 'http://www.microsoft.co.kr', target: '_new'}렌더 결과:Microsofthref 없이 단순 라벨로 쓸 수도 있고(그럴 땐 onClick으로 프로그..

컴포넌트/버튼 2026.09.09

FileButton (파일버튼)

Va.FileButton — 파일 선택 다이얼로그를 여는 버튼클릭하면 OS의 파일 선택 다이얼로그가 열리는 버튼입니다. 을 숨겨두고 버튼을 클릭 트리거로 삼는 흔한 패턴을, 컴포넌트 하나로 캡슐화한 것.클래스: Va.FileButton — va_component.js:12256short name: fileButton상속: Va.ComponentisContainer: false기본 아이콘: ico_attach (첨부 아이콘)베이스 CSS: va-button (일반 Button과 스타일 계보 공유)1. 기본 사용{ tagName: 'fileButton', text: '파일 첨부', onChange: 'onFileSelected' // 파일 선택 완료 시}onFileSelected(comp..

컴포넌트/버튼 2026.09.09

ToggleButton (토글버튼)

Va.ToggleButton — 눌린 상태를 유지하는 토글 버튼일반 Va.Button이 매번 눌렀다 놓아지는 순간 액션이라면, Va.ToggleButton은 눌린/안 눌린 상태(pressed)를 유지하는 이중 상태 버튼입니다. 볼드/이탤릭 같은 툴바 토글, 필터 on/off, 사이드바 표시 토글 같은 곳에 씁니다.클래스: Va.ToggleButton — va_component.js:12733short name: toggleButton상속: Va.Component (Button 상속 아님, 별도 구현)베이스 CSS: va-button (Button과 스타일 계보 공유)1. 기본 사용{ tagName: 'toggleButton', text: 'Bold', icon: 'ico_bold', ..

컴포넌트/버튼 2026.09.09