Blueprint is a React-based UI toolkit for the web. This library is very optimized and popular for building interfaces that are complex and data-dense for desktop applications.
In this article, we’ll discuss React.js Blueprint DateInput Props. The DateInput component is a type of InputGroup that allows the users to pick the date as per choice and also the time zones. It shows a DatePicker inside a Popover when focused.
React.js BluePrint DateInput Props:
- canClearSelection: It allows the users to clear the selection by clicking the currently selected day.
- className: It denotes a space-delimited list of class names to pass along to a child element.
- clearButtonText: It denotes the text for the reset button in the date picker action bar.
- closeOnSelection: It indicates whether the calendar popover should close when a date is selected.
- dayPickerProps: It denotes the props to pass to ReactDayPicker.
- defaultValue: It denotes the default date to be used in the component when uncontrolled.
- disabled: It indicates whether the date input is non-interactive.
- disableTimezoneSelect: It denotes whether to disable the timezone selected.
- fill: It denotes whether the component should take up the full width of its container.
- footerElement: It is used to add an additional element to show below the date picker.
- formatDate: It is a function to render a JavaScript Date to a string.
- highlightCurrentDay: It is used to indicate whether the current day should be highlighted in the calendar.
- initialMonth: It denotes the initial month the calendar displays.
- inputProps: It denotes the props to pass to the input group.
- invalidDateMessage: It denotes the error message to display when the date selected is invalid.
- locale: It denotes the locale name.
- localeUtils: It denotes the collection of functions that provide internationalization support.
- maxDate: It denotes the latest date the user can select.
- minDate: It denotes the earliest date the user can select.
- modifiers: It denotes the collection of functions that determine which modifier classes get applied to which days.
- onChange: It is a callback function that is triggered when the user selects a new valid date through the DatePicker or by typing in the input.
- onError: It is a callback function that is triggered when the user finishes typing in a new date and the date causes an error state.
- outOfRangeMessage: It denotes the error message to display when the date selected is out of range.
- parseDate: It is a callback function to deserialize user input text to a JavaScript Date object.
- placeholder: it denotes the placeholder text to display in empty input fields.
- popoverProps: It denotes the props to pass to the Popover.
- reverseMonthAndYearMenus: The month menu will appear to the left of the year menu if this is set to true.
- rightElement: It denotes the element to render on the right side of an input.
- shortcuts: It indicates whether shortcuts to quickly select a date are displayed or not.
- showActionsBar: It is used to indicate whether the bottom bar displaying Today and Clear buttons should be shown below the calendar.
- timePickerProps: It is used to further configure the TimePicker that appears beneath the calendar.
- timePrecision: It denotes the precision of time selection that accompanies the calendar.
- todayButtonText: It denotes e the text for the today button in the date picker action bar.
- value: It is used to denote the currently selected day.
Syntax:
<DateInput value={...} formatDate={...} ... />
Creating React Application And Installing Module:
Step 1: Create a React application using the following command:
npm create-react-app appname
Step 2: After creating your project folder i.e. appname, move to it using the following command:
cd appname
Step 3: After creating the ReactJS application, Install the required module using the following command:
npm install @blueprintjs/core
Step 4: Installing @blueprintjs datetime component.
npm install @blueprintjs/datetime
Project Structure:
Step to Run Application: Run the application using the following command from the root directory of the project:
npm start
Example 1: The below example demonstrates the usage of the formatDate, placeholder, onChange, and value props of DateInput component.
Javascript
import React, { useCallback, useState } from "react" ; import "@blueprintjs/core/lib/css/blueprint.css" ; import "@blueprintjs/datetime/lib/css/blueprint-datetime.css" ; import { DateInput } from "@blueprintjs/datetime" ; function App() { const [dateVal, setDateVal] = useState( null ); const handleChange = useCallback(setDateVal, []); const formatDate = useCallback((Date) => Date.toLocaleString(), []); return ( <center> <div style={{ textAlign: "center" , color: "green" }}> <h1>neveropen</h1> <h2>ReactJs Blueprint DateInput Props</h2> </div> <div style={{ width: 500 }}> <DateInput formatDate={formatDate} onChange={handleChange} placeholder= "mm/dd/yyyy" value={dateVal} /> </div> </center> ); } export default App; |
Output:
Example 2: The below example demonstrates the usage of the parseDate, shortcuts, and todayButtonText props of DateInput component.
Javascript
import React, { useCallback, useState } from "react" ; import "@blueprintjs/core/lib/css/blueprint.css" ; import "@blueprintjs/datetime/lib/css/blueprint-datetime.css" ; import { DateInput } from "@blueprintjs/datetime" ; function App() { const [dateVal, setDateVal] = useState( null ); const handleChange = useCallback(setDateVal, []); const formatDate = useCallback((Date) => Date.toLocaleString(), []); return ( <center> <div style={{ textAlign: "center" , color: "green" }}> <h1>neveropen</h1> <h2>ReactJs Blueprint DateInput Props</h2> </div> <div style={{ width: 500 }}> <DateInput parseDate={str => new Date(str)} formatDate={formatDate} onChange={handleChange} placeholder= "mm/dd/yyyy" value={dateVal} shortcuts todayButtonText= "Today" /> </div> </center> ); } export default App; |
Output:
Reference: https://blueprintjs.com/docs/#datetime/dateinput.props-interface