본문으로 이동
직무발명365

UI Inventory

assets/const.less의 토큰과 실제 관리 화면에서 반복되는 컴포넌트를 한곳에서 확인합니다. 새 화면은 가장 가까운 기존 역할을 먼저 재사용하고, 공통 기준이 바뀌면 실제 코드와 이 문서를 함께 갱신합니다.

color tokens
23
foundation tokens
34
shared components
12

Color palette

코발트는 주 행동과 현재 선택에 사용하고, 상태 색상은 성공·진행·오류의 의미가 있는 경우에만 사용합니다.

Brand

주 행동, 활성 상태와 핵심 강조에 사용하는 코발트 계열입니다.

6 tokens
@primary-color #0E6DCC 주 행동과 활성 상태
@primary-dark #0A57B2 진한 브랜드 텍스트
@primary-hover #0A57B2 주 행동 hover
@primary-active #084A9B 주 행동 active
@primary-light #E8F4FF 선택과 정보 배경
@primary-lighter #F2FAFF 넓은 강조 배경

Text and surface

정보 위계와 화면의 바탕을 만드는 중립 색상입니다.

9 tokens
@text-primary #191F28 제목과 핵심 정보
@text-secondary #4E5968 본문과 설명
@text-tertiary #8B95A1 비핵심 보조 정보
@background-primary #FFFFFF 기본 표면
@background-secondary #F9FAFB 페이지 배경
@background-tertiary #F2F4F6 보조 표면
@background-readonly #F6F7F8 조회 전용 필드
@border-primary #E5E8EB 기본 구분선
@border-secondary #D1D6DB 강한 구분선

Semantic

결과와 주의 상태를 같은 의미로 반복하기 위한 색상입니다.

8 tokens
@success-color #0D9B4E 완료와 정상
@success-bg #E5F5ED 성공 배경
@warning-color #F76707 주의와 진행
@warning-bg #FFF0E5 경고 배경
@error-color #E8344E 오류와 위험 행동
@error-bg #FFF0F0 오류 배경
@info-color #0A57B2 정보 텍스트
@info-bg #E8F4FF 정보 배경

Palette recipes

단일 색보다 배경·텍스트·테두리의 조합을 재사용해 화면마다 다른 톤이 생기지 않도록 합니다.

Primary action 신고서 등록하기

브랜드 코발트 위에는 고대비 흰색 텍스트를 사용합니다.

@primary-color + @background-primary
Information 검토가 필요한 항목입니다

옅은 코발트 면과 진한 코발트 텍스트로 안내를 구분합니다.

@info-bg + @info-color
Destructive action 삭제하면 복구할 수 없습니다

위험 행동에는 영향과 복구 가능 여부를 함께 설명합니다.

@error-bg + @error-color

Foundation tokens

간격, 모서리, 그림자와 컨트롤 크기는 제한된 단계 안에서 선택합니다. 한 화면만을 위한 숫자를 추가하기 전에 같은 역할의 토큰을 확인합니다.

Spacing

4px에서 48px까지의 공통 간격 단계

@spacing-xs
4px
@spacing-sm
8px
@spacing-md
12px
@spacing-lg
16px
@spacing-xl
20px
@spacing-2xl
24px
@spacing-3xl
28px
@spacing-4xl
32px
@spacing-5xl
40px
@spacing-6xl
48px

Radius

배지, 컨트롤과 컨테이너의 모서리 단계

@radius-xs
4px
@radius-sm
6px
@radius-md
8px
@radius-lg
12px
@radius-xl
16px
@radius-2xl
20px
@radius-round
9999px

Elevation

기본은 테두리로 나누고 실제 층이 필요할 때만 사용

@shadow-xs
0 1px 2px rgba(0, 0, 0, 0.04)
@shadow-sm
0 2px 8px rgba(0, 0, 0, 0.08)
@shadow-md
0 4px 16px rgba(14, 109, 204, 0.12)
@shadow-lg
0 8px 24px rgba(0, 0, 0, 0.12)

Controls

입력, 버튼과 카드의 기준 크기

@input-height
52px
@btn-height-sm
40px
@btn-height-md
44px
@btn-height-lg
48px
@card-padding
24px
@card-border-radius
16px

Layout

폼부터 넓은 업무 목록까지 사용하는 최대 너비

