@consta/uikit 4.11.0 → 4.13.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 (90) hide show
  1. package/__internal__/src/components/Collapse/Collapse.css +1 -1
  2. package/__internal__/src/components/Collapse/Collapse.d.ts +1 -2
  3. package/__internal__/src/components/Collapse/Collapse.js +1 -1
  4. package/__internal__/src/components/Collapse/Collapse.js.map +1 -1
  5. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.css +1 -1
  6. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.js +1 -1
  7. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.js.map +1 -1
  8. package/__internal__/src/components/Collapse/types.d.ts +7 -2
  9. package/__internal__/src/components/Collapse/types.js +1 -1
  10. package/__internal__/src/components/Collapse/types.js.map +1 -1
  11. package/__internal__/src/components/CollapseGroup/CollapseGroup.js +1 -1
  12. package/__internal__/src/components/CollapseGroup/CollapseGroup.js.map +1 -1
  13. package/__internal__/src/components/CollapseGroup/helpers.d.ts +7 -4
  14. package/__internal__/src/components/CollapseGroup/helpers.js.map +1 -1
  15. package/__internal__/src/components/CollapseGroup/useChoice.js +1 -1
  16. package/__internal__/src/components/CollapseGroup/useChoice.js.map +1 -1
  17. package/__internal__/src/components/Combobox/helpers.d.ts +2 -2
  18. package/__internal__/src/components/Combobox/helpers.js.map +1 -1
  19. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js +1 -1
  20. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js.map +1 -1
  21. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
  22. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js.map +1 -1
  23. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
  24. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
  25. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js +1 -1
  26. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map +1 -1
  27. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
  28. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
  29. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js +1 -1
  30. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js.map +1 -1
  31. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
  32. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
  33. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js +1 -1
  34. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js.map +1 -1
  35. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js +1 -1
  36. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js.map +1 -1
  37. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
  38. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
  39. package/__internal__/src/components/DatePicker/useDropdownVisible.d.ts +24 -0
  40. package/__internal__/src/components/DatePicker/useDropdownVisible.js +2 -0
  41. package/__internal__/src/components/DatePicker/useDropdownVisible.js.map +1 -0
  42. package/__internal__/src/components/EventInterceptor/propsHandlers/useSelectEventsHandler.js +1 -1
  43. package/__internal__/src/components/EventInterceptor/propsHandlers/useSelectEventsHandler.js.map +1 -1
  44. package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +1 -1
  45. package/__internal__/src/components/ListCanary/ListItem/ListItem.js +1 -1
  46. package/__internal__/src/components/ListCanary/ListItem/ListItem.js.map +1 -1
  47. package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.d.ts +2 -2
  48. package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.js +1 -1
  49. package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.js.map +1 -1
  50. package/__internal__/src/components/ListCanary/types.d.ts +4 -3
  51. package/__internal__/src/components/ListCanary/types.js.map +1 -1
  52. package/__internal__/src/components/SelectComponents/Select.css +1 -1
  53. package/__internal__/src/components/SelectComponents/SelectValueTag/SelectValueTag.d.ts +1 -1
  54. package/__internal__/src/components/SelectComponents/SelectValueTag/SelectValueTag.js.map +1 -1
  55. package/__internal__/src/components/Slider/Slider.js +1 -1
  56. package/__internal__/src/components/Slider/Slider.js.map +1 -1
  57. package/__internal__/src/components/Slider/SliderInput/SliderInput.d.ts +1 -1
  58. package/__internal__/src/components/Slider/SliderInput/SliderInput.js +1 -1
  59. package/__internal__/src/components/Slider/SliderInput/SliderInput.js.map +1 -1
  60. package/__internal__/src/components/Slider/helper.d.ts +13 -5
  61. package/__internal__/src/components/Slider/helper.js +1 -1
  62. package/__internal__/src/components/Slider/helper.js.map +1 -1
  63. package/__internal__/src/components/Slider/useSlider/useSlider.js +1 -1
  64. package/__internal__/src/components/Slider/useSlider/useSlider.js.map +1 -1
  65. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.css +1 -1
  66. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.d.ts +1 -1
  67. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.js +1 -1
  68. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.js.map +1 -1
  69. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/useFittingItems.d.ts +1 -5
  70. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/useFittingItems.js +1 -1
  71. package/__internal__/src/components/Tabs/FitModeDropdownWrapper/useFittingItems.js.map +1 -1
  72. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.css +1 -1
  73. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js +1 -1
  74. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js.map +1 -1
  75. package/__internal__/src/components/Tabs/Tab/TabsTab.css +1 -1
  76. package/__internal__/src/components/Tabs/Tab/TabsTab.d.ts +10 -2
  77. package/__internal__/src/components/Tabs/Tab/TabsTab.js +1 -1
  78. package/__internal__/src/components/Tabs/Tab/TabsTab.js.map +1 -1
  79. package/__internal__/src/components/Tabs/Tabs.js +1 -1
  80. package/__internal__/src/components/Tabs/Tabs.js.map +1 -1
  81. package/__internal__/src/components/Tabs/helpers.d.ts +14 -2
  82. package/__internal__/src/components/Tabs/helpers.js +1 -1
  83. package/__internal__/src/components/Tabs/helpers.js.map +1 -1
  84. package/__internal__/src/components/Tabs/types.d.ts +32 -11
  85. package/__internal__/src/components/Tabs/types.js.map +1 -1
  86. package/__internal__/src/components/TagBase/TagBase.css +1 -1
  87. package/__internal__/src/hooks/useForkRef/useForkRef.js.map +1 -1
  88. package/__internal__/src/hooks/useRefs/useRefs.js +1 -1
  89. package/__internal__/src/hooks/useRefs/useRefs.js.map +1 -1
  90. package/package.json +1 -1
@@ -1 +1 @@
1
- .Collapse_size_2xs,.Collapse_size_xs{--vertical-space:var(--space-2xs);--elements-offset:var(--space-xs);--body-offset-up:var(--space-2xs);--body-offset-bottom:var(--space-xs)}.Collapse_size_s{--vertical-space:var(--space-xs);--elements-offset:var(--space-xs);--body-offset-up:var(--space-xs);--body-offset-bottom:var(--space-m)}.Collapse_size_l,.Collapse_size_m{--vertical-space:var(--space-s);--elements-offset:var(--space-s);--body-offset-up:var(--space-s);--body-offset-bottom:var(--space-xl)}.Collapse_view_secondary{color:var(--color-typo-secondary)}.Collapse-Label{align-items:center;cursor:pointer;display:flex;flex-direction:row;padding:var(--vertical-space) var(--horizontal-space);transition:background .3s}.Collapse-Label_hoverEffect:hover{background:var(--color-control-bg-clear-hover)}.Collapse-Label_iconPosition_right{flex-direction:row-reverse}.Collapse-Body{max-height:0;overflow:hidden;transition:max-height .3s;transition-timing-function:cubic-bezier(.7,0,.5,1)}.Collapse-Body_isOpen{max-height:var(--collapse-body-max-height)}.Collapse-Body_divider{border-bottom:1px solid var(--color-bg-border)}.Collapse-Side{line-height:0;margin-left:var(--elements-offset)}.Collapse-Content{padding:var(--body-offset-up) var(--horizontal-space) var(--body-offset-bottom) var(--horizontal-space)}.Collapse-Icon{flex:none}.Collapse-Icon_position_left{margin-right:var(--elements-offset)}.Collapse-Icon_position_right{margin-left:var(--elements-offset)}.Collapse-LabelText{flex:1}
1
+ .Collapse{color:var(--collapse-color)}.Collapse_size_2xs,.Collapse_size_xs{--vertical-space:var(--space-2xs);--elements-offset:var(--space-xs);--body-offset-up:var(--space-2xs);--body-offset-bottom:var(--space-xs)}.Collapse_size_s{--vertical-space:var(--space-xs);--elements-offset:var(--space-xs);--body-offset-up:var(--space-xs);--body-offset-bottom:var(--space-m)}.Collapse_size_l,.Collapse_size_m{--vertical-space:var(--space-s);--elements-offset:var(--space-s);--body-offset-up:var(--space-s);--body-offset-bottom:var(--space-xl)}.Collapse_view_primary{--collapse-color:var(--color-typo-primary);--collapse-bg-hover:var(--color-control-bg-clear-hover)}.Collapse_view_secondary{--collapse-color:var(--color-typo-secondary);--collapse-bg-hover:var(--color-control-bg-ghost-hover)}.Collapse-Label{align-items:center;cursor:pointer;display:flex;flex-direction:row;padding:var(--vertical-space) var(--horizontal-space);transition:background .3s}.Collapse-Label_hoverEffect:hover{background:var(--collapse-bg-hover)}.Collapse-Label_iconPosition_right{flex-direction:row-reverse}.Collapse-Body{max-height:0;overflow:hidden;transition:max-height .3s;transition-timing-function:cubic-bezier(.7,0,.5,1)}.Collapse-Body_isOpen{max-height:var(--collapse-body-max-height)}.Collapse-Body_divider{border-bottom:1px solid var(--color-bg-border)}.Collapse-Side{line-height:0;margin-left:var(--elements-offset)}.Collapse-Content{padding:var(--body-offset-up) var(--horizontal-space) var(--body-offset-bottom) var(--horizontal-space)}.Collapse-Icon{flex:none}.Collapse-Icon_position_left{margin-right:var(--elements-offset)}.Collapse-Icon_position_right{margin-left:var(--elements-offset)}.Collapse-LabelText{flex:1}
@@ -1,8 +1,7 @@
1
1
  import './Collapse.css';
2
- import { IconPropSize } from '@consta/icons/Icon';
3
2
  import { CollapseComponent, CollapsePropSize } from './types';
4
3
  export declare const COMPONENT_NAME: "Collapse";
5
4
  export declare const cnCollapse: import("@bem-react/classname").ClassNameFormatter;
6
- export declare const sizeIconMap: Record<CollapsePropSize, IconPropSize>;
5
+ export declare const sizeIconMap: Record<CollapsePropSize, 'xs' | 's'>;
7
6
  export declare const Collapse: CollapseComponent;
