- Fix - Datepicker custom events don't bubble (#157 - Thank you, @gucki)
- Fix - Focus doesn't move to the next field by pressing the tab key on the associated input field (#156)
- Fix - Picker is shown below the input field when the field is at the bottom edge of the document on recent version of Chromium-based browsers
- Change bs5 scss to prevent compile error with bootstrap 5.3 (#146)
- Add protection against fake
keydown
event with nokey
property triggered when autofill is performed on Chromium-based browsers (except Edge) (#144)
- Fix - Rename WeekNumbersTemplate.js to weekNumbersTemplate.js to fix an error caused by the case mismatch between the path in
import
statement and actual file name (#136 - Thank you, @marc-mabe)
- Add
weekNumbers
option to add support for week numbering systems other than ISO 8601 (#90)calendarWeek
option is now deprecated in favor ofweekNumbers
- Add
enableOnReadonly
option (#98, #113) - Add
shortcutKeys
option to change/disable some keyboard operations (#103, #119) - Add
toggle()
API method - Add
forceRefresh
to the method options ofsetDate()
andupdate()
API (#98) - Add
viewDate
to the method options ofsetDate()
API - Add callback function support to
datesDisabled
option for rule-based disabling (#114, #127)enabled
property in the object returned bybeforeShowDay
/-Month
/-Year
/-Decade
options and their returning a boolean are now deprecated, as they don't really prevent the date from being entered
- Add
getFocusedDate()
andsetFocusedDate()
API methods (#122)
- Fix - today button doesn't respect
pickLevel
- Fix - Esc keydown event bubbles up
- Fix - unable to scroll the screen by keeping the picker open on mobile screen (#95)
- Fix - native
change
event is not fired when input field loses focus (#39)
- Change the timing to trigger the
changeMonth
/-Year
/-View
events to after updating the picker element (#42) - Change keyboard operations to support inline picker when the bound element has the
tabindex
attribute - Rename
clearBtn
andtodayBtn
options toclearButton
,todayButton
for naming consistencyclearBtn
andtodayBtn
are now treated as a synonym of the corresponding one- The
...-bth
classes of the<button>
elements in the picker are also renamed to...-button
- The old
...-bth
classes remain on the elements for backward compatibility
- The old
- Revise stylesheets for better customizability in sizing
- Improve
View
classes (and some others) - Include stylesheet paths in
package.json
'sexports
field (#87)
- node-sass is no longer supported.
- Since the use of
/
as a division operator is deprecated and warned by dart sass, all divide operations in sass stylesheets were rewritten with dart sass'smath.div()
function. As a result, the .scss files are no longer able to be compiled with node-sass. - Please replace your project's node-sass dependency with sass.
- Since the use of
- Edge Legacy (non-Chromium Edge) is no longer supported.
- Since Microsoft no longer supports it already and its market share is lower than IE, I decided not to add fallback code for Shadow DOM API.
- If your program needs to support Edge Legacy, please use Web Components polyfill.
- Date picker element is now inserted after the associated input element by default.
- The default value of the
container
option is changed tonull
. - If your program has the input element inside an element styled with
overflow
other thanvisible
and the element doesn't have enough space, the picker will be clipped. - If you need the previous version's behavior to avoid it, please set
'body'
to the container option, - The purpose of this change is to make z-index adjustment in cases like #50 basically unneeded.
- This change doesn't apply for inline picker.
- The default value of the
- Add Bootstrap 5 support (#37, #73)
- Add Web Components support (#83)
container
option now accepts HTMLElement instance.
- Fix #56 —
minDate
/maxDate
aren't set to the start/end of month/year when pickLevel > 0 and either format or passed date string doesn't contain the date part.- The same fix is applied to
datesDisabled
as well
- The same fix is applied to
- Fix — picker doesn't hide on unfocus if a date outside the minDate/maxDate range is entered to the input field.
- Fix —
disableTouchKeyboard
doesn't work - Fix — picker doesn't hide on click outside after input is unfocused by closing mobile keyboard (maybe related to #72?)
- Fix — picker is placed incorrectly when container is user-specified element. (related to #81)
- Change the default placement of
orientation: 'auto'
to bottom-left (#54, #82) - Replace out-of-date dev dependencies: node-sass, uglyfy-es → dart-sass, terser (#76)
- Deprecate
disableTouchKeyboard
option. (#78) - Change the way to Keep input element focused when clicking picker in order to prevent flicker (#85)
- The change also adds capability for users to extend the picker (see #4 in this comment - Thank you, @xdev1)
- Remove keydown event cancellation except arrow keys' preventDefault (#88)
- Apply the bootstrap-datepicker's locale updates
- Revise container's functionality
- Not used internally for position calculation, only for users to control stacking context.
- No changes for inline picker
- Change
datepicer.show()
to move the focus to the input field if it's not focused- Fix #52 — picker shown by calling show() doesn't hide by clicking outside
- Fix #51 - TypeError occurs when initial dates are set in the input filed in multidate mode
- Fix #48 — inline picker submits form by click on prev/next buttons
- Fix — date with the name of 30-day month is parsed incorrectly if the current date is the 31st
- Fix #46 — date range picker cannot be created when using datepicker-full.min.js
- Fix #45 - onClickOutside listener calls unfocus() when the input field is not focused
- Add
updateOnBlur
option (#13) - Add
showOnClick
option (#21)- Along with this, picker element's click handler is changed to keep the focus on input field after auto-hiding on date selection
- Add
pickLevel
option (#22, #23)- minView feature + comprehensive control on date picking level that works with edit on input field and
setDate()
call as well
- minView feature + comprehensive control on date picking level that works with edit on input field and
- Add optional
forceRender
argument torefresh()
API - Add
setDates()
API to DateRangePicker (#27) - Add support for package entry points
- Fix #33 — the view doesn't go back to the days view after changing the selection by other than mouse operation
- Change the edit mode so that it no longer discards unparsed changes when exiting
- Add shift + arrow key to the key patterns to enter the edit mode
- Make range highlight between range-start and -end available on all views as well as the days view
- Revise the cross reference between DateRangePicker and Datepicker instances to make it securely usable in custom event handler, etc.
- Improve readability of selected date in previous/next month area in the calendar
- Fix #24 — change event was fired inappropriately through setDate() API call
- Fix #11, #17, #19 — calendar wasn't redrawn properly in some conditions
- Fix #3 — keyboard showed up by clicking on a calendar element when disableTouchKeyboard = true
- Add stylesheet for Foundation
- Add support for importing js by package name (For rollup, webpack)
First release