@container-sm
600px
@container-md
900px
@container-lg
1200px
@container-xl
1440px

Motion

상태 변화가 인식될 만큼만 짧게 사용하는 전환

@transition-fast
0.1s ease
@transition-base
0.2s ease
@transition-slow
0.3s ease

Typography

Pretendard를 기본으로 사용합니다. 제목은 결론을 먼저 보여주고, 업무 데이터는 14px 이상과 충분한 행간으로 빠르게 읽히게 구성합니다.

Font family

Pretendard "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif
Display @management-font-display 32px / 700 / 1.2

직무발명 절차를 한 흐름으로 관리합니다

Page title @management-font-page-title 28px / 700 / 1.3

발명 신고 관리

Section title @management-font-title 24px / 700 / 1.4

심의 및 권리 결정

Body @management-font-body 16px / 400 / 1.6

발명 신고부터 심의, 보상과 증빙 기록까지 이어서 확인합니다.

Label and data @management-font-label 14px / 600 / 1.5

평가 완료 · 2026.08.21 · 500,000원

Caption @management-font-caption 12px / 600 / 1.4

마지막 업데이트 10:24

Project component inventory

현재 저장소의 공통 컴포넌트와 책임 범위입니다. 같은 업무 패턴이 여러 화면에서 반복될 때 아래 컴포넌트를 우선 사용합니다.

Component Responsibility Use Source
ManagementPageLayout 관리 화면의 제목, 설명과 본문 너비를 구성 관리자·기업 공통 페이지 셸 components/ManagementPageLayout.vue
ClientPageHeader 페이지 제목과 상단 행동 영역을 구성 기업 사용자 화면 헤더 components/ClientPageHeader.vue
ManagementDataTable 데스크톱 표, 모바일 목록과 빈 상태를 통합 업무 목록과 검색 결과 components/ManagementDataTable.vue
ManagementTablePagination 페이지 범위와 행 수 선택을 제공 페이지 단위 목록 이동 components/ManagementTablePagination.vue
ManagementStatusChip 도메인 상태를 공통 tone과 문구로 변환 목록·상세의 상태 표시 components/ManagementStatusChip.vue
ManagementSummaryCards 핵심 집계값의 일관된 위계를 제공 대시보드와 목록 요약 components/ManagementSummaryCards.vue
ManagementLoadError 불러오기 실패와 재시도 행동을 안내 비동기 조회 실패 상태 components/ManagementLoadError.vue
AppModal 확인·입력·위험 작업 모달 구조를 통합 중단이 필요한 확인 흐름 components/AppModal.vue
AuthEmailPassword 로그인, 가입과 계정 복구 폼을 제공 이메일·비밀번호 인증 components/AuthEmailPassword.vue
InventionSignatureInput 마우스와 터치 서명 입력을 처리 동의·확인 서명 components/InventionSignatureInput.vue
InventionAmountInput 금액 입력과 천 단위 표시를 통합 보상금과 비용 입력 components/invention/AmountInput.vue
InventionStatusChip 발명 데이터에서 진행 상태와 상세를 계산 발명 신고·출원 상태 components/invention/StatusChip.vue

Component examples

실제 프로젝트 클래스와 공통 컴포넌트를 사용한 예시입니다. hover, disabled, loading과 같은 상태는 별도 스타일이 아니라 같은 컴포넌트의 상태로 관리합니다.

Actions

Buttons

.management-btn, v-btn
Primary
Secondary
Text
Icon
Disabled
Loading
Inputs

Form controls

v-text-field, v-select, v-textarea
Status

Messages and chips

ManagementStatusChip, v-alert
신고 검토중 출원 완료 반려 대기중
Data display

Summary and table

ManagementSummaryCards, ManagementDataTable
Overlays

Modal

AppModal
업무를 중단하고 확인해야 하는 경우에만 사용합니다.

단순 안내나 페이지 내 편집은 모달 대신 현재 흐름 안에서 처리합니다.

UI states

목록과 비동기 화면은 정상 결과만 만들지 않습니다. 빈 화면은 다음 행동을, 로딩은 기다리는 대상을, 오류는 문제와 복구 행동을 알려야 합니다.

Empty .management-empty-state
등록된 발명 신고가 없습니다

새 신고서를 작성하면 진행 상태를 이곳에서 확인할 수 있습니다.

Loading v-skeleton-loader
Error ManagementLoadError