MultiDatePicker

This widget allows date selection presented across multiple date pickers. The API matches closely to a DatePicker since the only meaningful difference in functionality is the use of a carousel to present multiple months at the same time. This widget is a part of DateRangePicker.

Configs

131

Common

listenersEvents

Other

cellRenderer: function | String

A function (or the name of a function) which creates content in, and may mutate a day cell element.

See cellRenderer.

ParameterTypeDescription
renderDataObject
renderData.cellHTMLElement

The header element

renderData.dateDate

The date for the cell

renderData.dayNumber

The day for the cell (0 to 6 for Sunday to Saturday)

renderData.rowIndexNumber[]

The row index, 0 to month row count

renderData.rowHTMLElement

The row element encapsulating the week which the cell is a part of

renderData.sourceCalendarPanel

The widget being rendered

renderData.cellIndexNumber[]

The cell index in the whole panel. May be from 0 to up to 42

renderData.columnIndexNumber[]

The column index, 0 to 6

renderData.visibleColumnIndexNumber[]

The visible column index taking hidden non-working days into account

Returns: String | DomConfig | null
date: Date

The initially selected date.

The configuration defaults for all date pickers in the carousel.

headerRenderer: function | String

A function (or the name of a function) which creates content in, and may mutate a day header element.

See headerRenderer.

ParameterTypeDescription
renderDataObject
renderData.cellHTMLElement

The header element

renderData.dayNumber

The day number conforming to the specified weekStartDay. Will be in the range 0 to 6

renderData.weekDayNumber

The canonical day number where Monday is 0 and Sunday is

Returns: String | DomConfig | null
maxDate: Date

The maximum selectable date. Selection of and navigation to dates after this date will not be possible.

minDate: Date

The minimum selectable date. Selection of and navigation to dates prior to this date will not be possible.

multiSelect: Boolean | range= false

Configure as true to enable selecting multiple discontiguous date ranges using click and Shift+click to create ranges and Ctrl+click to select/deselect individual dates.

Configure as 'range' to enable selecting a single date range by selecting a start and end date. Hold "SHIFT" button to select date range. Ctrl+click may add or remove dates to/from either end of the range.

Set to false to not allow multiple date selection.

navButtons: Boolean | inline | floating= true

Set to false to hide the next and previous month buttons.

The current date range selection as an array of two Date objects.

weekRenderer: function | String

A function (or the name of a function) which creates content in, and may mutate the week cell element at the start of a week row.

See weekRenderer.

ParameterTypeDescription
renderDataObject
renderData.cellHTMLElement

The header element

renderData.weekNumber[]

An array containing [year, weekNumber]

Returns: String | DomConfig | null
weekStartDay: Number

The week start day, 0 meaning Sunday, 6 meaning Saturday. Defaults to weekStartDay.

columnWidget
currentIndexCarousel
defaultFocusContainer
drawerPanel
emptyHtmlCarousel
emptyTextCarousel
labelPositionContainer
rangeCarousel
renditionContainer
reserveSlotsCarousel
rtlRTL
scrollOnTabCarousel
shrinkWrapCarousel
slotsCarousel
snapCarousel
spanWidget
verticalCarousel

Accessibility

ariaLabelWidget
keyMapKeyMap

Content

bbarPanel
defaultsContainer
footerPanel
headerPanel
itemsContainer
lazyItemsContainer
namedItemsContainer
stripsPanel
tbarPanel
textContentContainer
toolsPanel

CSS

bodyClsPanel
borderContainer
clsWidget
colorWidget
htmlClsWidget
itemClsContainer
styleWidget
uiPanel

DOM

adoptWidget
appendToWidget
contentWidget
datasetWidget
htmlWidget
idWidget
tagWidget

Float & align

alignWidget
anchorWidget
centeredWidget
draggableWidget
floatingWidget
xWidget
yWidget

Layout

alignSelfWidget
dockWidget
flexWidget
heightWidget
hiddenWidget
hideWhenEmptyContainer
layoutContainer
layoutStyleContainer
marginWidget
maxHeightWidget
maxWidthWidget
minHeightWidget
minWidthWidget
textAlignWidget
weightWidget
widthWidget

misc

tabBarItemsContainer

Misc

dataFieldWidget
disabledWidget
iconPanel
localeClassLocalizable
localizableLocalizable
maskedWidget
ownerWidget
readOnlyWidget
refWidget
rippleWidget
tabWidget
titlePanel
tooltipWidget

Record

recordContainer

Scrolling

State

stateIdState

Properties

108

Class hierarchy

