Changelog — Vue 3 (v2+)
v2.0.0
Release Date: 2026
🚀 New Features
- Teleport-based rendering — Calendar popup now uses
<Teleport to="body">for reliable positioning, even insideoverflow: hiddencontainers - Smart viewport positioning — Calendar auto-positions above or below the input based on available viewport space
- Scroll & resize tracking — Calendar repositions dynamically when the page scrolls or the window resizes
disabledprop — Fully disable the date picker input and calendarallowTypingprop — Control whether the user can type into the input field or must use the calendar popupautoFormatprop — Smart auto-formatting inserts dashes as the user types (20810515→2081-05-15)clickSelectprop — Auto-select all text on input click for easy replacementupdateOnInputChangeprop — Real-time model updates as the user types a valid dateminiEnglishDateprop — Display corresponding AD day numbers inside each BS calendar cellhighlightSaturdayprop — Highlight Saturday cells in red (Nepal's weekly holiday)inputClassprop — Apply a custom CSS class directly to the<input>elementidprop — Set a custom HTML id for programmatic focus- Focus-based opening — Calendar opens on
focusin, enabling keyboard tab navigation - TypeScript interface export —
NepaliDatePickerPropsis exported for type-safe usage
🔄 Changes from v1
- Migrated from Options API to Composition API (
<script setup>) - All CSS class names prefixed with
calendar__for scoped consistency (e.g.selected→calendar__selected) - Calendar rendering moved from inline (
position: absoluteinside component) to<Teleport> - Props renamed:
classValue→class, addedinputClass - Animation classes updated to Vue 3 transition naming (
-enter-from/-leave-from)
🐛 Bug Fixes
- Fixed calendar being clipped by parent containers with
overflow: hidden - Fixed year picker page not syncing to the currently selected year when opened
- Improved min/max date validation to properly prevent selection of out-of-range dates via typing
- Fixed click-outside detection when month/year selector panels are open
- Fixed memory leak: scroll and resize event listeners are now properly cleaned up on unmount
📦 Dependencies
nepali-date-library^1.1.14vue^3.5.27 (peer)