@salutejs/plasma-new-hope 0.242.0-canary.1702.12829190112.0 → 0.242.0-canary.1709.12829247465.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
- package/cjs/components/Select/ui/Inner/Inner.js +1 -1
- package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
- package/emotion/cjs/components/Combobox/Combobox.template-doc.mdx +5 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/emotion/cjs/components/Dropdown/Dropdown.template-doc.mdx +4 -0
- package/emotion/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/emotion/cjs/components/Select/Select.template-doc.mdx +441 -0
- package/emotion/cjs/components/Select/ui/Inner/Inner.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +7 -1
- package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +7 -3
- package/emotion/es/components/Combobox/Combobox.template-doc.mdx +5 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/emotion/es/components/Dropdown/Dropdown.template-doc.mdx +4 -0
- package/emotion/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/emotion/es/components/Select/Select.template-doc.mdx +441 -0
- package/emotion/es/components/Select/ui/Inner/Inner.js +1 -1
- package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +7 -1
- package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +7 -3
- package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
- package/es/components/Select/ui/Inner/Inner.js +1 -1
- package/es/components/Select/ui/Inner/Inner.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +5 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +4 -0
- package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/styled-components/cjs/components/Select/Select.template-doc.mdx +441 -0
- package/styled-components/cjs/components/Select/ui/Inner/Inner.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +7 -1
- package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +7 -3
- package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +5 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +21 -66
- package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +4 -0
- package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -1
- package/styled-components/es/components/Select/Select.template-doc.mdx +441 -0
- package/styled-components/es/components/Select/ui/Inner/Inner.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +7 -1
- package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +7 -3
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts +6 -0
- package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts +8 -10
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.styles.d.ts +12 -12
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +0 -4
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownInner/DropdownInner.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts +5 -0
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.type.d.ts.map +1 -1
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +4 -4
- package/types/components/Range/Range.types.d.ts +5 -5
- package/types/components/Range/Range.types.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +2 -2
- package/types/components/Select/Select.types.d.ts.map +1 -1
- package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts +11 -0
- package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts +24 -24
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +4 -5
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Range/Range.d.ts +12 -12
- package/types/examples/plasma_b2c/components/Select/Select.d.ts +4 -4
- package/types/examples/plasma_web/components/Combobox/Combobox.d.ts +24 -24
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +4 -5
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Range/Range.d.ts +12 -12
- package/types/examples/plasma_web/components/Select/Select.d.ts +4 -4
@@ -37,7 +37,7 @@ var Inner = function Inner(_ref) {
|
|
37
37
|
if (!isEmpty.isEmpty(item === null || item === void 0 ? void 0 : item.items)) {
|
38
38
|
var _item$items;
|
39
39
|
return /*#__PURE__*/React.createElement(FloatingPopover.FloatingPopover, {
|
40
|
-
placement:
|
40
|
+
placement: (item === null || item === void 0 ? void 0 : item.placement) || 'right-start',
|
41
41
|
opened: isCurrentListOpen,
|
42
42
|
onToggle: handleToggle,
|
43
43
|
offset: 2,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Inner.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { FloatingPopover } from '../../FloatingPopover';\nimport { isEmpty } from '../../../../../utils';\nimport { Ul } from '../../Combobox.styles';\n\nimport type { ItemOptionTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement
|
1
|
+
{"version":3,"file":"Inner.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { FloatingPopover } from '../../FloatingPopover';\nimport { isEmpty } from '../../../../../utils';\nimport { Ul } from '../../Combobox.styles';\n\nimport type { ItemOptionTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right-start'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n offset={2}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n >\n <Ul role=\"group\" id={listId} isInnerUl listWidth={listWidth}>\n {item.items?.map((innerItem: ItemOptionTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","offset","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","Ul","role","id","isInnerUl","map","innerItem","innerIndex","key"],"mappings":"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"}
|
@@ -19,7 +19,7 @@ var RangeDatePopover = require('./RangeDatePopover/RangeDatePopover.js');
|
|
19
19
|
var noop = require('../../../utils/noop.js');
|
20
20
|
var calendarRangeHelper = require('../../Calendar/utils/calendarRangeHelper.js');
|
21
21
|
|
22
|
-
var _excluded = ["className", "autoComplete", "isDoubleCalendar", "opened", "label", "leftHelper", "contentLeft", "contentRight", "view", "size", "readOnly", "disabled", "name", "dividerVariant", "dividerIcon", "defaultFirstDate", "defaultSecondDate", "firstValueError", "secondValueError", "firstValueSuccess", "secondValueSuccess", "firstPlaceholder", "secondPlaceholder", "firstTextfieldContentLeft", "firstTextfieldContentRight", "secondTextfieldContentLeft", "secondTextfieldContentRight", "firstTextfieldTextBefore", "secondTextfieldTextBefore", "firstTextfieldTextAfter", "secondTextfieldTextAfter", "required", "requiredPlacement", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "
|
22
|
+
var _excluded = ["className", "autoComplete", "isDoubleCalendar", "opened", "label", "leftHelper", "contentLeft", "contentRight", "view", "size", "readOnly", "disabled", "name", "dividerVariant", "dividerIcon", "defaultFirstDate", "defaultSecondDate", "firstValueError", "secondValueError", "firstValueSuccess", "secondValueSuccess", "firstPlaceholder", "secondPlaceholder", "firstTextfieldContentLeft", "firstTextfieldContentRight", "secondTextfieldContentLeft", "secondTextfieldContentRight", "firstTextfieldTextBefore", "secondTextfieldTextBefore", "firstTextfieldTextAfter", "secondTextfieldTextAfter", "required", "requiredPlacement", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "offset", "onToggle", "onChange", "onChangeFirstValue", "onChangeSecondValue", "onCommitFirstDate", "onCommitSecondDate", "onFocusFirstTextfield", "onFocusSecondTextfield", "onBlurFirstTextfield", "onBlurSecondTextfield"];
|
23
23
|
var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
24
24
|
return /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
25
25
|
var _rangeRef$current, _rangeRef$current2;
|
@@ -93,8 +93,6 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
93
93
|
closeOnOverlayClick = _ref$closeOnOverlayCl === void 0 ? true : _ref$closeOnOverlayCl,
|
94
94
|
_ref$closeOnEsc = _ref.closeOnEsc,
|
95
95
|
closeOnEsc = _ref$closeOnEsc === void 0 ? true : _ref$closeOnEsc,
|
96
|
-
_ref$closeAfterDateSe = _ref.closeAfterDateSelect,
|
97
|
-
closeAfterDateSelect = _ref$closeAfterDateSe === void 0 ? true : _ref$closeAfterDateSe,
|
98
96
|
offset = _ref.offset,
|
99
97
|
onToggle = _ref.onToggle,
|
100
98
|
onChange = _ref.onChange,
|
@@ -147,14 +145,6 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
147
145
|
_useState14 = _rollupPluginBabelHelpers.slicedToArray(_useState13, 2),
|
148
146
|
inputSecondValue = _useState14[0],
|
149
147
|
setInputSecondValue = _useState14[1];
|
150
|
-
var _useState15 = React.useState(Boolean(calendarFirstValue && calendarSecondValue)),
|
151
|
-
_useState16 = _rollupPluginBabelHelpers.slicedToArray(_useState15, 2),
|
152
|
-
fullDateEntered = _useState16[0],
|
153
|
-
setFullDateEntered = _useState16[1];
|
154
|
-
var _useState17 = React.useState(false),
|
155
|
-
_useState18 = _rollupPluginBabelHelpers.slicedToArray(_useState17, 2),
|
156
|
-
secondTextFieldClicked = _useState18[0],
|
157
|
-
setSecondTextFieldClicked = _useState18[1];
|
158
148
|
var setFirstInputValue = function setFirstInputValue(value) {
|
159
149
|
setInputFirstValue(value);
|
160
150
|
if (onChange) {
|
@@ -215,12 +205,12 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
215
205
|
}),
|
216
206
|
handleChangeSecondValue = _useDatePicker2.handleChangeValue,
|
217
207
|
handleCommitSecondDate = _useDatePicker2.handleCommitDate;
|
218
|
-
var handleToggle = function handleToggle(
|
208
|
+
var handleToggle = function handleToggle(opened, event) {
|
219
209
|
var _firstInputRef$curren, _secondInputRef$curre;
|
220
210
|
if (disabled || readOnly) {
|
221
211
|
return;
|
222
212
|
}
|
223
|
-
var isCalendarOpen = (firstInputRef !== null && firstInputRef !== void 0 && (_firstInputRef$curren = firstInputRef.current) !== null && _firstInputRef$curren !== void 0 && _firstInputRef$curren.contains(
|
213
|
+
var isCalendarOpen = (firstInputRef !== null && firstInputRef !== void 0 && (_firstInputRef$curren = firstInputRef.current) !== null && _firstInputRef$curren !== void 0 && _firstInputRef$curren.contains(event.target || null) || secondInputRef !== null && secondInputRef !== void 0 && (_secondInputRef$curre = secondInputRef.current) !== null && _secondInputRef$curre !== void 0 && _secondInputRef$curre.contains(event.target || null)) && event.code !== useKeyboardNavigation.keys.Escape ? true : opened;
|
224
214
|
if (!isCalendarOpen) {
|
225
215
|
if (calendarFirstValue && !calendarSecondValue) {
|
226
216
|
var _secondInputRef$curre2;
|
@@ -231,22 +221,11 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
231
221
|
firstInputRef === null || firstInputRef === void 0 || (_firstInputRef$curren2 = firstInputRef.current) === null || _firstInputRef$curren2 === void 0 || _firstInputRef$curren2.focus();
|
232
222
|
}
|
233
223
|
}
|
234
|
-
if (!isCalendarOpen) {
|
235
|
-
setSecondTextFieldClicked(false);
|
236
|
-
}
|
237
224
|
if (onToggle) {
|
238
225
|
return onToggle(isCalendarOpen, event);
|
239
226
|
}
|
240
227
|
setIsInnerOpen(isCalendarOpen);
|
241
228
|
};
|
242
|
-
var handleFocusFirstTextField = function handleFocusFirstTextField(event) {
|
243
|
-
onFocusFirstTextfield === null || onFocusFirstTextfield === void 0 || onFocusFirstTextfield(event);
|
244
|
-
setSecondTextFieldClicked(false);
|
245
|
-
};
|
246
|
-
var handleFocusSecondTextField = function handleFocusSecondTextField(event) {
|
247
|
-
onFocusSecondTextfield === null || onFocusSecondTextfield === void 0 || onFocusSecondTextfield(event);
|
248
|
-
setSecondTextFieldClicked(true);
|
249
|
-
};
|
250
229
|
var handleBlur = function handleBlur(event, outerHandler) {
|
251
230
|
if (!inputFirstValue || !inputSecondValue) {
|
252
231
|
outerHandler === null || outerHandler === void 0 || outerHandler(event);
|
@@ -286,37 +265,6 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
286
265
|
closeOnEsc: closeOnEsc
|
287
266
|
}),
|
288
267
|
onKeyDown = _useKeyNavigation.onKeyDown;
|
289
|
-
var handleChangeStartOfRange = function handleChangeStartOfRange(chosenDate, dateInfo) {
|
290
|
-
if (!fullDateEntered) {
|
291
|
-
handleCommitFirstDate(chosenDate, false, true, dateInfo);
|
292
|
-
handleCommitSecondDate('');
|
293
|
-
return;
|
294
|
-
}
|
295
|
-
var prevValue = secondTextFieldClicked ? calendarFirstValue : calendarSecondValue;
|
296
|
-
var _getSortedValues3 = calendarRangeHelper.getSortedValues([prevValue, chosenDate]),
|
297
|
-
_getSortedValues4 = _rollupPluginBabelHelpers.slicedToArray(_getSortedValues3, 2),
|
298
|
-
first = _getSortedValues4[0],
|
299
|
-
second = _getSortedValues4[1];
|
300
|
-
handleCommitFirstDate(first, false, true, dateInfo);
|
301
|
-
handleCommitSecondDate(second, false, true, dateInfo);
|
302
|
-
if (!firstValueError && !secondValueError && closeAfterDateSelect) {
|
303
|
-
handleToggle(false);
|
304
|
-
}
|
305
|
-
};
|
306
|
-
var handleChangeCalendarValue = function handleChangeCalendarValue(_ref2, dateInfo) {
|
307
|
-
var _ref3 = _rollupPluginBabelHelpers.slicedToArray(_ref2, 2),
|
308
|
-
firstDate = _ref3[0],
|
309
|
-
secondDate = _ref3[1];
|
310
|
-
if (firstDate) {
|
311
|
-
handleCommitFirstDate(firstDate, false, true, dateInfo);
|
312
|
-
}
|
313
|
-
if (secondDate) {
|
314
|
-
handleCommitSecondDate(secondDate, false, true, dateInfo);
|
315
|
-
}
|
316
|
-
if (firstDate && secondDate && !firstValueError && !secondValueError && closeAfterDateSelect) {
|
317
|
-
handleToggle(false);
|
318
|
-
}
|
319
|
-
};
|
320
268
|
var RangeComponent = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(RangeDate_styles.StyledRange, {
|
321
269
|
ref: rangeRef,
|
322
270
|
autoComplete: autoComplete,
|
@@ -362,8 +310,8 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
362
310
|
rangeRef === null || rangeRef === void 0 || (_rangeRef$current4 = rangeRef.current) === null || _rangeRef$current4 === void 0 || (_rangeRef$current4 = _rangeRef$current4.firstTextField()) === null || _rangeRef$current4 === void 0 || (_rangeRef$current4 = _rangeRef$current4.current) === null || _rangeRef$current4 === void 0 || _rangeRef$current4.focus();
|
363
311
|
}
|
364
312
|
},
|
365
|
-
onFocusFirstTextfield:
|
366
|
-
onFocusSecondTextfield:
|
313
|
+
onFocusFirstTextfield: onFocusFirstTextfield,
|
314
|
+
onFocusSecondTextfield: onFocusSecondTextfield,
|
367
315
|
onBlurFirstTextfield: function onBlurFirstTextfield(event) {
|
368
316
|
return handleBlur(event, _onBlurFirstTextfield);
|
369
317
|
},
|
@@ -412,13 +360,8 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
412
360
|
lang: lang
|
413
361
|
}));
|
414
362
|
}, [format, lang]);
|
415
|
-
React.
|
416
|
-
|
417
|
-
setFullDateEntered(true);
|
418
|
-
}
|
419
|
-
}, [calendarFirstValue, calendarSecondValue]);
|
420
|
-
var RootWrapper = React.useCallback(function (_ref4) {
|
421
|
-
var children = _ref4.children;
|
363
|
+
var RootWrapper = React.useCallback(function (_ref2) {
|
364
|
+
var children = _ref2.children;
|
422
365
|
return /*#__PURE__*/React.createElement(Root, {
|
423
366
|
view: view,
|
424
367
|
size: size,
|
@@ -460,8 +403,20 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
460
403
|
lang: lang,
|
461
404
|
isDoubleCalendar: isDoubleCalendar,
|
462
405
|
rootWrapper: RootWrapper,
|
463
|
-
onChangeStartOfRange:
|
464
|
-
|
406
|
+
onChangeStartOfRange: function onChangeStartOfRange(firstDate, dateInfo) {
|
407
|
+
handleCommitFirstDate(firstDate, false, true, dateInfo);
|
408
|
+
handleCommitSecondDate('');
|
409
|
+
},
|
410
|
+
onChangeValue: function onChangeValue(_ref3, dateInfo) {
|
411
|
+
var _ref4 = _rollupPluginBabelHelpers.slicedToArray(_ref3, 2),
|
412
|
+
firstDate = _ref4[0],
|
413
|
+
secondDate = _ref4[1];
|
414
|
+
firstDate && handleCommitFirstDate(firstDate, false, true, dateInfo);
|
415
|
+
secondDate && handleCommitSecondDate(secondDate, false, true, dateInfo);
|
416
|
+
if (firstDate && secondDate && !firstValueError && !secondValueError) {
|
417
|
+
setIsInnerOpen(false);
|
418
|
+
}
|
419
|
+
}
|
465
420
|
}), leftHelper && /*#__PURE__*/React.createElement(RangeDate_styles.LeftHelper, null, leftHelper), /*#__PURE__*/React.createElement(DatePickerBase_styles.InputHidden, _rollupPluginBabelHelpers.extends({
|
466
421
|
name: name,
|
467
422
|
type: "hidden",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RangeDate.js","sources":["../../../../src/components/DatePicker/RangeDate/RangeDate.tsx"],"sourcesContent":["import React, { createRef, forwardRef, useCallback, useEffect, useRef, useState } from 'react';\nimport type {\n KeyboardEvent,\n FocusEvent,\n FocusEventHandler,\n MutableRefObject,\n SyntheticEvent,\n PropsWithChildren,\n FC,\n} from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, noop } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter, getDateFromFormat } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport type { RangeInputRefs } from '../../Range/Range.types';\nimport { classes } from '../DatePicker.tokens';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { InputHidden } from '../DatePickerBase.styles';\nimport { getSortedValues } from '../../Calendar/utils';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\n\nimport type { DatePickerRangeProps } from './RangeDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledRange, base } from './RangeDate.styles';\nimport { RangeDatePopover } from './RangeDatePopover/RangeDatePopover';\n\nexport const datePickerRangeRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerRangeProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<RangeInputRefs, DatePickerRangeProps>(\n (\n {\n className,\n autoComplete,\n\n isDoubleCalendar = false,\n opened = false,\n\n label,\n leftHelper,\n contentLeft,\n contentRight,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n dividerVariant = 'dash',\n dividerIcon,\n\n defaultFirstDate = '',\n defaultSecondDate = '',\n firstValueError,\n secondValueError,\n firstValueSuccess,\n secondValueSuccess,\n firstPlaceholder,\n secondPlaceholder,\n firstTextfieldContentLeft,\n firstTextfieldContentRight,\n secondTextfieldContentLeft,\n secondTextfieldContentRight,\n firstTextfieldTextBefore,\n secondTextfieldTextBefore,\n firstTextfieldTextAfter,\n secondTextfieldTextAfter,\n\n required,\n requiredPlacement = 'right',\n\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n closeAfterDateSelect = true,\n offset,\n\n onToggle,\n\n onChange,\n onChangeFirstValue,\n onChangeSecondValue,\n\n onCommitFirstDate,\n onCommitSecondDate,\n\n onFocusFirstTextfield,\n onFocusSecondTextfield,\n onBlurFirstTextfield,\n onBlurSecondTextfield,\n\n ...rest\n },\n ref,\n ) => {\n const rangeRef = ref && 'current' in ref ? ref : createRef<RangeInputRefs>();\n const rootRef = useRef<HTMLDivElement | null>(null);\n\n const innerRefFirst = useRef<HTMLInputElement>(null);\n const innerRefSecond = useRef<HTMLInputElement>(null);\n\n const [firstInputRef, setFirstInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.firstTextField(),\n );\n const [secondInputRef, setSecondInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.secondTextField(),\n );\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarFirstValue, setCalendarFirstValue] = useState(\n formatCalendarValue(defaultFirstDate, format, lang),\n );\n const [inputFirstValue, setInputFirstValue] = useState(\n formatInputValue({ value: defaultFirstDate, format, lang }),\n );\n\n const [calendarSecondValue, setCalendarSecondValue] = useState(\n formatCalendarValue(defaultSecondDate, format, lang),\n );\n const [inputSecondValue, setInputSecondValue] = useState(\n formatInputValue({ value: defaultSecondDate, format, lang }),\n );\n\n const [fullDateEntered, setFullDateEntered] = useState(Boolean(calendarFirstValue && calendarSecondValue));\n\n const [secondTextFieldClicked, setSecondTextFieldClicked] = useState(false);\n\n const setFirstInputValue = (value: React.SetStateAction<string>) => {\n setInputFirstValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${value} - ${inputSecondValue}`,\n name,\n },\n });\n }\n };\n\n const setSecondInputValue = (value: React.SetStateAction<string>) => {\n setInputSecondValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${inputFirstValue} - ${value}`,\n name,\n },\n });\n }\n };\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n handleChangeValue: handleChangeFirstValue,\n handleCommitDate: handleCommitFirstDate,\n } = useDatePicker({\n currentValue: inputFirstValue,\n setInputValue: setFirstInputValue,\n setCalendarValue: setCalendarFirstValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: firstValueError,\n valueSuccess: firstValueSuccess,\n name,\n onChangeValue: onChangeFirstValue,\n onCommitDate: onCommitFirstDate,\n });\n\n const {\n handleChangeValue: handleChangeSecondValue,\n handleCommitDate: handleCommitSecondDate,\n } = useDatePicker({\n currentValue: inputSecondValue,\n setInputValue: setSecondInputValue,\n setCalendarValue: setCalendarSecondValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: secondValueError,\n valueSuccess: secondValueSuccess,\n onChangeValue: onChangeSecondValue,\n onCommitDate: onCommitSecondDate,\n });\n\n const handleToggle = (currentOpened: boolean, event?: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n (firstInputRef?.current?.contains((event?.target as Node) || null) ||\n secondInputRef?.current?.contains((event?.target as Node) || null)) &&\n (event as KeyboardEvent<HTMLInputElement>)?.code !== keys.Escape\n ? true\n : currentOpened;\n\n if (!isCalendarOpen) {\n if (calendarFirstValue && !calendarSecondValue) {\n secondInputRef?.current?.focus();\n }\n if (calendarSecondValue || !calendarFirstValue) {\n firstInputRef?.current?.focus();\n }\n }\n\n if (!isCalendarOpen) {\n setSecondTextFieldClicked(false);\n }\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleFocusFirstTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusFirstTextfield?.(event);\n setSecondTextFieldClicked(false);\n };\n\n const handleFocusSecondTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusSecondTextfield?.(event);\n setSecondTextFieldClicked(true);\n };\n\n const handleBlur = (\n event: FocusEvent<HTMLInputElement>,\n outerHandler?: FocusEventHandler<HTMLInputElement>,\n ) => {\n if (!inputFirstValue || !inputSecondValue) {\n outerHandler?.(event);\n return;\n }\n\n const { value: firstDate, isSuccess: firstIsSuccess } = getDateFromFormat(\n inputFirstValue,\n format,\n lang,\n );\n\n const { value: secondDate, isSuccess: secondIsSuccess } = getDateFromFormat(\n inputSecondValue,\n format,\n lang,\n );\n\n if (!firstIsSuccess || !secondIsSuccess) {\n outerHandler?.(event);\n return;\n }\n\n const [startValue, endValue] = getSortedValues([new Date(firstDate), new Date(secondDate)]);\n\n setFirstInputValue(formatInputValue({ value: startValue, format, lang }));\n setSecondInputValue(formatInputValue({ value: endValue, format, lang }));\n\n setCalendarFirstValue(formatCalendarValue(startValue, format, lang));\n setCalendarSecondValue(formatCalendarValue(endValue, format, lang));\n\n outerHandler?.(event);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n closeOnEsc,\n });\n\n const handleChangeStartOfRange = (chosenDate: Date, dateInfo?: DateInfo) => {\n if (!fullDateEntered) {\n handleCommitFirstDate(chosenDate, false, true, dateInfo);\n handleCommitSecondDate('');\n\n return;\n }\n\n const prevValue = secondTextFieldClicked ? calendarFirstValue : calendarSecondValue;\n\n const [first, second] = getSortedValues([prevValue, chosenDate]);\n\n handleCommitFirstDate(first, false, true, dateInfo);\n handleCommitSecondDate(second, false, true, dateInfo);\n\n if (!firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const handleChangeCalendarValue = ([firstDate, secondDate]: [Date, Date?], dateInfo?: DateInfo) => {\n if (firstDate) {\n handleCommitFirstDate(firstDate, false, true, dateInfo);\n }\n\n if (secondDate) {\n handleCommitSecondDate(secondDate, false, true, dateInfo);\n }\n\n if (firstDate && secondDate && !firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const RangeComponent = (\n <>\n {/* TODO https://github.com/salute-developers/plasma/issues/1227\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore */}\n <StyledRange\n ref={rangeRef}\n autoComplete={autoComplete}\n dividerIcon={dividerIcon}\n dividerVariant={dividerVariant}\n label={label}\n required={required}\n requiredPlacement={requiredPlacement}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n firstPlaceholder={firstPlaceholder}\n secondPlaceholder={secondPlaceholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n firstTextfieldTextBefore={firstTextfieldTextBefore}\n secondTextfieldTextBefore={secondTextfieldTextBefore}\n firstTextfieldTextAfter={firstTextfieldTextAfter}\n secondTextfieldTextAfter={secondTextfieldTextAfter}\n firstTextfieldContentLeft={firstTextfieldContentLeft}\n firstTextfieldContentRight={firstTextfieldContentRight}\n secondTextfieldContentLeft={secondTextfieldContentLeft}\n secondTextfieldContentRight={secondTextfieldContentRight}\n firstValue={inputFirstValue}\n secondValue={inputSecondValue}\n firstValueError={firstValueError}\n secondValueError={secondValueError}\n firstValueSuccess={firstValueSuccess}\n secondValueSuccess={secondValueSuccess}\n onChangeFirstValue={handleChangeFirstValue}\n onChangeSecondValue={handleChangeSecondValue}\n name={name}\n onSearchFirstValue={(_, date) => {\n handleCommitFirstDate(String(date), true, false);\n if (!calendarSecondValue || secondValueError) {\n rangeRef?.current?.secondTextField()?.current?.focus();\n }\n }}\n onSearchSecondValue={(_, date) => {\n handleCommitSecondDate(String(date), true, false);\n if (!calendarFirstValue || firstValueError) {\n rangeRef?.current?.firstTextField()?.current?.focus();\n }\n }}\n onFocusFirstTextfield={handleFocusFirstTextField}\n onFocusSecondTextfield={handleFocusSecondTextField}\n onBlurFirstTextfield={(event) => handleBlur(event, onBlurFirstTextfield)}\n onBlurSecondTextfield={(event) => handleBlur(event, onBlurSecondTextfield)}\n onKeyDown={onKeyDown}\n />\n </>\n );\n\n useEffect(() => {\n setFirstInputRef(rangeRef.current?.firstTextField());\n setSecondInputRef(rangeRef.current?.secondTextField());\n }, [rangeRef.current]);\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));\n setInputFirstValue(formatInputValue({ value: defaultFirstDate, format, lang }));\n }, [defaultFirstDate]);\n\n useEffect(() => {\n setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));\n setInputSecondValue(formatInputValue({ value: defaultSecondDate, format, lang }));\n }, [defaultSecondDate]);\n\n useEffect(() => {\n setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));\n setInputFirstValue(formatInputValue({ value: defaultFirstDate, format, lang }));\n\n setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));\n setInputSecondValue(formatInputValue({ value: defaultSecondDate, format, lang }));\n }, [format, lang]);\n\n useEffect(() => {\n if (calendarFirstValue && calendarSecondValue) {\n setFullDateEntered(true);\n }\n }, [calendarFirstValue, calendarSecondValue]);\n\n const RootWrapper = useCallback<FC<PropsWithChildren>>(\n ({ children }) => (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n {children}\n </Root>\n ),\n [view, size, disabled, readOnly],\n );\n\n return (\n <Root\n ref={rootRef}\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n {...rest}\n >\n <RangeDatePopover\n calendarValue={[calendarFirstValue, calendarSecondValue]}\n target={RangeComponent}\n opened={isInnerOpen}\n includeEdgeDates={includeEdgeDates}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n frame={frame}\n usePortal={usePortal}\n placement={placement}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n offset={offset}\n type={type}\n onToggle={handleToggle}\n lang={lang}\n isDoubleCalendar={isDoubleCalendar}\n rootWrapper={RootWrapper}\n onChangeStartOfRange={handleChangeStartOfRange}\n onChangeValue={handleChangeCalendarValue}\n />\n {leftHelper && <LeftHelper>{leftHelper}</LeftHelper>}\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"from\"\n value={inputFirstValue}\n ref={innerRefFirst}\n {...noop}\n />\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"to\"\n value={inputSecondValue}\n ref={innerRefSecond}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerRangeConfig = {\n name: 'DatePickerRange',\n tag: 'div',\n layout: datePickerRangeRoot,\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 readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRangeRoot","Root","forwardRef","_ref","ref","_rangeRef$current","_rangeRef$current2","className","autoComplete","_ref$isDoubleCalendar","isDoubleCalendar","_ref$opened","opened","label","leftHelper","contentLeft","contentRight","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$dividerVariant","dividerVariant","dividerIcon","_ref$defaultFirstDate","defaultFirstDate","_ref$defaultSecondDat","defaultSecondDate","firstValueError","secondValueError","firstValueSuccess","secondValueSuccess","firstPlaceholder","secondPlaceholder","firstTextfieldContentLeft","firstTextfieldContentRight","secondTextfieldContentLeft","secondTextfieldContentRight","firstTextfieldTextBefore","secondTextfieldTextBefore","firstTextfieldTextAfter","secondTextfieldTextAfter","required","_ref$requiredPlacemen","requiredPlacement","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","_ref$closeAfterDateSe","closeAfterDateSelect","offset","onToggle","onChange","onChangeFirstValue","onChangeSecondValue","onCommitFirstDate","onCommitSecondDate","onFocusFirstTextfield","onFocusSecondTextfield","onBlurFirstTextfield","onBlurSecondTextfield","rest","_objectWithoutProperties","_excluded","rangeRef","createRef","rootRef","useRef","innerRefFirst","innerRefSecond","_useState","useState","current","firstTextField","_useState2","_slicedToArray","firstInputRef","setFirstInputRef","_useState3","secondTextField","_useState4","secondInputRef","setSecondInputRef","_useState5","_useState6","isInnerOpen","setIsInnerOpen","_useState7","formatCalendarValue","_useState8","calendarFirstValue","setCalendarFirstValue","_useState9","formatInputValue","value","_useState10","inputFirstValue","setInputFirstValue","_useState11","_useState12","calendarSecondValue","setCalendarSecondValue","_useState13","_useState14","inputSecondValue","setInputSecondValue","_useState15","Boolean","_useState16","fullDateEntered","setFullDateEntered","_useState17","_useState18","secondTextFieldClicked","setSecondTextFieldClicked","setFirstInputValue","target","concat","setSecondInputValue","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","setInputValue","setCalendarValue","valueError","valueSuccess","onChangeValue","onCommitDate","handleChangeFirstValue","handleChangeValue","handleCommitFirstDate","handleCommitDate","_useDatePicker2","handleChangeSecondValue","handleCommitSecondDate","handleToggle","currentOpened","event","_firstInputRef$curren","_secondInputRef$curre","isCalendarOpen","contains","code","keys","Escape","_secondInputRef$curre2","focus","_firstInputRef$curren2","handleFocusFirstTextField","handleFocusSecondTextField","handleBlur","outerHandler","_getDateFromFormat","getDateFromFormat","firstDate","firstIsSuccess","isSuccess","_getDateFromFormat2","secondDate","secondIsSuccess","_getSortedValues","getSortedValues","Date","_getSortedValues2","startValue","endValue","_useKeyNavigation","useKeyNavigation","onKeyDown","handleChangeStartOfRange","chosenDate","dateInfo","prevValue","_getSortedValues3","_getSortedValues4","first","second","handleChangeCalendarValue","_ref2","_ref3","RangeComponent","React","createElement","Fragment","StyledRange","firstValue","secondValue","onSearchFirstValue","_","date","String","_rangeRef$current3","onSearchSecondValue","_rangeRef$current4","useEffect","_rangeRef$current5","_rangeRef$current6","prevOpen","RootWrapper","_ref4","children","cx","classes","datePickerRoot","_extends","RangeDatePopover","calendarValue","rootWrapper","onChangeStartOfRange","LeftHelper","InputHidden","datatype","noop","datePickerRangeConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"RangeDate.js","sources":["../../../../src/components/DatePicker/RangeDate/RangeDate.tsx"],"sourcesContent":["import React, { createRef, forwardRef, useCallback, useEffect, useRef, useState } from 'react';\nimport type {\n ChangeEvent,\n KeyboardEvent,\n ChangeEventHandler,\n MutableRefObject,\n SyntheticEvent,\n PropsWithChildren,\n FC,\n} from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, noop } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter, getDateFromFormat } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport type { RangeInputRefs } from '../../Range/Range.types';\nimport { classes } from '../DatePicker.tokens';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { InputHidden } from '../DatePickerBase.styles';\nimport { getSortedValues } from '../../Calendar/utils';\n\nimport type { DatePickerRangeProps } from './RangeDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledRange, base } from './RangeDate.styles';\nimport { RangeDatePopover } from './RangeDatePopover/RangeDatePopover';\n\nexport const datePickerRangeRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerRangeProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<RangeInputRefs, DatePickerRangeProps>(\n (\n {\n className,\n autoComplete,\n\n isDoubleCalendar = false,\n opened = false,\n\n label,\n leftHelper,\n contentLeft,\n contentRight,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n dividerVariant = 'dash',\n dividerIcon,\n\n defaultFirstDate = '',\n defaultSecondDate = '',\n firstValueError,\n secondValueError,\n firstValueSuccess,\n secondValueSuccess,\n firstPlaceholder,\n secondPlaceholder,\n firstTextfieldContentLeft,\n firstTextfieldContentRight,\n secondTextfieldContentLeft,\n secondTextfieldContentRight,\n firstTextfieldTextBefore,\n secondTextfieldTextBefore,\n firstTextfieldTextAfter,\n secondTextfieldTextAfter,\n\n required,\n requiredPlacement = 'right',\n\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n offset,\n\n onToggle,\n\n onChange,\n onChangeFirstValue,\n onChangeSecondValue,\n\n onCommitFirstDate,\n onCommitSecondDate,\n\n onFocusFirstTextfield,\n onFocusSecondTextfield,\n onBlurFirstTextfield,\n onBlurSecondTextfield,\n\n ...rest\n },\n ref,\n ) => {\n const rangeRef = ref && 'current' in ref ? ref : createRef<RangeInputRefs>();\n const rootRef = useRef<HTMLDivElement | null>(null);\n\n const innerRefFirst = useRef<HTMLInputElement>(null);\n const innerRefSecond = useRef<HTMLInputElement>(null);\n\n const [firstInputRef, setFirstInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.firstTextField(),\n );\n const [secondInputRef, setSecondInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.secondTextField(),\n );\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarFirstValue, setCalendarFirstValue] = useState(\n formatCalendarValue(defaultFirstDate, format, lang),\n );\n const [inputFirstValue, setInputFirstValue] = useState(\n formatInputValue({ value: defaultFirstDate, format, lang }),\n );\n\n const [calendarSecondValue, setCalendarSecondValue] = useState(\n formatCalendarValue(defaultSecondDate, format, lang),\n );\n const [inputSecondValue, setInputSecondValue] = useState(\n formatInputValue({ value: defaultSecondDate, format, lang }),\n );\n\n const setFirstInputValue = (value: React.SetStateAction<string>) => {\n setInputFirstValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${value} - ${inputSecondValue}`,\n name,\n },\n });\n }\n };\n\n const setSecondInputValue = (value: React.SetStateAction<string>) => {\n setInputSecondValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${inputFirstValue} - ${value}`,\n name,\n },\n });\n }\n };\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n handleChangeValue: handleChangeFirstValue,\n handleCommitDate: handleCommitFirstDate,\n } = useDatePicker({\n currentValue: inputFirstValue,\n setInputValue: setFirstInputValue,\n setCalendarValue: setCalendarFirstValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: firstValueError,\n valueSuccess: firstValueSuccess,\n name,\n onChangeValue: onChangeFirstValue,\n onCommitDate: onCommitFirstDate,\n });\n\n const {\n handleChangeValue: handleChangeSecondValue,\n handleCommitDate: handleCommitSecondDate,\n } = useDatePicker({\n currentValue: inputSecondValue,\n setInputValue: setSecondInputValue,\n setCalendarValue: setCalendarSecondValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: secondValueError,\n valueSuccess: secondValueSuccess,\n onChangeValue: onChangeSecondValue,\n onCommitDate: onCommitSecondDate,\n });\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n (firstInputRef?.current?.contains((event.target as Node) || null) ||\n secondInputRef?.current?.contains((event.target as Node) || null)) &&\n (event as KeyboardEvent<HTMLInputElement>).code !== keys.Escape\n ? true\n : opened;\n\n if (!isCalendarOpen) {\n if (calendarFirstValue && !calendarSecondValue) {\n secondInputRef?.current?.focus();\n }\n if (calendarSecondValue || !calendarFirstValue) {\n firstInputRef?.current?.focus();\n }\n }\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleBlur = (\n event: ChangeEvent<HTMLInputElement>,\n outerHandler?: ChangeEventHandler<HTMLInputElement>,\n ) => {\n if (!inputFirstValue || !inputSecondValue) {\n outerHandler?.(event);\n return;\n }\n\n const { value: firstDate, isSuccess: firstIsSuccess } = getDateFromFormat(\n inputFirstValue,\n format,\n lang,\n );\n\n const { value: secondDate, isSuccess: secondIsSuccess } = getDateFromFormat(\n inputSecondValue,\n format,\n lang,\n );\n\n if (!firstIsSuccess || !secondIsSuccess) {\n outerHandler?.(event);\n return;\n }\n\n const [startValue, endValue] = getSortedValues([new Date(firstDate), new Date(secondDate)]);\n\n setFirstInputValue(formatInputValue({ value: startValue, format, lang }));\n setSecondInputValue(formatInputValue({ value: endValue, format, lang }));\n\n setCalendarFirstValue(formatCalendarValue(startValue, format, lang));\n setCalendarSecondValue(formatCalendarValue(endValue, format, lang));\n\n outerHandler?.(event);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n closeOnEsc,\n });\n\n const RangeComponent = (\n <>\n {/* TODO https://github.com/salute-developers/plasma/issues/1227\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore */}\n <StyledRange\n ref={rangeRef}\n autoComplete={autoComplete}\n dividerIcon={dividerIcon}\n dividerVariant={dividerVariant}\n label={label}\n required={required}\n requiredPlacement={requiredPlacement}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n firstPlaceholder={firstPlaceholder}\n secondPlaceholder={secondPlaceholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n firstTextfieldTextBefore={firstTextfieldTextBefore}\n secondTextfieldTextBefore={secondTextfieldTextBefore}\n firstTextfieldTextAfter={firstTextfieldTextAfter}\n secondTextfieldTextAfter={secondTextfieldTextAfter}\n firstTextfieldContentLeft={firstTextfieldContentLeft}\n firstTextfieldContentRight={firstTextfieldContentRight}\n secondTextfieldContentLeft={secondTextfieldContentLeft}\n secondTextfieldContentRight={secondTextfieldContentRight}\n firstValue={inputFirstValue}\n secondValue={inputSecondValue}\n firstValueError={firstValueError}\n secondValueError={secondValueError}\n firstValueSuccess={firstValueSuccess}\n secondValueSuccess={secondValueSuccess}\n onChangeFirstValue={handleChangeFirstValue}\n onChangeSecondValue={handleChangeSecondValue}\n name={name}\n onSearchFirstValue={(_, date) => {\n handleCommitFirstDate(String(date), true, false);\n if (!calendarSecondValue || secondValueError) {\n rangeRef?.current?.secondTextField()?.current?.focus();\n }\n }}\n onSearchSecondValue={(_, date) => {\n handleCommitSecondDate(String(date), true, false);\n if (!calendarFirstValue || firstValueError) {\n rangeRef?.current?.firstTextField()?.current?.focus();\n }\n }}\n onFocusFirstTextfield={onFocusFirstTextfield}\n onFocusSecondTextfield={onFocusSecondTextfield}\n onBlurFirstTextfield={(event) => handleBlur(event, onBlurFirstTextfield)}\n onBlurSecondTextfield={(event) => handleBlur(event, onBlurSecondTextfield)}\n onKeyDown={onKeyDown}\n />\n </>\n );\n\n useEffect(() => {\n setFirstInputRef(rangeRef.current?.firstTextField());\n setSecondInputRef(rangeRef.current?.secondTextField());\n }, [rangeRef.current]);\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));\n setInputFirstValue(formatInputValue({ value: defaultFirstDate, format, lang }));\n }, [defaultFirstDate]);\n\n useEffect(() => {\n setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));\n setInputSecondValue(formatInputValue({ value: defaultSecondDate, format, lang }));\n }, [defaultSecondDate]);\n\n useEffect(() => {\n setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));\n setInputFirstValue(formatInputValue({ value: defaultFirstDate, format, lang }));\n\n setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));\n setInputSecondValue(formatInputValue({ value: defaultSecondDate, format, lang }));\n }, [format, lang]);\n\n const RootWrapper = useCallback<FC<PropsWithChildren>>(\n ({ children }) => (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n {children}\n </Root>\n ),\n [view, size, disabled, readOnly],\n );\n\n return (\n <Root\n ref={rootRef}\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n {...rest}\n >\n <RangeDatePopover\n calendarValue={[calendarFirstValue, calendarSecondValue]}\n target={RangeComponent}\n opened={isInnerOpen}\n includeEdgeDates={includeEdgeDates}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n frame={frame}\n usePortal={usePortal}\n placement={placement}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n offset={offset}\n type={type}\n onToggle={handleToggle}\n lang={lang}\n isDoubleCalendar={isDoubleCalendar}\n rootWrapper={RootWrapper}\n onChangeStartOfRange={(firstDate, dateInfo) => {\n handleCommitFirstDate(firstDate, false, true, dateInfo);\n handleCommitSecondDate('');\n }}\n onChangeValue={([firstDate, secondDate], dateInfo) => {\n firstDate && handleCommitFirstDate(firstDate, false, true, dateInfo);\n secondDate && handleCommitSecondDate(secondDate, false, true, dateInfo);\n if (firstDate && secondDate && !firstValueError && !secondValueError) {\n setIsInnerOpen(false);\n }\n }}\n />\n {leftHelper && <LeftHelper>{leftHelper}</LeftHelper>}\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"from\"\n value={inputFirstValue}\n ref={innerRefFirst}\n {...noop}\n />\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"to\"\n value={inputSecondValue}\n ref={innerRefSecond}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerRangeConfig = {\n name: 'DatePickerRange',\n tag: 'div',\n layout: datePickerRangeRoot,\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 readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRangeRoot","Root","forwardRef","_ref","ref","_rangeRef$current","_rangeRef$current2","className","autoComplete","_ref$isDoubleCalendar","isDoubleCalendar","_ref$opened","opened","label","leftHelper","contentLeft","contentRight","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$dividerVariant","dividerVariant","dividerIcon","_ref$defaultFirstDate","defaultFirstDate","_ref$defaultSecondDat","defaultSecondDate","firstValueError","secondValueError","firstValueSuccess","secondValueSuccess","firstPlaceholder","secondPlaceholder","firstTextfieldContentLeft","firstTextfieldContentRight","secondTextfieldContentLeft","secondTextfieldContentRight","firstTextfieldTextBefore","secondTextfieldTextBefore","firstTextfieldTextAfter","secondTextfieldTextAfter","required","_ref$requiredPlacemen","requiredPlacement","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","offset","onToggle","onChange","onChangeFirstValue","onChangeSecondValue","onCommitFirstDate","onCommitSecondDate","onFocusFirstTextfield","onFocusSecondTextfield","onBlurFirstTextfield","onBlurSecondTextfield","rest","_objectWithoutProperties","_excluded","rangeRef","createRef","rootRef","useRef","innerRefFirst","innerRefSecond","_useState","useState","current","firstTextField","_useState2","_slicedToArray","firstInputRef","setFirstInputRef","_useState3","secondTextField","_useState4","secondInputRef","setSecondInputRef","_useState5","_useState6","isInnerOpen","setIsInnerOpen","_useState7","formatCalendarValue","_useState8","calendarFirstValue","setCalendarFirstValue","_useState9","formatInputValue","value","_useState10","inputFirstValue","setInputFirstValue","_useState11","_useState12","calendarSecondValue","setCalendarSecondValue","_useState13","_useState14","inputSecondValue","setInputSecondValue","setFirstInputValue","target","concat","setSecondInputValue","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","setInputValue","setCalendarValue","valueError","valueSuccess","onChangeValue","onCommitDate","handleChangeFirstValue","handleChangeValue","handleCommitFirstDate","handleCommitDate","_useDatePicker2","handleChangeSecondValue","handleCommitSecondDate","handleToggle","event","_firstInputRef$curren","_secondInputRef$curre","isCalendarOpen","contains","code","keys","Escape","_secondInputRef$curre2","focus","_firstInputRef$curren2","handleBlur","outerHandler","_getDateFromFormat","getDateFromFormat","firstDate","firstIsSuccess","isSuccess","_getDateFromFormat2","secondDate","secondIsSuccess","_getSortedValues","getSortedValues","Date","_getSortedValues2","startValue","endValue","_useKeyNavigation","useKeyNavigation","onKeyDown","RangeComponent","React","createElement","Fragment","StyledRange","firstValue","secondValue","onSearchFirstValue","_","date","String","_rangeRef$current3","onSearchSecondValue","_rangeRef$current4","useEffect","_rangeRef$current5","_rangeRef$current6","prevOpen","RootWrapper","_ref2","children","cx","classes","datePickerRoot","_extends","RangeDatePopover","calendarValue","rootWrapper","onChangeStartOfRange","dateInfo","_ref3","_ref4","LeftHelper","InputHidden","datatype","noop","datePickerRangeConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|
@@ -7,6 +7,7 @@ var plasmaCore = require('@salutejs/plasma-core');
|
|
7
7
|
var DropdownItem = require('../DropdownItem/DropdownItem.js');
|
8
8
|
var Dropdown_styles = require('../../Dropdown.styles.js');
|
9
9
|
var FloatingPopover = require('../../FloatingPopover.js');
|
10
|
+
var getPlacement = require('../../utils/getPlacement.js');
|
10
11
|
|
11
12
|
var DropdownInner = function DropdownInner(_ref) {
|
12
13
|
var item = _ref.item,
|
@@ -38,7 +39,7 @@ var DropdownInner = function DropdownInner(_ref) {
|
|
38
39
|
var nextLevel = currentLevel + 1;
|
39
40
|
if (item !== null && item !== void 0 && item.items) {
|
40
41
|
return /*#__PURE__*/React.createElement(FloatingPopover.FloatingPopover, {
|
41
|
-
placement:
|
42
|
+
placement: getPlacement.getPlacement((item === null || item === void 0 ? void 0 : item.placement) || 'right'),
|
42
43
|
opened: isCurrentListOpen,
|
43
44
|
onToggle: handleToggle,
|
44
45
|
trigger: trigger,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownInner.js","sources":["../../../../../src/components/Dropdown/ui/DropdownInner/DropdownInner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { DropdownItem } from '../DropdownItem/DropdownItem';\nimport { Ul } from '../../Dropdown.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\n\nimport { DropdownInnerProps } from './DropdownInner.type';\n\nconst DropdownInner: FC<DropdownInnerProps> = ({\n item,\n currentLevel,\n path,\n dispatchPath,\n index,\n trigger,\n listHeight,\n listOverflow,\n listWidth,\n}) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (item?.items) {\n return (\n <FloatingPopover\n placement
|
1
|
+
{"version":3,"file":"DropdownInner.js","sources":["../../../../../src/components/Dropdown/ui/DropdownInner/DropdownInner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { DropdownItem } from '../DropdownItem/DropdownItem';\nimport { Ul } from '../../Dropdown.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\nimport { getPlacement } from '../../utils';\n\nimport { DropdownInnerProps } from './DropdownInner.type';\n\nconst DropdownInner: FC<DropdownInnerProps> = ({\n item,\n currentLevel,\n path,\n dispatchPath,\n index,\n trigger,\n listHeight,\n listOverflow,\n listWidth,\n}) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (item?.items) {\n return (\n <FloatingPopover\n placement={getPlacement(item?.placement || 'right')}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n trigger={trigger}\n target={\n <DropdownItem\n item={item}\n index={index}\n path={path}\n currentLevel={currentLevel}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n isInner\n >\n <Ul\n id={listId}\n role=\"group\"\n isInnerUl\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n >\n {item.items.map((innerItem, innerIndex) => (\n <DropdownInner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n trigger={trigger}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </FloatingPopover>\n );\n }\n\n return <DropdownItem item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n\nexport { DropdownInner };\n"],"names":["DropdownInner","_ref","item","currentLevel","path","dispatchPath","index","trigger","listHeight","listOverflow","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","items","React","createElement","FloatingPopover","placement","getPlacement","onToggle","target","DropdownItem","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","isInner","Ul","id","role","isInnerUl","map","innerItem","innerIndex","key"],"mappings":"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"}
|
@@ -37,7 +37,7 @@ var Inner = function Inner(_ref) {
|
|
37
37
|
if (!isEmpty.isEmpty(item === null || item === void 0 ? void 0 : item.items)) {
|
38
38
|
var _item$items;
|
39
39
|
return /*#__PURE__*/React.createElement(FloatingPopover.FloatingPopover, {
|
40
|
-
placement:
|
40
|
+
placement: (item === null || item === void 0 ? void 0 : item.placement) || 'right',
|
41
41
|
opened: isCurrentListOpen,
|
42
42
|
onToggle: handleToggle,
|
43
43
|
offset: 2,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Inner.js","sources":["../../../../../src/components/Select/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { isEmpty } from '../../../../utils';\nimport { Ul } from '../../Select.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\n\nimport type { MergedDropdownNodeTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui/Item/Item';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement
|
1
|
+
{"version":3,"file":"Inner.js","sources":["../../../../../src/components/Select/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { isEmpty } from '../../../../utils';\nimport { Ul } from '../../Select.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\n\nimport type { MergedDropdownNodeTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui/Item/Item';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n offset={2}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n >\n <Ul role=\"group\" id={listId} isInnerUl listWidth={listWidth}>\n {item.items?.map((innerItem: MergedDropdownNodeTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","offset","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","Ul","role","id","isInnerUl","map","innerItem","innerIndex","key"],"mappings":"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"}
|
@@ -39,7 +39,7 @@ var Inner = exports.Inner = function Inner(_ref) {
|
|
39
39
|
if (!(0, _utils.isEmpty)(item === null || item === void 0 ? void 0 : item.items)) {
|
40
40
|
var _item$items;
|
41
41
|
return /*#__PURE__*/_react["default"].createElement(_FloatingPopover.FloatingPopover, {
|
42
|
-
placement:
|
42
|
+
placement: (item === null || item === void 0 ? void 0 : item.placement) || 'right-start',
|
43
43
|
opened: isCurrentListOpen,
|
44
44
|
onToggle: handleToggle,
|
45
45
|
offset: 2,
|