syntax = "proto3";

package com.wixpress.appservice.api.upstream.wix.forms.v4.components;
option java_package = "com.wixpress.appservice.api.upstream.wix.forms.v4.components";

import "google/protobuf/wrappers.proto";
import "wix/api/validations.proto";
import "wix/api/annotations.proto";
import "wix/rich_content/v1/rich_content.proto";

message DatePicker {
    option (.wix.api.decomposite_of) = "wix.forms.v4.components.DatePicker";
  // Label of the field. Displayed text for the date/time input.
  google.protobuf.StringValue label = 1 [(.wix.api.maxLength) = 350, (.wix.api.translatable) = {
    name: "Date Picker Label"
    hidden: false
    grouping: "formFields"
    type: SHORT_TEXT
  }];

  // Description of the field. Additional information about the date/time input.
  .wix.rich_content.v1.RichContent description = 2 [(.wix.api.translatable) = {
    name: "Date Picker Description"
    hidden: false
    grouping: "formFields"
    type: RICH_CONTENT_EDITOR
  }];

  // Flag identifying whether to show or hide the label.
  // Default: true
  google.protobuf.BoolValue show_label = 3;

  // Placeholder of date picker input
  google.protobuf.StringValue placeholder = 4 [(.wix.api.maxLength) = 100, (.wix.api.translatable) = {
    name: "Date Picker Placeholder"
    hidden: false
    grouping: "formFields"
    type: SHORT_TEXT
  }];

  // First day of the week displayed on date picker.
  FirstDayOfWeekEnum.FirstDayOfWeek first_day_of_week = 5;

  // Default value for the date picker.
  google.protobuf.StringValue default = 6 [(.wix.api.format) = LOCAL_DATE];

  message FirstDayOfWeekEnum {
        option (.wix.api.decomposite_of) = "wix.forms.v4.components.DatePicker.FirstDayOfWeekEnum";
    enum FirstDayOfWeek {
      // First day of the week is Monday.
      MONDAY = 0;
      // First day of the week is Sunday.
      SUNDAY = 1;
    }
  }
}
