1. Observe("textDate")
void textDateChanged([_])

Source

@Observe("textDate")
void textDateChanged([_]) {
  _logger.fine("Text changed : ${textDate}");
  try {
    DateTime newDate = format.parse(textDate);
    if (newDate == selectedDate) {
      return;
    }
    _comingFromTextChange = true;
    selectedDate=newDate;

    if (pickerOpen) {
      currentDate=selectedDate;
    }

  } catch (e) {
    _logger.fine("Invalid date :${textDate} : ${e}");
   // selectedDate = null;
  }
  _logger.fine("Parsed date : ${selectedDate}");
  dispatchEvent(new CustomEvent("selectdate"));
  dispatchEvent(new CustomEvent("select-date-changed"));
}