Socket
Socket
Sign inDemoInstall

vue3-datepicker

Package Overview
Dependencies
24
Maintainers
1
Versions
18
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    vue3-datepicker

A simple Vue 3 datepicker component. Supports disabling of dates, translations. Dependent on date-fns.


Version published
Weekly downloads
20K
increased by23.06%
Maintainers
1
Install size
6.77 MB
Created
Weekly downloads
 

Readme

Source

Vue 3 Datepicker

Documentation: https://icehaunter.github.io/vue3-datepicker/

This is a basic (at least for now) reimplementation of https://github.com/icehaunter/vuejs-datepicker in Vue 3 and with greatly cleaned up code.

All date manipulation and formatting are done via the amazing date-fns library, so it's a direct dependency of this picker.

Installation

Package is available on NPM: https://www.npmjs.com/package/vue3-datepicker

npm i vue3-datepicker

The component is packaged mainly for use with bundlers, if you require a browser build - post an issue.

Usage

For more examples see https://icehaunter.github.io/vue3-datepicker/examples.html

<template>
  <datepicker
    v-model="selected"
    :locale="locale"
    :upperLimit="to"
    :lowerLimit="from"
    :clearable="true"
  />
</template>

Props and attributes

Attribute fallthrough is enabled, so any attribute you apply to the component will be passed down to the input.

All props which accept formatting strings for dates use date-fns formatting function under the hood, so see that function's documentation for patterns.

Main interaction to date selection is done via v-model with Date as expected type of the value passed.

Full props documentation is available at https://icehaunter.github.io/vue3-datepicker/config.html#props

IDTypeDefaultDescription
upperLimitDateUpper limit for available dates for picking
lowerLimitDateLower limit for available dates for picking
startingViewDateDate() => new Date()Date on which to focus when empty datepicker is opened. Default is "right now"
disabledDates{ dates: Date[] }Dates not available for picking
disabledTime{ dates: Date[] }Dates not available for time picking
startingView'time' | 'day' | 'month' | 'year''day'View on which the date picker should open. Can be either year, month, or day
minimumView'time' | 'day' | 'month' | 'year''day'If set, lower-level views won't show
dayPickerHeadingFormatStringLLLL yyyydate-fns-type formatting for a day view heading
dayFormatStringdddate-fns-type formatting for each day on the day view
weekdayFormatStringEEdate-fns-type formatting for a line of weekdays on day view
inputFormatStringyyyy-MM-dddate-fns-type format in which the string in the input should be both parsed and displayed
localeLocaledate-fns/locale/endate-fns locale object. Used in string formatting (see default dayPickerHeadingFormat)
disabledBooleanfalseDisables datepicker and prevents it's opening
typeableBooleanfalseAllows user to input date manually
weekStartsOnNumber1Day on which the week should start. Number from 0 to 6, where 0 is Sunday and 6 is Saturday. Week starts with a Monday (1) by default
clearableBooleanfalseAllows clearing the selected date and setting the value to null
allowOutsideIntervalBooleanfalseAllows user to click dates outside of current interval

Events

  • opened: Emitted every time the popup opens, including on field focus
  • closed: Emitted every time the popup closes, including on field blur
  • decadePageChanged: Emitted when a page is changed on the year picker view, displaying a different decade. Has a date that is included in the shown decade as an argument.
  • yearPageChanged: Emitted when a page is changed on the month picker view, displaying a different year. Has a date that is included in the shown year as an argument.
  • monthPageChanged: Emitted when a page is changed on the day picker view, displaying a different month. Has a date that is included in the shown month as an argument.

Compatibility

Package is transpiled and should be usable for everyone with ES6 and above, but the styling of the datepicker itself uses CSS Grid and CSS variables.

Example

<template>
  <datepicker v-model="picked" />
</template>

<script>
import Datepicker from '../src/datepicker/Datepicker.vue'
components: {
  Datepicker
},
data(): {
  return {
    picked: new Date();
  }
}
</script>

Keywords

FAQs

Last updated on 10 Jun 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc