@salutejs/plasma-new-hope 0.153.0-dev.0 → 0.154.0-canary.1421.11039037651.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (199) hide show
  1. package/cjs/components/Button/Button.js +0 -1
  2. package/cjs/components/Button/Button.js.map +1 -1
  3. package/cjs/components/DatePicker/RangeDate/RangeDate.js +42 -2
  4. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  5. package/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  6. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  7. package/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  8. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  9. package/cjs/components/DatePicker/utils/setInitValue.js +12 -0
  10. package/cjs/components/DatePicker/utils/setInitValue.js.map +1 -0
  11. package/cjs/components/Slider/Slider.js +20 -6
  12. package/cjs/components/Slider/Slider.js.map +1 -1
  13. package/cjs/components/Slider/components/Double/Double.js +40 -2
  14. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  15. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +100 -0
  16. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -0
  17. package/cjs/components/Slider/components/Single/Single.js +51 -13
  18. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  19. package/cjs/components/Slider/utils/index.js +6 -0
  20. package/cjs/components/Slider/utils/index.js.map +1 -1
  21. package/cjs/components/TextArea/TextArea.js +3 -2
  22. package/cjs/components/TextArea/TextArea.js.map +1 -1
  23. package/cjs/hooks/useForm.js +131 -0
  24. package/cjs/hooks/useForm.js.map +1 -0
  25. package/cjs/index.js +5 -0
  26. package/cjs/index.js.map +1 -1
  27. package/cjs/utils/index.js.map +1 -1
  28. package/cjs/utils/inputHidden.js +12 -0
  29. package/cjs/utils/inputHidden.js.map +1 -0
  30. package/cjs/utils/setRefList.js +28 -0
  31. package/cjs/utils/setRefList.js.map +1 -0
  32. package/emotion/cjs/components/Button/Button.js +0 -1
  33. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +42 -2
  34. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  35. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  36. package/emotion/cjs/components/DatePicker/utils/setInitValue.js +11 -0
  37. package/emotion/cjs/components/Slider/Slider.js +15 -6
  38. package/emotion/cjs/components/Slider/components/Double/Double.js +40 -2
  39. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +103 -0
  40. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +5 -0
  41. package/emotion/cjs/components/Slider/components/Single/Single.js +46 -8
  42. package/emotion/cjs/components/Slider/components/index.js +11 -0
  43. package/emotion/cjs/components/Slider/utils/index.js +6 -1
  44. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  45. package/emotion/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +256 -0
  46. package/emotion/cjs/examples/plasma_web/components/Form/Form.stories.tsx +237 -0
  47. package/emotion/cjs/hooks/index.js +8 -1
  48. package/emotion/cjs/hooks/useForm.js +137 -0
  49. package/emotion/cjs/types/FormType.js +5 -0
  50. package/emotion/cjs/utils/index.js +15 -0
  51. package/emotion/cjs/utils/inputHidden.js +11 -0
  52. package/emotion/cjs/utils/setRefList.js +27 -0
  53. package/emotion/es/components/Button/Button.js +0 -1
  54. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +42 -2
  55. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  56. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  57. package/emotion/es/components/DatePicker/utils/setInitValue.js +5 -0
  58. package/emotion/es/components/Slider/Slider.js +16 -6
  59. package/emotion/es/components/Slider/components/Double/Double.js +41 -3
  60. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +94 -0
  61. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +1 -0
  62. package/emotion/es/components/Slider/components/Single/Single.js +47 -9
  63. package/emotion/es/components/Slider/components/index.js +1 -0
  64. package/emotion/es/components/Slider/utils/index.js +5 -0
  65. package/emotion/es/components/TextArea/TextArea.js +4 -4
  66. package/emotion/es/examples/plasma_b2c/components/Form/Form.stories.tsx +256 -0
  67. package/emotion/es/examples/plasma_web/components/Form/Form.stories.tsx +237 -0
  68. package/emotion/es/hooks/index.js +2 -1
  69. package/emotion/es/hooks/useForm.js +128 -0
  70. package/emotion/es/types/FormType.js +1 -0
  71. package/emotion/es/utils/index.js +1 -0
  72. package/emotion/es/utils/inputHidden.js +4 -0
  73. package/emotion/es/utils/setRefList.js +20 -0
  74. package/es/components/Button/Button.js +0 -1
  75. package/es/components/Button/Button.js.map +1 -1
  76. package/es/components/DatePicker/RangeDate/RangeDate.js +42 -2
  77. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  78. package/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  79. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  80. package/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  81. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  82. package/es/components/DatePicker/utils/setInitValue.js +8 -0
  83. package/es/components/DatePicker/utils/setInitValue.js.map +1 -0
  84. package/es/components/Slider/Slider.js +21 -7
  85. package/es/components/Slider/Slider.js.map +1 -1
  86. package/es/components/Slider/components/Double/Double.js +41 -3
  87. package/es/components/Slider/components/Double/Double.js.map +1 -1
  88. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +96 -0
  89. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -0
  90. package/es/components/Slider/components/Single/Single.js +47 -9
  91. package/es/components/Slider/components/Single/Single.js.map +1 -1
  92. package/es/components/Slider/utils/index.js +6 -1
  93. package/es/components/Slider/utils/index.js.map +1 -1
  94. package/es/components/TextArea/TextArea.js +3 -2
  95. package/es/components/TextArea/TextArea.js.map +1 -1
  96. package/es/hooks/useForm.js +127 -0
  97. package/es/hooks/useForm.js.map +1 -0
  98. package/es/index.js +2 -0
  99. package/es/index.js.map +1 -1
  100. package/es/utils/index.js.map +1 -1
  101. package/es/utils/inputHidden.js +8 -0
  102. package/es/utils/inputHidden.js.map +1 -0
  103. package/es/utils/setRefList.js +23 -0
  104. package/es/utils/setRefList.js.map +1 -0
  105. package/package.json +3 -2
  106. package/styled-components/cjs/components/Button/Button.js +0 -1
  107. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +42 -2
  108. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  109. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  110. package/styled-components/cjs/components/DatePicker/utils/setInitValue.js +11 -0
  111. package/styled-components/cjs/components/Slider/Slider.js +15 -6
  112. package/styled-components/cjs/components/Slider/components/Double/Double.js +40 -2
  113. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +103 -0
  114. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +5 -0
  115. package/styled-components/cjs/components/Slider/components/Single/Single.js +46 -8
  116. package/styled-components/cjs/components/Slider/components/index.js +11 -0
  117. package/styled-components/cjs/components/Slider/utils/index.js +6 -1
  118. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  119. package/styled-components/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +256 -0
  120. package/styled-components/cjs/examples/plasma_web/components/Form/Form.stories.tsx +237 -0
  121. package/styled-components/cjs/hooks/index.js +8 -1
  122. package/styled-components/cjs/hooks/useForm.js +137 -0
  123. package/styled-components/cjs/types/FormType.js +5 -0
  124. package/styled-components/cjs/utils/index.js +15 -0
  125. package/styled-components/cjs/utils/inputHidden.js +11 -0
  126. package/styled-components/cjs/utils/setRefList.js +27 -0
  127. package/styled-components/es/components/Button/Button.js +0 -1
  128. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +42 -2
  129. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  130. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  131. package/styled-components/es/components/DatePicker/utils/setInitValue.js +5 -0
  132. package/styled-components/es/components/Slider/Slider.js +16 -6
  133. package/styled-components/es/components/Slider/components/Double/Double.js +41 -3
  134. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +94 -0
  135. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +1 -0
  136. package/styled-components/es/components/Slider/components/Single/Single.js +47 -9
  137. package/styled-components/es/components/Slider/components/index.js +1 -0
  138. package/styled-components/es/components/Slider/utils/index.js +5 -0
  139. package/styled-components/es/components/TextArea/TextArea.js +3 -3
  140. package/styled-components/es/examples/plasma_b2c/components/Form/Form.stories.tsx +256 -0
  141. package/styled-components/es/examples/plasma_web/components/Form/Form.stories.tsx +237 -0
  142. package/styled-components/es/hooks/index.js +2 -1
  143. package/styled-components/es/hooks/useForm.js +128 -0
  144. package/styled-components/es/types/FormType.js +1 -0
  145. package/styled-components/es/utils/index.js +1 -0
  146. package/styled-components/es/utils/inputHidden.js +4 -0
  147. package/styled-components/es/utils/setRefList.js +20 -0
  148. package/types/components/Button/Button.d.ts.map +1 -1
  149. package/types/components/DatePicker/DatePickerBase.types.d.ts +7 -0
  150. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  151. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +2 -0
  152. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  153. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +4 -0
  154. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
  155. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  156. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +10 -0
  157. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  158. package/types/components/DatePicker/hooks/useDatePicker.d.ts +1 -1
  159. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  160. package/types/components/DatePicker/utils/setInitValue.d.ts +2 -0
  161. package/types/components/DatePicker/utils/setInitValue.d.ts.map +1 -0
  162. package/types/components/Slider/Slider.d.ts.map +1 -1
  163. package/types/components/Slider/Slider.types.d.ts +2 -2
  164. package/types/components/Slider/Slider.types.d.ts.map +1 -1
  165. package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
  166. package/types/components/Slider/components/Double/Double.types.d.ts +2 -0
  167. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  168. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts +4 -0
  169. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts.map +1 -0
  170. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts +40 -0
  171. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts.map +1 -0
  172. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  173. package/types/components/Slider/components/Single/Single.types.d.ts +35 -5
  174. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  175. package/types/components/Slider/components/index.d.ts +2 -0
  176. package/types/components/Slider/components/index.d.ts.map +1 -1
  177. package/types/components/Slider/utils/index.d.ts +1 -0
  178. package/types/components/Slider/utils/index.d.ts.map +1 -1
  179. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  180. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +1 -0
  181. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
  182. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +47 -1
  183. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
  184. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +1 -0
  185. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
  186. package/types/examples/plasma_web/components/Slider/Slider.d.ts +47 -1
  187. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
  188. package/types/hooks/index.d.ts +1 -0
  189. package/types/hooks/index.d.ts.map +1 -1
  190. package/types/hooks/useForm.d.ts +10 -0
  191. package/types/hooks/useForm.d.ts.map +1 -0
  192. package/types/types/FormType.d.ts +13 -0
  193. package/types/types/FormType.d.ts.map +1 -0
  194. package/types/utils/index.d.ts +1 -0
  195. package/types/utils/index.d.ts.map +1 -1
  196. package/types/utils/inputHidden.d.ts +2 -0
  197. package/types/utils/inputHidden.d.ts.map +1 -0
  198. package/types/utils/setRefList.d.ts +6 -0
  199. package/types/utils/setRefList.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import { ChangeEvent, SyntheticEvent } from 'react';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\nimport { customDayjs } from '../../../utils/datejs';\n\nexport const useDatePicker = ({\n currentValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n onToggle,\n onChangeValue,\n onCommitDate,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen = event.target === inputRef?.current ? true : opened;\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n if (!format) {\n setCalendarValue(formatCalendarValue(newValue));\n setInputValue(formatInputValue({ value: newValue, format, lang }));\n onChangeValue?.(event, newValue);\n\n return;\n }\n\n /**\n * NOTE: если в формате даты есть месяц в полном названии или сокращенном,\n * нужно дополнительно проводить валидацию на полноту введенной даты.\n * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.\n */\n const hasMonthFullName = /M{3,4}/g.test(format);\n let isValidMonth;\n let isLengthEqual;\n\n if (hasMonthFullName) {\n customDayjs.locale(lang);\n\n const firstIndexOfMonth = format.indexOf('M');\n const lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);\n\n const fullMonthName = !lastIndexOfMonth\n ? newValue.slice(firstIndexOfMonth)\n : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);\n\n const monthFormatting = format.replace(/[^M]/g, '');\n\n isValidMonth = customDayjs(`01 ${fullMonthName} 1970`, `DD ${monthFormatting} YYYY`, true).isValid();\n isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;\n }\n\n if ((!hasMonthFullName && newValue?.length === format?.length) || (isValidMonth && isLengthEqual)) {\n setCalendarValue(formatCalendarValue(newValue, format, lang));\n }\n\n setInputValue(\n formatInputValue({ value: newValue, format, lang, hasMonthFullName, isValidMonth, isLengthEqual }),\n );\n\n onChangeValue?.(event, newValue);\n };\n\n const handleCommitDate = (\n date?: Date | string,\n applyFormat?: boolean,\n isCalendarValue?: boolean,\n dateInfo?: DateInfo,\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true);\n }\n\n if (isCalendarValue) {\n setCalendarValue(formatCalendarValue(date, format, lang));\n setInputValue(formatInputValue({ value: date, format, lang }));\n onCommitDate?.(date, false, true, dateInfo);\n\n return;\n }\n\n const formatString = applyFormat ? format : undefined;\n\n const { value: newDate, isError, isSuccess } = getDateFromFormat(date, formatString, lang);\n\n setCalendarValue(formatCalendarValue(newDate, format, lang));\n setInputValue(formatInputValue({ value: newDate, format, lang }));\n\n onCommitDate?.(newDate, isError, isSuccess);\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","setInputValue","setCalendarValue","setIsInnerOpen","dateFormatDelimiter","format","_ref$lang","lang","disabled","readOnly","maskWithFormat","valueError","valueSuccess","inputRef","onToggle","onChangeValue","onCommitDate","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","handleToggle","opened","event","isCalendarOpen","target","current","handleChangeValue","value","newValue","getMaskedDateOnInput","formatCalendarValue","formatInputValue","hasMonthFullName","test","isValidMonth","isLengthEqual","customDayjs","locale","firstIndexOfMonth","indexOf","lastIndexOfMonth","fullMonthName","slice","monthFormatting","replace","concat","isValid","length","handleCommitDate","date","applyFormat","isCalendarValue","dateInfo","formatString","_getDateFromFormat","getDateFromFormat","newDate","isError","isSuccess"],"mappings":"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"}
