@salutejs/plasma-new-hope 0.233.0-canary.1676.12481349989.0 → 0.233.0-dev.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/Select/Select.js +26 -8
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/ui/Target/Target.js +2 -0
- package/cjs/components/Select/ui/Target/Target.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/cjs/components/TextArea/TextArea.js +1 -0
- package/cjs/components/TextArea/TextArea.js.map +1 -1
- package/cjs/components/TextField/TextField.js +1 -0
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/emotion/cjs/components/Select/Select.js +26 -8
- package/emotion/cjs/components/Select/ui/Target/Target.js +2 -0
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/emotion/cjs/components/TextArea/TextArea.js +2 -1
- package/emotion/cjs/components/TextField/TextField.js +2 -1
- package/emotion/es/components/Select/Select.js +26 -8
- package/emotion/es/components/Select/ui/Target/Target.js +2 -0
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/emotion/es/components/TextArea/TextArea.js +2 -1
- package/emotion/es/components/TextField/TextField.js +2 -1
- package/es/components/Select/Select.js +26 -8
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/ui/Target/Target.js +2 -0
- package/es/components/Select/ui/Target/Target.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/es/components/TextArea/TextArea.js +1 -0
- package/es/components/TextArea/TextArea.js.map +1 -1
- package/es/components/TextField/TextField.js +1 -0
- package/es/components/TextField/TextField.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Select/Select.js +26 -8
- package/styled-components/cjs/components/Select/ui/Target/Target.js +2 -0
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/styled-components/cjs/components/TextArea/TextArea.js +1 -0
- package/styled-components/cjs/components/TextField/TextField.js +1 -0
- package/styled-components/es/components/Select/Select.js +26 -8
- package/styled-components/es/components/Select/ui/Target/Target.js +2 -0
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +3 -1
- package/styled-components/es/components/TextArea/TextArea.js +1 -0
- package/styled-components/es/components/TextField/TextField.js +1 -0
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/ui/Target/Target.d.ts +1 -0
- package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
- package/types/components/Select/ui/Target/Target.types.d.ts +1 -0
- package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/components/TextField/TextField.d.ts.map +1 -1
@@ -20,7 +20,7 @@ import { Target } from './ui/Target/Target.js';
|
|
20
20
|
import { Inner } from './ui/Inner/Inner.js';
|
21
21
|
import { getView } from './utils/getView.js';
|
22
22
|
|
23
|
-
var _excluded = ["
|
23
|
+
var _excluded = ["value", "onChange", "target", "items", "placement", "label", "labelPlacement", "placeholder", "helperText", "disabled", "view", "size", "listOverflow", "listHeight", "listWidth", "contentLeft", "onScrollBottom", "chipView", "variant", "portal", "renderValue", "renderItem", "status", "onItemSelect", "separator", "closeAfterSelect", "isTargetAmount", "beforeList", "afterList", "zIndex", "name", "defaultValue"];
|
24
24
|
|
25
25
|
/**
|
26
26
|
* Выпадающий список. Поддерживает выбор одного или нескольких значений.
|
@@ -28,8 +28,7 @@ var _excluded = ["id", "value", "onChange", "target", "items", "placement", "lab
|
|
28
28
|
var selectRoot = function selectRoot(Root) {
|
29
29
|
return /*#__PURE__*/forwardRef(function (props, ref) {
|
30
30
|
var _getItemByFocused;
|
31
|
-
var
|
32
|
-
outerValue = props.value,
|
31
|
+
var outerValue = props.value,
|
33
32
|
outerOnChange = props.onChange,
|
34
33
|
_props$target = props.target,
|
35
34
|
target = _props$target === void 0 ? 'textfield-like' : _props$target,
|
@@ -123,12 +122,12 @@ var selectRoot = function selectRoot(Root) {
|
|
123
122
|
}, floatingPopoverRef);
|
124
123
|
var onChange = function onChange(newValue) {
|
125
124
|
if (outerOnChange) {
|
126
|
-
// Условие для отправки если
|
125
|
+
// Условие для отправки если комбобокс используется без формы.
|
127
126
|
if (!name && (typeof newValue === 'string' || Array.isArray(newValue))) {
|
128
127
|
outerOnChange(newValue);
|
129
128
|
}
|
130
129
|
|
131
|
-
// Условие для отправки если
|
130
|
+
// Условие для отправки если комбобокс используется с формой.
|
132
131
|
if (name && _typeof(newValue) === 'object' && !Array.isArray(newValue)) {
|
133
132
|
outerOnChange(newValue);
|
134
133
|
}
|
@@ -139,6 +138,23 @@ var selectRoot = function selectRoot(Root) {
|
|
139
138
|
setInternalValue(newValue);
|
140
139
|
}
|
141
140
|
};
|
141
|
+
var handleClickArrow = function handleClickArrow() {
|
142
|
+
if (disabled) {
|
143
|
+
return;
|
144
|
+
}
|
145
|
+
if (isCurrentListOpen) {
|
146
|
+
dispatchPath({
|
147
|
+
type: 'reset'
|
148
|
+
});
|
149
|
+
} else {
|
150
|
+
dispatchPath({
|
151
|
+
type: 'opened_first_level'
|
152
|
+
});
|
153
|
+
}
|
154
|
+
dispatchFocusedPath({
|
155
|
+
type: 'reset'
|
156
|
+
});
|
157
|
+
};
|
142
158
|
var handleListToggle = function handleListToggle(opened) {
|
143
159
|
if (disabled) {
|
144
160
|
return;
|
@@ -275,8 +291,7 @@ var selectRoot = function selectRoot(Root) {
|
|
275
291
|
size: size,
|
276
292
|
labelPlacement: labelPlacement,
|
277
293
|
chipView: chipView,
|
278
|
-
disabled: disabled
|
279
|
-
id: id
|
294
|
+
disabled: disabled
|
280
295
|
}, rest), name && /*#__PURE__*/React.createElement(SelectNative, {
|
281
296
|
items: valueToItemMap,
|
282
297
|
name: name,
|
@@ -300,7 +315,9 @@ var selectRoot = function selectRoot(Root) {
|
|
300
315
|
}, /*#__PURE__*/React.createElement(FloatingPopover, {
|
301
316
|
ref: floatingPopoverRef,
|
302
317
|
opened: isCurrentListOpen,
|
303
|
-
onToggle:
|
318
|
+
onToggle: function onToggle(opened) {
|
319
|
+
return opened && handleListToggle(true);
|
320
|
+
},
|
304
321
|
placement: placement,
|
305
322
|
portal: portal,
|
306
323
|
listWidth: listWidth,
|
@@ -322,6 +339,7 @@ var selectRoot = function selectRoot(Root) {
|
|
322
339
|
inputWrapperRef: referenceRef,
|
323
340
|
multiselect: props.multiselect,
|
324
341
|
view: view,
|
342
|
+
handleClickArrow: handleClickArrow,
|
325
343
|
helperText: helperText,
|
326
344
|
treeId: treeId,
|
327
345
|
activeDescendantItemValue: activeDescendantItemValue,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n getView,\n getInitialValue,\n} from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value =\n outerValue !== null && outerValue !== undefined\n ? getInitialValue(outerValue, valueToItemMap)\n : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const view = target === 'textfield-like' && disabled ? 'default' : getView(status, outerView);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required: props.required,\n requiredPlacement: props.requiredPlacement,\n optional: props.optional,\n } as RequiredProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n ) => {\n if (outerOnChange) {\n // Условие для отправки если компонент используется без формы.\n if (!name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n outerOnChange(newValue as any);\n }\n\n // Условие для отправки если компонент используется с формой.\n if (name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n outerOnChange(newValue as any);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n id={id}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n />\n )}\n zIndex={zIndex}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n ref={targetRef}\n >\n {beforeList}\n\n {transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))}\n\n {afterList}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","outerView","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","getInitialValue","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","getView","requiredProps","required","requiredPlacement","optional","targetRef","useOutsideClick","type","newValue","Array","isArray","_typeof","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","val","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","FloatingPopover","onToggle","referenceRef","Target","selectProps","inputWrapperRef","Ul","role","concat","onScroll","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n getView,\n getInitialValue,\n} from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value =\n outerValue !== null && outerValue !== undefined\n ? getInitialValue(outerValue, valueToItemMap)\n : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const view = target === 'textfield-like' && disabled ? 'default' : getView(status, outerView);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required: props.required,\n requiredPlacement: props.requiredPlacement,\n optional: props.optional,\n } as RequiredProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n ) => {\n if (outerOnChange) {\n // Условие для отправки если комбобокс используется без формы.\n if (!name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n outerOnChange(newValue as any);\n }\n\n // Условие для отправки если комбобокс используется с формой.\n if (name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n outerOnChange(newValue as any);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleClickArrow = () => {\n if (disabled) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n handleClickArrow={handleClickArrow}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n />\n )}\n zIndex={zIndex}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n ref={targetRef}\n >\n {beforeList}\n\n {transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))}\n\n {afterList}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","outerView","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","getInitialValue","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","getView","requiredProps","required","requiredPlacement","optional","targetRef","useOutsideClick","type","newValue","Array","isArray","_typeof","handleClickArrow","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","val","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","FloatingPopover","onToggle","referenceRef","Target","selectProps","inputWrapperRef","Ul","role","id","concat","onScroll","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
|
@@ -19,6 +19,7 @@ var Target = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
19
19
|
inputWrapperRef = _ref.inputWrapperRef,
|
20
20
|
multiselect = _ref.multiselect,
|
21
21
|
view = _ref.view,
|
22
|
+
handleClickArrow = _ref.handleClickArrow,
|
22
23
|
helperText = _ref.helperText,
|
23
24
|
treeId = _ref.treeId,
|
24
25
|
activeDescendantItemValue = _ref.activeDescendantItemValue,
|
@@ -62,6 +63,7 @@ var Target = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
62
63
|
labelPlacement: labelPlacement,
|
63
64
|
size: size,
|
64
65
|
view: view,
|
66
|
+
handleClickArrow: handleClickArrow,
|
65
67
|
contentLeft: contentLeft,
|
66
68
|
helperText: helperText,
|
67
69
|
treeId: treeId,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target = forwardRef<HTMLButtonElement, TargetProps>(\n (\n {\n value,\n opened,\n valueToItemMap,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n selectProps,\n inputWrapperRef,\n multiselect,\n view,\n helperText,\n treeId,\n activeDescendantItemValue,\n isTargetAmount,\n onChange,\n labelToItemMap,\n chipView,\n separator,\n requiredProps,\n },\n ref,\n ) => {\n const buttonRef = useForkRef(ref, inputWrapperRef as any);\n\n if (selectProps.renderTarget) {\n return (\n <div ref={inputWrapperRef as any}>\n {selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )}\n </div>\n );\n }\n\n return selectProps.target === 'button-like' ? (\n <Button\n ref={buttonRef}\n opened={opened}\n value={value}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={selectProps}\n separator={separator}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n />\n ) : (\n <Textfield\n ref={ref as MutableRefObject<HTMLInputElement>}\n inputWrapperRef={inputWrapperRef}\n opened={opened}\n multiselect={multiselect}\n value={value}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n view={view}\n contentLeft={contentLeft}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n disabled={disabled}\n isTargetAmount={isTargetAmount}\n valueToItemMap={valueToItemMap}\n renderValue={renderValue}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n requiredProps={requiredProps}\n chipType={selectProps.chipType}\n />\n );\n },\n);\n"],"names":["Target","forwardRef","_ref","ref","value","opened","valueToItemMap","label","placeholder","onKeyDown","labelPlacement","size","contentLeft","disabled","renderValue","selectProps","inputWrapperRef","multiselect","view","helperText","treeId","activeDescendantItemValue","isTargetAmount","onChange","labelToItemMap","chipView","separator","requiredProps","buttonRef","useForkRef","renderTarget","React","createElement","Array","isArray","map","get","target","Button","Textfield","chipType"],"mappings":";;;;;AAOO,IAAMA,MAAM,gBAAGC,UAAU,CAC5B,UAAAC,IAAA,
|
1
|
+
{"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target = forwardRef<HTMLButtonElement, TargetProps>(\n (\n {\n value,\n opened,\n valueToItemMap,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n selectProps,\n inputWrapperRef,\n multiselect,\n view,\n handleClickArrow,\n helperText,\n treeId,\n activeDescendantItemValue,\n isTargetAmount,\n onChange,\n labelToItemMap,\n chipView,\n separator,\n requiredProps,\n },\n ref,\n ) => {\n const buttonRef = useForkRef(ref, inputWrapperRef as any);\n\n if (selectProps.renderTarget) {\n return (\n <div ref={inputWrapperRef as any}>\n {selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )}\n </div>\n );\n }\n\n return selectProps.target === 'button-like' ? (\n <Button\n ref={buttonRef}\n opened={opened}\n value={value}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={selectProps}\n separator={separator}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n />\n ) : (\n <Textfield\n ref={ref as MutableRefObject<HTMLInputElement>}\n inputWrapperRef={inputWrapperRef}\n opened={opened}\n multiselect={multiselect}\n value={value}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n view={view}\n handleClickArrow={handleClickArrow}\n contentLeft={contentLeft}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n disabled={disabled}\n isTargetAmount={isTargetAmount}\n valueToItemMap={valueToItemMap}\n renderValue={renderValue}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n requiredProps={requiredProps}\n chipType={selectProps.chipType}\n />\n );\n },\n);\n"],"names":["Target","forwardRef","_ref","ref","value","opened","valueToItemMap","label","placeholder","onKeyDown","labelPlacement","size","contentLeft","disabled","renderValue","selectProps","inputWrapperRef","multiselect","view","handleClickArrow","helperText","treeId","activeDescendantItemValue","isTargetAmount","onChange","labelToItemMap","chipView","separator","requiredProps","buttonRef","useForkRef","renderTarget","React","createElement","Array","isArray","map","get","target","Button","Textfield","chipType"],"mappings":"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"}
|
@@ -17,6 +17,7 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
17
17
|
onKeyDown = _ref.onKeyDown,
|
18
18
|
size = _ref.size,
|
19
19
|
view = _ref.view,
|
20
|
+
handleClickArrow = _ref.handleClickArrow,
|
20
21
|
contentLeft = _ref.contentLeft,
|
21
22
|
helperText = _ref.helperText,
|
22
23
|
treeId = _ref.treeId,
|
@@ -93,7 +94,8 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
93
94
|
placeholder: value instanceof Array && value.length ? '' : placeholder,
|
94
95
|
contentLeft: contentLeft,
|
95
96
|
contentRight: /*#__PURE__*/React.createElement(IconArrowWrapper, {
|
96
|
-
disabled: Boolean(disabled)
|
97
|
+
disabled: Boolean(disabled),
|
98
|
+
onClick: handleClickArrow
|
97
99
|
}, /*#__PURE__*/React.createElement(StyledArrow, {
|
98
100
|
color: "inherit",
|
99
101
|
size: sizeToIconSize(size),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n labelPlacement,\n keepPlaceholder,\n placeholder,\n onKeyDown,\n size,\n view,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n labelToItemMap,\n chipView,\n requiredProps,\n chipType,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getValue = () => {\n if (multiselect || !value) {\n return '';\n }\n\n if (renderValue) {\n return renderValue(valueToItemMap.get(value.toString())!);\n }\n\n return valueToItemMap.get(value.toString())?.label || '';\n };\n\n const getChips = (): string[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n const renderValueMapper =\n renderValue && ((stringValue: string | number) => renderValue(valueToItemMap.get(stringValue)!));\n const valueToItemMapper = (stringValue: string | number) => valueToItemMap.get(stringValue)!.label;\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n if (!Array.isArray(value)) return;\n\n // TODO: #1564\n // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.\n if (renderValue && !isTargetAmount) {\n const resultValues = [...value];\n\n value.forEach((_, index) => {\n const labelAfterRenderValue = renderValue(\n labelToItemMap.get(valueToItemMap.get(value[index])!.label)!,\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n onChange(resultValues);\n } else {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n }\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n value={getValue()}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n keepPlaceholder={keepPlaceholder}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={Boolean(disabled)}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n chipType,\n chipView,\n }\n : { enumerationType: 'plain' })}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly\n {...requiredProps}\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","inputWrapperRef","opened","multiselect","value","label","labelPlacement","keepPlaceholder","placeholder","onKeyDown","size","view","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","isTargetAmount","valueToItemMap","renderValue","onChange","labelToItemMap","chipView","requiredProps","chipType","withArrowInverse","classes","arrowInverse","undefined","getValue","_valueToItemMap$get","get","toString","getChips","Array","isArray","length","concat","renderValueMapper","stringValue","valueToItemMapper","map","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","labelAfterRenderValue","includes","splice","chipLabel","React","createElement","StyledTextField","_extends","readOnly","contentRight","IconArrowWrapper","Boolean","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n labelPlacement,\n keepPlaceholder,\n placeholder,\n onKeyDown,\n size,\n view,\n handleClickArrow,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n labelToItemMap,\n chipView,\n requiredProps,\n chipType,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getValue = () => {\n if (multiselect || !value) {\n return '';\n }\n\n if (renderValue) {\n return renderValue(valueToItemMap.get(value.toString())!);\n }\n\n return valueToItemMap.get(value.toString())?.label || '';\n };\n\n const getChips = (): string[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n const renderValueMapper =\n renderValue && ((stringValue: string | number) => renderValue(valueToItemMap.get(stringValue)!));\n const valueToItemMapper = (stringValue: string | number) => valueToItemMap.get(stringValue)!.label;\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n if (!Array.isArray(value)) return;\n\n // TODO: #1564\n // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.\n if (renderValue && !isTargetAmount) {\n const resultValues = [...value];\n\n value.forEach((_, index) => {\n const labelAfterRenderValue = renderValue(\n labelToItemMap.get(valueToItemMap.get(value[index])!.label)!,\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n onChange(resultValues);\n } else {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n }\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n value={getValue()}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n keepPlaceholder={keepPlaceholder}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={Boolean(disabled)} onClick={handleClickArrow}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n chipType,\n chipView,\n }\n : { enumerationType: 'plain' })}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly\n {...requiredProps}\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","inputWrapperRef","opened","multiselect","value","label","labelPlacement","keepPlaceholder","placeholder","onKeyDown","size","view","handleClickArrow","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","isTargetAmount","valueToItemMap","renderValue","onChange","labelToItemMap","chipView","requiredProps","chipType","withArrowInverse","classes","arrowInverse","undefined","getValue","_valueToItemMap$get","get","toString","getChips","Array","isArray","length","concat","renderValueMapper","stringValue","valueToItemMapper","map","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","labelAfterRenderValue","includes","splice","chipLabel","React","createElement","StyledTextField","_extends","readOnly","contentRight","IconArrowWrapper","Boolean","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":"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"}
|
@@ -285,6 +285,7 @@ var textAreaRoot = function textAreaRoot(Root) {
|
|
285
285
|
applyCustomWidth: applyCustomWidth,
|
286
286
|
ref: mergeRefs(outerRef, innerRef),
|
287
287
|
disabled: disabled,
|
288
|
+
required: required,
|
288
289
|
height: applyAutoResize ? minAuto : height,
|
289
290
|
width: width,
|
290
291
|
placeholder: placeholderLabel,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback, useRef, MouseEventHandler, useLayoutEffect } from 'react';\nimport { css } from '@linaria/core';\nimport { useForkRef, useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\nimport { useOutsideClick } from '../../hooks';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n OuterLabelWrapper,\n StyledIndicatorWrapper,\n StyledHintWrapper,\n TitleCaption,\n StyledOutsideHelpersWrapper,\n StyledHiddenTextArea,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as hintViewCSS } from './variations/_hint-view/base';\nimport { base as hintSizeCSS } from './variations/_hint-size/base';\nimport type { TextAreaProps, TextAreaRootProps } from './TextArea.types';\nimport { HintComponent } from './ui/Hint/Hint';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\nconst HINT_DEFAULT_OFFSET: [number, number] = [0, 0];\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && rows) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaRootProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n leftHelperPlacement = 'inner',\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n titleCaption,\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n clear,\n hasDivider,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintPlacement = 'auto',\n hintHasArrow,\n hintOffset = HINT_DEFAULT_OFFSET,\n hintWidth,\n hintContentLeft,\n onChange,\n ...rest\n } = props;\n\n const [isHintVisible, setIsHintVisible] = useState(false);\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n // TODO: перенести в общую переменную для value снаружи и внутри\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n const hiddenRef = useRef<HTMLTextAreaElement | null>(null);\n\n const hintRef = useOutsideClick<HTMLDivElement>(() => {\n setIsHintVisible(false);\n });\n const hintInnerRef = useRef<HTMLDivElement>(null);\n const hintForkRef = useForkRef(hintRef, hintInnerRef);\n\n const isInnerLeftHelperPlacement = leftHelperPlacement === 'inner';\n const leftHelperText = leftHelper || helperText;\n const innerOptional = required ? false : optional;\n const hasLeftHelper = Boolean(leftHelper || helperText);\n const hasRightHelper = Boolean(rightHelper);\n const hasHelper = !isInnerLeftHelperPlacement ? hasRightHelper : hasLeftHelper || hasRightHelper;\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n const applyAutoResize = autoResize || Boolean(clear);\n\n const clearClass = clear ? classes.clear : undefined;\n const hasHintClass = hintText ? classes.hasHint : undefined;\n const hasRightContentClass = contentRight ? classes.hasRightContent : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? classes.requiredAlignRight : undefined;\n\n const handleHintShow = () => setIsHintVisible(true);\n const handleHintHide = () => setIsHintVisible(false);\n const handleHintClick: MouseEventHandler = (event) => {\n if (!hintText || hintTrigger !== 'click') {\n return;\n }\n\n event.stopPropagation();\n const targetIsPopover = event.target === hintInnerRef.current;\n const rootHasTarget = hintInnerRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n setIsHintVisible(true);\n }\n };\n\n useLayoutEffect(() => {\n if (outerRef.current) {\n setUncontrolledValue(outerRef.current.value);\n }\n }, [outerRef]);\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(applyAutoResize, outerRef, value || uncontrolledValue, minAuto, maxAuto, resize, hiddenRef);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const handleTextAreaFocus = () => {\n if (readOnly || disabled || !outerRef?.current) {\n return;\n }\n\n outerRef.current.focus();\n };\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n rows,\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText inheritFont={!hasOuterLabel}>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n clear={clear}\n style={{ width: helperWidth, ...style }}\n className={cx(clearClass, hasDividerClass, hasHintClass, className)}\n onClick={handleTextAreaFocus}\n {...(hintText && { hintView, hintSize })}\n >\n {(hasOuterLabel || titleCaption) && (\n <OuterLabelWrapper isInnerLabel={labelPlacement === 'inner'}>\n {hasOuterLabel && (\n <StyledIndicatorWrapper>\n <StyledLabel>{label}</StyledLabel>\n\n {hintText && (\n <StyledHintWrapper>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n {required && (\n <StyledIndicator\n className={cx(\n classes.outerLabelPlacement,\n requiredPlacementClass,\n hasHintClass,\n )}\n />\n )}\n {optionalTextNode}\n </StyledIndicatorWrapper>\n )}\n {titleCaption && <TitleCaption>{titleCaption}</TitleCaption>}\n </OuterLabelWrapper>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {!hasOuterLabel && (\n <>\n {required && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {hintText && (\n <StyledHintWrapper className={classes.innerLabelPlacement}>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n </>\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={cx(styledTextAreaWrapper)} hasHelper={hasHelper}>\n <StyledTextArea\n className={cx(styledTextArea, hasRightContentClass)}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n height={applyAutoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n {applyAutoResize && (\n <StyledHiddenTextArea\n aria-hidden\n ref={hiddenRef}\n hasContentRight={Boolean(contentRight)}\n value={value || uncontrolledValue || ' '}\n defaultValue={defaultValue}\n />\n )}\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {isInnerLeftHelperPlacement && (leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n {hasLeftHelper && !isInnerLeftHelperPlacement && (\n <StyledOutsideHelpersWrapper id={textareaHelperId}>\n <StyledLeftHelper>{leftHelperText}</StyledLeftHelper>\n </StyledOutsideHelpersWrapper>\n )}\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n hintView: {\n css: hintViewCSS,\n },\n hintSize: {\n css: hintSizeCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","HINT_DEFAULT_OFFSET","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","_props$leftHelperPlac","leftHelperPlacement","contentRight","_props$autoResize","autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","titleCaption","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","clear","hasDivider","view","id","style","className","cols","_props$hintTrigger","hintTrigger","hintText","_props$hintView","hintView","_props$hintSize","hintSize","hintTargetIcon","_props$hintPlacement","hintPlacement","hintHasArrow","_props$hintOffset","hintOffset","hintWidth","hintContentLeft","onChange","rest","_excluded","_useState","useState","_useState2","_slicedToArray","isHintVisible","setIsHintVisible","_useState3","concat","_useState4","helperWidth","setHelperWidth","_useState5","_useState6","setFocused","_useState7","_useState8","uncontrolledValue","setUncontrolledValue","outerRef","createRef","hiddenRef","useRef","hintRef","useOutsideClick","hintInnerRef","hintForkRef","useForkRef","isInnerLeftHelperPlacement","leftHelperText","innerOptional","hasLeftHelper","Boolean","hasRightHelper","hasHelper","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","applyAutoResize","clearClass","hasHintClass","hasHint","hasRightContentClass","hasRightContent","hasDividerClass","requiredPlacementClass","requiredAlignRight","handleHintShow","handleHintHide","handleHintClick","event","_hintInnerRef$current","stopPropagation","targetIsPopover","target","current","rootHasTarget","contains","useLayoutEffect","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","handleTextAreaFocus","focus","dynamicLabelClasses","optionalTextNode","React","createElement","StyledOptionalText","inheritFont","_extends","_objectSpread","cx","onClick","OuterLabelWrapper","isInnerLabel","StyledIndicatorWrapper","StyledLabel","StyledHintWrapper","HintComponent","ref","StyledIndicator","outerLabelPlacement","TitleCaption","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","Fragment","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","hasContentRight","mergeRefs","StyledHiddenTextArea","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","StyledOutsideHelpersWrapper","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","clearCSS","attrs","disabledCSS","hintViewCSS","hintSizeCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback, useRef, MouseEventHandler, useLayoutEffect } from 'react';\nimport { css } from '@linaria/core';\nimport { useForkRef, useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\nimport { useOutsideClick } from '../../hooks';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n OuterLabelWrapper,\n StyledIndicatorWrapper,\n StyledHintWrapper,\n TitleCaption,\n StyledOutsideHelpersWrapper,\n StyledHiddenTextArea,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as hintViewCSS } from './variations/_hint-view/base';\nimport { base as hintSizeCSS } from './variations/_hint-size/base';\nimport type { TextAreaProps, TextAreaRootProps } from './TextArea.types';\nimport { HintComponent } from './ui/Hint/Hint';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\nconst HINT_DEFAULT_OFFSET: [number, number] = [0, 0];\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && rows) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaRootProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n leftHelperPlacement = 'inner',\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n titleCaption,\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n clear,\n hasDivider,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintPlacement = 'auto',\n hintHasArrow,\n hintOffset = HINT_DEFAULT_OFFSET,\n hintWidth,\n hintContentLeft,\n onChange,\n ...rest\n } = props;\n\n const [isHintVisible, setIsHintVisible] = useState(false);\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n // TODO: перенести в общую переменную для value снаружи и внутри\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n const hiddenRef = useRef<HTMLTextAreaElement | null>(null);\n\n const hintRef = useOutsideClick<HTMLDivElement>(() => {\n setIsHintVisible(false);\n });\n const hintInnerRef = useRef<HTMLDivElement>(null);\n const hintForkRef = useForkRef(hintRef, hintInnerRef);\n\n const isInnerLeftHelperPlacement = leftHelperPlacement === 'inner';\n const leftHelperText = leftHelper || helperText;\n const innerOptional = required ? false : optional;\n const hasLeftHelper = Boolean(leftHelper || helperText);\n const hasRightHelper = Boolean(rightHelper);\n const hasHelper = !isInnerLeftHelperPlacement ? hasRightHelper : hasLeftHelper || hasRightHelper;\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n const applyAutoResize = autoResize || Boolean(clear);\n\n const clearClass = clear ? classes.clear : undefined;\n const hasHintClass = hintText ? classes.hasHint : undefined;\n const hasRightContentClass = contentRight ? classes.hasRightContent : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? classes.requiredAlignRight : undefined;\n\n const handleHintShow = () => setIsHintVisible(true);\n const handleHintHide = () => setIsHintVisible(false);\n const handleHintClick: MouseEventHandler = (event) => {\n if (!hintText || hintTrigger !== 'click') {\n return;\n }\n\n event.stopPropagation();\n const targetIsPopover = event.target === hintInnerRef.current;\n const rootHasTarget = hintInnerRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n setIsHintVisible(true);\n }\n };\n\n useLayoutEffect(() => {\n if (outerRef.current) {\n setUncontrolledValue(outerRef.current.value);\n }\n }, [outerRef]);\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(applyAutoResize, outerRef, value || uncontrolledValue, minAuto, maxAuto, resize, hiddenRef);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const handleTextAreaFocus = () => {\n if (readOnly || disabled || !outerRef?.current) {\n return;\n }\n\n outerRef.current.focus();\n };\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n rows,\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText inheritFont={!hasOuterLabel}>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n clear={clear}\n style={{ width: helperWidth, ...style }}\n className={cx(clearClass, hasDividerClass, hasHintClass, className)}\n onClick={handleTextAreaFocus}\n {...(hintText && { hintView, hintSize })}\n >\n {(hasOuterLabel || titleCaption) && (\n <OuterLabelWrapper isInnerLabel={labelPlacement === 'inner'}>\n {hasOuterLabel && (\n <StyledIndicatorWrapper>\n <StyledLabel>{label}</StyledLabel>\n\n {hintText && (\n <StyledHintWrapper>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n {required && (\n <StyledIndicator\n className={cx(\n classes.outerLabelPlacement,\n requiredPlacementClass,\n hasHintClass,\n )}\n />\n )}\n {optionalTextNode}\n </StyledIndicatorWrapper>\n )}\n {titleCaption && <TitleCaption>{titleCaption}</TitleCaption>}\n </OuterLabelWrapper>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {!hasOuterLabel && (\n <>\n {required && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {hintText && (\n <StyledHintWrapper className={classes.innerLabelPlacement}>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n </>\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={cx(styledTextAreaWrapper)} hasHelper={hasHelper}>\n <StyledTextArea\n className={cx(styledTextArea, hasRightContentClass)}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n required={required}\n height={applyAutoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n {applyAutoResize && (\n <StyledHiddenTextArea\n aria-hidden\n ref={hiddenRef}\n hasContentRight={Boolean(contentRight)}\n value={value || uncontrolledValue || ' '}\n defaultValue={defaultValue}\n />\n )}\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {isInnerLeftHelperPlacement && (leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n {hasLeftHelper && !isInnerLeftHelperPlacement && (\n <StyledOutsideHelpersWrapper id={textareaHelperId}>\n <StyledLeftHelper>{leftHelperText}</StyledLeftHelper>\n </StyledOutsideHelpersWrapper>\n )}\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n hintView: {\n css: hintViewCSS,\n },\n hintSize: {\n css: hintSizeCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","HINT_DEFAULT_OFFSET","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","_props$leftHelperPlac","leftHelperPlacement","contentRight","_props$autoResize","autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","titleCaption","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","clear","hasDivider","view","id","style","className","cols","_props$hintTrigger","hintTrigger","hintText","_props$hintView","hintView","_props$hintSize","hintSize","hintTargetIcon","_props$hintPlacement","hintPlacement","hintHasArrow","_props$hintOffset","hintOffset","hintWidth","hintContentLeft","onChange","rest","_excluded","_useState","useState","_useState2","_slicedToArray","isHintVisible","setIsHintVisible","_useState3","concat","_useState4","helperWidth","setHelperWidth","_useState5","_useState6","setFocused","_useState7","_useState8","uncontrolledValue","setUncontrolledValue","outerRef","createRef","hiddenRef","useRef","hintRef","useOutsideClick","hintInnerRef","hintForkRef","useForkRef","isInnerLeftHelperPlacement","leftHelperText","innerOptional","hasLeftHelper","Boolean","hasRightHelper","hasHelper","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","applyAutoResize","clearClass","hasHintClass","hasHint","hasRightContentClass","hasRightContent","hasDividerClass","requiredPlacementClass","requiredAlignRight","handleHintShow","handleHintHide","handleHintClick","event","_hintInnerRef$current","stopPropagation","targetIsPopover","target","current","rootHasTarget","contains","useLayoutEffect","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","handleTextAreaFocus","focus","dynamicLabelClasses","optionalTextNode","React","createElement","StyledOptionalText","inheritFont","_extends","_objectSpread","cx","onClick","OuterLabelWrapper","isInnerLabel","StyledIndicatorWrapper","StyledLabel","StyledHintWrapper","HintComponent","ref","StyledIndicator","outerLabelPlacement","TitleCaption","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","Fragment","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","hasContentRight","mergeRefs","StyledHiddenTextArea","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","StyledOutsideHelpersWrapper","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","clearCSS","attrs","disabledCSS","hintViewCSS","hintSizeCSS","defaults"],"mappings":"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"}
|