@consta/uikit 4.12.0 → 4.14.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 (103) hide show
  1. package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.js +1 -1
  2. package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.js.map +1 -1
  3. package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js +1 -1
  4. package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js.map +1 -1
  5. package/__internal__/src/components/BreadcrumbsDeprecated/BreadcrumbsDeprecated.js +1 -1
  6. package/__internal__/src/components/BreadcrumbsDeprecated/BreadcrumbsDeprecated.js.map +1 -1
  7. package/__internal__/src/components/CalendarDeprecated/CalendarMonthToggler/CalendarMonthToggler.js +1 -1
  8. package/__internal__/src/components/CalendarDeprecated/CalendarMonthToggler/CalendarMonthToggler.js.map +1 -1
  9. package/__internal__/src/components/CalendarDeprecated/CalendarSlider/CalendarSlider.js +1 -1
  10. package/__internal__/src/components/CalendarDeprecated/CalendarSlider/CalendarSlider.js.map +1 -1
  11. package/__internal__/src/components/Collapse/Collapse.css +1 -1
  12. package/__internal__/src/components/Collapse/Collapse.d.ts +1 -2
  13. package/__internal__/src/components/Collapse/Collapse.js +1 -1
  14. package/__internal__/src/components/Collapse/Collapse.js.map +1 -1
  15. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.css +1 -1
  16. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.js +1 -1
  17. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.js.map +1 -1
  18. package/__internal__/src/components/Collapse/types.d.ts +7 -2
  19. package/__internal__/src/components/Collapse/types.js +1 -1
  20. package/__internal__/src/components/Collapse/types.js.map +1 -1
  21. package/__internal__/src/components/CollapseGroup/CollapseGroup.js +1 -1
  22. package/__internal__/src/components/CollapseGroup/CollapseGroup.js.map +1 -1
  23. package/__internal__/src/components/CollapseGroup/helpers.d.ts +7 -4
  24. package/__internal__/src/components/CollapseGroup/helpers.js.map +1 -1
  25. package/__internal__/src/components/CollapseGroup/useChoice.js +1 -1
  26. package/__internal__/src/components/CollapseGroup/useChoice.js.map +1 -1
  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/DateTime/DateTimeSlider/DateTimeSlider.js +1 -1
  48. package/__internal__/src/components/DateTime/DateTimeSlider/DateTimeSlider.js.map +1 -1
  49. package/__internal__/src/components/DateTime/DateTimeToggler/DateTimeToggler.js +1 -1
  50. package/__internal__/src/components/DateTime/DateTimeToggler/DateTimeToggler.js.map +1 -1
  51. package/__internal__/src/components/Pagination/Pagination.js +1 -1
  52. package/__internal__/src/components/Pagination/Pagination.js.map +1 -1
  53. package/__internal__/src/components/ProgressStepBar/ProgressStepBar.js +1 -1
  54. package/__internal__/src/components/ProgressStepBar/ProgressStepBar.js.map +1 -1
  55. package/__internal__/src/components/Responses403/Responses403.js +1 -1
  56. package/__internal__/src/components/Responses403/Responses403.js.map +1 -1
  57. package/__internal__/src/components/Responses404/Responses404.js +1 -1
  58. package/__internal__/src/components/Responses404/Responses404.js.map +1 -1
  59. package/__internal__/src/components/ResponsesDeleted/ResponsesDeleted.js +1 -1
  60. package/__internal__/src/components/ResponsesDeleted/ResponsesDeleted.js.map +1 -1
  61. package/__internal__/src/components/ResponsesEmptyBox/ResponsesEmptyBox.js +1 -1
  62. package/__internal__/src/components/ResponsesEmptyBox/ResponsesEmptyBox.js.map +1 -1
  63. package/__internal__/src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.js +1 -1
  64. package/__internal__/src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.js.map +1 -1
  65. package/__internal__/src/components/ResponsesExit/ResponsesExit.js +1 -1
  66. package/__internal__/src/components/ResponsesExit/ResponsesExit.js.map +1 -1
  67. package/__internal__/src/components/ResponsesNothingFound/ResponsesNothingFound.js +1 -1
  68. package/__internal__/src/components/ResponsesNothingFound/ResponsesNothingFound.js.map +1 -1
  69. package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js +1 -1
  70. package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js.map +1 -1
  71. package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js +1 -1
  72. package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js.map +1 -1
  73. package/__internal__/src/components/Steps/Steps.js +1 -1
  74. package/__internal__/src/components/Steps/Steps.js.map +1 -1
  75. package/__internal__/src/components/Table/FilterContainer/TableFilterContainer.js +1 -1
  76. package/__internal__/src/components/Table/FilterContainer/TableFilterContainer.js.map +1 -1
  77. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.js +1 -1
  78. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.js.map +1 -1
  79. package/__internal__/src/components/Table/Header/TableHeader.js +1 -1
  80. package/__internal__/src/components/Table/Header/TableHeader.js.map +1 -1
  81. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js +1 -1
  82. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js.map +1 -1
  83. package/__internal__/src/components/Table/TextFilter/TableTextFilter.js +1 -1
  84. package/__internal__/src/components/Table/TextFilter/TableTextFilter.js.map +1 -1
  85. package/__internal__/src/components/Tabs/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +1 -1
  86. package/__internal__/src/components/Tabs/FitModeScrollWrapper/TabsFitModeScrollWrapper.js.map +1 -1
  87. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js +1 -1
  88. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js.map +1 -1
  89. package/__internal__/src/components/TabsDeprecated/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +1 -1
  90. package/__internal__/src/components/TabsDeprecated/FitModeScrollWrapper/TabsFitModeScrollWrapper.js.map +1 -1
  91. package/__internal__/src/components/TabsDeprecated/MoreItems/TabsMoreItems.js +1 -1
  92. package/__internal__/src/components/TabsDeprecated/MoreItems/TabsMoreItems.js.map +1 -1
  93. package/__internal__/src/components/ThemeToggler/ThemeToggler.js +1 -1
  94. package/__internal__/src/components/ThemeToggler/ThemeToggler.js.map +1 -1
  95. package/__internal__/src/components/ThemeToggler/helpers.d.ts +1 -0
  96. package/__internal__/src/components/ThemeToggler/types.d.ts +4 -2
  97. package/__internal__/src/components/ThemeToggler/types.js.map +1 -1
  98. package/__internal__/src/components/User/User.js +1 -1
  99. package/__internal__/src/components/User/User.js.map +1 -1
  100. package/package.json +1 -1
  101. package/__internal__/src/components/DatePicker/useDropdownVisible.d.ts +0 -24
  102. package/__internal__/src/components/DatePicker/useDropdownVisible.js +0 -2
  103. package/__internal__/src/components/DatePicker/useDropdownVisible.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CollapseGroup.js","names":["IconArrowDown","React","forwardRef","Collapse","collapsePropCloseDirectionIconDefault","collapsePropDirectionIconDefault","collapsePropIconPositionDefault","collapsePropSizeDefault","collapsePropViewDefault","withDefaultGetters","useChoice","CollapseGroupRender","props","ref","items","getItemLabel","getItemContent","size","view","hoverEffect","divider","icon","closeIcon","getItemRightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","otherProps","getChecked","getOnChange","map","item","index","rightSide","CollapseGroup"],"sources":["../../../../../src/components/CollapseGroup/CollapseGroup.tsx"],"sourcesContent":["import { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport React, { forwardRef } from 'react';\n\nimport {\n Collapse,\n collapsePropCloseDirectionIconDefault,\n collapsePropDirectionIconDefault,\n collapsePropIconPositionDefault,\n collapsePropSizeDefault,\n collapsePropViewDefault,\n} from '../Collapse/Collapse';\nimport {\n CollapseGroupComponent,\n CollapseGroupRenderFunction,\n withDefaultGetters,\n} from './helpers';\nimport { useChoice } from './useChoice';\n\nconst CollapseGroupRender: CollapseGroupRenderFunction = (props, ref) => {\n const {\n items,\n getItemLabel,\n getItemContent,\n size = collapsePropSizeDefault,\n view = collapsePropViewDefault,\n hoverEffect,\n divider,\n icon = IconArrowDown,\n closeIcon,\n getItemRightSide,\n horizontalSpace,\n iconPosition = collapsePropIconPositionDefault,\n directionIcon = collapsePropDirectionIconDefault,\n closeDirectionIcon = collapsePropCloseDirectionIconDefault,\n ...otherProps\n } = withDefaultGetters(props);\n\n const { getChecked, getOnChange } = useChoice(props);\n\n return (\n <div ref={ref} {...otherProps}>\n {items.map((item, index) => {\n return (\n <Collapse\n label={getItemLabel(item)}\n key={index}\n size={size}\n view={view}\n horizontalSpace={horizontalSpace}\n icon={icon}\n hoverEffect={hoverEffect}\n divider={divider}\n isOpen={getChecked(index)}\n onClick={getOnChange(index)}\n {...(iconPosition === 'left'\n ? {\n iconPosition,\n rightSide: getItemRightSide(item),\n }\n : { iconPosition })}\n {...(closeIcon\n ? { closeIcon }\n : {\n directionIcon,\n closeDirectionIcon,\n })}\n >\n {getItemContent(item)}\n </Collapse>\n );\n })}\n </div>\n );\n};\n\nexport const CollapseGroup = forwardRef(\n CollapseGroupRender,\n) as CollapseGroupComponent;\n\nexport * from './helpers';\n"],"mappings":"+RAAA,OAASA,aAAT,KAA8B,6BAA9B,CACA,MAAOC,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OACEC,QADF,CAEEC,qCAFF,CAGEC,gCAHF,CAIEC,+BAJF,CAKEC,uBALF,CAMEC,uBANF,4BAQA,OAGEC,kBAHF,iBAKA,OAASC,SAAT,mBAEA,GAAMC,oBAAgD,CAAG,SAACC,CAAD,CAAQC,CAAR,CAAgB,OAiBnEJ,kBAAkB,CAACG,CAAD,CAjBiD,CAErEE,CAFqE,GAErEA,KAFqE,CAGrEC,CAHqE,GAGrEA,YAHqE,CAIrEC,CAJqE,GAIrEA,cAJqE,KAKrEC,IALqE,CAKrEA,CALqE,YAK9DV,uBAL8D,OAMrEW,IANqE,CAMrEA,CANqE,YAM9DV,uBAN8D,GAOrEW,CAPqE,GAOrEA,WAPqE,CAQrEC,CARqE,GAQrEA,OARqE,KASrEC,IATqE,CASrEA,CATqE,YAS9DrB,aAT8D,GAUrEsB,CAVqE,GAUrEA,SAVqE,CAWrEC,CAXqE,GAWrEA,gBAXqE,CAYrEC,CAZqE,GAYrEA,eAZqE,KAarEC,YAbqE,CAarEA,CAbqE,YAatDnB,+BAbsD,OAcrEoB,aAdqE,CAcrEA,CAdqE,YAcrDrB,gCAdqD,OAerEsB,kBAfqE,CAerEA,CAfqE,YAehDvB,qCAfgD,GAgBlEwB,CAhBkE,yCAmBnClB,SAAS,CAACE,CAAD,CAnB0B,CAmB/DiB,CAnB+D,GAmB/DA,UAnB+D,CAmBnDC,CAnBmD,GAmBnDA,WAnBmD,CAqBvE,MACE,0CAAK,GAAG,CAAEjB,CAAV,EAAmBe,CAAnB,EACGd,CAAK,CAACiB,GAAN,CAAU,SAACC,CAAD,CAAOC,CAAP,CAAiB,CAC1B,MACE,qBAAC,QAAD,gBACE,KAAK,CAAElB,CAAY,CAACiB,CAAD,CADrB,CAEE,GAAG,CAAEC,CAFP,CAGE,IAAI,CAAEhB,CAHR,CAIE,IAAI,CAAEC,CAJR,CAKE,eAAe,CAAEM,CALnB,CAME,IAAI,CAAEH,CANR,CAOE,WAAW,CAAEF,CAPf,CAQE,OAAO,CAAEC,CARX,CASE,MAAM,CAAES,CAAU,CAACI,CAAD,CATpB,CAUE,OAAO,CAAEH,CAAW,CAACG,CAAD,CAVtB,EAWwB,MAAjB,GAAAR,CAAY,CACb,CACEA,YAAY,CAAZA,CADF,CAEES,SAAS,CAAEX,CAAgB,CAACS,CAAD,CAF7B,CADa,CAKb,CAAEP,YAAY,CAAZA,CAAF,CAhBN,CAiBOH,CAAS,CACV,CAAEA,SAAS,CAATA,CAAF,CADU,CAEV,CACEI,aAAa,CAAbA,CADF,CAEEC,kBAAkB,CAAlBA,CAFF,CAnBN,EAwBGX,CAAc,CAACgB,CAAD,CAxBjB,CA2BH,CA7BA,CADH,CAiCH,CAvDD,CAyDA,MAAO,IAAMG,cAAa,CAAGjC,UAAU,CACrCS,mBADqC,CAAhC,CAIP"}
1
+ {"version":3,"file":"CollapseGroup.js","names":["IconArrowDown","React","forwardRef","Collapse","collapsePropCloseDirectionIconDefault","collapsePropDirectionIconDefault","collapsePropIconPositionDefault","collapsePropSizeDefault","collapsePropViewDefault","withDefaultGetters","useChoice","CollapseGroupRender","props","ref","items","getItemLabel","getItemContent","size","view","hoverEffect","divider","icon","closeIcon","getItemRightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","iconView","isAccordion","otherProps","getChecked","getOnChange","map","item","index","rightSide","CollapseGroup"],"sources":["../../../../../src/components/CollapseGroup/CollapseGroup.tsx"],"sourcesContent":["import { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport React, { forwardRef } from 'react';\n\nimport {\n Collapse,\n collapsePropCloseDirectionIconDefault,\n collapsePropDirectionIconDefault,\n collapsePropIconPositionDefault,\n collapsePropSizeDefault,\n collapsePropViewDefault,\n} from '../Collapse/Collapse';\nimport {\n CollapseGroupComponent,\n CollapseGroupRenderFunction,\n withDefaultGetters,\n} from './helpers';\nimport { useChoice } from './useChoice';\n\nconst CollapseGroupRender: CollapseGroupRenderFunction = (props, ref) => {\n const {\n items,\n getItemLabel,\n getItemContent,\n size = collapsePropSizeDefault,\n view = collapsePropViewDefault,\n hoverEffect,\n divider,\n icon = IconArrowDown,\n closeIcon,\n getItemRightSide,\n horizontalSpace,\n iconPosition = collapsePropIconPositionDefault,\n directionIcon = collapsePropDirectionIconDefault,\n closeDirectionIcon = collapsePropCloseDirectionIconDefault,\n iconView,\n isAccordion,\n ...otherProps\n } = withDefaultGetters(props);\n\n const { getChecked, getOnChange } = useChoice(props);\n\n return (\n <div ref={ref} {...otherProps}>\n {items.map((item, index) => {\n return (\n <Collapse\n label={getItemLabel(item)}\n key={index}\n size={size}\n view={view}\n horizontalSpace={horizontalSpace}\n icon={icon}\n hoverEffect={hoverEffect}\n divider={divider}\n isOpen={getChecked(index)}\n onClick={getOnChange(index)}\n iconView={iconView}\n {...(iconPosition === 'left'\n ? {\n iconPosition,\n rightSide: getItemRightSide(item),\n }\n : { iconPosition })}\n {...(closeIcon\n ? { closeIcon }\n : {\n directionIcon,\n closeDirectionIcon,\n })}\n >\n {getItemContent(item)}\n </Collapse>\n );\n })}\n </div>\n );\n};\n\nexport const CollapseGroup = forwardRef(\n CollapseGroupRender,\n) as CollapseGroupComponent;\n\nexport * from './helpers';\n"],"mappings":"wTAAA,OAASA,aAAT,KAA8B,6BAA9B,CACA,MAAOC,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OACEC,QADF,CAEEC,qCAFF,CAGEC,gCAHF,CAIEC,+BAJF,CAKEC,uBALF,CAMEC,uBANF,4BAQA,OAGEC,kBAHF,iBAKA,OAASC,SAAT,mBAEA,GAAMC,oBAAgD,CAAG,SAACC,CAAD,CAAQC,CAAR,CAAgB,OAmBnEJ,kBAAkB,CAACG,CAAD,CAnBiD,CAErEE,CAFqE,GAErEA,KAFqE,CAGrEC,CAHqE,GAGrEA,YAHqE,CAIrEC,CAJqE,GAIrEA,cAJqE,KAKrEC,IALqE,CAKrEA,CALqE,YAK9DV,uBAL8D,OAMrEW,IANqE,CAMrEA,CANqE,YAM9DV,uBAN8D,GAOrEW,CAPqE,GAOrEA,WAPqE,CAQrEC,CARqE,GAQrEA,OARqE,KASrEC,IATqE,CASrEA,CATqE,YAS9DrB,aAT8D,GAUrEsB,CAVqE,GAUrEA,SAVqE,CAWrEC,CAXqE,GAWrEA,gBAXqE,CAYrEC,CAZqE,GAYrEA,eAZqE,KAarEC,YAbqE,CAarEA,CAbqE,YAatDnB,+BAbsD,OAcrEoB,aAdqE,CAcrEA,CAdqE,YAcrDrB,gCAdqD,OAerEsB,kBAfqE,CAerEA,CAfqE,YAehDvB,qCAfgD,GAgBrEwB,CAhBqE,GAgBrEA,QAhBqE,CAiBrEC,CAjBqE,GAiBrEA,WAjBqE,CAkBlEC,CAlBkE,yCAqBnCpB,SAAS,CAACE,CAAD,CArB0B,CAqB/DmB,CArB+D,GAqB/DA,UArB+D,CAqBnDC,CArBmD,GAqBnDA,WArBmD,CAuBvE,MACE,0CAAK,GAAG,CAAEnB,CAAV,EAAmBiB,CAAnB,EACGhB,CAAK,CAACmB,GAAN,CAAU,SAACC,CAAD,CAAOC,CAAP,CAAiB,CAC1B,MACE,qBAAC,QAAD,gBACE,KAAK,CAAEpB,CAAY,CAACmB,CAAD,CADrB,CAEE,GAAG,CAAEC,CAFP,CAGE,IAAI,CAAElB,CAHR,CAIE,IAAI,CAAEC,CAJR,CAKE,eAAe,CAAEM,CALnB,CAME,IAAI,CAAEH,CANR,CAOE,WAAW,CAAEF,CAPf,CAQE,OAAO,CAAEC,CARX,CASE,MAAM,CAAEW,CAAU,CAACI,CAAD,CATpB,CAUE,OAAO,CAAEH,CAAW,CAACG,CAAD,CAVtB,CAWE,QAAQ,CAAEP,CAXZ,EAYwB,MAAjB,GAAAH,CAAY,CACb,CACEA,YAAY,CAAZA,CADF,CAEEW,SAAS,CAAEb,CAAgB,CAACW,CAAD,CAF7B,CADa,CAKb,CAAET,YAAY,CAAZA,CAAF,CAjBN,CAkBOH,CAAS,CACV,CAAEA,SAAS,CAATA,CAAF,CADU,CAEV,CACEI,aAAa,CAAbA,CADF,CAEEC,kBAAkB,CAAlBA,CAFF,CApBN,EAyBGX,CAAc,CAACkB,CAAD,CAzBjB,CA4BH,CA9BA,CADH,CAkCH,CA1DD,CA4DA,MAAO,IAAMG,cAAa,CAAGnC,UAAU,CACrCS,mBADqC,CAAhC,CAIP"}
@@ -1,7 +1,7 @@
1
1
  import { IconComponent } from '@consta/icons/Icon';
2
2
  import React from 'react';
3
- import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
4
- import { CollapseIconPropDirection, CollapsePropHorizontalSpace, CollapsePropSize, CollapsePropView } from '../Collapse/Collapse';
3
+ import { CollapseIconPropDirection, CollapsePropHorizontalSpace, CollapsePropIconView, CollapsePropSize, CollapsePropView } from "../Collapse";
4
+ import { PropsWithHTMLAttributesAndRef } from "../../utils/types/PropsWithHTMLAttributes";
5
5
  export declare type DefaultItem = {
6
6
  label: React.ReactNode;
7
7
  content: React.ReactNode;
@@ -29,6 +29,7 @@ export declare type CollapseGroupProps<ITEM, IS_ACCORDION extends boolean> = Pro
29
29
  opened?: CollapseGroupPropOpened<IS_ACCORDION>;
30
30
  getItemLabel?: CollapseGroupPropGetItemLabel<ITEM>;
31
31
  getItemContent?: CollapseGroupPropGetItemContent<ITEM>;
32
+ iconView?: CollapsePropIconView;
32
33
  } & ({
33
34
  closeIcon: IconComponent;
34
35
  directionIcon?: never;
@@ -71,6 +72,7 @@ export declare function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(p
71
72
  opened?: CollapseGroupPropOpened<IS_ACCORDION>;
72
73
  getItemLabel?: CollapseGroupPropGetItemLabel<ITEM> | undefined;
73
74
  getItemContent?: CollapseGroupPropGetItemContent<ITEM> | undefined;
75
+ iconView?: "ghost" | "clear" | undefined;
74
76
  } & {
75
77
  closeIcon: IconComponent;
76
78
  directionIcon?: undefined;
@@ -78,7 +80,7 @@ export declare function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(p
78
80
  } & {
79
81
  iconPosition?: "left" | undefined;
80
82
  getItemRightSide?: CollapseGroupPropGetItemRightSide<ITEM> | undefined;
81
- } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "children" | "size" | "view" | "items" | "getItemLabel" | "icon" | "getItemRightSide" | "horizontalSpace" | "closeIcon" | "divider" | "hoverEffect" | "directionIcon" | "closeDirectionIcon" | "iconPosition" | "isAccordion" | "onOpen" | "opened" | "getItemContent"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
83
+ } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "children" | "size" | "view" | "items" | "getItemLabel" | "icon" | "getItemRightSide" | "horizontalSpace" | "closeIcon" | "divider" | "hoverEffect" | "iconView" | "directionIcon" | "closeDirectionIcon" | "iconPosition" | "isAccordion" | "onOpen" | "opened" | "getItemContent"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
82
84
  label: React.ReactNode;
83
85
  } ? {} : {
84
86
  getItemLabel: CollapseGroupPropGetItemLabel<ITEM>;
@@ -104,6 +106,7 @@ export declare function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(p
104
106
  opened?: CollapseGroupPropOpened<IS_ACCORDION>;
105
107
  getItemLabel?: CollapseGroupPropGetItemLabel<ITEM> | undefined;
106
108
  getItemContent?: CollapseGroupPropGetItemContent<ITEM> | undefined;
109
+ iconView?: "ghost" | "clear" | undefined;
107
110
  } & {
108
111
  closeIcon?: undefined;
109
112
  directionIcon?: "left" | "right" | "downRight" | "downLeft" | "upRight" | "upLeft" | "up" | "down" | undefined;
@@ -111,7 +114,7 @@ export declare function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(p
111
114
  } & {
112
115
  iconPosition?: "left" | undefined;
113
116
  getItemRightSide?: CollapseGroupPropGetItemRightSide<ITEM> | undefined;
114
- } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "children" | "size" | "view" | "items" | "getItemLabel" | "icon" | "getItemRightSide" | "horizontalSpace" | "closeIcon" | "divider" | "hoverEffect" | "directionIcon" | "closeDirectionIcon" | "iconPosition" | "isAccordion" | "onOpen" | "opened" | "getItemContent"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
117
+ } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "children" | "size" | "view" | "items" | "getItemLabel" | "icon" | "getItemRightSide" | "horizontalSpace" | "closeIcon" | "divider" | "hoverEffect" | "iconView" | "directionIcon" | "closeDirectionIcon" | "iconPosition" | "isAccordion" | "onOpen" | "opened" | "getItemContent"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
115
118
  label: React.ReactNode;
116
119
  } ? {} : {
117
120
  getItemLabel: CollapseGroupPropGetItemLabel<ITEM>;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemContent","content","defaultGetItemRightSide","rightSide","withDefaultGetters","props","getItemLabel","getItemContent","getItemRightSide"],"sources":["../../../../../src/components/CollapseGroup/helpers.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\nimport {\n CollapseIconPropDirection,\n CollapsePropHorizontalSpace,\n CollapsePropSize,\n CollapsePropView,\n} from '../Collapse/Collapse';\n\nexport type DefaultItem = {\n label: React.ReactNode;\n content: React.ReactNode;\n rightSide?: React.ReactNode | React.ReactNode[];\n};\n\nexport type CollapseGroupPropOnOpen<IS_ACCORDION> = (params: {\n e: React.MouseEvent<HTMLDivElement, MouseEvent>;\n value: (IS_ACCORDION extends true ? number : number[]) | null;\n}) => void;\n\nexport type CollapseGroupPropOpened<IS_ACCORDION> =\n | (IS_ACCORDION extends true ? number : number[])\n | null\n | undefined;\n\ntype CollapseGroupPropGetItemLabel<ITEM> = (item: ITEM) => React.ReactNode;\ntype CollapseGroupPropGetItemContent<ITEM> = (item: ITEM) => React.ReactNode;\ntype CollapseGroupPropGetItemRightSide<ITEM> = (\n item: ITEM,\n) => React.ReactNode | React.ReactNode[] | undefined;\n\nexport type CollapseGroupProps<\n ITEM,\n IS_ACCORDION extends boolean,\n> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n isAccordion?: IS_ACCORDION;\n children?: never;\n icon?: IconComponent;\n divider?: boolean;\n size?: CollapsePropSize;\n view?: CollapsePropView;\n horizontalSpace?: CollapsePropHorizontalSpace;\n hoverEffect?: boolean;\n onOpen?: CollapseGroupPropOnOpen<IS_ACCORDION>;\n opened?: CollapseGroupPropOpened<IS_ACCORDION>;\n getItemLabel?: CollapseGroupPropGetItemLabel<ITEM>;\n getItemContent?: CollapseGroupPropGetItemContent<ITEM>;\n } & (\n | {\n closeIcon: IconComponent;\n directionIcon?: never;\n closeDirectionIcon?: never;\n }\n | {\n closeIcon?: never;\n directionIcon?: CollapseIconPropDirection;\n closeDirectionIcon?: CollapseIconPropDirection;\n }\n ) &\n (\n | {\n iconPosition?: 'left';\n getItemRightSide?: CollapseGroupPropGetItemRightSide<ITEM>;\n }\n | {\n iconPosition?: 'right';\n getItemRightSide?: never;\n }\n ),\n HTMLDivElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: CollapseGroupPropGetItemLabel<ITEM> }) &\n (ITEM extends { content: DefaultItem['content'] }\n ? {}\n : { getItemContent: CollapseGroupPropGetItemContent<ITEM> });\n\nexport const defaultGetItemLabel: CollapseGroupPropGetItemLabel<DefaultItem> = (\n item,\n) => item.label;\nexport const defaultGetItemContent: CollapseGroupPropGetItemContent<\n DefaultItem\n> = (item) => item.content;\nexport const defaultGetItemRightSide: CollapseGroupPropGetItemContent<\n DefaultItem\n> = (item) => item.rightSide;\n\nexport type CollapseGroupComponent = <\n ITEM,\n IS_ACCORDION extends boolean = false,\n>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) => React.ReactElement | null;\n\nexport type CollapseGroupRenderFunction = <\n ITEM,\n IS_ACCORDION extends boolean = false,\n>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n ref: React.Ref<HTMLDivElement>,\n) => React.ReactElement | null;\n\nexport function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemContent: props.getItemContent || defaultGetItemContent,\n getItemRightSide: props.getItemRightSide || defaultGetItemRightSide,\n };\n}\n"],"mappings":"qqBAkFA,MAAO,IAAMA,oBAA+D,CAAG,SAC7EC,CAD6E,QAE1EA,EAAI,CAACC,KAFqE,CAAxE,CAGP,MAAO,IAAMC,sBAEZ,CAAG,SAACF,CAAD,QAAUA,EAAI,CAACG,OAAf,CAFG,CAGP,MAAO,IAAMC,wBAEZ,CAAG,SAACJ,CAAD,QAAUA,EAAI,CAACK,SAAf,CAFG,CAmBP,MAAO,SAASC,mBAAT,CACLC,CADK,CAEL,CACA,sCACKA,CADL,MAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBT,mBAFtC,CAGEU,cAAc,CAAEF,CAAK,CAACE,cAAN,EAAwBP,qBAH1C,CAIEQ,gBAAgB,CAAEH,CAAK,CAACG,gBAAN,EAA0BN,uBAJ9C,EAMD"}
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemLabel","item","label","defaultGetItemContent","content","defaultGetItemRightSide","rightSide","withDefaultGetters","props","getItemLabel","getItemContent","getItemRightSide"],"sources":["../../../../../src/components/CollapseGroup/helpers.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport {\n CollapseIconPropDirection,\n CollapsePropHorizontalSpace,\n CollapsePropIconView,\n CollapsePropSize,\n CollapsePropView,\n} from '##/components/Collapse';\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport type DefaultItem = {\n label: React.ReactNode;\n content: React.ReactNode;\n rightSide?: React.ReactNode | React.ReactNode[];\n};\n\nexport type CollapseGroupPropOnOpen<IS_ACCORDION> = (params: {\n e: React.MouseEvent<HTMLDivElement, MouseEvent>;\n value: (IS_ACCORDION extends true ? number : number[]) | null;\n}) => void;\n\nexport type CollapseGroupPropOpened<IS_ACCORDION> =\n | (IS_ACCORDION extends true ? number : number[])\n | null\n | undefined;\n\ntype CollapseGroupPropGetItemLabel<ITEM> = (item: ITEM) => React.ReactNode;\ntype CollapseGroupPropGetItemContent<ITEM> = (item: ITEM) => React.ReactNode;\ntype CollapseGroupPropGetItemRightSide<ITEM> = (\n item: ITEM,\n) => React.ReactNode | React.ReactNode[] | undefined;\n\nexport type CollapseGroupProps<\n ITEM,\n IS_ACCORDION extends boolean,\n> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n isAccordion?: IS_ACCORDION;\n children?: never;\n icon?: IconComponent;\n divider?: boolean;\n size?: CollapsePropSize;\n view?: CollapsePropView;\n horizontalSpace?: CollapsePropHorizontalSpace;\n hoverEffect?: boolean;\n onOpen?: CollapseGroupPropOnOpen<IS_ACCORDION>;\n opened?: CollapseGroupPropOpened<IS_ACCORDION>;\n getItemLabel?: CollapseGroupPropGetItemLabel<ITEM>;\n getItemContent?: CollapseGroupPropGetItemContent<ITEM>;\n iconView?: CollapsePropIconView;\n } & (\n | {\n closeIcon: IconComponent;\n directionIcon?: never;\n closeDirectionIcon?: never;\n }\n | {\n closeIcon?: never;\n directionIcon?: CollapseIconPropDirection;\n closeDirectionIcon?: CollapseIconPropDirection;\n }\n ) &\n (\n | {\n iconPosition?: 'left';\n getItemRightSide?: CollapseGroupPropGetItemRightSide<ITEM>;\n }\n | {\n iconPosition?: 'right';\n getItemRightSide?: never;\n }\n ),\n HTMLDivElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: CollapseGroupPropGetItemLabel<ITEM> }) &\n (ITEM extends { content: DefaultItem['content'] }\n ? {}\n : { getItemContent: CollapseGroupPropGetItemContent<ITEM> });\n\nexport const defaultGetItemLabel: CollapseGroupPropGetItemLabel<DefaultItem> = (\n item,\n) => item.label;\nexport const defaultGetItemContent: CollapseGroupPropGetItemContent<\n DefaultItem\n> = (item) => item.content;\nexport const defaultGetItemRightSide: CollapseGroupPropGetItemContent<\n DefaultItem\n> = (item) => item.rightSide;\n\nexport type CollapseGroupComponent = <\n ITEM,\n IS_ACCORDION extends boolean = false,\n>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) => React.ReactElement | null;\n\nexport type CollapseGroupRenderFunction = <\n ITEM,\n IS_ACCORDION extends boolean = false,\n>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n ref: React.Ref<HTMLDivElement>,\n) => React.ReactElement | null;\n\nexport function withDefaultGetters<ITEM, IS_ACCORDION extends boolean>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemContent: props.getItemContent || defaultGetItemContent,\n getItemRightSide: props.getItemRightSide || defaultGetItemRightSide,\n };\n}\n"],"mappings":"qqBAoFA,MAAO,IAAMA,oBAA+D,CAAG,SAC7EC,CAD6E,QAE1EA,EAAI,CAACC,KAFqE,CAAxE,CAGP,MAAO,IAAMC,sBAEZ,CAAG,SAACF,CAAD,QAAUA,EAAI,CAACG,OAAf,CAFG,CAGP,MAAO,IAAMC,wBAEZ,CAAG,SAACJ,CAAD,QAAUA,EAAI,CAACK,SAAf,CAFG,CAmBP,MAAO,SAASC,mBAAT,CACLC,CADK,CAEL,CACA,sCACKA,CADL,MAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBT,mBAFtC,CAGEU,cAAc,CAAEF,CAAK,CAACE,cAAN,EAAwBP,qBAH1C,CAIEQ,gBAAgB,CAAEH,CAAK,CAACG,gBAAN,EAA0BN,uBAJ9C,EAMD"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useEffect,useState}from"react";import{useChoiceGroupIndexed}from"../../hooks/useChoiceGroupIndexed/useChoiceGroupIndexed";export var useChoice=function(a){var b=useState(a.opened),c=_slicedToArray(b,2),d=c[0],e=c[1],f={value:d,multiple:!a.isAccordion,callBack:function callBack(b){var c;e(b.value),null===(c=a.onOpen)||void 0===c?void 0:c.call(a,b)},isNullableValue:!0};return useEffect(function(){e(a.opened)},[a.opened]),useChoiceGroupIndexed(f)};
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useEffect,useState}from"react";import{useChoiceGroupIndexed}from"../../hooks/useChoiceGroupIndexed";export var useChoice=function(a){var b=useState(a.opened),c=_slicedToArray(b,2),d=c[0],e=c[1],f={value:d,multiple:!a.isAccordion,callBack:function callBack(b){var c;e(b.value),null===(c=a.onOpen)||void 0===c?void 0:c.call(a,b)},isNullableValue:!0};return useEffect(function(){e(a.opened)},[a.opened]),useChoiceGroupIndexed(f)};
2
2
  //# sourceMappingURL=useChoice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useChoice.js","names":["useEffect","useState","useChoiceGroupIndexed","useChoice","props","opened","openedKeys","setOpenedKeys","choiceGroupIndexedParams","value","multiple","isAccordion","callBack","params","onOpen","isNullableValue"],"sources":["../../../../../src/components/CollapseGroup/useChoice.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { useChoiceGroupIndexed } from '../../hooks/useChoiceGroupIndexed/useChoiceGroupIndexed';\nimport {\n CollapseGroupPropOnOpen,\n CollapseGroupPropOpened,\n CollapseGroupProps,\n} from './helpers';\n\ntype ChoiceGroupIndexedParams = {\n value: CollapseGroupPropOpened<boolean>;\n multiple: boolean;\n callBack: CollapseGroupPropOnOpen<boolean>;\n isNullableValue: true;\n};\n\nexport const useChoice = <ITEM, IS_ACCORDION extends boolean>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) => {\n const [openedKeys, setOpenedKeys] = useState<typeof props.opened>(\n props.opened,\n );\n\n const callBack: CollapseGroupPropOnOpen<\n Exclude<typeof props.isAccordion, undefined>\n > = (params) => {\n setOpenedKeys(params.value);\n props.onOpen?.(params);\n };\n\n const choiceGroupIndexedParams: ChoiceGroupIndexedParams = {\n value: openedKeys,\n multiple: !props.isAccordion,\n callBack,\n isNullableValue: true,\n };\n\n useEffect(() => {\n setOpenedKeys(props.opened);\n }, [props.opened]);\n\n return useChoiceGroupIndexed(choiceGroupIndexedParams);\n};\n"],"mappings":"iEAAA,OAASA,SAAT,CAAoBC,QAApB,KAAoC,OAApC,CAEA,OAASC,qBAAT,+DAcA,MAAO,IAAMC,UAAS,CAAG,SACvBC,CADuB,CAEpB,OACiCH,QAAQ,CAC1CG,CAAK,CAACC,MADoC,CADzC,uBACIC,CADJ,MACgBC,CADhB,MAYGC,CAAkD,CAAG,CACzDC,KAAK,CAAEH,CADkD,CAEzDI,QAAQ,CAAE,CAACN,CAAK,CAACO,WAFwC,CAGzDC,QAAQ,CARN,QAFEA,SAEF,CAACC,CAAD,CAAY,OACdN,CAAa,CAACM,CAAM,CAACJ,KAAR,CADC,WAEdL,CAAK,CAACU,MAFQ,qBAEd,OAAAV,CAAK,CAAUS,CAAV,CACN,CAE0D,CAIzDE,eAAe,GAJ0C,CAZxD,CAuBH,MAJAf,UAAS,CAAC,UAAM,CACdO,CAAa,CAACH,CAAK,CAACC,MAAP,CACd,CAFQ,CAEN,CAACD,CAAK,CAACC,MAAP,CAFM,CAIT,CAAOH,qBAAqB,CAACM,CAAD,CAC7B,CA1BM"}