1
+ {"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import { ChangeEvent, SyntheticEvent } from 'react';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\nimport { customDayjs } from '../../../utils/datejs';\n\nexport const useDatePicker = ({\n currentValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n name,\n onToggle,\n onChangeValue,\n onCommitDate,\n onChange,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen = event.target === inputRef?.current ? true : opened;\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n if (!format) {\n setCalendarValue(formatCalendarValue(newValue));\n setInputValue(formatInputValue({ value: newValue, format, lang }));\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n\n return;\n }\n\n /**\n * NOTE: если в формате даты есть месяц в полном названии или сокращенном,\n * нужно дополнительно проводить валидацию на полноту введенной даты.\n * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.\n */\n const hasMonthFullName = /M{3,4}/g.test(format);\n let isValidMonth;\n let isLengthEqual;\n\n if (hasMonthFullName) {\n customDayjs.locale(lang);\n\n const firstIndexOfMonth = format.indexOf('M');\n const lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);\n\n const fullMonthName = !lastIndexOfMonth\n ? newValue.slice(firstIndexOfMonth)\n : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);\n\n const monthFormatting = format.replace(/[^M]/g, '');\n\n isValidMonth = customDayjs(`01 ${fullMonthName} 1970`, `DD ${monthFormatting} YYYY`, true).isValid();\n isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;\n }\n\n if ((!hasMonthFullName && newValue?.length === format?.length) || (isValidMonth && isLengthEqual)) {\n setCalendarValue(formatCalendarValue(newValue, format, lang));\n }\n\n setInputValue(\n formatInputValue({ value: newValue, format, lang, hasMonthFullName, isValidMonth, isLengthEqual }),\n );\n\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n };\n\n const handleCommitDate = (\n date?: Date | string,\n applyFormat?: boolean,\n isCalendarValue?: boolean,\n dateInfo?: DateInfo,\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true);\n }\n\n if (isCalendarValue) {\n setCalendarValue(formatCalendarValue(date, format, lang));\n setInputValue(formatInputValue({ value: date, format, lang }));\n onCommitDate?.(date, false, true, dateInfo);\n onChange?.({ target: { value: formatInputValue({ value: date, format, lang }), name } });\n\n return;\n }\n\n const formatString = applyFormat ? format : undefined;\n\n const { value: newDate, isError, isSuccess } = getDateFromFormat(date, formatString, lang);\n\n setCalendarValue(formatCalendarValue(newDate, format, lang));\n setInputValue(formatInputValue({ value: newDate, format, lang }));\n\n onCommitDate?.(newDate, isError, isSuccess);\n onChange?.({ target: { value: formatInputValue({ value: date, format }), name } });\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","setInputValue","setCalendarValue","setIsInnerOpen","dateFormatDelimiter","format","_ref$lang","lang","disabled","readOnly","maskWithFormat","valueError","valueSuccess","inputRef","name","onToggle","onChangeValue","onCommitDate","onChange","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","handleToggle","opened","event","isCalendarOpen","target","current","handleChangeValue","value","newValue","getMaskedDateOnInput","formatCalendarValue","formatInputValue","hasMonthFullName","test","isValidMonth","isLengthEqual","customDayjs","locale","firstIndexOfMonth","indexOf","lastIndexOfMonth","fullMonthName","slice","monthFormatting","replace","concat","isValid","length","handleCommitDate","date","applyFormat","isCalendarValue","dateInfo","formatString","_getDateFromFormat","getDateFromFormat","newDate","isError","isSuccess"],"mappings":";;;;;;;;IAQaA,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAmBA;AAAA,EAAA,IAlBtBC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IACbC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAChBC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;IACdC,mBAAmB,GAAAL,IAAA,CAAnBK,mBAAmB;IACnBC,MAAM,GAAAN,IAAA,CAANM,MAAM;IAAAC,SAAA,GAAAP,IAAA,CACNQ,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,SAAA;IACXE,QAAQ,GAAAT,IAAA,CAARS,QAAQ;IACRC,QAAQ,GAAAV,IAAA,CAARU,QAAQ;IACRC,cAAc,GAAAX,IAAA,CAAdW,cAAc;IACdC,UAAU,GAAAZ,IAAA,CAAVY,UAAU;IACVC,YAAY,GAAAb,IAAA,CAAZa,YAAY;IACZC,QAAQ,GAAAd,IAAA,CAARc,QAAQ;IACRC,IAAI,GAAAf,IAAA,CAAJe,IAAI;IACJC,QAAQ,GAAAhB,IAAA,CAARgB,QAAQ;IACRC,aAAa,GAAAjB,IAAA,CAAbiB,aAAa;IACbC,YAAY,GAAAlB,IAAA,CAAZkB,YAAY;IACZC,QAAQ,GAAAnB,IAAA,CAARmB,QAAQ,CAAA;EAER,IAAMC,oBAAoB,GAAGR,UAAU,GAAGS,yBAAO,CAACC,eAAe,GAAGC,SAAS,CAAA;EAC7E,IAAMC,sBAAsB,GAAGX,YAAY,GAAGQ,yBAAO,CAACI,iBAAiB,GAAGF,SAAS,CAAA;EAEnF,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIC,MAAe,EAAEC,KAA6B,EAAK;IACrE,IAAInB,QAAQ,IAAIC,QAAQ,EAAE;AACtB,MAAA,OAAA;AACJ,KAAA;AAEA,IAAA,IAAMmB,cAAc,GAAGD,KAAK,CAACE,MAAM,MAAKhB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAARA,QAAQ,CAAEiB,OAAO,CAAG,GAAA,IAAI,GAAGJ,MAAM,CAAA;AAEzE,IAAA,IAAIX,QAAQ,EAAE;AACV,MAAA,OAAOA,QAAQ,CAACa,cAAc,EAAED,KAAK,CAAC,CAAA;AAC1C,KAAA;IAEAxB,cAAc,CAACyB,cAAc,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMG,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIJ,KAAoC,EAAK;IAChE,IAAInB,QAAQ,IAAIC,QAAQ,EAAE;AACtB,MAAA,OAAA;AACJ,KAAA;AACA,IAAA,IAAQuB,KAAK,GAAKL,KAAK,CAACE,MAAM,CAAtBG,KAAK,CAAA;AAEb,IAAA,IAAMC,QAAQ,GAAGvB,cAAc,GACzBwB,+BAAoB,CAACF,KAAK,EAAE3B,MAAM,EAAED,mBAAmB,EAAE,EAAEJ,YAAY,CAAC,GACxEgC,KAAK,CAAA;IAEX,IAAI,CAAC3B,MAAM,EAAE;AACTH,MAAAA,gBAAgB,CAACiC,8BAAmB,CAACF,QAAQ,CAAC,CAAC,CAAA;MAC/ChC,aAAa,CAACmC,2BAAgB,CAAC;AAAEJ,QAAAA,KAAK,EAAEC,QAAQ;AAAE5B,QAAAA,MAAM,EAANA,MAAM;AAAEE,QAAAA,IAAI,EAAJA,IAAAA;AAAK,OAAC,CAAC,CAAC,CAAA;MAClES,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAbA,KAAAA,CAAAA,IAAAA,aAAa,CAAGW,KAAK,EAAEM,QAAQ,CAAC,CAAA;AAChCf,MAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG;AAAEW,QAAAA,MAAM,EAAE;AAAEG,UAAAA,KAAK,EAAEC,QAAQ;AAAEnB,UAAAA,IAAI,EAAJA,IAAAA;AAAK,SAAA;AAAE,OAAC,CAAC,CAAA;AAEjD,MAAA,OAAA;AACJ,KAAA;;AAEA;AACR;AACA;AACA;AACA;AACQ,IAAA,IAAMuB,gBAAgB,GAAG,SAAS,CAACC,IAAI,CAACjC,MAAM,CAAC,CAAA;AAC/C,IAAA,IAAIkC,YAAY,CAAA;AAChB,IAAA,IAAIC,aAAa,CAAA;AAEjB,IAAA,IAAIH,gBAAgB,EAAE;AAClBI,MAAAA,kBAAW,CAACC,MAAM,CAACnC,IAAI,CAAC,CAAA;AAExB,MAAA,IAAMoC,iBAAiB,GAAGtC,MAAM,CAACuC,OAAO,CAAC,GAAG,CAAC,CAAA;MAC7C,IAAMC,gBAAgB,GAAGZ,QAAQ,CAACW,OAAO,CAACxC,mBAAmB,EAAE,EAAEuC,iBAAiB,CAAC,CAAA;AAEnF,MAAA,IAAMG,aAAa,GAAG,CAACD,gBAAgB,GACjCZ,QAAQ,CAACc,KAAK,CAACJ,iBAAiB,CAAC,GACjCV,QAAQ,CAACc,KAAK,CAACJ,iBAAiB,EAAEE,gBAAgB,CAAC,CAAA;MAEzD,IAAMG,eAAe,GAAG3C,MAAM,CAAC4C,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAEnDV,MAAAA,YAAY,GAAGE,kBAAW,CAAA,KAAA,CAAAS,MAAA,CAAOJ,aAAa,EAAAI,OAAAA,CAAAA,EAAAA,KAAAA,CAAAA,MAAA,CAAeF,eAAe,YAAS,IAAI,CAAC,CAACG,OAAO,EAAE,CAAA;AACpGX,MAAAA,aAAa,GAAGnC,MAAM,CAAC+C,MAAM,GAAGJ,eAAe,CAACI,MAAM,KAAKnB,QAAQ,CAACmB,MAAM,GAAGN,aAAa,CAACM,MAAM,CAAA;AACrG,KAAA;IAEA,IAAK,CAACf,gBAAgB,IAAI,CAAAJ,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAEmB,MAAM,OAAK/C,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE+C,MAAM,CAAMb,IAAAA,YAAY,IAAIC,aAAc,EAAE;MAC/FtC,gBAAgB,CAACiC,8BAAmB,CAACF,QAAQ,EAAE5B,MAAM,EAAEE,IAAI,CAAC,CAAC,CAAA;AACjE,KAAA;IAEAN,aAAa,CACTmC,2BAAgB,CAAC;AAAEJ,MAAAA,KAAK,EAAEC,QAAQ;AAAE5B,MAAAA,MAAM,EAANA,MAAM;AAAEE,MAAAA,IAAI,EAAJA,IAAI;AAAE8B,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAAEE,MAAAA,YAAY,EAAZA,YAAY;AAAEC,MAAAA,aAAa,EAAbA,aAAAA;AAAc,KAAC,CACrG,CAAC,CAAA;IAEDxB,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAbA,KAAAA,CAAAA,IAAAA,aAAa,CAAGW,KAAK,EAAEM,QAAQ,CAAC,CAAA;AAChCf,IAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG;AAAEW,MAAAA,MAAM,EAAE;AAAEG,QAAAA,KAAK,EAAEC,QAAQ;AAAEnB,QAAAA,IAAI,EAAJA,IAAAA;AAAK,OAAA;AAAE,KAAC,CAAC,CAAA;GACpD,CAAA;AAED,EAAA,IAAMuC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAClBC,IAAoB,EACpBC,WAAqB,EACrBC,eAAyB,EACzBC,QAAmB,EAClB;IACD,IAAIjD,QAAQ,IAAIC,QAAQ,EAAE;AACtB,MAAA,OAAA;AACJ,KAAA;IAEA,IAAI,CAAC6C,IAAI,EAAE;MACPpD,gBAAgB,CAACoB,SAAS,CAAC,CAAA;MAC3BrB,aAAa,CAAC,EAAE,CAAC,CAAA;MAEjB,OAAOgB,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;AAC1C,KAAA;AAEA,IAAA,IAAIuC,eAAe,EAAE;MACjBtD,gBAAgB,CAACiC,8BAAmB,CAACmB,IAAI,EAAEjD,MAAM,EAAEE,IAAI,CAAC,CAAC,CAAA;MACzDN,aAAa,CAACmC,2BAAgB,CAAC;AAAEJ,QAAAA,KAAK,EAAEsB,IAAI;AAAEjD,QAAAA,MAAM,EAANA,MAAM;AAAEE,QAAAA,IAAI,EAAJA,IAAAA;AAAK,OAAC,CAAC,CAAC,CAAA;AAC9DU,MAAAA,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,IAAAA,YAAY,CAAGqC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAEG,QAAQ,CAAC,CAAA;AAC3CvC,MAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG;AAAEW,QAAAA,MAAM,EAAE;UAAEG,KAAK,EAAEI,2BAAgB,CAAC;AAAEJ,YAAAA,KAAK,EAAEsB,IAAI;AAAEjD,YAAAA,MAAM,EAANA,MAAM;AAAEE,YAAAA,IAAI,EAAJA,IAAAA;AAAK,WAAC,CAAC;AAAEO,UAAAA,IAAI,EAAJA,IAAAA;AAAK,SAAA;AAAE,OAAC,CAAC,CAAA;AAExF,MAAA,OAAA;AACJ,KAAA;AAEA,IAAA,IAAM4C,YAAY,GAAGH,WAAW,GAAGlD,MAAM,GAAGiB,SAAS,CAAA;IAErD,IAAAqC,kBAAA,GAA+CC,4BAAiB,CAACN,IAAI,EAAEI,YAAY,EAAEnD,IAAI,CAAC;MAA3EsD,OAAO,GAAAF,kBAAA,CAAd3B,KAAK;MAAW8B,OAAO,GAAAH,kBAAA,CAAPG,OAAO;MAAEC,SAAS,GAAAJ,kBAAA,CAATI,SAAS,CAAA;IAE1C7D,gBAAgB,CAACiC,8BAAmB,CAAC0B,OAAO,EAAExD,MAAM,EAAEE,IAAI,CAAC,CAAC,CAAA;IAC5DN,aAAa,CAACmC,2BAAgB,CAAC;AAAEJ,MAAAA,KAAK,EAAE6B,OAAO;AAAExD,MAAAA,MAAM,EAANA,MAAM;AAAEE,MAAAA,IAAI,EAAJA,IAAAA;AAAK,KAAC,CAAC,CAAC,CAAA;IAEjEU,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAG4C,OAAO,EAAEC,OAAO,EAAEC,SAAS,CAAC,CAAA;AAC3C7C,IAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG;AAAEW,MAAAA,MAAM,EAAE;QAAEG,KAAK,EAAEI,2BAAgB,CAAC;AAAEJ,UAAAA,KAAK,EAAEsB,IAAI;AAAEjD,UAAAA,MAAM,EAANA,MAAAA;AAAO,SAAC,CAAC;AAAES,QAAAA,IAAI,EAAJA,IAAAA;AAAK,OAAA;AAAE,KAAC,CAAC,CAAA;GACrF,CAAA;EAED,OAAO;AACHK,IAAAA,oBAAoB,EAApBA,oBAAoB;AACpBI,IAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBE,IAAAA,YAAY,EAAZA,YAAY;AACZM,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBsB,IAAAA,gBAAgB,EAAhBA,gBAAAA;GACH,CAAA;AACL;;;;"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var setInitValue = function setInitValue(e) {
6
+ var item = e.target;
7
+ var defaultValue = String(item.getAttribute('defaultValue'));
8
+ return defaultValue;
9
+ };
10
+
11
+ exports.setInitValue = setInitValue;
12
+ //# sourceMappingURL=setInitValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setInitValue.js","sources":["../../../../src/components/DatePicker/utils/setInitValue.ts"],"sourcesContent":["export const setInitValue = (e: Event): string => {\n const item = e.target as HTMLInputElement;\n const defaultValue = String(item.getAttribute('defaultValue'));\n\n return defaultValue;\n};\n"],"names":["setInitValue","e","item","target","defaultValue","String","getAttribute"],"mappings":";;;;IAAaA,YAAY,GAAG,SAAfA,YAAYA,CAAIC,CAAQ,EAAa;AAC9C,EAAA,IAAMC,IAAI,GAAGD,CAAC,CAACE,MAA0B,CAAA;EACzC,IAAMC,YAAY,GAAGC,MAAM,CAACH,IAAI,CAACI,YAAY,CAAC,cAAc,CAAC,CAAC,CAAA;AAE9D,EAAA,OAAOF,YAAY,CAAA;AACvB;;;;"}
@@ -8,16 +8,30 @@ var base = require('./variations/_view/base.js');
8
8
  var base$1 = require('./variations/_size/base.js');
