@consta/uikit 5.27.0 → 5.27.1

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.
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["isOpen","onClose","onOpen","hasOverlay","onOverlayClick","onClickOutside","onEsc","className","width","form","border","position","children","container","refsForExcludeClickOutside","ignoreOutsideClicksRefs","rootClassName","afterClose","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"./Modal.css";import React,{forwardRef}from"react";import{Transition}from"react-transition-group";import{PortalWithTheme,PortalWithThemeConsumer}from"../PortalWithTheme";import{animateTimeout,cnMixPopoverAnimate}from"../../mixs/MixPopoverAnimate";import{cnMixScrollBar}from"../../mixs/MixScrollBar";import{cn}from"../../utils/bem";import{withCtx}from"../../utils/state";import{useModal}from"./useModal";var cnModal=cn("Modal");export var Modal=withCtx(forwardRef(function(a,b){var c=a.isOpen,d=a.onClose,e=a.onOpen,f=a.hasOverlay,g=!(void 0!==f)||f,h=a.onOverlayClick,i=a.onClickOutside,j=a.onEsc,k=a.className,l=a.width,m=a.form,n=void 0===m?"default":m,o=a.border,p=a.position,q=void 0===p?"center":p,r=a.children,s=a.container,t=void 0===s?window.document.body:s,u=a.refsForExcludeClickOutside,v=a.ignoreOutsideClicksRefs,w=a.rootClassName,x=a.afterClose,y=a.style,z=_objectWithoutProperties(a,_excluded),A=useModal({ref:b,isOpen:c,onEsc:j,onOpen:e,onClose:d,ignoreOutsideClicksRefs:v||u}),B=A.shadowHeader,C=A.shadowFooter,D=A.scrollable,E=A.theme,F=A.portalRef,G=A.windowRef,H=A.contentRef,I=A.scrollRef,J=A.ignoreOutsideClicksRefs;return React.createElement(Transition,{in:c,unmountOnExit:!0,nodeRef:F,timeout:animateTimeout,onExited:x},function(a){return React.createElement(PortalWithTheme,{preset:E,container:t,className:cnModal({hasOverlay:g},[w]),ref:F,style:_objectSpread(_objectSpread(_objectSpread(_objectSpread({},"number"===(null===y||void 0===y?void 0:y.zIndex)&&{zIndex:y.zIndex}),B&&_defineProperty({},"--modal-layout-header-color-shadow","var(--color-shadow-group-2)")),C&&_defineProperty({},"--modal-layout-footer-color-shadow","var(--color-shadow-group-2)")),(null===y||void 0===y?void 0:y.zIndex)&&_defineProperty({},"--modal-layout-z-index-for-fixed-slot",y.zIndex))},g&&React.createElement("div",{className:cnModal("Overlay",{animate:a}),"aria-label":"Overlay"}),React.createElement("div",Object.assign({},z,{style:_objectSpread(_objectSpread({},y),{},{zIndex:void 0}),className:cnModal("Window",{position:q,form:n,border:o,scrollable:D},[cnMixPopoverAnimate({animate:a}),k]),ref:G}),React.createElement("div",{className:cnModal("Scroll",cnMixScrollBar({size:"s"})),ref:I},React.createElement("div",{className:cnModal("Content"),ref:H},React.createElement(PortalWithThemeConsumer,{onClickOutside:i||h,ignoreClicksInsideRefs:J},r)))))})}));
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["isOpen","onClose","onOpen","hasOverlay","onOverlayClick","onClickOutside","onEsc","className","width","form","border","position","children","container","refsForExcludeClickOutside","ignoreOutsideClicksRefs","rootClassName","afterClose","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"./Modal.css";import React,{forwardRef}from"react";import{Transition}from"react-transition-group";import{PortalWithTheme,PortalWithThemeConsumer}from"../PortalWithTheme";import{animateTimeout,cnMixPopoverAnimate}from"../../mixs/MixPopoverAnimate";import{cnMixScrollBar}from"../../mixs/MixScrollBar";import{cn}from"../../utils/bem";import{withCtx}from"../../utils/state";import{useModal}from"./useModal";var cnModal=cn("Modal");export var Modal=withCtx(forwardRef(function(a,b){var c=a.isOpen,d=a.onClose,e=a.onOpen,f=a.hasOverlay,g=!(void 0!==f)||f,h=a.onOverlayClick,i=a.onClickOutside,j=a.onEsc,k=a.className,l=a.width,m=a.form,n=void 0===m?"default":m,o=a.border,p=a.position,q=void 0===p?"center":p,r=a.children,s=a.container,t=void 0===s?window.document.body:s,u=a.refsForExcludeClickOutside,v=a.ignoreOutsideClicksRefs,w=a.rootClassName,x=a.afterClose,y=a.style,z=_objectWithoutProperties(a,_excluded),A=useModal({ref:b,isOpen:c,onEsc:j,onOpen:e,onClose:d,ignoreOutsideClicksRefs:v||u}),B=A.shadowHeader,C=A.shadowFooter,D=A.scrollable,E=A.theme,F=A.portalRef,G=A.windowRef,H=A.contentRef,I=A.scrollRef,J=A.ignoreOutsideClicksRefs;return React.createElement(Transition,{in:c,unmountOnExit:!0,nodeRef:F,timeout:animateTimeout,onExited:x},function(a){return React.createElement(PortalWithTheme,{preset:E,container:t,className:cnModal({hasOverlay:g},[w]),ref:F,style:_objectSpread(_objectSpread(_objectSpread(_objectSpread({},(null===y||void 0===y?void 0:y.zIndex)&&{zIndex:y.zIndex}),B&&_defineProperty({},"--modal-layout-header-color-shadow","var(--color-shadow-group-2)")),C&&_defineProperty({},"--modal-layout-footer-color-shadow","var(--color-shadow-group-2)")),(null===y||void 0===y?void 0:y.zIndex)&&_defineProperty({},"--modal-layout-z-index-for-fixed-slot",y.zIndex))},g&&React.createElement("div",{className:cnModal("Overlay",{animate:a}),"aria-label":"Overlay"}),React.createElement("div",Object.assign({},z,{style:_objectSpread(_objectSpread({},y),{},{zIndex:void 0}),className:cnModal("Window",{position:q,form:n,border:o,scrollable:D},[cnMixPopoverAnimate({animate:a}),k]),ref:G}),React.createElement("div",{className:cnModal("Scroll",cnMixScrollBar({size:"s"})),ref:I},React.createElement("div",{className:cnModal("Content"),ref:H},React.createElement(PortalWithThemeConsumer,{onClickOutside:i||h,ignoreClicksInsideRefs:J},r)))))})}));
2
2
  //# sourceMappingURL=Modal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","names":["React","forwardRef","Transition","PortalWithTheme","PortalWithThemeConsumer","animateTimeout","cnMixPopoverAnimate","cnMixScrollBar","cn","withCtx","useModal","cnModal","Modal","props","ref","isOpen","onClose","onOpen","hasOverlay","onOverlayClick","onClickOutside","onEsc","className","width","form","border","position","children","container","window","document","body","refsForExcludeClickOutside","ignoreOutsideClicksRefsProp","ignoreOutsideClicksRefs","rootClassName","afterClose","style","otherProps","shadowHeader","shadowFooter","scrollable","theme","portalRef","windowRef","contentRef","scrollRef","animate","zIndex","size"],"sources":["../../../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import './Modal.css';\n\nimport React, { forwardRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport {\n PortalWithTheme,\n PortalWithThemeConsumer,\n} from '##/components/PortalWithTheme';\nimport { animateTimeout, cnMixPopoverAnimate } from '##/mixs/MixPopoverAnimate';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\nimport { cn } from '##/utils/bem';\nimport { withCtx } from '##/utils/state';\n\nimport { ModalProps } from './types';\nimport { useModal } from './useModal';\n\nconst cnModal = cn('Modal');\n\nexport const Modal = withCtx(\n forwardRef<HTMLDivElement, ModalProps>((props, ref) => {\n const {\n isOpen,\n onClose,\n onOpen,\n hasOverlay = true,\n onOverlayClick,\n onClickOutside,\n onEsc,\n className,\n width,\n form = 'default',\n border,\n position = 'center',\n children,\n container = window.document.body,\n refsForExcludeClickOutside,\n ignoreOutsideClicksRefs: ignoreOutsideClicksRefsProp,\n rootClassName,\n afterClose,\n style,\n ...otherProps\n } = props;\n\n const {\n shadowHeader,\n shadowFooter,\n scrollable,\n theme,\n portalRef,\n windowRef,\n contentRef,\n scrollRef,\n ignoreOutsideClicksRefs,\n } = useModal({\n ref,\n isOpen,\n onEsc,\n onOpen,\n onClose,\n ignoreOutsideClicksRefs:\n ignoreOutsideClicksRefsProp || refsForExcludeClickOutside,\n });\n\n return (\n <Transition\n in={isOpen}\n unmountOnExit\n nodeRef={portalRef}\n timeout={animateTimeout}\n onExited={afterClose}\n >\n {(animate) => (\n <PortalWithTheme\n preset={theme}\n container={container}\n className={cnModal({ hasOverlay }, [rootClassName])}\n ref={portalRef}\n style={{\n ...(style?.zIndex === 'number' && {\n zIndex: style.zIndex,\n }),\n ...(shadowHeader && {\n ['--modal-layout-header-color-shadow' as string]:\n 'var(--color-shadow-group-2)',\n }),\n ...(shadowFooter && {\n ['--modal-layout-footer-color-shadow' as string]:\n 'var(--color-shadow-group-2)',\n }),\n ...(style?.zIndex && {\n ['--modal-layout-z-index-for-fixed-slot' as string]:\n style.zIndex,\n }),\n }}\n >\n {hasOverlay && (\n <div\n className={cnModal('Overlay', { animate })}\n aria-label=\"Overlay\"\n />\n )}\n <div\n {...otherProps}\n style={{\n ...style,\n zIndex: undefined,\n }}\n className={cnModal(\n 'Window',\n { position, form, border, scrollable },\n [cnMixPopoverAnimate({ animate }), className],\n )}\n ref={windowRef}\n >\n <div\n className={cnModal('Scroll', cnMixScrollBar({ size: 's' }))}\n ref={scrollRef}\n >\n <div className={cnModal('Content')} ref={contentRef}>\n <PortalWithThemeConsumer\n onClickOutside={onClickOutside || onOverlayClick}\n ignoreClicksInsideRefs={ignoreOutsideClicksRefs}\n >\n {children}\n </PortalWithThemeConsumer>\n </div>\n </div>\n </div>\n </PortalWithTheme>\n )}\n </Transition>\n );\n }),\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","names":["React","forwardRef","Transition","PortalWithTheme","PortalWithThemeConsumer","animateTimeout","cnMixPopoverAnimate","cnMixScrollBar","cn","withCtx","useModal","cnModal","Modal","props","ref","isOpen","onClose","onOpen","hasOverlay","onOverlayClick","onClickOutside","onEsc","className","width","form","border","position","children","container","window","document","body","refsForExcludeClickOutside","ignoreOutsideClicksRefsProp","ignoreOutsideClicksRefs","rootClassName","afterClose","style","otherProps","shadowHeader","shadowFooter","scrollable","theme","portalRef","windowRef","contentRef","scrollRef","animate","zIndex","size"],"sources":["../../../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import './Modal.css';\n\nimport React, { forwardRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport {\n PortalWithTheme,\n PortalWithThemeConsumer,\n} from '##/components/PortalWithTheme';\nimport { animateTimeout, cnMixPopoverAnimate } from '##/mixs/MixPopoverAnimate';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\nimport { cn } from '##/utils/bem';\nimport { withCtx } from '##/utils/state';\n\nimport { ModalProps } from './types';\nimport { useModal } from './useModal';\n\nconst cnModal = cn('Modal');\n\nexport const Modal = withCtx(\n forwardRef<HTMLDivElement, ModalProps>((props, ref) => {\n const {\n isOpen,\n onClose,\n onOpen,\n hasOverlay = true,\n onOverlayClick,\n onClickOutside,\n onEsc,\n className,\n width,\n form = 'default',\n border,\n position = 'center',\n children,\n container = window.document.body,\n refsForExcludeClickOutside,\n ignoreOutsideClicksRefs: ignoreOutsideClicksRefsProp,\n rootClassName,\n afterClose,\n style,\n ...otherProps\n } = props;\n\n const {\n shadowHeader,\n shadowFooter,\n scrollable,\n theme,\n portalRef,\n windowRef,\n contentRef,\n scrollRef,\n ignoreOutsideClicksRefs,\n } = useModal({\n ref,\n isOpen,\n onEsc,\n onOpen,\n onClose,\n ignoreOutsideClicksRefs:\n ignoreOutsideClicksRefsProp || refsForExcludeClickOutside,\n });\n\n return (\n <Transition\n in={isOpen}\n unmountOnExit\n nodeRef={portalRef}\n timeout={animateTimeout}\n onExited={afterClose}\n >\n {(animate) => (\n <PortalWithTheme\n preset={theme}\n container={container}\n className={cnModal({ hasOverlay }, [rootClassName])}\n ref={portalRef}\n style={{\n ...(style?.zIndex && {\n zIndex: style.zIndex,\n }),\n ...(shadowHeader && {\n ['--modal-layout-header-color-shadow' as string]:\n 'var(--color-shadow-group-2)',\n }),\n ...(shadowFooter && {\n ['--modal-layout-footer-color-shadow' as string]:\n 'var(--color-shadow-group-2)',\n }),\n ...(style?.zIndex && {\n ['--modal-layout-z-index-for-fixed-slot' as string]:\n style.zIndex,\n }),\n }}\n >\n {hasOverlay && (\n <div\n className={cnModal('Overlay', { animate })}\n aria-label=\"Overlay\"\n />\n )}\n <div\n {...otherProps}\n style={{\n ...style,\n zIndex: undefined,\n }}\n className={cnModal(\n 'Window',\n { position, form, border, scrollable },\n [cnMixPopoverAnimate({ animate }), className],\n )}\n ref={windowRef}\n >\n <div\n className={cnModal('Scroll', cnMixScrollBar({ size: 's' }))}\n ref={scrollRef}\n >\n <div className={cnModal('Content')} ref={contentRef}>\n <PortalWithThemeConsumer\n onClickOutside={onClickOutside || onOverlayClick}\n ignoreClicksInsideRefs={ignoreOutsideClicksRefs}\n >\n {children}\n </PortalWithThemeConsumer>\n </div>\n </div>\n </div>\n </PortalWithTheme>\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=["min","max","onChange","onAfterChange","value","step","disabled","size","view","leftSide","rightSide","withTooltip","range","label","tooltipDirection","tooltipPossibleDirections","labelIcon","status","caption","tooltipFormatter","className","style"];import"./Slider.css";import React,{forwardRef,useRef,useState}from"react";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{FieldCaption}from"../FieldCaption";import{FieldLabel}from"../FieldLabel";import{useFlag}from"../../hooks/useFlag";import{useForkRef}from"../../hooks/useForkRef";import{useSortSteps}from"../../hooks/useSortSteps";import{cn}from"../../utils/bem";import{defaultTooltipFormatter,getIcon,getMaxForStartField,getMinForEndField,getOnChangeForInput,getValidStep,getValueForInput,isRangeParams,sliderPropSizeDefault}from"./helper";import{SliderInput}from"./SliderInput/SliderInput";import{SliderLine}from"./SliderLine/SliderLine";import{SliderPoint}from"./SliderPoint/SliderPoint";import{useSlider}from"./useSlider/useSlider";import{useSliderStationing}from"./useSliderStationing";var cnSlider=cn("Slider"),sizeMap={xs:"xs",s:"s",m:"m",l:"m"};export var COMPONENT_NAME="Slider";var SliderRender=function(a,b){var c=useRef(null),d=usePropsHandler(COMPONENT_NAME,a,c),e=d.min,f=void 0===e?0:e,g=d.max,h=void 0===g?100:g,i=d.onChange,j=d.onAfterChange,k=d.value,l=d.step,m=d.disabled,n=void 0!==m&&m,o=d.size,p=void 0===o?sliderPropSizeDefault:o,q=d.view,r=void 0===q?"default":q,s=d.leftSide,t=d.rightSide,u=d.withTooltip,v=d.range,w=void 0!==v&&v,x=d.label,y=d.tooltipDirection,z=d.tooltipPossibleDirections,A=d.labelIcon,B=d.status,C=d.caption,D=d.tooltipFormatter,E=void 0===D?defaultTooltipFormatter:D,F=d.className,G=d.style,H=_objectWithoutProperties(d,_excluded),I=useState(),J=_slicedToArray(I,2),K=J[0],L=J[1],M=useFlag(!1),N=_slicedToArray(M,2),O=N[0],P=N[1],Q=P.on,R=P.off,S=useRef(null),T=useRef(null),U=useRef(null),V=useSortSteps({step:getValidStep(f,h,l),min:f,max:h}),W=l?V:Math.abs((h-f)/100),X=getIcon(t),Y=getIcon(s),Z=sizeMap[p],$=useSlider({disabled:n,range:w,value:k,min:f,max:h,step:W,onChange:i,onAfterChange:j,sliderRef:c,containerRef:S,buttonRefs:[T,U]}),_=$.onKeyPress,aa=$.onFocus,ba=$.handlePress,ca=$.onSliderClick,da=$.popoverPosition,ea=$.activeButton,fa=$.currentValue,ga=useSliderStationing(1===fa.length?fa[0]:fa,f,h,r,w,W,[T,U],c),ha=ga.lineSizes,ia=ga.buttonPositions,ja={role:"button",tabIndex:0,className:cnSlider("Control"),ref:c,onClick:ca},ka=function(a){a?Q():R()};return React.createElement("div",Object.assign({ref:useForkRef([b,S]),className:cnSlider({size:p},[F]),style:G},H),x&&React.createElement(FieldLabel,{icon:A,className:cnSlider("Label"),size:p},x),React.createElement("div",{className:cnSlider("Container")},("input"===s||Y)&&React.createElement("div",{className:cnSlider("Side",{position:"left"})},"input"===s&&React.createElement(SliderInput,{value:getValueForInput(a,0),onFocus:function(){return L(0)},onBlur:function onBlur(){return L(void 0)},onChange:getOnChangeForInput(a,0),size:p,min:f,inputMode:"numeric",max:getMaxForStartField(a),status:B,step:W,disabled:n}),Y&&React.createElement(Y,{size:null!==Z&&void 0!==Z?Z:void 0,view:"secondary"})),React.createElement("div",ja,React.createElement(SliderLine,{hovered:O||"number"==typeof ea,onHover:ka,lines:ha,disabled:n,view:r}),fa.map(function(a,b){var c=1<fa.length&&fa[0]===fa[1]&&a===h&&0===b;return React.createElement(SliderPoint,{hovered:O||"number"==typeof ea,buttonRef:T,popoverPosition:da[b],onKeyPress:_,onFocus:aa,tooltipDirection:y,tooltipPossibleDirections:z,handlePress:ba,disabled:n,active:c,position:ia[b],focused:ea===b||K===b,buttonLabel:b,withTooltip:u,onHover:ka,tooltipFormatter:E,value:a,role:"slider","aria-valuemin":f,"aria-valuemax":h,"aria-valuenow":a,tooltipZIndex:"number"==typeof(null===G||void 0===G?void 0:G.zIndex)?G.zIndex+1:void 0,key:cnSlider("Point",{index:b})})})),("input"===t||X)&&React.createElement("div",{className:cnSlider("Side",{position:"right"})},"input"===t&&React.createElement(SliderInput,{value:getValueForInput(a,1),onChange:getOnChangeForInput(a,1),onBlur:function onBlur(){return L(void 0)},size:p,min:getMinForEndField(a),max:h,onFocus:function(){return L(isRangeParams(a)?1:0)},inputMode:"numeric",status:B,step:W,disabled:n}),X&&React.createElement(X,{size:Z,view:"secondary"}))),C&&React.createElement(FieldCaption,{className:cnSlider("Caption"),status:B},C))};export var Slider=forwardRef(SliderRender);
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["min","max","onChange","onAfterChange","value","step","disabled","size","view","leftSide","rightSide","withTooltip","range","label","tooltipDirection","tooltipPossibleDirections","labelIcon","status","caption","tooltipFormatter","className","style"];import"./Slider.css";import React,{forwardRef,useRef,useState}from"react";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{FieldCaption}from"../FieldCaption";import{FieldLabel}from"../FieldLabel";import{useFlag}from"../../hooks/useFlag";import{useForkRef}from"../../hooks/useForkRef";import{useSortSteps}from"../../hooks/useSortSteps";import{cn}from"../../utils/bem";import{defaultTooltipFormatter,getIcon,getMaxForStartField,getMinForEndField,getOnChangeForInput,getValidStep,getValueForInput,isRangeParams,sliderPropSizeDefault}from"./helper";import{SliderInput}from"./SliderInput/SliderInput";import{SliderLine}from"./SliderLine/SliderLine";import{SliderPoint}from"./SliderPoint/SliderPoint";import{useSlider}from"./useSlider/useSlider";import{useSliderStationing}from"./useSliderStationing";var cnSlider=cn("Slider"),sizeMap={xs:"xs",s:"s",m:"m",l:"m"};export var COMPONENT_NAME="Slider";var SliderRender=function(a,b){var c=useRef(null),d=usePropsHandler(COMPONENT_NAME,a,c),e=d.min,f=void 0===e?0:e,g=d.max,h=void 0===g?100:g,i=d.onChange,j=d.onAfterChange,k=d.value,l=d.step,m=d.disabled,n=void 0!==m&&m,o=d.size,p=void 0===o?sliderPropSizeDefault:o,q=d.view,r=void 0===q?"default":q,s=d.leftSide,t=d.rightSide,u=d.withTooltip,v=d.range,w=void 0!==v&&v,x=d.label,y=d.tooltipDirection,z=d.tooltipPossibleDirections,A=d.labelIcon,B=d.status,C=d.caption,D=d.tooltipFormatter,E=void 0===D?defaultTooltipFormatter:D,F=d.className,G=d.style,H=_objectWithoutProperties(d,_excluded),I=useState(),J=_slicedToArray(I,2),K=J[0],L=J[1],M=useFlag(!1),N=_slicedToArray(M,2),O=N[0],P=N[1],Q=P.on,R=P.off,S=useRef(null),T=useRef(null),U=useRef(null),V=useSortSteps({step:getValidStep(f,h,l),min:f,max:h}),W=l?V:Math.abs((h-f)/100),X=getIcon(t),Y=getIcon(s),Z=sizeMap[p],$=useSlider({disabled:n,range:w,value:k,min:f,max:h,step:W,onChange:i,onAfterChange:j,sliderRef:c,containerRef:S,buttonRefs:[T,U]}),_=$.onKeyPress,aa=$.onFocus,ba=$.handlePress,ca=$.onSliderClick,da=$.popoverPosition,ea=$.activeButton,fa=$.currentValue,ga=useSliderStationing(1===fa.length?fa[0]:fa,f,h,r,w,W,[T,U],c),ha=ga.lineSizes,ia=ga.buttonPositions,ja={role:"button",tabIndex:-1,className:cnSlider("Control"),ref:c,onClick:ca},ka=function(a){a?Q():R()};return React.createElement("div",Object.assign({ref:useForkRef([b,S]),className:cnSlider({size:p},[F]),style:G},H),x&&React.createElement(FieldLabel,{icon:A,className:cnSlider("Label"),size:p},x),React.createElement("div",{className:cnSlider("Container")},("input"===s||Y)&&React.createElement("div",{className:cnSlider("Side",{position:"left"})},"input"===s&&React.createElement(SliderInput,{value:getValueForInput(a,0),onFocus:function(){return L(0)},onBlur:function onBlur(){return L(void 0)},onChange:getOnChangeForInput(a,0),size:p,min:f,inputMode:"numeric",max:getMaxForStartField(a),status:B,step:W,disabled:n}),Y&&React.createElement(Y,{size:null!==Z&&void 0!==Z?Z:void 0,view:"secondary"})),React.createElement("div",ja,React.createElement(SliderLine,{hovered:O||"number"==typeof ea,onHover:ka,lines:ha,disabled:n,view:r}),fa.map(function(a,b){var c=1<fa.length&&fa[0]===fa[1]&&a===h&&0===b;return React.createElement(SliderPoint,{hovered:O||"number"==typeof ea,buttonRef:T,popoverPosition:da[b],onKeyPress:_,onFocus:aa,tooltipDirection:y,tooltipPossibleDirections:z,handlePress:ba,disabled:n,active:c,position:ia[b],focused:ea===b||K===b,buttonLabel:b,withTooltip:u,onHover:ka,tooltipFormatter:E,value:a,role:"slider","aria-valuemin":f,"aria-valuemax":h,"aria-valuenow":a,tooltipZIndex:"number"==typeof(null===G||void 0===G?void 0:G.zIndex)?G.zIndex+1:void 0,key:cnSlider("Point",{index:b})})})),("input"===t||X)&&React.createElement("div",{className:cnSlider("Side",{position:"right"})},"input"===t&&React.createElement(SliderInput,{value:getValueForInput(a,1),onChange:getOnChangeForInput(a,1),onBlur:function onBlur(){return L(void 0)},size:p,min:getMinForEndField(a),max:h,onFocus:function(){return L(isRangeParams(a)?1:0)},inputMode:"numeric",status:B,step:W,disabled:n}),X&&React.createElement(X,{size:Z,view:"secondary"}))),C&&React.createElement(FieldCaption,{className:cnSlider("Caption"),status:B},C))};export var Slider=forwardRef(SliderRender);
2
2
  //# sourceMappingURL=Slider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","names":["React","forwardRef","useRef","useState","usePropsHandler","FieldCaption","FieldLabel","useFlag","useForkRef","useSortSteps","cn","defaultTooltipFormatter","getIcon","getMaxForStartField","getMinForEndField","getOnChangeForInput","getValidStep","getValueForInput","isRangeParams","sliderPropSizeDefault","SliderInput","SliderLine","SliderPoint","useSlider","useSliderStationing","cnSlider","sizeMap","xs","s","m","l","COMPONENT_NAME","SliderRender","props","ref","sliderRef","min","max","onChange","onAfterChange","value","stepProp","step","disabled","size","view","leftSide","rightSide","withTooltip","range","label","tooltipDirection","tooltipPossibleDirections","labelIcon","status","caption","tooltipFormatter","className","style","otherProps","focusIndex","setFocusIndex","isHovered","on","off","containerRef","leftButtonRef","rightButtonRef","sortedSteps","Math","abs","IconRight","IconLeft","iconSize","buttonRefs","onKeyPress","onFocus","handlePress","onSliderClick","popoverPosition","activeButton","currentValue","length","lineSizes","buttonPositions","containerProps","role","tabIndex","onClick","changeHovered","position","map","val","index","topLayer","zIndex","Slider"],"sources":["../../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import './Slider.css';\n\nimport { IconPropSize } from '@consta/icons/Icon';\nimport React, { forwardRef, useRef, useState } from 'react';\n\nimport { usePropsHandler } from '##/components/EventInterceptor/usePropsHandler';\nimport { FieldCaption } from '##/components/FieldCaption';\nimport { FieldLabel } from '##/components/FieldLabel';\nimport { useFlag } from '##/hooks/useFlag';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { useSortSteps } from '##/hooks/useSortSteps';\nimport { cn } from '##/utils/bem';\n\nimport {\n defaultTooltipFormatter,\n getIcon,\n getMaxForStartField,\n getMinForEndField,\n getOnChangeForInput,\n getValidStep,\n getValueForInput,\n isRangeParams,\n SliderComponent,\n SliderProps,\n SliderPropSize,\n sliderPropSizeDefault,\n} from './helper';\nimport { SliderInput } from './SliderInput/SliderInput';\nimport { SliderLine } from './SliderLine/SliderLine';\nimport { SliderPoint } from './SliderPoint/SliderPoint';\nimport { ActiveButton } from './useSlider/helper';\nimport { useSlider } from './useSlider/useSlider';\nimport { useSliderStationing } from './useSliderStationing';\n\nconst cnSlider = cn('Slider');\n\nconst sizeMap: Record<SliderPropSize, IconPropSize> = {\n xs: 'xs',\n s: 's',\n m: 'm',\n l: 'm',\n};\n\nexport const COMPONENT_NAME = 'Slider' as const;\n\nconst SliderRender = <RANGE extends boolean = false>(\n props: SliderProps<RANGE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const sliderRef = useRef<HTMLDivElement>(null);\n\n const {\n min = 0,\n max = 100,\n onChange,\n onAfterChange,\n value,\n step: stepProp,\n disabled = false,\n size = sliderPropSizeDefault,\n view = 'default',\n leftSide,\n rightSide,\n withTooltip,\n range = false,\n label,\n tooltipDirection,\n tooltipPossibleDirections,\n labelIcon,\n status,\n caption,\n tooltipFormatter = defaultTooltipFormatter,\n className,\n style,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, sliderRef);\n\n const [focusIndex, setFocusIndex] = useState<number | undefined>();\n const [isHovered, { on, off }] = useFlag(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const leftButtonRef = useRef<HTMLButtonElement>(null);\n const rightButtonRef = useRef<HTMLButtonElement>(null);\n const sortedSteps = useSortSteps({\n step: getValidStep(min, max, stepProp),\n min,\n max,\n });\n const step = stepProp ? sortedSteps : Math.abs((max - min) / 100);\n const IconRight = getIcon(rightSide);\n const IconLeft = getIcon(leftSide);\n const iconSize = sizeMap[size];\n\n const {\n onKeyPress,\n onFocus,\n handlePress,\n onSliderClick,\n popoverPosition,\n activeButton,\n currentValue,\n } = useSlider({\n disabled,\n range,\n value,\n min,\n max,\n step,\n onChange,\n onAfterChange,\n sliderRef,\n containerRef,\n buttonRefs: [leftButtonRef, rightButtonRef],\n });\n\n const { lineSizes, buttonPositions } = useSliderStationing(\n currentValue.length === 1 ? currentValue[0] : currentValue,\n min,\n max,\n view,\n range,\n step,\n [leftButtonRef, rightButtonRef],\n sliderRef,\n );\n\n const containerProps = {\n role: 'button',\n tabIndex: 0,\n className: cnSlider('Control'),\n ref: sliderRef,\n onClick: onSliderClick,\n };\n\n const changeHovered = (status: boolean) => {\n if (status) on();\n else off();\n };\n\n return (\n <div\n ref={useForkRef([ref, containerRef])}\n className={cnSlider({ size }, [className])}\n style={style}\n {...otherProps}\n >\n {label && (\n <FieldLabel icon={labelIcon} className={cnSlider('Label')} size={size}>\n {label}\n </FieldLabel>\n )}\n <div className={cnSlider('Container')}>\n {(leftSide === 'input' || IconLeft) && (\n <div className={cnSlider('Side', { position: 'left' })}>\n {leftSide === 'input' && (\n <SliderInput\n value={getValueForInput(props, 0)}\n onFocus={() => setFocusIndex(0)}\n onBlur={() => setFocusIndex(undefined)}\n onChange={getOnChangeForInput(props, 0)}\n size={size}\n min={min}\n inputMode=\"numeric\"\n max={getMaxForStartField(props)}\n status={status}\n step={step}\n disabled={disabled}\n />\n )}\n {IconLeft && (\n <IconLeft size={iconSize ?? undefined} view=\"secondary\" />\n )}\n </div>\n )}\n <div {...containerProps}>\n <SliderLine\n hovered={isHovered || typeof activeButton === 'number'}\n onHover={changeHovered}\n lines={lineSizes}\n disabled={disabled}\n view={view}\n />\n {currentValue.map((val, index) => {\n const topLayer =\n currentValue.length > 1 &&\n currentValue[0] === currentValue[1] &&\n val === max &&\n index === 0;\n return (\n <SliderPoint\n hovered={isHovered || typeof activeButton === 'number'}\n buttonRef={leftButtonRef}\n popoverPosition={popoverPosition[index]}\n onKeyPress={onKeyPress}\n onFocus={onFocus}\n tooltipDirection={tooltipDirection}\n tooltipPossibleDirections={tooltipPossibleDirections}\n handlePress={handlePress}\n disabled={disabled}\n active={topLayer}\n position={buttonPositions[index]}\n focused={activeButton === index || focusIndex === index}\n buttonLabel={index as ActiveButton}\n withTooltip={withTooltip}\n onHover={changeHovered}\n tooltipFormatter={tooltipFormatter}\n value={val}\n role=\"slider\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={val}\n tooltipZIndex={\n typeof style?.zIndex === 'number'\n ? style.zIndex + 1\n : undefined\n }\n key={cnSlider('Point', { index })}\n />\n );\n })}\n </div>\n {(rightSide === 'input' || IconRight) && (\n <div className={cnSlider('Side', { position: 'right' })}>\n {rightSide === 'input' && (\n <SliderInput\n value={getValueForInput(props, 1)}\n onChange={getOnChangeForInput(props, 1)}\n onBlur={() => setFocusIndex(undefined)}\n size={size}\n min={getMinForEndField(props)}\n max={max}\n onFocus={() => setFocusIndex(isRangeParams(props) ? 1 : 0)}\n inputMode=\"numeric\"\n status={status}\n step={step}\n disabled={disabled}\n />\n )}\n {IconRight && <IconRight size={iconSize} view=\"secondary\" />}\n </div>\n )}\n </div>\n {caption && (\n <FieldCaption className={cnSlider('Caption')} status={status}>\n {caption}\n </FieldCaption>\n )}\n </div>\n );\n};\n\nexport const Slider = forwardRef(SliderRender) as SliderComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","names":["React","forwardRef","useRef","useState","usePropsHandler","FieldCaption","FieldLabel","useFlag","useForkRef","useSortSteps","cn","defaultTooltipFormatter","getIcon","getMaxForStartField","getMinForEndField","getOnChangeForInput","getValidStep","getValueForInput","isRangeParams","sliderPropSizeDefault","SliderInput","SliderLine","SliderPoint","useSlider","useSliderStationing","cnSlider","sizeMap","xs","s","m","l","COMPONENT_NAME","SliderRender","props","ref","sliderRef","min","max","onChange","onAfterChange","value","stepProp","step","disabled","size","view","leftSide","rightSide","withTooltip","range","label","tooltipDirection","tooltipPossibleDirections","labelIcon","status","caption","tooltipFormatter","className","style","otherProps","focusIndex","setFocusIndex","isHovered","on","off","containerRef","leftButtonRef","rightButtonRef","sortedSteps","Math","abs","IconRight","IconLeft","iconSize","buttonRefs","onKeyPress","onFocus","handlePress","onSliderClick","popoverPosition","activeButton","currentValue","length","lineSizes","buttonPositions","containerProps","role","tabIndex","onClick","changeHovered","position","map","val","index","topLayer","zIndex","Slider"],"sources":["../../../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import './Slider.css';\n\nimport { IconPropSize } from '@consta/icons/Icon';\nimport React, { forwardRef, useRef, useState } from 'react';\n\nimport { usePropsHandler } from '##/components/EventInterceptor/usePropsHandler';\nimport { FieldCaption } from '##/components/FieldCaption';\nimport { FieldLabel } from '##/components/FieldLabel';\nimport { useFlag } from '##/hooks/useFlag';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { useSortSteps } from '##/hooks/useSortSteps';\nimport { cn } from '##/utils/bem';\n\nimport {\n defaultTooltipFormatter,\n getIcon,\n getMaxForStartField,\n getMinForEndField,\n getOnChangeForInput,\n getValidStep,\n getValueForInput,\n isRangeParams,\n SliderComponent,\n SliderProps,\n SliderPropSize,\n sliderPropSizeDefault,\n} from './helper';\nimport { SliderInput } from './SliderInput/SliderInput';\nimport { SliderLine } from './SliderLine/SliderLine';\nimport { SliderPoint } from './SliderPoint/SliderPoint';\nimport { ActiveButton } from './useSlider/helper';\nimport { useSlider } from './useSlider/useSlider';\nimport { useSliderStationing } from './useSliderStationing';\n\nconst cnSlider = cn('Slider');\n\nconst sizeMap: Record<SliderPropSize, IconPropSize> = {\n xs: 'xs',\n s: 's',\n m: 'm',\n l: 'm',\n};\n\nexport const COMPONENT_NAME = 'Slider' as const;\n\nconst SliderRender = <RANGE extends boolean = false>(\n props: SliderProps<RANGE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const sliderRef = useRef<HTMLDivElement>(null);\n\n const {\n min = 0,\n max = 100,\n onChange,\n onAfterChange,\n value,\n step: stepProp,\n disabled = false,\n size = sliderPropSizeDefault,\n view = 'default',\n leftSide,\n rightSide,\n withTooltip,\n range = false,\n label,\n tooltipDirection,\n tooltipPossibleDirections,\n labelIcon,\n status,\n caption,\n tooltipFormatter = defaultTooltipFormatter,\n className,\n style,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, sliderRef);\n\n const [focusIndex, setFocusIndex] = useState<number | undefined>();\n const [isHovered, { on, off }] = useFlag(false);\n const containerRef = useRef<HTMLDivElement>(null);\n const leftButtonRef = useRef<HTMLButtonElement>(null);\n const rightButtonRef = useRef<HTMLButtonElement>(null);\n const sortedSteps = useSortSteps({\n step: getValidStep(min, max, stepProp),\n min,\n max,\n });\n const step = stepProp ? sortedSteps : Math.abs((max - min) / 100);\n const IconRight = getIcon(rightSide);\n const IconLeft = getIcon(leftSide);\n const iconSize = sizeMap[size];\n\n const {\n onKeyPress,\n onFocus,\n handlePress,\n onSliderClick,\n popoverPosition,\n activeButton,\n currentValue,\n } = useSlider({\n disabled,\n range,\n value,\n min,\n max,\n step,\n onChange,\n onAfterChange,\n sliderRef,\n containerRef,\n buttonRefs: [leftButtonRef, rightButtonRef],\n });\n\n const { lineSizes, buttonPositions } = useSliderStationing(\n currentValue.length === 1 ? currentValue[0] : currentValue,\n min,\n max,\n view,\n range,\n step,\n [leftButtonRef, rightButtonRef],\n sliderRef,\n );\n\n const containerProps = {\n role: 'button',\n tabIndex: -1,\n className: cnSlider('Control'),\n ref: sliderRef,\n onClick: onSliderClick,\n };\n\n const changeHovered = (status: boolean) => {\n if (status) on();\n else off();\n };\n\n return (\n <div\n ref={useForkRef([ref, containerRef])}\n className={cnSlider({ size }, [className])}\n style={style}\n {...otherProps}\n >\n {label && (\n <FieldLabel icon={labelIcon} className={cnSlider('Label')} size={size}>\n {label}\n </FieldLabel>\n )}\n <div className={cnSlider('Container')}>\n {(leftSide === 'input' || IconLeft) && (\n <div className={cnSlider('Side', { position: 'left' })}>\n {leftSide === 'input' && (\n <SliderInput\n value={getValueForInput(props, 0)}\n onFocus={() => setFocusIndex(0)}\n onBlur={() => setFocusIndex(undefined)}\n onChange={getOnChangeForInput(props, 0)}\n size={size}\n min={min}\n inputMode=\"numeric\"\n max={getMaxForStartField(props)}\n status={status}\n step={step}\n disabled={disabled}\n />\n )}\n {IconLeft && (\n <IconLeft size={iconSize ?? undefined} view=\"secondary\" />\n )}\n </div>\n )}\n <div {...containerProps}>\n <SliderLine\n hovered={isHovered || typeof activeButton === 'number'}\n onHover={changeHovered}\n lines={lineSizes}\n disabled={disabled}\n view={view}\n />\n {currentValue.map((val, index) => {\n const topLayer =\n currentValue.length > 1 &&\n currentValue[0] === currentValue[1] &&\n val === max &&\n index === 0;\n return (\n <SliderPoint\n hovered={isHovered || typeof activeButton === 'number'}\n buttonRef={leftButtonRef}\n popoverPosition={popoverPosition[index]}\n onKeyPress={onKeyPress}\n onFocus={onFocus}\n tooltipDirection={tooltipDirection}\n tooltipPossibleDirections={tooltipPossibleDirections}\n handlePress={handlePress}\n disabled={disabled}\n active={topLayer}\n position={buttonPositions[index]}\n focused={activeButton === index || focusIndex === index}\n buttonLabel={index as ActiveButton}\n withTooltip={withTooltip}\n onHover={changeHovered}\n tooltipFormatter={tooltipFormatter}\n value={val}\n role=\"slider\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={val}\n tooltipZIndex={\n typeof style?.zIndex === 'number'\n ? style.zIndex + 1\n : undefined\n }\n key={cnSlider('Point', { index })}\n />\n );\n })}\n </div>\n {(rightSide === 'input' || IconRight) && (\n <div className={cnSlider('Side', { position: 'right' })}>\n {rightSide === 'input' && (\n <SliderInput\n value={getValueForInput(props, 1)}\n onChange={getOnChangeForInput(props, 1)}\n onBlur={() => setFocusIndex(undefined)}\n size={size}\n min={getMinForEndField(props)}\n max={max}\n onFocus={() => setFocusIndex(isRangeParams(props) ? 1 : 0)}\n inputMode=\"numeric\"\n status={status}\n step={step}\n disabled={disabled}\n />\n )}\n {IconRight && <IconRight size={iconSize} view=\"secondary\" />}\n </div>\n )}\n </div>\n {caption && (\n <FieldCaption className={cnSlider('Caption')} status={status}>\n {caption}\n </FieldCaption>\n )}\n </div>\n );\n};\n\nexport const Slider = forwardRef(SliderRender) as SliderComponent;\n"],"mappings":"+ZAAA,qBAGA,MAAOA,MAAP,EAAgBC,UAAhB,CAA4BC,MAA5B,CAAoCC,QAApC,KAAoD,OAApD,CAEA,OAASC,eAAT,2CACA,OAASC,YAAT,uBACA,OAASC,UAAT,qBACA,OAASC,OAAT,2BACA,OAASC,UAAT,8BACA,OAASC,YAAT,gCACA,OAASC,EAAT,uBAEA,OACEC,uBADF,CAEEC,OAFF,CAGEC,mBAHF,CAIEC,iBAJF,CAKEC,mBALF,CAMEC,YANF,CAOEC,gBAPF,CAQEC,aARF,CAYEC,qBAZF,gBAcA,OAASC,WAAT,iCACA,OAASC,UAAT,+BACA,OAASC,WAAT,iCAEA,OAASC,SAAT,6BACA,OAASC,mBAAT,6B,GAEMC,SAAQ,CAAGf,EAAE,CAAC,QAAD,C,CAEbgB,OAA6C,CAAG,CACpDC,EAAE,CAAE,IADgD,CAEpDC,CAAC,CAAE,GAFiD,CAGpDC,CAAC,CAAE,GAHiD,CAIpDC,CAAC,CAAE,GAJiD,C,CAOtD,MAAO,IAAMC,eAAc,CAAG,QAAvB,CAEP,GAAMC,aAAY,CAAG,SACnBC,CADmB,CAEnBC,CAFmB,CAGhB,IACGC,EAAS,CAAGjC,MAAM,CAAiB,IAAjB,CADrB,GA2BCE,eAAe,CAAC2B,cAAD,CAAiBE,CAAjB,CAAwBE,CAAxB,CA3BhB,KAIDC,GAJC,CAIDA,CAJC,YAIK,CAJL,OAKDC,GALC,CAKDA,CALC,YAKK,GALL,GAMDC,CANC,GAMDA,QANC,CAODC,CAPC,GAODA,aAPC,CAQDC,CARC,GAQDA,KARC,CASKC,CATL,GASDC,IATC,KAUDC,QAVC,CAUDA,CAVC,mBAWDC,IAXC,CAWDA,CAXC,YAWMzB,qBAXN,OAYD0B,IAZC,CAYDA,CAZC,YAYM,SAZN,GAaDC,CAbC,GAaDA,QAbC,CAcDC,CAdC,GAcDA,SAdC,CAeDC,CAfC,GAeDA,WAfC,KAgBDC,KAhBC,CAgBDA,CAhBC,eAiBDC,CAjBC,GAiBDA,KAjBC,CAkBDC,CAlBC,GAkBDA,gBAlBC,CAmBDC,CAnBC,GAmBDA,yBAnBC,CAoBDC,CApBC,GAoBDA,SApBC,CAqBDC,CArBC,GAqBDA,MArBC,CAsBDC,CAtBC,GAsBDA,OAtBC,KAuBDC,gBAvBC,CAuBDA,CAvBC,YAuBkB7C,uBAvBlB,GAwBD8C,CAxBC,GAwBDA,SAxBC,CAyBDC,CAzBC,GAyBDA,KAzBC,CA0BEC,CA1BF,yCA6BiCxD,QAAQ,EA7BzC,uBA6BIyD,CA7BJ,MA6BgBC,CA7BhB,QA8B8BtD,OAAO,IA9BrC,uBA8BIuD,CA9BJ,aA8BiBC,CA9BjB,GA8BiBA,EA9BjB,CA8BqBC,CA9BrB,GA8BqBA,GA9BrB,CA+BGC,CAAY,CAAG/D,MAAM,CAAiB,IAAjB,CA/BxB,CAgCGgE,CAAa,CAAGhE,MAAM,CAAoB,IAApB,CAhCzB,CAiCGiE,CAAc,CAAGjE,MAAM,CAAoB,IAApB,CAjC1B,CAkCGkE,CAAW,CAAG3D,YAAY,CAAC,CAC/BiC,IAAI,CAAE1B,YAAY,CAACoB,CAAD,CAAMC,CAAN,CAAWI,CAAX,CADa,CAE/BL,GAAG,CAAHA,CAF+B,CAG/BC,GAAG,CAAHA,CAH+B,CAAD,CAlC7B,CAuCGK,CAAI,CAAGD,CAAQ,CAAG2B,CAAH,CAAiBC,IAAI,CAACC,GAAL,CAAS,CAACjC,CAAG,CAAGD,CAAP,EAAc,GAAvB,CAvCnC,CAwCGmC,CAAS,CAAG3D,OAAO,CAACmC,CAAD,CAxCtB,CAyCGyB,CAAQ,CAAG5D,OAAO,CAACkC,CAAD,CAzCrB,CA0CG2B,CAAQ,CAAG/C,OAAO,CAACkB,CAAD,CA1CrB,GAoDCrB,SAAS,CAAC,CACZoB,QAAQ,CAARA,CADY,CAEZM,KAAK,CAALA,CAFY,CAGZT,KAAK,CAALA,CAHY,CAIZJ,GAAG,CAAHA,CAJY,CAKZC,GAAG,CAAHA,CALY,CAMZK,IAAI,CAAJA,CANY,CAOZJ,QAAQ,CAARA,CAPY,CAQZC,aAAa,CAAbA,CARY,CASZJ,SAAS,CAATA,CATY,CAUZ8B,YAAY,CAAZA,CAVY,CAWZS,UAAU,CAAE,CAACR,CAAD,CAAgBC,CAAhB,CAXA,CAAD,CApDV,CA6CDQ,CA7CC,GA6CDA,UA7CC,CA8CDC,EA9CC,GA8CDA,OA9CC,CA+CDC,EA/CC,GA+CDA,WA/CC,CAgDDC,EAhDC,GAgDDA,aAhDC,CAiDDC,EAjDC,GAiDDA,eAjDC,CAkDDC,EAlDC,GAkDDA,YAlDC,CAmDDC,EAnDC,GAmDDA,YAnDC,IAkEoCzD,mBAAmB,CAChC,CAAxB,GAAAyD,EAAY,CAACC,MAAb,CAA4BD,EAAY,CAAC,CAAD,CAAxC,CAA8CA,EADU,CAExD7C,CAFwD,CAGxDC,CAHwD,CAIxDQ,CAJwD,CAKxDI,CALwD,CAMxDP,CANwD,CAOxD,CAACwB,CAAD,CAAgBC,CAAhB,CAPwD,CAQxDhC,CARwD,CAlEvD,CAkEKgD,EAlEL,IAkEKA,SAlEL,CAkEgBC,EAlEhB,IAkEgBA,eAlEhB,CA6EGC,EAAc,CAAG,CACrBC,IAAI,CAAE,QADe,CAErBC,QAAQ,CAAE,CAAC,CAFU,CAGrB9B,SAAS,CAAEhC,QAAQ,CAAC,SAAD,CAHE,CAIrBS,GAAG,CAAEC,CAJgB,CAKrBqD,OAAO,CAAEV,EALY,CA7EpB,CAqFGW,EAAa,CAAG,SAACnC,CAAD,CAAqB,CACrCA,CADqC,CAC7BS,CAAE,EAD2B,CAEpCC,CAAG,EACT,CAxFE,CA0FH,MACE,0CACE,GAAG,CAAExD,UAAU,CAAC,CAAC0B,CAAD,CAAM+B,CAAN,CAAD,CADjB,CAEE,SAAS,CAAExC,QAAQ,CAAC,CAAEmB,IAAI,CAAJA,CAAF,CAAD,CAAW,CAACa,CAAD,CAAX,CAFrB,CAGE,KAAK,CAAEC,CAHT,EAIMC,CAJN,EAMGT,CAAK,EACJ,oBAAC,UAAD,EAAY,IAAI,CAAEG,CAAlB,CAA6B,SAAS,CAAE5B,QAAQ,CAAC,OAAD,CAAhD,CAA2D,IAAI,CAAEmB,CAAjE,EACGM,CADH,CAPJ,CAWE,2BAAK,SAAS,CAAEzB,QAAQ,CAAC,WAAD,CAAxB,EACG,CAAc,OAAb,GAAAqB,CAAQ,EAAgB0B,CAAzB,GACC,2BAAK,SAAS,CAAE/C,QAAQ,CAAC,MAAD,CAAS,CAAEiE,QAAQ,CAAE,MAAZ,CAAT,CAAxB,EACgB,OAAb,GAAA5C,CAAQ,EACP,oBAAC,WAAD,EACE,KAAK,CAAE7B,gBAAgB,CAACgB,CAAD,CAAQ,CAAR,CADzB,CAEE,OAAO,CAAE,iBAAM4B,EAAa,CAAC,CAAD,CAAnB,CAFX,CAGE,MAAM,CAAE,wBAAMA,EAAa,QAAnB,CAHV,CAIE,QAAQ,CAAE9C,mBAAmB,CAACkB,CAAD,CAAQ,CAAR,CAJ/B,CAKE,IAAI,CAAEW,CALR,CAME,GAAG,CAAER,CANP,CAOE,SAAS,CAAC,SAPZ,CAQE,GAAG,CAAEvB,mBAAmB,CAACoB,CAAD,CAR1B,CASE,MAAM,CAAEqB,CATV,CAUE,IAAI,CAAEZ,CAVR,CAWE,QAAQ,CAAEC,CAXZ,EAFJ,CAgBG6B,CAAQ,EACP,oBAAC,CAAD,EAAU,IAAI,QAAEC,CAAF,WAAEA,CAAF,CAAEA,CAAF,OAAd,CAAuC,IAAI,CAAC,WAA5C,EAjBJ,CAFJ,CAuBE,0BAASY,EAAT,CACE,oBAAC,UAAD,EACE,OAAO,CAAEvB,CAAS,EAA4B,QAAxB,QAAOkB,GAD/B,CAEE,OAAO,CAAES,EAFX,CAGE,KAAK,CAAEN,EAHT,CAIE,QAAQ,CAAExC,CAJZ,CAKE,IAAI,CAAEE,CALR,EADF,CAQGoC,EAAY,CAACU,GAAb,CAAiB,SAACC,CAAD,CAAMC,CAAN,CAAgB,CAChC,GAAMC,EAAQ,CACU,CAAtB,CAAAb,EAAY,CAACC,MAAb,EACAD,EAAY,CAAC,CAAD,CAAZ,GAAoBA,EAAY,CAAC,CAAD,CADhC,EAEAW,CAAG,GAAKvD,CAFR,EAGU,CAAV,GAAAwD,CAJF,CAKA,MACE,qBAAC,WAAD,EACE,OAAO,CAAE/B,CAAS,EAA4B,QAAxB,QAAOkB,GAD/B,CAEE,SAAS,CAAEd,CAFb,CAGE,eAAe,CAAEa,EAAe,CAACc,CAAD,CAHlC,CAIE,UAAU,CAAElB,CAJd,CAKE,OAAO,CAAEC,EALX,CAME,gBAAgB,CAAEzB,CANpB,CAOE,yBAAyB,CAAEC,CAP7B,CAQE,WAAW,CAAEyB,EARf,CASE,QAAQ,CAAElC,CATZ,CAUE,MAAM,CAAEmD,CAVV,CAWE,QAAQ,CAAEV,EAAe,CAACS,CAAD,CAX3B,CAYE,OAAO,CAAEb,EAAY,GAAKa,CAAjB,EAA0BjC,CAAU,GAAKiC,CAZpD,CAaE,WAAW,CAAEA,CAbf,CAcE,WAAW,CAAE7C,CAdf,CAeE,OAAO,CAAEyC,EAfX,CAgBE,gBAAgB,CAAEjC,CAhBpB,CAiBE,KAAK,CAAEoC,CAjBT,CAkBE,IAAI,CAAC,QAlBP,CAmBE,gBAAexD,CAnBjB,CAoBE,gBAAeC,CApBjB,CAqBE,gBAAeuD,CArBjB,CAsBE,aAAa,CACc,QAAzB,gBAAOlC,CAAP,WAAOA,CAAP,QAAOA,CAAK,CAAEqC,MAAd,EACIrC,CAAK,CAACqC,MAAN,CAAe,CADnB,OAvBJ,CA2BE,GAAG,CAAEtE,QAAQ,CAAC,OAAD,CAAU,CAAEoE,KAAK,CAALA,CAAF,CAAV,CA3Bf,EA8BH,CArCA,CARH,CAvBF,CAsEG,CAAe,OAAd,GAAA9C,CAAS,EAAgBwB,CAA1B,GACC,2BAAK,SAAS,CAAE9C,QAAQ,CAAC,MAAD,CAAS,CAAEiE,QAAQ,CAAE,OAAZ,CAAT,CAAxB,EACiB,OAAd,GAAA3C,CAAS,EACR,oBAAC,WAAD,EACE,KAAK,CAAE9B,gBAAgB,CAACgB,CAAD,CAAQ,CAAR,CADzB,CAEE,QAAQ,CAAElB,mBAAmB,CAACkB,CAAD,CAAQ,CAAR,CAF/B,CAGE,MAAM,CAAE,wBAAM4B,EAAa,QAAnB,CAHV,CAIE,IAAI,CAAEjB,CAJR,CAKE,GAAG,CAAE9B,iBAAiB,CAACmB,CAAD,CALxB,CAME,GAAG,CAAEI,CANP,CAOE,OAAO,CAAE,iBAAMwB,EAAa,CAAC3C,aAAa,CAACe,CAAD,CAAb,CAAuB,CAAvB,CAA2B,CAA5B,CAAnB,CAPX,CAQE,SAAS,CAAC,SARZ,CASE,MAAM,CAAEqB,CATV,CAUE,IAAI,CAAEZ,CAVR,CAWE,QAAQ,CAAEC,CAXZ,EAFJ,CAgBG4B,CAAS,EAAI,oBAAC,CAAD,EAAW,IAAI,CAAEE,CAAjB,CAA2B,IAAI,CAAC,WAAhC,EAhBhB,CAvEJ,CAXF,CAsGGlB,CAAO,EACN,oBAAC,YAAD,EAAc,SAAS,CAAE9B,QAAQ,CAAC,SAAD,CAAjC,CAA8C,MAAM,CAAE6B,CAAtD,EACGC,CADH,CAvGJ,CA6GH,CA3MD,CA6MA,MAAO,IAAMyC,OAAM,CAAG/F,UAAU,CAAC+B,YAAD,CAAzB"}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useCallback,useEffect,useMemo,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useComponentSize}from"../../../hooks/useComponentSize/useComponentSize";import{useMutableRef}from"../../../hooks/useMutableRef/useMutableRef";import{getActiveValue,getNewValue,getValidValue,getValueByPosition,isNotRangeParams,isRangeParams,trackPosition,valueToString}from"./helper";export var COUNT_STEPS=250;export function useSlider(a){var b=a.disabled,c=a.range,d=a.value,f=a.min,g=a.max,h=a.step,i=void 0===h?1:h,j=a.onChange,k=a.onAfterChange,l=a.sliderRef,m=a.containerRef,n=a.buttonRefs,o=g>f?f:0,p=g>f?g:100,q=useMemo(function(){if(!Array.isArray(i)&&1<=i){var a=Math.abs((p-o)/COUNT_STEPS);return a>i?a-a%i:Math.max(a,i)}return i},[g,f,i]),r=useState(d),s=_slicedToArray(r,2),t=s[0],u=s[1],v=useState(null),w=_slicedToArray(v,2),x=w[0],y=w[1],z=useState(null),A=_slicedToArray(z,2),B=A[0],C=A[1],D=useState(null),E=_slicedToArray(D,2),F=E[0],G=E[1],H=useRef(null),I=useComponentSize(l),J=useMutableRef(t),K=useMutableRef(j),L=useMutableRef(k);useClickOutside({isActive:!0,ignoreClicksInsideRefs:[m],handler:function handler(){G(null),H.current=null}}),useEffect(function(){b&&M("remove")},[b]);var M=function(a){var b="add"===a?"addEventListener":"removeEventListener";document[b]("mouseup",R),document[b]("touchend",R),document[b]("mousemove",Q),document[b]("touchmove",Q)};useEffect(function(){Array.isArray(t)?(O(t[0],0),O(t[1],1)):O(t,0)},[t]),useEffect(function(){valueToString(d)!==valueToString(t)&&(u(d),O(getActiveValue(d,H.current),0),G(null),H.current=null)},[d]),useEffect(function(){var a=Array.isArray(t)?[getNewValue(t[0],t[0],i,f,g,0),getNewValue(t[1],t[1],i,f,g,1)]:getNewValue(t,t,i,f,g,0);if(valueToString(a)!==valueToString(t)){var b;null===(b=K.current)||void 0===b?void 0:b.call(K,a,{})}},[i]),useEffect(function(){if("undefined"!=typeof d){var b=isRangeParams(a)?[getValidValue(a.value[0],f,g,i),getValidValue(a.value[1],f,g,i)]:getValidValue(a.value,f,g,i);u(b)}},[c,typeof d]),useEffect(function(){if(isRangeParams(a)&&a.value[0]>a.value[1]){var b,c=[a.value[1],a.value[1]];null===(b=K.current)||void 0===b?void 0:b.call(K,c,{})}},[]);var N=useCallback(function(a,c){if(!b&&"number"==typeof c&&"undefined"!=typeof t){a.preventDefault(),a.stopPropagation();var d=Array.isArray(i)?1:i||1,e=!1,h=getActiveValue(t,c);switch(a.key){case"ArrowUp":case"ArrowRight":case"+":e=!0;break;case"ArrowLeft":case"ArrowDown":case"-":e=!0,d*=-1;break;default:}if(e){var j;Array.isArray(i)&&i.forEach(function(a,b){"number"==typeof c&&h===a&&(0<=d?0===b?d=i[1]-o:d=("undefined"==typeof i[b+1]?p:i[b+1])-a:0===b?d=o-i[1]:d=("undefined"==typeof i[b-1]?o:i[b-1])-a)});var k=getNewValue(h+d,t,i,f,g,c);u(k),O(getActiveValue(k,c),c),null===(j=K.current)||void 0===j?void 0:j.call(K,k,{e:a})}}},[t,i,f,g]),O=function(a,b){if(l.current&&"number"==typeof b){var c=n[b].current||l.current,d=l.current.getBoundingClientRect(),e=d.x,f=d.width,g={y:c.offsetTop+c.offsetHeight+50,x:e+Math.abs((a-o)/(p-o))*f};0===b?y(g):C(g)}},P=function(a){if("number"!=typeof H.current)return d;var b=trackPosition(a),c=getValueByPosition(b,l,o,p,i);return getNewValue(c,t,q,f,g,H.current)},Q=function(a,b){var c=b||H.current;if("number"==typeof c){var d=P(a),e=getActiveValue(t,c),f=getActiveValue(d,c);if(u(d),valueToString(e)!==valueToString(f)){var g;null===(g=L.current)||void 0===g?void 0:g.call(L,d,{e:a})}}};useEffect(function(){if(isRangeParams(a)){var b;null===(b=a.value)||void 0===b?void 0:b.forEach(function(a,b){O(getActiveValue(a,H.current),0===b?0:1)})}isNotRangeParams(a)&&O(getActiveValue(d,H.current),0),H.current=null},[I,typeof d]);var R=useCallback(function(b){if(M("remove"),isRangeParams(a)&&Array.isArray(J.current)){var c,d=_toConsumableArray(J.current).sort(function(c,a){return+c-+a});null===(c=K.current)||void 0===c?void 0:c.call(K,d,{e:b})}if(isNotRangeParams(a)&&"number"==typeof J.current){var e;null===(e=K.current)||void 0===e?void 0:e.call(K,J.current,{e:b})}G(null),H.current=null},[d,Q]),S=useCallback(function(a){b||(G(a),H.current=a,M("add"))},[t,d,Q,b]);return{onKeyPress:N,onFocus:function onFocus(a,b){G(b),H.current=b},handlePress:S,onSliderClick:function onSliderClick(c){if(isNotRangeParams(a)&&!b){var e=getValueByPosition({x:c.pageX,y:c.pageY},l,o,p,i),h=getNewValue(e,t,q,f,g,H.current);if(h!==d){var j;u(h),O(getActiveValue(h,0),0),null===(j=K.current)||void 0===j?void 0:j.call(K,h,{e:c})}}},activeButton:F,popoverPosition:[x,B],currentValue:Array.isArray(t)?t:[t]}}
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useCallback,useEffect,useMemo,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useComponentSize}from"../../../hooks/useComponentSize/useComponentSize";import{useMutableRef}from"../../../hooks/useMutableRef/useMutableRef";import{getActiveValue,getNewValue,getValidValue,getValueByPosition,isNotRangeParams,isRangeParams,trackPosition,valueToString}from"./helper";export var COUNT_STEPS=250;export function useSlider(a){var b=a.disabled,c=a.range,d=a.value,f=a.min,g=a.max,h=a.step,i=void 0===h?1:h,j=a.onChange,k=a.onAfterChange,l=a.sliderRef,m=a.containerRef,n=a.buttonRefs,o=g>f?f:0,p=g>f?g:100,q=useMemo(function(){if(!Array.isArray(i)&&1<=i){var a=Math.abs((p-o)/COUNT_STEPS);return a>i?a-a%i:Math.max(a,i)}return i},[g,f,i]),r=useState(d),s=_slicedToArray(r,2),t=s[0],u=s[1],v=useState(null),w=_slicedToArray(v,2),x=w[0],y=w[1],z=useState(null),A=_slicedToArray(z,2),B=A[0],C=A[1],D=useState(null),E=_slicedToArray(D,2),F=E[0],G=E[1],H=useRef(null),I=useComponentSize(l),J=useMutableRef(t),K=useMutableRef(j),L=useMutableRef(k);useClickOutside({isActive:!0,ignoreClicksInsideRefs:[m],handler:function handler(){G(null),H.current=null}}),useEffect(function(){b&&M("remove")},[b]);var M=function(a){var b="add"===a?"addEventListener":"removeEventListener";document[b]("mouseup",R),document[b]("touchend",R),document[b]("mousemove",Q),document[b]("touchmove",Q)};useEffect(function(){Array.isArray(t)?(O(t[0],0),O(t[1],1)):O(t,0)},[t]),useEffect(function(){valueToString(d)!==valueToString(t)&&(u(d),O(getActiveValue(d,H.current),0),G(null),H.current=null)},[d]),useEffect(function(){var a=Array.isArray(t)?[getNewValue(t[0],t[0],i,f,g,0),getNewValue(t[1],t[1],i,f,g,1)]:getNewValue(t,t,i,f,g,0);if(valueToString(a)!==valueToString(t)){var b;null===(b=K.current)||void 0===b?void 0:b.call(K,a,{})}},[i]),useEffect(function(){if("undefined"!=typeof d){var b=isRangeParams(a)?[getValidValue(a.value[0],f,g,i),getValidValue(a.value[1],f,g,i)]:getValidValue(a.value,f,g,i);u(b)}},[c,typeof d]),useEffect(function(){if(isRangeParams(a)&&a.value[0]>a.value[1]){var b,c=[a.value[1],a.value[1]];null===(b=K.current)||void 0===b?void 0:b.call(K,c,{})}},[]);var N=useCallback(function(a,c){if(!b&&"number"==typeof c&&"undefined"!=typeof t){var d=Array.isArray(i)?1:i||1,e=!1,h=getActiveValue(t,c);switch(a.key){case"ArrowUp":case"ArrowRight":case"+":e=!0;break;case"ArrowLeft":case"ArrowDown":case"-":e=!0,d*=-1;break;default:}if(e){var j;a.preventDefault(),a.stopPropagation(),Array.isArray(i)&&i.forEach(function(a,b){"number"==typeof c&&h===a&&(0<=d?0===b?d=i[1]-o:d=("undefined"==typeof i[b+1]?p:i[b+1])-a:0===b?d=o-i[1]:d=("undefined"==typeof i[b-1]?o:i[b-1])-a)});var k=getNewValue(h+d,t,i,f,g,c);u(k),O(getActiveValue(k,c),c),null===(j=K.current)||void 0===j?void 0:j.call(K,k,{e:a})}}},[t,i,f,g]),O=function(a,b){if(l.current&&"number"==typeof b){var c=n[b].current||l.current,d=l.current.getBoundingClientRect(),e=d.x,f=d.width,g={y:c.offsetTop+c.offsetHeight+50,x:e+Math.abs((a-o)/(p-o))*f};0===b?y(g):C(g)}},P=function(a){if("number"!=typeof H.current)return d;var b=trackPosition(a),c=getValueByPosition(b,l,o,p,i);return getNewValue(c,t,q,f,g,H.current)},Q=function(a,b){var c=b||H.current;if("number"==typeof c){var d=P(a),e=getActiveValue(t,c),f=getActiveValue(d,c);if(u(d),valueToString(e)!==valueToString(f)){var g;null===(g=L.current)||void 0===g?void 0:g.call(L,d,{e:a})}}};useEffect(function(){if(isRangeParams(a)){var b;null===(b=a.value)||void 0===b?void 0:b.forEach(function(a,b){O(getActiveValue(a,H.current),0===b?0:1)})}isNotRangeParams(a)&&O(getActiveValue(d,H.current),0),H.current=null},[I,typeof d]);var R=useCallback(function(b){if(M("remove"),isRangeParams(a)&&Array.isArray(J.current)){var c,d=_toConsumableArray(J.current).sort(function(c,a){return+c-+a});null===(c=K.current)||void 0===c?void 0:c.call(K,d,{e:b})}if(isNotRangeParams(a)&&"number"==typeof J.current){var e;null===(e=K.current)||void 0===e?void 0:e.call(K,J.current,{e:b})}G(null),H.current=null},[d,Q]),S=useCallback(function(a){b||(G(a),H.current=a,M("add"))},[t,d,Q,b]);return{onKeyPress:N,onFocus:function onFocus(a,b){G(b),H.current=b},handlePress:S,onSliderClick:function onSliderClick(c){if(isNotRangeParams(a)&&!b){var e=getValueByPosition({x:c.pageX,y:c.pageY},l,o,p,i),h=getNewValue(e,t,q,f,g,H.current);if(h!==d){var j;u(h),O(getActiveValue(h,0),0),null===(j=K.current)||void 0===j?void 0:j.call(K,h,{e:c})}}},activeButton:F,popoverPosition:[x,B],currentValue:Array.isArray(t)?t:[t]}}
2
2
  //# sourceMappingURL=useSlider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSlider.js","names":["useCallback","useEffect","useMemo","useRef","useState","useClickOutside","useComponentSize","useMutableRef","getActiveValue","getNewValue","getValidValue","getValueByPosition","isNotRangeParams","isRangeParams","trackPosition","valueToString","COUNT_STEPS","useSlider","props","disabled","range","value","min","max","step","onChange","onAfterChange","sliderRef","containerRef","buttonRefs","minValue","maxValue","dragStepValue","Array","isArray","val","Math","abs","currentValue","setCurrentValue","leftPopover","setLeftPopover","rightPopover","setRightPopover","currentButton","setCurrentButton","activeButton","sizeSlider","currentValueRef","onChangeRef","onAfterChangeRef","isActive","ignoreClicksInsideRefs","handler","current","controlListeners","type","method","document","handleRelease","handleTouchMove","setTooltipPosition","newValue","targetValue","onKeyPress","event","typeButton","preventDefault","stopPropagation","stepIncrement","validKeyCode","changedValue","key","forEach","stepPoint","index","e","position","button","getBoundingClientRect","x","width","newPosition","y","offsetTop","offsetHeight","changePosition","positionValue","oldValue","copyValues","sort","a","b","handlePress","onFocus","onSliderClick","pageX","pageY","popoverPosition"],"sources":["../../../../../../src/components/Slider/useSlider/useSlider.ts"],"sourcesContent":["import React, {\n MutableRefObject,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useComponentSize } from '##/hooks/useComponentSize/useComponentSize';\nimport { useMutableRef } from '##/hooks/useMutableRef/useMutableRef';\n\nimport { SliderValue, TrackPosition } from '../helper';\nimport {\n ActiveButton,\n getActiveValue,\n getNewValue,\n getValidValue,\n getValueByPosition,\n isNotRangeParams,\n isRangeParams,\n trackPosition,\n UseSliderProps,\n UseSliderValues,\n valueToString,\n} from './helper';\n\nexport const COUNT_STEPS = 250;\n\nexport function useSlider<RANGE extends boolean>(\n props: UseSliderProps<RANGE>,\n): UseSliderValues {\n const {\n disabled,\n range,\n value,\n min,\n max,\n step = 1,\n onChange,\n onAfterChange,\n sliderRef,\n containerRef,\n buttonRefs,\n } = props;\n\n const minValue = max > min ? min : 0;\n const maxValue = max > min ? max : 100;\n\n const dragStepValue = useMemo(() => {\n if (!Array.isArray(step)) {\n if (step >= 1) {\n const val = Math.abs((maxValue - minValue) / COUNT_STEPS);\n if (val > step) {\n return val - (val % step);\n }\n return Math.max(val, step);\n }\n }\n return step;\n }, [max, min, step]);\n\n const [currentValue, setCurrentValue] = useState<number | [number, number]>(\n value,\n );\n const [leftPopover, setLeftPopover] = useState<TrackPosition>(null);\n const [rightPopover, setRightPopover] = useState<TrackPosition>(null);\n const [currentButton, setCurrentButton] = useState<ActiveButton | null>(null);\n\n const activeButton: MutableRefObject<ActiveButton | null> = useRef(null);\n\n const sizeSlider = useComponentSize(sliderRef);\n\n const currentValueRef = useMutableRef(currentValue);\n const onChangeRef = useMutableRef(onChange);\n const onAfterChangeRef = useMutableRef(onAfterChange);\n\n useClickOutside({\n isActive: true,\n ignoreClicksInsideRefs: [containerRef],\n handler: () => {\n setCurrentButton(null);\n activeButton.current = null;\n },\n });\n\n useEffect(() => {\n if (disabled) {\n controlListeners('remove');\n }\n }, [disabled]);\n\n const controlListeners = (type: 'add' | 'remove') => {\n const method = type === 'add' ? 'addEventListener' : 'removeEventListener';\n document[method]('mouseup', handleRelease);\n document[method]('touchend', handleRelease);\n document[method]('mousemove', handleTouchMove);\n document[method]('touchmove', handleTouchMove);\n };\n\n useEffect(() => {\n if (Array.isArray(currentValue)) {\n setTooltipPosition(currentValue[0], 0);\n setTooltipPosition(currentValue[1], 1);\n } else {\n setTooltipPosition(currentValue, 0);\n }\n }, [currentValue]);\n\n useEffect(() => {\n if (valueToString(value) !== valueToString(currentValue)) {\n setCurrentValue(value);\n setTooltipPosition(getActiveValue(value, activeButton.current), 0);\n setCurrentButton(null);\n activeButton.current = null;\n }\n }, [value]);\n\n useEffect(() => {\n const newValue = Array.isArray(currentValue)\n ? ([\n getNewValue(currentValue[0], currentValue[0], step, min, max, 0),\n getNewValue(currentValue[1], currentValue[1], step, min, max, 1),\n ] as SliderValue<RANGE>)\n : (getNewValue(\n currentValue,\n currentValue,\n step,\n min,\n max,\n 0,\n ) as SliderValue<RANGE>);\n if (valueToString(newValue) !== valueToString(currentValue)) {\n onChangeRef.current?.(newValue, {});\n }\n }, [step]);\n\n useEffect(() => {\n if (typeof value !== 'undefined') {\n const targetValue = isRangeParams(props)\n ? ([\n getValidValue(props.value[0], min, max, step),\n getValidValue(props.value[1], min, max, step),\n ] as [number, number])\n : getValidValue(props.value as number, min, max, step);\n\n setCurrentValue(targetValue);\n }\n }, [range, typeof value]);\n\n useEffect(() => {\n if (isRangeParams(props) && props.value[0] > props.value[1]) {\n const newValue: SliderValue<true> = [props.value[1], props.value[1]];\n onChangeRef.current?.(newValue as SliderValue<RANGE>, {});\n }\n }, []);\n\n const onSliderClick = (e: React.MouseEvent) => {\n if (isNotRangeParams(props) && !disabled) {\n const positionValue = getValueByPosition(\n { x: e.pageX, y: e.pageY },\n sliderRef,\n minValue,\n maxValue,\n step,\n );\n const newValue = getNewValue(\n positionValue,\n currentValue,\n dragStepValue,\n min,\n max,\n activeButton.current,\n ) as SliderValue<RANGE>;\n if (newValue !== value) {\n setCurrentValue(newValue);\n setTooltipPosition(getActiveValue(newValue, 0), 0);\n onChangeRef.current?.(newValue, {\n e,\n });\n }\n }\n };\n\n const onKeyPress = useCallback(\n (event: React.KeyboardEvent, typeButton: ActiveButton) => {\n if (\n !disabled &&\n typeof typeButton === 'number' &&\n typeof currentValue !== 'undefined'\n ) {\n event.preventDefault();\n event.stopPropagation();\n let stepIncrement = !Array.isArray(step) ? step || 1 : 1;\n let validKeyCode = false;\n const changedValue = getActiveValue(currentValue, typeButton);\n switch (event.key) {\n case 'ArrowUp':\n case 'ArrowRight':\n case '+':\n validKeyCode = true;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n case '-':\n validKeyCode = true;\n stepIncrement *= -1;\n break;\n default:\n break;\n }\n if (validKeyCode) {\n if (Array.isArray(step)) {\n step.forEach((stepPoint, index) => {\n if (\n typeof typeButton === 'number' &&\n changedValue === stepPoint\n ) {\n if (stepIncrement >= 0) {\n if (index === 0) {\n stepIncrement = step[1] - minValue;\n } else {\n stepIncrement =\n (typeof step[index + 1] !== 'undefined'\n ? step[index + 1]\n : maxValue) - stepPoint;\n }\n } else if (index === 0) {\n stepIncrement = minValue - step[1];\n } else {\n stepIncrement =\n (typeof step[index - 1] !== 'undefined'\n ? step[index - 1]\n : minValue) - stepPoint;\n }\n }\n });\n }\n const newValue = getNewValue(\n changedValue + stepIncrement,\n currentValue,\n step,\n min,\n max,\n typeButton,\n ) as SliderValue<RANGE>;\n\n setCurrentValue(newValue);\n setTooltipPosition(getActiveValue(newValue, typeButton), typeButton);\n onChangeRef.current?.(newValue, {\n e: event,\n });\n }\n }\n },\n [currentValue, step, min, max],\n );\n\n const setTooltipPosition = (value: number, position: ActiveButton) => {\n if (sliderRef.current && typeof position === 'number') {\n const button = buttonRefs[position].current || sliderRef.current;\n const { x, width } = sliderRef.current.getBoundingClientRect();\n const newPosition = {\n y: button.offsetTop + button.offsetHeight + 50,\n x: x + Math.abs((value - minValue) / (maxValue - minValue)) * width,\n };\n if (position === 0) {\n setLeftPopover(newPosition);\n } else {\n setRightPopover(newPosition);\n }\n }\n };\n\n const changePosition = (event: Event) => {\n const nativeEvent = event as MouseEvent | TouchEvent;\n if (typeof activeButton.current !== 'number') {\n return value;\n }\n const position = trackPosition(nativeEvent);\n const positionValue = getValueByPosition(\n position,\n sliderRef,\n minValue,\n maxValue,\n step,\n );\n return getNewValue(\n positionValue,\n currentValue,\n dragStepValue,\n min,\n max,\n activeButton.current,\n );\n };\n\n const onFocus = (\n e: React.FocusEvent | React.MouseEvent,\n button: ActiveButton,\n ) => {\n setCurrentButton(button);\n activeButton.current = button;\n };\n\n const handleTouchMove = (\n event: MouseEvent | TouchEvent | Event,\n typeButton?: ActiveButton,\n ) => {\n const button = typeButton || activeButton.current;\n if (typeof button === 'number') {\n const position = changePosition(event) as SliderValue<RANGE>;\n const oldValue: number = getActiveValue(currentValue, button);\n const newValue: number = getActiveValue(position, button);\n setCurrentValue(position);\n if (valueToString(oldValue) !== valueToString(newValue)) {\n onAfterChangeRef.current?.(position, { e: event });\n }\n }\n };\n\n useEffect(() => {\n if (isRangeParams(props)) {\n props.value?.forEach((val, index) => {\n setTooltipPosition(\n getActiveValue(val, activeButton.current),\n index === 0 ? 0 : 1,\n );\n });\n }\n if (isNotRangeParams(props)) {\n setTooltipPosition(getActiveValue(value, activeButton.current), 0);\n }\n activeButton.current = null;\n }, [sizeSlider, typeof value]);\n\n const handleRelease = useCallback(\n (e: MouseEvent | TouchEvent | Event) => {\n controlListeners('remove');\n if (isRangeParams(props) && Array.isArray(currentValueRef.current)) {\n const copyValues = [...currentValueRef.current].sort(\n (a, b) => Number(a) - Number(b),\n ) as SliderValue<true>;\n onChangeRef.current?.(copyValues as SliderValue<RANGE>, { e });\n }\n if (\n isNotRangeParams(props) &&\n typeof currentValueRef.current === 'number'\n ) {\n onChangeRef.current?.(currentValueRef.current as SliderValue<RANGE>, {\n e,\n });\n }\n setCurrentButton(null);\n activeButton.current = null;\n },\n [value, handleTouchMove],\n );\n\n const handlePress = useCallback(\n (typeButton: ActiveButton) => {\n if (!disabled) {\n setCurrentButton(typeButton);\n activeButton.current = typeButton;\n controlListeners('add');\n }\n },\n [currentValue, value, handleTouchMove, disabled],\n );\n\n return {\n onKeyPress,\n onFocus,\n handlePress,\n onSliderClick,\n activeButton: currentButton,\n popoverPosition: [leftPopover, rightPopover],\n currentValue: Array.isArray(currentValue) ? currentValue : [currentValue],\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useSlider.js","names":["useCallback","useEffect","useMemo","useRef","useState","useClickOutside","useComponentSize","useMutableRef","getActiveValue","getNewValue","getValidValue","getValueByPosition","isNotRangeParams","isRangeParams","trackPosition","valueToString","COUNT_STEPS","useSlider","props","disabled","range","value","min","max","step","onChange","onAfterChange","sliderRef","containerRef","buttonRefs","minValue","maxValue","dragStepValue","Array","isArray","val","Math","abs","currentValue","setCurrentValue","leftPopover","setLeftPopover","rightPopover","setRightPopover","currentButton","setCurrentButton","activeButton","sizeSlider","currentValueRef","onChangeRef","onAfterChangeRef","isActive","ignoreClicksInsideRefs","handler","current","controlListeners","type","method","document","handleRelease","handleTouchMove","setTooltipPosition","newValue","targetValue","onKeyPress","event","typeButton","stepIncrement","validKeyCode","changedValue","key","preventDefault","stopPropagation","forEach","stepPoint","index","e","position","button","getBoundingClientRect","x","width","newPosition","y","offsetTop","offsetHeight","changePosition","positionValue","oldValue","copyValues","sort","a","b","handlePress","onFocus","onSliderClick","pageX","pageY","popoverPosition"],"sources":["../../../../../../src/components/Slider/useSlider/useSlider.ts"],"sourcesContent":["import React, {\n MutableRefObject,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useComponentSize } from '##/hooks/useComponentSize/useComponentSize';\nimport { useMutableRef } from '##/hooks/useMutableRef/useMutableRef';\n\nimport { SliderValue, TrackPosition } from '../helper';\nimport {\n ActiveButton,\n getActiveValue,\n getNewValue,\n getValidValue,\n getValueByPosition,\n isNotRangeParams,\n isRangeParams,\n trackPosition,\n UseSliderProps,\n UseSliderValues,\n valueToString,\n} from './helper';\n\nexport const COUNT_STEPS = 250;\n\nexport function useSlider<RANGE extends boolean>(\n props: UseSliderProps<RANGE>,\n): UseSliderValues {\n const {\n disabled,\n range,\n value,\n min,\n max,\n step = 1,\n onChange,\n onAfterChange,\n sliderRef,\n containerRef,\n buttonRefs,\n } = props;\n\n const minValue = max > min ? min : 0;\n const maxValue = max > min ? max : 100;\n\n const dragStepValue = useMemo(() => {\n if (!Array.isArray(step)) {\n if (step >= 1) {\n const val = Math.abs((maxValue - minValue) / COUNT_STEPS);\n if (val > step) {\n return val - (val % step);\n }\n return Math.max(val, step);\n }\n }\n return step;\n }, [max, min, step]);\n\n const [currentValue, setCurrentValue] = useState<number | [number, number]>(\n value,\n );\n const [leftPopover, setLeftPopover] = useState<TrackPosition>(null);\n const [rightPopover, setRightPopover] = useState<TrackPosition>(null);\n const [currentButton, setCurrentButton] = useState<ActiveButton | null>(null);\n\n const activeButton: MutableRefObject<ActiveButton | null> = useRef(null);\n\n const sizeSlider = useComponentSize(sliderRef);\n\n const currentValueRef = useMutableRef(currentValue);\n const onChangeRef = useMutableRef(onChange);\n const onAfterChangeRef = useMutableRef(onAfterChange);\n\n useClickOutside({\n isActive: true,\n ignoreClicksInsideRefs: [containerRef],\n handler: () => {\n setCurrentButton(null);\n activeButton.current = null;\n },\n });\n\n useEffect(() => {\n if (disabled) {\n controlListeners('remove');\n }\n }, [disabled]);\n\n const controlListeners = (type: 'add' | 'remove') => {\n const method = type === 'add' ? 'addEventListener' : 'removeEventListener';\n document[method]('mouseup', handleRelease);\n document[method]('touchend', handleRelease);\n document[method]('mousemove', handleTouchMove);\n document[method]('touchmove', handleTouchMove);\n };\n\n useEffect(() => {\n if (Array.isArray(currentValue)) {\n setTooltipPosition(currentValue[0], 0);\n setTooltipPosition(currentValue[1], 1);\n } else {\n setTooltipPosition(currentValue, 0);\n }\n }, [currentValue]);\n\n useEffect(() => {\n if (valueToString(value) !== valueToString(currentValue)) {\n setCurrentValue(value);\n setTooltipPosition(getActiveValue(value, activeButton.current), 0);\n setCurrentButton(null);\n activeButton.current = null;\n }\n }, [value]);\n\n useEffect(() => {\n const newValue = Array.isArray(currentValue)\n ? ([\n getNewValue(currentValue[0], currentValue[0], step, min, max, 0),\n getNewValue(currentValue[1], currentValue[1], step, min, max, 1),\n ] as SliderValue<RANGE>)\n : (getNewValue(\n currentValue,\n currentValue,\n step,\n min,\n max,\n 0,\n ) as SliderValue<RANGE>);\n if (valueToString(newValue) !== valueToString(currentValue)) {\n onChangeRef.current?.(newValue, {});\n }\n }, [step]);\n\n useEffect(() => {\n if (typeof value !== 'undefined') {\n const targetValue = isRangeParams(props)\n ? ([\n getValidValue(props.value[0], min, max, step),\n getValidValue(props.value[1], min, max, step),\n ] as [number, number])\n : getValidValue(props.value as number, min, max, step);\n\n setCurrentValue(targetValue);\n }\n }, [range, typeof value]);\n\n useEffect(() => {\n if (isRangeParams(props) && props.value[0] > props.value[1]) {\n const newValue: SliderValue<true> = [props.value[1], props.value[1]];\n onChangeRef.current?.(newValue as SliderValue<RANGE>, {});\n }\n }, []);\n\n const onSliderClick = (e: React.MouseEvent) => {\n if (isNotRangeParams(props) && !disabled) {\n const positionValue = getValueByPosition(\n { x: e.pageX, y: e.pageY },\n sliderRef,\n minValue,\n maxValue,\n step,\n );\n const newValue = getNewValue(\n positionValue,\n currentValue,\n dragStepValue,\n min,\n max,\n activeButton.current,\n ) as SliderValue<RANGE>;\n if (newValue !== value) {\n setCurrentValue(newValue);\n setTooltipPosition(getActiveValue(newValue, 0), 0);\n onChangeRef.current?.(newValue, {\n e,\n });\n }\n }\n };\n\n const onKeyPress = useCallback(\n (event: React.KeyboardEvent, typeButton: ActiveButton) => {\n if (\n !disabled &&\n typeof typeButton === 'number' &&\n typeof currentValue !== 'undefined'\n ) {\n let stepIncrement = !Array.isArray(step) ? step || 1 : 1;\n let validKeyCode = false;\n const changedValue = getActiveValue(currentValue, typeButton);\n switch (event.key) {\n case 'ArrowUp':\n case 'ArrowRight':\n case '+':\n validKeyCode = true;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n case '-':\n validKeyCode = true;\n stepIncrement *= -1;\n break;\n default:\n break;\n }\n if (validKeyCode) {\n event.preventDefault();\n event.stopPropagation();\n if (Array.isArray(step)) {\n step.forEach((stepPoint, index) => {\n if (\n typeof typeButton === 'number' &&\n changedValue === stepPoint\n ) {\n if (stepIncrement >= 0) {\n if (index === 0) {\n stepIncrement = step[1] - minValue;\n } else {\n stepIncrement =\n (typeof step[index + 1] !== 'undefined'\n ? step[index + 1]\n : maxValue) - stepPoint;\n }\n } else if (index === 0) {\n stepIncrement = minValue - step[1];\n } else {\n stepIncrement =\n (typeof step[index - 1] !== 'undefined'\n ? step[index - 1]\n : minValue) - stepPoint;\n }\n }\n });\n }\n const newValue = getNewValue(\n changedValue + stepIncrement,\n currentValue,\n step,\n min,\n max,\n typeButton,\n ) as SliderValue<RANGE>;\n\n setCurrentValue(newValue);\n setTooltipPosition(getActiveValue(newValue, typeButton), typeButton);\n onChangeRef.current?.(newValue, {\n e: event,\n });\n }\n }\n },\n [currentValue, step, min, max],\n );\n\n const setTooltipPosition = (value: number, position: ActiveButton) => {\n if (sliderRef.current && typeof position === 'number') {\n const button = buttonRefs[position].current || sliderRef.current;\n const { x, width } = sliderRef.current.getBoundingClientRect();\n const newPosition = {\n y: button.offsetTop + button.offsetHeight + 50,\n x: x + Math.abs((value - minValue) / (maxValue - minValue)) * width,\n };\n if (position === 0) {\n setLeftPopover(newPosition);\n } else {\n setRightPopover(newPosition);\n }\n }\n };\n\n const changePosition = (event: Event) => {\n const nativeEvent = event as MouseEvent | TouchEvent;\n if (typeof activeButton.current !== 'number') {\n return value;\n }\n const position = trackPosition(nativeEvent);\n const positionValue = getValueByPosition(\n position,\n sliderRef,\n minValue,\n maxValue,\n step,\n );\n return getNewValue(\n positionValue,\n currentValue,\n dragStepValue,\n min,\n max,\n activeButton.current,\n );\n };\n\n const onFocus = (\n e: React.FocusEvent | React.MouseEvent,\n button: ActiveButton,\n ) => {\n setCurrentButton(button);\n activeButton.current = button;\n };\n\n const handleTouchMove = (\n event: MouseEvent | TouchEvent | Event,\n typeButton?: ActiveButton,\n ) => {\n const button = typeButton || activeButton.current;\n if (typeof button === 'number') {\n const position = changePosition(event) as SliderValue<RANGE>;\n const oldValue: number = getActiveValue(currentValue, button);\n const newValue: number = getActiveValue(position, button);\n setCurrentValue(position);\n if (valueToString(oldValue) !== valueToString(newValue)) {\n onAfterChangeRef.current?.(position, { e: event });\n }\n }\n };\n\n useEffect(() => {\n if (isRangeParams(props)) {\n props.value?.forEach((val, index) => {\n setTooltipPosition(\n getActiveValue(val, activeButton.current),\n index === 0 ? 0 : 1,\n );\n });\n }\n if (isNotRangeParams(props)) {\n setTooltipPosition(getActiveValue(value, activeButton.current), 0);\n }\n activeButton.current = null;\n }, [sizeSlider, typeof value]);\n\n const handleRelease = useCallback(\n (e: MouseEvent | TouchEvent | Event) => {\n controlListeners('remove');\n if (isRangeParams(props) && Array.isArray(currentValueRef.current)) {\n const copyValues = [...currentValueRef.current].sort(\n (a, b) => Number(a) - Number(b),\n ) as SliderValue<true>;\n onChangeRef.current?.(copyValues as SliderValue<RANGE>, { e });\n }\n if (\n isNotRangeParams(props) &&\n typeof currentValueRef.current === 'number'\n ) {\n onChangeRef.current?.(currentValueRef.current as SliderValue<RANGE>, {\n e,\n });\n }\n setCurrentButton(null);\n activeButton.current = null;\n },\n [value, handleTouchMove],\n );\n\n const handlePress = useCallback(\n (typeButton: ActiveButton) => {\n if (!disabled) {\n setCurrentButton(typeButton);\n activeButton.current = typeButton;\n controlListeners('add');\n }\n },\n [currentValue, value, handleTouchMove, disabled],\n );\n\n return {\n onKeyPress,\n onFocus,\n handlePress,\n onSliderClick,\n activeButton: currentButton,\n popoverPosition: [leftPopover, rightPopover],\n currentValue: Array.isArray(currentValue) ? currentValue : [currentValue],\n };\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@consta/uikit",
3
- "version": "5.27.0",
3
+ "version": "5.27.1",
4
4
  "keywords": [
5
5
  "ui-kit",
6
6
  "design-system",