1
+ {"version":3,"file":"useChoice.js","names":["useEffect","useState","useChoiceGroupIndexed","useChoice","props","opened","openedKeys","setOpenedKeys","choiceGroupIndexedParams","value","multiple","isAccordion","callBack","params","onOpen","isNullableValue"],"sources":["../../../../../src/components/CollapseGroup/useChoice.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport { useChoiceGroupIndexed } from '##/hooks/useChoiceGroupIndexed';\n\nimport {\n CollapseGroupPropOnOpen,\n CollapseGroupPropOpened,\n CollapseGroupProps,\n} from './helpers';\n\ntype ChoiceGroupIndexedParams = {\n value: CollapseGroupPropOpened<boolean>;\n multiple: boolean;\n callBack: CollapseGroupPropOnOpen<boolean>;\n isNullableValue: true;\n};\n\nexport const useChoice = <ITEM, IS_ACCORDION extends boolean>(\n props: CollapseGroupProps<ITEM, IS_ACCORDION>,\n) => {\n const [openedKeys, setOpenedKeys] = useState<typeof props.opened>(\n props.opened,\n );\n\n const callBack: CollapseGroupPropOnOpen<\n Exclude<typeof props.isAccordion, undefined>\n > = (params) => {\n setOpenedKeys(params.value);\n props.onOpen?.(params);\n };\n\n const choiceGroupIndexedParams: ChoiceGroupIndexedParams = {\n value: openedKeys,\n multiple: !props.isAccordion,\n callBack,\n isNullableValue: true,\n };\n\n useEffect(() => {\n setOpenedKeys(props.opened);\n }, [props.opened]);\n\n return useChoiceGroupIndexed(choiceGroupIndexedParams);\n};\n"],"mappings":"iEAAA,OAASA,SAAT,CAAoBC,QAApB,KAAoC,OAApC,CAEA,OAASC,qBAAT,yCAeA,MAAO,IAAMC,UAAS,CAAG,SACvBC,CADuB,CAEpB,OACiCH,QAAQ,CAC1CG,CAAK,CAACC,MADoC,CADzC,uBACIC,CADJ,MACgBC,CADhB,MAYGC,CAAkD,CAAG,CACzDC,KAAK,CAAEH,CADkD,CAEzDI,QAAQ,CAAE,CAACN,CAAK,CAACO,WAFwC,CAGzDC,QAAQ,CARN,QAFEA,SAEF,CAACC,CAAD,CAAY,OACdN,CAAa,CAACM,CAAM,CAACJ,KAAR,CADC,WAEdL,CAAK,CAACU,MAFQ,qBAEd,OAAAV,CAAK,CAAUS,CAAV,CACN,CAE0D,CAIzDE,eAAe,GAJ0C,CAZxD,CAuBH,MAJAf,UAAS,CAAC,UAAM,CACdO,CAAa,CAACH,CAAK,CAACC,MAAP,CACd,CAFQ,CAEN,CAACD,CAAK,CAACC,MAAP,CAFM,CAIT,CAAOH,qBAAqB,CAACM,CAAD,CAC7B,CA1BM"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["form","anchorRef","isOpen","className","zIndex","tabIndex","onFocus","onBlur","renderAdditionalControls"];import"./DatePickerDropdown.css";import React,{forwardRef,useCallback,useRef,useState}from"react";import{Transition}from"react-transition-group";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{animateTimeout,cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate/MixPopoverAnimate";import{cn}from"../../../utils/bem";import{DateTime}from"../../DateTime/DateTime";import{Popover}from"../../Popover/Popover";import{DatePickerAdditionalControls}from"../DatePickerAdditionalControls/DatePickerAdditionalControls";import{datePickerPropDropdownFormDefault}from"../types";var moveMap={year:"year",month:"month",date:"day",time:"time","date-time":"day"},cnDatePickerDropdown=cn("DatePickerDropdown");export var DatePickerDropdown=forwardRef(function(a,b){var c=a.form,d=void 0===c?datePickerPropDropdownFormDefault:c,e=a.anchorRef,f=a.isOpen,g=a.className,h=a.zIndex,i=a.tabIndex,j=void 0===i?0:i,k=a.onFocus,l=a.onBlur,m=a.renderAdditionalControls,n=_objectWithoutProperties(a,_excluded),o=useRef(null),p=useState(),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useFlag(!0),u=_slicedToArray(t,2),v=u[0],w=u[1],x=useCallback(function(b){b===moveMap[a.type]?w.on():w.off()},[a.type]),y=useForkRef([b,o]);return React.createElement(Transition,{in:f,unmountOnExit:!0,timeout:animateTimeout,nodeRef:o},function(b){return React.createElement(Popover,{onFocus:k,onBlur:l,ref:y,tabIndex:j,anchorRef:e,className:cnDatePickerDropdown({form:d},[g,cnMixPopoverAnimate({direction:r,animate:b})]),direction:"downStartLeft",spareDirection:"downStartLeft",possibleDirections:["downStartLeft","upStartLeft","downStartRight","upStartRight"],style:{zIndex:h},role:"listbox",onSetDirection:s},React.createElement(DateTime,Object.assign({},n,{onMove:x})),v&&React.createElement(DatePickerAdditionalControls,{currentVisibleDate:a.currentVisibleDate,renderAdditionalControls:m,type:a.type,view:a.view}))})});
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["form","anchorRef","isOpen","className","zIndex","renderAdditionalControls"];import"./DatePickerDropdown.css";import React,{forwardRef,useCallback,useRef,useState}from"react";import{Transition}from"react-transition-group";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{animateTimeout,cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate/MixPopoverAnimate";import{cn}from"../../../utils/bem";import{DateTime}from"../../DateTime/DateTime";import{Popover}from"../../Popover/Popover";import{DatePickerAdditionalControls}from"../DatePickerAdditionalControls/DatePickerAdditionalControls";import{datePickerPropDropdownFormDefault}from"../types";var moveMap={year:"year",month:"month",date:"day",time:"time","date-time":"day"},cnDatePickerDropdown=cn("DatePickerDropdown");export var DatePickerDropdown=forwardRef(function(a,b){var c=a.form,d=void 0===c?datePickerPropDropdownFormDefault:c,e=a.anchorRef,f=a.isOpen,g=a.className,h=a.zIndex,i=a.renderAdditionalControls,j=_objectWithoutProperties(a,_excluded),k=useRef(null),l=useState(),m=_slicedToArray(l,2),n=m[0],o=m[1],p=useFlag(!0),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useCallback(function(b){b===moveMap[a.type]?s.on():s.off()},[a.type]),u=useForkRef([b,k]);return React.createElement(Transition,{in:f,unmountOnExit:!0,timeout:animateTimeout,nodeRef:k},function(b){return React.createElement(Popover,{ref:u,anchorRef:e,className:cnDatePickerDropdown({form:d},[g,cnMixPopoverAnimate({direction:n,animate:b})]),direction:"downStartLeft",spareDirection:"downStartLeft",possibleDirections:["downStartLeft","upStartLeft","downStartRight","upStartRight"],style:{zIndex:h},role:"listbox",onSetDirection:o},React.createElement(DateTime,Object.assign({},j,{onMove:t})),r&&React.createElement(DatePickerAdditionalControls,{currentVisibleDate:a.currentVisibleDate,renderAdditionalControls:i,type:a.type,view:a.view}))})});
2
2
  //# sourceMappingURL=DatePickerDropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerDropdown.js","names":["React","forwardRef","useCallback","useRef","useState","Transition","useFlag","useForkRef","animateTimeout","cnMixPopoverAnimate","cn","DateTime","Popover","DatePickerAdditionalControls","datePickerPropDropdownFormDefault","moveMap","cnDatePickerDropdown","DatePickerDropdown","props","componentRef","form","anchorRef","isOpen","className","zIndex","tabIndex","onFocus","onBlur","renderAdditionalControls","otherProps","rootRef","direction","setDirection","visibleAdditionalControls","setVisibleAdditionalControls","onMove","to","type","on","off","ref","animate","currentVisibleDate","view"],"sources":["../../../../../../src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.tsx"],"sourcesContent":["import './DatePickerDropdown.css';\n\nimport React, { forwardRef, useCallback, useRef, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n animateTimeout,\n cnMixPopoverAnimate,\n} from '../../../mixs/MixPopoverAnimate/MixPopoverAnimate';\nimport { cn } from '../../../utils/bem';\nimport { DateRange } from '../../../utils/types/Date';\nimport { PropsWithHTMLAttributesAndRef } from '../../../utils/types/PropsWithHTMLAttributes';\nimport {\n DateTime,\n DateTimePropOnChange,\n DateTimePropType,\n MoveType,\n} from '../../DateTime/DateTime';\nimport { Direction, Popover } from '../../Popover/Popover';\nimport { DatePickerAdditionalControls } from '../DatePickerAdditionalControls/DatePickerAdditionalControls';\nimport {\n DatePickerAdditionalControlRenderProp,\n DatePickerPropDateTimeView,\n DatePickerPropDropdownForm,\n datePickerPropDropdownFormDefault,\n} from '../types';\n\nexport type DatePickerDropdownPropOnChange = DateTimePropOnChange;\n\nexport type DatePickerDropdownProps = PropsWithHTMLAttributesAndRef<\n {\n anchorRef: React.RefObject<HTMLElement>;\n currentVisibleDate?: Date;\n type: DateTimePropType;\n value?: Date | DateRange;\n onChange?: DatePickerDropdownPropOnChange;\n minDate?: Date;\n maxDate?: Date;\n events?: Date[];\n view: DatePickerPropDateTimeView;\n locale?: Locale;\n children?: never;\n form?: DatePickerPropDropdownForm;\n isOpen?: boolean;\n onChangeCurrentVisibleDate?: (date: Date) => void;\n zIndex?: number;\n renderAdditionalControls?: DatePickerAdditionalControlRenderProp;\n multiplicitySeconds?: number;\n multiplicityMinutes?: number;\n multiplicityHours?: number;\n timeFor?: 'start' | 'end';\n },\n HTMLDivElement\n>;\n\ntype DatePickerDropdownComponent = (\n props: DatePickerDropdownProps,\n) => React.ReactElement | null;\n\nconst moveMap: Record<DateTimePropType, MoveType> = {\n 'year': 'year',\n 'month': 'month',\n 'date': 'day',\n 'time': 'time',\n 'date-time': 'day',\n};\n\nconst cnDatePickerDropdown = cn('DatePickerDropdown');\n\nexport const DatePickerDropdown: DatePickerDropdownComponent = forwardRef(\n (props, componentRef) => {\n const {\n form = datePickerPropDropdownFormDefault,\n anchorRef,\n isOpen,\n className,\n zIndex,\n tabIndex = 0,\n onFocus,\n onBlur,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const rootRef = useRef<HTMLDivElement>(null);\n const [direction, setDirection] = useState<Direction>();\n\n const [visibleAdditionalControls, setVisibleAdditionalControls] =\n useFlag(true);\n\n const onMove = useCallback(\n (to: MoveType) => {\n to === moveMap[props.type]\n ? setVisibleAdditionalControls.on()\n : setVisibleAdditionalControls.off();\n },\n [props.type],\n );\n\n const ref = useForkRef([componentRef, rootRef]);\n\n return (\n <Transition\n in={isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={rootRef}\n >\n {(animate) => {\n return (\n <Popover\n onFocus={onFocus}\n onBlur={onBlur}\n ref={ref}\n tabIndex={tabIndex}\n anchorRef={anchorRef}\n className={cnDatePickerDropdown({ form }, [\n className,\n cnMixPopoverAnimate({ direction, animate }),\n ])}\n direction=\"downStartLeft\"\n spareDirection=\"downStartLeft\"\n possibleDirections={[\n 'downStartLeft',\n 'upStartLeft',\n 'downStartRight',\n 'upStartRight',\n ]}\n style={{ zIndex }}\n role=\"listbox\"\n onSetDirection={setDirection}\n >\n <DateTime {...otherProps} onMove={onMove} />\n {visibleAdditionalControls && (\n <DatePickerAdditionalControls\n currentVisibleDate={props.currentVisibleDate}\n renderAdditionalControls={renderAdditionalControls}\n type={props.type}\n view={props.view}\n />\n )}\n </Popover>\n );\n }}\n </Transition>\n );\n },\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerDropdown.js","names":["React","forwardRef","useCallback","useRef","useState","Transition","useFlag","useForkRef","animateTimeout","cnMixPopoverAnimate","cn","DateTime","Popover","DatePickerAdditionalControls","datePickerPropDropdownFormDefault","moveMap","cnDatePickerDropdown","DatePickerDropdown","props","componentRef","form","anchorRef","isOpen","className","zIndex","renderAdditionalControls","otherProps","rootRef","direction","setDirection","visibleAdditionalControls","setVisibleAdditionalControls","onMove","to","type","on","off","ref","animate","currentVisibleDate","view"],"sources":["../../../../../../src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.tsx"],"sourcesContent":["import './DatePickerDropdown.css';\n\nimport React, { forwardRef, useCallback, useRef, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n animateTimeout,\n cnMixPopoverAnimate,\n} from '../../../mixs/MixPopoverAnimate/MixPopoverAnimate';\nimport { cn } from '../../../utils/bem';\nimport { DateRange } from '../../../utils/types/Date';\nimport { PropsWithHTMLAttributesAndRef } from '../../../utils/types/PropsWithHTMLAttributes';\nimport {\n DateTime,\n DateTimePropOnChange,\n DateTimePropType,\n MoveType,\n} from '../../DateTime/DateTime';\nimport { Direction, Popover } from '../../Popover/Popover';\nimport { DatePickerAdditionalControls } from '../DatePickerAdditionalControls/DatePickerAdditionalControls';\nimport {\n DatePickerAdditionalControlRenderProp,\n DatePickerPropDateTimeView,\n DatePickerPropDropdownForm,\n datePickerPropDropdownFormDefault,\n} from '../types';\n\nexport type DatePickerDropdownPropOnChange = DateTimePropOnChange;\n\nexport type DatePickerDropdownProps = PropsWithHTMLAttributesAndRef<\n {\n anchorRef: React.RefObject<HTMLElement>;\n currentVisibleDate?: Date;\n type: DateTimePropType;\n value?: Date | DateRange;\n onChange?: DatePickerDropdownPropOnChange;\n minDate?: Date;\n maxDate?: Date;\n events?: Date[];\n view: DatePickerPropDateTimeView;\n locale?: Locale;\n children?: never;\n form?: DatePickerPropDropdownForm;\n isOpen?: boolean;\n onChangeCurrentVisibleDate?: (date: Date) => void;\n zIndex?: number;\n renderAdditionalControls?: DatePickerAdditionalControlRenderProp;\n multiplicitySeconds?: number;\n multiplicityMinutes?: number;\n multiplicityHours?: number;\n timeFor?: 'start' | 'end';\n },\n HTMLDivElement\n>;\n\ntype DatePickerDropdownComponent = (\n props: DatePickerDropdownProps,\n) => React.ReactElement | null;\n\nconst moveMap: Record<DateTimePropType, MoveType> = {\n 'year': 'year',\n 'month': 'month',\n 'date': 'day',\n 'time': 'time',\n 'date-time': 'day',\n};\n\nconst cnDatePickerDropdown = cn('DatePickerDropdown');\n\nexport const DatePickerDropdown: DatePickerDropdownComponent = forwardRef(\n (props, componentRef) => {\n const {\n form = datePickerPropDropdownFormDefault,\n anchorRef,\n isOpen,\n className,\n zIndex,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const rootRef = useRef<HTMLDivElement>(null);\n const [direction, setDirection] = useState<Direction>();\n\n const [visibleAdditionalControls, setVisibleAdditionalControls] =\n useFlag(true);\n\n const onMove = useCallback(\n (to: MoveType) => {\n to === moveMap[props.type]\n ? setVisibleAdditionalControls.on()\n : setVisibleAdditionalControls.off();\n },\n [props.type],\n );\n\n const ref = useForkRef([componentRef, rootRef]);\n\n return (\n <Transition\n in={isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={rootRef}\n >\n {(animate) => {\n return (\n <Popover\n ref={ref}\n anchorRef={anchorRef}\n className={cnDatePickerDropdown({ form }, [\n className,\n cnMixPopoverAnimate({ direction, animate }),\n ])}\n direction=\"downStartLeft\"\n spareDirection=\"downStartLeft\"\n possibleDirections={[\n 'downStartLeft',\n 'upStartLeft',\n 'downStartRight',\n 'upStartRight',\n ]}\n style={{ zIndex }}\n role=\"listbox\"\n onSetDirection={setDirection}\n >\n <DateTime {...otherProps} onMove={onMove} />\n {visibleAdditionalControls && (\n <DatePickerAdditionalControls\n currentVisibleDate={props.currentVisibleDate}\n renderAdditionalControls={renderAdditionalControls}\n type={props.type}\n view={props.view}\n />\n )}\n </Popover>\n );\n }}\n </Transition>\n );\n },\n);\n"],"mappings":"kPAAA,iCAEA,MAAOA,MAAP,EAAgBC,UAAhB,CAA4BC,WAA5B,CAAyCC,MAAzC,CAAiDC,QAAjD,KAAiE,OAAjE,CACA,OAASC,UAAT,KAA2B,wBAA3B,CAEA,OAASC,OAAT,sCACA,OAASC,UAAT,4CACA,OACEC,cADF,CAEEC,mBAFF,yDAIA,OAASC,EAAT,0BAGA,OACEC,QADF,+BAMA,OAAoBC,OAApB,6BACA,OAASC,4BAAT,oEACA,OAIEC,iCAJF,gB,GAuCMC,QAA2C,CAAG,CAClD,KAAQ,MAD0C,CAElD,MAAS,OAFyC,CAGlD,KAAQ,KAH0C,CAIlD,KAAQ,MAJ0C,CAKlD,YAAa,KALqC,C,CAQ9CC,oBAAoB,CAAGN,EAAE,CAAC,oBAAD,C,CAE/B,MAAO,IAAMO,mBAA+C,CAAGhB,UAAU,CACvE,SAACiB,CAAD,CAAQC,CAAR,CAAyB,OASnBD,CATmB,CAErBE,IAFqB,CAErBA,CAFqB,YAEdN,iCAFc,GAGrBO,CAHqB,CASnBH,CATmB,CAGrBG,SAHqB,CAIrBC,CAJqB,CASnBJ,CATmB,CAIrBI,MAJqB,CAKrBC,CALqB,CASnBL,CATmB,CAKrBK,SALqB,CAMrBC,CANqB,CASnBN,CATmB,CAMrBM,MANqB,CAOrBC,CAPqB,CASnBP,CATmB,CAOrBO,wBAPqB,CAQlBC,CARkB,0BASnBR,CATmB,YAWjBS,CAAO,CAAGxB,MAAM,CAAiB,IAAjB,CAXC,GAYWC,QAAQ,EAZnB,uBAYhBwB,CAZgB,MAYLC,CAZK,QAerBvB,OAAO,IAfc,uBAchBwB,CAdgB,MAcWC,CAdX,MAiBjBC,CAAM,CAAG9B,WAAW,CACxB,SAAC+B,CAAD,CAAkB,CAChBA,CAAE,GAAKlB,OAAO,CAACG,CAAK,CAACgB,IAAP,CAAd,CACIH,CAA4B,CAACI,EAA7B,EADJ,CAEIJ,CAA4B,CAACK,GAA7B,EACL,CALuB,CAMxB,CAAClB,CAAK,CAACgB,IAAP,CANwB,CAjBH,CA0BjBG,CAAG,CAAG9B,UAAU,CAAC,CAACY,CAAD,CAAeQ,CAAf,CAAD,CA1BC,CA4BvB,MACE,qBAAC,UAAD,EACE,GAAIL,CADN,CAEE,aAAa,GAFf,CAGE,OAAO,CAAEd,cAHX,CAIE,OAAO,CAAEmB,CAJX,EAMG,SAACW,CAAD,CAAa,CACZ,MACE,qBAAC,OAAD,EACE,GAAG,CAAED,CADP,CAEE,SAAS,CAAEhB,CAFb,CAGE,SAAS,CAAEL,oBAAoB,CAAC,CAAEI,IAAI,CAAJA,CAAF,CAAD,CAAW,CACxCG,CADwC,CAExCd,mBAAmB,CAAC,CAAEmB,SAAS,CAATA,CAAF,CAAaU,OAAO,CAAPA,CAAb,CAAD,CAFqB,CAAX,CAHjC,CAOE,SAAS,CAAC,eAPZ,CAQE,cAAc,CAAC,eARjB,CASE,kBAAkB,CAAE,CAClB,eADkB,CAElB,aAFkB,CAGlB,gBAHkB,CAIlB,cAJkB,CATtB,CAeE,KAAK,CAAE,CAAEd,MAAM,CAANA,CAAF,CAfT,CAgBE,IAAI,CAAC,SAhBP,CAiBE,cAAc,CAAEK,CAjBlB,EAmBE,oBAAC,QAAD,kBAAcH,CAAd,EAA0B,MAAM,CAAEM,CAAlC,GAnBF,CAoBGF,CAAyB,EACxB,oBAAC,4BAAD,EACE,kBAAkB,CAAEZ,CAAK,CAACqB,kBAD5B,CAEE,wBAAwB,CAAEd,CAF5B,CAGE,IAAI,CAAEP,CAAK,CAACgB,IAHd,CAIE,IAAI,CAAEhB,CAAK,CAACsB,IAJd,EArBJ,CA8BH,CAtCH,CAyCH,CAvEsE,CAAlE"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownClassName","dropdownForm","onFocus","onBlur","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDate}from"../DatePickerFieldTypeDate/DatePickerFieldTypeDate";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";import{useDropdownVisible}from"../useDropdownVisible";export var DatePickerTypeDate=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownClassName,h=a.dropdownForm,i=a.onFocus,j=a.onBlur,k=a.currentVisibleDate,l=a.onChangeCurrentVisibleDate,m=a.renderAdditionalControls,n=_objectWithoutProperties(a,_excluded),o=useRef(null),p=useRef(null),q=useDropdownVisible(i,j),r=q.calendarVisible,s=q.blocks,t=s.start,u=t.onFocus,v=t.onBlur,w=s.dropdown,x=w.onBlur,y=w.onFocus,z=q.close,A=useCurrentVisibleDate({currentVisibleDate:k,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:l,calendarVisible:r}),B=_slicedToArray(A,2),C=B[0],D=B[1];return useEffect(function(){b&&setRef(b,o.current)},[b,o]),useEffect(function(){if(a.value&&"classic"===e&&C){var b=startOfMonth(a.value);return void(b.getTime()!==C.getTime()&&D(b))}if(a.value&&"classic"!==e&&C){var c=startOfMonth(a.value);c.getTime()!==C.getTime()&&c.getTime()!==addMonths(C,1).getTime()&&D(c)}},[a.value]),useClickOutside({isActive:r,ignoreClicksInsideRefs:[o,p],handler:z}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDate,Object.assign({},n,{ref:o,onBlur:v,onFocus:u})),React.createElement(DatePickerDropdown,{ref:p,anchorRef:o,isOpen:r,onFocus:y,onBlur:x,value:a.value||void 0,type:"date",view:e,events:c,locale:f,minDate:a.minDate,className:g,maxDate:a.maxDate,currentVisibleDate:C,form:h,onChange:function onChange(b){var c;null===(c=a.onChange)||void 0===c?void 0:c.call(a,b),z()},renderAdditionalControls:m,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:D}))});
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownClassName","dropdownForm","onFocus","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDate}from"../DatePickerFieldTypeDate/DatePickerFieldTypeDate";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDate=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownClassName,h=a.dropdownForm,i=a.onFocus,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=_objectWithoutProperties(a,_excluded),n=useRef(null),o=useRef(null),p=useFlag(!1),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:r}),u=_slicedToArray(t,2),v=u[0],w=u[1];return useEffect(function(){b&&setRef(b,n.current)},[b,n]),useEffect(function(){if(a.value&&"classic"===e&&v){var b=startOfMonth(a.value);return void(b.getTime()!==v.getTime()&&w(b))}if(a.value&&"classic"!==e&&v){var c=startOfMonth(a.value);c.getTime()!==v.getTime()&&c.getTime()!==addMonths(v,1).getTime()&&w(c)}},[a.value]),useClickOutside({isActive:r,ignoreClicksInsideRefs:[n,o],handler:s.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDate,Object.assign({},m,{ref:n,onFocus:function onFocusHandler(a){i&&i(a),s.on()}})),React.createElement(DatePickerDropdown,{ref:o,anchorRef:n,isOpen:r,value:a.value||void 0,type:"date",view:e,events:c,locale:f,minDate:a.minDate,className:g,maxDate:a.maxDate,currentVisibleDate:v,form:h,onChange:function onChange(b){var c;null===(c=a.onChange)||void 0===c?void 0:c.call(a,b),s.off()},renderAdditionalControls:l,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:w}))});
2
2
  //# sourceMappingURL=DatePickerTypeDate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeDate.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","setRef","DatePickerDropdown","DatePickerFieldTypeDate","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","useDropdownVisible","DatePickerTypeDate","props","ref","events","dateTimeView","locale","dropdownClassName","dropdownForm","onFocus","onBlur","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","otherProps","fieldRef","calendarRef","calendarVisible","blocks","start","onFocusHandler","onBlurHandler","dropdown","onDropdownBlur","onDropdownFocus","close","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","params","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDate } from '../DatePickerFieldTypeDate/DatePickerFieldTypeDate';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\nimport { useDropdownVisible } from '../useDropdownVisible';\n\nexport const DatePickerTypeDate: DatePickerTypeComponent<'date'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownClassName,\n dropdownForm,\n onFocus,\n onBlur,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const {\n calendarVisible,\n blocks: {\n start: { onFocus: onFocusHandler, onBlur: onBlurHandler },\n dropdown: { onBlur: onDropdownBlur, onFocus: onDropdownFocus },\n },\n close,\n } = useDropdownVisible(onFocus, onBlur);\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 });\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 = startOfMonth(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 = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: close,\n });\n\n return (\n <>\n <DatePickerFieldTypeDate\n {...otherProps}\n ref={fieldRef}\n onBlur={onBlurHandler}\n onFocus={onFocusHandler}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n onFocus={onDropdownFocus}\n onBlur={onDropdownBlur}\n value={props.value || undefined}\n type=\"date\"\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={(params) => {\n props.onChange?.(params);\n close();\n }}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeDate.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useFlag","setRef","DatePickerDropdown","DatePickerFieldTypeDate","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDate","props","ref","events","dateTimeView","locale","dropdownClassName","dropdownForm","onFocus","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","otherProps","fieldRef","calendarRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","onFocusHandler","e","on","params","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDate } from '../DatePickerFieldTypeDate/DatePickerFieldTypeDate';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDate: DatePickerTypeComponent<'date'> = forwardRef(\n (props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownClassName,\n dropdownForm,\n onFocus,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\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 });\n\n const onFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n onFocus && onFocus(e);\n setCalendarVisible.on();\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 = startOfMonth(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 = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDate\n {...otherProps}\n ref={fieldRef}\n onFocus={onFocusHandler}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"date\"\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={(params) => {\n props.onChange?.(params);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- 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","dropdownClassName","name"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";import{useDropdownVisible}from"../useDropdownVisible";export var DatePickerTypeDateRange=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.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.dropdownClassName,u=a.name,v=_objectWithoutProperties(a,_excluded),w=useRef(null),x=useRef(null),y=useRef(null),z=useRef(null),A=useRef(null),B=useDropdownVisible(l,m),C=B.calendarVisible,D=B.blocks,E=D.start,F=E.onFocus,G=E.onBlur,H=D.dropdown,I=H.onBlur,J=H.onFocus,K=D.end,L=K.onFocus,M=K.onBlur,N=B.close,O=B.fieldType,P="start"===O,Q="end"===O,R=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:C}),S=_slicedToArray(R,2),T=S[0],U=S[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&P){var d=startOfMonth(a.value[0]);return void(d.getTime()!==(null===T||void 0===T?void 0:T.getTime())&&U(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&P){var e=startOfMonth(a.value[0]);e.getTime()!==(null===T||void 0===T?void 0:T.getTime())&&e.getTime()!==(T&&addMonths(T,1).getTime())&&U(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),C,P]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&Q){var d=startOfMonth(a.value[1]);return void(d.getTime()!==(null===T||void 0===T?void 0:T.getTime())&&U(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&Q){var e=startOfMonth(a.value[1]);e.getTime()!==(null===T||void 0===T?void 0:T.getTime())&&e.getTime()!==(T&&addMonths(T,1).getTime())&&U(addMonths(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),C,Q]),useClickOutside({isActive:C,ignoreClicksInsideRefs:[w,x,A],handler:N}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateRange,Object.assign({},v,{ref:b,startFieldRef:w,endFieldRef:x,startFieldInputRef:useForkRef([y,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([z,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:F,endFieldOnFocus:L,startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:G,endFieldOnBlur:M,startFocused:P,endFocused:Q,startFieldName:getFieldName(u,0),endFieldName:getFieldName(u,1)})),React.createElement(DatePickerDropdown,{type:"date",ref:A,anchorRef:w,className:t,isOpen:C,onChangeCurrentVisibleDate:U,currentVisibleDate:T,value:a.value||void 0,view:i,events:g,onFocus:J,onBlur:I,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(P){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(Q){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,zIndex:getDropdownZIndex(a.style)}))});