9
9
  var base$2 = require('./variations/_disabled/base.js');
10
10
  var Single = require('./components/Single/Single.js');
11
- var Double = require('./components/Double/Double.js');
11
+ require('../../utils/react.js');
12
+ require('@linaria/react');
13
+ require('react-draggable');
14
+ require('styled-components');
15
+ require('@linaria/core');
16
+ require('focus-visible');
17
+ require('@salutejs/plasma-core');
18
+ var DoubleUncontrolled = require('./components/DoubleUncontrolled/DoubleUncontrolled.js');
12
19
 
13
- var isSingleValueProps = function isSingleValueProps(props) {
14
- return typeof props.value === 'number';
20
+ var _excluded = ["type"];
21
+ var isSingleValueProps = function isSingleValueProps(props, type) {
22
+ return typeof props.value === 'number' || type === 'single' && _rollupPluginBabelHelpers.typeof(props.value) !== 'object';
23
+ };
24
+ var isDoubleValueProps = function isDoubleValueProps(props, type) {
25
+ return _rollupPluginBabelHelpers.typeof(props.value) === 'object' || type === 'double';
15
26
  };
16
27
  var sliderRoot = function sliderRoot(Root) {
17
- return /*#__PURE__*/React.forwardRef(function (props, ref) {
18
- return /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({
28
+ return /*#__PURE__*/React.forwardRef(function (_ref, ref) {
29
+ var _ref$type = _ref.type,
30
+ type = _ref$type === void 0 ? 'single' : _ref$type,
31
+ props = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
32
+ return /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({}, props, {
19
33
  ref: ref
20
- }, props), isSingleValueProps(props) && /*#__PURE__*/React.createElement(Single.SingleSlider, props), !isSingleValueProps(props) && /*#__PURE__*/React.createElement(Double.DoubleSlider, props));
34
+ }), isSingleValueProps(props, type) && /*#__PURE__*/React.createElement(Single.SingleSlider, props), isDoubleValueProps(props, type) && /*#__PURE__*/React.createElement(DoubleUncontrolled.DoubleUncontrolled, props));
21
35
  });
22
36
  };
23
37
  var sliderConfig = {
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport type { RootPropsOmitOnChange } from '../../engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { SingleSlider, DoubleSlider } from './components';\nimport type { SingleSliderProps } from './components';\nimport { SliderProps } from './Slider.types';\n\nconst isSingleValueProps = (props: SliderProps): props is SingleSliderProps => typeof props.value === 'number';\n\nexport const sliderRoot = (Root: RootPropsOmitOnChange<HTMLDivElement, SliderProps>) =>\n forwardRef<HTMLDivElement, SliderProps>((props, ref) => {\n return (\n <Root ref={ref} {...props}>\n {isSingleValueProps(props) && <SingleSlider {...props} />}\n {!isSingleValueProps(props) && <DoubleSlider {...props} />}\n </Root>\n );\n });\n\nexport const sliderConfig = {\n name: 'Slider',\n tag: 'div',\n layout: sliderRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["isSingleValueProps","props","value","sliderRoot","Root","forwardRef","ref","React","createElement","_extends","SingleSlider","DoubleSlider","sliderConfig","name","tag","layout","base","variations","view","css","viewCSS","size","sizeCSS","disabled","disabledCSS","attrs","defaults"],"mappings":";;;;;;;;;;;;AAWA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,KAAkB,EAAA;AAAA,EAAA,OAAiC,OAAOA,KAAK,CAACC,KAAK,KAAK,QAAQ,CAAA;AAAA,CAAA,CAAA;IAEjGC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAwD,EAAA;AAAA,EAAA,oBAC/EC,gBAAU,CAA8B,UAACJ,KAAK,EAAEK,GAAG,EAAK;AACpD,IAAA,oBACIC,KAAA,CAAAC,aAAA,CAACJ,IAAI,EAAAK,iCAAA,CAAA;AAACH,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,EAAKL,KAAK,CAAA,EACpBD,kBAAkB,CAACC,KAAK,CAAC,iBAAIM,KAAA,CAAAC,aAAA,CAACE,mBAAY,EAAKT,KAAQ,CAAC,EACxD,CAACD,kBAAkB,CAACC,KAAK,CAAC,iBAAIM,KAAA,CAAAC,aAAA,CAACG,mBAAY,EAAKV,KAAQ,CACvD,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMW,YAAY,GAAG;AACxBC,EAAAA,IAAI,EAAE,QAAQ;AACdC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEZ,UAAU;AAClBa,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRC,IAAAA,IAAI,EAAE;AACFC,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDC,IAAAA,IAAI,EAAE;AACFF,MAAAA,GAAG,EAAEG,WAAAA;KACR;AACDC,IAAAA,QAAQ,EAAE;AACNJ,MAAAA,GAAG,EAAEK,WAAW;AAChBC,MAAAA,KAAK,EAAE,IAAA;AACX,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNR,IAAAA,IAAI,EAAE,SAAS;AACfG,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"Slider.js","sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport type { RootPropsOmitOnChange } from '../../engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { SingleSlider, DoubleUncontrolled } from './components';\nimport type { SingleSliderProps, DoubleUncontrolledProps } from './components';\nimport { SliderProps } from './Slider.types';\n\nconst isSingleValueProps = (props: SliderProps, type: string): props is SingleSliderProps =>\n typeof props.value === 'number' || (type === 'single' && typeof props.value !== 'object');\n\nconst isDoubleValueProps = (props: SliderProps, type: string): props is DoubleUncontrolledProps =>\n typeof props.value === 'object' || type === 'double';\n\nexport const sliderRoot = (Root: RootPropsOmitOnChange<HTMLDivElement, SliderProps>) =>\n forwardRef<HTMLDivElement, SliderProps>(({ type = 'single', ...props }, ref) => {\n return (\n <Root {...props} ref={ref}>\n {isSingleValueProps(props, type) && <SingleSlider {...props} />}\n {isDoubleValueProps(props, type) && <DoubleUncontrolled {...props} />}\n </Root>\n );\n });\n\nexport const sliderConfig = {\n name: 'Slider',\n tag: 'div',\n layout: sliderRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["isSingleValueProps","props","type","value","_typeof","isDoubleValueProps","sliderRoot","Root","forwardRef","_ref","ref","_ref$type","_objectWithoutProperties","_excluded","React","createElement","_extends","SingleSlider","DoubleUncontrolled","sliderConfig","name","tag","layout","base","variations","view","css","viewCSS","size","sizeCSS","disabled","disabledCSS","attrs","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,KAAkB,EAAEC,IAAY,EAAA;AAAA,EAAA,OACxD,OAAOD,KAAK,CAACE,KAAK,KAAK,QAAQ,IAAKD,IAAI,KAAK,QAAQ,IAAIE,gCAAA,CAAOH,KAAK,CAACE,KAAK,MAAK,QAAS,CAAA;AAAA,CAAA,CAAA;AAE7F,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIJ,KAAkB,EAAEC,IAAY,EAAA;EAAA,OACxDE,gCAAA,CAAOH,KAAK,CAACE,KAAK,MAAK,QAAQ,IAAID,IAAI,KAAK,QAAQ,CAAA;AAAA,CAAA,CAAA;IAE3CI,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAwD,EAAA;AAAA,EAAA,oBAC/EC,gBAAU,CAA8B,UAAAC,IAAA,EAAgCC,GAAG,EAAK;AAAA,IAAA,IAAAC,SAAA,GAAAF,IAAA,CAArCP,IAAI;AAAJA,MAAAA,IAAI,GAAAS,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;AAAKV,MAAAA,KAAK,GAAAW,iDAAA,CAAAH,IAAA,EAAAI,SAAA,CAAA,CAAA;IAChE,oBACIC,KAAA,CAAAC,aAAA,CAACR,IAAI,EAAAS,iCAAA,KAAKf,KAAK,EAAA;AAAES,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,CAAA,EACrBV,kBAAkB,CAACC,KAAK,EAAEC,IAAI,CAAC,iBAAIY,KAAA,CAAAC,aAAA,CAACE,mBAAY,EAAKhB,KAAQ,CAAC,EAC9DI,kBAAkB,CAACJ,KAAK,EAAEC,IAAI,CAAC,iBAAIY,KAAA,CAAAC,aAAA,CAACG,qCAAkB,EAAKjB,KAAQ,CAClE,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMkB,YAAY,GAAG;AACxBC,EAAAA,IAAI,EAAE,QAAQ;AACdC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEhB,UAAU;AAClBiB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRC,IAAAA,IAAI,EAAE;AACFC,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDC,IAAAA,IAAI,EAAE;AACFF,MAAAA,GAAG,EAAEG,WAAAA;KACR;AACDC,IAAAA,QAAQ,EAAE;AACNJ,MAAAA,GAAG,EAAEK,WAAW;AAChBC,MAAAA,KAAK,EAAE,IAAA;AACX,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNR,IAAAA,IAAI,EAAE,SAAS;AACfG,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
@@ -10,10 +10,11 @@ require('@linaria/react');
10
10
  var index = require('../../utils/index.js');
11
11
  var index$1 = require('../../../../utils/index.js');
12
12
  var Slider_tokens = require('../../Slider.tokens.js');
13
+ var inputHidden = require('../../../../utils/inputHidden.js');
13
14
  var Double_styles = require('./Double.styles.js');
14
15
  var isNumber = require('../../../../utils/isNumber.js');
15
16
 
16
- var _excluded = ["min", "max", "value", "disabled", "label", "labelContentLeft", "size", "onChangeCommitted", "onChangeTextField", "onBlurTextField", "onKeyDownTextField", "onChange", "ariaLabel", "multipleStepSize"];
17
+ var _excluded = ["min", "max", "value", "disabled", "label", "labelContentLeft", "size", "onChangeCommitted", "onChangeTextField", "onBlurTextField", "onKeyDownTextField", "onChange", "ariaLabel", "multipleStepSize", "name"];
17
18
  function getXCenterHandle(handle) {
18
19
  var _handle$parentElement;
19
20
  var containerX = ((_handle$parentElement = handle.parentElement) === null || _handle$parentElement === void 0 || (_handle$parentElement = _handle$parentElement.getBoundingClientRect()) === null || _handle$parentElement === void 0 ? void 0 : _handle$parentElement.x) || 0;
@@ -38,6 +39,7 @@ var DoubleSlider = function DoubleSlider(_ref) {
38
39
  ariaLabel = _ref.ariaLabel,
39
40
  _ref$multipleStepSize = _ref.multipleStepSize,
40
41
  multipleStepSize = _ref$multipleStepSize === void 0 ? 10 : _ref$multipleStepSize,
42
+ name = _ref.name,
41
43
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
42
44
  var _useState = React.useState({
43
45
  stepSize: 0,
@@ -73,10 +75,20 @@ var DoubleSlider = function DoubleSlider(_ref) {
73
75
  var secondHandleRef = React.useRef(null);
74
76
  var firstHandleValue = React.useRef(value[0]);
75
77
  var secondHandleValue = React.useRef(value[1]);
78
+ var innerRefFirst = React.useRef(null);
79
+ var innerRefSecond = React.useRef(null);
76
80
  var stepSize = state.stepSize;
77
81
  var hasLabelContent = label || labelContentLeft;
78
82
  var firstInputActiveClass = firstInputActive && !disabled ? Slider_tokens.classes.textFieldActive : undefined;
79
83
  var secondInputActiveClass = secondInputActive && !disabled ? Slider_tokens.classes.textFieldActive : undefined;
84
+ var setValue = function setValue(e) {
85
+ var firstElement = innerRefFirst.current;
86
+ var firstValueInit = Number(firstElement.getAttribute('defaultValue'));
87
+ var secondValueInit = index.setInitValue(e);
88
+ onChangeCommitted && onChangeCommitted([firstValueInit, secondValueInit]);
89
+ setFirstValue(firstValueInit);
90
+ setSecondValue(secondValueInit);
91
+ };
80
92
  React.useEffect(function () {
81
93
  var firstLocalValue = Math.min(Math.max(value[0], min), max) - min;
82
94
  var secondLocalValue = Math.min(Math.max(value[1], min), max) - min;
@@ -91,6 +103,16 @@ var DoubleSlider = function DoubleSlider(_ref) {
91
103
  });
92
104
  });
93
105
  }, [value, stepSize, min, max, setFirstValue, setSecondValue]);
106
+ React.useEffect(function () {
107
+ if (innerRefSecond.current && onChangeCommitted) {
108
+ innerRefSecond.current.addEventListener('setInitValue', setValue);
109
+ }
110
+ return function () {
111
+ if (innerRefSecond.current && onChangeCommitted) {
112
+ innerRefSecond.current.removeEventListener('setInitValue', setValue);
113
+ }
114
+ };
115
+ }, [innerRefSecond]);
94
116
  var setStepSize = React.useCallback(function (newStepSize) {
95
117
  setState(function (prevState) {
96
118
  return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevState), {}, {
@@ -299,7 +321,23 @@ var DoubleSlider = function DoubleSlider(_ref) {
299
321
  onChange: onSecondTextfieldChange,
300
322
  onBlur: onSecondTextfieldBlur,
301
323
  onKeyDown: onTextfieldKeyDown
302
- }))));
324
+ }))), /*#__PURE__*/React.createElement(inputHidden.InputHidden, {
325
+ name: name,
326
+ type: "number",
327
+ datatype: "slider-double",
328
+ "data-slidertype": "min",
329
+ value: firstValue,
330
+ ref: innerRefFirst,
331
+ onChange: function onChange() {}
332
+ }), /*#__PURE__*/React.createElement(inputHidden.InputHidden, {
333
+ name: name,
334
+ type: "number",
335
+ datatype: "slider-double",
336
+ "data-slidertype": "max",
337
+ value: secondValue,
338
+ ref: innerRefSecond,
339
+ onChange: function onChange() {}
340
+ }));
303
341
  };