isMultiDatePicker: Boolean= truereadonly
Identifies an object as an instance of MultiDatePicker class, or subclass thereof.
isMultiDatePicker: Boolean= truereadonlystatic
Identifies an object as an instance of MultiDatePicker class, or subclass thereof.
isCarouselCarousel
isContainerContainer
isDelayableDelayable
isEventsEvents
isKeyMapKeyMap
isLocalizableLocalizable
isPanelPanel
isStateState
isToolableToolable
isWidgetWidget

Other

The current date range selection as an array of two Date objects.

$namestaticWidget
columnWidget
currentIndexCarousel
emptyHtmlCarousel
emptyTextCarousel
firstItemContainer
hasChangesContainer
isValidContainer
itemsContainer
labelPositionContainer
lastItemContainer
rangeCarousel
renditionContainer
reserveSlotsCarousel
rtlRTL
scrollingCarousel
scrollOnTabCarousel
shrinkWrapCarousel
slotsCarousel
snapCarousel
spanWidget
toolsPanel
typestaticWidget
valuesContainer
verticalCarousel

Accessibility

keyMapKeyMap

Content

bbarPanel
tbarPanel

CSS

clsWidget

DOM

appendToWidget
contentWidget
datasetWidget
elementWidget
htmlWidget
idWidget
styleWidget

Float & align

xWidget
yWidget

Layout

alignSelfWidget
flexWidget
heightWidget
layoutContainer
layoutStyleContainer
marginWidget
maxHeightWidget
maxWidthWidget
minHeightWidget
minWidthWidget
widthWidget

Lifecycle

configBase

Misc

cellInfoWidget
disabledWidget
localeHelperLocalizable
localeManagerLocalizable
readOnlyWidget
refWidget
tabWidget
titlePanel
tooltipWidget

Record

recordContainer

State

stateState

Visibility

hiddenWidget
isVisibleWidget

Widget hierarchy

ownerWidget
parentWidget
widgetMapContainer

Functions

81

Other

Ensures that the given slot date is visible, scrolling if necessary to make it so.

ParameterTypeDescription
optionsObject

Options to configure which date should be visible and how to scroll if necessary.

options.dateDate

The date to make visible.

options.indexNumber

The index of the slot (i.e., the month offset). This property is used by the base-class (Carousel) but should not be used for this class. Instead, use date.

options.animationBoolean

Pass false to disable scroll animation.

addContainer
backwardCarousel
composeWidget
createOnFrameDelayable
disableWidget
enableWidget
focusWidget
forwardCarousel
getAtContainer
getWidgetByIdContainer
goCarousel
gotoCarousel
indexFromPosCarousel
insertContainer
LstaticLocalizable
maskWidget
onEvents
posFromIndexCarousel
recomposeWidget
relayAllEvents
removeContainer
removeAllContainer
resetValuesContainer
setValuesContainer
triggerEvents
unEvents
unmaskWidget

Configuration

applyDefaultsstaticBase

Events

Float & align

alignToWidget
setXYWidget
showByWidget
toFrontWidget

Lifecycle

createstaticWidget
destroystaticBase
initClassstaticWidget

Misc

attachTooltipstaticWidget
fromElementstaticWidget
fromSelectorstaticWidget
getByIdstaticWidget
isOfTypeNamestaticBase
mixinstaticBase
optionalLstaticLocalizable

State

Visibility

hideWidget
showWidget

Widget hierarchy

closestWidget
containsWidget
ownsWidget
queryWidget
queryAllWidget
upWidget

Events

22

Fires when a date or date range is selected. If multiSelect is specified, this will fire upon deselection and selection of dates.

// Adding a listener using the "on" method
multiDatePicker.on('selectionChange', ({ selection, userAction }) => {

});
ParameterTypeDescription
selectionDate[]

The selected date. If multiSelect is specified this may be a two element array specifying start and end dates.

userActionBoolean

This will be true if the change was caused by user interaction as opposed to programmatic setting.

catchAllEvents
destroyEvents
expandPanel
focusInWidget
focusOutWidget
hideWidget
paintWidget
readOnlyWidget
recomposeWidget
resizeWidget
showWidget

Event handlers

22

Called when a date or date range is selected. If multiSelect is specified, this will fire upon deselection and selection of dates.

new MultiDatePicker({
    onSelectionChange({ selection, userAction }) {

    }
});
ParameterTypeDescription
selectionDate[]

The selected date. If multiSelect is specified this may be a two element array specifying start and end dates.

userActionBoolean

This will be true if the change was caused by user interaction as opposed to programmatic setting.

onDestroyEvents
onFocusInWidget
onHideWidget
onPaintWidget
onResizeWidget
onShowWidget

Typedefs

7

CSS variables

52

Inherited