Home / Function/ DatePickerNaturalLanguage() — ui Function Reference

DatePickerNaturalLanguage() — ui Function Reference

Architecture documentation for the DatePickerNaturalLanguage() function in date-picker-natural-language.tsx from the ui codebase.

Entity Profile

Dependency Diagram

graph TD
  8b81ae4d_b30d_b16c_7bb5_2b57992797dd["DatePickerNaturalLanguage()"]
  06e1b054_abbc_9a3c_3fc7_cd3e1a2052e8["date-picker-natural-language.tsx"]
  8b81ae4d_b30d_b16c_7bb5_2b57992797dd -->|defined in| 06e1b054_abbc_9a3c_3fc7_cd3e1a2052e8
  b432f9bf_1256_15b7_bb58_a22682205052["formatDate()"]
  8b81ae4d_b30d_b16c_7bb5_2b57992797dd -->|calls| b432f9bf_1256_15b7_bb58_a22682205052
  style 8b81ae4d_b30d_b16c_7bb5_2b57992797dd fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

apps/v4/examples/base/date-picker-natural-language.tsx lines 32–102

export function DatePickerNaturalLanguage() {
  const [open, setOpen] = React.useState(false)
  const [value, setValue] = React.useState("In 2 days")
  const [date, setDate] = React.useState<Date | undefined>(
    parseDate(value) || undefined
  )

  return (
    <Field className="mx-auto max-w-xs">
      <FieldLabel htmlFor="date-optional">Schedule Date</FieldLabel>
      <InputGroup>
        <InputGroupInput
          id="date-optional"
          value={value}
          placeholder="Tomorrow or next week"
          onChange={(e) => {
            setValue(e.target.value)
            const date = parseDate(e.target.value)
            if (date) {
              setDate(date)
            }
          }}
          onKeyDown={(e) => {
            if (e.key === "ArrowDown") {
              e.preventDefault()
              setOpen(true)
            }
          }}
        />
        <InputGroupAddon align="inline-end">
          <Popover open={open} onOpenChange={setOpen}>
            <PopoverTrigger
              render={
                <InputGroupButton
                  id="date-picker"
                  variant="ghost"
                  size="icon-xs"
                  aria-label="Select date"
                />
              }
            >
              <CalendarIcon />
              <span className="sr-only">Select date</span>
            </PopoverTrigger>
            <PopoverContent
              className="w-auto overflow-hidden p-0"
              align="end"
              sideOffset={8}
            >
              <Calendar
                mode="single"
                selected={date}
                captionLayout="dropdown"
                defaultMonth={date}
                onSelect={(date) => {
                  setDate(date)
                  setValue(formatDate(date))
                  setOpen(false)
                }}
              />
            </PopoverContent>
          </Popover>
        </InputGroupAddon>
      </InputGroup>
      <div className="text-muted-foreground px-1 text-sm">
        Your post will be published on{" "}
        <span className="font-medium">{formatDate(date)}</span>.
      </div>
    </Field>
  )
}

Subdomains

Calls

Frequently Asked Questions

What does DatePickerNaturalLanguage() do?
DatePickerNaturalLanguage() is a function in the ui codebase, defined in apps/v4/examples/base/date-picker-natural-language.tsx.
Where is DatePickerNaturalLanguage() defined?
DatePickerNaturalLanguage() is defined in apps/v4/examples/base/date-picker-natural-language.tsx at line 32.
What does DatePickerNaturalLanguage() call?
DatePickerNaturalLanguage() calls 1 function(s): formatDate.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free