primereact 8.0.0-rc.1 → 8.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/accordion/accordion.cjs.js +1 -1
- package/accordion/accordion.cjs.min.js +1 -1
- package/accordion/accordion.d.ts +2 -0
- package/accordion/accordion.esm.js +1 -1
- package/accordion/accordion.esm.min.js +1 -1
- package/accordion/accordion.js +1 -1
- package/accordion/accordion.min.js +1 -1
- package/api/api.cjs.js +2 -5
- package/api/api.cjs.min.js +1 -1
- package/api/api.esm.js +2 -5
- package/api/api.esm.min.js +1 -1
- package/api/api.js +2 -5
- package/api/api.min.js +1 -1
- package/autocomplete/autocomplete.cjs.js +5 -0
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.d.ts +2 -1
- package/autocomplete/autocomplete.esm.js +5 -0
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +5 -0
- package/autocomplete/autocomplete.min.js +1 -1
- package/avatar/avatar.d.ts +1 -0
- package/avatargroup/avatargroup.d.ts +1 -0
- package/badge/badge.d.ts +1 -0
- package/blockui/blockui.d.ts +1 -0
- package/breadcrumb/breadcrumb.cjs.js +7 -5
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.d.ts +1 -0
- package/breadcrumb/breadcrumb.esm.js +8 -6
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +7 -5
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/button/button.cjs.js +3 -1
- package/button/button.cjs.min.js +1 -1
- package/button/button.d.ts +1 -0
- package/button/button.esm.js +3 -1
- package/button/button.esm.min.js +1 -1
- package/button/button.js +3 -1
- package/button/button.min.js +1 -1
- package/calendar/calendar.cjs.js +314 -151
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.d.ts +8 -0
- package/calendar/calendar.esm.js +314 -151
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +315 -152
- package/calendar/calendar.min.css +1 -1
- package/calendar/calendar.min.js +1 -1
- package/captcha/captcha.d.ts +1 -0
- package/card/card.d.ts +1 -0
- package/carousel/carousel.d.ts +1 -0
- package/cascadeselect/cascadeselect.d.ts +4 -2
- package/chart/chart.d.ts +1 -0
- package/checkbox/checkbox.cjs.js +5 -13
- package/checkbox/checkbox.cjs.min.js +1 -1
- package/checkbox/checkbox.d.ts +2 -2
- package/checkbox/checkbox.esm.js +5 -13
- package/checkbox/checkbox.esm.min.js +1 -1
- package/checkbox/checkbox.js +5 -13
- package/checkbox/checkbox.min.js +1 -1
- package/chip/chip.d.ts +1 -0
- package/chips/chips.d.ts +1 -0
- package/colorpicker/colorpicker.d.ts +1 -0
- package/column/column.d.ts +2 -1
- package/columngroup/columngroup.d.ts +3 -1
- package/common/common.min.css +1 -1
- package/confirmdialog/confirmdialog.cjs.js +2 -2
- package/confirmdialog/confirmdialog.d.ts +1 -0
- package/confirmdialog/confirmdialog.esm.js +2 -2
- package/confirmdialog/confirmdialog.js +2 -2
- package/confirmpopup/confirmpopup.cjs.js +2 -2
- package/confirmpopup/confirmpopup.d.ts +1 -0
- package/confirmpopup/confirmpopup.esm.js +2 -2
- package/confirmpopup/confirmpopup.js +2 -2
- package/contextmenu/contextmenu.cjs.js +6 -2
- package/contextmenu/contextmenu.cjs.min.js +1 -1
- package/contextmenu/contextmenu.d.ts +1 -0
- package/contextmenu/contextmenu.esm.js +7 -3
- package/contextmenu/contextmenu.esm.min.js +1 -1
- package/contextmenu/contextmenu.js +6 -2
- package/contextmenu/contextmenu.min.js +1 -1
- package/core/core.js +197 -134
- package/core/core.min.js +9 -9
- package/datascroller/datascroller.d.ts +1 -0
- package/datatable/datatable.cjs.js +4 -4
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.d.ts +2 -1
- package/datatable/datatable.esm.js +4 -4
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +4 -4
- package/datatable/datatable.min.js +1 -1
- package/dataview/dataview.d.ts +2 -0
- package/deferredcontent/deferredcontent.d.ts +1 -0
- package/dialog/dialog.d.ts +1 -0
- package/divider/divider.d.ts +1 -0
- package/dock/dock.cjs.js +5 -3
- package/dock/dock.cjs.min.js +1 -1
- package/dock/dock.d.ts +1 -0
- package/dock/dock.esm.js +6 -4
- package/dock/dock.esm.min.js +1 -1
- package/dock/dock.js +5 -3
- package/dock/dock.min.js +1 -1
- package/dropdown/dropdown.cjs.js +2 -6
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.d.ts +4 -2
- package/dropdown/dropdown.esm.js +2 -6
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +2 -6
- package/dropdown/dropdown.min.js +1 -1
- package/editor/editor.d.ts +1 -0
- package/fieldset/fieldset.d.ts +1 -0
- package/fileupload/fileupload.d.ts +2 -1
- package/fullcalendar/fullcalendar.d.ts +1 -0
- package/galleria/galleria.d.ts +1 -0
- package/gmap/gmap.cjs.js +27 -12
- package/gmap/gmap.cjs.min.js +1 -1
- package/gmap/gmap.d.ts +1 -0
- package/gmap/gmap.esm.js +27 -12
- package/gmap/gmap.esm.min.js +1 -1
- package/gmap/gmap.js +27 -12
- package/gmap/gmap.min.js +1 -1
- package/image/image.d.ts +1 -0
- package/inplace/inplace.d.ts +7 -2
- package/inputmask/inputmask.cjs.js +2 -0
- package/inputmask/inputmask.cjs.min.js +1 -1
- package/inputmask/inputmask.d.ts +1 -0
- package/inputmask/inputmask.esm.js +2 -0
- package/inputmask/inputmask.esm.min.js +1 -1
- package/inputmask/inputmask.js +2 -0
- package/inputmask/inputmask.min.js +1 -1
- package/inputnumber/inputnumber.cjs.js +8 -5
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.d.ts +1 -0
- package/inputnumber/inputnumber.esm.js +8 -5
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +8 -5
- package/inputnumber/inputnumber.min.js +1 -1
- package/inputswitch/inputswitch.cjs.js +7 -10
- package/inputswitch/inputswitch.cjs.min.js +1 -1
- package/inputswitch/inputswitch.d.ts +2 -1
- package/inputswitch/inputswitch.esm.js +7 -10
- package/inputswitch/inputswitch.esm.min.js +1 -1
- package/inputswitch/inputswitch.js +7 -10
- package/inputswitch/inputswitch.min.js +1 -1
- package/inputtext/inputtext.cjs.js +12 -2
- package/inputtext/inputtext.cjs.min.js +1 -1
- package/inputtext/inputtext.d.ts +1 -0
- package/inputtext/inputtext.esm.js +12 -2
- package/inputtext/inputtext.esm.min.js +1 -1
- package/inputtext/inputtext.js +12 -2
- package/inputtext/inputtext.min.js +1 -1
- package/inputtextarea/inputtextarea.d.ts +1 -0
- package/keyfilter/keyfilter.cjs.js +54 -1
- package/keyfilter/keyfilter.cjs.min.js +1 -1
- package/keyfilter/keyfilter.esm.js +54 -1
- package/keyfilter/keyfilter.esm.min.js +1 -1
- package/keyfilter/keyfilter.js +146 -93
- package/keyfilter/keyfilter.min.js +1 -1
- package/knob/knob.d.ts +1 -0
- package/listbox/listbox.d.ts +4 -2
- package/megamenu/megamenu.cjs.js +8 -5
- package/megamenu/megamenu.cjs.min.js +1 -1
- package/megamenu/megamenu.d.ts +1 -0
- package/megamenu/megamenu.esm.js +9 -6
- package/megamenu/megamenu.esm.min.js +1 -1
- package/megamenu/megamenu.js +8 -5
- package/megamenu/megamenu.min.js +1 -1
- package/mention/mention.d.ts +1 -0
- package/menu/menu.cjs.js +4 -2
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.d.ts +1 -0
- package/menu/menu.esm.js +5 -3
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +4 -2
- package/menu/menu.min.js +1 -1
- package/menubar/menubar.cjs.js +6 -2
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.d.ts +1 -0
- package/menubar/menubar.esm.js +7 -3
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +6 -2
- package/menubar/menubar.min.js +1 -1
- package/menuitem/menuitem.d.ts +0 -2
- package/message/message.d.ts +1 -0
- package/messages/messages.d.ts +1 -0
- package/multiselect/multiselect.cjs.js +5 -13
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.d.ts +4 -2
- package/multiselect/multiselect.esm.js +5 -13
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +5 -13
- package/multiselect/multiselect.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.d.ts +1 -0
- package/orderlist/orderlist.d.ts +1 -0
- package/organizationchart/organizationchart.d.ts +1 -0
- package/overlaypanel/overlaypanel.d.ts +1 -0
- package/package.json +3 -2
- package/paginator/paginator.cjs.js +11 -5
- package/paginator/paginator.d.ts +1 -0
- package/paginator/paginator.esm.js +11 -5
- package/paginator/paginator.js +11 -5
- package/panel/panel.d.ts +1 -0
- package/panelmenu/panelmenu.cjs.js +12 -6
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.d.ts +1 -0
- package/panelmenu/panelmenu.esm.js +13 -7
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +12 -6
- package/panelmenu/panelmenu.min.js +1 -1
- package/password/password.d.ts +1 -0
- package/picklist/picklist.d.ts +1 -0
- package/primereact.all.cjs.js +506 -257
- package/primereact.all.cjs.min.js +1 -1
- package/primereact.all.esm.js +506 -257
- package/primereact.all.esm.min.js +1 -1
- package/primereact.all.js +506 -257
- package/primereact.all.min.js +1 -1
- package/progressbar/progressbar.d.ts +1 -0
- package/progressspinner/progressspinner.d.ts +2 -1
- package/radiobutton/radiobutton.d.ts +2 -1
- package/rating/rating.d.ts +1 -0
- package/resources/primereact.css +165 -140
- package/resources/primereact.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +51 -13
- package/resources/themes/arya-green/theme.css +51 -13
- package/resources/themes/arya-orange/theme.css +51 -13
- package/resources/themes/arya-purple/theme.css +51 -13
- package/resources/themes/bootstrap4-dark-blue/theme.css +51 -13
- package/resources/themes/bootstrap4-dark-purple/theme.css +51 -13
- package/resources/themes/bootstrap4-light-blue/theme.css +51 -13
- package/resources/themes/bootstrap4-light-purple/theme.css +51 -13
- package/resources/themes/fluent-light/theme.css +51 -13
- package/resources/themes/lara-dark-blue/theme.css +51 -13
- package/resources/themes/lara-dark-indigo/theme.css +51 -13
- package/resources/themes/lara-dark-purple/theme.css +51 -13
- package/resources/themes/lara-dark-teal/theme.css +51 -13
- package/resources/themes/lara-light-blue/theme.css +51 -13
- package/resources/themes/lara-light-indigo/theme.css +51 -13
- package/resources/themes/lara-light-purple/theme.css +51 -13
- package/resources/themes/lara-light-teal/theme.css +51 -13
- package/resources/themes/luna-amber/theme.css +51 -13
- package/resources/themes/luna-blue/theme.css +51 -13
- package/resources/themes/luna-green/theme.css +51 -13
- package/resources/themes/luna-pink/theme.css +51 -13
- package/resources/themes/md-dark-deeppurple/theme.css +54 -13
- package/resources/themes/md-dark-indigo/theme.css +54 -13
- package/resources/themes/md-light-deeppurple/theme.css +54 -13
- package/resources/themes/md-light-indigo/theme.css +54 -13
- package/resources/themes/mdc-dark-deeppurple/theme.css +54 -13
- package/resources/themes/mdc-dark-indigo/theme.css +54 -13
- package/resources/themes/mdc-light-deeppurple/theme.css +54 -13
- package/resources/themes/mdc-light-indigo/theme.css +54 -13
- package/resources/themes/nova/theme.css +51 -13
- package/resources/themes/nova-accent/theme.css +51 -13
- package/resources/themes/nova-alt/theme.css +51 -13
- package/resources/themes/rhea/theme.css +51 -13
- package/resources/themes/saga-blue/theme.css +51 -13
- package/resources/themes/saga-green/theme.css +51 -13
- package/resources/themes/saga-orange/theme.css +51 -13
- package/resources/themes/saga-purple/theme.css +51 -13
- package/resources/themes/tailwind-light/theme.css +50 -12
- package/resources/themes/vela-blue/theme.css +51 -13
- package/resources/themes/vela-green/theme.css +51 -13
- package/resources/themes/vela-orange/theme.css +51 -13
- package/resources/themes/vela-purple/theme.css +51 -13
- package/ripple/ripple.cjs.js +1 -0
- package/ripple/ripple.cjs.min.js +1 -1
- package/ripple/ripple.d.ts +3 -1
- package/ripple/ripple.esm.js +1 -0
- package/ripple/ripple.esm.min.js +1 -1
- package/ripple/ripple.js +1 -0
- package/ripple/ripple.min.js +1 -1
- package/row/row.d.ts +1 -0
- package/scrollpanel/scrollpanel.d.ts +1 -0
- package/scrolltop/scrolltop.d.ts +1 -0
- package/selectbutton/selectbutton.d.ts +4 -2
- package/selectitem/selectitem.d.ts +2 -0
- package/sidebar/sidebar.d.ts +1 -0
- package/skeleton/skeleton.d.ts +1 -0
- package/slidemenu/slidemenu.cjs.js +6 -2
- package/slidemenu/slidemenu.cjs.min.js +1 -1
- package/slidemenu/slidemenu.d.ts +1 -0
- package/slidemenu/slidemenu.esm.js +7 -3
- package/slidemenu/slidemenu.esm.min.js +1 -1
- package/slidemenu/slidemenu.js +6 -2
- package/slidemenu/slidemenu.min.js +1 -1
- package/slider/slider.d.ts +1 -0
- package/speeddial/speeddial.cjs.js +10 -5
- package/speeddial/speeddial.cjs.min.js +1 -1
- package/speeddial/speeddial.d.ts +1 -0
- package/speeddial/speeddial.esm.js +11 -6
- package/speeddial/speeddial.esm.min.js +1 -1
- package/speeddial/speeddial.js +10 -5
- package/speeddial/speeddial.min.js +1 -1
- package/splitbutton/splitbutton.cjs.js +5 -3
- package/splitbutton/splitbutton.cjs.min.js +1 -1
- package/splitbutton/splitbutton.d.ts +1 -0
- package/splitbutton/splitbutton.esm.js +6 -4
- package/splitbutton/splitbutton.esm.min.js +1 -1
- package/splitbutton/splitbutton.js +5 -3
- package/splitbutton/splitbutton.min.js +1 -1
- package/splitter/splitter.d.ts +2 -0
- package/steps/steps.cjs.js +8 -1
- package/steps/steps.cjs.min.js +1 -1
- package/steps/steps.d.ts +1 -0
- package/steps/steps.esm.js +9 -2
- package/steps/steps.esm.min.js +1 -1
- package/steps/steps.js +8 -1
- package/steps/steps.min.js +1 -1
- package/styleclass/styleclass.d.ts +1 -0
- package/tabmenu/tabmenu.cjs.js +4 -3
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.d.ts +1 -0
- package/tabmenu/tabmenu.esm.js +5 -4
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +4 -3
- package/tabmenu/tabmenu.min.js +1 -1
- package/tabview/tabview.d.ts +2 -0
- package/tag/tag.d.ts +1 -0
- package/terminal/terminal.d.ts +1 -0
- package/tieredmenu/tieredmenu.cjs.js +6 -3
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.d.ts +1 -0
- package/tieredmenu/tieredmenu.esm.js +7 -4
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +6 -3
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/timeline/timeline.d.ts +1 -0
- package/toast/toast.d.ts +1 -0
- package/togglebutton/togglebutton.d.ts +1 -0
- package/toolbar/toolbar.d.ts +1 -0
- package/tooltip/tooltip.d.ts +1 -0
- package/tree/tree.d.ts +1 -0
- package/treeselect/treeselect.cjs.js +0 -1
- package/treeselect/treeselect.cjs.min.js +1 -1
- package/treeselect/treeselect.d.ts +2 -1
- package/treeselect/treeselect.esm.js +0 -1
- package/treeselect/treeselect.esm.min.js +1 -1
- package/treeselect/treeselect.js +0 -1
- package/treeselect/treeselect.min.js +1 -1
- package/treetable/treetable.d.ts +2 -1
- package/tristatecheckbox/tristatecheckbox.d.ts +1 -0
- package/utils/utils.cjs.js +11 -8
- package/utils/utils.cjs.min.js +1 -1
- package/utils/utils.esm.js +11 -8
- package/utils/utils.esm.min.js +1 -1
- package/utils/utils.js +11 -8
- package/utils/utils.min.js +1 -1
- package/virtualscroller/virtualscroller.d.ts +1 -0
- package/web-types.json +7 -13
package/calendar/calendar.esm.js
CHANGED
|
@@ -4,8 +4,8 @@ import { Button } from 'primereact/button';
|
|
|
4
4
|
import { usePrevious, useOverlayListener, useMountEffect, useUpdateEffect, useUnmountEffect } from 'primereact/hooks';
|
|
5
5
|
import { InputText } from 'primereact/inputtext';
|
|
6
6
|
import { OverlayService } from 'primereact/overlayservice';
|
|
7
|
+
import { UniqueComponentId, DomHandler, ObjectUtils, mask, ZIndexUtils, classNames } from 'primereact/utils';
|
|
7
8
|
import { Ripple } from 'primereact/ripple';
|
|
8
|
-
import { DomHandler, ObjectUtils, mask, ZIndexUtils, classNames } from 'primereact/utils';
|
|
9
9
|
import { CSSTransition } from 'primereact/csstransition';
|
|
10
10
|
import { Portal } from 'primereact/portal';
|
|
11
11
|
|
|
@@ -45,11 +45,17 @@ function _extends() {
|
|
|
45
45
|
function _typeof(obj) {
|
|
46
46
|
"@babel/helpers - typeof";
|
|
47
47
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
48
|
+
if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
|
|
49
|
+
_typeof = function _typeof(obj) {
|
|
50
|
+
return typeof obj;
|
|
51
|
+
};
|
|
52
|
+
} else {
|
|
53
|
+
_typeof = function _typeof(obj) {
|
|
54
|
+
return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return _typeof(obj);
|
|
53
59
|
}
|
|
54
60
|
|
|
55
61
|
function _arrayLikeToArray$1(arr, len) {
|
|
@@ -197,8 +203,30 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
197
203
|
var overlayEventListener = React.useRef(null);
|
|
198
204
|
var touchUIMaskClickListener = React.useRef(null);
|
|
199
205
|
var isOverlayClicked = React.useRef(false);
|
|
206
|
+
|
|
207
|
+
var _React$useState7 = React.useState('date'),
|
|
208
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
209
|
+
currentView = _React$useState8[0],
|
|
210
|
+
setCurrentView = _React$useState8[1];
|
|
211
|
+
|
|
212
|
+
var _React$useState9 = React.useState(null),
|
|
213
|
+
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
214
|
+
currentMonth = _React$useState10[0],
|
|
215
|
+
setCurrentMonth = _React$useState10[1];
|
|
216
|
+
|
|
217
|
+
var _React$useState11 = React.useState(null),
|
|
218
|
+
_React$useState12 = _slicedToArray(_React$useState11, 2),
|
|
219
|
+
currentYear = _React$useState12[0],
|
|
220
|
+
setCurrentYear = _React$useState12[1];
|
|
221
|
+
|
|
222
|
+
var _React$useState13 = React.useState([]),
|
|
223
|
+
_React$useState14 = _slicedToArray(_React$useState13, 2),
|
|
224
|
+
yearOptions = _React$useState14[0],
|
|
225
|
+
setYearOptions = _React$useState14[1];
|
|
226
|
+
|
|
200
227
|
var previousValue = usePrevious(props.value);
|
|
201
228
|
var visible = props.inline || (props.onVisibleChange ? props.visible : overlayVisibleState);
|
|
229
|
+
var attributeSelector = UniqueComponentId();
|
|
202
230
|
|
|
203
231
|
var _useOverlayListener = useOverlayListener({
|
|
204
232
|
target: elementRef,
|
|
@@ -374,7 +402,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
374
402
|
if (navigation.current) {
|
|
375
403
|
if (navigation.current.button) {
|
|
376
404
|
initFocusableCell();
|
|
377
|
-
if (navigation.backward) DomHandler.findSingle(overlayRef.current, '.p-datepicker-prev').focus();else DomHandler.findSingle(overlayRef.current, '.p-datepicker-next').focus();
|
|
405
|
+
if (navigation.current.backward) DomHandler.findSingle(overlayRef.current, '.p-datepicker-prev').focus();else DomHandler.findSingle(overlayRef.current, '.p-datepicker-next').focus();
|
|
378
406
|
} else {
|
|
379
407
|
var cell;
|
|
380
408
|
|
|
@@ -430,16 +458,22 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
430
458
|
var newViewDate = new Date(getViewDate().getTime());
|
|
431
459
|
newViewDate.setDate(1);
|
|
432
460
|
|
|
433
|
-
if (
|
|
461
|
+
if (currentView === 'date') {
|
|
434
462
|
if (newViewDate.getMonth() === 0) {
|
|
435
463
|
newViewDate.setMonth(11);
|
|
436
464
|
newViewDate.setFullYear(newViewDate.getFullYear() - 1);
|
|
465
|
+
setCurrentMonth(11);
|
|
466
|
+
decrementYear();
|
|
437
467
|
} else {
|
|
438
468
|
newViewDate.setMonth(newViewDate.getMonth() - 1);
|
|
469
|
+
setCurrentMonth(function (prevState) {
|
|
470
|
+
return prevState - 1;
|
|
471
|
+
});
|
|
439
472
|
}
|
|
440
|
-
} else if (
|
|
441
|
-
var
|
|
442
|
-
|
|
473
|
+
} else if (currentView === 'month') {
|
|
474
|
+
var _currentYear2 = newViewDate.getFullYear();
|
|
475
|
+
|
|
476
|
+
var newYear = _currentYear2 - 1;
|
|
443
477
|
|
|
444
478
|
if (props.yearNavigator) {
|
|
445
479
|
var minYear = parseInt(props.yearRange.split(':')[0], 10);
|
|
@@ -452,6 +486,12 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
452
486
|
newViewDate.setFullYear(newYear);
|
|
453
487
|
}
|
|
454
488
|
|
|
489
|
+
if (currentView === 'month') {
|
|
490
|
+
decrementYear();
|
|
491
|
+
} else if (currentView === 'year') {
|
|
492
|
+
decrementDecade();
|
|
493
|
+
}
|
|
494
|
+
|
|
455
495
|
updateViewDate(event, newViewDate);
|
|
456
496
|
event.preventDefault();
|
|
457
497
|
};
|
|
@@ -465,16 +505,22 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
465
505
|
var newViewDate = new Date(getViewDate().getTime());
|
|
466
506
|
newViewDate.setDate(1);
|
|
467
507
|
|
|
468
|
-
if (
|
|
508
|
+
if (currentView === 'date') {
|
|
469
509
|
if (newViewDate.getMonth() === 11) {
|
|
470
510
|
newViewDate.setMonth(0);
|
|
471
511
|
newViewDate.setFullYear(newViewDate.getFullYear() + 1);
|
|
512
|
+
setCurrentMonth(0);
|
|
513
|
+
incrementYear();
|
|
472
514
|
} else {
|
|
473
515
|
newViewDate.setMonth(newViewDate.getMonth() + 1);
|
|
516
|
+
setCurrentMonth(function (prevState) {
|
|
517
|
+
return prevState + 1;
|
|
518
|
+
});
|
|
474
519
|
}
|
|
475
|
-
} else if (
|
|
476
|
-
var
|
|
477
|
-
|
|
520
|
+
} else if (currentView === 'month') {
|
|
521
|
+
var _currentYear3 = newViewDate.getFullYear();
|
|
522
|
+
|
|
523
|
+
var newYear = _currentYear3 + 1;
|
|
478
524
|
|
|
479
525
|
if (props.yearNavigator) {
|
|
480
526
|
var maxYear = parseInt(props.yearRange.split(':')[1], 10);
|
|
@@ -487,10 +533,48 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
487
533
|
newViewDate.setFullYear(newYear);
|
|
488
534
|
}
|
|
489
535
|
|
|
536
|
+
if (currentView === 'month') {
|
|
537
|
+
incrementYear();
|
|
538
|
+
} else if (currentView === 'year') {
|
|
539
|
+
incrementDecade();
|
|
540
|
+
}
|
|
541
|
+
|
|
490
542
|
updateViewDate(event, newViewDate);
|
|
491
543
|
event.preventDefault();
|
|
492
544
|
};
|
|
493
545
|
|
|
546
|
+
var populateYearOptions = function populateYearOptions(start, end) {
|
|
547
|
+
var _yearOptions = [];
|
|
548
|
+
|
|
549
|
+
for (var i = start; i <= end; i++) {
|
|
550
|
+
yearOptions.push(i);
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
setYearOptions(_yearOptions);
|
|
554
|
+
};
|
|
555
|
+
|
|
556
|
+
var decrementYear = function decrementYear() {
|
|
557
|
+
var _currentYear = currentYear - 1;
|
|
558
|
+
|
|
559
|
+
setCurrentYear(_currentYear);
|
|
560
|
+
|
|
561
|
+
if (props.yearNavigator && _currentYear < yearOptions[0]) {
|
|
562
|
+
var difference = yearOptions[yearOptions.length - 1] - yearOptions[0];
|
|
563
|
+
populateYearOptions(yearOptions[0] - difference, yearOptions[yearOptions.length - 1] - difference);
|
|
564
|
+
}
|
|
565
|
+
};
|
|
566
|
+
|
|
567
|
+
var incrementYear = function incrementYear() {
|
|
568
|
+
var _currentYear = currentYear + 1;
|
|
569
|
+
|
|
570
|
+
setCurrentYear(_currentYear);
|
|
571
|
+
|
|
572
|
+
if (props.yearNavigator && _currentYear.current > yearOptions[yearOptions.length - 1]) {
|
|
573
|
+
var difference = yearOptions[yearOptions.length - 1] - yearOptions[0];
|
|
574
|
+
populateYearOptions(yearOptions[0] + difference, yearOptions[yearOptions.length - 1] + difference);
|
|
575
|
+
}
|
|
576
|
+
};
|
|
577
|
+
|
|
494
578
|
var onMonthDropdownChange = function onMonthDropdownChange(event, value) {
|
|
495
579
|
var currentViewDate = getViewDate();
|
|
496
580
|
var newViewDate = new Date(currentViewDate.getTime());
|
|
@@ -1187,84 +1271,6 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1187
1271
|
}
|
|
1188
1272
|
};
|
|
1189
1273
|
|
|
1190
|
-
var onMonthCellKeydown = function onMonthCellKeydown(event, index) {
|
|
1191
|
-
var cell = event.currentTarget;
|
|
1192
|
-
|
|
1193
|
-
switch (event.which) {
|
|
1194
|
-
//arrows
|
|
1195
|
-
case 38:
|
|
1196
|
-
case 40:
|
|
1197
|
-
{
|
|
1198
|
-
cell.tabIndex = '-1';
|
|
1199
|
-
var cells = cell.parentElement.children;
|
|
1200
|
-
var cellIndex = DomHandler.index(cell);
|
|
1201
|
-
var nextCell = cells[event.which === 40 ? cellIndex + 3 : cellIndex - 3];
|
|
1202
|
-
|
|
1203
|
-
if (nextCell) {
|
|
1204
|
-
nextCell.tabIndex = '0';
|
|
1205
|
-
nextCell.focus();
|
|
1206
|
-
}
|
|
1207
|
-
|
|
1208
|
-
event.preventDefault();
|
|
1209
|
-
break;
|
|
1210
|
-
}
|
|
1211
|
-
//left arrow
|
|
1212
|
-
|
|
1213
|
-
case 37:
|
|
1214
|
-
{
|
|
1215
|
-
cell.tabIndex = '-1';
|
|
1216
|
-
var prevCell = cell.previousElementSibling;
|
|
1217
|
-
|
|
1218
|
-
if (prevCell) {
|
|
1219
|
-
prevCell.tabIndex = '0';
|
|
1220
|
-
prevCell.focus();
|
|
1221
|
-
}
|
|
1222
|
-
|
|
1223
|
-
event.preventDefault();
|
|
1224
|
-
break;
|
|
1225
|
-
}
|
|
1226
|
-
//right arrow
|
|
1227
|
-
|
|
1228
|
-
case 39:
|
|
1229
|
-
{
|
|
1230
|
-
cell.tabIndex = '-1';
|
|
1231
|
-
var _nextCell = cell.nextElementSibling;
|
|
1232
|
-
|
|
1233
|
-
if (_nextCell) {
|
|
1234
|
-
_nextCell.tabIndex = '0';
|
|
1235
|
-
|
|
1236
|
-
_nextCell.focus();
|
|
1237
|
-
}
|
|
1238
|
-
|
|
1239
|
-
event.preventDefault();
|
|
1240
|
-
break;
|
|
1241
|
-
}
|
|
1242
|
-
//enter
|
|
1243
|
-
|
|
1244
|
-
case 13:
|
|
1245
|
-
{
|
|
1246
|
-
onMonthSelect(event, index);
|
|
1247
|
-
event.preventDefault();
|
|
1248
|
-
break;
|
|
1249
|
-
}
|
|
1250
|
-
//escape
|
|
1251
|
-
|
|
1252
|
-
case 27:
|
|
1253
|
-
{
|
|
1254
|
-
hide(null, reFocusInputField);
|
|
1255
|
-
event.preventDefault();
|
|
1256
|
-
break;
|
|
1257
|
-
}
|
|
1258
|
-
//tab
|
|
1259
|
-
|
|
1260
|
-
case 9:
|
|
1261
|
-
{
|
|
1262
|
-
trapFocus(event);
|
|
1263
|
-
break;
|
|
1264
|
-
}
|
|
1265
|
-
}
|
|
1266
|
-
};
|
|
1267
|
-
|
|
1268
1274
|
var onDateSelect = function onDateSelect(event, dateMeta, timeMeta) {
|
|
1269
1275
|
if (props.disabled || !dateMeta.selectable) {
|
|
1270
1276
|
event.preventDefault();
|
|
@@ -1382,16 +1388,70 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1382
1388
|
updateInputfield(selectedValues);
|
|
1383
1389
|
};
|
|
1384
1390
|
|
|
1385
|
-
var
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
+
var decrementDecade = function decrementDecade() {
|
|
1392
|
+
setCurrentYear(function (prevState) {
|
|
1393
|
+
return prevState - 10;
|
|
1394
|
+
});
|
|
1395
|
+
};
|
|
1396
|
+
|
|
1397
|
+
var incrementDecade = function incrementDecade() {
|
|
1398
|
+
setCurrentYear(function (prevState) {
|
|
1399
|
+
return prevState + 10;
|
|
1391
1400
|
});
|
|
1401
|
+
};
|
|
1402
|
+
|
|
1403
|
+
var switchToMonthView = function switchToMonthView(event) {
|
|
1404
|
+
setCurrentView('month');
|
|
1405
|
+
event.preventDefault();
|
|
1406
|
+
};
|
|
1407
|
+
|
|
1408
|
+
var switchToYearView = function switchToYearView(event) {
|
|
1409
|
+
setCurrentView('year');
|
|
1392
1410
|
event.preventDefault();
|
|
1393
1411
|
};
|
|
1394
1412
|
|
|
1413
|
+
var onMonthSelect = function onMonthSelect(event, month) {
|
|
1414
|
+
if (props.view === 'month') {
|
|
1415
|
+
onDateSelect(event, {
|
|
1416
|
+
year: currentYear,
|
|
1417
|
+
month: month,
|
|
1418
|
+
day: 1,
|
|
1419
|
+
selectable: true
|
|
1420
|
+
});
|
|
1421
|
+
event.preventDefault();
|
|
1422
|
+
} else {
|
|
1423
|
+
setCurrentMonth(month);
|
|
1424
|
+
createMonthsMeta(month, currentYear);
|
|
1425
|
+
var currentDate = new Date(getCurrentDateTime().getTime());
|
|
1426
|
+
currentDate.setMonth(month);
|
|
1427
|
+
currentDate.setYear(currentYear);
|
|
1428
|
+
setViewDateState(currentDate);
|
|
1429
|
+
setCurrentView('date');
|
|
1430
|
+
props.onMonthChange && props.onMonthChange({
|
|
1431
|
+
month: month + 1,
|
|
1432
|
+
year: currentYear
|
|
1433
|
+
});
|
|
1434
|
+
}
|
|
1435
|
+
};
|
|
1436
|
+
|
|
1437
|
+
var onYearSelect = function onYearSelect(event, year) {
|
|
1438
|
+
if (props.view === 'year') {
|
|
1439
|
+
onDateSelect(event, {
|
|
1440
|
+
year: year,
|
|
1441
|
+
month: 0,
|
|
1442
|
+
day: 1,
|
|
1443
|
+
selectable: true
|
|
1444
|
+
});
|
|
1445
|
+
} else {
|
|
1446
|
+
setCurrentYear(year);
|
|
1447
|
+
setCurrentView('month');
|
|
1448
|
+
props.onMonthChange && props.onMonthChange({
|
|
1449
|
+
month: currentMonth + 1,
|
|
1450
|
+
year: year
|
|
1451
|
+
});
|
|
1452
|
+
}
|
|
1453
|
+
};
|
|
1454
|
+
|
|
1395
1455
|
var updateModel = function updateModel(event, value) {
|
|
1396
1456
|
if (props.onChange) {
|
|
1397
1457
|
var newValue = value && value instanceof Date ? new Date(value.getTime()) : value;
|
|
@@ -1475,11 +1535,28 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1475
1535
|
props.onHide && props.onHide();
|
|
1476
1536
|
};
|
|
1477
1537
|
|
|
1538
|
+
var appendDisabled = function appendDisabled() {
|
|
1539
|
+
return props.appendTo === 'self' || props.inline;
|
|
1540
|
+
};
|
|
1541
|
+
|
|
1478
1542
|
var alignOverlay = function alignOverlay() {
|
|
1479
1543
|
if (props.touchUI) {
|
|
1480
1544
|
enableModality();
|
|
1481
|
-
} else {
|
|
1482
|
-
DomHandler.alignOverlay(overlayRef.current, inputRef.current
|
|
1545
|
+
} else if (overlayRef && overlayRef.current && inputRef && inputRef.current) {
|
|
1546
|
+
DomHandler.alignOverlay(overlayRef.current, inputRef.current, props.appendTo || PrimeReact.appendTo);
|
|
1547
|
+
|
|
1548
|
+
if (appendDisabled()) {
|
|
1549
|
+
DomHandler.relativePosition(overlayRef.current, inputRef.current);
|
|
1550
|
+
} else {
|
|
1551
|
+
if (currentView === 'date') {
|
|
1552
|
+
overlayRef.current.style.width = DomHandler.getOuterWidth(overlayRef.current) + 'px';
|
|
1553
|
+
overlayRef.current.style.minWidth = DomHandler.getOuterWidth(inputRef.current) + 'px';
|
|
1554
|
+
} else {
|
|
1555
|
+
overlayRef.current.style.width = DomHandler.getOuterWidth(inputRef.current) + 'px';
|
|
1556
|
+
}
|
|
1557
|
+
|
|
1558
|
+
DomHandler.absolutePosition(overlayRef.current, inputRef.current);
|
|
1559
|
+
}
|
|
1483
1560
|
}
|
|
1484
1561
|
};
|
|
1485
1562
|
|
|
@@ -1854,9 +1931,30 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1854
1931
|
}
|
|
1855
1932
|
};
|
|
1856
1933
|
|
|
1934
|
+
var isComparable = function isComparable() {
|
|
1935
|
+
return props.value != null && typeof props.value !== 'string';
|
|
1936
|
+
};
|
|
1937
|
+
|
|
1857
1938
|
var isMonthSelected = function isMonthSelected(month) {
|
|
1858
|
-
|
|
1859
|
-
|
|
1939
|
+
if (isComparable()) {
|
|
1940
|
+
var value = isRangeSelection() ? props.value[0] : props.value;
|
|
1941
|
+
return !isMultipleSelection() ? value.getMonth() === month && value.getFullYear() === currentYear : false;
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1944
|
+
return false;
|
|
1945
|
+
};
|
|
1946
|
+
|
|
1947
|
+
var isYearSelected = function isYearSelected(year) {
|
|
1948
|
+
if (isComparable()) {
|
|
1949
|
+
var value = isRangeSelection() ? props.value[0] : props.value;
|
|
1950
|
+
return !isMultipleSelection() && isComparable() ? value.getFullYear() === year : false;
|
|
1951
|
+
}
|
|
1952
|
+
|
|
1953
|
+
return false;
|
|
1954
|
+
};
|
|
1955
|
+
|
|
1956
|
+
var switchViewButtonDisabled = function switchViewButtonDisabled() {
|
|
1957
|
+
return props.numberOfMonths > 1 || props.disabled;
|
|
1860
1958
|
};
|
|
1861
1959
|
|
|
1862
1960
|
var isDateEquals = function isDateEquals(value, dateMeta) {
|
|
@@ -2416,9 +2514,20 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2416
2514
|
var viewDate = getViewDate(props.viewDate);
|
|
2417
2515
|
validateDate(viewDate);
|
|
2418
2516
|
setViewDateState(viewDate);
|
|
2517
|
+
setCurrentMonth(viewDate.getMonth());
|
|
2518
|
+
setCurrentYear(viewDate.getFullYear());
|
|
2519
|
+
setCurrentView(props.view);
|
|
2419
2520
|
|
|
2420
2521
|
if (props.inline) {
|
|
2421
|
-
|
|
2522
|
+
overlayRef && overlayRef.current.setAttribute(attributeSelector, '');
|
|
2523
|
+
|
|
2524
|
+
if (!props.disabled) {
|
|
2525
|
+
initFocusableCell();
|
|
2526
|
+
|
|
2527
|
+
if (props.numberOfMonths === 1) {
|
|
2528
|
+
overlayRef.current.style.width = DomHandler.getOuterWidth(overlayRef.current) + 'px';
|
|
2529
|
+
}
|
|
2530
|
+
}
|
|
2422
2531
|
} else if (props.mask) {
|
|
2423
2532
|
mask(inputRef.current, {
|
|
2424
2533
|
mask: props.mask,
|
|
@@ -2456,7 +2565,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2456
2565
|
}
|
|
2457
2566
|
}, [props.onViewDateChange, props.value]);
|
|
2458
2567
|
useUpdateEffect(function () {
|
|
2459
|
-
if (previousValue !== props.value && (!viewStateChanged
|
|
2568
|
+
if (previousValue !== props.value && (!viewStateChanged || !visible)) {
|
|
2460
2569
|
updateInputfield(props.value);
|
|
2461
2570
|
}
|
|
2462
2571
|
}, [props.value, visible]);
|
|
@@ -2497,7 +2606,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2497
2606
|
};
|
|
2498
2607
|
return /*#__PURE__*/React.createElement("button", _extends({
|
|
2499
2608
|
type: "button",
|
|
2500
|
-
className: "p-datepicker-prev
|
|
2609
|
+
className: "p-datepicker-prev"
|
|
2501
2610
|
}, navigatorProps), /*#__PURE__*/React.createElement("span", {
|
|
2502
2611
|
className: "p-datepicker-prev-icon pi pi-chevron-left"
|
|
2503
2612
|
}), /*#__PURE__*/React.createElement(Ripple, null));
|
|
@@ -2516,13 +2625,13 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2516
2625
|
};
|
|
2517
2626
|
return /*#__PURE__*/React.createElement("button", _extends({
|
|
2518
2627
|
type: "button",
|
|
2519
|
-
className: "p-datepicker-next
|
|
2628
|
+
className: "p-datepicker-next"
|
|
2520
2629
|
}, navigatorProps), /*#__PURE__*/React.createElement("span", {
|
|
2521
2630
|
className: "p-datepicker-next-icon pi pi-chevron-right"
|
|
2522
2631
|
}), /*#__PURE__*/React.createElement(Ripple, null));
|
|
2523
2632
|
};
|
|
2524
2633
|
|
|
2525
|
-
var createTitleMonthElement = function createTitleMonthElement(
|
|
2634
|
+
var createTitleMonthElement = function createTitleMonthElement() {
|
|
2526
2635
|
var monthNames = localeOption('monthNames', props.locale);
|
|
2527
2636
|
|
|
2528
2637
|
if (props.monthNavigator && props.view !== 'month') {
|
|
@@ -2570,25 +2679,28 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2570
2679
|
return _content;
|
|
2571
2680
|
}
|
|
2572
2681
|
|
|
2573
|
-
return /*#__PURE__*/React.createElement("
|
|
2574
|
-
className: "p-datepicker-month"
|
|
2575
|
-
|
|
2682
|
+
return currentView === 'date' && /*#__PURE__*/React.createElement("button", {
|
|
2683
|
+
className: "p-datepicker-month p-link",
|
|
2684
|
+
onClick: switchToMonthView,
|
|
2685
|
+
disabled: switchViewButtonDisabled()
|
|
2686
|
+
}, monthNames[currentMonth]);
|
|
2576
2687
|
};
|
|
2577
2688
|
|
|
2578
|
-
var createTitleYearElement = function createTitleYearElement(
|
|
2689
|
+
var createTitleYearElement = function createTitleYearElement() {
|
|
2579
2690
|
if (props.yearNavigator) {
|
|
2580
|
-
var
|
|
2691
|
+
var _yearOptions2 = [];
|
|
2581
2692
|
var years = props.yearRange.split(':');
|
|
2582
2693
|
var yearStart = parseInt(years[0], 10);
|
|
2583
2694
|
var yearEnd = parseInt(years[1], 10);
|
|
2584
2695
|
|
|
2585
2696
|
for (var i = yearStart; i <= yearEnd; i++) {
|
|
2586
|
-
|
|
2697
|
+
_yearOptions2.push(i);
|
|
2587
2698
|
}
|
|
2588
2699
|
|
|
2589
2700
|
var viewDate = getViewDate();
|
|
2590
2701
|
var viewYear = viewDate.getFullYear();
|
|
2591
|
-
|
|
2702
|
+
|
|
2703
|
+
var displayedYearNames = _yearOptions2.filter(function (year) {
|
|
2592
2704
|
return !(props.minDate && props.minDate.getFullYear() > year) && !(props.maxDate && props.maxDate.getFullYear() < year);
|
|
2593
2705
|
});
|
|
2594
2706
|
|
|
@@ -2628,17 +2740,32 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2628
2740
|
return _content2;
|
|
2629
2741
|
}
|
|
2630
2742
|
|
|
2631
|
-
return /*#__PURE__*/React.createElement("
|
|
2632
|
-
className: "p-datepicker-year"
|
|
2633
|
-
|
|
2743
|
+
return currentView !== 'year' && /*#__PURE__*/React.createElement("button", {
|
|
2744
|
+
className: "p-datepicker-year p-link",
|
|
2745
|
+
onClick: switchToYearView,
|
|
2746
|
+
disabled: switchViewButtonDisabled()
|
|
2747
|
+
}, currentYear);
|
|
2748
|
+
};
|
|
2749
|
+
|
|
2750
|
+
var createTitleDecadeElement = function createTitleDecadeElement() {
|
|
2751
|
+
var years = yearPickerValues();
|
|
2752
|
+
|
|
2753
|
+
if (currentView === 'year') {
|
|
2754
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
2755
|
+
className: "p-datepicker-decade"
|
|
2756
|
+
}, props.decadeTemplate ? props.decadeTemplate(years) : /*#__PURE__*/React.createElement("span", null, "".concat(yearPickerValues()[0], " - ").concat(yearPickerValues()[yearPickerValues().length - 1])));
|
|
2757
|
+
}
|
|
2758
|
+
|
|
2759
|
+
return null;
|
|
2634
2760
|
};
|
|
2635
2761
|
|
|
2636
2762
|
var createTitle = function createTitle(monthMetaData) {
|
|
2637
2763
|
var month = createTitleMonthElement(monthMetaData.month);
|
|
2638
2764
|
var year = createTitleYearElement(monthMetaData.year);
|
|
2765
|
+
var decade = createTitleDecadeElement();
|
|
2639
2766
|
return /*#__PURE__*/React.createElement("div", {
|
|
2640
2767
|
className: "p-datepicker-title"
|
|
2641
|
-
}, month, year);
|
|
2768
|
+
}, month, year, decade);
|
|
2642
2769
|
};
|
|
2643
2770
|
|
|
2644
2771
|
var createDayNames = function createDayNames(weekDays) {
|
|
@@ -2716,7 +2843,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2716
2843
|
var createDateViewGrid = function createDateViewGrid(monthMetaData, weekDays, groupIndex) {
|
|
2717
2844
|
var dayNames = createDayNames(weekDays);
|
|
2718
2845
|
var dates = createDates(monthMetaData, groupIndex);
|
|
2719
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
2846
|
+
return currentView === 'date' && /*#__PURE__*/React.createElement("div", {
|
|
2720
2847
|
className: "p-datepicker-calendar-container"
|
|
2721
2848
|
}, /*#__PURE__*/React.createElement("table", {
|
|
2722
2849
|
className: "p-datepicker-calendar"
|
|
@@ -2752,39 +2879,33 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2752
2879
|
return months;
|
|
2753
2880
|
};
|
|
2754
2881
|
|
|
2755
|
-
var
|
|
2756
|
-
var
|
|
2757
|
-
'p-highlight': isMonthSelected(index)
|
|
2758
|
-
});
|
|
2882
|
+
var monthPickerValues = function monthPickerValues() {
|
|
2883
|
+
var monthPickerValues = [];
|
|
2759
2884
|
var monthNamesShort = localeOption('monthNamesShort', props.locale);
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
|
|
2764
|
-
|
|
2765
|
-
|
|
2766
|
-
},
|
|
2767
|
-
onKeyDown: function onKeyDown(event) {
|
|
2768
|
-
return onMonthCellKeydown(event, index);
|
|
2769
|
-
}
|
|
2770
|
-
}, monthName, /*#__PURE__*/React.createElement(Ripple, null));
|
|
2885
|
+
|
|
2886
|
+
for (var i = 0; i <= 11; i++) {
|
|
2887
|
+
monthPickerValues.push(monthNamesShort[i]);
|
|
2888
|
+
}
|
|
2889
|
+
|
|
2890
|
+
return monthPickerValues;
|
|
2771
2891
|
};
|
|
2772
2892
|
|
|
2773
|
-
var
|
|
2774
|
-
var
|
|
2893
|
+
var yearPickerValues = function yearPickerValues() {
|
|
2894
|
+
var yearPickerValues = [];
|
|
2895
|
+
var base = currentYear - currentYear % 10;
|
|
2775
2896
|
|
|
2776
|
-
for (var i = 0; i
|
|
2777
|
-
|
|
2897
|
+
for (var i = 0; i < 10; i++) {
|
|
2898
|
+
yearPickerValues.push(base + i);
|
|
2778
2899
|
}
|
|
2779
2900
|
|
|
2780
|
-
return
|
|
2901
|
+
return yearPickerValues;
|
|
2781
2902
|
};
|
|
2782
2903
|
|
|
2783
|
-
var
|
|
2904
|
+
var createMonthYearView = function createMonthYearView() {
|
|
2784
2905
|
var backwardNavigator = createBackwardNavigator(true);
|
|
2785
2906
|
var forwardNavigator = createForwardNavigator(true);
|
|
2786
2907
|
var yearElement = createTitleYearElement(getViewDate().getFullYear());
|
|
2787
|
-
var
|
|
2908
|
+
var decade = createTitleDecadeElement();
|
|
2788
2909
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
2789
2910
|
className: "p-datepicker-group-container"
|
|
2790
2911
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -2793,17 +2914,15 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2793
2914
|
className: "p-datepicker-header"
|
|
2794
2915
|
}, backwardNavigator, /*#__PURE__*/React.createElement("div", {
|
|
2795
2916
|
className: "p-datepicker-title"
|
|
2796
|
-
}, yearElement), forwardNavigator)))
|
|
2797
|
-
className: "p-monthpicker"
|
|
2798
|
-
}, months));
|
|
2917
|
+
}, yearElement, decade), forwardNavigator))));
|
|
2799
2918
|
};
|
|
2800
2919
|
|
|
2801
2920
|
var createDatePicker = function createDatePicker() {
|
|
2802
2921
|
if (!props.timeOnly) {
|
|
2803
2922
|
if (props.view === 'date') {
|
|
2804
2923
|
return createDateView();
|
|
2805
|
-
} else
|
|
2806
|
-
return
|
|
2924
|
+
} else {
|
|
2925
|
+
return createMonthYearView();
|
|
2807
2926
|
}
|
|
2808
2927
|
}
|
|
2809
2928
|
|
|
@@ -2995,7 +3114,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
2995
3114
|
};
|
|
2996
3115
|
|
|
2997
3116
|
var createTimePicker = function createTimePicker() {
|
|
2998
|
-
if (props.showTime || props.timeOnly) {
|
|
3117
|
+
if ((props.showTime || props.timeOnly) && currentView === 'date') {
|
|
2999
3118
|
return /*#__PURE__*/React.createElement("div", {
|
|
3000
3119
|
className: "p-timepicker"
|
|
3001
3120
|
}, createHourPicker(), createSeparator(':'), createMinutePicker(), props.showSeconds && createSeparator(':'), createSecondPicker(), props.showMillisec && createSeparator('.'), createMiliSecondPicker(), props.hourFormat === '12' && createSeparator(':'), createAmPmPicker());
|
|
@@ -3104,6 +3223,46 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
3104
3223
|
return null;
|
|
3105
3224
|
};
|
|
3106
3225
|
|
|
3226
|
+
var createMonthPicker = function createMonthPicker() {
|
|
3227
|
+
if (currentView === 'month') {
|
|
3228
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
3229
|
+
className: "p-monthpicker"
|
|
3230
|
+
}, monthPickerValues().map(function (m, i) {
|
|
3231
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
3232
|
+
onClick: function onClick(event) {
|
|
3233
|
+
return onMonthSelect(event, i);
|
|
3234
|
+
},
|
|
3235
|
+
key: "month".concat(i + 1),
|
|
3236
|
+
className: classNames('p-monthpicker-month', {
|
|
3237
|
+
'p-highlight': isMonthSelected(i)
|
|
3238
|
+
})
|
|
3239
|
+
}, m);
|
|
3240
|
+
}));
|
|
3241
|
+
}
|
|
3242
|
+
|
|
3243
|
+
return null;
|
|
3244
|
+
};
|
|
3245
|
+
|
|
3246
|
+
var createYearPicker = function createYearPicker() {
|
|
3247
|
+
if (currentView === 'year') {
|
|
3248
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
3249
|
+
className: "p-yearpicker"
|
|
3250
|
+
}, yearPickerValues().map(function (y, i) {
|
|
3251
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
3252
|
+
onClick: function onClick(event) {
|
|
3253
|
+
return onYearSelect(event, y);
|
|
3254
|
+
},
|
|
3255
|
+
key: "year".concat(i + 1),
|
|
3256
|
+
className: classNames('p-yearpicker-year', {
|
|
3257
|
+
'p-highlight': isYearSelected(y)
|
|
3258
|
+
})
|
|
3259
|
+
}, y);
|
|
3260
|
+
}));
|
|
3261
|
+
}
|
|
3262
|
+
|
|
3263
|
+
return null;
|
|
3264
|
+
};
|
|
3265
|
+
|
|
3107
3266
|
var otherProps = ObjectUtils.findDiffKeys(props, Calendar.defaultProps);
|
|
3108
3267
|
var className = classNames('p-calendar p-component p-inputwrapper', props.className, (_classNames = {}, _defineProperty(_classNames, "p-calendar-w-btn p-calendar-w-btn-".concat(props.iconPos), props.showIcon), _defineProperty(_classNames, 'p-calendar-disabled', props.disabled), _defineProperty(_classNames, 'p-calendar-timeonly', props.timeOnly), _defineProperty(_classNames, 'p-inputwrapper-filled', props.value || DomHandler.hasClass(inputRef.current, 'p-filled') && inputRef.current.value !== ''), _defineProperty(_classNames, 'p-inputwrapper-focus', focusedState), _classNames));
|
|
3109
3268
|
var panelClassName = classNames('p-datepicker p-component', props.panelClassName, {
|
|
@@ -3111,7 +3270,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
3111
3270
|
'p-disabled': props.disabled,
|
|
3112
3271
|
'p-datepicker-timeonly': props.timeOnly,
|
|
3113
3272
|
'p-datepicker-multiple-month': props.numberOfMonths > 1,
|
|
3114
|
-
'p-datepicker-monthpicker':
|
|
3273
|
+
'p-datepicker-monthpicker': currentView === 'month',
|
|
3115
3274
|
'p-datepicker-touch-ui': props.touchUI
|
|
3116
3275
|
});
|
|
3117
3276
|
var content = createContent();
|
|
@@ -3119,6 +3278,8 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
3119
3278
|
var timePicker = createTimePicker();
|
|
3120
3279
|
var buttonBar = createButtonBar();
|
|
3121
3280
|
var footer = createFooter();
|
|
3281
|
+
var monthPicker = createMonthPicker();
|
|
3282
|
+
var yearPicker = createYearPicker();
|
|
3122
3283
|
return /*#__PURE__*/React.createElement("span", _extends({
|
|
3123
3284
|
ref: elementRef,
|
|
3124
3285
|
id: props.id,
|
|
@@ -3138,7 +3299,7 @@ var Calendar = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
3138
3299
|
onExit: onOverlayExit,
|
|
3139
3300
|
onExited: onOverlayExited,
|
|
3140
3301
|
transitionOptions: props.transitionOptions
|
|
3141
|
-
}, datePicker, timePicker, buttonBar, footer));
|
|
3302
|
+
}, datePicker, timePicker, buttonBar, footer, monthPicker, yearPicker));
|
|
3142
3303
|
}));
|
|
3143
3304
|
Calendar.displayName = 'Calendar';
|
|
3144
3305
|
Calendar.defaultProps = {
|
|
@@ -3207,6 +3368,7 @@ Calendar.defaultProps = {
|
|
|
3207
3368
|
tooltipOptions: null,
|
|
3208
3369
|
ariaLabelledBy: null,
|
|
3209
3370
|
dateTemplate: null,
|
|
3371
|
+
decadeTemplate: null,
|
|
3210
3372
|
headerTemplate: null,
|
|
3211
3373
|
footerTemplate: null,
|
|
3212
3374
|
monthNavigatorTemplate: null,
|
|
@@ -3222,7 +3384,8 @@ Calendar.defaultProps = {
|
|
|
3222
3384
|
onTodayButtonClick: null,
|
|
3223
3385
|
onClearButtonClick: null,
|
|
3224
3386
|
onShow: null,
|
|
3225
|
-
onHide: null
|
|
3387
|
+
onHide: null,
|
|
3388
|
+
onMonthChange: null
|
|
3226
3389
|
};
|
|
3227
3390
|
|
|
3228
3391
|
export { Calendar };
|