Skip to main content
Skip table of contents

Web - AdminList (Added in 2.0)

Added in 2.0

HeaderRow가 포함된 컴포넌트입니다.

Definition

정의

AdminList

최적화 대상

Desktop

기획 배포

검토

디자인 가이드 배포

검토

개발 코드 배포

완료

Principle

List는 ListItem을 담는 요소입니다.

HeaderRow가 있고, BulkActionBar와 ToolBar가 포함될 수 있습니다.

  • HeaderRow엔 column이 10개까지 존재하지만 기획상 10개 모두 사용하는 것을 피해야합니다.
    보통 5~6개 column을 사용하는 것을 권장합니다.
    특히 2단 레이아웃과 같이 보여지는 영역이 좁을 경우 정보의 컬럼의 수를 적게 사용해야 하기 때문에 column을 4개까지 표시하는 것을 권장합니다. (column4HeaderText까지 사용 가능)

HeaderRow

  • selectMode의 multi를 사용하고 ListItem 선택 시, BulkActionBar가 생깁니다.

  • BulkActionBar가 활성화 되면, ToolBar는 숨김처리 됩니다. (대체됩니다.)

구성

  • 안에 들어가는 ListItem은 AdminListItem의 구성 및 스펙을 따라갑니다.

  • ListItem 선택 시 뜨는 BulkActionBar는 BulkActionBar의 스펙을 따라갑니다.

기획서 WF 작성 방법 참고

  • ToolBar와 BulkActionBar는 동시에 존재할 수 없으나(BulkActionBar가 나오면 ToolBar는 숨김처리됨) WF상 기입은 함께 해야 합니다.

  • ToolBar 또는 BulkActionBar 둘 중 하나만 존재해도 흰색 박스를 표현해야 합니다.


Spec

Guide

Size, Property

[간격 가이드]

전체가 다 조합되었을 때 배치 순서 : Header Bar - TextLabel - Bulk Action Bar/ToolBar - Header Row

  • BulkActionBar와 ToolBar는 동시에 존재할 수 없습니다. BulkActionBar가 활성화 되면 ToolBar는 숨겨집니다.

  • columnHeaderRow 영역은 AdminListItem의 columnText 영역과 너비가 같아야 합니다. (서로 같은 열에 놓여져 보이게)

Header Row

구성

내용

height

48px

selection 영역

(column 1)

Web - IconButton 참고

  • fillType : fill

  • baseSize : medium

  • iconSize : 16

  • shapeType : rectangle

    selection 영역(check)

  • Unselected

    • fillType : line

    • iconName : ic_checkbox_off

    • iconColorKey : ui_cpnt_selcontrols_icon_default

  • Selected

    • fillType : fill

    • iconName : ic_checkbox_on

    • iconColorKey : ui_cpnt_selcontrols_icon_primary

  • Indeterminate

    • fillType : fill

    • iconName : ic_checkbox_indeterminate

    • iconColorKey : ui_cpnt_selcontrols_icon_primary

text

Web - TextLabel 참고

  • headerText

    • style : caption1Regular

divider

Web - Divider 참고

  • direction : horizontal

emptyState

  • 아직 아무것도 추가되지 않았을때 뜨는 문구입니다.

구성

내용

text

TextLabel

  • styleTheme : body2Regular

Color 구성

Color Key

Header Row

구성

내용

selection 영역

IconButton 참고

  • iconColorKey

    • off : ui_cpnt_list_icon_03

    • on : ui_cpnt_list_icon_active_primary

  • baseColorKey : ui_cpnt_button_fill_base_transparent

text

TextLabel 참고

  • headerText

    • colorTheme : sysTextSecondary

base

ui_cpnt_list_base_area

Divider

Divider 참고

emptyState

  • 아직 아무것도 추가되지 않았을때 뜨는 문구입니다.

구성

내용

emptyText

TextLabel

  • colorTheme : sysTextTertiary


Properties

selectionMode

좌측 선택 영역의 사용 여부를 결정합니다.
*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'multi'

Enum Values Description

'none'

selection 영역(column 1)이 표시되지 않습니다.
체크박스가 사라집니다. 아이템을 클릭 했을 시 아무런 표시를 하지 않습니다.

'single'

체크박스가 사라집니다. 아이템을 클릭 했을 시 선택된 아이템의 background-color만 줍니다.
하나만 선택해야할 때 (single select) 사용합니다.

'multi'

여러 개의 아이템을 선택할 수 있습니다. 체크박스를 사용합니다.

headerRowMode

HeaderRow의 숨김 여부를 결정합니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'use'

Enum Values Description

'none'

HeaderRow를 사용하지 않습니다.

'use'

HeaderRow를 사용합니다.

column2HeaderText*

column2의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column3HeaderText

column3의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column3Width

column3의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column4HeaderText

column4의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column4Width

column4의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column5HeaderText

column5의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column5Width

column5의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column6HeaderText

column6의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column6Width

column6의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column7HeaderText

column7의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column7Width

column7의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column8HeaderText

column8의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column8Width

column8의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column9HeaderText

column9의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column9Width

column9의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

column10HeaderText

column10의 Header 텍스트를 표시합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

column10Width

column10의 width를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'small'

Enum Values Description

'small'

'medium'

'large'

'xlarge'

quickActionBtnMode