1
+ 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","dropdownClassName","name"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateRange=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.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.dropdownClassName,u=a.name,v=_objectWithoutProperties(a,_excluded),w=useRef(null),x=useRef(null),y=useRef(null),z=useRef(null),A=useRef(null),B=useState(!1),C=_slicedToArray(B,2),D=C[0],E=C[1],F="start"===D,G="end"===D,H=useFlag(!1),I=_slicedToArray(H,2),J=I[0],K=I[1],L=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:J}),M=_slicedToArray(L,2),N=M[0],O=M[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&F){var d=startOfMonth(a.value[0]);return void(d.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&O(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&F){var e=startOfMonth(a.value[0]);e.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&e.getTime()!==(N&&addMonths(N,1).getTime())&&O(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),J,F]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&G){var d=startOfMonth(a.value[1]);return void(d.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&O(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&G){var e=startOfMonth(a.value[1]);e.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&e.getTime()!==(N&&addMonths(N,1).getTime())&&O(addMonths(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),J,G]),useClickOutside({isActive:J,ignoreClicksInsideRefs:[w,x,A],handler:useCallback(function(){E(!1),K.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateRange,Object.assign({},v,{ref:b,startFieldRef:w,endFieldRef:x,startFieldInputRef:useForkRef([y,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([z,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;E("start"),K.on(),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;E("end"),K.on(),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(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,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:F,endFocused:G,startFieldName:getFieldName(u,0),endFieldName:getFieldName(u,1)})),React.createElement(DatePickerDropdown,{type:"date",ref:A,anchorRef:w,className:t,isOpen:J,onChangeCurrentVisibleDate:O,currentVisibleDate:N,value:a.value||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(F){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(G){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,zIndex:getDropdownZIndex(a.style)}))});
2
2
  //# sourceMappingURL=DatePickerTypeDateRange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","useDropdownVisible","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","calendarVisible","blocks","start","onStartFocus","onStartBlur","dropdown","onDropdownBlur","onDropdownFocus","end","onEndFocus","onEndBlur","close","fieldType","startFocused","endFocused","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","Array","isArray","hadleChange","e","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\nimport { useDropdownVisible } from '../useDropdownVisible';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n dropdownClassName,\n name,\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 {\n calendarVisible,\n blocks: {\n start: { onFocus: onStartFocus, onBlur: onStartBlur },\n dropdown: { onBlur: onDropdownBlur, onFocus: onDropdownFocus },\n end: { onFocus: onEndFocus, onBlur: onEndBlur },\n },\n close,\n fieldType,\n } = useDropdownVisible(onFocus, onBlur);\n\n const startFocused = fieldType === 'start';\n const endFocused = fieldType === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\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 });\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(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 = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(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 = startOfMonth(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 = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: close,\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\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={onStartFocus}\n endFieldOnFocus={onEndFocus}\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={onStartBlur}\n endFieldOnBlur={onEndBlur}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n onFocus={onDropdownFocus}\n onBlur={onDropdownBlur}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"mXAAA,MAAOA,UAAP,KAAsB,oBAAtB,CACA,MAAOC,aAAP,KAAyB,uBAAzB,CACA,MAAOC,MAAP,EAAgBC,UAAhB,CAA4BC,SAA5B,CAAuCC,MAAvC,KAAqD,OAArD,CAEA,OAASC,eAAT,sDACA,OAASC,UAAT,4CACA,OACEC,kBADF,gDAIA,OAASC,4BAAT,oEACA,OACEC,iBADF,CAEEC,YAFF,CAGEC,mBAHF,kBAKA,OACEC,iCADF,gBAIA,OAASC,qBAAT,gCACA,OAASC,kBAAT,6BAEA,MAAO,IAAMC,wBAA8D,CACzEb,UAAU,CAAC,SAACc,CAAD,CAAQC,CAAR,CAAgB,aAEvBC,CAFuB,CAiBrBF,CAjBqB,CAEvBE,MAFuB,GAiBrBF,CAjBqB,CAGvBG,YAHuB,CAGvBA,CAHuB,YAGRP,iCAHQ,GAIvBQ,CAJuB,CAiBrBJ,CAjBqB,CAIvBI,MAJuB,CAKvBC,CALuB,CAiBrBL,CAjBqB,CAKvBK,YALuB,CAMvBC,CANuB,CAiBrBN,CAjBqB,CAMvBM,OANuB,CAOvBC,CAPuB,CAiBrBP,CAjBqB,CAOvBO,MAPuB,CAQvBC,CARuB,CAiBrBR,CAjBqB,CAQvBQ,QARuB,CASvBC,CATuB,CAiBrBT,CAjBqB,CASvBS,SATuB,CAUHC,CAVG,CAiBrBV,CAjBqB,CAUvBW,kBAVuB,CAWvBC,CAXuB,CAiBrBZ,CAjBqB,CAWvBY,0BAXuB,CAYvBC,CAZuB,CAiBrBb,CAjBqB,CAYvBa,wBAZuB,CAavBC,CAbuB,CAiBrBd,CAjBqB,CAavBc,QAbuB,CAcvBC,CAduB,CAiBrBf,CAjBqB,CAcvBe,iBAduB,CAevBC,CAfuB,CAiBrBhB,CAjBqB,CAevBgB,IAfuB,CAgBpBC,CAhBoB,0BAiBrBjB,CAjBqB,YAmBnBkB,CAAa,CAAG9B,MAAM,CAAiB,IAAjB,CAnBH,CAoBnB+B,CAAW,CAAG/B,MAAM,CAAiB,IAAjB,CApBD,CAqBnBgC,CAAkB,CAAGhC,MAAM,CAAmB,IAAnB,CArBR,CAsBnBiC,CAAgB,CAAGjC,MAAM,CAAmB,IAAnB,CAtBN,CAuBnBkC,CAAW,CAAGlC,MAAM,CAAiB,IAAjB,CAvBD,GAkCrBU,kBAAkB,CAACQ,CAAD,CAAUC,CAAV,CAlCG,CA0BvBgB,CA1BuB,GA0BvBA,eA1BuB,KA2BvBC,MA3BuB,KA4BrBC,KA5BqB,CA4BHC,CA5BG,GA4BZpB,OA5BY,CA4BmBqB,CA5BnB,GA4BWpB,MA5BX,KA6BrBqB,QA7BqB,CA6BDC,CA7BC,GA6BTtB,MA7BS,CA6BwBuB,CA7BxB,GA6BexB,OA7Bf,KA8BrByB,GA9BqB,CA8BLC,CA9BK,GA8Bd1B,OA9Bc,CA8Be2B,CA9Bf,GA8BO1B,MA9BP,CAgCvB2B,CAhCuB,GAgCvBA,KAhCuB,CAiCvBC,CAjCuB,GAiCvBA,SAjCuB,CAoCnBC,CAAY,CAAiB,OAAd,GAAAD,CApCI,CAqCnBE,CAAU,CAAiB,KAAd,GAAAF,CArCM,GAsD2BtC,qBAAqB,CAAC,CACxEc,kBAAkB,CAAED,CADoD,CAExE4B,OAAO,CAAEtC,CAAK,CAACsC,OAFyD,CAGxEC,OAAO,CAAEvC,CAAK,CAACuC,OAHyD,CAIxEC,KAAK,CAAExC,CAAK,CAACwC,KAJ2D,CAKxEC,WAAW,CAAEzD,YAL2D,CAMxE4B,0BAA0B,CAA1BA,CANwE,CAOxEW,eAAe,CAAfA,CAPwE,CAAD,CAtDhD,uBAsDlBZ,CAtDkB,MAsDE+B,CAtDF,MA+GzB,MA9CAvD,UAAS,CAAC,UAAM,SACd,GAAI,UAAAa,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkDiC,CAAtD,CAAoE,CAClE,GAAMO,EAAc,CAAG3D,YAAY,CAACgB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAIA,YAHIG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,CAGJ,EAFEF,CAAqB,CAACC,CAAD,CAEvB,CACD,CACD,GAAI,UAAA3C,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkDiC,CAAtD,CAAoE,CAClE,GAAMO,EAAc,CAAG3D,YAAY,CAACgB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAEEG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,GACAD,CAAc,CAACC,OAAf,MACGjC,CAAkB,EAAI5B,SAAS,CAAC4B,CAAD,CAAqB,CAArB,CAAT,CAAiCiC,OAAjC,EADzB,CAJgE,EAOhEF,CAAqB,CAACC,CAAD,CAExB,CACF,CAlBQ,CAkBN,WAAC3C,CAAK,CAACwC,KAAP,yBAAC,EAAc,CAAd,CAAD,qBAAC,EAAkBI,OAAlB,EAAD,CAA8BrB,CAA9B,CAA+Ca,CAA/C,CAlBM,CA8CT,CA1BAjD,SAAS,CAAC,UAAM,SACd,GAAI,UAAAa,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkDkC,CAAtD,CAAkE,CAChE,GAAMM,EAAc,CAAG3D,YAAY,CAACgB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAIA,YAHIG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,CAGJ,EAFEF,CAAqB,CAACC,CAAD,CAEvB,CACD,CACD,GAAI,UAAA3C,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkDkC,CAAtD,CAAkE,CAChE,GAAMM,EAAc,CAAG3D,YAAY,CAACgB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAEEG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,GACAD,CAAc,CAACC,OAAf,MACGjC,CAAkB,EAAI5B,SAAS,CAAC4B,CAAD,CAAqB,CAArB,CAAT,CAAiCiC,OAAjC,EADzB,CAJ8D,EAO9DF,CAAqB,CAAC3D,SAAS,CAAC4D,CAAD,CAAiB,CAAC,CAAlB,CAAV,CAExB,CACF,CAlBQ,CAkBN,WAAC3C,CAAK,CAACwC,KAAP,yBAAC,EAAc,CAAd,CAAD,qBAAC,EAAkBI,OAAlB,EAAD,CAA8BrB,CAA9B,CAA+Cc,CAA/C,CAlBM,CA0BT,CANAhD,eAAe,CAAC,CACdwD,QAAQ,CAAEtB,CADI,CAEduB,sBAAsB,CAAE,CAAC5B,CAAD,CAAgBC,CAAhB,CAA6BG,CAA7B,CAFV,CAGdyB,OAAO,CAAEb,CAHK,CAAD,CAMf,CACE,wCACE,oBAAC,4BAAD,kBACMjB,CADN,EAEE,GAAG,CAAEhB,CAFP,CAGE,aAAa,CAAEiB,CAHjB,CAIE,WAAW,CAAEC,CAJf,CAKE,kBAAkB,CAAE7B,UAAU,CAAC,CAAC8B,CAAD,QAAqBN,CAArB,WAAqBA,CAArB,QAAqBA,CAAQ,CAAG,CAAH,CAA7B,CAAD,CALhC,CAME,gBAAgB,CAAExB,UAAU,CAAC,CAAC+B,CAAD,QAAmBP,CAAnB,WAAmBA,CAAnB,QAAmBA,CAAQ,CAAG,CAAH,CAA3B,CAAD,CAN9B,CAOE,iBAAiB,CAAEY,CAPrB,CAQE,eAAe,CAAEM,CARnB,CASE,kBAAkB,CAChBgB,KAAK,CAACC,OAAN,CAAczC,CAAd,SAA0BA,CAA1B,WAA0BA,CAA1B,QAA0BA,CAAQ,CAAG,CAAH,CAAlC,CAA0CA,CAV9C,CAYE,mBAAmB,CACjBwC,KAAK,CAACC,OAAN,CAAcxC,CAAd,SAA2BA,CAA3B,WAA2BA,CAA3B,QAA2BA,CAAS,CAAG,CAAH,CAApC,OAbJ,CAeE,gBAAgB,CAAEuC,KAAK,CAACC,OAAN,CAAczC,CAAd,SAA0BA,CAA1B,WAA0BA,CAA1B,QAA0BA,CAAQ,CAAG,CAAH,CAAlC,OAfpB,CAgBE,iBAAiB,CACfwC,KAAK,CAACC,OAAN,CAAcxC,CAAd,SAA2BA,CAA3B,WAA2BA,CAA3B,QAA2BA,CAAS,CAAG,CAAH,CAApC,CAA4CA,CAjBhD,CAmBE,gBAAgB,CAAEkB,CAnBpB,CAoBE,cAAc,CAAEM,CApBlB,CAqBE,YAAY,CAAEG,CArBhB,CAsBE,UAAU,CAAEC,CAtBd,CAuBE,cAAc,CAAE3C,YAAY,CAACsB,CAAD,CAAO,CAAP,CAvB9B,CAwBE,YAAY,CAAEtB,YAAY,CAACsB,CAAD,CAAO,CAAP,CAxB5B,GADF,CA2BE,oBAAC,kBAAD,EACE,IAAI,CAAC,MADP,CAEE,GAAG,CAAEM,CAFP,CAGE,SAAS,CAAEJ,CAHb,CAIE,SAAS,CAAEH,CAJb,CAKE,MAAM,CAAEQ,CALV,CAME,0BAA0B,CAAEmB,CAN9B,CAOE,kBAAkB,CAAE/B,CAPtB,CAQE,KAAK,CAAEX,CAAK,CAACwC,KAAN,QART,CASE,IAAI,CAAErC,CATR,CAUE,MAAM,CAAED,CAVV,CAWE,OAAO,CAAE4B,CAXX,CAYE,MAAM,CAAED,CAZV,CAaE,MAAM,CAAEzB,CAbV,CAcE,OAAO,CAAEJ,CAAK,CAACuC,OAdjB,CAeE,OAAO,CAAEvC,CAAK,CAACsC,OAfjB,CAgBE,IAAI,CAAEjC,CAhBR,CAiBE,QAAQ,CArHsC,QAA9C6C,YAA8C,GAAkB,IAAfC,EAAe,GAAfA,CAAe,CAAZX,CAAY,GAAZA,KAAY,CACpE,GAAIJ,CAAJ,CAAkB,mBAChBpC,CAAK,CAACoD,QADU,qBAChB,OAAApD,CAAK,CAAY,CACfmD,CAAC,CAADA,CADe,CAEfX,KAAK,CAAE7C,mBAAmB,CAAC,CAAC6C,CAAD,QAAQxC,CAAR,WAAQA,CAAR,YAAQA,CAAK,CAAEwC,KAAf,qBAAQ,EAAe,CAAf,CAAR,CAAD,CAFX,CAAZ,CAIN,CACD,GAAIH,CAAJ,CAAgB,mBACdrC,CAAK,CAACoD,QADQ,qBACd,OAAApD,CAAK,CAAY,CACfmD,CAAC,CAADA,CADe,CAEfX,KAAK,CAAE7C,mBAAmB,CAAC,QAACK,CAAD,WAACA,CAAD,YAACA,CAAK,CAAEwC,KAAR,qBAAC,EAAe,CAAf,CAAD,CAAoBA,CAApB,CAAD,CAFX,CAAZ,CAIN,CACF,CAuFG,CAkBE,wBAAwB,CAAE3B,CAlB5B,CAmBE,MAAM,CAAEpB,iBAAiB,CAACO,CAAK,CAACqD,KAAP,CAnB3B,EA3BF,CAkDH,CAlKS,CADL"}