8
7
  export * from './types';
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";var _excluded=["label","size","view","className","maxContentHeight","isOpen","children","hoverEffect","divider","icon","closeIcon","rightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","style"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./Collapse.css";import{IconArrowDown}from"@consta/icons/IconArrowDown";import React,{useRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{cn}from"../../utils/bem";import{getByMap}from"../../utils/getByMap";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{Text}from"../Text/Text";import{CollapseIcon}from"./CollapseIcon/CollapseIcon";import{collapsePropCloseDirectionIconDefault,collapsePropDirectionIconDefault,collapsePropIconPositionDefault,collapsePropSizeDefault,collapsePropViewDefault}from"./types";export var COMPONENT_NAME="Collapse";export var cnCollapse=cn("Collapse");export var sizeIconMap={"2xs":"xs",xs:"xs",s:"xs",m:"s",l:"s"};function renderSide(a){var b=a?_toConsumableArray(Array.isArray(a)?a:[a]):[];return b.map(function(a,b){return React.createElement("div",{className:cnCollapse("Side"),key:b},a)})}var getMaxHeight=function(a,b){return b?"string"==typeof b?b:"".concat(b,"px"):"".concat(a,"px")};export var Collapse=React.forwardRef(function(a,b){var c=useRef(null),d=useRef(null),e=useComponentSize(d),f=e.height,g=usePropsHandler(COMPONENT_NAME,a,c),h=g.label,i=g.size,j=void 0===i?collapsePropSizeDefault:i,k=g.view,l=void 0===k?collapsePropViewDefault:k,m=g.className,n=g.maxContentHeight,o=g.isOpen,p=g.children,q=g.hoverEffect,r=g.divider,s=g.icon,t=void 0===s?IconArrowDown:s,u=g.closeIcon,v=g.rightSide,w=g.horizontalSpace,x=g.iconPosition,y=void 0===x?collapsePropIconPositionDefault:x,z=g.directionIcon,A=void 0===z?collapsePropDirectionIconDefault:z,B=g.closeDirectionIcon,C=void 0===B?collapsePropCloseDirectionIconDefault:B,D=g.style,E=_objectWithoutProperties(g,_excluded);return React.createElement("div",{ref:useForkRef([b,c]),className:cnCollapse({size:j,view:l},[m]),style:_objectSpread(_objectSpread({},D),{},_defineProperty({},"--horizontal-space",w?"var(--space-".concat(w,")"):0))},React.createElement("div",Object.assign({className:cnCollapse("Label",{hoverEffect:q,iconPosition:y})},E),React.createElement(CollapseIcon,{className:cnCollapse("Icon",{position:y}),size:getByMap(sizeIconMap,j),icon:t,closeIcon:u,isOpen:o,direction:A,closeDirection:C}),"object"==typeof h?React.createElement("div",{className:cnCollapse("LabelText")},h):React.createElement(Text,{className:cnCollapse("LabelText"),view:l,size:j},h),"left"===y&&renderSide(v)),React.createElement("div",{style:_defineProperty({},"--collapse-body-max-height",getMaxHeight(f,n)),className:cnCollapse("Body",{isOpen:o,divider:r})},React.createElement("div",{ref:d,className:cnCollapse("Content")},p)))});export*from"./types";
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";var _excluded=["label","size","view","className","maxContentHeight","isOpen","children","hoverEffect","divider","icon","closeIcon","rightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","style","iconView"];function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./Collapse.css";import{IconArrowDown}from"@consta/icons/IconArrowDown";import React,{useRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{cn}from"../../utils/bem";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{Text}from"../Text/Text";import{CollapseIcon}from"./CollapseIcon/CollapseIcon";import{collapsePropCloseDirectionIconDefault,collapsePropDirectionIconDefault,collapsePropIconPositionDefault,collapsePropIconViewDefault,collapsePropSizeDefault,collapsePropViewDefault}from"./types";export var COMPONENT_NAME="Collapse";export var cnCollapse=cn("Collapse");export var sizeIconMap={"2xs":"xs",xs:"xs",s:"xs",m:"s",l:"s"};function renderSide(a){var b=a?_toConsumableArray(Array.isArray(a)?a:[a]):[];return b.map(function(a,b){return React.createElement("div",{className:cnCollapse("Side"),key:b},a)})}var getMaxHeight=function(a,b){return b?"string"==typeof b?b:"".concat(b,"px"):"".concat(a,"px")};export var Collapse=React.forwardRef(function(a,b){var c=useRef(null),d=useRef(null),e=useComponentSize(d),f=e.height,g=usePropsHandler(COMPONENT_NAME,a,c),h=g.label,i=g.size,j=void 0===i?collapsePropSizeDefault:i,k=g.view,l=void 0===k?collapsePropViewDefault:k,m=g.className,n=g.maxContentHeight,o=g.isOpen,p=g.children,q=g.hoverEffect,r=g.divider,s=g.icon,t=void 0===s?IconArrowDown:s,u=g.closeIcon,v=g.rightSide,w=g.horizontalSpace,x=g.iconPosition,y=void 0===x?collapsePropIconPositionDefault:x,z=g.directionIcon,A=void 0===z?collapsePropDirectionIconDefault:z,B=g.closeDirectionIcon,C=void 0===B?collapsePropCloseDirectionIconDefault:B,D=g.style,E=g.iconView,F=void 0===E?collapsePropIconViewDefault:E,G=_objectWithoutProperties(g,_excluded);return React.createElement("div",{ref:useForkRef([b,c]),className:cnCollapse({size:j,view:l},[m]),style:_objectSpread(_objectSpread({},D),{},_defineProperty({},"--horizontal-space",w?"var(--space-".concat(w,")"):0))},React.createElement("div",Object.assign({className:cnCollapse("Label",{hoverEffect:q,iconPosition:y,view:l})},G),React.createElement(CollapseIcon,{className:cnCollapse("Icon",{position:y}),size:sizeIconMap[j],icon:t,closeIcon:u,isOpen:o,direction:A,closeDirection:C,view:F}),"object"==typeof h?React.createElement("div",{className:cnCollapse("LabelText")},h):React.createElement(Text,{className:cnCollapse("LabelText"),view:l,size:j},h),"left"===y&&renderSide(v)),React.createElement("div",{style:_defineProperty({},"--collapse-body-max-height",getMaxHeight(f,n)),className:cnCollapse("Body",{isOpen:o,divider:r})},React.createElement("div",{ref:d,className:cnCollapse("Content")},p)))});export*from"./types";
2
2
  //# sourceMappingURL=Collapse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Collapse.js","names":["IconArrowDown","React","useRef","useComponentSize","useForkRef","cn","getByMap","usePropsHandler","Text","CollapseIcon","collapsePropCloseDirectionIconDefault","collapsePropDirectionIconDefault","collapsePropIconPositionDefault","collapsePropSizeDefault","collapsePropViewDefault","COMPONENT_NAME","cnCollapse","sizeIconMap","renderSide","side","sides","Array","isArray","map","item","index","getMaxHeight","height","maxHeight","Collapse","forwardRef","props","ref","collapseRef","contentRef","contentHeight","label","size","view","className","maxContentHeight","isOpen","children","hoverEffect","divider","icon","closeIcon","rightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","style","otherProps","position"],"sources":["../../../../../src/components/Collapse/Collapse.tsx"],"sourcesContent":["import './Collapse.css';\n\nimport { IconPropSize } from '@consta/icons/Icon';\nimport { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport React, { useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cn } from '../../utils/bem';\nimport { getByMap } from '../../utils/getByMap';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { Text } from '../Text/Text';\nimport { CollapseIcon } from './CollapseIcon/CollapseIcon';\nimport {\n CollapseComponent,\n collapsePropCloseDirectionIconDefault,\n collapsePropDirectionIconDefault,\n collapsePropIconPositionDefault,\n CollapseProps,\n CollapsePropSize,\n collapsePropSizeDefault,\n collapsePropViewDefault,\n} from './types';\n\nexport const COMPONENT_NAME = 'Collapse' as const;\n\nexport const cnCollapse = cn('Collapse');\n\nexport const sizeIconMap: Record<CollapsePropSize, IconPropSize> = {\n '2xs': 'xs',\n 'xs': 'xs',\n 's': 'xs',\n 'm': 's',\n 'l': 's',\n};\n\nfunction renderSide(side: React.ReactNode): React.ReactNode {\n const sides = side ? [...(Array.isArray(side) ? side : [side])] : [];\n\n return sides.map((item, index) => (\n <div className={cnCollapse('Side')} key={index}>\n {item}\n </div>\n ));\n}\n\nconst getMaxHeight = (height: number, maxHeight?: number | string) => {\n if (maxHeight) {\n return typeof maxHeight === 'string' ? maxHeight : `${maxHeight}px`;\n }\n return `${height}px`;\n};\n\nexport const Collapse: CollapseComponent = React.forwardRef<\n HTMLDivElement,\n CollapseProps\n>((props, ref) => {\n const collapseRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const { height: contentHeight } = useComponentSize(contentRef);\n\n const {\n label,\n size = collapsePropSizeDefault,\n view = collapsePropViewDefault,\n className,\n maxContentHeight,\n isOpen,\n children,\n hoverEffect,\n divider,\n icon = IconArrowDown,\n closeIcon,\n rightSide,\n horizontalSpace,\n iconPosition = collapsePropIconPositionDefault,\n directionIcon = collapsePropDirectionIconDefault,\n closeDirectionIcon = collapsePropCloseDirectionIconDefault,\n style,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, collapseRef);\n\n return (\n <div\n ref={useForkRef([ref, collapseRef])}\n className={cnCollapse({ size, view }, [className])}\n style={{\n ...style,\n ['--horizontal-space' as string]: horizontalSpace\n ? `var(--space-${horizontalSpace})`\n : 0,\n }}\n >\n <div\n className={cnCollapse('Label', {\n hoverEffect,\n iconPosition,\n })}\n {...otherProps}\n >\n <CollapseIcon\n className={cnCollapse('Icon', { position: iconPosition })}\n size={getByMap(sizeIconMap, size)}\n icon={icon}\n closeIcon={closeIcon}\n isOpen={isOpen}\n direction={directionIcon}\n closeDirection={closeDirectionIcon}\n />\n {typeof label === 'object' ? (\n <div className={cnCollapse('LabelText')}>{label}</div>\n ) : (\n <Text className={cnCollapse('LabelText')} view={view} size={size}>\n {label}\n </Text>\n )}\n {iconPosition === 'left' && renderSide(rightSide)}\n </div>\n <div\n style={{\n ['--collapse-body-max-height' as string]: getMaxHeight(\n contentHeight,\n maxContentHeight,\n ),\n }}\n className={cnCollapse('Body', { isOpen, divider })}\n >\n <div ref={contentRef} className={cnCollapse('Content')}>\n {children}\n </div>\n </div>\n </div>\n );\n});\n\nexport * from './types';\n"],"mappings":"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"}
1
+ {"version":3,"file":"Collapse.js","names":["IconArrowDown","React","useRef","useComponentSize","useForkRef","cn","usePropsHandler","Text","CollapseIcon","collapsePropCloseDirectionIconDefault","collapsePropDirectionIconDefault","collapsePropIconPositionDefault","collapsePropIconViewDefault","collapsePropSizeDefault","collapsePropViewDefault","COMPONENT_NAME","cnCollapse","sizeIconMap","renderSide","side","sides","Array","isArray","map","item","index","getMaxHeight","height","maxHeight","Collapse","forwardRef","props","ref","collapseRef","contentRef","contentHeight","label","size","view","className","maxContentHeight","isOpen","children","hoverEffect","divider","icon","closeIcon","rightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","style","iconView","otherProps","position"],"sources":["../../../../../src/components/Collapse/Collapse.tsx"],"sourcesContent":["import './Collapse.css';\n\nimport { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport React, { useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef/useForkRef';\nimport { cn } from '##/utils/bem';\n\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { Text } from '../Text/Text';\nimport { CollapseIcon } from './CollapseIcon/CollapseIcon';\nimport {\n CollapseComponent,\n collapsePropCloseDirectionIconDefault,\n collapsePropDirectionIconDefault,\n collapsePropIconPositionDefault,\n collapsePropIconViewDefault,\n CollapseProps,\n CollapsePropSize,\n collapsePropSizeDefault,\n collapsePropViewDefault,\n} from './types';\n\nexport const COMPONENT_NAME = 'Collapse' as const;\n\nexport const cnCollapse = cn('Collapse');\n\nexport const sizeIconMap: Record<CollapsePropSize, 'xs' | 's'> = {\n '2xs': 'xs',\n 'xs': 'xs',\n 's': 'xs',\n 'm': 's',\n 'l': 's',\n};\n\nfunction renderSide(side: React.ReactNode): React.ReactNode {\n const sides = side ? [...(Array.isArray(side) ? side : [side])] : [];\n\n return sides.map((item, index) => (\n <div className={cnCollapse('Side')} key={index}>\n {item}\n </div>\n ));\n}\n\nconst getMaxHeight = (height: number, maxHeight?: number | string) => {\n if (maxHeight) {\n return typeof maxHeight === 'string' ? maxHeight : `${maxHeight}px`;\n }\n return `${height}px`;\n};\n\nexport const Collapse: CollapseComponent = React.forwardRef<\n HTMLDivElement,\n CollapseProps\n>((props, ref) => {\n const collapseRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const { height: contentHeight } = useComponentSize(contentRef);\n\n const {\n label,\n size = collapsePropSizeDefault,\n view = collapsePropViewDefault,\n className,\n maxContentHeight,\n isOpen,\n children,\n hoverEffect,\n divider,\n icon = IconArrowDown,\n closeIcon,\n rightSide,\n horizontalSpace,\n iconPosition = collapsePropIconPositionDefault,\n directionIcon = collapsePropDirectionIconDefault,\n closeDirectionIcon = collapsePropCloseDirectionIconDefault,\n style,\n iconView = collapsePropIconViewDefault,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, collapseRef);\n\n return (\n <div\n ref={useForkRef([ref, collapseRef])}\n className={cnCollapse({ size, view }, [className])}\n style={{\n ...style,\n ['--horizontal-space' as string]: horizontalSpace\n ? `var(--space-${horizontalSpace})`\n : 0,\n }}\n >\n <div\n className={cnCollapse('Label', {\n hoverEffect,\n iconPosition,\n view,\n })}\n {...otherProps}\n >\n <CollapseIcon\n className={cnCollapse('Icon', { position: iconPosition })}\n size={sizeIconMap[size]}\n icon={icon}\n closeIcon={closeIcon}\n isOpen={isOpen}\n direction={directionIcon}\n closeDirection={closeDirectionIcon}\n view={iconView}\n />\n {typeof label === 'object' ? (\n <div className={cnCollapse('LabelText')}>{label}</div>\n ) : (\n <Text className={cnCollapse('LabelText')} view={view} size={size}>\n {label}\n </Text>\n )}\n {iconPosition === 'left' && renderSide(rightSide)}\n </div>\n <div\n style={{\n ['--collapse-body-max-height' as string]: getMaxHeight(\n contentHeight,\n maxContentHeight,\n ),\n }}\n className={cnCollapse('Body', { isOpen, divider })}\n >\n <div ref={contentRef} className={cnCollapse('Content')}>\n {children}\n </div>\n </div>\n </div>\n );\n});\n\nexport * from './types';\n"],"mappings":"4iCAAA,uBAEA,OAASA,aAAT,KAA8B,6BAA9B,CACA,MAAOC,MAAP,EAAgBC,MAAhB,KAA8B,OAA9B,CAEA,OAASC,gBAAT,oCACA,OAASC,UAAT,yCACA,OAASC,EAAT,uBAEA,OAASC,eAAT,2CACA,OAASC,IAAT,oBACA,OAASC,YAAT,mCACA,OAEEC,qCAFF,CAGEC,gCAHF,CAIEC,+BAJF,CAKEC,2BALF,CAQEC,uBARF,CASEC,uBATF,eAYA,MAAO,IAAMC,eAAc,CAAG,UAAvB,CAEP,MAAO,IAAMC,WAAU,CAAGX,EAAE,CAAC,UAAD,CAArB,CAEP,MAAO,IAAMY,YAAiD,CAAG,CAC/D,MAAO,IADwD,CAE/D,GAAM,IAFyD,CAG/D,EAAK,IAH0D,CAI/D,EAAK,GAJ0D,CAK/D,EAAK,GAL0D,CAA1D,CAQP,QAASC,WAAT,CAAoBC,CAApB,CAA4D,CAC1D,GAAMC,EAAK,CAAGD,CAAI,oBAAQE,KAAK,CAACC,OAAN,CAAcH,CAAd,EAAsBA,CAAtB,CAA6B,CAACA,CAAD,CAArC,EAAgD,EAAlE,CAEA,MAAOC,EAAK,CAACG,GAAN,CAAU,SAACC,CAAD,CAAOC,CAAP,QACf,4BAAK,SAAS,CAAET,UAAU,CAAC,MAAD,CAA1B,CAAoC,GAAG,CAAES,CAAzC,EACGD,CADH,CADe,CAAV,CAKR,CAED,GAAME,aAAY,CAAG,SAACC,CAAD,CAAiBC,CAAjB,CAAiD,OAChEA,EADgE,CAEtC,QAArB,QAAOA,EAAP,CAAgCA,CAAhC,WAA+CA,CAA/C,MAF2D,WAI1DD,CAJ0D,MAKrE,CALD,CAOA,MAAO,IAAME,SAA2B,CAAG5B,KAAK,CAAC6B,UAAN,CAGzC,SAACC,CAAD,CAAQC,CAAR,CAAgB,IACVC,EAAW,CAAG/B,MAAM,CAAiB,IAAjB,CADV,CAEVgC,CAAU,CAAGhC,MAAM,CAAiB,IAAjB,CAFT,GAGkBC,gBAAgB,CAAC+B,CAAD,CAHlC,CAGAC,CAHA,GAGRR,MAHQ,GAyBZrB,eAAe,CAACS,cAAD,CAAiBgB,CAAjB,CAAwBE,CAAxB,CAzBH,CAMdG,CANc,GAMdA,KANc,KAOdC,IAPc,CAOdA,CAPc,YAOPxB,uBAPO,OAQdyB,IARc,CAQdA,CARc,YAQPxB,uBARO,GASdyB,CATc,GASdA,SATc,CAUdC,CAVc,GAUdA,gBAVc,CAWdC,CAXc,GAWdA,MAXc,CAYdC,CAZc,GAYdA,QAZc,CAadC,CAbc,GAadA,WAbc,CAcdC,CAdc,GAcdA,OAdc,KAedC,IAfc,CAedA,CAfc,YAeP7C,aAfO,GAgBd8C,CAhBc,GAgBdA,SAhBc,CAiBdC,CAjBc,GAiBdA,SAjBc,CAkBdC,CAlBc,GAkBdA,eAlBc,KAmBdC,YAnBc,CAmBdA,CAnBc,YAmBCtC,+BAnBD,OAoBduC,aApBc,CAoBdA,CApBc,YAoBExC,gCApBF,OAqBdyC,kBArBc,CAqBdA,CArBc,YAqBO1C,qCArBP,GAsBd2C,CAtBc,GAsBdA,KAtBc,KAuBdC,QAvBc,CAuBdA,CAvBc,YAuBHzC,2BAvBG,GAwBX0C,CAxBW,uCA2BhB,MACE,4BACE,GAAG,CAAElD,UAAU,CAAC,CAAC4B,CAAD,CAAMC,CAAN,CAAD,CADjB,CAEE,SAAS,CAAEjB,UAAU,CAAC,CAAEqB,IAAI,CAAJA,CAAF,CAAQC,IAAI,CAAJA,CAAR,CAAD,CAAiB,CAACC,CAAD,CAAjB,CAFvB,CAGE,KAAK,gCACAa,CADA,wBAEF,oBAFE,CAE+BJ,CAAe,uBAC9BA,CAD8B,MAE7C,CAJD,EAHP,EAUE,yCACE,SAAS,CAAEhC,UAAU,CAAC,OAAD,CAAU,CAC7B2B,WAAW,CAAXA,CAD6B,CAE7BM,YAAY,CAAZA,CAF6B,CAG7BX,IAAI,CAAJA,CAH6B,CAAV,CADvB,EAMMgB,CANN,EAQE,oBAAC,YAAD,EACE,SAAS,CAAEtC,UAAU,CAAC,MAAD,CAAS,CAAEuC,QAAQ,CAAEN,CAAZ,CAAT,CADvB,CAEE,IAAI,CAAEhC,WAAW,CAACoB,CAAD,CAFnB,CAGE,IAAI,CAAEQ,CAHR,CAIE,SAAS,CAAEC,CAJb,CAKE,MAAM,CAAEL,CALV,CAME,SAAS,CAAES,CANb,CAOE,cAAc,CAAEC,CAPlB,CAQE,IAAI,CAAEE,CARR,EARF,CAkBoB,QAAjB,QAAOjB,EAAP,CACC,2BAAK,SAAS,CAAEpB,UAAU,CAAC,WAAD,CAA1B,EAA0CoB,CAA1C,CADD,CAGC,oBAAC,IAAD,EAAM,SAAS,CAAEpB,UAAU,CAAC,WAAD,CAA3B,CAA0C,IAAI,CAAEsB,CAAhD,CAAsD,IAAI,CAAED,CAA5D,EACGD,CADH,CArBJ,CAyBoB,MAAjB,GAAAa,CAAY,EAAe/B,UAAU,CAAC6B,CAAD,CAzBxC,CAVF,CAqCE,2BACE,KAAK,oBACF,4BADE,CACuCrB,YAAY,CACpDS,CADoD,CAEpDK,CAFoD,CADnD,CADP,CAOE,SAAS,CAAExB,UAAU,CAAC,MAAD,CAAS,CAAEyB,MAAM,CAANA,CAAF,CAAUG,OAAO,CAAPA,CAAV,CAAT,CAPvB,EASE,2BAAK,GAAG,CAAEV,CAAV,CAAsB,SAAS,CAAElB,UAAU,CAAC,SAAD,CAA3C,EACG0B,CADH,CATF,CArCF,CAoDH,CAnF0C,CAApC,CAqFP"}
@@ -1 +1 @@
1
- .CollapseIcon{color:var(--color-typo-primary);transform:var(--direction-transform);transition:transform .3s;transition-timing-function:cubic-bezier(.7,0,.5,1)}.CollapseIcon_direction_up{--direction-transform:rotate(0deg)}.CollapseIcon_direction_right{--direction-transform:rotate(90deg)}.CollapseIcon_direction_down{--direction-transform:rotate(180deg)}.CollapseIcon_direction_left{--direction-transform:rotate(270deg)}.CollapseIcon_direction_upRight{--direction-transform:rotate(45deg)}.CollapseIcon_direction_downRight{--direction-transform:rotate(135deg)}.CollapseIcon_direction_downLeft{--direction-transform:rotate(225deg)}.CollapseIcon_direction_upLeft{--direction-transform:rotate(315deg)}.CollapseIcon_closeDirection_up{--close-direction-transform:rotate(0deg)}.CollapseIcon_closeDirection_right{--close-direction-transform:rotate(90deg)}.CollapseIcon_closeDirection_down{--close-direction-transform:rotate(180deg)}.CollapseIcon_closeDirection_left{--close-direction-transform:rotate(270deg)}.CollapseIcon_closeDirection_upRight{--close-direction-transform:rotate(45deg)}.CollapseIcon_closeDirection_downRight{--close-direction-transform:rotate(135deg)}.CollapseIcon_closeDirection_downLeft{--close-direction-transform:rotate(225deg)}.CollapseIcon_closeDirection_upLeft{--close-direction-transform:rotate(315deg)}.CollapseIcon_isOpen{transform:var(--close-direction-transform)}.CollapseIcon_animate_entered,.CollapseIcon_animate_entering{opacity:1;transform:scale(1)}.CollapseIcon_animate_exited,.CollapseIcon_animate_exiting{opacity:0;transform:scale(.1)}.CollapseIcon_animate_entered,.CollapseIcon_animate_entering,.CollapseIcon_animate_exiting{position:absolute;transition:transform .3s,opacity .3s}.CollapseIcon-Wrapper{position:relative}
1
+ .CollapseIcon{color:var(--icon-color);transform:var(--direction-transform);transition:transform .3s;transition-timing-function:cubic-bezier(.7,0,.5,1)}.CollapseIcon_view_clear{--icon-color:var(--color-typo-primary)}.CollapseIcon_view_ghost{--icon-color:var(--color-control-typo-ghost)}.CollapseIcon_direction_up{--direction-transform:rotate(0deg)}.CollapseIcon_direction_right{--direction-transform:rotate(90deg)}.CollapseIcon_direction_down{--direction-transform:rotate(180deg)}.CollapseIcon_direction_left{--direction-transform:rotate(270deg)}.CollapseIcon_direction_upRight{--direction-transform:rotate(45deg)}.CollapseIcon_direction_downRight{--direction-transform:rotate(135deg)}.CollapseIcon_direction_downLeft{--direction-transform:rotate(225deg)}.CollapseIcon_direction_upLeft{--direction-transform:rotate(315deg)}.CollapseIcon_closeDirection_up{--close-direction-transform:rotate(0deg)}.CollapseIcon_closeDirection_right{--close-direction-transform:rotate(90deg)}.CollapseIcon_closeDirection_down{--close-direction-transform:rotate(180deg)}.CollapseIcon_closeDirection_left{--close-direction-transform:rotate(270deg)}.CollapseIcon_closeDirection_upRight{--close-direction-transform:rotate(45deg)}.CollapseIcon_closeDirection_downRight{--close-direction-transform:rotate(135deg)}.CollapseIcon_closeDirection_downLeft{--close-direction-transform:rotate(225deg)}.CollapseIcon_closeDirection_upLeft{--close-direction-transform:rotate(315deg)}.CollapseIcon_isOpen{transform:var(--close-direction-transform)}.CollapseIcon_animate_entered,.CollapseIcon_animate_entering{opacity:1;transform:scale(1)}.CollapseIcon_animate_exited,.CollapseIcon_animate_exiting{opacity:0;transform:scale(.1)}.CollapseIcon_animate_entered,.CollapseIcon_animate_entering,.CollapseIcon_animate_exiting{position:absolute;transition:transform .3s,opacity .3s}.CollapseIcon-Wrapper{position:relative}.CollapseIcon-Button{align-items:center;background:var(--color-control-bg-ghost);border-radius:50%;display:flex;height:var(--button-size);justify-content:center;width:var(--button-size)}.CollapseIcon-Button_size_xs{--button-size:var(--control-height-xs)}.CollapseIcon-Button_size_s{--button-size:var(--control-height-s)}
@@ -1,2 +1,2 @@
1
- import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","icon","closeIcon","direction","closeDirection","isOpen","className"];import"./CollapseIcon.css";import{cnIcon}from"@consta/icons/Icon";import React,{useRef}from"react";import{Transition}from"react-transition-group";import{cn}from"../../../utils/bem";var cnCollapseIcon=cn("CollapseIcon"),animateTimeout=300;export var CollapseIcon=function(a){var b=a.size,c=a.icon,d=a.closeIcon,e=a.direction,f=a.closeDirection,g=a.isOpen,h=a.className,i=_objectWithoutProperties(a,_excluded),j=useRef(null),k=useRef(null);return d?React.createElement("span",{className:cnCollapseIcon("Wrapper",[cnIcon({size:b}),h])},React.createElement(Transition,{in:!g,unmountOnExit:!0,timeout:animateTimeout,nodeRef:j},function(a){return React.createElement(c,Object.assign({},i,{className:cnCollapseIcon({animate:a}),size:b,ref:j}))}),React.createElement(Transition,{in:g,unmountOnExit:!0,timeout:animateTimeout,nodeRef:k},function(a){return React.createElement(d,Object.assign({},i,{className:cnCollapseIcon({animate:a}),size:b,ref:k}))})):React.createElement(c,Object.assign({},i,{className:cnCollapseIcon({isOpen:g,direction:e,closeDirection:f},[h]),size:b}))};
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","icon","closeIcon","direction","closeDirection","isOpen","className","view"];import"./CollapseIcon.css";import{cnIcon}from"@consta/icons/Icon";import React,{useRef}from"react";import{Transition}from"react-transition-group";import{cn}from"../../../utils/bem";var cnCollapseIcon=cn("CollapseIcon"),animateTimeout=300,CollapseIconButton=function(a){var b=a.children,c=a.className,d=a.size;return React.createElement("div",{className:cnCollapseIcon("Button",{size:d},[c])},b)},GuardFragment=function(a){return React.createElement(React.Fragment,null,a.children)};export var CollapseIcon=function(a){var b=a.size,c=a.icon,d=a.closeIcon,e=a.direction,f=a.closeDirection,g=a.isOpen,h=a.className,i=a.view,j=_objectWithoutProperties(a,_excluded),k=useRef(null),l=useRef(null),m="ghost"===i?CollapseIconButton:GuardFragment,n="ghost"===i?h:void 0,o="clear"===i?h:void 0;return React.createElement(m,{size:b,className:n},function renderIcon(){return d?React.createElement("span",{className:cnCollapseIcon("Wrapper",[cnIcon({size:b}),o])},React.createElement(Transition,{in:!g,unmountOnExit:!0,timeout:animateTimeout,nodeRef:k},function(a){return React.createElement(c,Object.assign({},j,{className:cnCollapseIcon({animate:a,view:i}),size:b,ref:k}))}),React.createElement(Transition,{in:g,unmountOnExit:!0,timeout:animateTimeout,nodeRef:l},function(a){return React.createElement(d,Object.assign({},j,{className:cnCollapseIcon({animate:a,view:i}),size:b,ref:l}))})):React.createElement(c,Object.assign({},j,{className:cnCollapseIcon({isOpen:g,direction:e,closeDirection:f,view:i},[o]),size:b}))}())};
2
2
  //# sourceMappingURL=CollapseIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CollapseIcon.js","names":["cnIcon","React","useRef","Transition","cn","cnCollapseIcon","animateTimeout","CollapseIcon","props","size","Icon","icon","CloseIcon","closeIcon","direction","closeDirection","isOpen","className","otherProps","iconRef","closeIconRef","animate"],"sources":["../../../../../../src/components/Collapse/CollapseIcon/CollapseIcon.tsx"],"sourcesContent":["import './CollapseIcon.css';\n\nimport { cnIcon } from '@consta/icons/Icon';\nimport React, { useRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { cn } from '##/utils/bem';\n\nimport { CollapseIconProps } from '../types';\n\nconst cnCollapseIcon = cn('CollapseIcon');\nconst animateTimeout = 300;\n\nexport const CollapseIcon: React.FC<CollapseIconProps> = (props) => {\n const {\n size,\n icon: Icon,\n closeIcon: CloseIcon,\n direction,\n closeDirection,\n isOpen,\n className,\n ...otherProps\n } = props;\n\n const iconRef = useRef<HTMLSpanElement>(null);\n const closeIconRef = useRef<HTMLSpanElement>(null);\n\n if (CloseIcon) {\n return (\n <span\n className={cnCollapseIcon('Wrapper', [cnIcon({ size }), className])}\n >\n <Transition\n in={!isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={iconRef}\n >\n {(animate) => (\n <Icon\n {...otherProps}\n className={cnCollapseIcon({ animate })}\n size={size}\n ref={iconRef}\n />\n )}\n </Transition>\n <Transition\n in={isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={closeIconRef}\n >\n {(animate) => (\n <CloseIcon\n {...otherProps}\n className={cnCollapseIcon({ animate })}\n size={size}\n ref={closeIconRef}\n />\n )}\n </Transition>\n </span>\n );\n }\n return (\n <Icon\n {...otherProps}\n className={cnCollapseIcon({ isOpen, direction, closeDirection }, [\n className,\n ])}\n size={size}\n />\n );\n};\n"],"mappings":"iLAAA,2BAEA,OAASA,MAAT,KAAuB,oBAAvB,CACA,MAAOC,MAAP,EAAgBC,MAAhB,KAA8B,OAA9B,CACA,OAASC,UAAT,KAA2B,wBAA3B,CAEA,OAASC,EAAT,0B,GAIMC,eAAc,CAAGD,EAAE,CAAC,cAAD,C,CACnBE,cAAc,CAAG,G,CAEvB,MAAO,IAAMC,aAAyC,CAAG,SAACC,CAAD,CAAW,IAEhEC,EAFgE,CAU9DD,CAV8D,CAEhEC,IAFgE,CAG1DC,CAH0D,CAU9DF,CAV8D,CAGhEG,IAHgE,CAIrDC,CAJqD,CAU9DJ,CAV8D,CAIhEK,SAJgE,CAKhEC,CALgE,CAU9DN,CAV8D,CAKhEM,SALgE,CAMhEC,CANgE,CAU9DP,CAV8D,CAMhEO,cANgE,CAOhEC,CAPgE,CAU9DR,CAV8D,CAOhEQ,MAPgE,CAQhEC,CARgE,CAU9DT,CAV8D,CAQhES,SARgE,CAS7DC,CAT6D,0BAU9DV,CAV8D,YAY5DW,CAAO,CAAGjB,MAAM,CAAkB,IAAlB,CAZ4C,CAa5DkB,CAAY,CAAGlB,MAAM,CAAkB,IAAlB,CAbuC,OAe9DU,EAf8D,CAiB9D,4BACE,SAAS,CAAEP,cAAc,CAAC,SAAD,CAAY,CAACL,MAAM,CAAC,CAAES,IAAI,CAAJA,CAAF,CAAD,CAAP,CAAmBQ,CAAnB,CAAZ,CAD3B,EAGE,oBAAC,UAAD,EACE,GAAI,CAACD,CADP,CAEE,aAAa,GAFf,CAGE,OAAO,CAAEV,cAHX,CAIE,OAAO,CAAEa,CAJX,EAMG,SAACE,CAAD,QACC,qBAAC,CAAD,kBACMH,CADN,EAEE,SAAS,CAAEb,cAAc,CAAC,CAAEgB,OAAO,CAAPA,CAAF,CAAD,CAF3B,CAGE,IAAI,CAAEZ,CAHR,CAIE,GAAG,CAAEU,CAJP,GADD,CANH,CAHF,CAkBE,oBAAC,UAAD,EACE,GAAIH,CADN,CAEE,aAAa,GAFf,CAGE,OAAO,CAAEV,cAHX,CAIE,OAAO,CAAEc,CAJX,EAMG,SAACC,CAAD,QACC,qBAAC,CAAD,kBACMH,CADN,EAEE,SAAS,CAAEb,cAAc,CAAC,CAAEgB,OAAO,CAAPA,CAAF,CAAD,CAF3B,CAGE,IAAI,CAAEZ,CAHR,CAIE,GAAG,CAAEW,CAJP,GADD,CANH,CAlBF,CAjB8D,CAsDhE,oBAAC,CAAD,kBACMF,CADN,EAEE,SAAS,CAAEb,cAAc,CAAC,CAAEW,MAAM,CAANA,CAAF,CAAUF,SAAS,CAATA,CAAV,CAAqBC,cAAc,CAAdA,CAArB,CAAD,CAAwC,CAC/DE,CAD+D,CAAxC,CAF3B,CAKE,IAAI,CAAER,CALR,GAQH,CA9DM"}
1
+ {"version":3,"file":"CollapseIcon.js","names":["cnIcon","React","useRef","Transition","cn","cnCollapseIcon","animateTimeout","CollapseIconButton","children","className","size","GuardFragment","props","CollapseIcon","Icon","icon","CloseIcon","closeIcon","direction","closeDirection","isOpen","view","otherProps","iconRef","closeIconRef","Wrapper","wrapperClassName","renderIconClassName","renderIcon","animate"],"sources":["../../../../../../src/components/Collapse/CollapseIcon/CollapseIcon.tsx"],"sourcesContent":["import './CollapseIcon.css';\n\nimport { cnIcon } from '@consta/icons/Icon';\nimport React, { useRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { cn } from '##/utils/bem';\n\nimport { CollapseIconProps } from '../types';\n\nconst cnCollapseIcon = cn('CollapseIcon');\nconst animateTimeout = 300;\n\nconst CollapseIconButton = ({\n children,\n className,\n size,\n}: {\n children?: React.ReactNode;\n className?: string;\n size: CollapseIconProps['size'];\n}) => {\n return (\n <div className={cnCollapseIcon('Button', { size }, [className])}>\n {children}\n </div>\n );\n};\n\nconst GuardFragment = (props: { children?: React.ReactNode }) => (\n // eslint-disable-next-line react/jsx-no-useless-fragment\n <>{props.children}</>\n);\n\nexport const CollapseIcon: React.FC<CollapseIconProps> = (props) => {\n const {\n size,\n icon: Icon,\n closeIcon: CloseIcon,\n direction,\n closeDirection,\n isOpen,\n className,\n view,\n ...otherProps\n } = props;\n\n const iconRef = useRef<HTMLSpanElement>(null);\n const closeIconRef = useRef<HTMLSpanElement>(null);\n\n const Wrapper = view === 'ghost' ? CollapseIconButton : GuardFragment;\n const wrapperClassName = view === 'ghost' ? className : undefined;\n const renderIconClassName = view === 'clear' ? className : undefined;\n\n const renderIcon = () => {\n if (CloseIcon) {\n return (\n <span\n className={cnCollapseIcon('Wrapper', [\n cnIcon({ size }),\n renderIconClassName,\n ])}\n >\n <Transition\n in={!isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={iconRef}\n >\n {(animate) => (\n <Icon\n {...otherProps}\n className={cnCollapseIcon({ animate, view })}\n size={size}\n ref={iconRef}\n />\n )}\n </Transition>\n <Transition\n in={isOpen}\n unmountOnExit\n timeout={animateTimeout}\n nodeRef={closeIconRef}\n >\n {(animate) => (\n <CloseIcon\n {...otherProps}\n className={cnCollapseIcon({ animate, view })}\n size={size}\n ref={closeIconRef}\n />\n )}\n </Transition>\n </span>\n );\n }\n return (\n <Icon\n {...otherProps}\n className={cnCollapseIcon({ isOpen, direction, closeDirection, view }, [\n renderIconClassName,\n ])}\n size={size}\n />\n );\n };\n\n return (\n <Wrapper size={size} className={wrapperClassName}>\n {renderIcon()}\n </Wrapper>\n );\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IconComponent, IconProps, IconPropSize } from '@consta/icons/Icon';
1
+ import { IconComponent, IconProps } from '@consta/icons/Icon';
2
2
  import React from 'react';
3
3
  import { PropsWithHTMLAttributes, PropsWithHTMLAttributesAndRef } from "../../utils/types/PropsWithHTMLAttributes";
4
4
  export declare const collapsePropSize: readonly ["m", "l", "s", "xs", "2xs"];
@@ -15,8 +15,9 @@ export declare const collapsePropIconPositionDefault: "left";
15
15
  export declare const collapseIconPropDirection: readonly ["up", "right", "down", "left", "upRight", "downRight", "upLeft", "downLeft"];
16
16
  export declare type CollapseIconPropDirection = typeof collapseIconPropDirection[number];
17
17
  export declare type CollapseIconProps = PropsWithHTMLAttributes<{
18
- size: IconPropSize;
18
+ size: 'xs' | 's';
19
19
  icon: React.FC<IconProps>;
20
+ view: CollapsePropIconView;
20
21
  isOpen?: boolean;
21
22
  cildren?: never;
22
23
  closeIcon?: React.FC<IconProps>;
@@ -26,6 +27,9 @@ export declare type CollapseIconProps = PropsWithHTMLAttributes<{
26
27
  export declare const collapsePropDirectionIcon: readonly ["up", "right", "down", "left", "upRight", "downRight", "upLeft", "downLeft"];
27
28
  export declare const collapsePropDirectionIconDefault: "up";
28
29
  export declare const collapsePropCloseDirectionIconDefault: "down";
30
+ export declare const collapsePropIconView: readonly ["clear", "ghost"];
31
+ export declare const collapsePropIconViewDefault: "clear";
32
+ export declare type CollapsePropIconView = typeof collapsePropIconView[number];
29
33
  export declare type CollapseProps = PropsWithHTMLAttributesAndRef<{
30
34
  size?: CollapsePropSize;
31
35
  icon?: IconComponent;
@@ -36,6 +40,7 @@ export declare type CollapseProps = PropsWithHTMLAttributesAndRef<{
36
40
  horizontalSpace?: CollapsePropHorizontalSpace;
37
41
  hoverEffect?: boolean;
38
42
  isOpen?: boolean;
43
+ iconView?: CollapsePropIconView;
39
44
  } & ({
40
45
  closeIcon?: IconComponent;
41
46
  directionIcon?: never;
@@ -1,2 +1,2 @@
1
- export var collapsePropSize=["m","l","s","xs","2xs"];export var collapsePropSizeDefault=collapsePropSize[0];export var collapsePropView=["primary","secondary"];export var collapsePropViewDefault=collapsePropView[0];export var collapsePropHorizontalSpace=["3xs","6xl","5xl","4xl","3xl","2xl","xl","l","m","s","xs","2xs"];export var collapsePropIconPosition=["left","right"];export var collapsePropIconPositionDefault=collapsePropIconPosition[0];export var collapseIconPropDirection=["up","right","down","left","upRight","downRight","upLeft","downLeft"];export var collapsePropDirectionIcon=collapseIconPropDirection;export var collapsePropDirectionIconDefault=collapsePropDirectionIcon[0];export var collapsePropCloseDirectionIconDefault=collapsePropDirectionIcon[2];
1
+ export var collapsePropSize=["m","l","s","xs","2xs"];export var collapsePropSizeDefault=collapsePropSize[0];export var collapsePropView=["primary","secondary"];export var collapsePropViewDefault=collapsePropView[0];export var collapsePropHorizontalSpace=["3xs","6xl","5xl","4xl","3xl","2xl","xl","l","m","s","xs","2xs"];export var collapsePropIconPosition=["left","right"];export var collapsePropIconPositionDefault=collapsePropIconPosition[0];export var collapseIconPropDirection=["up","right","down","left","upRight","downRight","upLeft","downLeft"];export var collapsePropDirectionIcon=collapseIconPropDirection;export var collapsePropDirectionIconDefault=collapsePropDirectionIcon[0];export var collapsePropCloseDirectionIconDefault=collapsePropDirectionIcon[2];export var collapsePropIconView=["clear","ghost"];export var collapsePropIconViewDefault=collapsePropIconView[0];
2
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["collapsePropSize","collapsePropSizeDefault","collapsePropView","collapsePropViewDefault","collapsePropHorizontalSpace","collapsePropIconPosition","collapsePropIconPositionDefault","collapseIconPropDirection","collapsePropDirectionIcon","collapsePropDirectionIconDefault","collapsePropCloseDirectionIconDefault"],"sources":["../../../../../src/components/Collapse/types.ts"],"sourcesContent":["import { IconComponent, IconProps, IconPropSize } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport {\n PropsWithHTMLAttributes,\n PropsWithHTMLAttributesAndRef,\n} from '##/utils/types/PropsWithHTMLAttributes';\n\nexport const collapsePropSize = ['m', 'l', 's', 'xs', '2xs'] as const;\nexport type CollapsePropSize = typeof collapsePropSize[number];\nexport const collapsePropSizeDefault = collapsePropSize[0];\n\nexport const collapsePropView = ['primary', 'secondary'] as const;\nexport type CollapsePropView = typeof collapsePropView[number];\nexport const collapsePropViewDefault = collapsePropView[0];\n\nexport const collapsePropHorizontalSpace = [\n '3xs',\n '6xl',\n '5xl',\n '4xl',\n '3xl',\n '2xl',\n 'xl',\n 'l',\n 'm',\n 's',\n 'xs',\n '2xs',\n] as const;\nexport type CollapsePropHorizontalSpace =\n typeof collapsePropHorizontalSpace[number];\n\nexport const collapsePropIconPosition = ['left', 'right'] as const;\nexport type CollapsePropIconPosition = typeof collapsePropIconPosition[number];\nexport const collapsePropIconPositionDefault = collapsePropIconPosition[0];\n\nexport const collapseIconPropDirection = [\n 'up',\n 'right',\n 'down',\n 'left',\n 'upRight',\n 'downRight',\n 'upLeft',\n 'downLeft',\n] as const;\nexport type CollapseIconPropDirection =\n typeof collapseIconPropDirection[number];\n\nexport type CollapseIconProps = PropsWithHTMLAttributes<\n {\n size: IconPropSize;\n icon: React.FC<IconProps>;\n isOpen?: boolean;\n cildren?: never;\n closeIcon?: React.FC<IconProps>;\n direction?: CollapseIconPropDirection;\n closeDirection?: CollapseIconPropDirection;\n },\n HTMLSpanElement\n>;\n\nexport const collapsePropDirectionIcon = collapseIconPropDirection;\nexport const collapsePropDirectionIconDefault = collapsePropDirectionIcon[0];\nexport const collapsePropCloseDirectionIconDefault =\n collapsePropDirectionIcon[2];\n\nexport type CollapseProps = PropsWithHTMLAttributesAndRef<\n {\n size?: CollapsePropSize;\n icon?: IconComponent;\n view?: CollapsePropView;\n divider?: boolean;\n label: React.ReactNode;\n maxContentHeight?: string | number;\n horizontalSpace?: CollapsePropHorizontalSpace;\n hoverEffect?: boolean;\n isOpen?: boolean;\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 rightSide?: React.ReactNode;\n }\n | {\n iconPosition?: 'right';\n rightSide?: never;\n }\n ),\n HTMLDivElement\n>;\n\nexport type CollapseComponent = (\n props: CollapseProps,\n) => React.ReactElement | null;\n"],"mappings":"AAQA,MAAO,IAAMA,iBAAgB,CAAG,CAAC,GAAD,CAAM,GAAN,CAAW,GAAX,CAAgB,IAAhB,CAAsB,KAAtB,CAAzB,CAEP,MAAO,IAAMC,wBAAuB,CAAGD,gBAAgB,CAAC,CAAD,CAAhD,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,WAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAuB,CAAGD,gBAAgB,CAAC,CAAD,CAAhD,CAEP,MAAO,IAAME,4BAA2B,CAAG,CACzC,KADyC,CAEzC,KAFyC,CAGzC,KAHyC,CAIzC,KAJyC,CAKzC,KALyC,CAMzC,KANyC,CAOzC,IAPyC,CAQzC,GARyC,CASzC,GATyC,CAUzC,GAVyC,CAWzC,IAXyC,CAYzC,KAZyC,CAApC,CAiBP,MAAO,IAAMC,yBAAwB,CAAG,CAAC,MAAD,CAAS,OAAT,CAAjC,CAEP,MAAO,IAAMC,gCAA+B,CAAGD,wBAAwB,CAAC,CAAD,CAAhE,CAEP,MAAO,IAAME,0BAAyB,CAAG,CACvC,IADuC,CAEvC,OAFuC,CAGvC,MAHuC,CAIvC,MAJuC,CAKvC,SALuC,CAMvC,WANuC,CAOvC,QAPuC,CAQvC,UARuC,CAAlC,CA0BP,MAAO,IAAMC,0BAAyB,CAAGD,yBAAlC,CACP,MAAO,IAAME,iCAAgC,CAAGD,yBAAyB,CAAC,CAAD,CAAlE,CACP,MAAO,IAAME,sCAAqC,CAChDF,yBAAyB,CAAC,CAAD,CADpB"}
1
+ {"version":3,"file":"types.js","names":["collapsePropSize","collapsePropSizeDefault","collapsePropView","collapsePropViewDefault","collapsePropHorizontalSpace","collapsePropIconPosition","collapsePropIconPositionDefault","collapseIconPropDirection","collapsePropDirectionIcon","collapsePropDirectionIconDefault","collapsePropCloseDirectionIconDefault","collapsePropIconView","collapsePropIconViewDefault"],"sources":["../../../../../src/components/Collapse/types.ts"],"sourcesContent":["import { IconComponent, IconProps } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport {\n PropsWithHTMLAttributes,\n PropsWithHTMLAttributesAndRef,\n} from '##/utils/types/PropsWithHTMLAttributes';\n\nexport const collapsePropSize = ['m', 'l', 's', 'xs', '2xs'] as const;\nexport type CollapsePropSize = typeof collapsePropSize[number];\nexport const collapsePropSizeDefault = collapsePropSize[0];\n\nexport const collapsePropView = ['primary', 'secondary'] as const;\nexport type CollapsePropView = typeof collapsePropView[number];\nexport const collapsePropViewDefault = collapsePropView[0];\n\nexport const collapsePropHorizontalSpace = [\n '3xs',\n '6xl',\n '5xl',\n '4xl',\n '3xl',\n '2xl',\n 'xl',\n 'l',\n 'm',\n 's',\n 'xs',\n '2xs',\n] as const;\nexport type CollapsePropHorizontalSpace =\n typeof collapsePropHorizontalSpace[number];\n\nexport const collapsePropIconPosition = ['left', 'right'] as const;\nexport type CollapsePropIconPosition = typeof collapsePropIconPosition[number];\nexport const collapsePropIconPositionDefault = collapsePropIconPosition[0];\n\nexport const collapseIconPropDirection = [\n 'up',\n 'right',\n 'down',\n 'left',\n 'upRight',\n 'downRight',\n 'upLeft',\n 'downLeft',\n] as const;\nexport type CollapseIconPropDirection =\n typeof collapseIconPropDirection[number];\n\nexport type CollapseIconProps = PropsWithHTMLAttributes<\n {\n size: 'xs' | 's';\n icon: React.FC<IconProps>;\n view: CollapsePropIconView;\n isOpen?: boolean;\n cildren?: never;\n closeIcon?: React.FC<IconProps>;\n direction?: CollapseIconPropDirection;\n closeDirection?: CollapseIconPropDirection;\n },\n HTMLSpanElement\n>;\n\nexport const collapsePropDirectionIcon = collapseIconPropDirection;\nexport const collapsePropDirectionIconDefault = collapsePropDirectionIcon[0];\nexport const collapsePropCloseDirectionIconDefault =\n collapsePropDirectionIcon[2];\n\nexport const collapsePropIconView = ['clear', 'ghost'] as const;\nexport const collapsePropIconViewDefault = collapsePropIconView[0];\nexport type CollapsePropIconView = typeof collapsePropIconView[number];\n\nexport type CollapseProps = PropsWithHTMLAttributesAndRef<\n {\n size?: CollapsePropSize;\n icon?: IconComponent;\n view?: CollapsePropView;\n divider?: boolean;\n label: React.ReactNode;\n maxContentHeight?: string | number;\n horizontalSpace?: CollapsePropHorizontalSpace;\n hoverEffect?: boolean;\n isOpen?: boolean;\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 rightSide?: React.ReactNode;\n }\n | {\n iconPosition?: 'right';\n rightSide?: never;\n }\n ),\n HTMLDivElement\n>;\n\nexport type CollapseComponent = (\n props: CollapseProps,\n) => React.ReactElement | null;\n"],"mappings":"AAQA,MAAO,IAAMA,iBAAgB,CAAG,CAAC,GAAD,CAAM,GAAN,CAAW,GAAX,CAAgB,IAAhB,CAAsB,KAAtB,CAAzB,CAEP,MAAO,IAAMC,wBAAuB,CAAGD,gBAAgB,CAAC,CAAD,CAAhD,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,WAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAuB,CAAGD,gBAAgB,CAAC,CAAD,CAAhD,CAEP,MAAO,IAAME,4BAA2B,CAAG,CACzC,KADyC,CAEzC,KAFyC,CAGzC,KAHyC,CAIzC,KAJyC,CAKzC,KALyC,CAMzC,KANyC,CAOzC,IAPyC,CAQzC,GARyC,CASzC,GATyC,CAUzC,GAVyC,CAWzC,IAXyC,CAYzC,KAZyC,CAApC,CAiBP,MAAO,IAAMC,yBAAwB,CAAG,CAAC,MAAD,CAAS,OAAT,CAAjC,CAEP,MAAO,IAAMC,gCAA+B,CAAGD,wBAAwB,CAAC,CAAD,CAAhE,CAEP,MAAO,IAAME,0BAAyB,CAAG,CACvC,IADuC,CAEvC,OAFuC,CAGvC,MAHuC,CAIvC,MAJuC,CAKvC,SALuC,CAMvC,WANuC,CAOvC,QAPuC,CAQvC,UARuC,CAAlC,CA2BP,MAAO,IAAMC,0BAAyB,CAAGD,yBAAlC,CACP,MAAO,IAAME,iCAAgC,CAAGD,yBAAyB,CAAC,CAAD,CAAlE,CACP,MAAO,IAAME,sCAAqC,CAChDF,yBAAyB,CAAC,CAAD,CADpB,CAGP,MAAO,IAAMG,qBAAoB,CAAG,CAAC,OAAD,CAAU,OAAV,CAA7B,CACP,MAAO,IAAMC,4BAA2B,CAAGD,oBAAoB,CAAC,CAAD,CAAxD"}
@@ -1,2 +1,2 @@
1
- import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["items","getItemLabel","getItemContent","size","view","hoverEffect","divider","icon","closeIcon","getItemRightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon"];import{IconArrowDown}from"@consta/icons/IconArrowDown";import React,{forwardRef}from"react";import{Collapse,collapsePropCloseDirectionIconDefault,collapsePropDirectionIconDefault,collapsePropIconPositionDefault,collapsePropSizeDefault,collapsePropViewDefault}from"../Collapse/Collapse";import{withDefaultGetters}from"./helpers";import{useChoice}from"./useChoice";var CollapseGroupRender=function(a,b){var c=withDefaultGetters(a),d=c.items,e=c.getItemLabel,f=c.getItemContent,g=c.size,h=void 0===g?collapsePropSizeDefault:g,i=c.view,j=void 0===i?collapsePropViewDefault:i,k=c.hoverEffect,l=c.divider,m=c.icon,n=void 0===m?IconArrowDown:m,o=c.closeIcon,p=c.getItemRightSide,q=c.horizontalSpace,r=c.iconPosition,s=void 0===r?collapsePropIconPositionDefault:r,t=c.directionIcon,u=void 0===t?collapsePropDirectionIconDefault:t,v=c.closeDirectionIcon,w=void 0===v?collapsePropCloseDirectionIconDefault:v,x=_objectWithoutProperties(c,_excluded),y=useChoice(a),z=y.getChecked,A=y.getOnChange;return React.createElement("div",Object.assign({ref:b},x),d.map(function(a,b){return React.createElement(Collapse,Object.assign({label:e(a),key:b,size:h,view:j,horizontalSpace:q,icon:n,hoverEffect:k,divider:l,isOpen:z(b),onClick:A(b)},"left"===s?{iconPosition:s,rightSide:p(a)}:{iconPosition:s},o?{closeIcon:o}:{directionIcon:u,closeDirectionIcon:w}),f(a))}))};export var CollapseGroup=forwardRef(CollapseGroupRender);export*from"./helpers";
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["items","getItemLabel","getItemContent","size","view","hoverEffect","divider","icon","closeIcon","getItemRightSide","horizontalSpace","iconPosition","directionIcon","closeDirectionIcon","iconView","isAccordion"];import{IconArrowDown}from"@consta/icons/IconArrowDown";import React,{forwardRef}from"react";import{Collapse,collapsePropCloseDirectionIconDefault,collapsePropDirectionIconDefault,collapsePropIconPositionDefault,collapsePropSizeDefault,collapsePropViewDefault}from"../Collapse/Collapse";import{withDefaultGetters}from"./helpers";import{useChoice}from"./useChoice";var CollapseGroupRender=function(a,b){var c=withDefaultGetters(a),d=c.items,e=c.getItemLabel,f=c.getItemContent,g=c.size,h=void 0===g?collapsePropSizeDefault:g,i=c.view,j=void 0===i?collapsePropViewDefault:i,k=c.hoverEffect,l=c.divider,m=c.icon,n=void 0===m?IconArrowDown:m,o=c.closeIcon,p=c.getItemRightSide,q=c.horizontalSpace,r=c.iconPosition,s=void 0===r?collapsePropIconPositionDefault:r,t=c.directionIcon,u=void 0===t?collapsePropDirectionIconDefault:t,v=c.closeDirectionIcon,w=void 0===v?collapsePropCloseDirectionIconDefault:v,x=c.iconView,y=c.isAccordion,z=_objectWithoutProperties(c,_excluded),A=useChoice(a),B=A.getChecked,C=A.getOnChange;return React.createElement("div",Object.assign({ref:b},z),d.map(function(a,b){return React.createElement(Collapse,Object.assign({label:e(a),key:b,size:h,view:j,horizontalSpace:q,icon:n,hoverEffect:k,divider:l,isOpen:B(b),onClick:C(b),iconView:x},"left"===s?{iconPosition:s,rightSide:p(a)}:{iconPosition:s},o?{closeIcon:o}:{directionIcon:u,closeDirectionIcon:w}),f(a))}))};export var CollapseGroup=forwardRef(CollapseGroupRender);export*from"./helpers";
2
2
  //# sourceMappingURL=CollapseGroup.js.map
@@ -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"}
@@ -36,7 +36,7 @@ export declare type ComboboxProps<ITEM = DefaultItem, GROUP = DefaultGroup, MULT
36
36
  disabled?: boolean;
37
37
  form?: PropForm;
38
38
  dropdownForm?: 'default' | 'brick' | 'round';
39
- size?: Exclude<PropSize, 'xs'>;
39
+ size?: PropSize;
40
40
  view?: PropView;
41
41
  placeholder?: string;
42
42
  ariaLabel?: string;
@@ -105,7 +105,7 @@ export declare function withDefaultGetters<ITEM = DefaultItem, GROUP = DefaultGr
105
105
  disabled?: boolean | undefined;
106
106
  form?: "default" | "round" | "brick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "defaultBrick" | "brickDefault" | "brickClear" | "clearBrick" | "clearClear" | undefined;
107
107
  dropdownForm?: "default" | "round" | "brick" | undefined;
108
- size?: "m" | "s" | "l" | undefined;
108
+ size?: "m" | "s" | "xs" | "l" | undefined;
109
109
  view?: "default" | "clear" | undefined;
110
110
  placeholder?: string | undefined;
111
111
  ariaLabel?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["defaultGetItemKey","item","id","defaultGetItemLabel","label","defaultGetItemGroupKey","groupId","defaultGetItemDisabled","disabled","defaultGetGroupKey","group","defaultGetGroupLabel","isMultipleParams","params","multiple","isNotMultipleParams","withDefaultGetters","props","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupLabel","getGroupKey"],"sources":["../../../../../src/components/Combobox/helpers.ts"],"sourcesContent":["import React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\nimport {\n PropForm,\n PropSize,\n PropStatus,\n PropView,\n RenderItemProps,\n} from '../SelectComponents/types';\nimport { TextFieldPropOnChange } from '../TextField/TextField';\n\nexport type DefaultItem = {\n label: string;\n id: string | number;\n groupId?: string | number;\n disabled?: boolean;\n};\n\nexport type DefaultGroup = {\n label: string;\n id: string | number;\n};\n\ntype RenderValueProps<ITEM> = {\n item: ITEM;\n handleRemove?: (e: React.SyntheticEvent) => void;\n};\n\nexport type PropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type PropGetItemKey<ITEM> = (item: ITEM) => string | number;\nexport type PropGetItemGroupKey<ITEM> = (\n item: ITEM,\n) => string | number | undefined;\nexport type PropGetItemDisabled<ITEM> = (item: ITEM) => boolean | undefined;\nexport type PropGetGroupKey<GROUP> = (group: GROUP) => string | number;\nexport type PropGetGroupLabel<GROUP> = (group: GROUP) => string;\ntype PropSearchFunction<ITEM> = (item: ITEM, searchValue: string) => boolean;\ntype PropOnChange<ITEM, MULTIPLE extends boolean> = (props: {\n value: (MULTIPLE extends true ? ITEM[] : ITEM) | null;\n e: React.SyntheticEvent;\n}) => void;\ntype PropValue<ITEM, MULTIPLE extends boolean> =\n | (MULTIPLE extends true ? ITEM[] : ITEM)\n | null\n | undefined;\n\nexport type PropRenderItem<ITEM> = (\n props: RenderItemProps<ITEM>,\n) => React.ReactElement | null;\nexport type PropRenderValue<ITEM> = (\n props: RenderValueProps<ITEM>,\n) => React.ReactElement | null;\n\nexport type ComboboxProps<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n onChange: PropOnChange<ITEM, MULTIPLE>;\n disabled?: boolean;\n form?: PropForm;\n dropdownForm?: 'default' | 'brick' | 'round';\n size?: Exclude<PropSize, 'xs'>;\n view?: PropView;\n placeholder?: string;\n ariaLabel?: string;\n status?: PropStatus;\n isLoading?: boolean;\n dropdownClassName?: string;\n dropdownRef?: React.RefObject<HTMLDivElement>;\n name?: string;\n renderItem?: PropRenderItem<ITEM>;\n renderValue?: PropRenderValue<ITEM>;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n onCreate?: (props: { e: React.SyntheticEvent; label: string }) => void;\n inputRef?: React.RefObject<HTMLInputElement>;\n labelForNotFound?: string;\n required?: boolean;\n labelForCreate?: string;\n labelForEmptyItems?: string;\n searchFunction?: PropSearchFunction<ITEM>;\n searchValue?: string;\n multiple?: MULTIPLE;\n value?: PropValue<ITEM, MULTIPLE>;\n groups?: GROUP[];\n onInputChange?: TextFieldPropOnChange;\n getItemLabel?: PropGetItemLabel<ITEM>;\n getItemKey?: PropGetItemKey<ITEM>;\n getItemGroupKey?: PropGetItemGroupKey<ITEM>;\n getItemDisabled?: PropGetItemDisabled<ITEM>;\n getGroupLabel?: PropGetGroupLabel<GROUP>;\n getGroupKey?: PropGetGroupKey<GROUP>;\n label?: string;\n caption?: string;\n labelPosition?: 'top' | 'left';\n },\n HTMLDivElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: PropGetItemLabel<ITEM> }) &\n (ITEM extends { id: DefaultItem['id'] }\n ? {}\n : { getItemKey: PropGetItemKey<ITEM> }) &\n (GROUP extends { label: DefaultGroup['label'] }\n ? {}\n : { getGroupLabel: PropGetGroupLabel<GROUP> }) &\n (GROUP extends { id: DefaultGroup['id'] }\n ? {}\n : { getGroupKey: PropGetGroupKey<GROUP> });\n\nexport type ComboboxComponent = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: ComboboxProps<ITEM, GROUP, MULTIPLE>,\n) => React.ReactElement | null;\n\nexport const defaultGetItemKey: PropGetItemKey<DefaultItem> = (item) => item.id;\nexport const defaultGetItemLabel: PropGetItemLabel<DefaultItem> = (item) =>\n item.label;\nexport const defaultGetItemGroupKey: PropGetItemGroupKey<DefaultItem> = (\n item,\n) => item.groupId;\nexport const defaultGetItemDisabled: PropGetItemDisabled<DefaultItem> = (\n item,\n) => item.disabled;\n\nexport const defaultGetGroupKey: PropGetGroupKey<DefaultGroup> = (group) =>\n group.id;\nexport const defaultGetGroupLabel: PropGetGroupLabel<DefaultGroup> = (group) =>\n group.label;\n\nexport const isMultipleParams = <ITEM, GROUP>(\n params: ComboboxProps<ITEM, GROUP, boolean>,\n): params is ComboboxProps<ITEM, GROUP, true> => {\n return !!params.multiple;\n};\n\nexport const isNotMultipleParams = <ITEM, GROUP>(\n params: ComboboxProps<ITEM, GROUP, boolean>,\n): params is ComboboxProps<ITEM, GROUP, false> => {\n return !params.multiple;\n};\n\nexport function withDefaultGetters<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(props: ComboboxProps<ITEM, GROUP, MULTIPLE>) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemKey: props.getItemKey || defaultGetItemKey,\n getItemGroupKey: props.getItemGroupKey || defaultGetItemGroupKey,\n getItemDisabled: props.getItemDisabled || defaultGetItemDisabled,\n getGroupLabel: props.getGroupLabel || defaultGetGroupLabel,\n getGroupKey: props.getGroupKey || defaultGetGroupKey,\n };\n}\n"],"mappings":"qqBA2HA,MAAO,IAAMA,kBAA8C,CAAG,SAACC,CAAD,QAAUA,EAAI,CAACC,EAAf,CAAvD,CACP,MAAO,IAAMC,oBAAkD,CAAG,SAACF,CAAD,QAChEA,EAAI,CAACG,KAD2D,CAA3D,CAEP,MAAO,IAAMC,uBAAwD,CAAG,SACtEJ,CADsE,QAEnEA,EAAI,CAACK,OAF8D,CAAjE,CAGP,MAAO,IAAMC,uBAAwD,CAAG,SACtEN,CADsE,QAEnEA,EAAI,CAACO,QAF8D,CAAjE,CAIP,MAAO,IAAMC,mBAAiD,CAAG,SAACC,CAAD,QAC/DA,EAAK,CAACR,EADyD,CAA1D,CAEP,MAAO,IAAMS,qBAAqD,CAAG,SAACD,CAAD,QACnEA,EAAK,CAACN,KAD6D,CAA9D,CAGP,MAAO,IAAMQ,iBAAgB,CAAG,SAC9BC,CAD8B,CAEiB,CAC/C,MAAO,CAAC,CAACA,CAAM,CAACC,QACjB,CAJM,CAMP,MAAO,IAAMC,oBAAmB,CAAG,SACjCF,CADiC,CAEe,CAChD,MAAO,CAACA,CAAM,CAACC,QAChB,CAJM,CAMP,MAAO,SAASE,mBAAT,CAILC,CAJK,CAIwC,CAC7C,sCACKA,CADL,MAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBf,mBAFtC,CAGEgB,UAAU,CAAEF,CAAK,CAACE,UAAN,EAAoBnB,iBAHlC,CAIEoB,eAAe,CAAEH,CAAK,CAACG,eAAN,EAAyBf,sBAJ5C,CAKEgB,eAAe,CAAEJ,CAAK,CAACI,eAAN,EAAyBd,sBAL5C,CAMEe,aAAa,CAAEL,CAAK,CAACK,aAAN,EAAuBX,oBANxC,CAOEY,WAAW,CAAEN,CAAK,CAACM,WAAN,EAAqBd,kBAPpC,EASD"}
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemKey","item","id","defaultGetItemLabel","label","defaultGetItemGroupKey","groupId","defaultGetItemDisabled","disabled","defaultGetGroupKey","group","defaultGetGroupLabel","isMultipleParams","params","multiple","isNotMultipleParams","withDefaultGetters","props","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupLabel","getGroupKey"],"sources":["../../../../../src/components/Combobox/helpers.ts"],"sourcesContent":["import React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\nimport {\n PropForm,\n PropSize,\n PropStatus,\n PropView,\n RenderItemProps,\n} from '../SelectComponents/types';\nimport { TextFieldPropOnChange } from '../TextField/TextField';\n\nexport type DefaultItem = {\n label: string;\n id: string | number;\n groupId?: string | number;\n disabled?: boolean;\n};\n\nexport type DefaultGroup = {\n label: string;\n id: string | number;\n};\n\ntype RenderValueProps<ITEM> = {\n item: ITEM;\n handleRemove?: (e: React.SyntheticEvent) => void;\n};\n\nexport type PropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type PropGetItemKey<ITEM> = (item: ITEM) => string | number;\nexport type PropGetItemGroupKey<ITEM> = (\n item: ITEM,\n) => string | number | undefined;\nexport type PropGetItemDisabled<ITEM> = (item: ITEM) => boolean | undefined;\nexport type PropGetGroupKey<GROUP> = (group: GROUP) => string | number;\nexport type PropGetGroupLabel<GROUP> = (group: GROUP) => string;\ntype PropSearchFunction<ITEM> = (item: ITEM, searchValue: string) => boolean;\ntype PropOnChange<ITEM, MULTIPLE extends boolean> = (props: {\n value: (MULTIPLE extends true ? ITEM[] : ITEM) | null;\n e: React.SyntheticEvent;\n}) => void;\ntype PropValue<ITEM, MULTIPLE extends boolean> =\n | (MULTIPLE extends true ? ITEM[] : ITEM)\n | null\n | undefined;\n\nexport type PropRenderItem<ITEM> = (\n props: RenderItemProps<ITEM>,\n) => React.ReactElement | null;\nexport type PropRenderValue<ITEM> = (\n props: RenderValueProps<ITEM>,\n) => React.ReactElement | null;\n\nexport type ComboboxProps<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n onChange: PropOnChange<ITEM, MULTIPLE>;\n disabled?: boolean;\n form?: PropForm;\n dropdownForm?: 'default' | 'brick' | 'round';\n size?: PropSize;\n view?: PropView;\n placeholder?: string;\n ariaLabel?: string;\n status?: PropStatus;\n isLoading?: boolean;\n dropdownClassName?: string;\n dropdownRef?: React.RefObject<HTMLDivElement>;\n name?: string;\n renderItem?: PropRenderItem<ITEM>;\n renderValue?: PropRenderValue<ITEM>;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n onCreate?: (props: { e: React.SyntheticEvent; label: string }) => void;\n inputRef?: React.RefObject<HTMLInputElement>;\n labelForNotFound?: string;\n required?: boolean;\n labelForCreate?: string;\n labelForEmptyItems?: string;\n searchFunction?: PropSearchFunction<ITEM>;\n searchValue?: string;\n multiple?: MULTIPLE;\n value?: PropValue<ITEM, MULTIPLE>;\n groups?: GROUP[];\n onInputChange?: TextFieldPropOnChange;\n getItemLabel?: PropGetItemLabel<ITEM>;\n getItemKey?: PropGetItemKey<ITEM>;\n getItemGroupKey?: PropGetItemGroupKey<ITEM>;\n getItemDisabled?: PropGetItemDisabled<ITEM>;\n getGroupLabel?: PropGetGroupLabel<GROUP>;\n getGroupKey?: PropGetGroupKey<GROUP>;\n label?: string;\n caption?: string;\n labelPosition?: 'top' | 'left';\n },\n HTMLDivElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: PropGetItemLabel<ITEM> }) &\n (ITEM extends { id: DefaultItem['id'] }\n ? {}\n : { getItemKey: PropGetItemKey<ITEM> }) &\n (GROUP extends { label: DefaultGroup['label'] }\n ? {}\n : { getGroupLabel: PropGetGroupLabel<GROUP> }) &\n (GROUP extends { id: DefaultGroup['id'] }\n ? {}\n : { getGroupKey: PropGetGroupKey<GROUP> });\n\nexport type ComboboxComponent = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: ComboboxProps<ITEM, GROUP, MULTIPLE>,\n) => React.ReactElement | null;\n\nexport const defaultGetItemKey: PropGetItemKey<DefaultItem> = (item) => item.id;\nexport const defaultGetItemLabel: PropGetItemLabel<DefaultItem> = (item) =>\n item.label;\nexport const defaultGetItemGroupKey: PropGetItemGroupKey<DefaultItem> = (\n item,\n) => item.groupId;\nexport const defaultGetItemDisabled: PropGetItemDisabled<DefaultItem> = (\n item,\n) => item.disabled;\n\nexport const defaultGetGroupKey: PropGetGroupKey<DefaultGroup> = (group) =>\n group.id;\nexport const defaultGetGroupLabel: PropGetGroupLabel<DefaultGroup> = (group) =>\n group.label;\n\nexport const isMultipleParams = <ITEM, GROUP>(\n params: ComboboxProps<ITEM, GROUP, boolean>,\n): params is ComboboxProps<ITEM, GROUP, true> => {\n return !!params.multiple;\n};\n\nexport const isNotMultipleParams = <ITEM, GROUP>(\n params: ComboboxProps<ITEM, GROUP, boolean>,\n): params is ComboboxProps<ITEM, GROUP, false> => {\n return !params.multiple;\n};\n\nexport function withDefaultGetters<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(props: ComboboxProps<ITEM, GROUP, MULTIPLE>) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemKey: props.getItemKey || defaultGetItemKey,\n getItemGroupKey: props.getItemGroupKey || defaultGetItemGroupKey,\n getItemDisabled: props.getItemDisabled || defaultGetItemDisabled,\n getGroupLabel: props.getGroupLabel || defaultGetGroupLabel,\n getGroupKey: props.getGroupKey || defaultGetGroupKey,\n };\n}\n"],"mappings":"qqBA2HA,MAAO,IAAMA,kBAA8C,CAAG,SAACC,CAAD,QAAUA,EAAI,CAACC,EAAf,CAAvD,CACP,MAAO,IAAMC,oBAAkD,CAAG,SAACF,CAAD,QAChEA,EAAI,CAACG,KAD2D,CAA3D,CAEP,MAAO,IAAMC,uBAAwD,CAAG,SACtEJ,CADsE,QAEnEA,EAAI,CAACK,OAF8D,CAAjE,CAGP,MAAO,IAAMC,uBAAwD,CAAG,SACtEN,CADsE,QAEnEA,EAAI,CAACO,QAF8D,CAAjE,CAIP,MAAO,IAAMC,mBAAiD,CAAG,SAACC,CAAD,QAC/DA,EAAK,CAACR,EADyD,CAA1D,CAEP,MAAO,IAAMS,qBAAqD,CAAG,SAACD,CAAD,QACnEA,EAAK,CAACN,KAD6D,CAA9D,CAGP,MAAO,IAAMQ,iBAAgB,CAAG,SAC9BC,CAD8B,CAEiB,CAC/C,MAAO,CAAC,CAACA,CAAM,CAACC,QACjB,CAJM,CAMP,MAAO,IAAMC,oBAAmB,CAAG,SACjCF,CADiC,CAEe,CAChD,MAAO,CAACA,CAAM,CAACC,QAChB,CAJM,CAMP,MAAO,SAASE,mBAAT,CAILC,CAJK,CAIwC,CAC7C,sCACKA,CADL,MAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBf,mBAFtC,CAGEgB,UAAU,CAAEF,CAAK,CAACE,UAAN,EAAoBnB,iBAHlC,CAIEoB,eAAe,CAAEH,CAAK,CAACG,eAAN,EAAyBf,sBAJ5C,CAKEgB,eAAe,CAAEJ,CAAK,CAACI,eAAN,EAAyBd,sBAL5C,CAMEe,aAAa,CAAEL,CAAK,CAACK,aAAN,EAAuBX,oBANxC,CAOEY,WAAW,CAAEN,CAAK,CAACM,WAAN,EAAqBd,kBAPpC,EASD"}
@@ -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","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}))})});
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}))})});
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","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
+ {"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,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","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}))});
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}))});
2
2
  //# sourceMappingURL=DatePickerTypeDate.js.map
