Slate 날짜와 시간 위젯
Time에는 Calendar, Date Picker, Date Range Picker와 Timeline이 있습니다. 아래 표에서 상호작용값은 사용자의 현재 선택을 반영하며, 별도 표시가 없는 속성은 편집자가 구성하는 설정값입니다.
Calendar
| 속성 | 자료형 | 필수 | 역할 |
|---|---|---|---|
| areEventsAllDay | JSON Boolean 배열 | 아니요 | 각 이벤트의 종일 여부입니다. 비어 있으면 false입니다. |
| dateRangeEnabled | String | 예 | 현재 day/week/month 범위를 제목으로 표시하는 설정입니다. |
| defaultDate | String | 예 | 로드할 날짜입니다. 빈 문자열이면 로드 시점의 오늘을 사용합니다. 상호작용으로 갱신됩니다. |
| eventEnds | JSON | 예 | 각 이벤트의 끝 시각입니다. |
| eventNames | JSON | 예 | 각 이벤트의 이름입니다. |
| eventSeries | JSON String 배열 | 아니요 | 스타일을 공유할 series별 이름입니다. 비면 기본 스타일을 사용합니다. |
| eventStarts | JSON | 예 | 각 이벤트의 시작 시각입니다. |
| pagingEnabled | Boolean | 예 | 현재 표시 간격만큼 앞뒤 이동하고 오늘로 돌아오는 버튼을 제공합니다. |
| pagingYearEnabled | Boolean | 예 | 1년 앞뒤로 이동하는 버튼을 추가합니다. |
| selectedIndex | Number, 미선택 시 null | 예 | 선택한 이벤트의 인덱스입니다. 상호작용값입니다. |
| viewDefault | String | 예 | 초기 day/week/month 보기이며 기본값은 Month입니다. 날짜는 defaultDate를 따르며 상호작용으로 갱신됩니다. |
| viewType | String | 예 | Day/Week의 List 또는 Time 표시 방식입니다. Month에는 영향을 주지 않습니다. |
| viewSwitchingEnabled | Boolean | 예 | day/week/month 전환 버튼이며 기본적으로 켜져 있습니다. |
List는 시작 시각으로 다시 정렬하지 않고 제공한 이벤트 순서대로 표시합니다. Time은 각 이벤트가 차지하는 시간 블록으로 표시합니다.
종일 이벤트는 all-day 영역에서 시작과 끝 시각 사이에 완전히 포함되는 날에만 표시하며 선택값에도 조정된 날짜 경계를 반영합니다. 예를 들어 1월 1일 03:00부터 1월 3일 03:00까지인 종일 이벤트는 1월 1일 00:00부터 1월 3일 00:00까지로 표시합니다.
Date Picker
| 속성 | 자료형 | 필수 | 역할 |
|---|---|---|---|
| disabled | Boolean | 예 | 사용자 조작 비활성화이며 기본값은 false입니다. Boolean 참조로 구성할 수 있습니다. |
| displayFormat | String | 아니요 | 입력창에 표시할 Moment 형식입니다. |
| maxDate | String | 아니요 | ISO 8601 상한입니다. 비면 올해 12월 31일입니다. |
| minDate | String | 아니요 | ISO 8601 하한입니다. 비면 20년 전의 1월 1일입니다. |
| placeholder | String | 예 | 미선택 상태의 안내입니다. |
| timeEnabled | Boolean | 예 | 시간 선택기를 표시합니다. |
| timePickerPrecision | Number | 예 | 시간 선택기의 정밀도 설정입니다. |
| value | String | 예 | 현재 선택값입니다. 상호작용값입니다. |
| valueFormat | String | 아니요 | 출력 value의 Moment 형식입니다. 생략하거나 null이면 ISO 8601을 사용합니다. |
날짜만 표시하는 예입니다.
{"disabled":false,"displayFormat":"MM/DD/YYYY","timeEnabled":false,"value":"2014-09-10T05:00:00.000Z"}
시간 선택과 별도 출력 형식을 사용하는 예입니다.
{"disabled":false,"timeEnabled":true,"value":"2014-09-10 13:00","valueFormat":"YYYY-MM-DD HH:mm"}
기본 구성에는 valueFormat이 명시적으로 YYYY-MM-DD로 들어 있습니다. 형식 미지정 시의 ISO 8601 조건과 구분합니다.
{"disabled":false,"timeEnabled":false,"value":"","valueFormat":"YYYY-MM-DD"}
Date Range Picker
| 속성 | 자료형 | 필수 | 역할 |
|---|---|---|---|
| disabled | Boolean | 예 | 사용자 조작 비활성화이며 기본값은 false입니다. |
| displayFormat | String | 아니요 | 표시할 Moment 날짜 형식입니다. |
| fromDateValue / toDateValue | String, 미선택 시 null | 예 | 현재 시작과 끝 선택값이며 ISO 8601을 사용합니다. 상호작용값입니다. |
| maxDate | String | 아니요 | ISO 8601 상한입니다. 비면 올해 12월 31일입니다. |
| minDate | String | 아니요 | ISO 8601 하한입니다. 비면 20년 전 1월 1일입니다. |
| shortcutLabels | String[] | 예 | Last 3 Days 같은 단축 구간 이름입니다. 없으면 기본 구간과 이름을 사용합니다. |
| shortcutRanges | String[][] | 아니요 | 각 단축 구간의 ISO 8601 시작/끝 문자열 쌍입니다. |
| shortcutsEnabled | Boolean | 아니요 | 단축 구간을 표시합니다. |
| timeEnabled | Boolean | 예 | 시간 선택기를 표시합니다. |
| timePickerPrecision | Number | 예 | 시간 선택기의 정밀도입니다. |
단축 구간은 ["2016-05-01","2016-05-10"]처럼 지정하며 시각도 포함할 수 있습니다. 다음은 과거 구간을 선택하는 예입니다.
{
"disabled":false,
"displayFormat":"YYYY-MM-DD",
"fromDateValue":"2016-09-10T05:00:00.000Z",
"maxDate":"2020-01-01",
"minDate":"2000-01-01",
"shortcutsEnabled":false,
"timeEnabled":false,
"toDateValue":"2016-10-10T05:00:00.000Z"
}
시간과 Q1~Q4 단축 구간을 포함한 예입니다. 단축 구간의 날짜는 아래 배열로 직접 정의합니다.
{
"disabled":false,
"displayFormat":"YYYY-MM-DD hh:mm:ss a",
"fromDateValue":"2016-09-10T05:13:11.001Z",
"shortcutLabels":["Q1","Q2","Q3","Q4"],
"shortcutRanges":[
["2015-10-01","2015-12-31"],
["2016-01-01","2016-03-31"],
["2016-04-01","2016-06-30"],
["2016-07-01","2016-09-30"]
],
"shortcutsEnabled":true,
"timeEnabled":true,
"timePickerPrecision":0,
"toDateValue":"2016-10-10T05:14:11.002Z"
}
기본값은 다음과 같습니다.
{"disabled":false,"displayFormat":"YYYY-MM-DD","fromDateValue":null,"shortcutsEnabled":false,"timeEnabled":false,"timePickerPrecision":0,"toDateValue":null}
Timeline
| 속성 | 자료형 | 필수 | 역할 |
|---|---|---|---|
| cssClasses | String[] | 아니요 | 각 이벤트에 대응하는 class입니다. |
| dates | Any[] | 예 | 이벤트 날짜입니다. 입력 순서대로 표시합니다. |
| details | String[] | 아니요 | 각 제목 아래의 설명입니다. 설명이 없는 항목에는 null을 사용할 수 있습니다. |
| titles | String[] | 예 | 각 이벤트의 제목입니다. |
다음 예에서 query1은 dates와 titles 배열을 반환합니다.
{
"cssClasses":["green","red","green"],
"dates":"{{query1.dates}}",
"details":["this first event was spectacular",null,"the third event was alright"],
"titles":"{{query1.titles}}"
}
{"cssClasses":[],"dates":[],"details":[],"titles":[]}