@consta/uikit 4.5.1 → 4.6.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.
- package/AutoCompleteCanary/index.d.ts +1 -0
- package/AutoCompleteCanary/index.js +1 -0
- package/__internal__/src/components/AutoCompleteCanary/index.d.ts +1 -0
- package/__internal__/src/components/AutoCompleteCanary/index.js +2 -0
- package/__internal__/src/components/AutoCompleteCanary/index.js.map +1 -0
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.css +1 -1
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.js +1 -1
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.js.map +1 -1
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js +1 -1
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js.map +1 -1
- package/__internal__/src/components/Breadcrumbs/useElements.js +1 -1
- package/__internal__/src/components/Breadcrumbs/useElements.js.map +1 -1
- package/__internal__/src/components/Collapse/Collapse.css +1 -1
- package/__internal__/src/components/Collapse/Collapse.js +1 -1
- package/__internal__/src/components/Collapse/Collapse.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/types.d.ts +1 -0
- package/__internal__/src/components/DatePicker/types.js.map +1 -1
- package/__internal__/src/components/FieldCaption/FieldCaption.js +1 -1
- package/__internal__/src/components/FieldCaption/FieldCaption.js.map +1 -1
- package/__internal__/src/components/Popover/Popover.js +1 -1
- package/__internal__/src/components/Popover/Popover.js.map +1 -1
- package/__internal__/src/components/ProgressStepBar/ProgressStepBarItem/ProgressStepBarItem.css +1 -1
- package/__internal__/src/components/ProgressStepBar/ProgressStepBarItem/ProgressStepBarItem.js +1 -1
- package/__internal__/src/components/ProgressStepBar/ProgressStepBarItem/ProgressStepBarItem.js.map +1 -1
- package/__internal__/src/components/ProgressStepBar/helpers.d.ts +1 -1
- package/__internal__/src/components/ProgressStepBar/helpers.js.map +1 -1
- package/__internal__/src/hooks/useMouseLeave/index.d.ts +1 -0
- package/__internal__/src/hooks/useMouseLeave/index.js +2 -0
- package/__internal__/src/hooks/useMouseLeave/index.js.map +1 -0
- package/__internal__/src/hooks/useMouseLeave/useMouseLeave.d.ts +9 -0
- package/__internal__/src/hooks/useMouseLeave/useMouseLeave.js +2 -0
- package/__internal__/src/hooks/useMouseLeave/useMouseLeave.js.map +1 -0
- package/__internal__/src/uiKit/components/DocsDecorator/DocsDecorator.d.ts +0 -1
- package/__internal__/src/uiKit/components/DocsDecorator/DocsDecorator.js +1 -1
- package/__internal__/src/uiKit/components/DocsDecorator/DocsDecorator.js.map +1 -1
- package/__internal__/src/uiKit/components/DocsExample/DocsExample.css +1 -1
- package/__internal__/src/uiKit/components/DocsExample/index.d.ts +1 -0
- package/__internal__/src/uiKit/components/DocsExample/index.js +2 -0
- package/__internal__/src/uiKit/components/DocsExample/index.js.map +1 -0
- package/__internal__/src/uiKit/whitepaper/whitepaper.d.ts +1 -0
- package/__internal__/src/uiKit/whitepaper/whitepaper.js +1 -1
- package/__internal__/src/uiKit/whitepaper/whitepaper.js.map +1 -1
- package/package.json +1 -1
- package/useMouseLeave/index.d.ts +1 -0
- package/useMouseLeave/index.js +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../__internal__/src/components/AutoCompleteCanary";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../__internal__/src/components/AutoCompleteCanary";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './AutoCompleteCanary';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/AutoCompleteCanary/index.ts"],"sourcesContent":["export * from './AutoCompleteCanary';\n"],"mappings":"AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.BreadcrumbsFitModeDropdown_compression_s{--breadcrumbs-item-width:45%}.BreadcrumbsFitModeDropdown_compression_m{--breadcrumbs-item-width:40%}.BreadcrumbsFitModeDropdown_compression_l{--breadcrumbs-item-width:35%}.BreadcrumbsFitModeDropdown_compression_xl{--breadcrumbs-item-width:30%}
|
|
1
|
+
.BreadcrumbsFitModeDropdown_compression_s{--breadcrumbs-item-width:45%}.BreadcrumbsFitModeDropdown_compression_m{--breadcrumbs-item-width:40%}.BreadcrumbsFitModeDropdown_compression_l{--breadcrumbs-item-width:35%}.BreadcrumbsFitModeDropdown_compression_xl{--breadcrumbs-item-width:30%}.BreadcrumbsFitModeDropdown-Item_removed.BreadcrumbsItem{display:none}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","className","renderItem"];import"./BreadcrumbsFitModeDropdown.css";import React,{forwardRef}from"react";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{cn}from"../../../utils/bem";import{BreadcrumbsMore}from"../BreadcrumbsMore/BreadcrumbsMore";import{useElements}from"../useElements";export var cnBreadcrumbsFitModeDropdown=cn("BreadcrumbsFitModeDropdown");export var BreadcrumbsFitModeDropdown=forwardRef(function(a,b){var c=a.items,d=a.getItemHref,e=a.getItemLabel,f=a.getItemIcon,g=a.getItemOnClick,h=a.getItemSubMenu,i=a.onItemClick,j=a.size,k=a.className,l=a.renderItem,m=_objectWithoutProperties(a,_excluded),n=useElements(c),o=n.firstItem,p=n.lastItem,q=n.readyToHideItems,r=n.hiddenItems,s=n.itemsRefs,t=n.wrapperRef,u=n.moreRef,v=n.firstItemRef,w=n.lastItemRef,x=n.lastWidth,y=n.compression,z=useForkRef([b,t]);return React.createElement("ul",Object.assign({className:cnBreadcrumbsFitModeDropdown({compression:y},[k]),ref:z},m,{style:_defineProperty({},"--breadcrumbs-item-last-width",x)}),l(o,"first",!0,!1,v),React.createElement(BreadcrumbsMore,{size:j,getItemHref:d,getItemIcon:f,getItemLabel:e,getItemOnClick:g,onItemClick:i,getItemSubMenu:h,items:r,ref:u,className:cnBreadcrumbsFitModeDropdown("Item",{removed:0>=r.length})}),q.map(function(a,b){return l(a,b,!1,!1,s[b],!!r[b])}),l(p,"last",!1,!0,w))});
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","className","renderItem"];import"./BreadcrumbsFitModeDropdown.css";import React,{forwardRef}from"react";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{cn}from"../../../utils/bem";import{BreadcrumbsMore}from"../BreadcrumbsMore/BreadcrumbsMore";import{useElements}from"../useElements";export var cnBreadcrumbsFitModeDropdown=cn("BreadcrumbsFitModeDropdown");export var BreadcrumbsFitModeDropdown=forwardRef(function(a,b){var c=a.items,d=a.getItemHref,e=a.getItemLabel,f=a.getItemIcon,g=a.getItemOnClick,h=a.getItemSubMenu,i=a.onItemClick,j=a.size,k=a.className,l=a.renderItem,m=_objectWithoutProperties(a,_excluded),n=useElements(c),o=n.firstItem,p=n.lastItem,q=n.readyToHideItems,r=n.hiddenItems,s=n.itemsRefs,t=n.wrapperRef,u=n.moreRef,v=n.firstItemRef,w=n.lastItemRef,x=n.lastWidth,y=n.compression,z=useForkRef([b,t]);return React.createElement("ul",Object.assign({className:cnBreadcrumbsFitModeDropdown({compression:y},[k]),ref:z},m,{style:_defineProperty({},"--breadcrumbs-item-last-width",x)}),l(o,"first",!0,!1,v),React.createElement(BreadcrumbsMore,{size:j,key:cnBreadcrumbsFitModeDropdown("More"),getItemHref:d,getItemIcon:f,getItemLabel:e,getItemOnClick:g,onItemClick:i,getItemSubMenu:h,items:r,ref:u,className:cnBreadcrumbsFitModeDropdown("Item",{removed:0>=r.length})}),q.map(function(a,b){return l(a,b,!1,!1,s[b],!!r[b])}),l(p,"last",!1,!0,w))});
|
|
2
2
|
//# sourceMappingURL=BreadcrumbsFitModeDropdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreadcrumbsFitModeDropdown.js","names":["React","forwardRef","useForkRef","cn","BreadcrumbsMore","useElements","cnBreadcrumbsFitModeDropdown","BreadcrumbsFitModeDropdown","props","ref","items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","className","renderItem","otherProps","firstItem","lastItem","readyToHideItems","hiddenItems","itemsRefs","wrapperRef","moreRef","firstItemRef","lastItemRef","lastWidth","compression","rootRef","removed","length","map","item","index"],"sources":["../../../../../../src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.tsx"],"sourcesContent":["import './BreadcrumbsFitModeDropdown.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport { cn } from '../../../utils/bem';\nimport { BreadcrumbsMore } from '../BreadcrumbsMore/BreadcrumbsMore';\nimport { BreadcrumbsFitModeDropdownComponent } from '../types';\nimport { useElements } from '../useElements';\n\nexport const cnBreadcrumbsFitModeDropdown = cn('BreadcrumbsFitModeDropdown');\n\nexport const BreadcrumbsFitModeDropdown: BreadcrumbsFitModeDropdownComponent =\n forwardRef((props, ref) => {\n const {\n items,\n getItemHref,\n getItemLabel,\n getItemIcon,\n getItemOnClick,\n getItemSubMenu,\n onItemClick,\n size,\n className,\n renderItem,\n ...otherProps\n } = props;\n\n const {\n firstItem,\n lastItem,\n readyToHideItems,\n hiddenItems,\n itemsRefs,\n wrapperRef,\n moreRef,\n firstItemRef,\n lastItemRef,\n lastWidth,\n compression,\n } = useElements(items);\n\n const rootRef = useForkRef([ref, wrapperRef]);\n\n return (\n <ul\n className={cnBreadcrumbsFitModeDropdown({ compression }, [className])}\n ref={rootRef}\n {...otherProps}\n style={{ ['--breadcrumbs-item-last-width' as string]: lastWidth }}\n >\n {renderItem(firstItem, 'first', true, false, firstItemRef)}\n <BreadcrumbsMore\n size={size}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n onItemClick={onItemClick}\n getItemSubMenu={getItemSubMenu}\n items={hiddenItems}\n ref={moreRef}\n className={cnBreadcrumbsFitModeDropdown('Item', {\n removed: hiddenItems.length <= 0,\n })}\n />\n {readyToHideItems.map((item, index) =>\n renderItem(\n item,\n index,\n false,\n false,\n itemsRefs[index],\n !!hiddenItems[index],\n ),\n )}\n {renderItem(lastItem, 'last', false, true, lastItemRef)}\n </ul>\n );\n });\n"],"mappings":"2SAAA,yCAEA,MAAOA,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OAASC,UAAT,4CACA,OAASC,EAAT,0BACA,OAASC,eAAT,0CAEA,OAASC,WAAT,sBAEA,MAAO,IAAMC,6BAA4B,CAAGH,EAAE,CAAC,4BAAD,CAAvC,CAEP,MAAO,IAAMI,2BAA+D,CAC1EN,UAAU,CAAC,SAACO,CAAD,CAAQC,CAAR,CAAgB,IAEvBC,EAFuB,CAarBF,CAbqB,CAEvBE,KAFuB,CAGvBC,CAHuB,CAarBH,CAbqB,CAGvBG,WAHuB,CAIvBC,CAJuB,CAarBJ,CAbqB,CAIvBI,YAJuB,CAKvBC,CALuB,CAarBL,CAbqB,CAKvBK,WALuB,CAMvBC,CANuB,CAarBN,CAbqB,CAMvBM,cANuB,CAOvBC,CAPuB,CAarBP,CAbqB,CAOvBO,cAPuB,CAQvBC,CARuB,CAarBR,CAbqB,CAQvBQ,WARuB,CASvBC,CATuB,CAarBT,CAbqB,CASvBS,IATuB,CAUvBC,CAVuB,CAarBV,CAbqB,CAUvBU,SAVuB,CAWvBC,CAXuB,CAarBX,CAbqB,CAWvBW,UAXuB,CAYpBC,CAZoB,0BAarBZ,CAbqB,cA2BrBH,WAAW,CAACK,CAAD,CA3BU,CAgBvBW,CAhBuB,GAgBvBA,SAhBuB,CAiBvBC,CAjBuB,GAiBvBA,QAjBuB,CAkBvBC,CAlBuB,GAkBvBA,gBAlBuB,CAmBvBC,CAnBuB,GAmBvBA,WAnBuB,CAoBvBC,CApBuB,GAoBvBA,SApBuB,CAqBvBC,CArBuB,GAqBvBA,UArBuB,CAsBvBC,CAtBuB,GAsBvBA,OAtBuB,CAuBvBC,CAvBuB,GAuBvBA,YAvBuB,CAwBvBC,CAxBuB,GAwBvBA,WAxBuB,CAyBvBC,CAzBuB,GAyBvBA,SAzBuB,CA0BvBC,CA1BuB,GA0BvBA,WA1BuB,CA6BnBC,CAAO,CAAG9B,UAAU,CAAC,CAACO,CAAD,CAAMiB,CAAN,CAAD,CA7BD,CA+BzB,MACE,yCACE,SAAS,CAAEpB,4BAA4B,CAAC,CAAEyB,WAAW,CAAXA,CAAF,CAAD,CAAkB,CAACb,CAAD,CAAlB,CADzC,CAEE,GAAG,CAAEc,CAFP,EAGMZ,CAHN,EAIE,KAAK,oBAAK,+BAAL,CAAiDU,CAAjD,CAJP,GAMGX,CAAU,CAACE,CAAD,CAAY,OAAZ,OAAkCO,CAAlC,CANb,CAOE,oBAAC,eAAD,EACE,IAAI,CAAEX,CADR,CAEE,
|
|
1
|
+
{"version":3,"file":"BreadcrumbsFitModeDropdown.js","names":["React","forwardRef","useForkRef","cn","BreadcrumbsMore","useElements","cnBreadcrumbsFitModeDropdown","BreadcrumbsFitModeDropdown","props","ref","items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","className","renderItem","otherProps","firstItem","lastItem","readyToHideItems","hiddenItems","itemsRefs","wrapperRef","moreRef","firstItemRef","lastItemRef","lastWidth","compression","rootRef","removed","length","map","item","index"],"sources":["../../../../../../src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.tsx"],"sourcesContent":["import './BreadcrumbsFitModeDropdown.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport { cn } from '../../../utils/bem';\nimport { BreadcrumbsMore } from '../BreadcrumbsMore/BreadcrumbsMore';\nimport { BreadcrumbsFitModeDropdownComponent } from '../types';\nimport { useElements } from '../useElements';\n\nexport const cnBreadcrumbsFitModeDropdown = cn('BreadcrumbsFitModeDropdown');\n\nexport const BreadcrumbsFitModeDropdown: BreadcrumbsFitModeDropdownComponent =\n forwardRef((props, ref) => {\n const {\n items,\n getItemHref,\n getItemLabel,\n getItemIcon,\n getItemOnClick,\n getItemSubMenu,\n onItemClick,\n size,\n className,\n renderItem,\n ...otherProps\n } = props;\n\n const {\n firstItem,\n lastItem,\n readyToHideItems,\n hiddenItems,\n itemsRefs,\n wrapperRef,\n moreRef,\n firstItemRef,\n lastItemRef,\n lastWidth,\n compression,\n } = useElements(items);\n\n const rootRef = useForkRef([ref, wrapperRef]);\n\n return (\n <ul\n className={cnBreadcrumbsFitModeDropdown({ compression }, [className])}\n ref={rootRef}\n {...otherProps}\n style={{ ['--breadcrumbs-item-last-width' as string]: lastWidth }}\n >\n {renderItem(firstItem, 'first', true, false, firstItemRef)}\n <BreadcrumbsMore\n size={size}\n key={cnBreadcrumbsFitModeDropdown('More')}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n onItemClick={onItemClick}\n getItemSubMenu={getItemSubMenu}\n items={hiddenItems}\n ref={moreRef}\n className={cnBreadcrumbsFitModeDropdown('Item', {\n removed: hiddenItems.length <= 0,\n })}\n />\n {readyToHideItems.map((item, index) =>\n renderItem(\n item,\n index,\n false,\n false,\n itemsRefs[index],\n !!hiddenItems[index],\n ),\n )}\n {renderItem(lastItem, 'last', false, true, lastItemRef)}\n </ul>\n );\n });\n"],"mappings":"2SAAA,yCAEA,MAAOA,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OAASC,UAAT,4CACA,OAASC,EAAT,0BACA,OAASC,eAAT,0CAEA,OAASC,WAAT,sBAEA,MAAO,IAAMC,6BAA4B,CAAGH,EAAE,CAAC,4BAAD,CAAvC,CAEP,MAAO,IAAMI,2BAA+D,CAC1EN,UAAU,CAAC,SAACO,CAAD,CAAQC,CAAR,CAAgB,IAEvBC,EAFuB,CAarBF,CAbqB,CAEvBE,KAFuB,CAGvBC,CAHuB,CAarBH,CAbqB,CAGvBG,WAHuB,CAIvBC,CAJuB,CAarBJ,CAbqB,CAIvBI,YAJuB,CAKvBC,CALuB,CAarBL,CAbqB,CAKvBK,WALuB,CAMvBC,CANuB,CAarBN,CAbqB,CAMvBM,cANuB,CAOvBC,CAPuB,CAarBP,CAbqB,CAOvBO,cAPuB,CAQvBC,CARuB,CAarBR,CAbqB,CAQvBQ,WARuB,CASvBC,CATuB,CAarBT,CAbqB,CASvBS,IATuB,CAUvBC,CAVuB,CAarBV,CAbqB,CAUvBU,SAVuB,CAWvBC,CAXuB,CAarBX,CAbqB,CAWvBW,UAXuB,CAYpBC,CAZoB,0BAarBZ,CAbqB,cA2BrBH,WAAW,CAACK,CAAD,CA3BU,CAgBvBW,CAhBuB,GAgBvBA,SAhBuB,CAiBvBC,CAjBuB,GAiBvBA,QAjBuB,CAkBvBC,CAlBuB,GAkBvBA,gBAlBuB,CAmBvBC,CAnBuB,GAmBvBA,WAnBuB,CAoBvBC,CApBuB,GAoBvBA,SApBuB,CAqBvBC,CArBuB,GAqBvBA,UArBuB,CAsBvBC,CAtBuB,GAsBvBA,OAtBuB,CAuBvBC,CAvBuB,GAuBvBA,YAvBuB,CAwBvBC,CAxBuB,GAwBvBA,WAxBuB,CAyBvBC,CAzBuB,GAyBvBA,SAzBuB,CA0BvBC,CA1BuB,GA0BvBA,WA1BuB,CA6BnBC,CAAO,CAAG9B,UAAU,CAAC,CAACO,CAAD,CAAMiB,CAAN,CAAD,CA7BD,CA+BzB,MACE,yCACE,SAAS,CAAEpB,4BAA4B,CAAC,CAAEyB,WAAW,CAAXA,CAAF,CAAD,CAAkB,CAACb,CAAD,CAAlB,CADzC,CAEE,GAAG,CAAEc,CAFP,EAGMZ,CAHN,EAIE,KAAK,oBAAK,+BAAL,CAAiDU,CAAjD,CAJP,GAMGX,CAAU,CAACE,CAAD,CAAY,OAAZ,OAAkCO,CAAlC,CANb,CAOE,oBAAC,eAAD,EACE,IAAI,CAAEX,CADR,CAEE,GAAG,CAAEX,4BAA4B,CAAC,MAAD,CAFnC,CAGE,WAAW,CAAEK,CAHf,CAIE,WAAW,CAAEE,CAJf,CAKE,YAAY,CAAED,CALhB,CAME,cAAc,CAAEE,CANlB,CAOE,WAAW,CAAEE,CAPf,CAQE,cAAc,CAAED,CARlB,CASE,KAAK,CAAES,CATT,CAUE,GAAG,CAAEG,CAVP,CAWE,SAAS,CAAErB,4BAA4B,CAAC,MAAD,CAAS,CAC9C2B,OAAO,CAAwB,CAAtB,EAAAT,CAAW,CAACU,MADyB,CAAT,CAXzC,EAPF,CAsBGX,CAAgB,CAACY,GAAjB,CAAqB,SAACC,CAAD,CAAOC,CAAP,QACpBlB,EAAU,CACRiB,CADQ,CAERC,CAFQ,OAKRZ,CAAS,CAACY,CAAD,CALD,CAMR,CAAC,CAACb,CAAW,CAACa,CAAD,CANL,CADU,CAArB,CAtBH,CAgCGlB,CAAU,CAACG,CAAD,CAAW,MAAX,OAAgCO,CAAhC,CAhCb,CAmCH,CAnES,CADL"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","className","style","getItemHref","getItemIcon","getItemLabel","getItemOnClick","getItemSubMenu","onItemClick"];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"./BreadcrumbsMore.css";import React,{forwardRef,useEffect,useRef}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{cn}from"../../../utils/bem";import{getByMap}from"../../../utils/getByMap";import{Button}from"../../Button/Button";import{ContextMenu}from"../../ContextMenu/ContextMenu";import{BreadcrumbsItem}from"../BreadcrumbsItem/BreadcrumbsItem";import{iconSizeMap}from"../helpers";var cnBreadcrumbsMore=cn("BreadcrumbsMore");export function getLeftSideBar(a,b){return function(c){var d=null===b||void 0===b?void 0:b(c);return d?React.createElement(d,{size:a}):void 0}}export function getItemAs(a){return function(b){var c=null===a||void 0===a?void 0:a(b);return c?"a":"span"}}export function getItemAttributes(a){return function(b){return a&&{href:a(b)}}}export var contextMenuSizeMap={xs:"s",s:"s",m:"m",l:"l"};function BreadcrumbsMoreRender(a,b){var c=a.size,d=a.items,e=a.className,f=a.style,g=a.getItemHref,h=a.getItemIcon,i=a.getItemLabel,j=a.getItemOnClick,k=a.getItemSubMenu,l=a.onItemClick,m=_objectWithoutProperties(a,_excluded),n=useFlag(),o=_slicedToArray(n,2),p=o[0],q=o[1],r=useRef(null),s=getByMap(iconSizeMap,c);
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","className","style","getItemHref","getItemIcon","getItemLabel","getItemOnClick","getItemSubMenu","onItemClick"];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"./BreadcrumbsMore.css";import React,{forwardRef,useEffect,useRef}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{cn}from"../../../utils/bem";import{getByMap}from"../../../utils/getByMap";import{Button}from"../../Button/Button";import{ContextMenu}from"../../ContextMenu/ContextMenu";import{BreadcrumbsItem}from"../BreadcrumbsItem/BreadcrumbsItem";import{iconSizeMap}from"../helpers";var cnBreadcrumbsMore=cn("BreadcrumbsMore");export function getLeftSideBar(a,b){return function(c){var d=null===b||void 0===b?void 0:b(c);return d?React.createElement(d,{size:a}):void 0}}export function getItemAs(a){return function(b){var c=null===a||void 0===a?void 0:a(b);return c?"a":"span"}}export function getItemAttributes(a){return function(b){return a&&{href:a(b)}}}export var contextMenuSizeMap={xs:"s",s:"s",m:"m",l:"l"};function BreadcrumbsMoreRender(a,b){var c=a.size,d=a.items,e=a.className,f=a.style,g=a.getItemHref,h=a.getItemIcon,i=a.getItemLabel,j=a.getItemOnClick,k=a.getItemSubMenu,l=a.onItemClick,m=_objectWithoutProperties(a,_excluded),n=useFlag(),o=_slicedToArray(n,2),p=o[0],q=o[1],r=useRef(null),s=getByMap(iconSizeMap,c);useEffect(q.off,[d]);return React.createElement(BreadcrumbsItem,Object.assign({},m,{className:cnBreadcrumbsMore(null,[e]),delimiter:!0,size:c,ref:b,style:_objectSpread(_objectSpread({},f),{},_defineProperty({},"--breadcrumbs-more-font-size","var(--size-text-".concat(c,")")))}),React.createElement(Button,{className:cnBreadcrumbsMore("Button"),view:"clear",label:"...",size:s,ref:r,onClick:q.toogle}),React.createElement(ContextMenu,{items:d,isOpen:p,getItemLabel:i,getItemSubMenu:k,getItemOnClick:function getItemOnClick(a){return function(b){var c,d=b.e;return null===j||void 0===j||null===(c=j(a))||void 0===c?void 0:c(d)}},onItemClick:function onItemClick(a){var b,c=a.e,d=a.item;null===l||void 0===l?void 0:l({e:c,item:d}),null===j||void 0===j||null===(b=j(d))||void 0===b?void 0:b(c)},getItemLeftIcon:h,anchorRef:r,onClickOutside:q.off,getItemAs:getItemAs(g),getItemAttributes:getItemAttributes(g),direction:"downCenter",possibleDirections:["downCenter","upCenter","downStartLeft","upStartLeft","downStartRight","upStartRight"],offset:"xs",size:contextMenuSizeMap[c]}))}export var BreadcrumbsMore=forwardRef(BreadcrumbsMoreRender);
|
|
2
2
|
//# sourceMappingURL=BreadcrumbsMore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreadcrumbsMore.js","names":["React","forwardRef","useEffect","useRef","useFlag","cn","getByMap","Button","ContextMenu","BreadcrumbsItem","iconSizeMap","cnBreadcrumbsMore","getLeftSideBar","iconSize","getItemIcon","item","Icon","getItemAs","getItemHref","href","getItemAttributes","contextMenuSizeMap","xs","s","m","l","BreadcrumbsMoreRender","props","ref","size","items","className","style","getItemLabel","getItemOnClickProp","getItemOnClick","getItemSubMenu","onItemClickProp","onItemClick","otherProps","open","setOpen","buttonRef","off","
|
|
1
|
+
{"version":3,"file":"BreadcrumbsMore.js","names":["React","forwardRef","useEffect","useRef","useFlag","cn","getByMap","Button","ContextMenu","BreadcrumbsItem","iconSizeMap","cnBreadcrumbsMore","getLeftSideBar","iconSize","getItemIcon","item","Icon","getItemAs","getItemHref","href","getItemAttributes","contextMenuSizeMap","xs","s","m","l","BreadcrumbsMoreRender","props","ref","size","items","className","style","getItemLabel","getItemOnClickProp","getItemOnClick","getItemSubMenu","onItemClickProp","onItemClick","otherProps","open","setOpen","buttonRef","off","toogle","element","e","BreadcrumbsMore"],"sources":["../../../../../../src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.tsx"],"sourcesContent":["import './BreadcrumbsMore.css';\n\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { cn } from '../../../utils/bem';\nimport { getByMap } from '../../../utils/getByMap';\nimport { Button } from '../../Button/Button';\nimport { ContextMenu } from '../../ContextMenu/ContextMenu';\nimport { BreadcrumbsItem } from '../BreadcrumbsItem/BreadcrumbsItem';\nimport { iconSizeMap } from '../helpers';\nimport {\n BreadcrumbsMoreComponent,\n BreadcrumbsMoreProps,\n BreadcrumbsPropGetItemHref,\n BreadcrumbsPropGetItemIcon,\n} from '../types';\n\nconst cnBreadcrumbsMore = cn('BreadcrumbsMore');\n\nexport function getLeftSideBar<ITEM>(\n iconSize: 'xs' | 'm',\n getItemIcon?: BreadcrumbsPropGetItemIcon<ITEM>,\n) {\n return function (item: ITEM) {\n const Icon = getItemIcon?.(item);\n if (Icon) {\n return <Icon size={iconSize} />;\n }\n return undefined;\n };\n}\n\nexport function getItemAs<ITEM>(\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>,\n) {\n return (item: ITEM) => {\n const href = getItemHref?.(item);\n return href ? 'a' : 'span';\n };\n}\n\nexport function getItemAttributes<ITEM>(\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>,\n) {\n return (item: ITEM) => {\n return getItemHref && { href: getItemHref(item) };\n };\n}\n\nexport const contextMenuSizeMap = {\n xs: 's',\n s: 's',\n m: 'm',\n l: 'l',\n} as const;\n\nfunction BreadcrumbsMoreRender<ITEM>(\n props: BreadcrumbsMoreProps<ITEM>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n size,\n items,\n className,\n style,\n getItemHref,\n getItemIcon,\n getItemLabel,\n getItemOnClick: getItemOnClickProp,\n getItemSubMenu,\n onItemClick: onItemClickProp,\n ...otherProps\n } = props;\n\n const [open, setOpen] = useFlag();\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const iconSize = getByMap(iconSizeMap, size);\n\n useEffect(setOpen.off, [items]);\n\n const onItemClick = ({\n e,\n item,\n }: {\n e: React.MouseEvent<HTMLDivElement>;\n item: ITEM;\n }) => {\n onItemClickProp?.({ e, item });\n getItemOnClickProp?.(item)?.(e);\n };\n\n const getItemOnClick =\n (element: ITEM) =>\n ({ e }: { e: React.MouseEvent<HTMLDivElement> }) => {\n return getItemOnClickProp?.(element)?.(e);\n };\n\n return (\n <BreadcrumbsItem\n {...otherProps}\n className={cnBreadcrumbsMore(null, [className])}\n delimiter\n size={size}\n ref={ref}\n style={{\n ...style,\n ['--breadcrumbs-more-font-size' as string]: `var(--size-text-${size})`,\n }}\n >\n <Button\n className={cnBreadcrumbsMore('Button')}\n view=\"clear\"\n label=\"...\"\n size={iconSize}\n ref={buttonRef}\n onClick={setOpen.toogle}\n />\n <ContextMenu\n items={items}\n isOpen={open}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n getItemOnClick={getItemOnClick}\n onItemClick={onItemClick}\n getItemLeftIcon={getItemIcon}\n anchorRef={buttonRef}\n onClickOutside={setOpen.off}\n getItemAs={getItemAs(getItemHref)}\n getItemAttributes={getItemAttributes(getItemHref)}\n direction=\"downCenter\"\n possibleDirections={[\n 'downCenter',\n 'upCenter',\n 'downStartLeft',\n 'upStartLeft',\n 'downStartRight',\n 'upStartRight',\n ]}\n offset=\"xs\"\n size={contextMenuSizeMap[size]}\n />\n </BreadcrumbsItem>\n );\n}\n\nexport const BreadcrumbsMore = forwardRef(\n BreadcrumbsMoreRender,\n) as BreadcrumbsMoreComponent;\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";var _excluded=["itemsDimensions","wrapperWidth"];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{useMemo}from"react";import{useHideElementsInLine}from"../../hooks/useHideElementsInLine/useHideElementsInLine";import{useRefs}from"../../hooks/useRefs/useRefs";import{useResizeObserved}from"../../hooks/useResizeObserved/useResizeObserved";var useReadyToHideItems=function(a){return useMemo(function(){var b=_toConsumableArray(a),c=b.shift(),d=b.pop();return[c,b,d]},[a])},getLastWidth=function(a,b,c,d){var e=b+c.reduce(function(a,b,c){return a+(d[c]?0:b)},0);return"".concat(a-e,"px")},getCompression=function(a){return 380>=a?"s":900>=a?"m":1200>=a?"l":"xl"};export var useElements=function(a){var b=useReadyToHideItems(a),c=_slicedToArray(b,3),d=c[0],e=c[1],f=c[2]
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";var _excluded=["itemsDimensions","wrapperWidth"];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{useMemo}from"react";import{useHideElementsInLine}from"../../hooks/useHideElementsInLine/useHideElementsInLine";import{useRefs}from"../../hooks/useRefs/useRefs";import{useResizeObserved}from"../../hooks/useResizeObserved/useResizeObserved";var useReadyToHideItems=function(a){return useMemo(function(){console.log(a);var b=_toConsumableArray(a),c=b.shift(),d=b.pop();return[c,b,d]},[a])},getLastWidth=function(a,b,c,d){var e=b+c.reduce(function(a,b,c){return a+(d[c]?0:b)},0);return"".concat(a-e,"px")},getCompression=function(a){return 380>=a?"s":900>=a?"m":1200>=a?"l":"xl"};export var useElements=function(a){var b=useReadyToHideItems(a),c=_slicedToArray(b,3),d=c[0],e=c[1],f=c[2];console.log(e);var g=useRefs(2),h=useResizeObserved(g,function(a){return a?parseInt(getComputedStyle(a).marginRight,10)+parseInt(getComputedStyle(a).marginLeft,10)+a.offsetWidth:0}),i=h.reduce(function(a,b){return a+b},0),j=useHideElementsInLine(e,i,!0),k=j.itemsDimensions,l=j.wrapperWidth,m=_objectWithoutProperties(j,_excluded),n=i+k.reduce(function(a,b){return a+b},0),o=getLastWidth(l,h[0],k,m.hiddenItems),p=getCompression(l);return _objectSpread({firstItem:d,lastItem:f,readyToHideItems:e,firstItemRef:g[0],lastItemRef:g[1],lastWidth:o,compression:p,elementsSizeSum:n},m)};
|
|
2
2
|
//# sourceMappingURL=useElements.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useElements.js","names":["useMemo","useHideElementsInLine","useRefs","useResizeObserved","useReadyToHideItems","items","returnedItems","first","shift","last","pop","getLastWidth","wrapperWidth","fistWidth","itemsDimensions","hiddenItems","widthExceptLast","reduce","previous","current","currentIndex","getCompression","componentWidth","useElements","firstItem","readyToHideItems","lastItem","noHideElementsRef","noHideElementsSize","el","parseInt","getComputedStyle","marginRight","marginLeft","offsetWidth","noHideElementsSizeSum","hideElementsInLineResult","elementsSizeSum","lastWidth","compression","firstItemRef","lastItemRef"],"sources":["../../../../../src/components/Breadcrumbs/useElements.ts"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { useHideElementsInLine } from '../../hooks/useHideElementsInLine/useHideElementsInLine';\nimport { useRefs } from '../../hooks/useRefs/useRefs';\nimport { useResizeObserved } from '../../hooks/useResizeObserved/useResizeObserved';\n\nconst useReadyToHideItems = <ITEM>(items: ITEM[]) =>\n useMemo(() => {\n const returnedItems = [...items];\n const first = returnedItems.shift();\n const last = returnedItems.pop();\n return [first, returnedItems, last] as const;\n }, [items]);\n\nconst getLastWidth = (\n wrapperWidth: number,\n fistWidth: number,\n itemsDimensions: number[],\n hiddenItems: unknown[],\n) => {\n const widthExceptLast =\n fistWidth +\n itemsDimensions.reduce(\n (previous, current, currentIndex) =>\n previous + (hiddenItems[currentIndex] ? 0 : current),\n 0,\n );\n\n const lastWidthCalculate = wrapperWidth - widthExceptLast;\n\n return `${lastWidthCalculate}px`;\n};\n\nconst getCompression = (componentWidth: number) => {\n if (componentWidth <= 380) {\n return 's';\n }\n if (componentWidth <= 900) {\n return 'm';\n }\n if (componentWidth <= 1200) {\n return 'l';\n }\n return 'xl';\n};\n\nexport const useElements = <ITEM>(items: ITEM[]) => {\n const [firstItem, readyToHideItems, lastItem] = useReadyToHideItems(items);\n\n const noHideElementsRef = useRefs(2) as [\n React.RefObject<HTMLLIElement>,\n React.RefObject<HTMLLIElement>,\n ];\n\n const noHideElementsSize = useResizeObserved(noHideElementsRef, (el) =>\n el\n ? parseInt(getComputedStyle(el).marginRight, 10) +\n parseInt(getComputedStyle(el).marginLeft, 10) +\n el.offsetWidth\n : 0,\n );\n\n const noHideElementsSizeSum = noHideElementsSize.reduce(\n (previous, current) => previous + current,\n 0,\n );\n\n const { itemsDimensions, wrapperWidth, ...hideElementsInLineResult } =\n useHideElementsInLine<ITEM, HTMLLIElement, HTMLUListElement>(\n readyToHideItems,\n noHideElementsSizeSum,\n true,\n );\n\n const elementsSizeSum =\n noHideElementsSizeSum +\n itemsDimensions.reduce((previous, current) => previous + current, 0);\n\n const lastWidth = getLastWidth(\n wrapperWidth,\n noHideElementsSize[0],\n itemsDimensions,\n hideElementsInLineResult.hiddenItems,\n );\n\n const compression = getCompression(wrapperWidth);\n\n return {\n firstItem,\n lastItem,\n readyToHideItems,\n firstItemRef: noHideElementsRef[0],\n lastItemRef: noHideElementsRef[1],\n lastWidth,\n compression,\n elementsSizeSum,\n ...hideElementsInLineResult,\n };\n};\n"],"mappings":"q7BAAA,OAAgBA,OAAhB,KAA+B,OAA/B,CAEA,OAASC,qBAAT,+DACA,OAASC,OAAT,mCACA,OAASC,iBAAT,uD,GAEMC,oBAAmB,CAAG,SAAOC,CAAP,QAC1BL,QAAO,CAAC,UAAM,
|
|
1
|
+
{"version":3,"file":"useElements.js","names":["useMemo","useHideElementsInLine","useRefs","useResizeObserved","useReadyToHideItems","items","console","log","returnedItems","first","shift","last","pop","getLastWidth","wrapperWidth","fistWidth","itemsDimensions","hiddenItems","widthExceptLast","reduce","previous","current","currentIndex","getCompression","componentWidth","useElements","firstItem","readyToHideItems","lastItem","noHideElementsRef","noHideElementsSize","el","parseInt","getComputedStyle","marginRight","marginLeft","offsetWidth","noHideElementsSizeSum","hideElementsInLineResult","elementsSizeSum","lastWidth","compression","firstItemRef","lastItemRef"],"sources":["../../../../../src/components/Breadcrumbs/useElements.ts"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { useHideElementsInLine } from '../../hooks/useHideElementsInLine/useHideElementsInLine';\nimport { useRefs } from '../../hooks/useRefs/useRefs';\nimport { useResizeObserved } from '../../hooks/useResizeObserved/useResizeObserved';\n\nconst useReadyToHideItems = <ITEM>(items: ITEM[]) =>\n useMemo(() => {\n console.log(items);\n const returnedItems = [...items];\n const first = returnedItems.shift();\n const last = returnedItems.pop();\n return [first, returnedItems, last] as const;\n }, [items]);\n\nconst getLastWidth = (\n wrapperWidth: number,\n fistWidth: number,\n itemsDimensions: number[],\n hiddenItems: unknown[],\n) => {\n const widthExceptLast =\n fistWidth +\n itemsDimensions.reduce(\n (previous, current, currentIndex) =>\n previous + (hiddenItems[currentIndex] ? 0 : current),\n 0,\n );\n\n const lastWidthCalculate = wrapperWidth - widthExceptLast;\n\n return `${lastWidthCalculate}px`;\n};\n\nconst getCompression = (componentWidth: number) => {\n if (componentWidth <= 380) {\n return 's';\n }\n if (componentWidth <= 900) {\n return 'm';\n }\n if (componentWidth <= 1200) {\n return 'l';\n }\n return 'xl';\n};\n\nexport const useElements = <ITEM>(items: ITEM[]) => {\n const [firstItem, readyToHideItems, lastItem] = useReadyToHideItems(items);\n\n console.log(readyToHideItems);\n\n const noHideElementsRef = useRefs(2) as [\n React.RefObject<HTMLLIElement>,\n React.RefObject<HTMLLIElement>,\n ];\n\n const noHideElementsSize = useResizeObserved(noHideElementsRef, (el) =>\n el\n ? parseInt(getComputedStyle(el).marginRight, 10) +\n parseInt(getComputedStyle(el).marginLeft, 10) +\n el.offsetWidth\n : 0,\n );\n\n const noHideElementsSizeSum = noHideElementsSize.reduce(\n (previous, current) => previous + current,\n 0,\n );\n\n const { itemsDimensions, wrapperWidth, ...hideElementsInLineResult } =\n useHideElementsInLine<ITEM, HTMLLIElement, HTMLUListElement>(\n readyToHideItems,\n noHideElementsSizeSum,\n true,\n );\n\n const elementsSizeSum =\n noHideElementsSizeSum +\n itemsDimensions.reduce((previous, current) => previous + current, 0);\n\n const lastWidth = getLastWidth(\n wrapperWidth,\n noHideElementsSize[0],\n itemsDimensions,\n hideElementsInLineResult.hiddenItems,\n );\n\n const compression = getCompression(wrapperWidth);\n\n return {\n firstItem,\n lastItem,\n readyToHideItems,\n firstItemRef: noHideElementsRef[0],\n lastItemRef: noHideElementsRef[1],\n lastWidth,\n compression,\n elementsSizeSum,\n ...hideElementsInLineResult,\n };\n};\n"],"mappings":"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"}
|
|
@@ -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,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"];import"./Collapse.css";import React,{useRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{IconArrowDown}from"../../icons/IconArrowDown/IconArrowDown";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
|
|
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 React,{useRef}from"react";import{useComponentSize}from"../../hooks/useComponentSize";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{IconArrowDown}from"../../icons/IconArrowDown/IconArrowDown";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";
|
|
2
2
|
//# sourceMappingURL=Collapse.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collapse.js","names":["React","useRef","useComponentSize","useForkRef","IconArrowDown","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 React, { useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { IconPropSize } from '../../icons/Icon/Icon';\nimport { IconArrowDown } from '../../icons/IconArrowDown/IconArrowDown';\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
|
|
1
|
+
{"version":3,"file":"Collapse.js","names":["React","useRef","useComponentSize","useForkRef","IconArrowDown","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 React, { useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { IconPropSize } from '../../icons/Icon/Icon';\nimport { IconArrowDown } from '../../icons/IconArrowDown/IconArrowDown';\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,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","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.
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownClassName","dropdownForm","onFocus","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDate}from"../DatePickerFieldTypeDate/DatePickerFieldTypeDate";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDate=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownClassName,h=a.dropdownForm,i=a.onFocus,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=_objectWithoutProperties(a,_excluded),n=useRef(null),o=useRef(null),p=useFlag(!1),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:r}),u=_slicedToArray(t,2),v=u[0],w=u[1];return useEffect(function(){b&&setRef(b,n.current)},[b,n]),useEffect(function(){if(a.value&&"classic"===e&&v){var b=startOfMonth(a.value);return void(b.getTime()!==v.getTime()&&w(b))}if(a.value&&"classic"!==e&&v){var c=startOfMonth(a.value);c.getTime()!==v.getTime()&&c.getTime()!==addMonths(v,1).getTime()&&w(c)}},[a.value]),useClickOutside({isActive:r,ignoreClicksInsideRefs:[n,o],handler:s.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDate,Object.assign({},m,{ref:n,onFocus:function onFocusHandler(a){i&&i(a),s.on()}})),React.createElement(DatePickerDropdown,{ref:o,anchorRef:n,isOpen:r,value:a.value||void 0,type:"date",view:e,events:c,locale:f,minDate:a.minDate,className:g,maxDate:a.maxDate,currentVisibleDate:v,form:h,onChange:function onChange(b){var c;null===(c=a.onChange)||void 0===c?void 0:c.call(a,b),s.off()},renderAdditionalControls:l,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:w}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDate.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useFlag","setRef","DatePickerDropdown","DatePickerFieldTypeDate","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDate","props","ref","events","dateTimeView","locale","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 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 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":"
|
|
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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"}
|
package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.dropdownClassName,u=a.name,v=_objectWithoutProperties(a,_excluded),w=useRef(null),x=useRef(null),y=useRef(null),z=useRef(null),A=useRef(null),B=useState(!1),C=_slicedToArray(B,2),D=C[0],E=C[1],F="start"===D,G="end"===D,H=useFlag(!1),I=_slicedToArray(H,2),J=I[0],K=I[1],L=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:J}),M=_slicedToArray(L,2),N=M[0],O=M[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&F){var d=startOfMonth(a.value[0]);return void(d.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&O(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&F){var e=startOfMonth(a.value[0]);e.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&e.getTime()!==(N&&addMonths(N,1).getTime())&&O(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),J,F]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&G){var d=startOfMonth(a.value[1]);return void(d.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&O(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&G){var e=startOfMonth(a.value[1]);e.getTime()!==(null===N||void 0===N?void 0:N.getTime())&&e.getTime()!==(N&&addMonths(N,1).getTime())&&O(addMonths(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),J,G]),useClickOutside({isActive:J,ignoreClicksInsideRefs:[w,x,A],handler:useCallback(function(){E(!1),K.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateRange,Object.assign({},v,{ref:b,startFieldRef:w,endFieldRef:x,startFieldInputRef:useForkRef([y,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([z,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;E("start"),K.on(),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;E("end"),K.on(),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:F,endFocused:G,startFieldName:getFieldName(u,0),endFieldName:getFieldName(u,1)})),React.createElement(DatePickerDropdown,{type:"date",ref:A,anchorRef:w,className:t,isOpen:J,onChangeCurrentVisibleDate:O,currentVisibleDate:N,value:a.value||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(F){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(G){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,zIndex:getDropdownZIndex(a.style)}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDateRange.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n dropdownClassName,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTime}from"../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getMultiplicityTime}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTime=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.onFocus,i=a.
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","renderAdditionalControls"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTime}from"../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime";import{datePickerPropFormatTypeDateTime,getDropdownZIndex,getMultiplicityTime}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTime=forwardRef(function(a,b){var c=a.events,d=a.dateTimeView,e=void 0===d?datePickerPropDateTimeViewDefault:d,f=a.locale,g=a.dropdownForm,h=a.onFocus,i=a.dropdownClassName,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.multiplicityHours,m=a.multiplicityMinutes,n=a.multiplicitySeconds,o=a.renderAdditionalControls,p=_objectWithoutProperties(a,_excluded),q=getMultiplicityTime(p.format||datePickerPropFormatTypeDateTime,l,m,n),r=_slicedToArray(q,3),s=r[0],t=r[1],u=r[2],v=useRef(null),w=useRef(null),x=useFlag(!1),y=_slicedToArray(x,2),z=y[0],A=y[1],B=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:z}),C=_slicedToArray(B,2),D=C[0],E=C[1];return useEffect(function(){b&&setRef(b,v.current)},[b,v]),useEffect(function(){if(a.value&&"classic"===e&&D){var b=startOfMonth(a.value);return void(b.getTime()!==D.getTime()&&E(b))}if(a.value&&"classic"!==e&&D){var c=startOfMonth(a.value);c.getTime()!==D.getTime()&&c.getTime()!==addMonths(D,1).getTime()&&E(c)}},[a.value]),useClickOutside({isActive:z,ignoreClicksInsideRefs:[v,w],handler:A.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTime,Object.assign({},p,{ref:v,onFocus:function onFocusHandler(a){h&&h(a),A.on()},multiplicityHours:s,multiplicitySeconds:u,multiplicityMinutes:t})),React.createElement(DatePickerDropdown,{ref:w,anchorRef:v,isOpen:z,value:a.value||void 0,type:"date-time",view:e,events:c,className:i,locale:f,minDate:a.minDate,maxDate:a.maxDate,currentVisibleDate:D,form:g,onChange:a.onChange,renderAdditionalControls:o,onChangeCurrentVisibleDate:E,multiplicityHours:s,multiplicitySeconds:u,multiplicityMinutes:t,zIndex:getDropdownZIndex(a.style)}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDateTime.js.map
|
package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDateTime.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useFlag","setRef","DatePickerDropdown","DatePickerFieldTypeDateTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getMultiplicityTime","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTime","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHoursProp","multiplicityHours","multiplicityMinutesProp","multiplicityMinutes","multiplicitySecondsProp","multiplicitySeconds","renderAdditionalControls","otherProps","format","fieldRef","calendarRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","onFocusHandler","e","on","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTime } from '../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getMultiplicityTime,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTime: DatePickerTypeComponent<'date-time'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n multiplicityHours: multiplicityHoursProp,\n multiplicityMinutes: multiplicityMinutesProp,\n multiplicitySeconds: multiplicitySecondsProp,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const [multiplicityHours, multiplicityMinutes, multiplicitySeconds] =\n getMultiplicityTime(\n otherProps.format || datePickerPropFormatTypeDateTime,\n multiplicityHoursProp,\n multiplicityMinutesProp,\n multiplicitySecondsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const onFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n onFocus && onFocus(e);\n setCalendarVisible.on();\n };\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTime\n {...otherProps}\n ref={fieldRef}\n onFocus={onFocusHandler}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"date-time\"\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDateTime.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useFlag","setRef","DatePickerDropdown","DatePickerFieldTypeDateTime","datePickerPropFormatTypeDateTime","getDropdownZIndex","getMultiplicityTime","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTime","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","multiplicityHoursProp","multiplicityHours","multiplicityMinutesProp","multiplicityMinutes","multiplicitySecondsProp","multiplicitySeconds","renderAdditionalControls","otherProps","format","fieldRef","calendarRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","onFocusHandler","e","on","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, { forwardRef, useEffect, useRef } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { setRef } from '../../../utils/setRef';\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTime } from '../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime';\nimport {\n datePickerPropFormatTypeDateTime,\n getDropdownZIndex,\n getMultiplicityTime,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTime: DatePickerTypeComponent<'date-time'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n multiplicityHours: multiplicityHoursProp,\n multiplicityMinutes: multiplicityMinutesProp,\n multiplicitySeconds: multiplicitySecondsProp,\n renderAdditionalControls,\n ...otherProps\n } = props;\n\n const [multiplicityHours, multiplicityMinutes, multiplicitySeconds] =\n getMultiplicityTime(\n otherProps.format || datePickerPropFormatTypeDateTime,\n multiplicityHoursProp,\n multiplicityMinutesProp,\n multiplicitySecondsProp,\n );\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const onFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n onFocus && onFocus(e);\n setCalendarVisible.on();\n };\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [fieldRef, calendarRef],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTime\n {...otherProps}\n ref={fieldRef}\n onFocus={onFocusHandler}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n />\n <DatePickerDropdown\n ref={calendarRef}\n anchorRef={fieldRef}\n isOpen={calendarVisible}\n value={props.value || undefined}\n type=\"date-time\"\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n currentVisibleDate={currentVisibleDate}\n form={dropdownForm}\n onChange={props.onChange}\n renderAdditionalControls={renderAdditionalControls}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n multiplicityHours={multiplicityHours}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityMinutes={multiplicityMinutes}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","multiplicitySeconds","multiplicityHours"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.multiplicityMinutes,v=a.
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.multiplicityMinutes,v=a.dropdownClassName,w=a.multiplicitySeconds,x=a.multiplicityHours,y=_objectWithoutProperties(a,_excluded),z=useRef(null),A=useRef(null),B=useRef(null),C=useRef(null),D=useRef(null),E=useState(!1),F=_slicedToArray(E,2),G=F[0],H=F[1],I="start"===G,J="end"===G,K=useFlag(!1),L=_slicedToArray(K,2),M=L[0],N=L[1],O=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:M}),P=_slicedToArray(O,2),Q=P[0],R=P[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&I){var c=startOfMonth(a.value[0]);c.getTime()!==(null===Q||void 0===Q?void 0:Q.getTime())&&R(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),M,I]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&J){var c=startOfMonth(a.value[1]);c.getTime()!==(null===Q||void 0===Q?void 0:Q.getTime())&&R(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),M,J]),useClickOutside({isActive:M,ignoreClicksInsideRefs:[z,A,D],handler:useCallback(function(){H(!1),N.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},y,{ref:b,startFieldRef:z,endFieldRef:A,startFieldInputRef:useForkRef([B,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([C,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;H("start"),N.on(),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;H("end"),N.on(),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:I,endFocused:J,startFieldName:getFieldName(t,0),endFieldName:getFieldName(t,1)})),React.createElement(DatePickerDropdown,{type:"date-time",ref:D,anchorRef:z,isOpen:M,className:v,onChangeCurrentVisibleDate:R,currentVisibleDate:Q,value:a.value||void 0,timeFor:G||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function hadleChange(b){var c=b.e,d=b.value;if(I){var e,f;null===(e=a.onChange)||void 0===e?void 0:e.call(a,{e:c,value:normalizeRangeValue([d,null===a||void 0===a||null===(f=a.value)||void 0===f?void 0:f[1]])})}if(J){var g,h;null===(g=a.onChange)||void 0===g?void 0:g.call(a,{e:c,value:normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],d])})}},renderAdditionalControls:r,multiplicityMinutes:u,multiplicitySeconds:w,multiplicityHours:x,zIndex:getDropdownZIndex(a.style)}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDateTimeRange.js.map
|