Skip to main content

Date Picker

The Date Picker component can be used for selecting dates without time input. It offers customizable formats, validation, and styling.

Properties

PropertyDescriptionExpected Value
LabelText to display as the label for the field.String (e.g., Date of Birth).
Date FormatSelect the date format from the dropdown. Default date format is DD/MM/YYYY.Select from dropdown (e.g. MM/DD/YYYY).
Default valueThe default value that the component will hold when the app is loaded.String (e.g., 01/01/2022).

Events

EventDescription
On selectTriggers whenever the user selects a date.
On focusTriggers whenever the user clicks inside the input field.
On blurTriggers whenever the user clicks outside the input field.
info

Check Action Reference docs to get the detailed information about all the Actions.

Component Specific Actions (CSA)

Following actions of component can be controlled using the Component Specific Actions (CSAs), which can be triggered using an event or by using the given RunJS query:

Action
Description
How To Access
clearValue( )Clears the date value.components.datepicker1.clearValue()
setValue( )Sets the date in the component.components.datepicker1.setValue(date)
setDate( )Sets the date value.components.datepicker1.setDate(date)
setDisabledDates( )Disables specific dates.components.datepicker1.setDisabledDates([date1, date2])
clearDisabledDates()Clears all disabled date.components.datepicker1.clearDisabledDates()
setMinDate( )Sets the minimum selectable date.components.datepicker1.setMinDate(date)
setMaxDate( )Sets the maximum selectable date.components.datepicker1.setMaxDate(date)
setFocus( )Sets the focus of the cursor on the input field.components.datepicker1.setFocus()
setBlur( )Removes the focus of the cursor from the input field.components.datepicker1.setBlur()
setVisibility()Sets the visibility of the component.components.datepicker1.setVisibility(false)
setLoading()Sets the loading state of the component.components.datepicker1.setLoading(true)
setDisable()Disables the component.components.datepicker1.setDisable(true)

Exposed Variables

Following exposed variables can be dynamically accessed using the given JS query:

VariableDescriptionHow To Access
valueHolds the date in the component.{{components.datepicker1.value}}
labelHolds the value of the component's label.{{components.datepicker1.label}}
unixTimestampHolds the value in UNIX format.{{components.datepicker1.unixTimestamp}}
selectedDateHolds the value of the selcted date.{{components.datepicker1.selectedDate}}
dateFormatHolds the date format.{{components.datepicker1.dateFormat}}
isValidIndicates if the input meets validation criteria.{{components.datepicker1.isValid}}
isMandatoryIndicates if the field is required.{{components.datepicker1.isMandatory}}
isLoadingIndicates if the component is loading.{{components.datepicker1.isLoading}}
isVisibleIndicates if the component is visible.{{components.datepicker1.isVisible}}
isDisabledIndicates if the component is disabled.{{components.datepicker1.isDisabled}}

Validation

Validation Option
Description
Expected Value
Make this field mandatoryDisplays a 'Field cannot be empty' message if no value is entered.Enable/disable the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.
Min DateSets the minimum date allowed.Date in correct format (e.g. 01/01/2020).
Max DateSets the maximum date allowed.Date in correct format (e.g. 31/12/2026).
Disabled datesSets the dates that are not acceptable.Date in correct format (e.g. 23/07/2024).
Custom validationSpecifies a validation error message for specific conditions.Logical Expression (e.g., {{ !/^\d{4}-\d{2}-\d{2}$/.test(components.datepicker1.value) && "Please enter a valid date in YYYY-MM-DD format" }}).

To add regex inside Custom Validation, you can use the below format:

Format: {{(<regexPattern>.test(<value>)) ? '' : 'Error message';}}

Example: {{ /^\d{4}-\d{2}-\d{2}$/.test(components.datepicker1.value) ? '' : "Please enter a valid date in YYYY-MM-DD format" }}

Additional Actions

Action
Description
Configuration Options
Loading stateEnables a loading spinner, often used with isLoading to indicate progress.Enable/disable the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.
VisibilityControls component visibility.Enable/disable the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.
DisableEnables or disables the component.Enable/disable the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.
TooltipProvides additional information on hover.String (e.g., Select your date of birth. ).

Devices

PropertyDescriptionExpected Value
Show on desktopMakes the component visible in desktop view.You can set it with the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.
Show on mobileMakes the component visible in mobile view.You can set it with the toggle button or dynamically configure the value by clicking on fx and entering a logical expression.

Styles

Label

PropertyDescription
Label ColorSets the color of the label text.
AlignmentDetermines the label's position, choose between top/side and left/right alignment.
WidthSpecifies the percentage of the component’s width that the label should occupy.

Color

PropertyDescription
BackgroundSets the background color of the component.
BorderDefines the color of the component’s border.
AccentSpecifies the accent color used for highlights or focus indicators.
TextSets the text color inside the component.
Error textColor applied to error messages.

Input Field

PropertyDescription
IconAdds an icon to the component, usually for visual cues or actions.
Icon ColorSets the color of the icon.
Icon PositionDefines the position of the icon (e.g., left, right).
Border radiusControls the roundness of the component's input field.
Box shadowApplies shadow styling to the input field.
PaddingSets the internal spacing between the content and the input field edges.
info

Any property having fx button next to its field can be programmatically configured.