1
+ {"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport 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 { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n dropdownClassName,\n name,\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<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\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 });\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('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\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 = startOfMonth(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 = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(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 = startOfMonth(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 = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\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 startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTime}from"../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getMultiplicityTime}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";import{useDropdownVisible}from"../useDropdownVisible";export var DatePickerTypeDateTime=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.onFocus,i=a.onBlur,j=a.dropdownClassName,k=a.currentVisibleDate,l=a.onChangeCurrentVisibleDate,m=a.multiplicityHours,n=a.multiplicityMinutes,o=a.multiplicitySeconds,p=a.renderAdditionalControls,q=_objectWithoutProperties(a,_excluded),r=getMultiplicityTime(q.format||datePickerPropFormatTypeDateTime,m,n,o),s=_slicedToArray(r,3),t=s[0],u=s[1],v=s[2],w=useRef(null),x=useRef(null),y=useDropdownVisible(h,i),z=y.calendarVisible,A=y.blocks,B=A.start,C=B.onFocus,D=B.onBlur,E=A.dropdown,F=E.onBlur,G=E.onFocus,H=y.close,I=useCurrentVisibleDate({currentVisibleDate:k,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:l,calendarVisible:z}),J=_slicedToArray(I,2),K=J[0],L=J[1];return useEffect(function(){b&&setRef(b,w.current)},[b,w]),useEffect(function(){if(a.value&&"classic"===e&&K){var b=startOfMonth(a.value);return void(b.getTime()!==K.getTime()&&L(b))}if(a.value&&"classic"!==e&&K){var c=startOfMonth(a.value);c.getTime()!==K.getTime()&&c.getTime()!==addMonths(K,1).getTime()&&L(c)}},[a.value]),useClickOutside({isActive:z,ignoreClicksInsideRefs:[w,x],handler:H}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTime,Object.assign({},q,{ref:w,onFocus:C,onBlur:D,multiplicityHours:t,multiplicitySeconds:v,multiplicityMinutes:u})),React.createElement(DatePickerDropdown,{ref:x,anchorRef:w,isOpen:z,value:a.value||void 0,type:"date-time",view:e,events:c,className:j,locale:f,minDate:a.minDate,maxDate:a.maxDate,currentVisibleDate:K,form:g,onChange:a.onChange,renderAdditionalControls:p,onChangeCurrentVisibleDate:L,multiplicityHours:t,onFocus:G,onBlur:F,multiplicitySeconds:v,multiplicityMinutes:u,zIndex:getDropdownZIndex(a.style)}))});
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTime}from"../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getMultiplicityTime}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTime=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.onFocus,i=a.dropdownClassName,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.multiplicityHours,m=a.multiplicityMinutes,n=a.multiplicitySeconds,o=a.renderAdditionalControls,p=_objectWithoutProperties(a,_excluded),q=getMultiplicityTime(p.format||datePickerPropFormatTypeDateTime,l,m,n),r=_slicedToArray(q,3),s=r[0],t=r[1],u=r[2],v=useRef(null),w=useRef(null),x=useFlag(!1),y=_slicedToArray(x,2),z=y[0],A=y[1],B=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:z}),C=_slicedToArray(B,2),D=C[0],E=C[1];return useEffect(function(){b&&setRef(b,v.current)},[b,v]),useEffect(function(){if(a.value&&"classic"===e&&D){var b=startOfMonth(a.value);return void(b.getTime()!==D.getTime()&&E(b))}if(a.value&&"classic"!==e&&D){var c=startOfMonth(a.value);c.getTime()!==D.getTime()&&c.getTime()!==addMonths(D,1).getTime()&&E(c)}},[a.value]),useClickOutside({isActive:z,ignoreClicksInsideRefs:[v,w],handler:A.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTime,Object.assign({},p,{ref:v,onFocus:function onFocusHandler(a){h&&h(a),A.on()},multiplicityHours:s,multiplicitySeconds:u,multiplicityMinutes:t})),React.createElement(DatePickerDropdown,{ref:w,anchorRef:v,isOpen:z,value:a.value||void 0,type:"date-time",view:e,events:c,className:i,locale:f,minDate:a.minDate,maxDate:a.maxDate,currentVisibleDate:D,form:g,onChange:a.onChange,renderAdditionalControls:o,onChangeCurrentVisibleDate:E,multiplicityHours:s,multiplicitySeconds:u,multiplicityMinutes:t,zIndex:getDropdownZIndex(a.style)}))});
2
2
  //# sourceMappingURL=DatePickerTypeDateTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeDateTime.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","setRef","DatePickerDropdown","DatePickerFieldTypeDateTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getMultiplicityTime","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","useDropdownVisible","DatePickerTypeDateTime","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHoursProp","multiplicityHours","multiplicityMinutesProp","multiplicityMinutes","multiplicitySecondsProp","multiplicitySeconds","renderAdditionalControls","otherProps","format","fieldRef","calendarRef","calendarVisible","blocks","start","onFocusHandler","onBlurHandler","dropdown","onDropdownBlur","onDropdownFocus","close","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTime } from '../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getMultiplicityTime,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\nimport { useDropdownVisible } from '../useDropdownVisible';\n\nexport const DatePickerTypeDateTime: DatePickerTypeComponent<'date-time'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n dropdownClassName,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n multiplicityHours: multiplicityHoursProp,\n multiplicityMinutes: multiplicityMinutesProp,\n multiplicitySeconds: multiplicitySecondsProp,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const [multiplicityHours, multiplicityMinutes, multiplicitySeconds] =\n getMultiplicityTime(\n otherProps.format || datePickerPropFormatTypeDateTime,\n multiplicityHoursProp,\n multiplicityMinutesProp,\n multiplicitySecondsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const {\n calendarVisible,\n blocks: {\n start: { onFocus: onFocusHandler, onBlur: onBlurHandler },\n dropdown: { onBlur: onDropdownBlur, onFocus: onDropdownFocus },\n },\n close,\n } = useDropdownVisible(onFocus, onBlur);\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 });\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 = startOfMonth(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 = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: close,\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTime\n {...otherProps}\n ref={fieldRef}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"date-time\"\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n multiplicityHours={multiplicityHours}\n onFocus={onDropdownFocus}\n onBlur={onDropdownBlur}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerTypeDateTime.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useFlag","setRef","DatePickerDropdown","DatePickerFieldTypeDateTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getMultiplicityTime","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTime","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHoursProp","multiplicityHours","multiplicityMinutesProp","multiplicityMinutes","multiplicitySecondsProp","multiplicitySeconds","renderAdditionalControls","otherProps","format","fieldRef","calendarRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","onFocusHandler","e","on","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTime } from '../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getMultiplicityTime,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTime: DatePickerTypeComponent<'date-time'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n multiplicityHours: multiplicityHoursProp,\n multiplicityMinutes: multiplicityMinutesProp,\n multiplicitySeconds: multiplicitySecondsProp,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const [multiplicityHours, multiplicityMinutes, multiplicitySeconds] =\n getMultiplicityTime(\n otherProps.format || datePickerPropFormatTypeDateTime,\n multiplicityHoursProp,\n multiplicityMinutesProp,\n multiplicitySecondsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\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 });\n\n const onFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n onFocus && onFocus(e);\n setCalendarVisible.on();\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 = startOfMonth(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 = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTime\n {...otherProps}\n ref={fieldRef}\n onFocus={onFocusHandler}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"date-time\"\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- 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","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}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{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";import{useDropdownVisible}from"../useDropdownVisible";export var DatePickerTypeDateTimeRange=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.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.multiplicityMinutes,v=a.dropdownClassName,w=a.multiplicitySeconds,x=a.multiplicityHours,y=_objectWithoutProperties(a,_excluded),z=useRef(null),A=useRef(null),B=useRef(null),C=useRef(null),D=useRef(null),E=useDropdownVisible(l,m),F=E.calendarVisible,G=E.blocks,H=G.start,I=H.onFocus,J=H.onBlur,K=G.dropdown,L=K.onBlur,M=K.onFocus,N=G.end,O=N.onFocus,P=N.onBlur,Q=E.close,R=E.fieldType,S="start"===R,T="end"===R,U=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:F}),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]&&S){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(),F,S]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&T){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(),F,T]),useClickOutside({isActive:F,ignoreClicksInsideRefs:[z,A,D],handler:Q}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},y,{ref:b,startFieldRef:z,endFieldRef:A,startFieldInputRef:useForkRef([B,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([C,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:I,endFieldOnFocus:O,startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:J,endFieldOnBlur:P,startFocused:S,endFocused:T,startFieldName:getFieldName(t,0),endFieldName:getFieldName(t,1)})),React.createElement(DatePickerDropdown,{type:"date-time",ref:D,anchorRef:z,isOpen:F,className:v,onChangeCurrentVisibleDate:X,currentVisibleDate:W,value:a.value||void 0,onFocus:M,onBlur:L,timeFor:R||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(S){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(T){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,multiplicityMinutes:u,multiplicitySeconds:w,multiplicityHours:x,zIndex:getDropdownZIndex(a.style)}))});