@@ -1 +1 @@
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
+ {"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":"0UAAA,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,MAAT,6BACA,OAASC,kBAAT,gDACA,OAASC,uBAAT,0DACA,OAASC,iBAAT,kBACA,OACEC,iCADF,gBAIA,OAASC,qBAAT,gCACA,OAASC,kBAAT,6BAEA,MAAO,IAAMC,mBAAmD,CAAGX,UAAU,CAC3E,SAACY,CAAD,CAAQC,CAAR,CAAgB,IAEZC,EAFY,CAaVF,CAbU,CAEZE,MAFY,GAaVF,CAbU,CAGZG,YAHY,CAGZA,CAHY,YAGGP,iCAHH,GAIZQ,CAJY,CAaVJ,CAbU,CAIZI,MAJY,CAKZC,CALY,CAaVL,CAbU,CAKZK,iBALY,CAMZC,CANY,CAaVN,CAbU,CAMZM,YANY,CAOZC,CAPY,CAaVP,CAbU,CAOZO,OAPY,CAQZC,CARY,CAaVR,CAbU,CAQZQ,MARY,CASQC,CATR,CAaVT,CAbU,CASZU,kBATY,CAUZC,CAVY,CAaVX,CAbU,CAUZW,0BAVY,CAWZC,CAXY,CAaVZ,CAbU,CAWZY,wBAXY,CAYTC,CAZS,0BAaVb,CAbU,YAeRc,CAAQ,CAAGxB,MAAM,CAAiB,IAAjB,CAfT,CAgBRyB,CAAW,CAAGzB,MAAM,CAAiB,IAAjB,CAhBZ,GAyBVQ,kBAAkB,CAACS,CAAD,CAAUC,CAAV,CAzBR,CAmBZQ,CAnBY,GAmBZA,eAnBY,KAoBZC,MApBY,KAqBVC,KArBU,CAqBQC,CArBR,GAqBDZ,OArBC,CAqBgCa,CArBhC,GAqBwBZ,MArBxB,KAsBVa,QAtBU,CAsBUC,CAtBV,GAsBEd,MAtBF,CAsBmCe,CAtBnC,GAsB0BhB,OAtB1B,CAwBZiB,CAxBY,GAwBZA,KAxBY,GA2BsC3B,qBAAqB,CAAC,CACxEa,kBAAkB,CAAED,CADoD,CAExEgB,OAAO,CAAEzB,CAAK,CAACyB,OAFyD,CAGxEC,OAAO,CAAE1B,CAAK,CAAC0B,OAHyD,CAIxEC,KAAK,CAAE3B,CAAK,CAAC2B,KAJ2D,CAKxEC,WAAW,CAAE1C,YAL2D,CAMxEyB,0BAA0B,CAA1BA,CANwE,CAOxEK,eAAe,CAAfA,CAPwE,CAAD,CA3B3D,uBA2BPN,CA3BO,MA2BamB,CA3Bb,MAqEd,MAhCAxC,UAAS,CAAC,UAAM,CACVY,CADU,EAEZT,MAAM,CAACS,CAAD,CAAMa,CAAQ,CAACgB,OAAf,CAET,CAJQ,CAIN,CAAC7B,CAAD,CAAMa,CAAN,CAJM,CAgCT,CA1BAzB,SAAS,CAAC,UAAM,CACd,GAAIW,CAAK,CAAC2B,KAAN,EAAgC,SAAjB,GAAAxB,CAAf,EAA6CO,CAAjD,CAAqE,CACnE,GAAMqB,EAAc,CAAG7C,YAAY,CAACc,CAAK,CAAC2B,KAAP,CAAnC,CAIA,YAHII,CAAc,CAACC,OAAf,KAA6BtB,CAAkB,CAACsB,OAAnB,EAGjC,EAFEH,CAAqB,CAACE,CAAD,CAEvB,CACD,CACD,GAAI/B,CAAK,CAAC2B,KAAN,EAAgC,SAAjB,GAAAxB,CAAf,EAA6CO,CAAjD,CAAqE,CACnE,GAAMqB,EAAc,CAAG7C,YAAY,CAACc,CAAK,CAAC2B,KAAP,CAAnC,CAEEI,CAAc,CAACC,OAAf,KAA6BtB,CAAkB,CAACsB,OAAnB,EAA7B,EACAD,CAAc,CAACC,OAAf,KACE/C,SAAS,CAACyB,CAAD,CAAqB,CAArB,CAAT,CAAiCsB,OAAjC,EAL+D,EAOjEH,CAAqB,CAACE,CAAD,CAExB,CACF,CAlBQ,CAkBN,CAAC/B,CAAK,CAAC2B,KAAP,CAlBM,CA0BT,CANApC,eAAe,CAAC,CACd0C,QAAQ,CAAEjB,CADI,CAEdkB,sBAAsB,CAAE,CAACpB,CAAD,CAAWC,CAAX,CAFV,CAGdoB,OAAO,CAAEX,CAHK,CAAD,CAMf,CACE,wCACE,oBAAC,uBAAD,kBACMX,CADN,EAEE,GAAG,CAAEC,CAFP,CAGE,MAAM,CAAEM,CAHV,CAIE,OAAO,CAAED,CAJX,GADF,CAOE,oBAAC,kBAAD,EACE,GAAG,CAAEJ,CADP,CAEE,SAAS,CAAED,CAFb,CAGE,MAAM,CAAEE,CAHV,CAIE,OAAO,CAAEO,CAJX,CAKE,MAAM,CAAED,CALV,CAME,KAAK,CAAEtB,CAAK,CAAC2B,KAAN,QANT,CAOE,IAAI,CAAC,MAPP,CAQE,IAAI,CAAExB,CARR,CASE,MAAM,CAAED,CATV,CAUE,MAAM,CAAEE,CAVV,CAWE,OAAO,CAAEJ,CAAK,CAAC0B,OAXjB,CAYE,SAAS,CAAErB,CAZb,CAaE,OAAO,CAAEL,CAAK,CAACyB,OAbjB,CAcE,kBAAkB,CAAEf,CAdtB,CAeE,IAAI,CAAEJ,CAfR,CAgBE,QAAQ,CAAE,kBAAC8B,CAAD,CAAY,iBACpBpC,CAAK,CAACqC,QADc,qBACpB,OAAArC,CAAK,CAAYoC,CAAZ,CADe,CAEpBZ,CAAK,EACN,CAnBH,CAoBE,wBAAwB,CAAEZ,CApB5B,CAqBE,MAAM,CAAEjB,iBAAiB,CAACK,CAAK,CAACsC,KAAP,CArB3B,CAsBE,0BAA0B,CAAET,CAtB9B,EAPF,CAiCH,CAxG0E,CAAtE"}