@consta/uikit 5.24.1 → 5.24.2
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/__internal__/src/components/Attachment/Attachment.js +1 -1
- package/__internal__/src/components/Attachment/Attachment.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/DateTime/DateTimeTypeDate/DateTimeTypeDate.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.css +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.css +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","as","fileExtension","withPictogram","loading","fileName","errorText","loadingText","loadingProgress","fileDescription","size","onClick","actions","buttonTitle","buttonIcon","onButtonClick"];import"./Attachment.css";import React from"react";import{Button}from"../Button";import{File}from"../File";import{Text}from"../Text";import{cnMixFlex}from"../../mixs/MixFlex";import{cn}from"../../utils/bem";import{isDefined}from"../../utils/type-guards";import{forwardRefWithAs}from"../../utils/types/PropsWithAsAttributes";import{attachmentPropSizeDefault}from"./types";var cnAttachment=cn("Attachment"),fileSizeMap={xs:"s",s:"s",m:"m"},textSizeMap={xs:"xs",s:"s",m:"s"},descriptionSizeMap={xs:"xs",s:"xs",m:"s"},Attachment=forwardRefWithAs(function(a,b){var c=a.className,d=a.as,e=void 0===d?"div":d,f=a.fileExtension,g=a.withPictogram,h=a.loading,i=a.fileName,j=a.errorText,k=a.loadingText,l=void 0===k?"Loading":k,m=a.loadingProgress,n=a.fileDescription,o=a.size,p=void 0===o?attachmentPropSizeDefault:o,q=a.onClick,r=a.actions,s=void 0===r?[]:r,t=a.buttonTitle,u=a.buttonIcon,v=a.onButtonClick,w=_objectWithoutProperties(a,_excluded),
|
|
1
|
+
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","as","fileExtension","withPictogram","loading","fileName","errorText","loadingText","loadingProgress","fileDescription","size","onClick","actions","buttonTitle","buttonIcon","onButtonClick","withAction"];import"./Attachment.css";import React from"react";import{Button}from"../Button";import{File}from"../File";import{Text}from"../Text";import{cnMixFlex}from"../../mixs/MixFlex";import{cn}from"../../utils/bem";import{isDefined}from"../../utils/type-guards";import{forwardRefWithAs}from"../../utils/types/PropsWithAsAttributes";import{attachmentPropSizeDefault}from"./types";var cnAttachment=cn("Attachment"),fileSizeMap={xs:"s",s:"s",m:"m"},textSizeMap={xs:"xs",s:"s",m:"s"},descriptionSizeMap={xs:"xs",s:"xs",m:"s"},Attachment=forwardRefWithAs(function(a,b){var c=a.className,d=a.as,e=void 0===d?"div":d,f=a.fileExtension,g=a.withPictogram,h=a.loading,i=a.fileName,j=a.errorText,k=a.loadingText,l=void 0===k?"Loading":k,m=a.loadingProgress,n=a.fileDescription,o=a.size,p=void 0===o?attachmentPropSizeDefault:o,q=a.onClick,r=a.actions,s=void 0===r?[]:r,t=a.buttonTitle,u=a.buttonIcon,v=a.onButtonClick,w=a.withAction,x=_objectWithoutProperties(a,_excluded),y=[v&&u?{onClick:v,icon:u,title:t}:void 0].concat(_toConsumableArray(s)).filter(isDefined),z=!(!(null!==y&&void 0!==y)||!y.length);return React.createElement(e,Object.assign({},x,{onClick:q,className:cnAttachment({size:p,hoverEffect:!!((null===y||void 0===y?void 0:y.length)||q),cursor:q?"pointer":void 0,withActions:z,error:!!j},[cnMixFlex({flex:"flex",gap:"xs"}),c]),ref:b}),g&&React.createElement(File,{className:cnAttachment("File"),extension:f,loading:h,loadingWithProgressSpin:!0,loadingProgress:m,size:fileSizeMap[p]}),React.createElement("div",{className:cnAttachment("Content",[cnMixFlex({flex:"flex",direction:"column",gap:"2xs"})])},i&&React.createElement(Text,{className:cnAttachment("FileName"),size:textSizeMap[p],view:"primary",lineHeight:"xs"},i),n&&!h&&React.createElement(Text,{className:cnAttachment("FileDescription"),size:descriptionSizeMap[p],lineHeight:"xs",view:"ghost"},n),l&&h&&React.createElement(Text,{className:cnAttachment("LoadingText"),size:descriptionSizeMap[p],lineHeight:"xs",view:"ghost"},m?"".concat(l," ").concat(m,"%"):"".concat(l,"...")),j&&React.createElement(Text,{className:cnAttachment("ErrorText"),size:descriptionSizeMap[p],lineHeight:"xs",view:"alert"},j)),z&&React.createElement("div",{className:cnAttachment("Actions",[cnMixFlex({flex:"flex",gap:"xs"})])},y.map(function(a,b){return React.createElement(Button,{key:a.title||b,className:cnAttachment("Button"),tabIndex:-1,onlyIcon:!0,iconLeft:a.icon,onClick:a.onClick,title:a.title,ref:a.ref,size:"xs",view:"clear"})})))});export{Attachment,cnAttachment};
|
|
2
2
|
//# sourceMappingURL=Attachment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Attachment.js","names":["React","Button","File","Text","cnMixFlex","cn","isDefined","forwardRefWithAs","attachmentPropSizeDefault","cnAttachment","fileSizeMap","xs","s","m","textSizeMap","descriptionSizeMap","Attachment","props","ref","className","as","fileExtension","withPictogram","loading","fileName","errorText","loadingText","loadingProgress","fileDescription","size","onClick","actions","actionsProp","buttonTitle","buttonIcon","onButtonClick","otherProps","icon","title","filter","withActions","length","hoverEffect","cursor","error","flex","gap","direction","map","action","index"],"sources":["../../../../../src/components/Attachment/Attachment.tsx"],"sourcesContent":["import './Attachment.css';\n\nimport React from 'react';\n\nimport { Button } from '##/components/Button';\nimport { File } from '##/components/File';\nimport { Text, TextPropSize } from '##/components/Text';\nimport { FileIconPropSize } from '##/fileIcons/FileIcon/FileIcon';\nimport { cnMixFlex } from '##/mixs/MixFlex';\nimport { cn } from '##/utils/bem';\nimport { isDefined } from '##/utils/type-guards';\nimport { forwardRefWithAs } from '##/utils/types/PropsWithAsAttributes';\n\nimport {\n AttachmentActions,\n AttachmentProps,\n AttachmentPropSize,\n attachmentPropSizeDefault,\n} from './types';\n\nconst cnAttachment = cn('Attachment');\n\nconst fileSizeMap: Record<AttachmentPropSize, FileIconPropSize> = {\n xs: 's',\n s: 's',\n m: 'm',\n};\n\nconst textSizeMap: Record<AttachmentPropSize, TextPropSize> = {\n xs: 'xs',\n s: 's',\n m: 's',\n};\n\nconst descriptionSizeMap: Record<AttachmentPropSize, TextPropSize> = {\n xs: 'xs',\n s: 'xs',\n m: 's',\n};\n\nconst Attachment = forwardRefWithAs<AttachmentProps>((props, ref) => {\n const {\n className,\n as = 'div',\n fileExtension,\n withPictogram,\n loading,\n fileName,\n errorText,\n loadingText = 'Loading',\n loadingProgress,\n fileDescription,\n size = attachmentPropSizeDefault,\n onClick,\n actions: actionsProp = [],\n buttonTitle,\n buttonIcon,\n onButtonClick,\n ...otherProps\n } = props;\n const Tag = as as string;\n\n const actions: AttachmentActions[] = [\n onButtonClick && buttonIcon\n ? {\n onClick: onButtonClick,\n icon: buttonIcon,\n title: buttonTitle,\n }\n : undefined,\n ...actionsProp,\n ].filter(isDefined);\n\n const withActions = Boolean(actions?.length);\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick}\n className={cnAttachment(\n {\n size,\n hoverEffect: Boolean(actions?.length || onClick),\n cursor: onClick ? 'pointer' : undefined,\n withActions,\n error: Boolean(errorText),\n },\n [cnMixFlex({ flex: 'flex', gap: 'xs' }), className],\n )}\n ref={ref}\n >\n {withPictogram && (\n <File\n className={cnAttachment('File')}\n extension={fileExtension}\n loading={loading}\n loadingWithProgressSpin\n loadingProgress={loadingProgress}\n size={fileSizeMap[size]}\n />\n )}\n <div\n className={cnAttachment('Content', [\n cnMixFlex({ flex: 'flex', direction: 'column', gap: '2xs' }),\n ])}\n >\n {fileName && (\n <Text\n className={cnAttachment('FileName')}\n size={textSizeMap[size]}\n view=\"primary\"\n lineHeight=\"xs\"\n >\n {fileName}\n </Text>\n )}\n {fileDescription && !loading && (\n <Text\n className={cnAttachment('FileDescription')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"ghost\"\n >\n {fileDescription}\n </Text>\n )}\n {loadingText && loading && (\n <Text\n className={cnAttachment('LoadingText')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"ghost\"\n >\n {loadingProgress\n ? `${loadingText} ${loadingProgress}%`\n : `${loadingText}...`}\n </Text>\n )}\n {errorText && (\n <Text\n className={cnAttachment('ErrorText')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"alert\"\n >\n {errorText}\n </Text>\n )}\n </div>\n {withActions && (\n <div\n className={cnAttachment('Actions', [\n cnMixFlex({ flex: 'flex', gap: 'xs' }),\n ])}\n >\n {actions.map((action, index) => (\n <Button\n key={action.title || index}\n className={cnAttachment('Button')}\n tabIndex={-1}\n onlyIcon\n iconLeft={action.icon}\n onClick={action.onClick}\n title={action.title}\n ref={action.ref}\n size=\"xs\"\n view=\"clear\"\n />\n ))}\n </div>\n )}\n </Tag>\n );\n});\n\nexport { Attachment, cnAttachment };\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Attachment.js","names":["React","Button","File","Text","cnMixFlex","cn","isDefined","forwardRefWithAs","attachmentPropSizeDefault","cnAttachment","fileSizeMap","xs","s","m","textSizeMap","descriptionSizeMap","Attachment","props","ref","className","as","fileExtension","withPictogram","loading","fileName","errorText","loadingText","loadingProgress","fileDescription","size","onClick","actions","actionsProp","buttonTitle","buttonIcon","onButtonClick","withAction","otherProps","icon","title","filter","withActions","length","hoverEffect","cursor","error","flex","gap","direction","map","action","index"],"sources":["../../../../../src/components/Attachment/Attachment.tsx"],"sourcesContent":["import './Attachment.css';\n\nimport React from 'react';\n\nimport { Button } from '##/components/Button';\nimport { File } from '##/components/File';\nimport { Text, TextPropSize } from '##/components/Text';\nimport { FileIconPropSize } from '##/fileIcons/FileIcon/FileIcon';\nimport { cnMixFlex } from '##/mixs/MixFlex';\nimport { cn } from '##/utils/bem';\nimport { isDefined } from '##/utils/type-guards';\nimport { forwardRefWithAs } from '##/utils/types/PropsWithAsAttributes';\n\nimport {\n AttachmentActions,\n AttachmentProps,\n AttachmentPropSize,\n attachmentPropSizeDefault,\n} from './types';\n\nconst cnAttachment = cn('Attachment');\n\nconst fileSizeMap: Record<AttachmentPropSize, FileIconPropSize> = {\n xs: 's',\n s: 's',\n m: 'm',\n};\n\nconst textSizeMap: Record<AttachmentPropSize, TextPropSize> = {\n xs: 'xs',\n s: 's',\n m: 's',\n};\n\nconst descriptionSizeMap: Record<AttachmentPropSize, TextPropSize> = {\n xs: 'xs',\n s: 'xs',\n m: 's',\n};\n\nconst Attachment = forwardRefWithAs<AttachmentProps>((props, ref) => {\n const {\n className,\n as = 'div',\n fileExtension,\n withPictogram,\n loading,\n fileName,\n errorText,\n loadingText = 'Loading',\n loadingProgress,\n fileDescription,\n size = attachmentPropSizeDefault,\n onClick,\n actions: actionsProp = [],\n buttonTitle,\n buttonIcon,\n onButtonClick,\n withAction,\n ...otherProps\n } = props;\n const Tag = as as string;\n\n const actions: AttachmentActions[] = [\n onButtonClick && buttonIcon\n ? {\n onClick: onButtonClick,\n icon: buttonIcon,\n title: buttonTitle,\n }\n : undefined,\n ...actionsProp,\n ].filter(isDefined);\n\n const withActions = Boolean(actions?.length);\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick}\n className={cnAttachment(\n {\n size,\n hoverEffect: Boolean(actions?.length || onClick),\n cursor: onClick ? 'pointer' : undefined,\n withActions,\n error: Boolean(errorText),\n },\n [cnMixFlex({ flex: 'flex', gap: 'xs' }), className],\n )}\n ref={ref}\n >\n {withPictogram && (\n <File\n className={cnAttachment('File')}\n extension={fileExtension}\n loading={loading}\n loadingWithProgressSpin\n loadingProgress={loadingProgress}\n size={fileSizeMap[size]}\n />\n )}\n <div\n className={cnAttachment('Content', [\n cnMixFlex({ flex: 'flex', direction: 'column', gap: '2xs' }),\n ])}\n >\n {fileName && (\n <Text\n className={cnAttachment('FileName')}\n size={textSizeMap[size]}\n view=\"primary\"\n lineHeight=\"xs\"\n >\n {fileName}\n </Text>\n )}\n {fileDescription && !loading && (\n <Text\n className={cnAttachment('FileDescription')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"ghost\"\n >\n {fileDescription}\n </Text>\n )}\n {loadingText && loading && (\n <Text\n className={cnAttachment('LoadingText')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"ghost\"\n >\n {loadingProgress\n ? `${loadingText} ${loadingProgress}%`\n : `${loadingText}...`}\n </Text>\n )}\n {errorText && (\n <Text\n className={cnAttachment('ErrorText')}\n size={descriptionSizeMap[size]}\n lineHeight=\"xs\"\n view=\"alert\"\n >\n {errorText}\n </Text>\n )}\n </div>\n {withActions && (\n <div\n className={cnAttachment('Actions', [\n cnMixFlex({ flex: 'flex', gap: 'xs' }),\n ])}\n >\n {actions.map((action, index) => (\n <Button\n key={action.title || index}\n className={cnAttachment('Button')}\n tabIndex={-1}\n onlyIcon\n iconLeft={action.icon}\n onClick={action.onClick}\n title={action.title}\n ref={action.ref}\n size=\"xs\"\n view=\"clear\"\n />\n ))}\n </div>\n )}\n </Tag>\n );\n});\n\nexport { Attachment, cnAttachment };\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownClassName","dropdownRef","dropdownForm","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","inputRef"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDate}from"../DatePickerFieldTypeDate/DatePickerFieldTypeDate";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";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.dropdownRef,i=a.dropdownForm,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.ignoreOutsideClicksRefs,p=a.disabled,q=a.disableDates,r=a.inputRef,s=_objectWithoutProperties(a,_excluded),t=useRef(null),u=useRef(null),v=useRef(null),w=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:p,startRef:v}),x=_slicedToArray(w,2),y=x[0],z=x[1],A=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:y}),B=_slicedToArray(A,2),C=B[0],D=B[1];return useEffect(function(){b&&setRef(b,t.current)},[b,t]),useEffect(function(){if(a.value&&"classic"===e&&C){var b=startOfMonth(a.value);return void(b.getTime()!==C.getTime()&&D(b))}if(a.value&&"classic"!==e&&C){var c=startOfMonth(a.value);c.getTime()!==C.getTime()&&c.getTime()!==addMonths(C,1).getTime()&&D(c)}},[a.value]),useClickOutside({isActive:y,ignoreClicksInsideRefs:[t,u].concat(_toConsumableArray(null!==o&&void 0!==o?o:[])),handler:z.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDate,Object.assign({},s,{disabled:p,ref:t,inputRef:useForkRef([v,r]),onClick:z.on})),React.createElement(DatePickerDropdown,{ref:useForkRef([h,u]),anchorRef:t,isOpen:y,value:a.value||void 0,type:"date",view:e,events:c,locale:f,minDate:a.minDate,className:g,maxDate:a.maxDate,currentVisibleDate:C,form:i,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),z.off()},renderAdditionalControls:l,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:D}))});
|
|
1
|
+
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownClassName","dropdownRef","dropdownForm","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","inputRef"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useEffect,useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{setRef}from"../../../utils/setRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDate}from"../DatePickerFieldTypeDate/DatePickerFieldTypeDate";import{getDropdownZIndex}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";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.dropdownRef,i=a.dropdownForm,j=a.currentVisibleDate,k=a.onChangeCurrentVisibleDate,l=a.renderAdditionalControls,m=a.onDropdownOpen,n=a.dropdownOpen,o=a.ignoreOutsideClicksRefs,p=a.disabled,q=a.disableDates,r=a.inputRef,s=_objectWithoutProperties(a,_excluded),t=useRef(null),u=useRef(null),v=useRef(null),w=useCalendarVisible({dropdownOpen:n,onDropdownOpen:m,disabled:p,startRef:v}),x=_slicedToArray(w,2),y=x[0],z=x[1],A=useCurrentVisibleDate({currentVisibleDate:j,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:k,calendarVisible:y}),B=_slicedToArray(A,2),C=B[0],D=B[1];return useEffect(function(){b&&setRef(b,t.current)},[b,t]),useEffect(function(){if(a.value&&"classic"===e&&C){var b=startOfMonth(a.value);return void(b.getTime()!==C.getTime()&&D(b))}if(a.value&&"classic"!==e&&C){var c=startOfMonth(a.value);c.getTime()!==C.getTime()&&c.getTime()!==addMonths(C,1).getTime()&&D(c)}},[a.value]),useClickOutside({isActive:y,ignoreClicksInsideRefs:[t,u].concat(_toConsumableArray(null!==o&&void 0!==o?o:[])),handler:z.off}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDate,Object.assign({},s,{disabled:p,ref:t,inputRef:useForkRef([v,r]),onClick:z.on})),React.createElement(DatePickerDropdown,{ref:useForkRef([h,u]),anchorRef:t,isOpen:y,value:a.value||void 0,type:"date",view:e,events:c,locale:f,minDate:a.minDate,className:g,maxDate:a.maxDate,currentVisibleDate:C,form:i,onChange:function onChange(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];null===(b=a.onChange)||void 0===b?void 0:b.call.apply(b,[a].concat(d)),z.off()},renderAdditionalControls:l,disableDates:q,zIndex:getDropdownZIndex(a.style),onChangeCurrentVisibleDate:D}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDate.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeDate","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDate","props","ref","events","dateTimeView","locale","dropdownClassName","dropdownRef","dropdownForm","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","inputRefProp","inputRef","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/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';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDate } from '../DatePickerFieldTypeDate/DatePickerFieldTypeDate';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\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 dropdownRef,\n dropdownForm,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n inputRef: inputRefProp,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDate\n {...otherProps}\n disabled={disabled}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, 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={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n />\n </>\n );\n },\n);\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDate.js","names":["addMonths","startOfMonth","React","forwardRef","useEffect","useRef","useClickOutside","useForkRef","setRef","DatePickerDropdown","DatePickerFieldTypeDate","getDropdownZIndex","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDate","props","ref","events","dateTimeView","locale","dropdownClassName","dropdownRef","dropdownForm","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","inputRefProp","inputRef","otherProps","fieldRef","calendarRef","startRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","current","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","on","args","onChange","style"],"sources":["../../../../../../src/components/DatePicker/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';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { setRef } from '##/utils/setRef';\n\nimport { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDate } from '../DatePickerFieldTypeDate/DatePickerFieldTypeDate';\nimport { getDropdownZIndex } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCalendarVisible } from '../useCalendarVisible';\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 dropdownRef,\n dropdownForm,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\n inputRef: inputRefProp,\n ...otherProps\n } = props;\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: inputRef,\n });\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n useEffect(() => {\n if (ref) {\n setRef(ref, fieldRef.current);\n }\n }, [ref, fieldRef]);\n\n useEffect(() => {\n if (props.value && dateTimeView === 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {\n const newVisibleDate = startOfMonth(props.value);\n if (\n newVisibleDate.getTime() !== currentVisibleDate.getTime() &&\n newVisibleDate.getTime() !==\n addMonths(currentVisibleDate, 1).getTime()\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [\n fieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\n handler: setCalendarVisible.off,\n });\n\n return (\n <>\n <DatePickerFieldTypeDate\n {...otherProps}\n disabled={disabled}\n ref={fieldRef}\n inputRef={useForkRef([inputRef, inputRefProp])}\n onClick={setCalendarVisible.on}\n />\n <DatePickerDropdown\n ref={useForkRef([dropdownRef, 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={(...args) => {\n props.onChange?.(...args);\n setCalendarVisible.off();\n }}\n renderAdditionalControls={renderAdditionalControls}\n disableDates={disableDates}\n zIndex={getDropdownZIndex(props.style)}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n />\n </>\n );\n },\n);\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","minDate","maxDate","value","disableDates","onChange","onChangeRange","currentVisibleDate","events","locale","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate"];import{addMonths,startOfMonth}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeMonth}from"../DateTimeMonth/DateTimeMonth";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{DateTimeTypeMonth}from"../DateTimeTypeMonth/DateTimeTypeMonth";import{DateTimeYearSlider}from"../DateTimeYearSlider/DateTimeYearSlider";import{getDaysOfMonth,getDaysOfWeek,getHandleSelectDate,getMouthLabelWithYear,isEqualDay,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeDate=forwardRef(function(a,b){var c=a.className,d=a.minDate,e=a.maxDate,f=a.value,g=a.disableDates,h=a.onChange,i=a.onChangeRange,j=a.currentVisibleDate,k=a.events,l=a.locale,m=void 0===l?ruLocale:l,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.multiplicityHours,q=a.multiplicityMinutes,r=a.multiplicitySeconds,s=a.onMove,t=a.onChangeCurrentVisibleDate,u=_objectWithoutProperties(a,_excluded),v=useFlag(),w=_slicedToArray(v,2),x=w[0],y=w[1];useEffect(function(){x||(null===s||void 0===s?void 0:s(moveTypes[2]))},[x]);var z=useCurrentVisibleDate({currentVisibleDate:j,maxDate:e,minDate:d,value:f,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:t}),A=_slicedToArray(z,2),B=A[0],C=A[1];if(x)return React.createElement(DateTimeTypeMonth,Object.assign({},u,{ref:b,className:c,minDate:d,maxDate:e,locale:m,events:k,currentVisibleDate:B,view:o,onChange:function(a){C(a),y.off()},onMove:s}));var D=getHandleSelectDate({minDate:d,maxDate:e,value:f,onChange:h,onChangeRange:i,isEqualUnit:isEqualDay}),E=getDaysOfMonth({date:B,disableDates:g,handleDayClick:D,value:f,events:k,minDate:d,maxDate:e,locale:m}),F=getMouthLabelWithYear(B,m),G=getDaysOfWeek(m),H=function(){return C(addMonths(B,1))},I=function(){return C(addMonths(B,-1))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:I,nextOnClick:H,label:F,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E}));var J=addMonths(B,1),K=getDaysOfMonth({date:J,handleDayClick:D,value:f,events:k,minDate:d,maxDate:e,locale:m}),L=getMouthLabelWithYear(J,m);return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:I,label:F,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:H,label:L,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:K}))):React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement(DateTimeYearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:B,onChange:C,value:f,locale:m}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:F,onClick:y.on,cursor:"pointer"}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:L,onClick:y.on,cursor:"pointer"}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:K}))))});
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","minDate","maxDate","value","disableDates","onChange","onChangeRange","currentVisibleDate","events","locale","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate"];import{addMonths,startOfMonth}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeMonth}from"../DateTimeMonth/DateTimeMonth";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{DateTimeTypeMonth}from"../DateTimeTypeMonth/DateTimeTypeMonth";import{DateTimeYearSlider}from"../DateTimeYearSlider/DateTimeYearSlider";import{getDaysOfMonth,getDaysOfWeek,getHandleSelectDate,getMouthLabelWithYear,isEqualDay,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeDate=forwardRef(function(a,b){var c=a.className,d=a.minDate,e=a.maxDate,f=a.value,g=a.disableDates,h=a.onChange,i=a.onChangeRange,j=a.currentVisibleDate,k=a.events,l=a.locale,m=void 0===l?ruLocale:l,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.multiplicityHours,q=a.multiplicityMinutes,r=a.multiplicitySeconds,s=a.onMove,t=a.onChangeCurrentVisibleDate,u=_objectWithoutProperties(a,_excluded),v=useFlag(),w=_slicedToArray(v,2),x=w[0],y=w[1];useEffect(function(){x||(null===s||void 0===s?void 0:s(moveTypes[2]))},[x]);var z=useCurrentVisibleDate({currentVisibleDate:j,maxDate:e,minDate:d,value:f,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:t}),A=_slicedToArray(z,2),B=A[0],C=A[1];if(x)return React.createElement(DateTimeTypeMonth,Object.assign({},u,{ref:b,className:c,minDate:d,maxDate:e,locale:m,events:k,currentVisibleDate:B,view:o,onChange:function(a){C(a),y.off()},onMove:s}));var D=getHandleSelectDate({minDate:d,maxDate:e,value:f,onChange:h,onChangeRange:i,isEqualUnit:isEqualDay}),E=getDaysOfMonth({date:B,disableDates:g,handleDayClick:D,value:f,events:k,minDate:d,maxDate:e,locale:m}),F=getMouthLabelWithYear(B,m),G=getDaysOfWeek(m),H=function(){return C(addMonths(B,1))},I=function(){return C(addMonths(B,-1))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:I,nextOnClick:H,label:F,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E}));var J=addMonths(B,1),K=getDaysOfMonth({date:J,disableDates:g,handleDayClick:D,value:f,events:k,minDate:d,maxDate:e,locale:m}),L=getMouthLabelWithYear(J,m);return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:I,label:F,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:H,label:L,onLabelClick:y.on}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:K}))):React.createElement("div",Object.assign({},u,{ref:b,className:cnDateTimeMixLayout({view:o},[c])}),React.createElement(DateTimeYearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:B,onChange:C,value:f,locale:m}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:F,onClick:y.on,cursor:"pointer"}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:E})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:L,onClick:y.on,cursor:"pointer"}),React.createElement(DateTimeMonth,{daysOfWeek:G,daysOfMonth:K}))))});
|
|
2
2
|
//# sourceMappingURL=DateTimeTypeDate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeTypeDate.js","names":["addMonths","startOfMonth","ruLocale","React","forwardRef","useEffect","useFlag","DateTimeLabel","DateTimeMonth","DateTimeToggler","DateTimeTypeMonth","DateTimeYearSlider","getDaysOfMonth","getDaysOfWeek","getHandleSelectDate","getMouthLabelWithYear","isEqualDay","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeDate","props","ref","className","minDate","maxDate","value","disableDates","onChange","onChangeRange","currentVisibleDateProp","currentVisibleDate","events","locale","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate","otherProps","changeMonth","setChangeMonth","startOfUnit","setCurrentVisibleDate","off","handleSelectDate","isEqualUnit","pageOneDaysOfMonth","date","handleDayClick","pageOneLabel","daysOfWeek","nextMonthHandle","prevMonthHandle","on","pageTwoCurrentVisibleDate","pageTwoDaysOfMonth","pageTwoLabel"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.tsx"],"sourcesContent":["import { addMonths, startOfMonth } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeMonth } from '../DateTimeMonth/DateTimeMonth';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport { DateTimeTypeMonth } from '../DateTimeTypeMonth/DateTimeTypeMonth';\nimport { DateTimeYearSlider } from '../DateTimeYearSlider/DateTimeYearSlider';\nimport {\n DateTimeTypeComponent,\n getDaysOfMonth,\n getDaysOfWeek,\n getHandleSelectDate,\n getMouthLabelWithYear,\n isEqualDay,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeDate: DateTimeTypeComponent<'date'> = forwardRef(\n (props, ref) => {\n const {\n className,\n minDate,\n maxDate,\n value,\n disableDates,\n onChange,\n onChangeRange,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n view = dateTimePropViewDefault,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n onMove,\n onChangeCurrentVisibleDate,\n ...otherProps\n } = props;\n\n const [changeMonth, setChangeMonth] = useFlag();\n\n useEffect(() => {\n !changeMonth && onMove?.(moveTypes[2]);\n }, [changeMonth]);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n });\n\n if (changeMonth) {\n return (\n <DateTimeTypeMonth\n {...otherProps}\n ref={ref}\n className={className}\n minDate={minDate}\n maxDate={maxDate}\n locale={locale}\n events={events}\n currentVisibleDate={currentVisibleDate}\n view={view}\n onChange={(value) => {\n setCurrentVisibleDate(value);\n setChangeMonth.off();\n }}\n onMove={onMove}\n />\n );\n }\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualDay,\n });\n\n const pageOneDaysOfMonth = getDaysOfMonth({\n date: currentVisibleDate,\n disableDates,\n handleDayClick: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getMouthLabelWithYear(currentVisibleDate, locale);\n\n const daysOfWeek = getDaysOfWeek(locale);\n\n const nextMonthHandle = () =>\n setCurrentVisibleDate(addMonths(currentVisibleDate, 1));\n const prevMonthHandle = () =>\n setCurrentVisibleDate(addMonths(currentVisibleDate, -1));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={prevMonthHandle}\n nextOnClick={nextMonthHandle}\n label={pageOneLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addMonths(currentVisibleDate, 1);\n\n const pageTwoDaysOfMonth = getDaysOfMonth({\n date: pageTwoCurrentVisibleDate,\n handleDayClick: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageTwoLabel = getMouthLabelWithYear(\n pageTwoCurrentVisibleDate,\n locale,\n );\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={prevMonthHandle}\n label={pageOneLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={nextMonthHandle}\n label={pageTwoLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageTwoDaysOfMonth}\n />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <DateTimeYearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n onClick={setChangeMonth.on}\n cursor=\"pointer\"\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n onClick={setChangeMonth.on}\n cursor=\"pointer\"\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageTwoDaysOfMonth}\n />\n </div>\n </div>\n </div>\n );\n },\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateTimeTypeDate.js","names":["addMonths","startOfMonth","ruLocale","React","forwardRef","useEffect","useFlag","DateTimeLabel","DateTimeMonth","DateTimeToggler","DateTimeTypeMonth","DateTimeYearSlider","getDaysOfMonth","getDaysOfWeek","getHandleSelectDate","getMouthLabelWithYear","isEqualDay","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeDate","props","ref","className","minDate","maxDate","value","disableDates","onChange","onChangeRange","currentVisibleDateProp","currentVisibleDate","events","locale","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate","otherProps","changeMonth","setChangeMonth","startOfUnit","setCurrentVisibleDate","off","handleSelectDate","isEqualUnit","pageOneDaysOfMonth","date","handleDayClick","pageOneLabel","daysOfWeek","nextMonthHandle","prevMonthHandle","on","pageTwoCurrentVisibleDate","pageTwoDaysOfMonth","pageTwoLabel"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.tsx"],"sourcesContent":["import { addMonths, startOfMonth } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeMonth } from '../DateTimeMonth/DateTimeMonth';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport { DateTimeTypeMonth } from '../DateTimeTypeMonth/DateTimeTypeMonth';\nimport { DateTimeYearSlider } from '../DateTimeYearSlider/DateTimeYearSlider';\nimport {\n DateTimeTypeComponent,\n getDaysOfMonth,\n getDaysOfWeek,\n getHandleSelectDate,\n getMouthLabelWithYear,\n isEqualDay,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeDate: DateTimeTypeComponent<'date'> = forwardRef(\n (props, ref) => {\n const {\n className,\n minDate,\n maxDate,\n value,\n disableDates,\n onChange,\n onChangeRange,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n view = dateTimePropViewDefault,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n onMove,\n onChangeCurrentVisibleDate,\n ...otherProps\n } = props;\n\n const [changeMonth, setChangeMonth] = useFlag();\n\n useEffect(() => {\n !changeMonth && onMove?.(moveTypes[2]);\n }, [changeMonth]);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n });\n\n if (changeMonth) {\n return (\n <DateTimeTypeMonth\n {...otherProps}\n ref={ref}\n className={className}\n minDate={minDate}\n maxDate={maxDate}\n locale={locale}\n events={events}\n currentVisibleDate={currentVisibleDate}\n view={view}\n onChange={(value) => {\n setCurrentVisibleDate(value);\n setChangeMonth.off();\n }}\n onMove={onMove}\n />\n );\n }\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualDay,\n });\n\n const pageOneDaysOfMonth = getDaysOfMonth({\n date: currentVisibleDate,\n disableDates,\n handleDayClick: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getMouthLabelWithYear(currentVisibleDate, locale);\n\n const daysOfWeek = getDaysOfWeek(locale);\n\n const nextMonthHandle = () =>\n setCurrentVisibleDate(addMonths(currentVisibleDate, 1));\n const prevMonthHandle = () =>\n setCurrentVisibleDate(addMonths(currentVisibleDate, -1));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={prevMonthHandle}\n nextOnClick={nextMonthHandle}\n label={pageOneLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addMonths(currentVisibleDate, 1);\n\n const pageTwoDaysOfMonth = getDaysOfMonth({\n date: pageTwoCurrentVisibleDate,\n disableDates,\n handleDayClick: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageTwoLabel = getMouthLabelWithYear(\n pageTwoCurrentVisibleDate,\n locale,\n );\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={prevMonthHandle}\n label={pageOneLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={nextMonthHandle}\n label={pageTwoLabel}\n onLabelClick={setChangeMonth.on}\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageTwoDaysOfMonth}\n />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n ref={ref}\n className={cnDateTimeMixLayout({ view }, [className])}\n >\n <DateTimeYearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n onClick={setChangeMonth.on}\n cursor=\"pointer\"\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageOneDaysOfMonth}\n />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n onClick={setChangeMonth.on}\n cursor=\"pointer\"\n />\n <DateTimeMonth\n daysOfWeek={daysOfWeek}\n daysOfMonth={pageTwoDaysOfMonth}\n />\n </div>\n </div>\n </div>\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=["minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDate","events","locale","className","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate"];import{addYears,startOfYear}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{DateTime10Years}from"../DateTime10Years/DateTime10Years";import{DateTime10YearSlider}from"../DateTime10YearSlider/DateTime10YearSlider";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{DateTimeTypeYear}from"../DateTimeTypeYear/DateTimeTypeYear";import{DateTimeYear}from"../DateTimeYear/DateTimeYear";import{getHandleSelectDate,getMonthsOfYear,getYearTitle,isEqualMount,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeMonth=forwardRef(function(a,b){var c=a.minDate,d=a.maxDate,e=a.value,f=a.onChange,g=a.onChangeRange,h=a.disableDates,i=a.currentVisibleDate,j=a.events,k=a.locale,l=void 0===k?ruLocale:k,m=a.className,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.multiplicityHours,q=a.multiplicityMinutes,r=a.multiplicitySeconds,s=a.onMove,t=a.onChangeCurrentVisibleDate,u=_objectWithoutProperties(a,_excluded),v=useFlag(),w=_slicedToArray(v,2),x=w[0],y=w[1],z=y.on,A=y.off;useEffect(function(){x||(null===s||void 0===s?void 0:s(moveTypes[1]))},[x]);var B=useCurrentVisibleDate({currentVisibleDate:i,maxDate:d,minDate:c,value:e,startOfUnit:startOfYear,onChangeCurrentVisibleDate:t}),C=_slicedToArray(B,2),D=C[0],E=C[1];if(x)return React.createElement(DateTimeTypeYear,Object.assign({},u,{ref:b,className:m,currentVisibleDate:D,minDate:c,maxDate:d,locale:l,events:j,view:o,onChange:function(a){E(a),A()},onMove:s}));var F=getHandleSelectDate({minDate:c,maxDate:d,value:e,onChange:f,onChangeRange:g,isEqualUnit:isEqualMount}),G=getMonthsOfYear({date:D,onChange:F,value:e,events:j,disableDates:h,minDate:c,maxDate:d,locale:l}),H=getYearTitle(D),I=function(){return E(addYears(D,1))},J=function(){return E(addYears(D,-1))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:J,nextOnClick:I,label:H,onLabelClick:z}),React.createElement(DateTimeYear,{years:G}));var K=addYears(D,1),L=getYearTitle(K),M=getMonthsOfYear({date:K,onChange:F,value:e,events:j,minDate:c,maxDate:d,locale:l});return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:J,label:H,onLabelClick:z}),React.createElement(DateTime10Years,{years:G})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:I,label:L,onLabelClick:z}),React.createElement(DateTime10Years,{years:M}))):React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTime10YearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:D,onChange:E,value:e,locale:l}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:H,onClick:z,cursor:"pointer"}),React.createElement(DateTime10Years,{years:G})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:L,onClick:z,cursor:"pointer"}),React.createElement(DateTime10Years,{years:M}))))});
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDate","events","locale","className","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate"];import{addYears,startOfYear}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{DateTime10Years}from"../DateTime10Years/DateTime10Years";import{DateTime10YearSlider}from"../DateTime10YearSlider/DateTime10YearSlider";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{DateTimeTypeYear}from"../DateTimeTypeYear/DateTimeTypeYear";import{DateTimeYear}from"../DateTimeYear/DateTimeYear";import{getHandleSelectDate,getMonthsOfYear,getYearTitle,isEqualMount,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeMonth=forwardRef(function(a,b){var c=a.minDate,d=a.maxDate,e=a.value,f=a.onChange,g=a.onChangeRange,h=a.disableDates,i=a.currentVisibleDate,j=a.events,k=a.locale,l=void 0===k?ruLocale:k,m=a.className,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.multiplicityHours,q=a.multiplicityMinutes,r=a.multiplicitySeconds,s=a.onMove,t=a.onChangeCurrentVisibleDate,u=_objectWithoutProperties(a,_excluded),v=useFlag(),w=_slicedToArray(v,2),x=w[0],y=w[1],z=y.on,A=y.off;useEffect(function(){x||(null===s||void 0===s?void 0:s(moveTypes[1]))},[x]);var B=useCurrentVisibleDate({currentVisibleDate:i,maxDate:d,minDate:c,value:e,startOfUnit:startOfYear,onChangeCurrentVisibleDate:t}),C=_slicedToArray(B,2),D=C[0],E=C[1];if(x)return React.createElement(DateTimeTypeYear,Object.assign({},u,{ref:b,className:m,currentVisibleDate:D,minDate:c,maxDate:d,locale:l,events:j,view:o,onChange:function(a){E(a),A()},onMove:s}));var F=getHandleSelectDate({minDate:c,maxDate:d,value:e,onChange:f,onChangeRange:g,isEqualUnit:isEqualMount}),G=getMonthsOfYear({date:D,onChange:F,value:e,events:j,disableDates:h,minDate:c,maxDate:d,locale:l}),H=getYearTitle(D),I=function(){return E(addYears(D,1))},J=function(){return E(addYears(D,-1))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:J,nextOnClick:I,label:H,onLabelClick:z}),React.createElement(DateTimeYear,{years:G}));var K=addYears(D,1),L=getYearTitle(K),M=getMonthsOfYear({date:K,onChange:F,value:e,events:j,disableDates:h,minDate:c,maxDate:d,locale:l});return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:J,label:H,onLabelClick:z}),React.createElement(DateTime10Years,{years:G})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:I,label:L,onLabelClick:z}),React.createElement(DateTime10Years,{years:M}))):React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTime10YearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:D,onChange:E,value:e,locale:l}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:H,onClick:z,cursor:"pointer"}),React.createElement(DateTime10Years,{years:G})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:L,onClick:z,cursor:"pointer"}),React.createElement(DateTime10Years,{years:M}))))});
|
|
2
2
|
//# sourceMappingURL=DateTimeTypeMonth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeTypeMonth.js","names":["addYears","startOfYear","ruLocale","React","forwardRef","useEffect","useFlag","DateTime10Years","DateTime10YearSlider","DateTimeLabel","DateTimeToggler","DateTimeTypeYear","DateTimeYear","getHandleSelectDate","getMonthsOfYear","getYearTitle","isEqualMount","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeMonth","props","ref","minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDateProp","currentVisibleDate","events","locale","className","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate","otherProps","changeYear","on","off","startOfUnit","setCurrentVisibleDate","handleSelectDate","isEqualUnit","pageOneMonthsOfYear","date","pageOneLabel","handleNext","handlePrev","pageTwoCurrentVisibleDate","pageTwoLabel","pageTwoMonthsOfYear"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.tsx"],"sourcesContent":["import { addYears, startOfYear } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { DateTime10Years } from '../DateTime10Years/DateTime10Years';\nimport { DateTime10YearSlider } from '../DateTime10YearSlider/DateTime10YearSlider';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport { DateTimeTypeYear } from '../DateTimeTypeYear/DateTimeTypeYear';\nimport { DateTimeYear } from '../DateTimeYear/DateTimeYear';\nimport {\n DateTimeTypeComponent,\n getHandleSelectDate,\n getMonthsOfYear,\n getYearTitle,\n isEqualMount,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeMonth: DateTimeTypeComponent<'month'> = forwardRef(\n (props, ref) => {\n const {\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n disableDates,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n className,\n view = dateTimePropViewDefault,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n onMove,\n onChangeCurrentVisibleDate,\n ...otherProps\n } = props;\n\n const [changeYear, { on, off }] = useFlag();\n\n useEffect(() => {\n !changeYear && onMove?.(moveTypes[1]);\n }, [changeYear]);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n });\n\n if (changeYear) {\n return (\n <DateTimeTypeYear\n {...otherProps}\n ref={ref}\n className={className}\n currentVisibleDate={currentVisibleDate}\n minDate={minDate}\n maxDate={maxDate}\n locale={locale}\n events={events}\n view={view}\n onChange={(value) => {\n setCurrentVisibleDate(value);\n off();\n }}\n onMove={onMove}\n />\n );\n }\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualMount,\n });\n\n const pageOneMonthsOfYear = getMonthsOfYear({\n date: currentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n disableDates,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getYearTitle(currentVisibleDate);\n\n const handleNext = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, 1));\n const handlePrev = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, -1));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n nextOnClick={handleNext}\n label={pageOneLabel}\n onLabelClick={on}\n />\n <DateTimeYear years={pageOneMonthsOfYear} />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 1);\n\n const pageTwoLabel = getYearTitle(pageTwoCurrentVisibleDate);\n\n const pageTwoMonthsOfYear = getMonthsOfYear({\n date: pageTwoCurrentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n label={pageOneLabel}\n onLabelClick={on}\n />\n <DateTime10Years years={pageOneMonthsOfYear} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={handleNext}\n label={pageTwoLabel}\n onLabelClick={on}\n />\n <DateTime10Years years={pageTwoMonthsOfYear} />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTime10YearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n onClick={on}\n cursor=\"pointer\"\n />\n <DateTime10Years years={pageOneMonthsOfYear} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n onClick={on}\n cursor=\"pointer\"\n />\n <DateTime10Years years={pageTwoMonthsOfYear} />\n </div>\n </div>\n </div>\n );\n },\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateTimeTypeMonth.js","names":["addYears","startOfYear","ruLocale","React","forwardRef","useEffect","useFlag","DateTime10Years","DateTime10YearSlider","DateTimeLabel","DateTimeToggler","DateTimeTypeYear","DateTimeYear","getHandleSelectDate","getMonthsOfYear","getYearTitle","isEqualMount","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeMonth","props","ref","minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDateProp","currentVisibleDate","events","locale","className","view","multiplicityHours","multiplicityMinutes","multiplicitySeconds","onMove","onChangeCurrentVisibleDate","otherProps","changeYear","on","off","startOfUnit","setCurrentVisibleDate","handleSelectDate","isEqualUnit","pageOneMonthsOfYear","date","pageOneLabel","handleNext","handlePrev","pageTwoCurrentVisibleDate","pageTwoLabel","pageTwoMonthsOfYear"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.tsx"],"sourcesContent":["import { addYears, startOfYear } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { DateTime10Years } from '../DateTime10Years/DateTime10Years';\nimport { DateTime10YearSlider } from '../DateTime10YearSlider/DateTime10YearSlider';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport { DateTimeTypeYear } from '../DateTimeTypeYear/DateTimeTypeYear';\nimport { DateTimeYear } from '../DateTimeYear/DateTimeYear';\nimport {\n DateTimeTypeComponent,\n getHandleSelectDate,\n getMonthsOfYear,\n getYearTitle,\n isEqualMount,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeMonth: DateTimeTypeComponent<'month'> = forwardRef(\n (props, ref) => {\n const {\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n disableDates,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n className,\n view = dateTimePropViewDefault,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n onMove,\n onChangeCurrentVisibleDate,\n ...otherProps\n } = props;\n\n const [changeYear, { on, off }] = useFlag();\n\n useEffect(() => {\n !changeYear && onMove?.(moveTypes[1]);\n }, [changeYear]);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n });\n\n if (changeYear) {\n return (\n <DateTimeTypeYear\n {...otherProps}\n ref={ref}\n className={className}\n currentVisibleDate={currentVisibleDate}\n minDate={minDate}\n maxDate={maxDate}\n locale={locale}\n events={events}\n view={view}\n onChange={(value) => {\n setCurrentVisibleDate(value);\n off();\n }}\n onMove={onMove}\n />\n );\n }\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualMount,\n });\n\n const pageOneMonthsOfYear = getMonthsOfYear({\n date: currentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n disableDates,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getYearTitle(currentVisibleDate);\n\n const handleNext = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, 1));\n const handlePrev = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, -1));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n nextOnClick={handleNext}\n label={pageOneLabel}\n onLabelClick={on}\n />\n <DateTimeYear years={pageOneMonthsOfYear} />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 1);\n\n const pageTwoLabel = getYearTitle(pageTwoCurrentVisibleDate);\n\n const pageTwoMonthsOfYear = getMonthsOfYear({\n date: pageTwoCurrentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n disableDates,\n minDate,\n maxDate,\n locale,\n });\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n label={pageOneLabel}\n onLabelClick={on}\n />\n <DateTime10Years years={pageOneMonthsOfYear} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={handleNext}\n label={pageTwoLabel}\n onLabelClick={on}\n />\n <DateTime10Years years={pageTwoMonthsOfYear} />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTime10YearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n onClick={on}\n cursor=\"pointer\"\n />\n <DateTime10Years years={pageOneMonthsOfYear} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n onClick={on}\n cursor=\"pointer\"\n />\n <DateTime10Years years={pageTwoMonthsOfYear} />\n </div>\n </div>\n </div>\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=["minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDate","events","locale","className","view","onMove","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds"];import{addYears,startOfDecade}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{DateTime10Years}from"../DateTime10Years/DateTime10Years";import{DateTime100YearSlider}from"../DateTime100YearSlider/DateTime100YearSlider";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{getDecadeTitle,getHandleSelectDate,getYearsOfDecade,isEqualYear,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeYear=forwardRef(function(a,b){var c=a.minDate,d=a.maxDate,e=a.value,f=a.onChange,g=a.onChangeRange,h=a.disableDates,i=a.currentVisibleDate,j=a.events,k=a.locale,l=void 0===k?ruLocale:k,m=a.className,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.onMove,q=a.onChangeCurrentVisibleDate,r=a.multiplicityHours,s=a.multiplicityMinutes,t=a.multiplicitySeconds,u=_objectWithoutProperties(a,_excluded);useEffect(function(){null===p||void 0===p?void 0:p(moveTypes[0])},[]);var v=useCurrentVisibleDate({currentVisibleDate:i,maxDate:d,minDate:c,value:e,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:q}),w=_slicedToArray(v,2),x=w[0],y=w[1],z=getHandleSelectDate({minDate:c,maxDate:d,value:e,onChange:f,onChangeRange:g,isEqualUnit:isEqualYear}),A=getYearsOfDecade({date:x,onChange:z,value:e,disableDates:h,events:j,minDate:c,maxDate:d,locale:l}),B=getDecadeTitle(x),C=function(){return y(addYears(x,10))},D=function(){return y(addYears(x,-10))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:D,nextOnClick:C,label:B}),React.createElement(DateTime10Years,{years:A}));var E=addYears(x,10),F=getYearsOfDecade({date:E,onChange:z,value:e,events:j,minDate:c,maxDate:d,locale:l}),G=getDecadeTitle(E);return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:D,label:B}),React.createElement(DateTime10Years,{years:A})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:C,label:G}),React.createElement(DateTime10Years,{years:F}))):React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTime100YearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:x,onChange:y,value:e,locale:l}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:B}),React.createElement(DateTime10Years,{years:A})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:G}),React.createElement(DateTime10Years,{years:F}))))});
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDate","events","locale","className","view","onMove","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds"];import{addYears,startOfDecade}from"date-fns";import ruLocale from"date-fns/locale/ru";import React,{forwardRef,useEffect}from"react";import{DateTime10Years}from"../DateTime10Years/DateTime10Years";import{DateTime100YearSlider}from"../DateTime100YearSlider/DateTime100YearSlider";import{DateTimeLabel}from"../DateTimeLabel/DateTimeLabel";import{DateTimeToggler}from"../DateTimeToggler/DateTimeToggler";import{getDecadeTitle,getHandleSelectDate,getYearsOfDecade,isEqualYear,moveTypes,useCurrentVisibleDate}from"../helpers";import{dateTimePropView,dateTimePropViewDefault}from"../helpers/types";import{cnDateTimeMixLayout}from"../mixs";export var DateTimeTypeYear=forwardRef(function(a,b){var c=a.minDate,d=a.maxDate,e=a.value,f=a.onChange,g=a.onChangeRange,h=a.disableDates,i=a.currentVisibleDate,j=a.events,k=a.locale,l=void 0===k?ruLocale:k,m=a.className,n=a.view,o=void 0===n?dateTimePropViewDefault:n,p=a.onMove,q=a.onChangeCurrentVisibleDate,r=a.multiplicityHours,s=a.multiplicityMinutes,t=a.multiplicitySeconds,u=_objectWithoutProperties(a,_excluded);useEffect(function(){null===p||void 0===p?void 0:p(moveTypes[0])},[]);var v=useCurrentVisibleDate({currentVisibleDate:i,maxDate:d,minDate:c,value:e,startOfUnit:startOfDecade,onChangeCurrentVisibleDate:q}),w=_slicedToArray(v,2),x=w[0],y=w[1],z=getHandleSelectDate({minDate:c,maxDate:d,value:e,onChange:f,onChangeRange:g,isEqualUnit:isEqualYear}),A=getYearsOfDecade({date:x,onChange:z,value:e,disableDates:h,events:j,minDate:c,maxDate:d,locale:l}),B=getDecadeTitle(x),C=function(){return y(addYears(x,10))},D=function(){return y(addYears(x,-10))};if(o===dateTimePropView[0])return React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:D,nextOnClick:C,label:B}),React.createElement(DateTime10Years,{years:A}));var E=addYears(x,10),F=getYearsOfDecade({date:E,onChange:z,value:e,events:j,disableDates:h,minDate:c,maxDate:d,locale:l}),G=getDecadeTitle(E);return o===dateTimePropView[1]?React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),prevOnClick:D,label:B}),React.createElement(DateTime10Years,{years:A})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeToggler,{className:cnDateTimeMixLayout("Label"),nextOnClick:C,label:G}),React.createElement(DateTime10Years,{years:F}))):React.createElement("div",Object.assign({},u,{className:cnDateTimeMixLayout({view:o},[m]),ref:b}),React.createElement(DateTime100YearSlider,{className:cnDateTimeMixLayout("Slider"),currentVisibleDate:x,onChange:y,value:e,locale:l}),React.createElement("div",{className:cnDateTimeMixLayout("PageWrapper")},React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:B}),React.createElement(DateTime10Years,{years:A})),React.createElement("div",{className:cnDateTimeMixLayout("Page")},React.createElement(DateTimeLabel,{className:cnDateTimeMixLayout("Label"),label:G}),React.createElement(DateTime10Years,{years:F}))))});
|
|
2
2
|
//# sourceMappingURL=DateTimeTypeYear.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeTypeYear.js","names":["addYears","startOfDecade","ruLocale","React","forwardRef","useEffect","DateTime10Years","DateTime100YearSlider","DateTimeLabel","DateTimeToggler","getDecadeTitle","getHandleSelectDate","getYearsOfDecade","isEqualYear","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeYear","props","ref","minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDateProp","currentVisibleDate","events","locale","className","view","onMove","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","otherProps","startOfUnit","setCurrentVisibleDate","handleSelectDate","isEqualUnit","pageOneYearsOfDecade","date","pageOneLabel","handleNext","handlePrev","pageTwoCurrentVisibleDate","pageTwoYearsOfDecade","pageTwoLabel"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { DateTime10Years } from '../DateTime10Years/DateTime10Years';\nimport { DateTime100YearSlider } from '../DateTime100YearSlider/DateTime100YearSlider';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport {\n DateTimeTypeComponent,\n getDecadeTitle,\n getHandleSelectDate,\n getYearsOfDecade,\n isEqualYear,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeYear: DateTimeTypeComponent<'year'> = forwardRef(\n (props, ref) => {\n const {\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n disableDates,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n className,\n view = dateTimePropViewDefault,\n onMove,\n onChangeCurrentVisibleDate,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n ...otherProps\n } = props;\n\n useEffect(() => {\n onMove?.(moveTypes[0]);\n }, []);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n });\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualYear,\n });\n\n const pageOneYearsOfDecade = getYearsOfDecade({\n date: currentVisibleDate,\n onChange: handleSelectDate,\n value,\n disableDates,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getDecadeTitle(currentVisibleDate);\n\n const handleNext = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, 10));\n const handlePrev = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, -10));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n nextOnClick={handleNext}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 10);\n\n const pageTwoYearsOfDecade = getYearsOfDecade({\n date: pageTwoCurrentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageTwoLabel = getDecadeTitle(pageTwoCurrentVisibleDate);\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={handleNext}\n label={pageTwoLabel}\n />\n <DateTime10Years years={pageTwoYearsOfDecade} />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTime100YearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n />\n <DateTime10Years years={pageTwoYearsOfDecade} />\n </div>\n </div>\n </div>\n );\n },\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateTimeTypeYear.js","names":["addYears","startOfDecade","ruLocale","React","forwardRef","useEffect","DateTime10Years","DateTime100YearSlider","DateTimeLabel","DateTimeToggler","getDecadeTitle","getHandleSelectDate","getYearsOfDecade","isEqualYear","moveTypes","useCurrentVisibleDate","dateTimePropView","dateTimePropViewDefault","cnDateTimeMixLayout","DateTimeTypeYear","props","ref","minDate","maxDate","value","onChange","onChangeRange","disableDates","currentVisibleDateProp","currentVisibleDate","events","locale","className","view","onMove","onChangeCurrentVisibleDate","multiplicityHours","multiplicityMinutes","multiplicitySeconds","otherProps","startOfUnit","setCurrentVisibleDate","handleSelectDate","isEqualUnit","pageOneYearsOfDecade","date","pageOneLabel","handleNext","handlePrev","pageTwoCurrentVisibleDate","pageTwoYearsOfDecade","pageTwoLabel"],"sources":["../../../../../../src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport ruLocale from 'date-fns/locale/ru';\nimport React, { forwardRef, useEffect } from 'react';\n\nimport { DateTime10Years } from '../DateTime10Years/DateTime10Years';\nimport { DateTime100YearSlider } from '../DateTime100YearSlider/DateTime100YearSlider';\nimport { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';\nimport { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';\nimport {\n DateTimeTypeComponent,\n getDecadeTitle,\n getHandleSelectDate,\n getYearsOfDecade,\n isEqualYear,\n moveTypes,\n useCurrentVisibleDate,\n} from '../helpers';\nimport { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';\nimport { cnDateTimeMixLayout } from '../mixs';\n\nexport const DateTimeTypeYear: DateTimeTypeComponent<'year'> = forwardRef(\n (props, ref) => {\n const {\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n disableDates,\n currentVisibleDate: currentVisibleDateProp,\n events,\n locale = ruLocale,\n className,\n view = dateTimePropViewDefault,\n onMove,\n onChangeCurrentVisibleDate,\n multiplicityHours,\n multiplicityMinutes,\n multiplicitySeconds,\n ...otherProps\n } = props;\n\n useEffect(() => {\n onMove?.(moveTypes[0]);\n }, []);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate,\n minDate,\n value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n });\n\n const handleSelectDate = getHandleSelectDate({\n minDate,\n maxDate,\n value,\n onChange,\n onChangeRange,\n isEqualUnit: isEqualYear,\n });\n\n const pageOneYearsOfDecade = getYearsOfDecade({\n date: currentVisibleDate,\n onChange: handleSelectDate,\n value,\n disableDates,\n events,\n minDate,\n maxDate,\n locale,\n });\n\n const pageOneLabel = getDecadeTitle(currentVisibleDate);\n\n const handleNext = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, 10));\n const handlePrev = () =>\n setCurrentVisibleDate(addYears(currentVisibleDate, -10));\n\n if (view === dateTimePropView[0]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n nextOnClick={handleNext}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n );\n }\n\n const pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 10);\n\n const pageTwoYearsOfDecade = getYearsOfDecade({\n date: pageTwoCurrentVisibleDate,\n onChange: handleSelectDate,\n value,\n events,\n disableDates,\n minDate,\n maxDate,\n locale,\n });\n\n const pageTwoLabel = getDecadeTitle(pageTwoCurrentVisibleDate);\n\n if (view === dateTimePropView[1]) {\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n prevOnClick={handlePrev}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeToggler\n className={cnDateTimeMixLayout('Label')}\n nextOnClick={handleNext}\n label={pageTwoLabel}\n />\n <DateTime10Years years={pageTwoYearsOfDecade} />\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...otherProps}\n className={cnDateTimeMixLayout({ view }, [className])}\n ref={ref}\n >\n <DateTime100YearSlider\n className={cnDateTimeMixLayout('Slider')}\n currentVisibleDate={currentVisibleDate}\n onChange={setCurrentVisibleDate}\n value={value}\n locale={locale}\n />\n <div className={cnDateTimeMixLayout('PageWrapper')}>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageOneLabel}\n />\n <DateTime10Years years={pageOneYearsOfDecade} />\n </div>\n <div className={cnDateTimeMixLayout('Page')}>\n <DateTimeLabel\n className={cnDateTimeMixLayout('Label')}\n label={pageTwoLabel}\n />\n <DateTime10Years years={pageTwoYearsOfDecade} />\n </div>\n </div>\n </div>\n );\n },\n);\n"],"mappings":"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"}
|
|
@@ -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=["valueAtom","inputMinWidthAtom"],_excluded2=["children","className","inputMinWidthAtom","size","style"],_excluded3=["className","inputRef","inputMaxLength","value","inputValue","inputDefaultValue","renderValue","onFocus","onBlur","autoFocus","inputTabIndex","inputAriaLabel","disabled","size","placeholder","onKeyDown","onKeyDownCapture","onChange","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onWheel","disableInput"];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{useAction,useAtom,useUpdate}from"@reatom/npm-react";import React,{forwardRef,useRef}from"react";import{useComponentSize}from"../../../hooks/useComponentSize";import{useForkRef}from"../../../hooks/useForkRef";import{usePropAtom,useSendToAtom,withCtx}from"../../../utils/state";import{useCreateAtom}from"../../../utils/state/useCreateAtom";import{cnFieldArrayValueInlineControl}from"./cnFieldArrayValueInlineControl";var gapMap={l:"calc(var(--space-3xs) + var(--space-2xs))",m:"var(--space-2xs)",s:"var(--space-3xs)",xs:"var(--space-3xs)"},verticalPaddingMap={l:"var(--space-xs)",m:"calc(var(--space-xs) - var(--space-3xs))",s:"var(--space-2xs)",xs:"var(--space-3xs)"},inputHeightMap={l:"var(--space-2xl)",m:"calc(var(--space-2xl) - var(--space-2xs))",s:"var(--space-xl)",xs:"var(--space-l)"},InputFakeElement=forwardRef(function(a,b){var c=a.valueAtom,d=a.inputMinWidthAtom,e=_objectWithoutProperties(a,_excluded),f=useAtom(c),g=_slicedToArray(f,1),h=g[0],i=useRef(null),j=useComponentSize(i),k=j.width;return useUpdate(function(a,b){d(a,b)},[k]),React.createElement("div",Object.assign({},e,{ref:useForkRef([b,i])}),h)}),Root=forwardRef(function(a,b){var c,d=a.children,e=a.className,f=a.inputMinWidthAtom,g=a.size,h=void 0===g?"m":g,i=a.style,j=_objectWithoutProperties(a,_excluded2),k=useAtom(f),l=_slicedToArray(k,1),m=l[0];return React.createElement("div",Object.assign({},j,{className:cnFieldArrayValueInlineControl(null,[e]),ref:b,style:_objectSpread(_objectSpread({},i),{},(c={},_defineProperty(c,"--field-array-value-inline-control-items-gap",gapMap[h]),_defineProperty(c,"--field-array-value-inline-control-input-min-width","".concat(m,"px")),_defineProperty(c,"--field-array-value-inline-control-vertical-padding","".concat(verticalPaddingMap[h])),_defineProperty(c,"--field-array-value-inline-control-input-height","".concat(inputHeightMap[h])),c))}),d)}),FieldArrayValueInlineControlRender=function(a,b){var c=a.className,d=a.inputRef,e=a.inputMaxLength,f=a.value,g=void 0===f?[]:f,h=a.inputValue,i=a.inputDefaultValue,j=void 0===i?"":i,k=a.renderValue,l=a.onFocus,m=a.onBlur,n=a.autoFocus,o=a.inputTabIndex,p=a.inputAriaLabel,q=a.disabled,r=a.size,s=void 0===r?"m":r,t=a.placeholder,u=a.onKeyDown,v=a.onKeyDownCapture,w=a.onChange,x=a.onKeyUp,y=a.onKeyUpCapture,z=a.onCopy,A=a.onCopyCapture,B=a.onCut,C=a.onCutCapture,D=a.onPaste,E=a.onPasteCapture,F=a.onWheel,G=a.disableInput,H=_objectWithoutProperties(a,_excluded3),I=useSendToAtom(a),J=usePropAtom(I,"inputValue"),K=useCreateAtom(h||j
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["valueAtom","inputMinWidthAtom"],_excluded2=["children","className","inputMinWidthAtom","size","style"],_excluded3=["className","inputRef","inputMaxLength","value","inputValue","inputDefaultValue","renderValue","onFocus","onBlur","autoFocus","inputTabIndex","inputAriaLabel","disabled","size","placeholder","onKeyDown","onKeyDownCapture","onChange","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onWheel","disableInput"];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{useAction,useAtom,useUpdate}from"@reatom/npm-react";import React,{forwardRef,useRef}from"react";import{useComponentSize}from"../../../hooks/useComponentSize";import{useForkRef}from"../../../hooks/useForkRef";import{usePropAtom,useSendToAtom,withCtx}from"../../../utils/state";import{useCreateAtom}from"../../../utils/state/useCreateAtom";import{cnFieldArrayValueInlineControl}from"./cnFieldArrayValueInlineControl";var gapMap={l:"calc(var(--space-3xs) + var(--space-2xs))",m:"var(--space-2xs)",s:"var(--space-3xs)",xs:"var(--space-3xs)"},verticalPaddingMap={l:"var(--space-xs)",m:"calc(var(--space-xs) - var(--space-3xs))",s:"var(--space-2xs)",xs:"var(--space-3xs)"},inputHeightMap={l:"var(--space-2xl)",m:"calc(var(--space-2xl) - var(--space-2xs))",s:"var(--space-xl)",xs:"var(--space-l)"},InputFakeElement=forwardRef(function(a,b){var c=a.valueAtom,d=a.inputMinWidthAtom,e=_objectWithoutProperties(a,_excluded),f=useAtom(c),g=_slicedToArray(f,1),h=g[0],i=useRef(null),j=useComponentSize(i),k=j.width;return useUpdate(function(a,b){d(a,b)},[k]),React.createElement("div",Object.assign({},e,{ref:useForkRef([b,i])}),h)}),Root=forwardRef(function(a,b){var c,d=a.children,e=a.className,f=a.inputMinWidthAtom,g=a.size,h=void 0===g?"m":g,i=a.style,j=_objectWithoutProperties(a,_excluded2),k=useAtom(f),l=_slicedToArray(k,1),m=l[0];return React.createElement("div",Object.assign({},j,{className:cnFieldArrayValueInlineControl(null,[e]),ref:b,style:_objectSpread(_objectSpread({},i),{},(c={},_defineProperty(c,"--field-array-value-inline-control-items-gap",gapMap[h]),_defineProperty(c,"--field-array-value-inline-control-input-min-width","".concat(m,"px")),_defineProperty(c,"--field-array-value-inline-control-vertical-padding","".concat(verticalPaddingMap[h])),_defineProperty(c,"--field-array-value-inline-control-input-height","".concat(inputHeightMap[h])),c))}),d)}),FieldArrayValueInlineControlRender=function(a,b){var c=a.className,d=a.inputRef,e=a.inputMaxLength,f=a.value,g=void 0===f?[]:f,h=a.inputValue,i=a.inputDefaultValue,j=void 0===i?"":i,k=a.renderValue,l=a.onFocus,m=a.onBlur,n=a.autoFocus,o=a.inputTabIndex,p=a.inputAriaLabel,q=a.disabled,r=a.size,s=void 0===r?"m":r,t=a.placeholder,u=a.onKeyDown,v=a.onKeyDownCapture,w=a.onChange,x=a.onKeyUp,y=a.onKeyUpCapture,z=a.onCopy,A=a.onCopyCapture,B=a.onCut,C=a.onCutCapture,D=a.onPaste,E=a.onPasteCapture,F=a.onWheel,G=a.disableInput,H=_objectWithoutProperties(a,_excluded3),I=useSendToAtom(a),J=usePropAtom(I,"inputValue"),K=useCreateAtom(h||j),L=useCreateAtom(j),M=useCreateAtom(0),N=useRef(null),O=useRef(null),P=useAction(function(a,b){K(a,b.target.value);var c=a.get(I),d=c.onChange;d&&d(b)},[]);return useAtom(function(a){var b=a.spy(J),c=a.get(L);c?L(a,""):(O.current&&(O.current.value=b||""),K(a,b))}),React.createElement(Root,Object.assign({},H,{className:cnFieldArrayValueInlineControl(null,[c]),ref:b,size:s,inputMinWidthAtom:M}),k(g||[]),React.createElement("input",{className:cnFieldArrayValueInlineControl("Input",{disabled:G}),onChange:P,ref:useForkRef([O,d]),maxLength:e,onFocus:l,onBlur:m,autoFocus:n,tabIndex:o,"aria-label":p,onKeyDown:u,onKeyDownCapture:v,onKeyUp:x,onKeyUpCapture:y,disabled:q,type:"text",placeholder:g.length?void 0:t,onCopy:z,onCopyCapture:A,onCut:B,onCutCapture:C,onPaste:D,onPasteCapture:E,onWheel:F,defaultValue:j,readOnly:G}),React.createElement(InputFakeElement,{ref:N,className:cnFieldArrayValueInlineControl("HelperInputFakeElement"),valueAtom:K,inputMinWidthAtom:M}))};export var FieldArrayValueInlineControl=withCtx(forwardRef(FieldArrayValueInlineControlRender));
|
|
2
2
|
//# sourceMappingURL=FieldArrayValueInlineControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldArrayValueInlineControl.js","names":["useAction","useAtom","useUpdate","React","forwardRef","useRef","useComponentSize","useForkRef","usePropAtom","useSendToAtom","withCtx","useCreateAtom","cnFieldArrayValueInlineControl","gapMap","l","m","s","xs","verticalPaddingMap","inputHeightMap","InputFakeElement","componentRef","valueAtom","inputMinWidthAtom","otherProps","value","ref","width","ctx","Root","children","className","size","style","inputMinWidth","FieldArrayValueInlineControlRender","props","inputRefProp","inputRef","inputMaxLength","inputValue","inputDefaultValue","renderValue","onFocus","onBlur","autoFocus","inputTabIndex","inputAriaLabel","disabled","placeholder","onKeyDown","onKeyDownCapture","onChange","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onWheel","disableInput","propsAtom","inputValuePropAtom","inputValueAtom","inputDefaultValueAtom","fakeInputRef","handleChange","e","target","get","inputValueProp","spy","current","length","FieldArrayValueInlineControl"],"sources":["../../../../../../src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.tsx"],"sourcesContent":["import { AtomMut } from '@reatom/framework';\nimport { useAction, useAtom, useUpdate } from '@reatom/npm-react';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { usePropAtom, useSendToAtom, withCtx } from '##/utils/state';\nimport { useCreateAtom } from '##/utils/state/useCreateAtom';\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\nimport { FieldPropSize } from '../types';\nimport { cnFieldArrayValueInlineControl } from './cnFieldArrayValueInlineControl';\nimport {\n FieldArrayValueInlineControlComponent,\n FieldArrayValueInlineControlProps,\n} from './types';\n\nconst gapMap: Record<FieldPropSize, string> = {\n l: 'calc(var(--space-3xs) + var(--space-2xs))',\n m: 'var(--space-2xs)',\n s: 'var(--space-3xs)',\n xs: 'var(--space-3xs)',\n};\n\nconst verticalPaddingMap: Record<FieldPropSize, string> = {\n l: 'var(--space-xs)',\n m: 'calc(var(--space-xs) - var(--space-3xs))',\n s: 'var(--space-2xs)',\n xs: 'var(--space-3xs)',\n};\n\nconst inputHeightMap: Record<FieldPropSize, string> = {\n l: 'var(--space-2xl)',\n m: 'calc(var(--space-2xl) - var(--space-2xs))',\n s: 'var(--space-xl)',\n xs: 'var(--space-l)',\n};\n\nconst InputFakeElement = forwardRef<\n HTMLDivElement,\n PropsWithHTMLAttributes<\n {\n valueAtom: AtomMut<string>;\n inputMinWidthAtom: AtomMut<number>;\n },\n HTMLDivElement\n >\n>(({ valueAtom, inputMinWidthAtom, ...otherProps }, componentRef) => {\n const [value] = useAtom(valueAtom);\n const ref = useRef<HTMLDivElement>(null);\n\n const { width } = useComponentSize(ref);\n\n useUpdate(\n (ctx, width) => {\n inputMinWidthAtom(ctx, width);\n },\n [width],\n );\n\n return (\n <div {...otherProps} ref={useForkRef([componentRef, ref])}>\n {value}\n </div>\n );\n});\n\nconst Root = forwardRef<\n HTMLDivElement,\n PropsWithHTMLAttributes<\n {\n inputMinWidthAtom: AtomMut<number>;\n size: FieldArrayValueInlineControlProps<unknown>['size'];\n },\n HTMLDivElement\n >\n>(\n (\n {\n children,\n className,\n inputMinWidthAtom,\n size = 'm',\n style,\n ...otherProps\n },\n ref,\n ) => {\n const [inputMinWidth] = useAtom(inputMinWidthAtom);\n\n return (\n <div\n {...otherProps}\n className={cnFieldArrayValueInlineControl(null, [className])}\n ref={ref}\n style={{\n ...style,\n ['--field-array-value-inline-control-items-gap' as string]:\n gapMap[size],\n ['--field-array-value-inline-control-input-min-width' as string]: `${inputMinWidth}px`,\n ['--field-array-value-inline-control-vertical-padding' as string]: `${verticalPaddingMap[size]}`,\n ['--field-array-value-inline-control-input-height' as string]: `${inputHeightMap[size]}`,\n }}\n >\n {children}\n </div>\n );\n },\n);\n\nconst FieldArrayValueInlineControlRender = (\n props: FieldArrayValueInlineControlProps<unknown>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n className,\n inputRef: inputRefProp,\n inputMaxLength,\n value = [],\n inputValue,\n inputDefaultValue = '',\n renderValue,\n onFocus,\n onBlur,\n autoFocus,\n inputTabIndex,\n inputAriaLabel,\n disabled,\n size = 'm',\n placeholder,\n onKeyDown,\n onKeyDownCapture,\n onChange,\n onKeyUp,\n onKeyUpCapture,\n onCopy,\n onCopyCapture,\n onCut,\n onCutCapture,\n onPaste,\n onPasteCapture,\n onWheel,\n disableInput,\n ...otherProps\n } = props;\n\n const propsAtom = useSendToAtom(props);\n const inputValuePropAtom = usePropAtom(propsAtom, 'inputValue');\n // const valueAtom = usePropAtom(propsAtom, 'value');\n const inputValueAtom = useCreateAtom(inputValue || inputDefaultValue || '');\n const inputDefaultValueAtom = useCreateAtom(inputDefaultValue);\n const inputMinWidthAtom = useCreateAtom(0);\n\n const fakeInputRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleChange = useAction(\n (ctx, e: React.ChangeEvent<HTMLInputElement>) => {\n inputValueAtom(ctx, e.target.value);\n const { onChange } = ctx.get(propsAtom);\n if (onChange) {\n onChange(e);\n }\n },\n [],\n );\n\n // const [valueNode] = useAtom((ctx) => {\n // const value = ctx.spy(valueAtom);\n // const { renderValue } = ctx.get(propsAtom);\n // return renderValue(value || []);\n // });\n\n useAtom((ctx) => {\n const inputValueProp = ctx.spy(inputValuePropAtom);\n const inputDefaultValue = ctx.get(inputDefaultValueAtom);\n if (inputDefaultValue) {\n inputDefaultValueAtom(ctx, '');\n } else {\n if (inputRef.current) {\n inputRef.current.value = inputValueProp || '';\n }\n\n inputValueAtom(ctx, inputValueProp || '');\n }\n });\n\n return (\n <Root\n {...otherProps}\n className={cnFieldArrayValueInlineControl(null, [className])}\n ref={ref}\n size={size}\n inputMinWidthAtom={inputMinWidthAtom}\n >\n {renderValue(value || [])}\n <input\n className={cnFieldArrayValueInlineControl('Input', {\n disabled: disableInput,\n })}\n onChange={handleChange}\n ref={useForkRef([inputRef, inputRefProp])}\n maxLength={inputMaxLength}\n onFocus={onFocus}\n onBlur={onBlur}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n tabIndex={inputTabIndex}\n aria-label={inputAriaLabel}\n onKeyDown={onKeyDown}\n onKeyDownCapture={onKeyDownCapture}\n onKeyUp={onKeyUp}\n onKeyUpCapture={onKeyUpCapture}\n disabled={disabled}\n type=\"text\"\n placeholder={value.length ? undefined : placeholder}\n onCopy={onCopy}\n onCopyCapture={onCopyCapture}\n onCut={onCut}\n onCutCapture={onCutCapture}\n onPaste={onPaste}\n onPasteCapture={onPasteCapture}\n onWheel={onWheel}\n defaultValue={inputDefaultValue}\n readOnly={disableInput}\n />\n <InputFakeElement\n ref={fakeInputRef}\n className={cnFieldArrayValueInlineControl('HelperInputFakeElement')}\n valueAtom={inputValueAtom}\n inputMinWidthAtom={inputMinWidthAtom}\n />\n </Root>\n );\n};\n\nexport const FieldArrayValueInlineControl = withCtx(\n forwardRef(FieldArrayValueInlineControlRender),\n) as FieldArrayValueInlineControlComponent;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldArrayValueInlineControl.js","names":["useAction","useAtom","useUpdate","React","forwardRef","useRef","useComponentSize","useForkRef","usePropAtom","useSendToAtom","withCtx","useCreateAtom","cnFieldArrayValueInlineControl","gapMap","l","m","s","xs","verticalPaddingMap","inputHeightMap","InputFakeElement","componentRef","valueAtom","inputMinWidthAtom","otherProps","value","ref","width","ctx","Root","children","className","size","style","inputMinWidth","FieldArrayValueInlineControlRender","props","inputRefProp","inputRef","inputMaxLength","inputValue","inputDefaultValue","renderValue","onFocus","onBlur","autoFocus","inputTabIndex","inputAriaLabel","disabled","placeholder","onKeyDown","onKeyDownCapture","onChange","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onWheel","disableInput","propsAtom","inputValuePropAtom","inputValueAtom","inputDefaultValueAtom","fakeInputRef","handleChange","e","target","get","inputValueProp","spy","current","length","FieldArrayValueInlineControl"],"sources":["../../../../../../src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.tsx"],"sourcesContent":["import { AtomMut } from '@reatom/framework';\nimport { useAction, useAtom, useUpdate } from '@reatom/npm-react';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { usePropAtom, useSendToAtom, withCtx } from '##/utils/state';\nimport { useCreateAtom } from '##/utils/state/useCreateAtom';\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\nimport { FieldPropSize } from '../types';\nimport { cnFieldArrayValueInlineControl } from './cnFieldArrayValueInlineControl';\nimport {\n FieldArrayValueInlineControlComponent,\n FieldArrayValueInlineControlProps,\n} from './types';\n\nconst gapMap: Record<FieldPropSize, string> = {\n l: 'calc(var(--space-3xs) + var(--space-2xs))',\n m: 'var(--space-2xs)',\n s: 'var(--space-3xs)',\n xs: 'var(--space-3xs)',\n};\n\nconst verticalPaddingMap: Record<FieldPropSize, string> = {\n l: 'var(--space-xs)',\n m: 'calc(var(--space-xs) - var(--space-3xs))',\n s: 'var(--space-2xs)',\n xs: 'var(--space-3xs)',\n};\n\nconst inputHeightMap: Record<FieldPropSize, string> = {\n l: 'var(--space-2xl)',\n m: 'calc(var(--space-2xl) - var(--space-2xs))',\n s: 'var(--space-xl)',\n xs: 'var(--space-l)',\n};\n\nconst InputFakeElement = forwardRef<\n HTMLDivElement,\n PropsWithHTMLAttributes<\n {\n valueAtom: AtomMut<string | undefined>;\n inputMinWidthAtom: AtomMut<number>;\n },\n HTMLDivElement\n >\n>(({ valueAtom, inputMinWidthAtom, ...otherProps }, componentRef) => {\n const [value] = useAtom(valueAtom);\n\n const ref = useRef<HTMLDivElement>(null);\n\n const { width } = useComponentSize(ref);\n\n useUpdate(\n (ctx, width) => {\n inputMinWidthAtom(ctx, width);\n },\n [width],\n );\n\n return (\n <div {...otherProps} ref={useForkRef([componentRef, ref])}>\n {value}\n </div>\n );\n});\n\nconst Root = forwardRef<\n HTMLDivElement,\n PropsWithHTMLAttributes<\n {\n inputMinWidthAtom: AtomMut<number>;\n size: FieldArrayValueInlineControlProps<unknown>['size'];\n },\n HTMLDivElement\n >\n>(\n (\n {\n children,\n className,\n inputMinWidthAtom,\n size = 'm',\n style,\n ...otherProps\n },\n ref,\n ) => {\n const [inputMinWidth] = useAtom(inputMinWidthAtom);\n\n return (\n <div\n {...otherProps}\n className={cnFieldArrayValueInlineControl(null, [className])}\n ref={ref}\n style={{\n ...style,\n ['--field-array-value-inline-control-items-gap' as string]:\n gapMap[size],\n ['--field-array-value-inline-control-input-min-width' as string]: `${inputMinWidth}px`,\n ['--field-array-value-inline-control-vertical-padding' as string]: `${verticalPaddingMap[size]}`,\n ['--field-array-value-inline-control-input-height' as string]: `${inputHeightMap[size]}`,\n }}\n >\n {children}\n </div>\n );\n },\n);\n\nconst FieldArrayValueInlineControlRender = (\n props: FieldArrayValueInlineControlProps<unknown>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n className,\n inputRef: inputRefProp,\n inputMaxLength,\n value = [],\n inputValue,\n inputDefaultValue = '',\n renderValue,\n onFocus,\n onBlur,\n autoFocus,\n inputTabIndex,\n inputAriaLabel,\n disabled,\n size = 'm',\n placeholder,\n onKeyDown,\n onKeyDownCapture,\n onChange,\n onKeyUp,\n onKeyUpCapture,\n onCopy,\n onCopyCapture,\n onCut,\n onCutCapture,\n onPaste,\n onPasteCapture,\n onWheel,\n disableInput,\n ...otherProps\n } = props;\n\n const propsAtom = useSendToAtom(props);\n const inputValuePropAtom = usePropAtom(propsAtom, 'inputValue');\n // const valueAtom = usePropAtom(propsAtom, 'value');\n const inputValueAtom = useCreateAtom<string | undefined>(\n inputValue || inputDefaultValue,\n );\n const inputDefaultValueAtom = useCreateAtom(inputDefaultValue);\n const inputMinWidthAtom = useCreateAtom(0);\n\n const fakeInputRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleChange = useAction(\n (ctx, e: React.ChangeEvent<HTMLInputElement>) => {\n inputValueAtom(ctx, e.target.value);\n const { onChange } = ctx.get(propsAtom);\n if (onChange) {\n onChange(e);\n }\n },\n [],\n );\n\n useAtom((ctx) => {\n const inputValueProp = ctx.spy(inputValuePropAtom);\n const inputDefaultValue = ctx.get(inputDefaultValueAtom);\n if (inputDefaultValue) {\n inputDefaultValueAtom(ctx, '');\n } else {\n if (inputRef.current) {\n inputRef.current.value = inputValueProp || '';\n }\n\n inputValueAtom(ctx, inputValueProp);\n }\n });\n\n return (\n <Root\n {...otherProps}\n className={cnFieldArrayValueInlineControl(null, [className])}\n ref={ref}\n size={size}\n inputMinWidthAtom={inputMinWidthAtom}\n >\n {renderValue(value || [])}\n <input\n className={cnFieldArrayValueInlineControl('Input', {\n disabled: disableInput,\n })}\n onChange={handleChange}\n ref={useForkRef([inputRef, inputRefProp])}\n maxLength={inputMaxLength}\n onFocus={onFocus}\n onBlur={onBlur}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n tabIndex={inputTabIndex}\n aria-label={inputAriaLabel}\n onKeyDown={onKeyDown}\n onKeyDownCapture={onKeyDownCapture}\n onKeyUp={onKeyUp}\n onKeyUpCapture={onKeyUpCapture}\n disabled={disabled}\n type=\"text\"\n placeholder={value.length ? undefined : placeholder}\n onCopy={onCopy}\n onCopyCapture={onCopyCapture}\n onCut={onCut}\n onCutCapture={onCutCapture}\n onPaste={onPaste}\n onPasteCapture={onPasteCapture}\n onWheel={onWheel}\n defaultValue={inputDefaultValue}\n readOnly={disableInput}\n />\n <InputFakeElement\n ref={fakeInputRef}\n className={cnFieldArrayValueInlineControl('HelperInputFakeElement')}\n valueAtom={inputValueAtom}\n inputMinWidthAtom={inputMinWidthAtom}\n />\n </Root>\n );\n};\n\nexport const FieldArrayValueInlineControl = withCtx(\n forwardRef(FieldArrayValueInlineControlRender),\n) as FieldArrayValueInlineControlComponent;\n"],"mappings":"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"}
|
package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.css
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
.FieldControlLayout{--field-control-layout-slot-height:calc(var(--field-control-layout-height) - var(--field-control-layout-border-width)*2);--field-control-layout-slot-color:var(--color-control-typo-placeholder);--field-control-layout-placeholder-color:var(
|
|
2
2
|
--color-control-typo-placeholder
|
|
3
|
-
);--field-control-layout-input-color:var(--color-control-typo-default);--field-control-layout-left-slots-width:calc(var(--field-control-layout-left-slots-length)*var(--field-control-layout-space) + var(--field-control-layout-left-slot-contents-width));--field-control-layout-right-slots-width:calc(var(--field-control-layout-right-slots-length)*var(--field-control-layout-space) + var(--field-control-layout-right-slot-contents-width));--field-control-layout-children-width:calc(var(--field-control-layout-container-width) - var(--field-control-layout-right-slots-width) - var(--field-control-layout-left-slots-width));background-color:var(--field-control-layout-bg-color);border-color:var(--field-control-layout-border-color);border-radius:var(--field-control-layout-border-radius);border-style:var(--field-control-layout-border-style);border-width:var(--field-control-layout-border-width);box-sizing:border-box;font-size:var(--field-control-layout-text-size);line-height:var(--field-control-layout-text-line-height);min-height:var(--field-control-layout-height);padding:var(--field-control-layout-padding);transition:border-color .15s,box-shadow .15s;width:100%}.FieldControlLayout_disabled{--field-control-layout-placeholder-color:var(--color-control-typo-disable);--field-control-layout-input-color:var(--color-control-typo-disable);--field-control-layout-slot-color:var(--color-control-typo-disable)}.FieldControlLayout_alignSlots_top .FieldControlLayout-Slot{height:var(--field-control-layout-slot-height)}.FieldControlLayout_alignSlots_center .FieldControlLayout-Slot{height:auto}.FieldControlLayout-Container{display:flex;gap:var(--field-control-layout-space);min-height:var(--field-control-layout-slot-height)}.FieldControlLayout-Slot{align-items:center;color:var(--field-control-layout-slot-color);display:flex;flex:none;font-size:var(--field-control-layout-text-size);justify-content:center}.FieldControlLayout-Children{flex:auto
|
|
3
|
+
);--field-control-layout-input-color:var(--color-control-typo-default);--field-control-layout-left-slots-width:calc(var(--field-control-layout-left-slots-length)*var(--field-control-layout-space) + var(--field-control-layout-left-slot-contents-width));--field-control-layout-right-slots-width:calc(var(--field-control-layout-right-slots-length)*var(--field-control-layout-space) + var(--field-control-layout-right-slot-contents-width));--field-control-layout-children-width:calc(var(--field-control-layout-container-width) - var(--field-control-layout-right-slots-width) - var(--field-control-layout-left-slots-width));background-color:var(--field-control-layout-bg-color);border-color:var(--field-control-layout-border-color);border-radius:var(--field-control-layout-border-radius);border-style:var(--field-control-layout-border-style);border-width:var(--field-control-layout-border-width);box-sizing:border-box;font-size:var(--field-control-layout-text-size);line-height:var(--field-control-layout-text-line-height);min-height:var(--field-control-layout-height);padding:var(--field-control-layout-padding);transition:border-color .15s,box-shadow .15s;width:100%}.FieldControlLayout_disabled{--field-control-layout-placeholder-color:var(--color-control-typo-disable);--field-control-layout-input-color:var(--color-control-typo-disable);--field-control-layout-slot-color:var(--color-control-typo-disable)}.FieldControlLayout_alignSlots_top .FieldControlLayout-Slot{height:var(--field-control-layout-slot-height)}.FieldControlLayout_alignSlots_center .FieldControlLayout-Slot{height:auto}.FieldControlLayout-Container{display:flex;gap:var(--field-control-layout-space);min-height:var(--field-control-layout-slot-height)}.FieldControlLayout-Slot{align-items:center;color:var(--field-control-layout-slot-color);display:flex;flex:none;font-size:var(--field-control-layout-text-size);justify-content:center}.FieldControlLayout-Children{flex:auto}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.TextFieldTypeTextArray{--text-field-textarray-padding:calc((var(--field-control-layout-right-slots-length) + 1)*var(--field-control-layout-space) + var(--field-control-layout-right-slot-contents-width));--text-field-textarray-scroll-wrapper-height:calc(var(--text-field-textarray-max-height) - var(--field-control-layout-border-width)*2)}.TextFieldTypeTextArray-ScrollWrapper{max-height:var(--text-field-textarray-scroll-wrapper-height);overflow:auto;padding-right:var(--text-field-textarray-padding,0);width:calc(100% + var(--text-field-textarray-padding))}
|
|
1
|
+
.TextFieldTypeTextArray{--text-field-textarray-padding:calc((var(--field-control-layout-right-slots-length) + 1)*var(--field-control-layout-space) + var(--field-control-layout-right-slot-contents-width));--text-field-textarray-scroll-wrapper-height:calc(var(--text-field-textarray-max-height) - var(--field-control-layout-border-width)*2)}.TextFieldTypeTextArray-ScrollWrapper{max-height:var(--text-field-textarray-scroll-wrapper-height);overflow:auto;padding-right:var(--text-field-textarray-padding,0);width:calc(100% + var(--text-field-textarray-padding))}.TextFieldTypeTextArray .FieldControlLayout-Children{overflow:hidden}
|
package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","value","defaultValue","onChange","id","name","inputRef","maxLength","disabled","size","view","form","status","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","clearButton","readOnly","type","tabIndex","ariaLabel","iconSize","onClick","style","inputValue","renderValueItem","onInputChange","onKeyDown","onKeyDownCapture","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onClear","onWheel","iconClear"];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 React,{forwardRef,useCallback,useEffect,useMemo,useRef}from"react";import{FieldArrayValueInlineControl,FieldArrayValueItem,FieldClearButton,FieldControlLayout,renderSide}from"../../FieldComponents";import{useComponentSize}from"../../../hooks/useComponentSize";import{useForkRef}from"../../../hooks/useForkRef";import{useKeys}from"../../../hooks/useKeys";import{useMutableRef}from"../../../hooks/useMutableRef";import{getStyleProps}from"../../../hooks/useStyleProps";import{cnMixScrollBar}from"../../../mixs/MixScrollBar";import{useTextField}from"../useTextField";import{cnTextFieldTypeTextArray}from"./cnTextFieldTypeTextArray";var defaultRenderValueItem=function(a){var b=a.item,c=a.index,d=a.size,e=a.disabled,f=a.onRemove;return React.createElement(FieldArrayValueItem,{key:c,size:d,label:b,disabled:e,onRemove:f})};export var TextFieldTypeTextArray=forwardRef(function(a,b){var c=a.className,d=a.value,e=a.defaultValue,f=a.onChange,g=a.id,h=a.name,i=a.inputRef,j=a.maxLength,k=a.disabled,l=a.size,m=void 0===l?"m":l,n=a.view,o=void 0===n?"default":n,p=a.form,q=a.status,r=a.onBlur,s=a.onFocus,t=a.autoFocus,u=a.placeholder,v=a.leftSide,w=a.rightSide,x=a.autoComplete,y=a.clearButton,z=a.readOnly,A=a.type,B=a.tabIndex,C=a.ariaLabel,D=a.iconSize,E=a.onClick,F=a.style,G=a.inputValue,H=a.renderValueItem,I=void 0===H?defaultRenderValueItem:H,J=a.onInputChange,K=a.onKeyDown,L=a.onKeyDownCapture,M=a.onKeyUp,N=a.onKeyUpCapture,O=a.onCopy,P=a.onCopyCapture,Q=a.onCut,R=a.onCutCapture,S=a.onPaste,T=a.onPasteCapture,U=a.onClear,V=a.onWheel,W=a.iconClear,X=_objectWithoutProperties(a,_excluded),Y=useTextField({onClick:E,onChange:J,onBlur:r,onFocus:s,disabled:k,onClear:void 0}),Z=Y.handleBlur,$=Y.handleChange,_=Y.handleClear,aa=Y.handleFocus,ba=Y.focused,ca=Y.withValue,da=Y.ref,ea=Y.inputRef,fa=Y.handleClick,ga=ca||!!(null!==d&&void 0!==d&&d.length),ha=useRef(null),ia=useRef(null),ja=useMutableRef([f,_,d]),ka=function(a){return function(b){if(null!==d&&void 0!==d&&d.length){var c=_toConsumableArray(d);c.splice(a,1),null===f||void 0===f?void 0:f(c.length?c:null,{e:b})}}},la=useCallback(function(a){var b;if(ja.current[1](a),null!==(b=ja.current[2])&&void 0!==b&&b.length){var c,d;null===(c=(d=ja.current)[0])||void 0===c?void 0:c.call(d,null,{e:a})}},[]),ma=useMemo(function(){return{Enter:function Enter(a){var b,c=null===(b=ea.current)||void 0===b?void 0:b.value;if(c){var d,e;null===(d=(e=ja.current)[0])||void 0===d?void 0:d.call(e,[].concat(_toConsumableArray(ja.current[2]||[]),[c]),{e:a}),ha.current&&"function"==typeof ha.current.scrollTo&&ha.current.scrollTo({top:ha.current.scrollHeight})}},Backspace:function Backspace(a){var b,c=null===(b=ea.current)||void 0===b?void 0:b.value,d=ja.current[2];if(!c&&null!==d&&void 0!==d&&d.length){var e,f;a.preventDefault();var g=_toConsumableArray(d);g.pop(),null===(e=(f=ja.current)[0])||void 0===e?void 0:e.call(f,g,{e:a})}}}},[]),na=useKeys({isActive:!!f,keys:ma,onEvent:K}),oa=useComponentSize(ha),pa=da.current?getStyleProps(da.current,["max-height","height"]):void 0;return useEffect(function(){ha.current&&ia.current&&ba&&ia.current.scrollTo({top:oa.height})},[oa.height]),useEffect(function(){ea.current&&ea.current.value!==G&&(ea.current.value=G||"")},[G,ea.current]),React.createElement(FieldControlLayout,Object.assign({},X,{className:cnTextFieldTypeTextArray({withValue:ga},[c]),form:p,status:q,size:m,leftSide:renderSide(v,m,D),rightSide:[y&&!k&&ga&&React.createElement(FieldClearButton,{size:m,onClick:U||la,icon:W}),renderSide(w,m,D)],focused:ba,view:o,ref:useForkRef([b,da]),disabled:k,onClick:fa,style:_objectSpread(_objectSpread({},F),{},_defineProperty({},"--text-field-textarray-max-height",(null===pa||void 0===pa?void 0:pa["max-height"])||(null===pa||void 0===pa?void 0:pa.height)||"auto"))}),React.createElement("div",{ref:ia,className:cnTextFieldTypeTextArray("ScrollWrapper",[cnMixScrollBar({size:"xs"})])},React.createElement(FieldArrayValueInlineControl,{size:m,inputRef:useForkRef([ea,i]),value:null!==d&&void 0!==d?d:void 0,onFocus:aa,onBlur:Z,onChange:$,autoFocus:t,onKeyDown:na,ref:ha,placeholder:u,renderValue:function renderValue(a){return a.map(function(a,b){return I({item:a,index:b,size:m,disabled:k,onRemove:ka(b)})})},onCopy:O,onCopyCapture:P,onCut:Q,onCutCapture:R,onPaste:S,onPasteCapture:T,inputTabIndex:B,onKeyDownCapture:L,onKeyUp:M,onKeyUpCapture:N,onWheel:V,disabled:k,
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","value","defaultValue","onChange","id","name","inputRef","maxLength","disabled","size","view","form","status","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","clearButton","readOnly","type","tabIndex","ariaLabel","iconSize","onClick","style","inputValue","renderValueItem","onInputChange","onKeyDown","onKeyDownCapture","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onClear","onWheel","iconClear"];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 React,{forwardRef,useCallback,useEffect,useMemo,useRef}from"react";import{FieldArrayValueInlineControl,FieldArrayValueItem,FieldClearButton,FieldControlLayout,renderSide}from"../../FieldComponents";import{useComponentSize}from"../../../hooks/useComponentSize";import{useForkRef}from"../../../hooks/useForkRef";import{useKeys}from"../../../hooks/useKeys";import{useMutableRef}from"../../../hooks/useMutableRef";import{getStyleProps}from"../../../hooks/useStyleProps";import{cnMixScrollBar}from"../../../mixs/MixScrollBar";import{useTextField}from"../useTextField";import{cnTextFieldTypeTextArray}from"./cnTextFieldTypeTextArray";var defaultRenderValueItem=function(a){var b=a.item,c=a.index,d=a.size,e=a.disabled,f=a.onRemove;return React.createElement(FieldArrayValueItem,{key:c,size:d,label:b,disabled:e,onRemove:f})};export var TextFieldTypeTextArray=forwardRef(function(a,b){var c=a.className,d=a.value,e=a.defaultValue,f=a.onChange,g=a.id,h=a.name,i=a.inputRef,j=a.maxLength,k=a.disabled,l=a.size,m=void 0===l?"m":l,n=a.view,o=void 0===n?"default":n,p=a.form,q=a.status,r=a.onBlur,s=a.onFocus,t=a.autoFocus,u=a.placeholder,v=a.leftSide,w=a.rightSide,x=a.autoComplete,y=a.clearButton,z=a.readOnly,A=a.type,B=a.tabIndex,C=a.ariaLabel,D=a.iconSize,E=a.onClick,F=a.style,G=a.inputValue,H=a.renderValueItem,I=void 0===H?defaultRenderValueItem:H,J=a.onInputChange,K=a.onKeyDown,L=a.onKeyDownCapture,M=a.onKeyUp,N=a.onKeyUpCapture,O=a.onCopy,P=a.onCopyCapture,Q=a.onCut,R=a.onCutCapture,S=a.onPaste,T=a.onPasteCapture,U=a.onClear,V=a.onWheel,W=a.iconClear,X=_objectWithoutProperties(a,_excluded),Y=useTextField({onClick:E,onChange:J,onBlur:r,onFocus:s,disabled:k,onClear:void 0}),Z=Y.handleBlur,$=Y.handleChange,_=Y.handleClear,aa=Y.handleFocus,ba=Y.focused,ca=Y.withValue,da=Y.ref,ea=Y.inputRef,fa=Y.handleClick,ga=ca||!!(null!==d&&void 0!==d&&d.length),ha=useRef(null),ia=useRef(null),ja=useMutableRef([f,_,d]),ka=function(a){return function(b){if(null!==d&&void 0!==d&&d.length){var c=_toConsumableArray(d);c.splice(a,1),null===f||void 0===f?void 0:f(c.length?c:null,{e:b})}}},la=useCallback(function(a){var b;if(ja.current[1](a),null!==(b=ja.current[2])&&void 0!==b&&b.length){var c,d;null===(c=(d=ja.current)[0])||void 0===c?void 0:c.call(d,null,{e:a})}},[]),ma=useMemo(function(){return{Enter:function Enter(a){var b,c=null===(b=ea.current)||void 0===b?void 0:b.value;if(c){var d,e;null===(d=(e=ja.current)[0])||void 0===d?void 0:d.call(e,[].concat(_toConsumableArray(ja.current[2]||[]),[c]),{e:a}),ha.current&&"function"==typeof ha.current.scrollTo&&ha.current.scrollTo({top:ha.current.scrollHeight})}},Backspace:function Backspace(a){var b,c=null===(b=ea.current)||void 0===b?void 0:b.value,d=ja.current[2];if(!c&&null!==d&&void 0!==d&&d.length){var e,f;a.preventDefault();var g=_toConsumableArray(d);g.pop(),null===(e=(f=ja.current)[0])||void 0===e?void 0:e.call(f,g,{e:a})}}}},[]),na=useKeys({isActive:!!f,keys:ma,onEvent:K}),oa=useComponentSize(ha),pa=da.current?getStyleProps(da.current,["max-height","height"]):void 0;return useEffect(function(){ha.current&&ia.current&&ba&&ia.current.scrollTo({top:oa.height})},[oa.height]),useEffect(function(){ea.current&&ea.current.value!==G&&(ea.current.value=G||"")},[G,ea.current]),React.createElement(FieldControlLayout,Object.assign({},X,{className:cnTextFieldTypeTextArray({withValue:ga},[c]),form:p,status:q,size:m,leftSide:renderSide(v,m,D),rightSide:[y&&!k&&ga&&React.createElement(FieldClearButton,{size:m,onClick:U||la,icon:W}),renderSide(w,m,D)],focused:ba,view:o,ref:useForkRef([b,da]),disabled:k,onClick:fa,style:_objectSpread(_objectSpread({},F),{},_defineProperty({},"--text-field-textarray-max-height",(null===pa||void 0===pa?void 0:pa["max-height"])||(null===pa||void 0===pa?void 0:pa.height)||"auto"))}),React.createElement("div",{ref:ia,className:cnTextFieldTypeTextArray("ScrollWrapper",[cnMixScrollBar({size:"xs"})])},React.createElement(FieldArrayValueInlineControl,{size:m,inputRef:useForkRef([ea,i]),value:null!==d&&void 0!==d?d:void 0,onFocus:aa,onBlur:Z,onChange:$,autoFocus:t,onKeyDown:na,ref:ha,placeholder:u,renderValue:function renderValue(a){return a.map(function(a,b){return I({item:a,index:b,size:m,disabled:k,onRemove:ka(b)})})},onCopy:O,onCopyCapture:P,onCut:Q,onCutCapture:R,onPaste:S,onPasteCapture:T,inputTabIndex:B,onKeyDownCapture:L,onKeyUp:M,onKeyUpCapture:N,onWheel:V,disabled:k,inputValue:G||""})))});
|
|
2
2
|
//# sourceMappingURL=TextFieldTypeTextArray.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextFieldTypeTextArray.js","names":["React","forwardRef","useCallback","useEffect","useMemo","useRef","FieldArrayValueInlineControl","FieldArrayValueItem","FieldClearButton","FieldControlLayout","renderSide","useComponentSize","useForkRef","useKeys","useMutableRef","getStyleProps","cnMixScrollBar","useTextField","cnTextFieldTypeTextArray","defaultRenderValueItem","item","index","size","disabled","onRemove","TextFieldTypeTextArray","props","componentRef","className","value","defaultValue","onChange","id","name","inputRefProp","inputRef","maxLength","view","form","status","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","clearButton","readOnly","type","tabIndex","ariaLabel","iconSize","onClick","style","inputValue","renderValueItem","onInputChange","onKeyDown","onKeyDownCapture","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onClear","onWheel","iconClear","otherProps","handleBlur","handleChange","inputHandleClear","handleClear","handleFocus","focused","withInputValue","withValue","ref","handleClick","length","controlRef","scrollWrapperRef","mutableRefs","getRemoveItem","e","newValue","splice","current","keys","Enter","stringValue","scrollTo","top","scrollHeight","Backspace","currentValue","preventDefault","pop","handleInputKeyDown","isActive","onEvent","controlSize","stylesRoot","height","items","map"],"sources":["../../../../../../src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n} from 'react';\n\nimport {\n FieldArrayValueInlineControl,\n FieldArrayValueItem,\n FieldClearButton,\n FieldControlLayout,\n renderSide,\n} from '##/components/FieldComponents';\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { useKeys, UseKeysPropKeys } from '##/hooks/useKeys';\nimport { useMutableRef } from '##/hooks/useMutableRef';\nimport { getStyleProps } from '##/hooks/useStyleProps';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\n\nimport { TextFieldPropRenderValueItem, TextFieldTypeComponent } from '../types';\nimport { useTextField } from '../useTextField';\nimport { cnTextFieldTypeTextArray } from './cnTextFieldTypeTextArray';\n\nconst defaultRenderValueItem: TextFieldPropRenderValueItem = ({\n item,\n index,\n size,\n disabled,\n onRemove,\n}) => (\n <FieldArrayValueItem\n key={index}\n size={size}\n label={item}\n disabled={disabled}\n onRemove={onRemove}\n />\n);\n\nexport const TextFieldTypeTextArray: TextFieldTypeComponent<'textarray'> =\n forwardRef((props, componentRef) => {\n const {\n className,\n value,\n defaultValue,\n onChange,\n id,\n name,\n inputRef: inputRefProp,\n maxLength,\n disabled,\n size = 'm',\n view = 'default',\n form,\n status,\n onBlur,\n onFocus,\n autoFocus,\n placeholder,\n leftSide,\n rightSide,\n autoComplete,\n clearButton,\n readOnly,\n type,\n tabIndex,\n ariaLabel,\n iconSize,\n onClick,\n style,\n inputValue,\n renderValueItem = defaultRenderValueItem,\n onInputChange,\n // onKey props\n onKeyDown,\n onKeyDownCapture,\n onKeyUp,\n onKeyUpCapture,\n onCopy,\n onCopyCapture,\n onCut,\n onCutCapture,\n onPaste,\n onPasteCapture,\n onClear,\n onWheel,\n iconClear,\n ...otherProps\n } = props;\n\n const {\n handleBlur,\n handleChange,\n handleClear: inputHandleClear,\n handleFocus,\n focused,\n withValue: withInputValue,\n ref,\n inputRef,\n handleClick,\n } = useTextField({\n onClick,\n onChange: onInputChange,\n onBlur,\n onFocus,\n disabled,\n onClear: undefined,\n });\n\n const withValue = withInputValue || !!value?.length;\n\n const controlRef = useRef<HTMLDivElement>(null);\n const scrollWrapperRef = useRef<HTMLDivElement>(null);\n\n const mutableRefs = useMutableRef([\n onChange,\n inputHandleClear,\n value,\n ] as const);\n\n const getRemoveItem = (index: number) => (e: React.MouseEvent) => {\n if (value?.length) {\n const newValue = [...value];\n newValue.splice(index, 1);\n onChange?.(newValue.length ? newValue : null, { e });\n }\n };\n\n const handleClear = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n mutableRefs.current[1](e);\n if (mutableRefs.current[2]?.length) {\n mutableRefs.current[0]?.(null, { e });\n }\n },\n [],\n );\n\n const keys: UseKeysPropKeys<HTMLInputElement> = useMemo(\n () => ({\n Enter: (e) => {\n const stringValue = inputRef.current?.value;\n\n if (stringValue) {\n mutableRefs.current[0]?.(\n [...(mutableRefs.current[2] || []), stringValue],\n {\n e,\n },\n );\n\n if (\n controlRef.current &&\n typeof controlRef.current.scrollTo === 'function'\n ) {\n controlRef.current.scrollTo({\n top: controlRef.current.scrollHeight,\n });\n }\n }\n },\n Backspace: (e) => {\n const stringValue = inputRef.current?.value;\n const currentValue = mutableRefs.current[2];\n\n if (!stringValue && currentValue?.length) {\n e.preventDefault();\n const newValue = [...currentValue];\n newValue.pop();\n mutableRefs.current[0]?.(newValue, {\n e,\n });\n }\n },\n }),\n [],\n );\n\n const handleInputKeyDown = useKeys<HTMLInputElement>({\n isActive: !!onChange,\n keys,\n onEvent: onKeyDown,\n });\n\n const controlSize = useComponentSize(controlRef);\n\n const stylesRoot: Record<'max-height' | 'height', string> | undefined =\n ref.current\n ? getStyleProps(ref.current, ['max-height', 'height'])\n : undefined;\n\n useEffect(() => {\n if (controlRef.current && scrollWrapperRef.current && focused) {\n scrollWrapperRef.current.scrollTo({\n top: controlSize.height,\n });\n }\n }, [controlSize.height]);\n\n useEffect(() => {\n if (inputRef.current && inputRef.current.value !== inputValue) {\n inputRef.current.value = inputValue || '';\n }\n }, [inputValue, inputRef.current]);\n\n return (\n <FieldControlLayout\n {...otherProps}\n className={cnTextFieldTypeTextArray({ withValue }, [className])}\n form={form}\n status={status}\n size={size}\n leftSide={renderSide(leftSide, size, iconSize)}\n rightSide={[\n clearButton && !disabled && withValue && (\n <FieldClearButton\n size={size}\n onClick={onClear || handleClear}\n icon={iconClear}\n />\n ),\n renderSide(rightSide, size, iconSize),\n ]}\n focused={focused}\n view={view}\n ref={useForkRef([componentRef, ref])}\n disabled={disabled}\n onClick={handleClick}\n style={{\n ...style,\n ['--text-field-textarray-max-height' as string]:\n stylesRoot?.['max-height'] || stylesRoot?.height || 'auto',\n }}\n >\n <div\n ref={scrollWrapperRef}\n className={cnTextFieldTypeTextArray('ScrollWrapper', [\n cnMixScrollBar({ size: 'xs' }),\n ])}\n >\n <FieldArrayValueInlineControl\n size={size}\n inputRef={useForkRef([inputRef, inputRefProp])}\n value={value ?? undefined}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleChange}\n autoFocus={autoFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef}\n placeholder={placeholder}\n renderValue={(items) =>\n items.map((item, index) =>\n renderValueItem({\n item,\n index,\n size,\n disabled,\n onRemove: getRemoveItem(index),\n }),\n )\n }\n onCopy={onCopy}\n onCopyCapture={onCopyCapture}\n onCut={onCut}\n onCutCapture={onCutCapture}\n onPaste={onPaste}\n onPasteCapture={onPasteCapture}\n inputTabIndex={tabIndex}\n onKeyDownCapture={onKeyDownCapture}\n onKeyUp={onKeyUp}\n onKeyUpCapture={onKeyUpCapture}\n onWheel={onWheel}\n disabled={disabled}\n inputDefaultValue={inputValue || ''}\n />\n </div>\n </FieldControlLayout>\n );\n });\n"],"mappings":"w0CAAA,MAAOA,MAAP,EACEC,UADF,CAEEC,WAFF,CAGEC,SAHF,CAIEC,OAJF,CAKEC,MALF,KAMO,OANP,CAQA,OACEC,4BADF,CAEEC,mBAFF,CAGEC,gBAHF,CAIEC,kBAJF,CAKEC,UALF,6BAOA,OAASC,gBAAT,uCACA,OAASC,UAAT,iCACA,OAASC,OAAT,8BACA,OAASC,aAAT,oCACA,OAASC,aAAT,oCACA,OAASC,cAAT,kCAGA,OAASC,YAAT,uBACA,OAASC,wBAAT,kCAEA,GAAMC,uBAAoD,CAAG,eAC3DC,EAD2D,GAC3DA,IAD2D,CAE3DC,CAF2D,GAE3DA,KAF2D,CAG3DC,CAH2D,GAG3DA,IAH2D,CAI3DC,CAJ2D,GAI3DA,QAJ2D,CAK3DC,CAL2D,GAK3DA,QAL2D,OAO3D,qBAAC,mBAAD,EACE,GAAG,CAAEH,CADP,CAEE,IAAI,CAAEC,CAFR,CAGE,KAAK,CAAEF,CAHT,CAIE,QAAQ,CAAEG,CAJZ,CAKE,QAAQ,CAAEC,CALZ,EAP2D,CAA7D,CAgBA,MAAO,IAAMC,uBAA2D,CACtExB,UAAU,CAAC,SAACyB,CAAD,CAAQC,CAAR,CAAyB,IAEhCC,EAFgC,CAgD9BF,CAhD8B,CAEhCE,SAFgC,CAGhCC,CAHgC,CAgD9BH,CAhD8B,CAGhCG,KAHgC,CAIhCC,CAJgC,CAgD9BJ,CAhD8B,CAIhCI,YAJgC,CAKhCC,CALgC,CAgD9BL,CAhD8B,CAKhCK,QALgC,CAMhCC,CANgC,CAgD9BN,CAhD8B,CAMhCM,EANgC,CAOhCC,CAPgC,CAgD9BP,CAhD8B,CAOhCO,IAPgC,CAQtBC,CARsB,CAgD9BR,CAhD8B,CAQhCS,QARgC,CAShCC,CATgC,CAgD9BV,CAhD8B,CAShCU,SATgC,CAUhCb,CAVgC,CAgD9BG,CAhD8B,CAUhCH,QAVgC,GAgD9BG,CAhD8B,CAWhCJ,IAXgC,CAWhCA,CAXgC,YAWzB,GAXyB,KAgD9BI,CAhD8B,CAYhCW,IAZgC,CAYhCA,CAZgC,YAYzB,SAZyB,GAahCC,CAbgC,CAgD9BZ,CAhD8B,CAahCY,IAbgC,CAchCC,CAdgC,CAgD9Bb,CAhD8B,CAchCa,MAdgC,CAehCC,CAfgC,CAgD9Bd,CAhD8B,CAehCc,MAfgC,CAgBhCC,CAhBgC,CAgD9Bf,CAhD8B,CAgBhCe,OAhBgC,CAiBhCC,CAjBgC,CAgD9BhB,CAhD8B,CAiBhCgB,SAjBgC,CAkBhCC,CAlBgC,CAgD9BjB,CAhD8B,CAkBhCiB,WAlBgC,CAmBhCC,CAnBgC,CAgD9BlB,CAhD8B,CAmBhCkB,QAnBgC,CAoBhCC,CApBgC,CAgD9BnB,CAhD8B,CAoBhCmB,SApBgC,CAqBhCC,CArBgC,CAgD9BpB,CAhD8B,CAqBhCoB,YArBgC,CAsBhCC,CAtBgC,CAgD9BrB,CAhD8B,CAsBhCqB,WAtBgC,CAuBhCC,CAvBgC,CAgD9BtB,CAhD8B,CAuBhCsB,QAvBgC,CAwBhCC,CAxBgC,CAgD9BvB,CAhD8B,CAwBhCuB,IAxBgC,CAyBhCC,CAzBgC,CAgD9BxB,CAhD8B,CAyBhCwB,QAzBgC,CA0BhCC,CA1BgC,CAgD9BzB,CAhD8B,CA0BhCyB,SA1BgC,CA2BhCC,CA3BgC,CAgD9B1B,CAhD8B,CA2BhC0B,QA3BgC,CA4BhCC,CA5BgC,CAgD9B3B,CAhD8B,CA4BhC2B,OA5BgC,CA6BhCC,CA7BgC,CAgD9B5B,CAhD8B,CA6BhC4B,KA7BgC,CA8BhCC,CA9BgC,CAgD9B7B,CAhD8B,CA8BhC6B,UA9BgC,GAgD9B7B,CAhD8B,CA+BhC8B,eA/BgC,CA+BhCA,CA/BgC,YA+BdrC,sBA/Bc,GAgChCsC,CAhCgC,CAgD9B/B,CAhD8B,CAgChC+B,aAhCgC,CAkChCC,CAlCgC,CAgD9BhC,CAhD8B,CAkChCgC,SAlCgC,CAmChCC,CAnCgC,CAgD9BjC,CAhD8B,CAmChCiC,gBAnCgC,CAoChCC,CApCgC,CAgD9BlC,CAhD8B,CAoChCkC,OApCgC,CAqChCC,CArCgC,CAgD9BnC,CAhD8B,CAqChCmC,cArCgC,CAsChCC,CAtCgC,CAgD9BpC,CAhD8B,CAsChCoC,MAtCgC,CAuChCC,CAvCgC,CAgD9BrC,CAhD8B,CAuChCqC,aAvCgC,CAwChCC,CAxCgC,CAgD9BtC,CAhD8B,CAwChCsC,KAxCgC,CAyChCC,CAzCgC,CAgD9BvC,CAhD8B,CAyChCuC,YAzCgC,CA0ChCC,CA1CgC,CAgD9BxC,CAhD8B,CA0ChCwC,OA1CgC,CA2ChCC,CA3CgC,CAgD9BzC,CAhD8B,CA2ChCyC,cA3CgC,CA4ChCC,CA5CgC,CAgD9B1C,CAhD8B,CA4ChC0C,OA5CgC,CA6ChCC,CA7CgC,CAgD9B3C,CAhD8B,CA6ChC2C,OA7CgC,CA8ChCC,CA9CgC,CAgD9B5C,CAhD8B,CA8ChC4C,SA9CgC,CA+C7BC,CA/C6B,0BAgD9B7C,CAhD8B,cA4D9BT,YAAY,CAAC,CACfoC,OAAO,CAAPA,CADe,CAEftB,QAAQ,CAAE0B,CAFK,CAGfjB,MAAM,CAANA,CAHe,CAIfC,OAAO,CAAPA,CAJe,CAKflB,QAAQ,CAARA,CALe,CAMf6C,OAAO,OANQ,CAAD,CA5DkB,CAmDhCI,CAnDgC,GAmDhCA,UAnDgC,CAoDhCC,CApDgC,GAoDhCA,YApDgC,CAqDnBC,CArDmB,GAqDhCC,WArDgC,CAsDhCC,EAtDgC,GAsDhCA,WAtDgC,CAuDhCC,EAvDgC,GAuDhCA,OAvDgC,CAwDrBC,EAxDqB,GAwDhCC,SAxDgC,CAyDhCC,EAzDgC,GAyDhCA,GAzDgC,CA0DhC7C,EA1DgC,GA0DhCA,QA1DgC,CA2DhC8C,EA3DgC,GA2DhCA,WA3DgC,CAqE5BF,EAAS,CAAGD,EAAc,EAAI,CAAC,SAACjD,CAAD,WAACA,CAAD,EAACA,CAAK,CAAEqD,MAAR,CArEH,CAuE5BC,EAAU,CAAG9E,MAAM,CAAiB,IAAjB,CAvES,CAwE5B+E,EAAgB,CAAG/E,MAAM,CAAiB,IAAjB,CAxEG,CA0E5BgF,EAAW,CAAGvE,aAAa,CAAC,CAChCiB,CADgC,CAEhC2C,CAFgC,CAGhC7C,CAHgC,CAAD,CA1EC,CAgF5ByD,EAAa,CAAG,SAACjE,CAAD,QAAmB,UAACkE,CAAD,CAAyB,CAChE,UAAI1D,CAAJ,WAAIA,CAAJ,EAAIA,CAAK,CAAEqD,MAAX,CAAmB,CACjB,GAAMM,EAAQ,oBAAO3D,CAAP,CAAd,CACA2D,CAAQ,CAACC,MAAT,CAAgBpE,CAAhB,CAAuB,CAAvB,CAFiB,QAGjBU,CAHiB,WAGjBA,CAHiB,QAGjBA,CAAQ,CAAGyD,CAAQ,CAACN,MAAT,CAAkBM,CAAlB,CAA6B,IAAhC,CAAsC,CAAED,CAAC,CAADA,CAAF,CAAtC,CACT,CACF,CANqB,CAhFY,CAwF5BZ,EAAW,CAAGzE,WAAW,CAC7B,SAACqF,CAAD,CAA4C,OAE1C,GADAF,EAAW,CAACK,OAAZ,CAAoB,CAApB,EAAuBH,CAAvB,CACA,WAAIF,EAAW,CAACK,OAAZ,CAAoB,CAApB,CAAJ,eAAI,EAAwBR,MAA5B,CAAoC,mBAClC,GAAAG,EAAW,CAACK,OAAZ,EAAoB,CAApB,CADkC,qBAClC,SAAyB,IAAzB,CAA+B,CAAEH,CAAC,CAADA,CAAF,CAA/B,CACD,CACF,CAN4B,CAO7B,EAP6B,CAxFG,CAkG5BI,EAAuC,CAAGvF,OAAO,CACrD,iBAAO,CACLwF,KAAK,CAAE,eAACL,CAAD,CAAO,OACNM,CAAW,WAAG1D,EAAQ,CAACuD,OAAZ,qBAAG,EAAkB7D,KAD1B,CAGZ,GAAIgE,CAAJ,CAAiB,mBACf,GAAAR,EAAW,CAACK,OAAZ,EAAoB,CAApB,CADe,qBACf,sCACOL,EAAW,CAACK,OAAZ,CAAoB,CAApB,GAA0B,EADjC,GACsCG,CADtC,GAEE,CACEN,CAAC,CAADA,CADF,CAFF,CADe,CASbJ,EAAU,CAACO,OAAX,EACuC,UAAvC,QAAOP,GAAU,CAACO,OAAX,CAAmBI,QAVb,EAYbX,EAAU,CAACO,OAAX,CAAmBI,QAAnB,CAA4B,CAC1BC,GAAG,CAAEZ,EAAU,CAACO,OAAX,CAAmBM,YADE,CAA5B,CAIH,CACF,CArBI,CAsBLC,SAAS,CAAE,mBAACV,CAAD,CAAO,OACVM,CAAW,WAAG1D,EAAQ,CAACuD,OAAZ,qBAAG,EAAkB7D,KADtB,CAEVqE,CAAY,CAAGb,EAAW,CAACK,OAAZ,CAAoB,CAApB,CAFL,CAIhB,GAAI,CAACG,CAAD,SAAgBK,CAAhB,WAAgBA,CAAhB,EAAgBA,CAAY,CAAEhB,MAAlC,CAA0C,SACxCK,CAAC,CAACY,cAAF,EADwC,CAExC,GAAMX,EAAQ,oBAAOU,CAAP,CAAd,CACAV,CAAQ,CAACY,GAAT,EAHwC,WAIxC,GAAAf,EAAW,CAACK,OAAZ,EAAoB,CAApB,CAJwC,qBAIxC,SAAyBF,CAAzB,CAAmC,CACjCD,CAAC,CAADA,CADiC,CAAnC,CAGD,CACF,CAlCI,CAAP,CADqD,CAqCrD,EArCqD,CAlGrB,CA0I5Bc,EAAkB,CAAGxF,OAAO,CAAmB,CACnDyF,QAAQ,CAAE,CAAC,CAACvE,CADuC,CAEnD4D,IAAI,CAAJA,EAFmD,CAGnDY,OAAO,CAAE7C,CAH0C,CAAnB,CA1IA,CAgJ5B8C,EAAW,CAAG7F,gBAAgB,CAACwE,EAAD,CAhJF,CAkJ5BsB,EAA+D,CACnEzB,EAAG,CAACU,OAAJ,CACI3E,aAAa,CAACiE,EAAG,CAACU,OAAL,CAAc,CAAC,YAAD,CAAe,QAAf,CAAd,CADjB,OAnJgC,CAqKlC,MAdAvF,UAAS,CAAC,UAAM,CACVgF,EAAU,CAACO,OAAX,EAAsBN,EAAgB,CAACM,OAAvC,EAAkDb,EADxC,EAEZO,EAAgB,CAACM,OAAjB,CAAyBI,QAAzB,CAAkC,CAChCC,GAAG,CAAES,EAAW,CAACE,MADe,CAAlC,CAIH,CANQ,CAMN,CAACF,EAAW,CAACE,MAAb,CANM,CAcT,CANAvG,SAAS,CAAC,UAAM,CACVgC,EAAQ,CAACuD,OAAT,EAAoBvD,EAAQ,CAACuD,OAAT,CAAiB7D,KAAjB,GAA2B0B,CADrC,GAEZpB,EAAQ,CAACuD,OAAT,CAAiB7D,KAAjB,CAAyB0B,CAAU,EAAI,EAF3B,CAIf,CAJQ,CAIN,CAACA,CAAD,CAAapB,EAAQ,CAACuD,OAAtB,CAJM,CAMT,CACE,oBAAC,kBAAD,kBACMnB,CADN,EAEE,SAAS,CAAErD,wBAAwB,CAAC,CAAE6D,SAAS,CAATA,EAAF,CAAD,CAAgB,CAACnD,CAAD,CAAhB,CAFrC,CAGE,IAAI,CAAEU,CAHR,CAIE,MAAM,CAAEC,CAJV,CAKE,IAAI,CAAEjB,CALR,CAME,QAAQ,CAAEZ,UAAU,CAACkC,CAAD,CAAWtB,CAAX,CAAiB8B,CAAjB,CANtB,CAOE,SAAS,CAAE,CACTL,CAAW,EAAI,CAACxB,CAAhB,EAA4BwD,EAA5B,EACE,oBAAC,gBAAD,EACE,IAAI,CAAEzD,CADR,CAEE,OAAO,CAAE8C,CAAO,EAAIO,EAFtB,CAGE,IAAI,CAAEL,CAHR,EAFO,CAQT5D,UAAU,CAACmC,CAAD,CAAYvB,CAAZ,CAAkB8B,CAAlB,CARD,CAPb,CAiBE,OAAO,CAAEyB,EAjBX,CAkBE,IAAI,CAAExC,CAlBR,CAmBE,GAAG,CAAEzB,UAAU,CAAC,CAACe,CAAD,CAAeqD,EAAf,CAAD,CAnBjB,CAoBE,QAAQ,CAAEzD,CApBZ,CAqBE,OAAO,CAAE0D,EArBX,CAsBE,KAAK,gCACA3B,CADA,wBAEF,mCAFE,CAGD,QAAAmD,EAAU,WAAVA,EAAA,QAAAA,EAAU,CAAG,YAAH,CAAV,WAA8BA,EAA9B,WAA8BA,EAA9B,QAA8BA,EAAU,CAAEC,MAA1C,GAAoD,MAHnD,EAtBP,GA4BE,2BACE,GAAG,CAAEtB,EADP,CAEE,SAAS,CAAElE,wBAAwB,CAAC,eAAD,CAAkB,CACnDF,cAAc,CAAC,CAAEM,IAAI,CAAE,IAAR,CAAD,CADqC,CAAlB,CAFrC,EAME,oBAAC,4BAAD,EACE,IAAI,CAAEA,CADR,CAEE,QAAQ,CAAEV,UAAU,CAAC,CAACuB,EAAD,CAAWD,CAAX,CAAD,CAFtB,CAGE,KAAK,QAAEL,CAAF,WAAEA,CAAF,CAAEA,CAAF,OAHP,CAIE,OAAO,CAAE+C,EAJX,CAKE,MAAM,CAAEJ,CALV,CAME,QAAQ,CAAEC,CANZ,CAOE,SAAS,CAAE/B,CAPb,CAQE,SAAS,CAAE2D,EARb,CASE,GAAG,CAAElB,EATP,CAUE,WAAW,CAAExC,CAVf,CAWE,WAAW,CAAE,qBAACgE,CAAD,QACXA,EAAK,CAACC,GAAN,CAAU,SAACxF,CAAD,CAAOC,CAAP,QACRmC,EAAe,CAAC,CACdpC,IAAI,CAAJA,CADc,CAEdC,KAAK,CAALA,CAFc,CAGdC,IAAI,CAAJA,CAHc,CAIdC,QAAQ,CAARA,CAJc,CAKdC,QAAQ,CAAE8D,EAAa,CAACjE,CAAD,CALT,CAAD,CADP,CAAV,CADW,CAXf,CAsBE,MAAM,CAAEyC,CAtBV,CAuBE,aAAa,CAAEC,CAvBjB,CAwBE,KAAK,CAAEC,CAxBT,CAyBE,YAAY,CAAEC,CAzBhB,CA0BE,OAAO,CAAEC,CA1BX,CA2BE,cAAc,CAAEC,CA3BlB,CA4BE,aAAa,CAAEjB,CA5BjB,CA6BE,gBAAgB,CAAES,CA7BpB,CA8BE,OAAO,CAAEC,CA9BX,CA+BE,cAAc,CAAEC,CA/BlB,CAgCE,OAAO,CAAEQ,CAhCX,CAiCE,QAAQ,CAAE9C,CAjCZ,CAkCE,iBAAiB,CAAEgC,CAAU,EAAI,EAlCnC,EANF,CA5BF,CAyEH,CA/OS,CADL"}
|
|
1
|
+
{"version":3,"file":"TextFieldTypeTextArray.js","names":["React","forwardRef","useCallback","useEffect","useMemo","useRef","FieldArrayValueInlineControl","FieldArrayValueItem","FieldClearButton","FieldControlLayout","renderSide","useComponentSize","useForkRef","useKeys","useMutableRef","getStyleProps","cnMixScrollBar","useTextField","cnTextFieldTypeTextArray","defaultRenderValueItem","item","index","size","disabled","onRemove","TextFieldTypeTextArray","props","componentRef","className","value","defaultValue","onChange","id","name","inputRefProp","inputRef","maxLength","view","form","status","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","clearButton","readOnly","type","tabIndex","ariaLabel","iconSize","onClick","style","inputValue","renderValueItem","onInputChange","onKeyDown","onKeyDownCapture","onKeyUp","onKeyUpCapture","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onClear","onWheel","iconClear","otherProps","handleBlur","handleChange","inputHandleClear","handleClear","handleFocus","focused","withInputValue","withValue","ref","handleClick","length","controlRef","scrollWrapperRef","mutableRefs","getRemoveItem","e","newValue","splice","current","keys","Enter","stringValue","scrollTo","top","scrollHeight","Backspace","currentValue","preventDefault","pop","handleInputKeyDown","isActive","onEvent","controlSize","stylesRoot","height","items","map"],"sources":["../../../../../../src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n} from 'react';\n\nimport {\n FieldArrayValueInlineControl,\n FieldArrayValueItem,\n FieldClearButton,\n FieldControlLayout,\n renderSide,\n} from '##/components/FieldComponents';\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { useKeys, UseKeysPropKeys } from '##/hooks/useKeys';\nimport { useMutableRef } from '##/hooks/useMutableRef';\nimport { getStyleProps } from '##/hooks/useStyleProps';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\n\nimport { TextFieldPropRenderValueItem, TextFieldTypeComponent } from '../types';\nimport { useTextField } from '../useTextField';\nimport { cnTextFieldTypeTextArray } from './cnTextFieldTypeTextArray';\n\nconst defaultRenderValueItem: TextFieldPropRenderValueItem = ({\n item,\n index,\n size,\n disabled,\n onRemove,\n}) => (\n <FieldArrayValueItem\n key={index}\n size={size}\n label={item}\n disabled={disabled}\n onRemove={onRemove}\n />\n);\n\nexport const TextFieldTypeTextArray: TextFieldTypeComponent<'textarray'> =\n forwardRef((props, componentRef) => {\n const {\n className,\n value,\n defaultValue,\n onChange,\n id,\n name,\n inputRef: inputRefProp,\n maxLength,\n disabled,\n size = 'm',\n view = 'default',\n form,\n status,\n onBlur,\n onFocus,\n autoFocus,\n placeholder,\n leftSide,\n rightSide,\n autoComplete,\n clearButton,\n readOnly,\n type,\n tabIndex,\n ariaLabel,\n iconSize,\n onClick,\n style,\n inputValue,\n renderValueItem = defaultRenderValueItem,\n onInputChange,\n // onKey props\n onKeyDown,\n onKeyDownCapture,\n onKeyUp,\n onKeyUpCapture,\n onCopy,\n onCopyCapture,\n onCut,\n onCutCapture,\n onPaste,\n onPasteCapture,\n onClear,\n onWheel,\n iconClear,\n ...otherProps\n } = props;\n\n const {\n handleBlur,\n handleChange,\n handleClear: inputHandleClear,\n handleFocus,\n focused,\n withValue: withInputValue,\n ref,\n inputRef,\n handleClick,\n } = useTextField({\n onClick,\n onChange: onInputChange,\n onBlur,\n onFocus,\n disabled,\n onClear: undefined,\n });\n\n const withValue = withInputValue || !!value?.length;\n\n const controlRef = useRef<HTMLDivElement>(null);\n const scrollWrapperRef = useRef<HTMLDivElement>(null);\n\n const mutableRefs = useMutableRef([\n onChange,\n inputHandleClear,\n value,\n ] as const);\n\n const getRemoveItem = (index: number) => (e: React.MouseEvent) => {\n if (value?.length) {\n const newValue = [...value];\n newValue.splice(index, 1);\n onChange?.(newValue.length ? newValue : null, { e });\n }\n };\n\n const handleClear = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n mutableRefs.current[1](e);\n if (mutableRefs.current[2]?.length) {\n mutableRefs.current[0]?.(null, { e });\n }\n },\n [],\n );\n\n const keys: UseKeysPropKeys<HTMLInputElement> = useMemo(\n () => ({\n Enter: (e) => {\n const stringValue = inputRef.current?.value;\n\n if (stringValue) {\n mutableRefs.current[0]?.(\n [...(mutableRefs.current[2] || []), stringValue],\n {\n e,\n },\n );\n\n if (\n controlRef.current &&\n typeof controlRef.current.scrollTo === 'function'\n ) {\n controlRef.current.scrollTo({\n top: controlRef.current.scrollHeight,\n });\n }\n }\n },\n Backspace: (e) => {\n const stringValue = inputRef.current?.value;\n const currentValue = mutableRefs.current[2];\n\n if (!stringValue && currentValue?.length) {\n e.preventDefault();\n const newValue = [...currentValue];\n newValue.pop();\n mutableRefs.current[0]?.(newValue, {\n e,\n });\n }\n },\n }),\n [],\n );\n\n const handleInputKeyDown = useKeys<HTMLInputElement>({\n isActive: !!onChange,\n keys,\n onEvent: onKeyDown,\n });\n\n const controlSize = useComponentSize(controlRef);\n\n const stylesRoot: Record<'max-height' | 'height', string> | undefined =\n ref.current\n ? getStyleProps(ref.current, ['max-height', 'height'])\n : undefined;\n\n useEffect(() => {\n if (controlRef.current && scrollWrapperRef.current && focused) {\n scrollWrapperRef.current.scrollTo({\n top: controlSize.height,\n });\n }\n }, [controlSize.height]);\n\n useEffect(() => {\n if (inputRef.current && inputRef.current.value !== inputValue) {\n inputRef.current.value = inputValue || '';\n }\n }, [inputValue, inputRef.current]);\n\n return (\n <FieldControlLayout\n {...otherProps}\n className={cnTextFieldTypeTextArray({ withValue }, [className])}\n form={form}\n status={status}\n size={size}\n leftSide={renderSide(leftSide, size, iconSize)}\n rightSide={[\n clearButton && !disabled && withValue && (\n <FieldClearButton\n size={size}\n onClick={onClear || handleClear}\n icon={iconClear}\n />\n ),\n renderSide(rightSide, size, iconSize),\n ]}\n focused={focused}\n view={view}\n ref={useForkRef([componentRef, ref])}\n disabled={disabled}\n onClick={handleClick}\n style={{\n ...style,\n ['--text-field-textarray-max-height' as string]:\n stylesRoot?.['max-height'] || stylesRoot?.height || 'auto',\n }}\n >\n <div\n ref={scrollWrapperRef}\n className={cnTextFieldTypeTextArray('ScrollWrapper', [\n cnMixScrollBar({ size: 'xs' }),\n ])}\n >\n <FieldArrayValueInlineControl\n size={size}\n inputRef={useForkRef([inputRef, inputRefProp])}\n value={value ?? undefined}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleChange}\n autoFocus={autoFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef}\n placeholder={placeholder}\n renderValue={(items) =>\n items.map((item, index) =>\n renderValueItem({\n item,\n index,\n size,\n disabled,\n onRemove: getRemoveItem(index),\n }),\n )\n }\n onCopy={onCopy}\n onCopyCapture={onCopyCapture}\n onCut={onCut}\n onCutCapture={onCutCapture}\n onPaste={onPaste}\n onPasteCapture={onPasteCapture}\n inputTabIndex={tabIndex}\n onKeyDownCapture={onKeyDownCapture}\n onKeyUp={onKeyUp}\n onKeyUpCapture={onKeyUpCapture}\n onWheel={onWheel}\n disabled={disabled}\n inputValue={inputValue || ''}\n />\n </div>\n </FieldControlLayout>\n );\n });\n"],"mappings":"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"}
|