304
342
 
305
343
  exports.DoubleSlider = DoubleSlider;
@@ -1 +1 @@
1
- {"version":3,"file":"Double.js","sources":["../../../../../src/components/Slider/components/Double/Double.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport type { FC, ChangeEvent, KeyboardEvent, FocusEvent } from 'react';\n\nimport { SliderBase } from '../SliderBase/SliderBase';\nimport { Handler } from '../../ui';\nimport type { HandlerProps } from '../../ui';\nimport { sizeData } from '../../utils';\nimport { cx, isNumber } from '../../../../utils';\nimport { classes } from '../../Slider.tokens';\n\nimport { DoubleSliderProps } from './Double.types';\nimport {\n SliderWrapper,\n InputsWrapper,\n Label,\n LabelContentLeft,\n LabelWrapper,\n StyledInput,\n DoubleWrapper,\n} from './Double.styles';\n\nfunction getXCenterHandle(handle: HTMLDivElement) {\n const containerX = handle.parentElement?.getBoundingClientRect()?.x || 0;\n const handleRect = handle.getBoundingClientRect();\n const handlePosition = handleRect.x;\n return handlePosition - containerX;\n}\n\nexport const DoubleSlider: FC<DoubleSliderProps> = ({\n min,\n max,\n value,\n disabled,\n label,\n labelContentLeft,\n size = 'm',\n onChangeCommitted,\n onChangeTextField,\n onBlurTextField,\n onKeyDownTextField,\n onChange,\n ariaLabel,\n multipleStepSize = 10,\n ...rest\n}) => {\n const [state, setState] = useState({\n stepSize: 0,\n railFillWidth: 0,\n railFillXPosition: 0,\n xFirstHandle: 0,\n xSecondHandle: 0,\n firstHandleZIndex: 100,\n secondHandleZIndex: 101,\n firstValue: value[0],\n secondValue: value[1],\n });\n const [firstInputActive, setFirstInputActive] = useState(false);\n const [secondInputActive, setSecondInputActive] = useState(false);\n\n const [firstValue, setFirstValue] = useState<number>(value[0]);\n const [secondValue, setSecondValue] = useState<number>(value[1]);\n\n const firstHandleRef = useRef<HTMLDivElement | null>(null);\n const secondHandleRef = useRef<HTMLDivElement | null>(null);\n\n const firstHandleValue = useRef<number>(value[0]);\n const secondHandleValue = useRef<number>(value[1]);\n\n const { stepSize } = state;\n\n const hasLabelContent = label || labelContentLeft;\n const firstInputActiveClass = firstInputActive && !disabled ? classes.textFieldActive : undefined;\n const secondInputActiveClass = secondInputActive && !disabled ? classes.textFieldActive : undefined;\n\n useEffect(() => {\n const firstLocalValue = Math.min(Math.max(value[0], min), max) - min;\n const secondLocalValue = Math.min(Math.max(value[1], min), max) - min;\n\n setFirstValue(value[0]);\n setSecondValue(value[1]);\n\n setState((prevState) => ({\n ...prevState,\n railFillXPosition: stepSize * firstLocalValue,\n railFillWidth: stepSize * secondLocalValue - stepSize * firstLocalValue,\n xFirstHandle: stepSize * firstLocalValue,\n xSecondHandle: stepSize * secondLocalValue,\n }));\n }, [value, stepSize, min, max, setFirstValue, setSecondValue]);\n\n const setStepSize = useCallback(\n (newStepSize: number) => {\n setState((prevState) => ({\n ...prevState,\n stepSize: newStepSize,\n }));\n },\n [setState],\n );\n\n const onFirstHandleChange: NonNullable<HandlerProps['onChange']> = (handleValue, data) => {\n if (!secondHandleRef?.current) {\n return;\n }\n const newHandleXPosition = data.x;\n const secondHandleXPosition = getXCenterHandle(secondHandleRef.current);\n const fillWidth = secondHandleXPosition - newHandleXPosition;\n\n firstHandleValue.current = handleValue;\n\n setFirstValue(handleValue);\n\n setState((prevState) => ({\n ...prevState,\n firstHandleZIndex: 101,\n secondHandleZIndex: 100,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: newHandleXPosition,\n }));\n if (onChange) {\n onChange([handleValue, value[1]]);\n }\n };\n\n const onFirstHandleChangeCommitted: NonNullable<HandlerProps['onChangeCommitted']> = (handleValue, data) => {\n if (!secondHandleRef?.current) {\n return;\n }\n const newHandleXPosition = data.x;\n const secondHandleXPosition = getXCenterHandle(secondHandleRef.current);\n const fillWidth = secondHandleXPosition - newHandleXPosition;\n\n firstHandleValue.current = handleValue;\n\n setFirstValue(handleValue);\n if (onChangeCommitted) {\n onChangeCommitted([handleValue, value[1]]);\n }\n\n setState((prevState) => ({\n ...prevState,\n firstValue: handleValue,\n xFirstHandle: data.x,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: newHandleXPosition,\n }));\n };\n\n const onFirstTextfieldChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setFirstValue(handleValue);\n if (onChangeTextField) {\n onChangeTextField([handleValue, secondValue], event);\n }\n };\n\n const onFirstTextfieldBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setFirstValue(handleValue);\n if (onBlurTextField) {\n onBlurTextField && onBlurTextField([handleValue, secondValue], event);\n }\n };\n\n const onSecondHandleChange: NonNullable<HandlerProps['onChange']> = (handleValue, data) => {\n if (!firstHandleRef?.current) {\n return;\n }\n const firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);\n\n const newHandleXPosition = data.x;\n const fillWidth = newHandleXPosition - firstXHandleXPosition;\n\n secondHandleValue.current = handleValue;\n\n setSecondValue(handleValue);\n setState((prevState) => ({\n ...prevState,\n firstHandleZIndex: 100,\n secondHandleZIndex: 101,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: firstXHandleXPosition,\n }));\n if (onChange) {\n onChange([value[0], handleValue]);\n }\n };\n\n const onSecondHandleChangeCommitted: NonNullable<HandlerProps['onChangeCommitted']> = (handleValue, data) => {\n if (!firstHandleRef?.current) {\n return;\n }\n const firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);\n\n const newHandleXPosition = data.x;\n const fillWidth = newHandleXPosition - firstXHandleXPosition;\n\n secondHandleValue.current = handleValue;\n\n if (onChangeCommitted) {\n onChangeCommitted([value[0], handleValue]);\n }\n\n setSecondValue(handleValue);\n setState((prevState) => ({\n ...prevState,\n secondValue: handleValue,\n xSecondHandle: data.x,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: firstXHandleXPosition,\n }));\n };\n\n const onSecondTextfieldChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n const handleValue = Number(event.target.value);\n\n setSecondValue(handleValue);\n if (onChangeTextField) {\n onChangeTextField([firstValue, handleValue], event);\n }\n };\n\n const onSecondTextfieldBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setSecondValue(handleValue);\n if (onBlurTextField) {\n onBlurTextField([firstValue, handleValue], event);\n }\n };\n\n const onTextfieldKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n if (onKeyDownTextField) {\n onKeyDownTextField([firstValue, secondValue], event);\n }\n };\n\n const [ariaLabelLeft, ariaLabelRight] = ariaLabel || [];\n const currentFirstSliderValue = Math.max(state.firstValue, min);\n\n return (\n <DoubleWrapper>\n {hasLabelContent && (\n <LabelWrapper>\n {labelContentLeft && <LabelContentLeft>{labelContentLeft}</LabelContentLeft>}\n {label && <Label>{label}</Label>}\n </LabelWrapper>\n )}\n <SliderWrapper>\n <SliderBase\n min={min}\n max={max}\n disabled={disabled}\n setStepSize={setStepSize}\n railFillWidth={state.railFillWidth}\n settings={sizeData[size]}\n railFillXPosition={state.railFillXPosition}\n {...rest}\n >\n <Handler\n ref={firstHandleRef}\n stepSize={state.stepSize}\n multipleStepSize={multipleStepSize}\n onChangeCommitted={onFirstHandleChangeCommitted}\n onChange={onFirstHandleChange}\n min={min}\n max={state.secondValue}\n disabled={disabled}\n bounds={[min, state.secondValue]}\n side=\"left\"\n xPosition={state.xFirstHandle}\n zIndex={state.firstHandleZIndex}\n value={currentFirstSliderValue}\n ariaLabel={ariaLabelLeft}\n onMouseEnter={() => setFirstInputActive(true)}\n onMouseLeave={() => setFirstInputActive(false)}\n />\n <Handler\n ref={secondHandleRef}\n stepSize={state.stepSize}\n multipleStepSize={multipleStepSize}\n onChangeCommitted={onSecondHandleChangeCommitted}\n onChange={onSecondHandleChange}\n min={min}\n ariaValueMin={currentFirstSliderValue}\n max={max}\n disabled={disabled}\n bounds={[state.firstValue, max]}\n side=\"right\"\n xPosition={state.xSecondHandle}\n zIndex={state.secondHandleZIndex}\n value={Math.max(state.secondValue, min)}\n ariaLabel={ariaLabelRight}\n onMouseEnter={() => setSecondInputActive(true)}\n onMouseLeave={() => setSecondInputActive(false)}\n />\n </SliderBase>\n\n <InputsWrapper>\n <StyledInput\n className={cx(classes.firstTextField, firstInputActiveClass)}\n enumerationType=\"plain\"\n disabled={disabled}\n value={firstValue}\n onChange={onFirstTextfieldChange}\n onBlur={onFirstTextfieldBlur}\n onKeyDown={onTextfieldKeyDown}\n />\n <StyledInput\n className={cx(classes.secondTextField, secondInputActiveClass)}\n enumerationType=\"plain\"\n disabled={disabled}\n value={secondValue}\n onChange={onSecondTextfieldChange}\n onBlur={onSecondTextfieldBlur}\n onKeyDown={onTextfieldKeyDown}\n />\n </InputsWrapper>\n </SliderWrapper>\n </DoubleWrapper>\n );\n};\n"],"names":["getXCenterHandle","handle","_handle$parentElement","containerX","parentElement","getBoundingClientRect","x","handleRect","handlePosition","DoubleSlider","_ref","min","max","value","disabled","label","labelContentLeft","_ref$size","size","onChangeCommitted","onChangeTextField","onBlurTextField","onKeyDownTextField","onChange","ariaLabel","_ref$multipleStepSize","multipleStepSize","rest","_objectWithoutProperties","_excluded","_useState","useState","stepSize","railFillWidth","railFillXPosition","xFirstHandle","xSecondHandle","firstHandleZIndex","secondHandleZIndex","firstValue","secondValue","_useState2","_slicedToArray","state","setState","_useState3","_useState4","firstInputActive","setFirstInputActive","_useState5","_useState6","secondInputActive","setSecondInputActive","_useState7","_useState8","setFirstValue","_useState9","_useState10","setSecondValue","firstHandleRef","useRef","secondHandleRef","firstHandleValue","secondHandleValue","hasLabelContent","firstInputActiveClass","classes","textFieldActive","undefined","secondInputActiveClass","useEffect","firstLocalValue","Math","secondLocalValue","prevState","_objectSpread","setStepSize","useCallback","newStepSize","onFirstHandleChange","handleValue","data","current","newHandleXPosition","secondHandleXPosition","fillWidth","onFirstHandleChangeCommitted","onFirstTextfieldChange","event","isNumber","target","Number","onFirstTextfieldBlur","onSecondHandleChange","firstXHandleXPosition","onSecondHandleChangeCommitted","onSecondTextfieldChange","onSecondTextfieldBlur","onTextfieldKeyDown","_ref2","_ref3","ariaLabelLeft","ariaLabelRight","currentFirstSliderValue","React","createElement","DoubleWrapper","LabelWrapper","LabelContentLeft","Label","SliderWrapper","SliderBase","_extends","settings","sizeData","Handler","ref","bounds","side","xPosition","zIndex","onMouseEnter","onMouseLeave","ariaValueMin","InputsWrapper","StyledInput","className","cx","firstTextField","enumerationType","onBlur","onKeyDown","secondTextField"],"mappings":"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"}
1
+ {"version":3,"file":"Double.js","sources":["../../../../../src/components/Slider/components/Double/Double.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport type { FC, ChangeEvent, KeyboardEvent, FocusEvent } from 'react';\n\nimport { SliderBase } from '../SliderBase/SliderBase';\nimport { Handler } from '../../ui';\nimport type { HandlerProps } from '../../ui';\nimport { sizeData, setInitValue } from '../../utils';\nimport { cx, isNumber } from '../../../../utils';\nimport { classes } from '../../Slider.tokens';\nimport { InputHidden } from '../../../../utils/inputHidden';\n\nimport { DoubleSliderProps } from './Double.types';\nimport {\n SliderWrapper,\n InputsWrapper,\n Label,\n LabelContentLeft,\n LabelWrapper,\n StyledInput,\n DoubleWrapper,\n} from './Double.styles';\n\nfunction getXCenterHandle(handle: HTMLDivElement) {\n const containerX = handle.parentElement?.getBoundingClientRect()?.x || 0;\n const handleRect = handle.getBoundingClientRect();\n const handlePosition = handleRect.x;\n return handlePosition - containerX;\n}\n\nexport const DoubleSlider: FC<DoubleSliderProps> = ({\n min,\n max,\n value,\n disabled,\n label,\n labelContentLeft,\n size = 'm',\n onChangeCommitted,\n onChangeTextField,\n onBlurTextField,\n onKeyDownTextField,\n onChange,\n ariaLabel,\n multipleStepSize = 10,\n name,\n ...rest\n}) => {\n const [state, setState] = useState({\n stepSize: 0,\n railFillWidth: 0,\n railFillXPosition: 0,\n xFirstHandle: 0,\n xSecondHandle: 0,\n firstHandleZIndex: 100,\n secondHandleZIndex: 101,\n firstValue: value[0],\n secondValue: value[1],\n });\n const [firstInputActive, setFirstInputActive] = useState(false);\n const [secondInputActive, setSecondInputActive] = useState(false);\n\n const [firstValue, setFirstValue] = useState<number>(value[0]);\n const [secondValue, setSecondValue] = useState<number>(value[1]);\n\n const firstHandleRef = useRef<HTMLDivElement | null>(null);\n const secondHandleRef = useRef<HTMLDivElement | null>(null);\n\n const firstHandleValue = useRef<number>(value[0]);\n const secondHandleValue = useRef<number>(value[1]);\n\n const innerRefFirst = useRef<HTMLInputElement>(null);\n const innerRefSecond = useRef<HTMLInputElement>(null);\n\n const { stepSize } = state;\n\n const hasLabelContent = label || labelContentLeft;\n const firstInputActiveClass = firstInputActive && !disabled ? classes.textFieldActive : undefined;\n const secondInputActiveClass = secondInputActive && !disabled ? classes.textFieldActive : undefined;\n\n const setValue = (e: Event) => {\n const firstElement = innerRefFirst.current as HTMLInputElement;\n\n const firstValueInit = Number(firstElement.getAttribute('defaultValue'));\n const secondValueInit = setInitValue(e);\n\n onChangeCommitted && onChangeCommitted([firstValueInit, secondValueInit]);\n setFirstValue(firstValueInit);\n setSecondValue(secondValueInit);\n };\n\n useEffect(() => {\n const firstLocalValue = Math.min(Math.max(value[0], min), max) - min;\n const secondLocalValue = Math.min(Math.max(value[1], min), max) - min;\n\n setFirstValue(value[0]);\n setSecondValue(value[1]);\n\n setState((prevState) => ({\n ...prevState,\n railFillXPosition: stepSize * firstLocalValue,\n railFillWidth: stepSize * secondLocalValue - stepSize * firstLocalValue,\n xFirstHandle: stepSize * firstLocalValue,\n xSecondHandle: stepSize * secondLocalValue,\n }));\n }, [value, stepSize, min, max, setFirstValue, setSecondValue]);\n\n useEffect(() => {\n if (innerRefSecond.current && onChangeCommitted) {\n innerRefSecond.current.addEventListener('setInitValue', setValue);\n }\n\n return () => {\n if (innerRefSecond.current && onChangeCommitted) {\n innerRefSecond.current.removeEventListener('setInitValue', setValue);\n }\n };\n }, [innerRefSecond]);\n\n const setStepSize = useCallback(\n (newStepSize: number) => {\n setState((prevState) => ({\n ...prevState,\n stepSize: newStepSize,\n }));\n },\n [setState],\n );\n\n const onFirstHandleChange: NonNullable<HandlerProps['onChange']> = (handleValue, data) => {\n if (!secondHandleRef?.current) {\n return;\n }\n const newHandleXPosition = data.x;\n const secondHandleXPosition = getXCenterHandle(secondHandleRef.current);\n const fillWidth = secondHandleXPosition - newHandleXPosition;\n\n firstHandleValue.current = handleValue;\n\n setFirstValue(handleValue);\n\n setState((prevState) => ({\n ...prevState,\n firstHandleZIndex: 101,\n secondHandleZIndex: 100,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: newHandleXPosition,\n }));\n if (onChange) {\n onChange([handleValue, value[1]]);\n }\n };\n\n const onFirstHandleChangeCommitted: NonNullable<HandlerProps['onChangeCommitted']> = (handleValue, data) => {\n if (!secondHandleRef?.current) {\n return;\n }\n const newHandleXPosition = data.x;\n const secondHandleXPosition = getXCenterHandle(secondHandleRef.current);\n const fillWidth = secondHandleXPosition - newHandleXPosition;\n\n firstHandleValue.current = handleValue;\n\n setFirstValue(handleValue);\n if (onChangeCommitted) {\n onChangeCommitted([handleValue, value[1]]);\n }\n\n setState((prevState) => ({\n ...prevState,\n firstValue: handleValue,\n xFirstHandle: data.x,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: newHandleXPosition,\n }));\n };\n\n const onFirstTextfieldChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setFirstValue(handleValue);\n if (onChangeTextField) {\n onChangeTextField([handleValue, secondValue], event);\n }\n };\n\n const onFirstTextfieldBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setFirstValue(handleValue);\n if (onBlurTextField) {\n onBlurTextField && onBlurTextField([handleValue, secondValue], event);\n }\n };\n\n const onSecondHandleChange: NonNullable<HandlerProps['onChange']> = (handleValue, data) => {\n if (!firstHandleRef?.current) {\n return;\n }\n const firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);\n\n const newHandleXPosition = data.x;\n const fillWidth = newHandleXPosition - firstXHandleXPosition;\n\n secondHandleValue.current = handleValue;\n\n setSecondValue(handleValue);\n setState((prevState) => ({\n ...prevState,\n firstHandleZIndex: 100,\n secondHandleZIndex: 101,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: firstXHandleXPosition,\n }));\n if (onChange) {\n onChange([value[0], handleValue]);\n }\n };\n\n const onSecondHandleChangeCommitted: NonNullable<HandlerProps['onChangeCommitted']> = (handleValue, data) => {\n if (!firstHandleRef?.current) {\n return;\n }\n const firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);\n\n const newHandleXPosition = data.x;\n const fillWidth = newHandleXPosition - firstXHandleXPosition;\n\n secondHandleValue.current = handleValue;\n\n if (onChangeCommitted) {\n onChangeCommitted([value[0], handleValue]);\n }\n\n setSecondValue(handleValue);\n setState((prevState) => ({\n ...prevState,\n secondValue: handleValue,\n xSecondHandle: data.x,\n railFillWidth: fillWidth < 0 ? 0 : fillWidth,\n railFillXPosition: firstXHandleXPosition,\n }));\n };\n\n const onSecondTextfieldChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n const handleValue = Number(event.target.value);\n\n setSecondValue(handleValue);\n if (onChangeTextField) {\n onChangeTextField([firstValue, handleValue], event);\n }\n };\n\n const onSecondTextfieldBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (!isNumber(event.target.value)) {\n return;\n }\n\n const handleValue = Number(event.target.value);\n\n setSecondValue(handleValue);\n if (onBlurTextField) {\n onBlurTextField([firstValue, handleValue], event);\n }\n };\n\n const onTextfieldKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n if (onKeyDownTextField) {\n onKeyDownTextField([firstValue, secondValue], event);\n }\n };\n\n const [ariaLabelLeft, ariaLabelRight] = ariaLabel || [];\n const currentFirstSliderValue = Math.max(state.firstValue, min);\n\n return (\n <DoubleWrapper>\n {hasLabelContent && (\n <LabelWrapper>\n {labelContentLeft && <LabelContentLeft>{labelContentLeft}</LabelContentLeft>}\n {label && <Label>{label}</Label>}\n </LabelWrapper>\n )}\n <SliderWrapper>\n <SliderBase\n min={min}\n max={max}\n disabled={disabled}\n setStepSize={setStepSize}\n railFillWidth={state.railFillWidth}\n settings={sizeData[size]}\n railFillXPosition={state.railFillXPosition}\n {...rest}\n >\n <Handler\n ref={firstHandleRef}\n stepSize={state.stepSize}\n multipleStepSize={multipleStepSize}\n onChangeCommitted={onFirstHandleChangeCommitted}\n onChange={onFirstHandleChange}\n min={min}\n max={state.secondValue}\n disabled={disabled}\n bounds={[min, state.secondValue]}\n side=\"left\"\n xPosition={state.xFirstHandle}\n zIndex={state.firstHandleZIndex}\n value={currentFirstSliderValue}\n ariaLabel={ariaLabelLeft}\n onMouseEnter={() => setFirstInputActive(true)}\n onMouseLeave={() => setFirstInputActive(false)}\n />\n <Handler\n ref={secondHandleRef}\n stepSize={state.stepSize}\n multipleStepSize={multipleStepSize}\n onChangeCommitted={onSecondHandleChangeCommitted}\n onChange={onSecondHandleChange}\n min={min}\n ariaValueMin={currentFirstSliderValue}\n max={max}\n disabled={disabled}\n bounds={[state.firstValue, max]}\n side=\"right\"\n xPosition={state.xSecondHandle}\n zIndex={state.secondHandleZIndex}\n value={Math.max(state.secondValue, min)}\n ariaLabel={ariaLabelRight}\n onMouseEnter={() => setSecondInputActive(true)}\n onMouseLeave={() => setSecondInputActive(false)}\n />\n </SliderBase>\n\n <InputsWrapper>\n <StyledInput\n className={cx(classes.firstTextField, firstInputActiveClass)}\n enumerationType=\"plain\"\n disabled={disabled}\n value={firstValue}\n onChange={onFirstTextfieldChange}\n onBlur={onFirstTextfieldBlur}\n onKeyDown={onTextfieldKeyDown}\n />\n <StyledInput\n className={cx(classes.secondTextField, secondInputActiveClass)}\n enumerationType=\"plain\"\n disabled={disabled}\n value={secondValue}\n onChange={onSecondTextfieldChange}\n onBlur={onSecondTextfieldBlur}\n onKeyDown={onTextfieldKeyDown}\n />\n </InputsWrapper>\n </SliderWrapper>\n <InputHidden\n name={name}\n type=\"number\"\n datatype=\"slider-double\"\n data-slidertype=\"min\"\n value={firstValue}\n ref={innerRefFirst}\n onChange={() => {}}\n />\n <InputHidden\n name={name}\n type=\"number\"\n datatype=\"slider-double\"\n data-slidertype=\"max\"\n value={secondValue}\n ref={innerRefSecond}\n onChange={() => {}}\n />\n </DoubleWrapper>\n );\n};\n"],"names":["getXCenterHandle","handle","_handle$parentElement","containerX","parentElement","getBoundingClientRect","x","handleRect","handlePosition","DoubleSlider","_ref","min","max","value","disabled","label","labelContentLeft","_ref$size","size","onChangeCommitted","onChangeTextField","onBlurTextField","onKeyDownTextField","onChange","ariaLabel","_ref$multipleStepSize","multipleStepSize","name","rest","_objectWithoutProperties","_excluded","_useState","useState","stepSize","railFillWidth","railFillXPosition","xFirstHandle","xSecondHandle","firstHandleZIndex","secondHandleZIndex","firstValue","secondValue","_useState2","_slicedToArray","state","setState","_useState3","_useState4","firstInputActive","setFirstInputActive","_useState5","_useState6","secondInputActive","setSecondInputActive","_useState7","_useState8","setFirstValue","_useState9","_useState10","setSecondValue","firstHandleRef","useRef","secondHandleRef","firstHandleValue","secondHandleValue","innerRefFirst","innerRefSecond","hasLabelContent","firstInputActiveClass","classes","textFieldActive","undefined","secondInputActiveClass","setValue","e","firstElement","current","firstValueInit","Number","getAttribute","secondValueInit","setInitValue","useEffect","firstLocalValue","Math","secondLocalValue","prevState","_objectSpread","addEventListener","removeEventListener","setStepSize","useCallback","newStepSize","onFirstHandleChange","handleValue","data","newHandleXPosition","secondHandleXPosition","fillWidth","onFirstHandleChangeCommitted","onFirstTextfieldChange","event","isNumber","target","onFirstTextfieldBlur","onSecondHandleChange","firstXHandleXPosition","onSecondHandleChangeCommitted","onSecondTextfieldChange","onSecondTextfieldBlur","onTextfieldKeyDown","_ref2","_ref3","ariaLabelLeft","ariaLabelRight","currentFirstSliderValue","React","createElement","DoubleWrapper","LabelWrapper","LabelContentLeft","Label","SliderWrapper","SliderBase","_extends","settings","sizeData","Handler","ref","bounds","side","xPosition","zIndex","onMouseEnter","onMouseLeave","ariaValueMin","InputsWrapper","StyledInput","className","cx","firstTextField","enumerationType","onBlur","onKeyDown","secondTextField","InputHidden","type","datatype"],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var React = require('react');
7
+ require('../../../../utils/react.js');
8
+ require('@linaria/react');
9
+ require('react-draggable');
10
+ require('styled-components');
11
+ var Double = require('../Double/Double.js');
12
+
13
+ var DoubleUncontrolled = function DoubleUncontrolled(props) {
14
+ var defaultValue = props.defaultValue,
15
+ min = props.min,
16
+ max = props.max,
17
+ value = props.value,
18
+ name = props.name,
19
+ onChange = props.onChange;
20
+ var _useState = React.useState(defaultValue !== null && defaultValue !== void 0 ? defaultValue : [min, max]),
21
+ _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
22
+ sliderValue = _useState2[0],
23
+ setSliderValue = _useState2[1];
24
+ var sortValues = function sortValues(values) {
25
+ return values.map(function (val) {
26
+ if (val < props.min) {
27
+ return props.min;
28
+ }
29
+ if (val > props.max) {
30
+ return props.max;
31
+ }
32
+ return val;
33
+ }).sort(function (a, b) {
34
+ return a - b;
35
+ });
36
+ };
37
+ var onChangeHandle = function onChangeHandle(values) {
38
+ var sortValue = sortValues(values);
39
+ if (onChange && !value && name) {
40
+ onChange({
41
+ target: {
42
+ value: sortValue,
43
+ name: name
44
+ }
45
+ });
46
+ }
47
+ setSliderValue(sortValue);
48
+ };
49
+ var onChangeCommitedHandle = function onChangeCommitedHandle(values) {
50
+ var sortValue = sortValues(values);
51
+ if (onChange && !value && name) {
52
+ onChange({
53
+ target: {
54
+ value: sortValue,
55
+ name: name
56
+ }
57
+ });
58
+ }
59
+ setSliderValue(sortValue);
60
+ };
61
+ var onBlurTextField = function onBlurTextField(values) {
62
+ var sortValue = sortValues(values);
63
+ if (onChange && !value && name) {
64
+ onChange({
65
+ target: {
66
+ value: sortValue,
67
+ name: name
68
+ }
69
+ });
70
+ }
71
+ setSliderValue(sortValue);
72
+ };
73
+ var onKeyDownTextField = function onKeyDownTextField(values, e) {
74
+ if (e.key === 'Enter') {
75
+ var sortValue = sortValues(values);
76
+ if (onChange && !value && name) {
77
+ onChange({
78
+ target: {
79
+ value: sortValue,
80
+ name: name
81
+ }
82
+ });
83
+ }
84
+ setSliderValue(sortValue);
85
+ }
86
+ };
87
+ return value ? /*#__PURE__*/React.createElement(Double.DoubleSlider, _rollupPluginBabelHelpers.extends({}, props, {
88
+ value: value
89
+ })) : /*#__PURE__*/React.createElement(Double.DoubleSlider, _rollupPluginBabelHelpers.extends({
90
+ value: sliderValue,
91
+ onKeyDownTextField: onKeyDownTextField,
92
+ onBlurTextField: onBlurTextField,
93
+ onChangeCommitted: onChangeCommitedHandle
94
+ }, props, {
95
+ onChange: onChangeHandle
96
+ }));
97
+ };
98
+
99
+ exports.DoubleUncontrolled = DoubleUncontrolled;
100
+ //# sourceMappingURL=DoubleUncontrolled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DoubleUncontrolled.js","sources":["../../../../../src/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.tsx"],"sourcesContent":["import React, { KeyboardEvent, FC, useState } from 'react';\n\nimport { DoubleSlider } from '../index';\nimport { FormTypeNumberArray } from '../../../../types/FormType';\n\nimport { DoubleUncontrolledProps } from './DoubleUncontrolled.types';\n\nexport const DoubleUncontrolled: FC<DoubleUncontrolledProps> = (props) => {\n const { defaultValue, min, max, value, name, onChange } = props;\n const [sliderValue, setSliderValue] = useState<number[]>(defaultValue ?? [min, max]);\n\n const sortValues = (values: number[]) => {\n return values\n .map((val) => {\n if (val < props.min) {\n return props.min;\n }\n if (val > props.max) {\n return props.max;\n }\n return val;\n })\n .sort((a, b) => a - b);\n };\n\n const onChangeHandle = (values: number[]) => {\n const sortValue = sortValues(values);\n\n if (onChange && !value && name) {\n (onChange as (event: FormTypeNumberArray) => void)({\n target: {\n value: sortValue,\n name,\n },\n });\n }\n\n setSliderValue(sortValue);\n };\n\n const onChangeCommitedHandle = (values: number[]) => {\n const sortValue = sortValues(values);\n\n if (onChange && !value && name) {\n (onChange as (event: FormTypeNumberArray) => void)({\n target: {\n value: sortValue,\n name,\n },\n });\n }\n\n setSliderValue(sortValue);\n };\n\n const onBlurTextField = (values: number[]) => {\n const sortValue = sortValues(values);\n\n if (onChange && !value && name) {\n (onChange as (event: FormTypeNumberArray) => void)({\n target: {\n value: sortValue,\n name,\n },\n });\n }\n\n setSliderValue(sortValue);\n };\n\n const onKeyDownTextField = (values: number[], e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n const sortValue = sortValues(values);\n\n if (onChange && !value && name) {\n (onChange as (event: FormTypeNumberArray) => void)({\n target: {\n value: sortValue,\n name,\n },\n });\n }\n\n setSliderValue(sortValue);\n }\n };\n\n return value ? (\n <DoubleSlider {...props} value={value} />\n ) : (\n <DoubleSlider\n value={sliderValue}\n onKeyDownTextField={onKeyDownTextField}\n onBlurTextField={onBlurTextField}\n onChangeCommitted={onChangeCommitedHandle}\n {...props}\n onChange={onChangeHandle}\n />\n );\n};\n"],"names":["DoubleUncontrolled","props","defaultValue","min","max","value","name","onChange","_useState","useState","_useState2","_slicedToArray","sliderValue","setSliderValue","sortValues","values","map","val","sort","a","b","onChangeHandle","sortValue","target","onChangeCommitedHandle","onBlurTextField","onKeyDownTextField","e","key","React","createElement","DoubleSlider","_extends","onChangeCommitted"],"mappings":"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"}
@@ -7,14 +7,16 @@ var React = require('react');
7
7
  var SliderBase = require('../SliderBase/SliderBase.js');
8
8
  var Handler = require('../../ui/Handler/Handler.js');
9
9
  require('@linaria/react');
10
- var index$1 = require('../../utils/index.js');
11
- var index = require('../../../../utils/index.js');
10
+ var index = require('../../utils/index.js');
11
+ var index$1 = require('../../../../utils/index.js');
12
12
  var Slider_tokens = require('../../Slider.tokens.js');
13
+ var inputHidden = require('../../../../utils/inputHidden.js');
13
14
  var Single_styles = require('./Single.styles.js');
14
15
  var isNumber = require('../../../../utils/isNumber.js');
15
16
 
16
- var _excluded = ["min", "max", "value", "disabled", "onChangeCommitted", "onChange", "ariaLabel", "label", "labelContentLeft", "showRangeValues", "showCurrentValue", "hideMinValueDiff", "hideMaxValueDiff", "labelPlacement", "rangeValuesPlacement", "multipleStepSize", "size"];
17
+ var _excluded = ["min", "max", "value", "disabled", "onChangeCommitted", "onChange", "ariaLabel", "label", "labelContentLeft", "showRangeValues", "showCurrentValue", "hideMinValueDiff", "hideMaxValueDiff", "labelPlacement", "rangeValuesPlacement", "multipleStepSize", "defaultValue", "size", "name"];
17
18
  var SingleSlider = function SingleSlider(_ref) {
19
+ var _ref2;
18
20
  var min = _ref.min,
19
21
  max = _ref.max,
20
22
  value = _ref.value,
@@ -34,8 +36,10 @@ var SingleSlider = function SingleSlider(_ref) {
34
36
  rangeValuesPlacement = _ref$rangeValuesPlace === void 0 ? 'outer' : _ref$rangeValuesPlace,
35
37
  _ref$multipleStepSize = _ref.multipleStepSize,
36
38
  multipleStepSize = _ref$multipleStepSize === void 0 ? 10 : _ref$multipleStepSize,
39
+ defaultValue = _ref.defaultValue,
37
40
  _ref$size = _ref.size,
38
41
  size = _ref$size === void 0 ? 'm' : _ref$size,
42
+ name = _ref.name,
39
43
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
40
44
  var _useState = React.useState({
41
45
  xHandle: 0,
@@ -45,6 +49,7 @@ var SingleSlider = function SingleSlider(_ref) {
45
49
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
46
50
  state = _useState2[0],
47
51
  setState = _useState2[1];
52
+ var innerRef = React.useRef(null);
48
53
  var _useState3 = React.useState(0),
49
54
  _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
50
55
  startOffset = _useState4[0],
@@ -53,7 +58,7 @@ var SingleSlider = function SingleSlider(_ref) {
53
58
  _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
54
59
  endOffset = _useState6[0],
55
60
  setEndOffset = _useState6[1];
56
- var _useState7 = React.useState(value),
61
+ var _useState7 = React.useState((_ref2 = value !== null && value !== void 0 ? value : defaultValue) !== null && _ref2 !== void 0 ? _ref2 : min),
57
62
  _useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
58
63
  dragValue = _useState8[0],
59
64
  setDragValue = _useState8[1];
@@ -61,14 +66,14 @@ var SingleSlider = function SingleSlider(_ref) {
61
66
  var hasLabelContent = label || labelContentLeft;
62
67
  var labelPlacementClass = labelPlacement === 'outer' ? Slider_tokens.classes.labelPlacementOuter : Slider_tokens.classes.labelPlacementInner;
63
68
  var rangeValuesPlacementClass = rangeValuesPlacement === 'outer' ? Slider_tokens.classes.rangeValuesPlacementOuter : Slider_tokens.classes.rangeValuesPlacementInner;
64
- var hideMinValueDiffClass = hideMinValueDiff && value - min <= hideMinValueDiff ? Slider_tokens.classes.hideMinValue : '';
65
- var hideMaxValueDiffClass = hideMaxValueDiff && max - value <= hideMaxValueDiff ? Slider_tokens.classes.hideMaxValue : '';
69
+ var hideMinValueDiffClass = hideMinValueDiff && dragValue - min <= hideMinValueDiff ? Slider_tokens.classes.hideMinValue : '';
70
+ var hideMaxValueDiffClass = hideMaxValueDiff && max - dragValue <= hideMaxValueDiff ? Slider_tokens.classes.hideMaxValue : '';
66
71
  var startLabelRef = React.useRef(null);
67
72
  var endLabelRef = React.useRef(null);
68
73
  var activeFirstValue = dragValue === min ? Slider_tokens.classes.activeRangeValue : undefined;
69
74
  var activeSecondValue = dragValue === max ? Slider_tokens.classes.activeRangeValue : undefined;
70
75
  React.useEffect(function () {
71
- var localValue = Math.min(Math.max(value, min), max) - min;
76
+ var localValue = Math.min(Math.max(dragValue, min), max) - min;
72
77
  if (rangeValuesPlacement === 'outer') {
73
78
  var _startLabelRef$curren, _endLabelRef$current;
74
79
  var startWidth = (_startLabelRef$curren = startLabelRef.current) === null || _startLabelRef$curren === void 0 ? void 0 : _startLabelRef$curren.offsetWidth;
@@ -89,7 +94,21 @@ var SingleSlider = function SingleSlider(_ref) {
89
94
  railFillWidth: stepSize * localValue
90
95
  });
91
96
  });
92
- }, [value, labelPlacement, stepSize, rangeValuesPlacement, min, max, setStartOffset, setEndOffset]);
97
+ }, [dragValue, labelPlacement, stepSize, rangeValuesPlacement, min, max, setStartOffset, setEndOffset]);
98
+ React.useEffect(function () {
99
+ if (innerRef.current) {
100
+ innerRef.current.addEventListener('setInitValue', function (e) {
101
+ return setDragValue(index.setInitValue(e));
102
+ });
103
+ }
104
+ return function () {
105
+ if (innerRef.current) {
106
+ innerRef.current.removeEventListener('setInitValue', function (e) {
107
+ return setDragValue(index.setInitValue(e));
108
+ });
109
+ }
110
+ };
111
+ }, [innerRef]);
93
112
  var setStepSize = React.useCallback(function (newStepSize) {
94
113
  setState(function (prevState) {
95
114
  return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevState), {}, {
@@ -106,7 +125,19 @@ var SingleSlider = function SingleSlider(_ref) {
106
125
  });
107
126
  });
108
127
  if (onChange) {
109
- onChange(newValue);
128
+ if (value !== undefined) {
129
+ // Если value определен, значит, мы находимся в втором варианте типа
130
+ onChange(newValue);
131
+ }
132
+ if (name && !value) {
133
+ // Если name определен, значит, мы находимся в первом варианте типа
134
+ onChange({
135
+ target: {
136
+ value: newValue,
137
+ name: name
138
+ }
139
+ });
140
+ }
110
141
  }
111
142
  setDragValue(newValue);
112
143
  };
@@ -129,7 +160,7 @@ var SingleSlider = function SingleSlider(_ref) {
129
160
  className: rangeValuesPlacementClass
130
161
  }, showRangeValues && /*#__PURE__*/React.createElement(Single_styles.StyledRangeValue, {
131
162
  ref: startLabelRef,
132
- className: index.cx(hideMinValueDiffClass, activeFirstValue)
163
+ className: index$1.cx(hideMinValueDiffClass, activeFirstValue)
133
164
  }, min), /*#__PURE__*/React.createElement(SliderBase.SliderBase, _rollupPluginBabelHelpers.extends({
134
165
  min: min,
135
166
  max: max,
@@ -137,7 +168,7 @@ var SingleSlider = function SingleSlider(_ref) {
137
168
  setStepSize: setStepSize,
138
169
  onChange: onHandleChangeCommitted,
139
170
  railFillWidth: state.railFillWidth,
140
- settings: index$1.sizeData[size],
171
+ settings: index.sizeData[size],
141
172
  labelPlacement: labelPlacement,
142
173
  rangeValuesPlacement: rangeValuesPlacement
143
174
  }, rest), /*#__PURE__*/React.createElement(Handler.Handler, {
@@ -156,8 +187,15 @@ var SingleSlider = function SingleSlider(_ref) {
156
187
  showCurrentValue: showCurrentValue
157
188
  })), showRangeValues && /*#__PURE__*/React.createElement(Single_styles.StyledRangeValue, {
158
189
  ref: endLabelRef,
159
- className: index.cx(Slider_tokens.classes.maxRangeValue, hideMaxValueDiffClass, activeSecondValue)
160
- }, max)));
190
+ className: index$1.cx(Slider_tokens.classes.maxRangeValue, hideMaxValueDiffClass, activeSecondValue)
191
+ }, max)), /*#__PURE__*/React.createElement(inputHidden.InputHidden, {
192
+ name: name,
193
+ type: "number",
194
+ datatype: "slider-single",
195
+ value: dragValue,
196
+ ref: innerRef,
197
+ onChange: function onChange() {}
198
+ }));
161
199
  };
162
200
 
163
201
  exports.SingleSlider = SingleSlider;