1
+ 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","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=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.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.multiplicityMinutes,v=a.dropdownClassName,w=a.multiplicitySeconds,x=a.multiplicityHours,y=_objectWithoutProperties(a,_excluded),z=useRef(null),A=useRef(null),B=useRef(null),C=useRef(null),D=useRef(null),E=useState(!1),F=_slicedToArray(E,2),G=F[0],H=F[1],I="start"===G,J="end"===G,K=useFlag(!1),L=_slicedToArray(K,2),M=L[0],N=L[1],O=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:M}),P=_slicedToArray(O,2),Q=P[0],R=P[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&I){var c=startOfMonth(a.value[0]);c.getTime()!==(null===Q||void 0===Q?void 0:Q.getTime())&&R(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),M,I]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&J){var c=startOfMonth(a.value[1]);c.getTime()!==(null===Q||void 0===Q?void 0:Q.getTime())&&R(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),M,J]),useClickOutside({isActive:M,ignoreClicksInsideRefs:[z,A,D],handler:useCallback(function(){H(!1),N.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},y,{ref:b,startFieldRef:z,endFieldRef:A,startFieldInputRef:useForkRef([B,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([C,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;H("start"),N.on(),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;H("end"),N.on(),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(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,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:I,endFocused:J,startFieldName:getFieldName(t,0),endFieldName:getFieldName(t,1)})),React.createElement(DatePickerDropdown,{type:"date-time",ref:D,anchorRef:z,isOpen:M,className:v,onChangeCurrentVisibleDate:R,currentVisibleDate:Q,value:a.value||void 0,timeFor:G||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(I){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(J){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,multiplicityMinutes:u,multiplicitySeconds:w,multiplicityHours:x,zIndex:getDropdownZIndex(a.style)}))});
2
2
  //# sourceMappingURL=DatePickerTypeDateTimeRange.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerTypeDateTimeRange.js","names":["startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","useDropdownVisible","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","calendarVisible","blocks","start","onStartFocus","onStartBlur","dropdown","onDropdownBlur","onDropdownFocus","end","onEndFocus","onEndBlur","close","fieldType","startFocused","endFocused","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","Array","isArray","hadleChange","e","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.tsx"],"sourcesContent":["import startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\nimport { useDropdownVisible } from '../useDropdownVisible';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n multiplicityMinutes,\n dropdownClassName,\n multiplicitySeconds,\n multiplicityHours,\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 {\n calendarVisible,\n blocks: {\n start: { onFocus: onStartFocus, onBlur: onStartBlur },\n dropdown: { onBlur: onDropdownBlur, onFocus: onDropdownFocus },\n end: { onFocus: onEndFocus, onBlur: onEndBlur },\n },\n close,\n fieldType,\n } = useDropdownVisible(onFocus, onBlur);\n\n const startFocused = fieldType === 'start';\n const endFocused = fieldType === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\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 });\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: [startFieldRef, endFieldRef, calendarRef],\n handler: close,\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={onStartFocus}\n endFieldOnFocus={onEndFocus}\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={onStartBlur}\n endFieldOnBlur={onEndBlur}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n onFocus={onDropdownFocus}\n onBlur={onDropdownBlur}\n timeFor={fieldType || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n multiplicityMinutes={multiplicityMinutes}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityHours={multiplicityHours}\n zIndex={getDropdownZIndex(props.style)}\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","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","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 { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n multiplicityMinutes,\n dropdownClassName,\n multiplicitySeconds,\n multiplicityHours,\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<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\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 });\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('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\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: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\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 startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n timeFor={fieldFocused || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n multiplicityMinutes={multiplicityMinutes}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityHours={multiplicityHours}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","onFocus","onBlur","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls"];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{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonth}from"../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";import{useDropdownVisible}from"../useDropdownVisible";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.onFocus,j=a.onBlur,k=a.currentVisibleDate,l=a.onChangeCurrentVisibleDate,m=a.renderAdditionalControls,n=_objectWithoutProperties(a,_excluded),o=useRef(null),p=useRef(null),q=useDropdownVisible(i,j),r=q.calendarVisible,s=q.blocks,t=s.start,u=t.onFocus,v=t.onBlur,w=s.dropdown,x=w.onBlur,y=w.onFocus,z=q.close,A=useCurrentVisibleDate({currentVisibleDate:k,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:l,calendarVisible:r}),B=_slicedToArray(A,2),C=B[0],D=B[1];return useEffect(function(){b&&setRef(b,o.current)},[b,o]),useEffect(function(){if(a.value&&"classic"===e&&C){var b=startOfYear(a.value);return void(b.getTime()!==C.getTime()&&D(b))}if(a.value&&"classic"!==e&&C){var c=startOfYear(a.value);c.getTime()!==C.getTime()&&c.getTime()!==addYears(C,1).getTime()&&D(c)}},[a.value]),useClickOutside({isActive:r,ignoreClicksInsideRefs:[o,p],handler:z}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonth,Object.assign({},n,{ref:o,onFocus:u,onBlur:v})),React.createElement(DatePickerDropdown,{ref:p,anchorRef:o,isOpen:r,value:a.value||void 0,type:"month",view:e,events:c,locale:f,onFocus:y,onBlur:x,minDate:a.minDate,className:h,maxDate:a.maxDate,currentVisibleDate:C,form:g,onChange:function onChange(b){var c;null===(c=a.onChange)||void 0===c?void 0:c.call(a,b),z()},renderAdditionalControls:m,onChangeCurrentVisibleDate:D,zIndex:getDropdownZIndex(a.style)}))});
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","dropdownClassName","onFocus","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls"];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{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeMonth}from"../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";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.onFocus,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=_objectWithoutProperties(a,_excluded),n=useRef(null),o=useRef(null),p=useFlag(!1),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfYear,onChangeCurrentVisibleDate:k,calendarVisible:r}),u=_slicedToArray(t,2),v=u[0],w=u[1];return useEffect(function(){b&&setRef(b,n.current)},[b,n]),useEffect(function(){if(a.value&&"classic"===e&&v){var b=startOfYear(a.value);return void(b.getTime()!==v.getTime()&&w(b))}if(a.value&&"classic"!==e&&v){var c=startOfYear(a.value);c.getTime()!==v.getTime()&&c.getTime()!==addYears(v,1).getTime()&&w(c)}},[a.value]),useClickOutside({isActive:r,ignoreClicksInsideRefs:[n,o],handler:s.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeMonth,Object.assign({},m,{ref:n,onFocus:function onFocusHandler(a){i&&i(a),s.on()}})),React.createElement(DatePickerDropdown,{ref:o,anchorRef:n,isOpen:r,value:a.value||void 0,type:"month",view:e,events:c,locale:f,minDate:a.minDate,className:h,maxDate:a.maxDate,currentVisibleDate:v,form:g,onChange:function onChange(b){var c;null===(c=a.onChange)||void 0===c?void 0:c.call(a,b),s.off()},renderAdditionalControls:l,onChangeCurrentVisibleDate:w,zIndex:getDropdownZIndex(a.style)}))});
2
2
  //# sourceMappingURL=DatePickerTypeMonth.js.map