@consta/uikit 5.29.2 → 5.31.0

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.
Files changed (123) hide show
  1. package/FileCanary/index.d.ts +1 -0
  2. package/FileCanary/index.js +1 -0
  3. package/__internal__/src/components/AutoComplete/AutoComplete.js +1 -1
  4. package/__internal__/src/components/AutoComplete/AutoComplete.js.map +1 -1
  5. package/__internal__/src/components/AutoComplete/helpers.d.ts +1 -0
  6. package/__internal__/src/components/AutoComplete/types.d.ts +1 -0
  7. package/__internal__/src/components/AutoComplete/types.js.map +1 -1
  8. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/AutoCompleteTypeText.js +1 -1
  9. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/AutoCompleteTypeText.js.map +1 -1
  10. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/AutoCompleteTypeTextArray.js +1 -1
  11. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/AutoCompleteTypeTextArray.js.map +1 -1
  12. package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +1 -0
  13. package/__internal__/src/components/AutoCompleteCanary/types.d.ts +1 -0
  14. package/__internal__/src/components/AutoCompleteCanary/types.js.map +1 -1
  15. package/__internal__/src/components/Combobox/Combobox.js +1 -1
  16. package/__internal__/src/components/Combobox/Combobox.js.map +1 -1
  17. package/__internal__/src/components/Combobox/helpers.d.ts +3 -1
  18. package/__internal__/src/components/Combobox/helpers.js.map +1 -1
  19. package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js +1 -1
  20. package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js.map +1 -1
  21. package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js +1 -1
  22. package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js.map +1 -1
  23. package/__internal__/src/components/ContextMenu/helpers.d.ts +4 -2
  24. package/__internal__/src/components/ContextMenu/types.d.ts +3 -0
  25. package/__internal__/src/components/ContextMenu/types.js.map +1 -1
  26. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.d.ts +1 -0
  27. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js +1 -1
  28. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js.map +1 -1
  29. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
  30. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js.map +1 -1
  31. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
  32. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
  33. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js +1 -1
  34. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map +1 -1
  35. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
  36. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
  37. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js +1 -1
  38. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js.map +1 -1
  39. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
  40. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
  41. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js +1 -1
  42. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js.map +1 -1
  43. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js +1 -1
  44. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js.map +1 -1
  45. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
  46. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
  47. package/__internal__/src/components/DatePicker/types.d.ts +1 -0
  48. package/__internal__/src/components/DatePicker/types.js.map +1 -1
  49. package/__internal__/src/components/FileCanary/FileCanary.d.ts +1 -0
  50. package/__internal__/src/components/FileCanary/FileCanary.js +2 -0
  51. package/__internal__/src/components/FileCanary/FileCanary.js.map +1 -0
  52. package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.css +1 -0
  53. package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.d.ts +4 -0
  54. package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.js +2 -0
  55. package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.js.map +1 -0
  56. package/__internal__/src/components/FileCanary/config.d.ts +2 -0
  57. package/__internal__/src/components/FileCanary/config.js +2 -0
  58. package/__internal__/src/components/FileCanary/config.js.map +1 -0
  59. package/__internal__/src/components/FileCanary/fileCanaryGenerator.d.ts +2 -0
  60. package/__internal__/src/components/FileCanary/fileCanaryGenerator.js +2 -0
  61. package/__internal__/src/components/FileCanary/fileCanaryGenerator.js.map +1 -0
  62. package/__internal__/src/components/FileCanary/index.d.ts +4 -0
  63. package/__internal__/src/components/FileCanary/index.js +2 -0
  64. package/__internal__/src/components/FileCanary/index.js.map +1 -0
  65. package/__internal__/src/components/FileCanary/types.d.ts +25 -0
  66. package/__internal__/src/components/FileCanary/types.js +2 -0
  67. package/__internal__/src/components/FileCanary/types.js.map +1 -0
  68. package/__internal__/src/components/FlatSelect/FlatSelect.js +1 -1
  69. package/__internal__/src/components/FlatSelect/FlatSelect.js.map +1 -1
  70. package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.d.ts +1 -0
  71. package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.js +1 -1
  72. package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.js.map +1 -1
  73. package/__internal__/src/components/FlatSelect/types.d.ts +1 -0
  74. package/__internal__/src/components/FlatSelect/types.js.map +1 -1
  75. package/__internal__/src/components/Select/Select.js +1 -1
  76. package/__internal__/src/components/Select/Select.js.map +1 -1
  77. package/__internal__/src/components/Select/helpers.d.ts +3 -1
  78. package/__internal__/src/components/Select/helpers.js.map +1 -1
  79. package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.d.ts +1 -0
  80. package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.js +1 -1
  81. package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.js.map +1 -1
  82. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js +1 -1
  83. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js.map +1 -1
  84. package/__internal__/src/components/SelectCanary/SelectMultiple/__test__/SelectMultiple.test.js +1 -1
  85. package/__internal__/src/components/SelectCanary/SelectMultiple/__test__/SelectMultiple.test.js.map +1 -1
  86. package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.d.ts +1 -0
  87. package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.js +1 -1
  88. package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.js.map +1 -1
  89. package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js +1 -1
  90. package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js.map +1 -1
  91. package/__internal__/src/components/SelectCanary/SelectSingle/__test__/SelectSingle.test.js +1 -1
  92. package/__internal__/src/components/SelectCanary/SelectSingle/__test__/SelectSingle.test.js.map +1 -1
  93. package/__internal__/src/components/SelectCanary/helpers.d.ts +2 -1
  94. package/__internal__/src/components/SelectCanary/types.d.ts +1 -0
  95. package/__internal__/src/components/SelectCanary/types.js.map +1 -1
  96. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +1 -0
  97. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +1 -1
  98. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js.map +1 -1
  99. package/__internal__/src/components/Theme/_font/Silkscreen-Regular.woff +0 -0
  100. package/__internal__/src/components/Theme/_font/Silkscreen-Regular.woff2 +0 -0
  101. package/__internal__/src/components/Theme/_font/Theme_font_gpnDefault.css +1 -1
  102. package/__internal__/src/components/UserSelect/UserSelect.js +1 -1
  103. package/__internal__/src/components/UserSelect/UserSelect.js.map +1 -1
  104. package/__internal__/src/components/UserSelect/helpers.d.ts +3 -1
  105. package/__internal__/src/components/UserSelect/helpers.js.map +1 -1
  106. package/__internal__/src/hooks/useBodyScrollFreeze/index.d.ts +1 -0
  107. package/__internal__/src/hooks/useBodyScrollFreeze/index.js +2 -0
  108. package/__internal__/src/hooks/useBodyScrollFreeze/index.js.map +1 -0
  109. package/__internal__/src/hooks/useBodyScrollFreeze/useBodyScrollFreeze.css +1 -0
  110. package/__internal__/src/hooks/useBodyScrollFreeze/useBodyScrollFreeze.d.ts +6 -0
  111. package/__internal__/src/hooks/useBodyScrollFreeze/useBodyScrollFreeze.js +2 -0
  112. package/__internal__/src/hooks/useBodyScrollFreeze/useBodyScrollFreeze.js.map +1 -0
  113. package/__internal__/src/hooks/useHover/index.d.ts +1 -0
  114. package/__internal__/src/hooks/useHover/index.js +2 -0
  115. package/__internal__/src/hooks/useHover/index.js.map +1 -0
  116. package/__internal__/src/hooks/useHover/useHover.d.ts +9 -0
  117. package/__internal__/src/hooks/useHover/useHover.js +2 -0
  118. package/__internal__/src/hooks/useHover/useHover.js.map +1 -0
  119. package/package.json +2 -2
  120. package/useBodyScrollFreeze/index.d.ts +1 -0
  121. package/useBodyScrollFreeze/index.js +1 -0
  122. package/useHover/index.d.ts +1 -0
  123. package/useHover/index.js +1 -0
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","dropdownClassName","dropdownRef","timeOptions","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getFieldName,getTimeOptionsByFormat,normalizeRangeValue}from"../helpers";import{getTimeFof}from"../timeForMap";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=a.locale,j=a.dropdownForm,k=a.onFocus,l=a.onBlur,m=a.leftSide,n=a.rightSide,o=a.currentVisibleDate,p=a.onChangeCurrentVisibleDate,q=a.renderAdditionalControls,r=a.inputRef,s=a.name,t=a.placeholder,u=a.dropdownClassName,v=a.dropdownRef,w=a.timeOptions,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=_objectWithoutProperties(a,_excluded),E=useRef(null),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useState(),K=_slicedToArray(J,2),L=K[0],M=K[1],N=0===L,O=1===L,P=getTimeOptionsByFormat(D.format||datePickerPropFormatTypeDateTime,w),Q=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:G,endRef:H}),R=_slicedToArray(Q,2),S=R[0],T=R[1],U=useCurrentVisibleDate({currentVisibleDate:o,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:p,calendarVisible:S,rangeIndex:L}),V=_slicedToArray(U,2),W=V[0],X=V[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&N){var c=startOfMonth(a.value[0]);c.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),S,N]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&O){var c=startOfMonth(a.value[1]);c.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),S,O]),useClickOutside({isActive:S,ignoreClicksInsideRefs:[E,F,I].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){M(void 0),T.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},D,{ref:b,startFieldRef:E,endFieldRef:F,startFieldInputRef:useForkRef([G,null===r||void 0===r?void 0:r[0]]),endFieldInputRef:useForkRef([H,null===r||void 0===r?void 0:r[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;M(0),Array.isArray(k)?null===(b=k[0])||void 0===b?void 0:b.call(k,a):null===k||void 0===k?void 0:k(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;M(1),Array.isArray(k)?null===(b=k[1])||void 0===b?void 0:b.call(k,a):null===k||void 0===k?void 0:k(a)},startFieldLeftSide:Array.isArray(m)?null===m||void 0===m?void 0:m[0]:m,startFieldRightSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:void 0,endFieldLeftSide:Array.isArray(m)?null===m||void 0===m?void 0:m[1]:void 0,endFieldRightSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:n,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldOnClick:T.on,endFieldOnClick:T.on,startFocused:N,endFocused:O,startFieldName:getFieldName(s,0),endFieldName:getFieldName(s,1),disabled:A,startFieldPlaceholder:Array.isArray(t)?null===t||void 0===t?void 0:t[0]:t,endFieldPlaceholder:Array.isArray(t)?null===t||void 0===t?void 0:t[1]:t,timeOptions:P})),React.createElement(DatePickerDropdown,{type:"date-time",ref:useForkRef([v,I]),viewportRef:C,anchorRef:E,isOpen:S,className:u,onChangeCurrentVisibleDate:X,currentVisibleDate:W,value:a.value||void 0,timeFor:getTimeFof(L),view:"classic",events:g,locale:i,minDate:a.minDate,maxDate:a.maxDate,form:j,onChange:function handleChange(b,c){var d=c.e;if(N){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(O){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:q,timeOptions:P,zIndex:getDropdownZIndex(a.style),disableDates:B}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","dropdownClassName","dropdownRef","timeOptions","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","dropdownContainer"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getFieldName,getTimeOptionsByFormat,normalizeRangeValue}from"../helpers";import{getTimeFof}from"../timeForMap";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=a.locale,j=a.dropdownForm,k=a.onFocus,l=a.onBlur,m=a.leftSide,n=a.rightSide,o=a.currentVisibleDate,p=a.onChangeCurrentVisibleDate,q=a.renderAdditionalControls,r=a.inputRef,s=a.name,t=a.placeholder,u=a.dropdownClassName,v=a.dropdownRef,w=a.timeOptions,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=a.dropdownContainer,E=_objectWithoutProperties(a,_excluded),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useRef(null),K=useState(),L=_slicedToArray(K,2),M=L[0],N=L[1],O=0===M,P=1===M,Q=getTimeOptionsByFormat(E.format||datePickerPropFormatTypeDateTime,w),R=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:H,endRef:I}),S=_slicedToArray(R,2),T=S[0],U=S[1],V=useCurrentVisibleDate({currentVisibleDate:o,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:p,calendarVisible:T,rangeIndex:M}),W=_slicedToArray(V,2),X=W[0],Y=W[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&O){var c=startOfMonth(a.value[0]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),T,O]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&P){var c=startOfMonth(a.value[1]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),T,P]),useClickOutside({isActive:T,ignoreClicksInsideRefs:[F,G,J].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){N(void 0),U.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},E,{ref:b,startFieldRef:F,endFieldRef:G,startFieldInputRef:useForkRef([H,null===r||void 0===r?void 0:r[0]]),endFieldInputRef:useForkRef([I,null===r||void 0===r?void 0:r[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;N(0),Array.isArray(k)?null===(b=k[0])||void 0===b?void 0:b.call(k,a):null===k||void 0===k?void 0:k(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;N(1),Array.isArray(k)?null===(b=k[1])||void 0===b?void 0:b.call(k,a):null===k||void 0===k?void 0:k(a)},startFieldLeftSide:Array.isArray(m)?null===m||void 0===m?void 0:m[0]:m,startFieldRightSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:void 0,endFieldLeftSide:Array.isArray(m)?null===m||void 0===m?void 0:m[1]:void 0,endFieldRightSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:n,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldOnClick:U.on,endFieldOnClick:U.on,startFocused:O,endFocused:P,startFieldName:getFieldName(s,0),endFieldName:getFieldName(s,1),disabled:A,startFieldPlaceholder:Array.isArray(t)?null===t||void 0===t?void 0:t[0]:t,endFieldPlaceholder:Array.isArray(t)?null===t||void 0===t?void 0:t[1]:t,timeOptions:Q})),React.createElement(DatePickerDropdown,{type:"date-time",ref:useForkRef([v,J]),viewportRef:C,anchorRef:F,isOpen:T,className:u,onChangeCurrentVisibleDate:Y,currentVisibleDate:X,value:a.value||void 0,timeFor:getTimeFof(M),view:"classic",events:g,locale:i,minDate:a.minDate,maxDate:a.maxDate,form:j,onChange:function handleChange(b,c){var d=c.e;if(O){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(P){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:q,timeOptions:Q,zIndex:getDropdownZIndex(a.style),disableDates:B,container:D}))});
2
2
  //# sourceMappingURL=DatePickerTypeDateTimeRange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeDateTimeRange.js","names":["startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","datePickerPropFormatTypeDateTime","getDropdownZIndex","getFieldName","getTimeOptionsByFormat","normalizeRangeValue","getTimeFof","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","dropdownClassName","dropdownRef","timeOptionsProp","timeOptions","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","format","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","rangeIndex","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","on","handleChange","newValue","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.tsx"],"sourcesContent":["import startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef/useForkRef';\n\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getFieldName,\n getTimeOptionsByFormat,\n normalizeRangeValue,\n} from '../helpers';\nimport { getTimeFof } from '../timeForMap';\nimport { DatePickerTypeComponent } from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n placeholder,\n dropdownClassName,\n dropdownRef,\n timeOptions: timeOptionsProp,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n dropdownViewportRef,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<0 | 1 | undefined>();\n\n const startFocused = fieldFocused === 0;\n const endFocused = fieldFocused === 1;\n\n const timeOptions = getTimeOptionsByFormat(\n fieldProps.format || datePickerPropFormatTypeDateTime,\n timeOptionsProp,\n );\n\n const handleChange: DatePickerDropdownPropOnChange = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n rangeIndex: fieldFocused,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(0);\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(1);\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: useCallback(() => {\n setFieldFocused(undefined);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTimeRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n disabled={disabled}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n timeOptions={timeOptions}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n timeFor={getTimeFof(fieldFocused)}\n view=\"classic\"\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={handleChange}\n renderAdditionalControls={renderAdditionalControls}\n timeOptions={timeOptions}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n />\n </>\n );\n });\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeDateTimeRange.js","names":["startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","datePickerPropFormatTypeDateTime","getDropdownZIndex","getFieldName","getTimeOptionsByFormat","normalizeRangeValue","getTimeFof","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","dropdownClassName","dropdownRef","timeOptionsProp","timeOptions","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","dropdownContainer","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","format","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","rangeIndex","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","on","handleChange","newValue","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.tsx"],"sourcesContent":["import startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef/useForkRef';\n\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getFieldName,\n getTimeOptionsByFormat,\n normalizeRangeValue,\n} from '../helpers';\nimport { getTimeFof } from '../timeForMap';\nimport { DatePickerTypeComponent } from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n placeholder,\n dropdownClassName,\n dropdownRef,\n timeOptions: timeOptionsProp,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n dropdownViewportRef,\n dropdownContainer,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<0 | 1 | undefined>();\n\n const startFocused = fieldFocused === 0;\n const endFocused = fieldFocused === 1;\n\n const timeOptions = getTimeOptionsByFormat(\n fieldProps.format || datePickerPropFormatTypeDateTime,\n timeOptionsProp,\n );\n\n const handleChange: DatePickerDropdownPropOnChange = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n rangeIndex: fieldFocused,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(0);\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(1);\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: useCallback(() => {\n setFieldFocused(undefined);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTimeRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n disabled={disabled}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n timeOptions={timeOptions}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n timeFor={getTimeFof(fieldFocused)}\n view=\"classic\"\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={handleChange}\n renderAdditionalControls={renderAdditionalControls}\n timeOptions={timeOptions}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n container={dropdownContainer}\n />\n </>\n );\n });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRef","disableDates","dropdownViewportRef"];import addYears from"date-fns/addYears";import startOfYear from"date-fns/startOfYear";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonth}from"../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeMonth=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.ignoreOutsideClicksRefs,p=a.disabled,q=a.inputRef,r=a.disableDates,s=a.dropdownViewportRef,t=_objectWithoutProperties(a,_excluded),u=useRef(null),v=useRef(null),w=useRef(null),x=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:p,startRef:w}),y=_slicedToArray(x,2),z=y[0],A=y[1],B=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:k,calendarVisible:z}),C=_slicedToArray(B,2),D=C[0],E=C[1];return useEffect(function(){b&&setRef(b,u.current)},[b,u]),useEffect(function(){if(a.value&&"classic"===e&&D){var b=startOfYear(a.value);return void(b.getTime()!==D.getTime()&&E(b))}if(a.value&&"classic"!==e&&D){var c=startOfYear(a.value);c.getTime()!==D.getTime()&&c.getTime()!==addYears(D,1).getTime()&&E(c)}},[a.value]),useClickOutside({isActive:z,ignoreClicksInsideRefs:[u,v].concat(_toConsumableArray(null!==o&&void 0!==o?o:[])),handler:A.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonth,Object.assign({},t,{ref:u,inputRef:useForkRef([w,q]),onClick:A.on,disabled:p})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,v]),viewportRef:s,anchorRef:u,isOpen:z,value:a.value||void 0,type:"month",view:e,events:c,locale:f,minDate:a.minDate,className:h,maxDate:a.maxDate,currentVisibleDate:D,form:g,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),A.off()},renderAdditionalControls:l,onChangeCurrentVisibleDate:E,zIndex:getDropdownZIndex(a.style),disableDates:r}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRef","disableDates","dropdownViewportRef","dropdownContainer"];import addYears from"date-fns/addYears";import startOfYear from"date-fns/startOfYear";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonth}from"../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeMonth=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.ignoreOutsideClicksRefs,p=a.disabled,q=a.inputRef,r=a.disableDates,s=a.dropdownViewportRef,t=a.dropdownContainer,u=_objectWithoutProperties(a,_excluded),v=useRef(null),w=useRef(null),x=useRef(null),y=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:p,startRef:x}),z=_slicedToArray(y,2),A=z[0],B=z[1],C=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:k,calendarVisible:A}),D=_slicedToArray(C,2),E=D[0],F=D[1];return useEffect(function(){b&&setRef(b,v.current)},[b,v]),useEffect(function(){if(a.value&&"classic"===e&&E){var b=startOfYear(a.value);return void(b.getTime()!==E.getTime()&&F(b))}if(a.value&&"classic"!==e&&E){var c=startOfYear(a.value);c.getTime()!==E.getTime()&&c.getTime()!==addYears(E,1).getTime()&&F(c)}},[a.value]),useClickOutside({isActive:A,ignoreClicksInsideRefs:[v,w].concat(_toConsumableArray(null!==o&&void 0!==o?o:[])),handler:B.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonth,Object.assign({},u,{ref:v,inputRef:useForkRef([x,q]),onClick:B.on,disabled:p})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,w]),viewportRef:s,anchorRef:v,isOpen:A,value:a.value||void 0,type:"month",view:e,events:c,locale:f,minDate:a.minDate,className:h,maxDate:a.maxDate,currentVisibleDate:E,form:g,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),B.off()},renderAdditionalControls:l,onChangeCurrentVisibleDate:F,zIndex:getDropdownZIndex(a.style),disableDates:r,container:t}))});
2
2
  //# sourceMappingURL=DatePickerTypeMonth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeMonth.js","names":["addYears","startOfYear","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeMonth","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeMonth","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRefProp","inputRef","disableDates","dropdownViewportRef","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonth } from '../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonth: DatePickerTypeComponent<'month'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfYear(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfYear(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !== addYears(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeMonth\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n disabled={disabled}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"month\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n className={dropdownClassName}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeMonth.js","names":["addYears","startOfYear","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeMonth","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeMonth","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRefProp","inputRef","disableDates","dropdownViewportRef","dropdownContainer","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonth } from '../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonth: DatePickerTypeComponent<'month'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n dropdownContainer,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfYear(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfYear(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !== addYears(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeMonth\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n disabled={disabled}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"month\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n className={dropdownClassName}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n container={dropdownContainer}\n />\n </>\n );\n },\n);\n"],"mappings":"uhBAAA,MAAOA,SAAP,KAAqB,mBAArB,CACA,MAAOC,YAAP,KAAwB,sBAAxB,CACA,MAAOC,MAAP,EAAgBC,UAAhB,CAA4BC,SAA5B,CAAuCC,MAAvC,KAAqD,OAArD,CAEA,OAASC,eAAT,sDACA,OAASC,UAAT,iCACA,OAASC,MAAT,6BAEA,OAASC,kBAAT,gDACA,OAASC,wBAAT,4DACA,OAASC,iBAAT,kBACA,OACEC,iCADF,gBAIA,OAASC,kBAAT,6BACA,OAASC,qBAAT,gCAEA,MAAO,IAAMC,oBAAqD,CAAGZ,UAAU,CAC7E,SAACa,CAAD,CAAQC,CAAR,CAAgB,IAEZC,EAFY,CAoBVF,CApBU,CAEZE,MAFY,GAoBVF,CApBU,CAGZG,YAHY,CAGZA,CAHY,YAGGP,iCAHH,GAIZQ,CAJY,CAoBVJ,CApBU,CAIZI,MAJY,CAKZC,CALY,CAoBVL,CApBU,CAKZK,YALY,CAMZC,CANY,CAoBVN,CApBU,CAMZM,iBANY,CAOZC,CAPY,CAoBVP,CApBU,CAOZO,WAPY,CAQQC,CARR,CAoBVR,CApBU,CAQZS,kBARY,CASZC,CATY,CAoBVV,CApBU,CASZU,0BATY,CAUZC,CAVY,CAoBVX,CApBU,CAUZW,wBAVY,CAWZC,CAXY,CAoBVZ,CApBU,CAWZY,cAXY,CAYZC,CAZY,CAoBVb,CApBU,CAYZa,YAZY,CAaZC,CAbY,CAoBVd,CApBU,CAaZc,uBAbY,CAcZC,CAdY,CAoBVf,CApBU,CAcZe,QAdY,CAeFC,CAfE,CAoBVhB,CApBU,CAeZiB,QAfY,CAgBZC,CAhBY,CAoBVlB,CApBU,CAgBZkB,YAhBY,CAiBZC,CAjBY,CAoBVnB,CApBU,CAiBZmB,mBAjBY,CAkBZC,CAlBY,CAoBVpB,CApBU,CAkBZoB,iBAlBY,CAmBTC,CAnBS,0BAoBVrB,CApBU,YAsBRsB,CAAQ,CAAGjC,MAAM,CAAiB,IAAjB,CAtBT,CAuBRkC,CAAW,CAAGlC,MAAM,CAAiB,IAAjB,CAvBZ,CAwBR4B,CAAQ,CAAG5B,MAAM,CAAmB,IAAnB,CAxBT,GA0BgCQ,kBAAkB,CAAC,CAC/DgB,YAAY,CAAZA,CAD+D,CAE/DD,cAAc,CAAdA,CAF+D,CAG/DG,QAAQ,CAARA,CAH+D,CAI/DS,QAAQ,CAAEP,CAJqD,CAAD,CA1BlD,uBA0BPQ,CA1BO,MA0BUC,CA1BV,QAiCsC5B,qBAAqB,CAAC,CACxEW,kBAAkB,CAAED,CADoD,CAExEmB,OAAO,CAAE3B,CAAK,CAAC2B,OAFyD,CAGxEC,OAAO,CAAE5B,CAAK,CAAC4B,OAHyD,CAIxEC,KAAK,CAAE7B,CAAK,CAAC6B,KAJ2D,CAKxEC,WAAW,CAAE7C,WAL2D,CAMxEyB,0BAA0B,CAA1BA,CANwE,CAOxEe,eAAe,CAAfA,CAPwE,CAAD,CAjC3D,uBAiCPhB,CAjCO,MAiCasB,CAjCb,MA8Ed,MAnCA3C,UAAS,CAAC,UAAM,CACVa,CADU,EAEZT,MAAM,CAACS,CAAD,CAAMqB,CAAQ,CAACU,OAAf,CAET,CAJQ,CAIN,CAAC/B,CAAD,CAAMqB,CAAN,CAJM,CAmCT,CA7BAlC,SAAS,CAAC,UAAM,CACd,GAAIY,CAAK,CAAC6B,KAAN,EAAgC,SAAjB,GAAA1B,CAAf,EAA6CM,CAAjD,CAAqE,CACnE,GAAMwB,EAAc,CAAGhD,WAAW,CAACe,CAAK,CAAC6B,KAAP,CAAlC,CAIA,YAHII,CAAc,CAACC,OAAf,KAA6BzB,CAAkB,CAACyB,OAAnB,EAGjC,EAFEH,CAAqB,CAACE,CAAD,CAEvB,CACD,CACD,GAAIjC,CAAK,CAAC6B,KAAN,EAAgC,SAAjB,GAAA1B,CAAf,EAA6CM,CAAjD,CAAqE,CACnE,GAAMwB,EAAc,CAAGhD,WAAW,CAACe,CAAK,CAAC6B,KAAP,CAAlC,CAEEI,CAAc,CAACC,OAAf,KAA6BzB,CAAkB,CAACyB,OAAnB,EAA7B,EACAD,CAAc,CAACC,OAAf,KAA6BlD,QAAQ,CAACyB,CAAD,CAAqB,CAArB,CAAR,CAAgCyB,OAAhC,EAJoC,EAMjEH,CAAqB,CAACE,CAAD,CAExB,CACF,CAjBQ,CAiBN,CAACjC,CAAK,CAAC6B,KAAP,CAjBM,CA6BT,CAVAvC,eAAe,CAAC,CACd6C,QAAQ,CAAEV,CADI,CAEdW,sBAAsB,EACpBd,CADoB,CAEpBC,CAFoB,mCAGhBT,CAHgB,WAGhBA,CAHgB,CAGhBA,CAHgB,CAGW,EAHX,EAFR,CAOduB,OAAO,CAAEX,CAAkB,CAACY,GAPd,CAAD,CAUf,CACE,wCACE,oBAAC,wBAAD,kBACMjB,CADN,EAEE,GAAG,CAAEC,CAFP,CAGE,QAAQ,CAAE/B,UAAU,CAAC,CAAC0B,CAAD,CAAWD,CAAX,CAAD,CAHtB,CAIE,OAAO,CAAEU,CAAkB,CAACa,EAJ9B,CAKE,QAAQ,CAAExB,CALZ,GADF,CAQE,oBAAC,kBAAD,EACE,GAAG,CAAExB,UAAU,CAAC,CAACgB,CAAD,CAAcgB,CAAd,CAAD,CADjB,CAEE,WAAW,CAAEJ,CAFf,CAGE,SAAS,CAAEG,CAHb,CAIE,MAAM,CAAEG,CAJV,CAKE,KAAK,CAAEzB,CAAK,CAAC6B,KAAN,QALT,CAME,IAAI,CAAC,OANP,CAOE,IAAI,CAAE1B,CAPR,CAQE,MAAM,CAAED,CARV,CASE,MAAM,CAAEE,CATV,CAUE,OAAO,CAAEJ,CAAK,CAAC4B,OAVjB,CAWE,SAAS,CAAEtB,CAXb,CAYE,OAAO,CAAEN,CAAK,CAAC2B,OAZjB,CAaE,kBAAkB,CAAElB,CAbtB,CAcE,IAAI,CAAEJ,CAdR,CAeE,QAAQ,CAAE,mBAAa,8BAATmC,CAAS,sBAATA,CAAS,2BACrBxC,CAAK,CAACyC,QADe,qBACrB,gBAAAzC,CAAK,QAAL,CAAoBwC,CAApB,EADqB,CAErBd,CAAkB,CAACY,GAAnB,EACD,CAlBH,CAmBE,wBAAwB,CAAE3B,CAnB5B,CAoBE,0BAA0B,CAAEoB,CApB9B,CAqBE,MAAM,CAAEpC,iBAAiB,CAACK,CAAK,CAAC0C,KAAP,CArB3B,CAsBE,YAAY,CAAExB,CAtBhB,CAuBE,SAAS,CAAEE,CAvBb,EARF,CAmCH,CAnH4E,CAAxE"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","dropdownRef","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef"];import addYears from"date-fns/addYears";import startOfYear from"date-fns/startOfYear";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonthRange}from"../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange";import{getDropdownZIndex,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeMonthRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.dropdownClassName,n=a.dropdownRef,o=a.onBlur,p=a.leftSide,q=a.rightSide,r=a.currentVisibleDate,s=a.onChangeCurrentVisibleDate,t=a.renderAdditionalControls,u=a.inputRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=_objectWithoutProperties(a,_excluded),E=useRef(null),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useState(),K=_slicedToArray(J,2),L=K[0],M=K[1],N=0===L,O=1===L,P=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:G,endRef:H}),Q=_slicedToArray(P,2),R=Q[0],S=Q[1],T=useCurrentVisibleDate({currentVisibleDate:r,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:s,calendarVisible:R,rangeIndex:L}),U=_slicedToArray(T,2),V=U[0],W=U[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&N){var d=startOfYear(a.value[0]);return void(d.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&W(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&N){var e=startOfYear(a.value[0]);e.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&e.getTime()!==(V&&addYears(V,1).getTime())&&W(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),R,N]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&O){var d=startOfYear(a.value[1]);return void(d.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&W(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&O){var e=startOfYear(a.value[1]);e.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&e.getTime()!==(V&&addYears(V,1).getTime())&&W(addYears(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),R,O]),useClickOutside({isActive:R,ignoreClicksInsideRefs:[E,F,I].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){M(void 0),S.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonthRange,Object.assign({},D,{ref:b,startFieldRef:E,endFieldRef:F,startFieldInputRef:useForkRef([G,null===u||void 0===u?void 0:u[0]]),endFieldInputRef:useForkRef([H,null===u||void 0===u?void 0:u[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;M(0),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;M(1),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[0]:p,startFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[0]:void 0,endFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[1]:void 0,endFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[1]:q,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(o)?null===(b=o[0])||void 0===b?void 0:b.call(o,a):null===o||void 0===o?void 0:o(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(o)?null===(b=o[1])||void 0===b?void 0:b.call(o,a):null===o||void 0===o?void 0:o(a)},startFocused:N,endFocused:O,startFieldOnClick:S.on,endFieldOnClick:S.on,startFieldName:Array.isArray(v)?v[0]:"".concat(v,"_start"),endFieldName:Array.isArray(v)?v[1]:"".concat(v,"_end"),disabled:A,startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w})),React.createElement(DatePickerDropdown,{type:"month",ref:useForkRef([n,I]),viewportRef:C,anchorRef:E,isOpen:R,onChangeCurrentVisibleDate:W,currentVisibleDate:V,value:a.value||void 0,view:i,events:g,className:m,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(N){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(O){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:t,zIndex:getDropdownZIndex(a.style),disableDates:B}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","dropdownRef","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","dropdownContainer"];import addYears from"date-fns/addYears";import startOfYear from"date-fns/startOfYear";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonthRange}from"../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange";import{getDropdownZIndex,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeMonthRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.dropdownClassName,n=a.dropdownRef,o=a.onBlur,p=a.leftSide,q=a.rightSide,r=a.currentVisibleDate,s=a.onChangeCurrentVisibleDate,t=a.renderAdditionalControls,u=a.inputRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=a.dropdownContainer,E=_objectWithoutProperties(a,_excluded),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useRef(null),K=useState(),L=_slicedToArray(K,2),M=L[0],N=L[1],O=0===M,P=1===M,Q=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:H,endRef:I}),R=_slicedToArray(Q,2),S=R[0],T=R[1],U=useCurrentVisibleDate({currentVisibleDate:r,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:s,calendarVisible:S,rangeIndex:M}),V=_slicedToArray(U,2),W=V[0],X=V[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&O){var d=startOfYear(a.value[0]);return void(d.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&O){var e=startOfYear(a.value[0]);e.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&e.getTime()!==(W&&addYears(W,1).getTime())&&X(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),S,O]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&P){var d=startOfYear(a.value[1]);return void(d.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&P){var e=startOfYear(a.value[1]);e.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&e.getTime()!==(W&&addYears(W,1).getTime())&&X(addYears(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),S,P]),useClickOutside({isActive:S,ignoreClicksInsideRefs:[F,G,J].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){N(void 0),T.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonthRange,Object.assign({},E,{ref:b,startFieldRef:F,endFieldRef:G,startFieldInputRef:useForkRef([H,null===u||void 0===u?void 0:u[0]]),endFieldInputRef:useForkRef([I,null===u||void 0===u?void 0:u[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;N(0),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;N(1),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[0]:p,startFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[0]:void 0,endFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[1]:void 0,endFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[1]:q,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(o)?null===(b=o[0])||void 0===b?void 0:b.call(o,a):null===o||void 0===o?void 0:o(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(o)?null===(b=o[1])||void 0===b?void 0:b.call(o,a):null===o||void 0===o?void 0:o(a)},startFocused:O,endFocused:P,startFieldOnClick:T.on,endFieldOnClick:T.on,startFieldName:Array.isArray(v)?v[0]:"".concat(v,"_start"),endFieldName:Array.isArray(v)?v[1]:"".concat(v,"_end"),disabled:A,startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w})),React.createElement(DatePickerDropdown,{type:"month",ref:useForkRef([n,J]),viewportRef:C,anchorRef:F,isOpen:S,onChangeCurrentVisibleDate:X,currentVisibleDate:W,value:a.value||void 0,view:i,events:g,className:m,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(O){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(P){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:t,zIndex:getDropdownZIndex(a.style),disableDates:B,container:D}))});
2
2
  //# sourceMappingURL=DatePickerTypeMonthRange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeMonthRange.js","names":["addYears","startOfYear","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeMonthRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeMonthRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","dropdownRef","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","rangeIndex","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","on","handleChange","newValue","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\n\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonthRange } from '../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonthRange: DatePickerTypeComponent<'month-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n dropdownRef,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n placeholder,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n dropdownViewportRef,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<0 | 1 | undefined>();\n\n const startFocused = fieldFocused === 0;\n const endFocused = fieldFocused === 1;\n\n const handleChange: DatePickerDropdownPropOnChange = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n rangeIndex: fieldFocused,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(0);\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(1);\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: useCallback(() => {\n setFieldFocused(undefined);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeMonthRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n disabled={disabled}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n />\n <DatePickerDropdown\n type=\"month\"\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={handleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n />\n </>\n );\n });\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeMonthRange.js","names":["addYears","startOfYear","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeMonthRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeMonthRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","dropdownRef","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","dropdownContainer","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","rangeIndex","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","on","handleChange","newValue","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\n\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonthRange } from '../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonthRange: DatePickerTypeComponent<'month-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n dropdownRef,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n placeholder,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n dropdownViewportRef,\n dropdownContainer,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<0 | 1 | undefined>();\n\n const startFocused = fieldFocused === 0;\n const endFocused = fieldFocused === 1;\n\n const handleChange: DatePickerDropdownPropOnChange = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n rangeIndex: fieldFocused,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(0);\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused(1);\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: useCallback(() => {\n setFieldFocused(undefined);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeMonthRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n disabled={disabled}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n />\n <DatePickerDropdown\n type=\"month\"\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={handleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n container={dropdownContainer}\n />\n </>\n );\n });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","timeOptions","renderAdditionalControls","currentVisibleDate","onChangeCurrentVisibleDate","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRef","disableDates","dropdownViewportRef"];import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeTime}from"../DatePickerFieldTypeTime/DatePickerFieldTypeTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getTimeOptionsByFormat}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";export var DatePickerTypeTime=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.timeOptions,k=a.renderAdditionalControls,l=a.currentVisibleDate,m=a.onChangeCurrentVisibleDate,n=a.onDropdownOpen,o=a.dropdownOpen,p=a.ignoreOutsideClicksRefs,q=a.disabled,r=a.inputRef,s=a.disableDates,t=a.dropdownViewportRef,u=_objectWithoutProperties(a,_excluded),v=getTimeOptionsByFormat(u.format||datePickerPropFormatTypeDateTime,j),w=useRef(null),x=useRef(null),y=useRef(null),z=useCalendarVisible({dropdownOpen:o,onDropdownOpen:n,disabled:q,startRef:y}),A=_slicedToArray(z,2),B=A[0],C=A[1];return useEffect(function(){b&&setRef(b,w.current)},[b,w]),useClickOutside({isActive:B,ignoreClicksInsideRefs:[w,x].concat(_toConsumableArray(null!==p&&void 0!==p?p:[])),handler:C.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeTime,Object.assign({},u,{ref:w,inputRef:useForkRef([y,r]),onClick:C.on,timeOptions:v,disabled:q})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,x]),viewportRef:t,anchorRef:w,isOpen:B,value:a.value||void 0,type:"time",view:e,events:c,locale:f,minDate:a.minDate,maxDate:a.maxDate,form:g,className:h,onChange:a.onChange,renderAdditionalControls:k,timeOptions:v,zIndex:getDropdownZIndex(a.style),disableDates:s}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","timeOptions","renderAdditionalControls","currentVisibleDate","onChangeCurrentVisibleDate","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRef","disableDates","dropdownViewportRef","dropdownContainer"];import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeTime}from"../DatePickerFieldTypeTime/DatePickerFieldTypeTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getTimeOptionsByFormat}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";export var DatePickerTypeTime=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.timeOptions,k=a.renderAdditionalControls,l=a.currentVisibleDate,m=a.onChangeCurrentVisibleDate,n=a.onDropdownOpen,o=a.dropdownOpen,p=a.ignoreOutsideClicksRefs,q=a.disabled,r=a.inputRef,s=a.disableDates,t=a.dropdownViewportRef,u=a.dropdownContainer,v=_objectWithoutProperties(a,_excluded),w=getTimeOptionsByFormat(v.format||datePickerPropFormatTypeDateTime,j),x=useRef(null),y=useRef(null),z=useRef(null),A=useCalendarVisible({dropdownOpen:o,onDropdownOpen:n,disabled:q,startRef:z}),B=_slicedToArray(A,2),C=B[0],D=B[1];return useEffect(function(){b&&setRef(b,x.current)},[b,x]),useClickOutside({isActive:C,ignoreClicksInsideRefs:[x,y].concat(_toConsumableArray(null!==p&&void 0!==p?p:[])),handler:D.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeTime,Object.assign({},v,{ref:x,inputRef:useForkRef([z,r]),onClick:D.on,timeOptions:w,disabled:q})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,y]),viewportRef:t,anchorRef:x,isOpen:C,value:a.value||void 0,type:"time",view:e,events:c,locale:f,minDate:a.minDate,maxDate:a.maxDate,form:g,className:h,onChange:a.onChange,renderAdditionalControls:k,timeOptions:w,zIndex:getDropdownZIndex(a.style),disableDates:s,container:u}))});
2
2
  //# sourceMappingURL=DatePickerTypeTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeTime.js","names":["React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getTimeOptionsByFormat","datePickerPropDateTimeViewDefault","useCalendarVisible","DatePickerTypeTime","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","timeOptionsProp","timeOptions","renderAdditionalControls","currentVisibleDate","onChangeCurrentVisibleDate","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRefProp","inputRef","disableDates","dropdownViewportRef","otherProps","format","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","current","isActive","ignoreClicksInsideRefs","handler","off","on","value","minDate","maxDate","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeTime } from '../DatePickerFieldTypeTime/DatePickerFieldTypeTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getTimeOptionsByFormat,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\n\nexport const DatePickerTypeTime: DatePickerTypeComponent<'time'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n timeOptions: timeOptionsProp,\n renderAdditionalControls,\n currentVisibleDate,\n onChangeCurrentVisibleDate,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n ...otherProps\n } = props;\n\n const timeOptions = getTimeOptionsByFormat(\n otherProps.format || datePickerPropFormatTypeDateTime,\n timeOptionsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeTime\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n timeOptions={timeOptions}\n disabled={disabled}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"time\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n className={dropdownClassName}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n timeOptions={timeOptions}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeTime.js","names":["React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getTimeOptionsByFormat","datePickerPropDateTimeViewDefault","useCalendarVisible","DatePickerTypeTime","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","timeOptionsProp","timeOptions","renderAdditionalControls","currentVisibleDate","onChangeCurrentVisibleDate","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","inputRefProp","inputRef","disableDates","dropdownViewportRef","dropdownContainer","otherProps","format","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","current","isActive","ignoreClicksInsideRefs","handler","off","on","value","minDate","maxDate","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeTime } from '../DatePickerFieldTypeTime/DatePickerFieldTypeTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getTimeOptionsByFormat,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\n\nexport const DatePickerTypeTime: DatePickerTypeComponent<'time'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n timeOptions: timeOptionsProp,\n renderAdditionalControls,\n currentVisibleDate,\n onChangeCurrentVisibleDate,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n dropdownContainer,\n ...otherProps\n } = props;\n\n const timeOptions = getTimeOptionsByFormat(\n otherProps.format || datePickerPropFormatTypeDateTime,\n timeOptionsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeTime\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n timeOptions={timeOptions}\n disabled={disabled}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"time\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n className={dropdownClassName}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n timeOptions={timeOptions}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n container={dropdownContainer}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","disabled","ignoreOutsideClicksRefs","inputRef","disableDates","dropdownViewportRef"];import{addYears,startOfDecade}from"date-fns";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeYear}from"../DatePickerFieldTypeYear/DatePickerFieldTypeYear";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeYear=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.disabled,p=a.ignoreOutsideClicksRefs,q=a.inputRef,r=a.disableDates,s=a.dropdownViewportRef,t=_objectWithoutProperties(a,_excluded),u=useRef(null),v=useRef(null),w=useRef(null),x=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:o,startRef:w}),y=_slicedToArray(x,2),z=y[0],A=y[1],B=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:k,calendarVisible:z}),C=_slicedToArray(B,2),D=C[0],E=C[1];return useEffect(function(){b&&setRef(b,u.current)},[b,u]),useEffect(function(){if(a.value&&"classic"===e&&D){var b=startOfDecade(a.value);return void(b.getTime()!==D.getTime()&&E(b))}if(a.value&&"classic"!==e&&D){var c=startOfDecade(a.value);c.getTime()!==D.getTime()&&c.getTime()!==addYears(D,10).getTime()&&E(c)}},[a.value]),useClickOutside({isActive:z,ignoreClicksInsideRefs:[u,v].concat(_toConsumableArray(null!==p&&void 0!==p?p:[])),handler:A.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeYear,Object.assign({},t,{ref:u,inputRef:useForkRef([w,q]),disabled:o,onClick:A.on})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,v]),viewportRef:s,anchorRef:u,className:h,isOpen:z,value:a.value||void 0,type:"year",view:e,events:c,locale:f,minDate:a.minDate,maxDate:a.maxDate,currentVisibleDate:D,form:g,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),A.off()},renderAdditionalControls:l,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:E,disableDates:r}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","disabled","ignoreOutsideClicksRefs","inputRef","disableDates","dropdownViewportRef","dropdownContainer"];import{addYears,startOfDecade}from"date-fns";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeYear}from"../DatePickerFieldTypeYear/DatePickerFieldTypeYear";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeYear=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.dropdownClassName,i=a.dropdownRef,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.disabled,p=a.ignoreOutsideClicksRefs,q=a.inputRef,r=a.disableDates,s=a.dropdownViewportRef,t=a.dropdownContainer,u=_objectWithoutProperties(a,_excluded),v=useRef(null),w=useRef(null),x=useRef(null),y=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:o,startRef:x}),z=_slicedToArray(y,2),A=z[0],B=z[1],C=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:k,calendarVisible:A}),D=_slicedToArray(C,2),E=D[0],F=D[1];return useEffect(function(){b&&setRef(b,v.current)},[b,v]),useEffect(function(){if(a.value&&"classic"===e&&E){var b=startOfDecade(a.value);return void(b.getTime()!==E.getTime()&&F(b))}if(a.value&&"classic"!==e&&E){var c=startOfDecade(a.value);c.getTime()!==E.getTime()&&c.getTime()!==addYears(E,10).getTime()&&F(c)}},[a.value]),useClickOutside({isActive:A,ignoreClicksInsideRefs:[v,w].concat(_toConsumableArray(null!==p&&void 0!==p?p:[])),handler:B.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeYear,Object.assign({},u,{ref:v,inputRef:useForkRef([x,q]),disabled:o,onClick:B.on})),React.createElement(DatePickerDropdown,{ref:useForkRef([i,w]),viewportRef:s,anchorRef:v,className:h,isOpen:A,value:a.value||void 0,type:"year",view:e,events:c,locale:f,minDate:a.minDate,maxDate:a.maxDate,currentVisibleDate:E,form:g,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),B.off()},renderAdditionalControls:l,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:F,disableDates:r,container:t}))});
2
2
  //# sourceMappingURL=DatePickerTypeYear.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeYear.js","names":["addYears","startOfDecade","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeYear","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeYear","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","disabled","ignoreOutsideClicksRefs","inputRefProp","inputRef","disableDates","dropdownViewportRef","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeYear } from '../DatePickerFieldTypeYear/DatePickerFieldTypeYear';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeYear: DatePickerTypeComponent<'year'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n disabled,\n ignoreOutsideClicksRefs,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfDecade(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfDecade(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addYears(currentVisibleDate, 10).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeYear\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n disabled={disabled}\n onClick={setCalendarVisible.on}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"year\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n disableDates={disableDates}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeYear.js","names":["addYears","startOfDecade","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeYear","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeYear","props","ref","events","dateTimeView","locale","dropdownForm","dropdownClassName","dropdownRef","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","disabled","ignoreOutsideClicksRefs","inputRefProp","inputRef","disableDates","dropdownViewportRef","dropdownContainer","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeYear } from '../DatePickerFieldTypeYear/DatePickerFieldTypeYear';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeYear: DatePickerTypeComponent<'year'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n dropdownClassName,\n dropdownRef,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n disabled,\n ignoreOutsideClicksRefs,\n inputRef: inputRefProp,\n disableDates,\n dropdownViewportRef,\n dropdownContainer,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfDecade(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfDecade(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addYears(currentVisibleDate, 10).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeYear\n {...otherProps}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n disabled={disabled}\n onClick={setCalendarVisible.on}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, calendarRef])}\n viewportRef={dropdownViewportRef}\n anchorRef={fieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"year\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n disableDates={disableDates}\n container={dropdownContainer}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","dropdownRef","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef"];import{addYears,startOfDecade}from"date-fns";import React,{forwardRef,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeYearRange}from"../DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange";import{getDropdownZIndex,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeYearRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.dropdownClassName,o=a.dropdownRef,p=a.leftSide,q=a.rightSide,r=a.currentVisibleDate,s=a.onChangeCurrentVisibleDate,t=a.renderAdditionalControls,u=a.inputRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=_objectWithoutProperties(a,_excluded),E=useRef(null),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useState(),K=_slicedToArray(J,2),L=K[0],M=K[1],N=0===L,O=1===L,P=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:G,endRef:H}),Q=_slicedToArray(P,2),R=Q[0],S=Q[1],T=useCurrentVisibleDate({currentVisibleDate:r,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:s,calendarVisible:R,rangeIndex:L}),U=_slicedToArray(T,2),V=U[0],W=U[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&N){var d=startOfDecade(a.value[0]);return void(d.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&W(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&N){var e=startOfDecade(a.value[0]);e.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&e.getTime()!==(V&&addYears(V,10).getTime())&&W(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),R,N]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&O){var d=startOfDecade(a.value[1]);return void(d.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&W(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&O){var e=startOfDecade(a.value[1]);e.getTime()!==(null===V||void 0===V?void 0:V.getTime())&&e.getTime()!==(V&&addYears(V,10).getTime())&&W(addYears(e,-10))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),R,O]),useClickOutside({isActive:R,ignoreClicksInsideRefs:[E,F,I].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:function handler(){M(void 0),S.off()}}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeYearRange,Object.assign({},D,{ref:b,startFieldRef:E,endFieldRef:F,startFieldInputRef:useForkRef([G,null===u||void 0===u?void 0:u[0]]),endFieldInputRef:useForkRef([H,null===u||void 0===u?void 0:u[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;M(0),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;M(1),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[0]:p,startFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[0]:void 0,endFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[1]:void 0,endFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[1]:q,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:N,endFocused:O,startFieldOnClick:S.on,endFieldOnClick:S.on,startFieldName:Array.isArray(v)?v[0]:"".concat(v,"_start"),endFieldName:Array.isArray(v)?v[1]:"".concat(v,"_end"),disabled:A,startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w})),React.createElement(DatePickerDropdown,{type:"year",ref:useForkRef([o,I]),viewportRef:C,anchorRef:E,isOpen:R,onChangeCurrentVisibleDate:W,currentVisibleDate:V,value:a.value||void 0,view:i,events:g,locale:j,className:n,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(N){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(O){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:t,zIndex:getDropdownZIndex(a.style),disableDates:B}))});
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","dropdownRef","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","dropdownViewportRef","dropdownContainer"];import{addYears,startOfDecade}from"date-fns";import React,{forwardRef,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeYearRange}from"../DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange";import{getDropdownZIndex,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeYearRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.dropdownClassName,o=a.dropdownRef,p=a.leftSide,q=a.rightSide,r=a.currentVisibleDate,s=a.onChangeCurrentVisibleDate,t=a.renderAdditionalControls,u=a.inputRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=a.dropdownViewportRef,D=a.dropdownContainer,E=_objectWithoutProperties(a,_excluded),F=useRef(null),G=useRef(null),H=useRef(null),I=useRef(null),J=useRef(null),K=useState(),L=_slicedToArray(K,2),M=L[0],N=L[1],O=0===M,P=1===M,Q=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:H,endRef:I}),R=_slicedToArray(Q,2),S=R[0],T=R[1],U=useCurrentVisibleDate({currentVisibleDate:r,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:s,calendarVisible:S,rangeIndex:M}),V=_slicedToArray(U,2),W=V[0],X=V[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&O){var d=startOfDecade(a.value[0]);return void(d.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&O){var e=startOfDecade(a.value[0]);e.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&e.getTime()!==(W&&addYears(W,10).getTime())&&X(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),S,O]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&P){var d=startOfDecade(a.value[1]);return void(d.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&X(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&P){var e=startOfDecade(a.value[1]);e.getTime()!==(null===W||void 0===W?void 0:W.getTime())&&e.getTime()!==(W&&addYears(W,10).getTime())&&X(addYears(e,-10))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),S,P]),useClickOutside({isActive:S,ignoreClicksInsideRefs:[F,G,J].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:function handler(){N(void 0),T.off()}}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeYearRange,Object.assign({},E,{ref:b,startFieldRef:F,endFieldRef:G,startFieldInputRef:useForkRef([H,null===u||void 0===u?void 0:u[0]]),endFieldInputRef:useForkRef([I,null===u||void 0===u?void 0:u[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;N(0),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;N(1),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[0]:p,startFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[0]:void 0,endFieldLeftSide:Array.isArray(p)?null===p||void 0===p?void 0:p[1]:void 0,endFieldRightSide:Array.isArray(q)?null===q||void 0===q?void 0:q[1]:q,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:O,endFocused:P,startFieldOnClick:T.on,endFieldOnClick:T.on,startFieldName:Array.isArray(v)?v[0]:"".concat(v,"_start"),endFieldName:Array.isArray(v)?v[1]:"".concat(v,"_end"),disabled:A,startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w})),React.createElement(DatePickerDropdown,{type:"year",ref:useForkRef([o,J]),viewportRef:C,anchorRef:F,isOpen:S,onChangeCurrentVisibleDate:X,currentVisibleDate:W,value:a.value||void 0,view:i,events:g,locale:j,className:n,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(O){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(P){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:t,zIndex:getDropdownZIndex(a.style),disableDates:B,container:D}))});
2
2
  //# sourceMappingURL=DatePickerTypeYearRange.js.map