퀵액션 버튼 사용 개수를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'btn_amount2'

Enum Values Description

'none'

메인 버튼을 사용하지 않습니다.

'btn_amount1'

퀵액션 버튼을 1개 사용합니다.

'btn_amount2'

퀵액션 버튼을 2개 사용합니다.

'btn_amount3'

퀵액션 버튼을 3개 사용합니다.

quickActionBtn1Text

우측에서 1번째 퀵 액션 버튼의 텍스트입니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

quickActionBtn2Text

우측에서 2번째 퀵 액션 버튼의 텍스트입니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

quickActionBtn3Text

우측에서 3번째 퀵 액션 버튼의 텍스트입니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

quickActionBtnType

우측 액션 버튼의 형태를 결정합니다.

*ListItem에서는 해당 prop 설정을 그대로 가져다 씁니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'fix'

Enum Values Description

'fix'

우측 액션 버튼이 고정 영역을 가지고 있습니다.

'hover'

우측 액션 버튼을 리스트 아이템 위에 띄웁니다.

emptyText

아무런 게시글이 업로드 되지 않았을 때 표시될 문구

기획 지시사항

  • 기획서 상 작성 방법 : 텍스트만 기술

Type

number | string | object | Array<string | object> | undefined | null

Default

-

scrollMode

스크롤을 사용할 지에 대한 여부를 결정합니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'infinite'

Enum Values Description

'none'

모든 스크롤이 불가능하고, 아이템을 단순히 나열합니다.
height는 자동으로 Item의 갯수만큼 늘어나게 됩니다.

'infinite'

무한 스크롤을 사용합니다.
height는 부모의 높이에 맞추게 됩니다.

'page'

페이지네이션 형식을 사용하고, 제한적으로만 스크롤을 사용합니다.

scrollVisibleType

스크롤을 표시할 지에 대한 여부를 결정합니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'moving'

Enum Values Description

'moving'

움직일 때에만 표시하고 더이상 표시하지 않습니다.

'hidden'

스크롤을 아예 표시하지 않습니다.

CODE
/* 참고용 */
#element{
	-ms-overflow-style: none; /* IE and Edge */
	scrollbar-width: none; /* Firefox */
}
#element::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera*/
}
/* 참고
* https://www.w3schools.com/howto/tryit.asp?filename=tryhow_css_hide_scrollbar_keep_func
*/

'visible'

항상 표시합니다.

CODE
/* hidden과 비슷한 방식으로 수치를 결정 */
{
}

headerRowCheckboxName

headerRow에 있는 Checkbox에 name을 부여할 수 있습니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

string

Default

'all'

flexibleHideInfoMode

일정 너비 이하가 되면 특정 정보들이 숨겨지도록 처리할지에 대한 여부를 결정합니다.

기획 지시사항

  • 기획서 상 작성 방법 : Enum Values 중 하나를 사용함

Type

enum

Default

'use'

Enum Values Description

'none'

모든 화면 사이즈에서 모든 정보가 보여집니다.

'use'

1400px기준으로, 전체 화면 사이즈가 해당 너비 이하가 되면 column3부터 column10까지가 숨겨집니다.

toolBar

ToolBar 컴포넌트만을 위치시켜 사용합니다.

기획 지시사항

  • 기획서 상 작성 방법 : '기획서 WF 작성 방법 참고'를 참고하여 WF에 작성

Type

React.ReactElement<React.ComponentProps<typeof ToolBar>>

Default

-

bulkActionBar

BulkActionBar 컴포넌트만을 위치시켜 사용합니다.

기획 지시사항

  • 기획서 상 작성 방법 : '기획서 WF 작성 방법 참고'를 참고하여 WF에 작성

Type

React.ReactElement<React.ComponentProps<typeof BulkActionBar>>

Default

-

  

onClickQuickActionBtn1

QuickActionBtn1이 클릭이 된 시점에 이벤트를 부여합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

(id: number) => void

Default

-

onClickQuickActionBtn2

QuickActionBtn2이 클릭이 된 시점에 이벤트를 부여합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

(id: number) => void

Default

-

onClickQuickActionBtn3

QuickActionBtn3이 클릭이 된 시점에 이벤트를 부여합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

(id: number) => void

Default

-

children

AdminList에 들어갈 자식 요소입니다. 현재는 AdminListItem 컴포넌트만 위치시킬 수 있습니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

React.ReactNode

Default

-

onSelect

선택이 된 시점에 이벤트를 부여합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

(ids: number[]) => void

Default

-

selectedIds

선택된 아이템의 id 배열입니다. id는 숫자 타입만 허용합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

number[]

Default

-

maintainIds

maintain 상태를 유지시킬 아이템의 id 배열입니다. id는 숫자 타입만 허용합니다.

기획 지시사항

  • 기획서 상 작성 방법 : 기획자가 직접 prop을 기술하지 않음

Type

number[]

Default

-


문서 작성 정보

소유자 / 관리자

김혜진, 박윤규, 안은수

변경 이력

  • 2023/03/24 : text 관련 prop들 타입 변경 - 안은수

  • 2023/03/02 : toolBar와 bulkActionBar prop 삭제 - 안은수

  • 2023/02/17 : AdminList 문서 복제, BulkActionBar에 대한 내용과 Prop 삭제 - 김혜진

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.