@salutejs/plasma-new-hope 0.336.0-canary.2220.17648264852.0 → 0.336.0-canary.2220.17654170001.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/Autocomplete/Autocomplete.css +2 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.css +2 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +2 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +2 -1
- package/cjs/components/Pagination/Pagination.css +2 -1
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +2 -1
- package/cjs/components/Range/Range.css +2 -1
- package/cjs/components/Select/Select.css +2 -1
- package/cjs/components/Select/Select.js +24 -11
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/hooks/usePathMaps.js +1 -4
- package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
- package/cjs/components/Select/ui/Target/Target.css +2 -1
- package/cjs/components/Select/ui/Target/Target.js +0 -2
- package/cjs/components/Select/ui/Target/Target.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +2 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -49
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/cjs/components/Slider/Slider.css +2 -1
- package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +2 -1
- package/cjs/components/Table/Table.css +2 -1
- package/cjs/components/Table/ui/Cell/Cell.css +2 -1
- package/cjs/components/Table/ui/EditableCell/EditableCell.css +2 -1
- package/cjs/components/Table/ui/HeadCell/HeadCell.css +2 -1
- package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +2 -1
- package/cjs/components/TextField/TextField.js +7 -2
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +25 -21
- package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +15 -3
- package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -1
- package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +1 -1
- package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -1
- package/{es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_119gtz1.css → cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css} +1 -0
- package/cjs/index.css +2 -1
- package/emotion/cjs/components/Select/Select.js +27 -9
- package/emotion/cjs/components/Select/hooks/usePathMaps.js +2 -5
- package/emotion/cjs/components/Select/ui/Target/Target.js +1 -2
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
- package/emotion/cjs/components/Select/utils/index.js +0 -4
- package/emotion/cjs/components/TextField/TextField.js +7 -3
- package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
- package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +22 -5
- package/emotion/es/components/Select/Select.js +27 -9
- package/emotion/es/components/Select/hooks/usePathMaps.js +2 -5
- package/emotion/es/components/Select/ui/Target/Target.js +1 -2
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
- package/emotion/es/components/Select/utils/index.js +0 -1
- package/emotion/es/components/TextField/TextField.js +7 -3
- package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
- package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +11 -2
- package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
- package/es/components/Autocomplete/Autocomplete.css +2 -1
- package/es/components/Combobox/ComboboxNew/Combobox.css +2 -1
- package/es/components/DatePicker/RangeDate/RangeDate.css +2 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -1
- package/es/components/DatePicker/SingleDate/SingleDate.css +2 -1
- package/es/components/Pagination/Pagination.css +2 -1
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +2 -1
- package/es/components/Range/Range.css +2 -1
- package/es/components/Select/Select.css +2 -1
- package/es/components/Select/Select.js +24 -11
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/hooks/usePathMaps.js +1 -4
- package/es/components/Select/hooks/usePathMaps.js.map +1 -1
- package/es/components/Select/ui/Target/Target.css +2 -1
- package/es/components/Select/ui/Target/Target.js +0 -2
- package/es/components/Select/ui/Target/Target.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +2 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -50
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/es/components/Slider/Slider.css +2 -1
- package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +2 -1
- package/es/components/Table/Table.css +2 -1
- package/es/components/Table/ui/Cell/Cell.css +2 -1
- package/es/components/Table/ui/EditableCell/EditableCell.css +2 -1
- package/es/components/Table/ui/HeadCell/HeadCell.css +2 -1
- package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +2 -1
- package/es/components/TextField/TextField.js +7 -2
- package/es/components/TextField/TextField.js.map +1 -1
- package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +25 -21
- package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +15 -3
- package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -1
- package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +1 -1
- package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -1
- package/{cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_119gtz1.css → es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css} +1 -0
- package/es/index.css +2 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Select/Select.js +27 -9
- package/styled-components/cjs/components/Select/hooks/usePathMaps.js +2 -5
- package/styled-components/cjs/components/Select/ui/Target/Target.js +1 -2
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
- package/styled-components/cjs/components/Select/utils/index.js +0 -4
- package/styled-components/cjs/components/TextField/TextField.js +6 -2
- package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
- package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +31 -4
- package/styled-components/es/components/Select/Select.js +27 -9
- package/styled-components/es/components/Select/hooks/usePathMaps.js +2 -5
- package/styled-components/es/components/Select/ui/Target/Target.js +1 -2
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
- package/styled-components/es/components/Select/utils/index.js +0 -1
- package/styled-components/es/components/TextField/TextField.js +6 -2
- package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
- package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +20 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/hooks/usePathMaps.d.ts +1 -2
- package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
- package/types/components/Select/ui/Target/Target.d.ts +0 -1
- package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
- package/types/components/Select/ui/Target/Target.types.d.ts +1 -2
- 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/Select/utils/index.d.ts +0 -1
- package/types/components/Select/utils/index.d.ts.map +1 -1
- package/types/components/TextField/TextField.d.ts.map +1 -1
- package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts +2 -0
- package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts.map +1 -1
- package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts +1 -0
- package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts.map +1 -1
- package/cjs/components/Select/utils/getRemovedElement.js +0 -17
- package/cjs/components/Select/utils/getRemovedElement.js.map +0 -1
- package/emotion/cjs/components/Select/utils/getRemovedElement.js +0 -20
- package/emotion/es/components/Select/utils/getRemovedElement.js +0 -10
- package/es/components/Select/utils/getRemovedElement.js +0 -13
- package/es/components/Select/utils/getRemovedElement.js.map +0 -1
- package/styled-components/cjs/components/Select/utils/getRemovedElement.js +0 -20
- package/styled-components/es/components/Select/utils/getRemovedElement.js +0 -10
- package/types/components/Select/utils/getRemovedElement.d.ts +0 -2
- package/types/components/Select/utils/getRemovedElement.d.ts.map +0 -1
@@ -256,7 +256,7 @@ var selectRoot = function(Root) {
|
|
256
256
|
items
|
257
257
|
]);
|
258
258
|
// Создаем структуры для быстрой работы с деревом
|
259
|
-
var _usePathMaps1 = _sliced_to_array((0, _usePathMaps.usePathMaps)(transformedItems),
|
259
|
+
var _usePathMaps1 = _sliced_to_array((0, _usePathMaps.usePathMaps)(transformedItems), 4), pathMap = _usePathMaps1[0], focusedToValueMap = _usePathMaps1[1], valueToCheckedMap = _usePathMaps1[2], valueToItemMap = _usePathMaps1[3];
|
260
260
|
var _useState = _sliced_to_array((0, _react.useState)(props.multiselect ? [] : ''), 2), internalValue = _useState[0], setInternalValue = _useState[1];
|
261
261
|
var value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;
|
262
262
|
var floatingPopoverRef = (0, _react.useRef)(null);
|
@@ -344,14 +344,33 @@ var selectRoot = function(Root) {
|
|
344
344
|
return;
|
345
345
|
}
|
346
346
|
var checkedCopy = new Map(checked);
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
347
|
+
switch(checkedCopy.get(item.value)){
|
348
|
+
// Если чекбокс в состоянии indeterminate
|
349
|
+
case 'indeterminate':
|
350
|
+
{
|
351
|
+
// checkedCopy.set(item.value, true); ??
|
352
|
+
(0, _utils1.updateDescendants)(item, checkedCopy, true, valueToItemMap);
|
353
|
+
break;
|
354
|
+
}
|
355
|
+
// Если чекбокс в состоянии checked
|
356
|
+
case true:
|
357
|
+
{
|
358
|
+
(0, _utils1.updateDescendants)(item, checkedCopy, false, valueToItemMap);
|
359
|
+
checkedCopy.set(item.value, false);
|
360
|
+
break;
|
361
|
+
}
|
362
|
+
// Если чекбокс в состоянии unchecked
|
363
|
+
case false:
|
364
|
+
{
|
365
|
+
(0, _utils1.updateDescendants)(item, checkedCopy, true, valueToItemMap);
|
366
|
+
checkedCopy.set(item.value, true);
|
367
|
+
break;
|
368
|
+
}
|
369
|
+
default:
|
370
|
+
{
|
371
|
+
break;
|
372
|
+
}
|
353
373
|
}
|
354
|
-
(0, _utils1.updateAncestors)(item, checkedCopy);
|
355
374
|
var newValues = [];
|
356
375
|
valueToItemMap.forEach(function(item, key) {
|
357
376
|
if (checkedCopy.get(key)) {
|
@@ -542,7 +561,6 @@ var selectRoot = function(Root) {
|
|
542
561
|
activeDescendantItemValue: activeDescendantItemValue,
|
543
562
|
isTargetAmount: isTargetAmount,
|
544
563
|
onChange: onChange,
|
545
|
-
labelToItemMap: labelToItemMap,
|
546
564
|
chipView: chipView,
|
547
565
|
separator: separator,
|
548
566
|
requiredProps: requiredProps,
|
@@ -14,18 +14,16 @@ var usePathMaps = function(items) {
|
|
14
14
|
var focusedToValueMap = new Map();
|
15
15
|
var valueToCheckedMap = new Map();
|
16
16
|
var valueToItemMap = new Map();
|
17
|
-
var labelToItemMap = new Map();
|
18
17
|
pathMap.set('root', (items === null || items === void 0 ? void 0 : items.length) || 0);
|
19
18
|
var rec = function(items) {
|
20
19
|
var prevIndex = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : '';
|
21
20
|
items === null || items === void 0 ? void 0 : items.forEach(function(item, index) {
|
22
|
-
var value = item.value,
|
21
|
+
var value = item.value, innerItems = item.items;
|
23
22
|
var currIndex = "".concat(prevIndex, "/").concat(index).replace(/^(\/)/, '');
|
24
23
|
focusedToValueMap.set(currIndex, item);
|
25
24
|
valueToCheckedMap.set(value, false);
|
26
25
|
if ((0, _utils.isEmpty)(innerItems) || !innerItems) {
|
27
26
|
valueToItemMap.set(value, item);
|
28
|
-
labelToItemMap.set(label, item);
|
29
27
|
} else {
|
30
28
|
pathMap.set(value, innerItems.length);
|
31
29
|
rec(innerItems, currIndex);
|
@@ -37,7 +35,6 @@ var usePathMaps = function(items) {
|
|
37
35
|
pathMap,
|
38
36
|
focusedToValueMap,
|
39
37
|
valueToCheckedMap,
|
40
|
-
valueToItemMap
|
41
|
-
labelToItemMap
|
38
|
+
valueToItemMap
|
42
39
|
];
|
43
40
|
};
|
@@ -53,7 +53,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
53
53
|
return newObj;
|
54
54
|
}
|
55
55
|
var Target = /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
|
56
|
-
var value = param.value, opened = param.opened, valueToItemMap = param.valueToItemMap, label = param.label, placeholder = param.placeholder, onKeyDown = param.onKeyDown, labelPlacement = param.labelPlacement, size = param.size, contentLeft = param.contentLeft, disabled = param.disabled, readOnly = param.readOnly, renderValue = param.renderValue, selectProps = param.selectProps, inputWrapperRef = param.inputWrapperRef, multiselect = param.multiselect, view = param.view, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, isTargetAmount = param.isTargetAmount, onChange = param.onChange,
|
56
|
+
var value = param.value, opened = param.opened, valueToItemMap = param.valueToItemMap, label = param.label, placeholder = param.placeholder, onKeyDown = param.onKeyDown, labelPlacement = param.labelPlacement, size = param.size, contentLeft = param.contentLeft, disabled = param.disabled, readOnly = param.readOnly, renderValue = param.renderValue, selectProps = param.selectProps, inputWrapperRef = param.inputWrapperRef, multiselect = param.multiselect, view = param.view, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, isTargetAmount = param.isTargetAmount, onChange = param.onChange, chipView = param.chipView, separator = param.separator, requiredProps = param.requiredProps, hintProps = param.hintProps;
|
57
57
|
var buttonRef = (0, _plasmacore.useForkRef)(ref, inputWrapperRef);
|
58
58
|
if (selectProps.renderTarget) {
|
59
59
|
return /*#__PURE__*/ _react.default.createElement("div", {
|
@@ -98,7 +98,6 @@ var Target = /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
|
|
98
98
|
valueToItemMap: valueToItemMap,
|
99
99
|
renderValue: renderValue,
|
100
100
|
onChange: onChange,
|
101
|
-
labelToItemMap: labelToItemMap,
|
102
101
|
chipView: chipView,
|
103
102
|
requiredProps: requiredProps,
|
104
103
|
hintProps: hintProps,
|
@@ -12,14 +12,6 @@ var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
|
|
12
12
|
var _utils = require("../../../../utils");
|
13
13
|
var _Selecttokens = require("../../../../Select.tokens");
|
14
14
|
var _Textfieldstyles = require("./Textfield.styles");
|
15
|
-
function _array_like_to_array(arr, len) {
|
16
|
-
if (len == null || len > arr.length) len = arr.length;
|
17
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
18
|
-
return arr2;
|
19
|
-
}
|
20
|
-
function _array_without_holes(arr) {
|
21
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
22
|
-
}
|
23
15
|
function _define_property(obj, key, value) {
|
24
16
|
if (key in obj) {
|
25
17
|
Object.defineProperty(obj, key, {
|
@@ -81,12 +73,6 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
81
73
|
}
|
82
74
|
return newObj;
|
83
75
|
}
|
84
|
-
function _iterable_to_array(iter) {
|
85
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
86
|
-
}
|
87
|
-
function _non_iterable_spread() {
|
88
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
89
|
-
}
|
90
76
|
function _object_spread(target) {
|
91
77
|
for(var i = 1; i < arguments.length; i++){
|
92
78
|
var source = arguments[i] != null ? arguments[i] : {};
|
@@ -126,19 +112,8 @@ function _object_spread_props(target, source) {
|
|
126
112
|
}
|
127
113
|
return target;
|
128
114
|
}
|
129
|
-
function _to_consumable_array(arr) {
|
130
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
131
|
-
}
|
132
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
133
|
-
if (!o) return;
|
134
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
135
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
136
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
137
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
138
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
139
|
-
}
|
140
115
|
var Textfield = /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
|
141
|
-
var inputWrapperRef = param.inputWrapperRef, opened = param.opened, multiselect = param.multiselect, value = param.value, label = param.label, labelPlacement = param.labelPlacement, keepPlaceholder = param.keepPlaceholder, placeholder = param.placeholder, onKeyDown = param.onKeyDown, size = param.size, view = param.view, contentLeft = param.contentLeft, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, disabled = param.disabled, readOnly = param.readOnly, isTargetAmount = param.isTargetAmount, valueToItemMap = param.valueToItemMap, renderValue = param.renderValue, onChange = param.onChange,
|
116
|
+
var inputWrapperRef = param.inputWrapperRef, opened = param.opened, multiselect = param.multiselect, value = param.value, label = param.label, labelPlacement = param.labelPlacement, keepPlaceholder = param.keepPlaceholder, placeholder = param.placeholder, onKeyDown = param.onKeyDown, size = param.size, view = param.view, contentLeft = param.contentLeft, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, disabled = param.disabled, readOnly = param.readOnly, isTargetAmount = param.isTargetAmount, valueToItemMap = param.valueToItemMap, renderValue = param.renderValue, onChange = param.onChange, chipView = param.chipView, requiredProps = param.requiredProps, chipType = param.chipType, hintProps = param.hintProps;
|
142
117
|
var withArrowInverse = opened ? _Selecttokens.classes.arrowInverse : undefined;
|
143
118
|
var getValue = function() {
|
144
119
|
var _valueToItemMap_get;
|
@@ -158,58 +133,44 @@ var Textfield = /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
|
|
158
133
|
if (value.length === 0) return [];
|
159
134
|
if (isTargetAmount) {
|
160
135
|
return [
|
161
|
-
|
136
|
+
{
|
137
|
+
value: '_removeAll',
|
138
|
+
label: "Выбрано ".concat(value.length),
|
139
|
+
disabled: value.every(function(val) {
|
140
|
+
var _valueToItemMap_get;
|
141
|
+
return valueToItemMap === null || valueToItemMap === void 0 ? void 0 : (_valueToItemMap_get = valueToItemMap.get(val)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.disabled;
|
142
|
+
})
|
143
|
+
}
|
162
144
|
];
|
163
145
|
}
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
146
|
+
return value.map(function(value) {
|
147
|
+
var _valueToItemMap_get, _valueToItemMap_get1;
|
148
|
+
var currentLabel = renderValue ? renderValue(valueToItemMap.get(value) || {
|
149
|
+
value: value,
|
150
|
+
label: value.toString()
|
151
|
+
}) : ((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value.toString();
|
152
|
+
return {
|
153
|
+
value: value,
|
154
|
+
label: currentLabel,
|
155
|
+
disabled: ((_valueToItemMap_get1 = valueToItemMap.get(value)) === null || _valueToItemMap_get1 === void 0 ? void 0 : _valueToItemMap_get1.disabled) || false
|
156
|
+
};
|
157
|
+
});
|
175
158
|
}
|
176
159
|
return [];
|
177
160
|
};
|
178
161
|
// Обработчик чипов
|
179
|
-
var
|
162
|
+
var handleChipClick = function(chip) {
|
180
163
|
if (!Array.isArray(value)) return;
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
var resultValues = _to_consumable_array(value);
|
185
|
-
value.forEach(function(_, index) {
|
164
|
+
if (isTargetAmount) {
|
165
|
+
// При закрытии чипа в режиме isTargetAmount в value оставляем только disabled-элементы
|
166
|
+
onChange(value.filter(function(val) {
|
186
167
|
var _valueToItemMap_get;
|
187
|
-
|
188
|
-
|
189
|
-
var labelAfterRenderValue = renderValue(label ? labelToItemMap.get(label) : {
|
190
|
-
value: stringValue,
|
191
|
-
label: stringValue.toString()
|
192
|
-
});
|
193
|
-
if (!chipLabels.includes(labelAfterRenderValue)) {
|
194
|
-
resultValues.splice(index, 1);
|
195
|
-
}
|
196
|
-
});
|
197
|
-
var removedItemValue = (0, _utils.getRemovedElement)(value, resultValues, isTargetAmount);
|
198
|
-
onChange(resultValues, removedItemValue ? valueToItemMap.get(removedItemValue) || {
|
199
|
-
value: removedItemValue,
|
200
|
-
label: removedItemValue.toString()
|
201
|
-
} : null);
|
168
|
+
return valueToItemMap === null || valueToItemMap === void 0 ? void 0 : (_valueToItemMap_get = valueToItemMap.get(val)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.disabled;
|
169
|
+
}));
|
202
170
|
} else {
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
});
|
207
|
-
var removedItemValue1 = (0, _utils.getRemovedElement)(value, newValues, isTargetAmount);
|
208
|
-
var item = removedItemValue1 ? valueToItemMap.get(removedItemValue1) || {
|
209
|
-
value: removedItemValue1,
|
210
|
-
label: removedItemValue1.toString()
|
211
|
-
} : null;
|
212
|
-
onChange(newValues, item);
|
171
|
+
onChange(value.filter(function(val) {
|
172
|
+
return val !== chip.value;
|
173
|
+
}), valueToItemMap.get(chip.value) || null);
|
213
174
|
}
|
214
175
|
};
|
215
176
|
var helperTextStopPropagation = function(event) {
|
@@ -248,8 +209,8 @@ var Textfield = /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
|
|
248
209
|
"aria-activedescendant": activeDescendantItemValue ? (0, _utils.getItemId)(treeId, activeDescendantItemValue) : ''
|
249
210
|
}, multiselect ? {
|
250
211
|
enumerationType: 'chip',
|
251
|
-
|
252
|
-
|
212
|
+
_chips: getChips(),
|
213
|
+
_onChipClick: handleChipClick,
|
253
214
|
chipType: chipType,
|
254
215
|
chipView: chipView
|
255
216
|
} : {
|
@@ -24,9 +24,6 @@ _export(exports, {
|
|
24
24
|
get getPlacement () {
|
25
25
|
return _getPlacement.getPlacement;
|
26
26
|
},
|
27
|
-
get getRemovedElement () {
|
28
|
-
return _getRemovedElement.getRemovedElement;
|
29
|
-
},
|
30
27
|
get getView () {
|
31
28
|
return _getView.getView;
|
32
29
|
},
|
@@ -57,4 +54,3 @@ var _getView = require("./getView");
|
|
57
54
|
var _getPlacement = require("./getPlacement");
|
58
55
|
var _getFallbackPlacements = require("./getFallbackPlacements");
|
59
56
|
var _getItemId = require("./getItemId");
|
60
|
-
var _getRemovedElement = require("./getRemovedElement");
|
@@ -536,8 +536,12 @@ var textFieldRoot = function(Root) {
|
|
536
536
|
getRef: getRef,
|
537
537
|
handleChipKeyDown: handleChipKeyDown,
|
538
538
|
onChipClear: onChipClear,
|
539
|
-
view: view,
|
540
|
-
readOnly: readOnly
|
539
|
+
view: chipView || view,
|
540
|
+
readOnly: readOnly,
|
541
|
+
chipType: chipType,
|
542
|
+
// TODO: #1547
|
543
|
+
// @ts-ignore
|
544
|
+
_forceChipManipulationWithReadonly: _forceChipManipulationWithReadonly
|
541
545
|
}), isChipEnumeration && Boolean(chips === null || chips === void 0 ? void 0 : chips.length) && /*#__PURE__*/ _react.default.createElement(_TextFieldstyles.StyledChips, {
|
542
546
|
className: _TextFieldtokens.classes.chipsWrapper
|
543
547
|
}, chips === null || chips === void 0 ? void 0 : chips.map(function(param, index) {
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "TextFieldChipNew", {
|
|
9
9
|
}
|
10
10
|
});
|
11
11
|
var _react = /*#__PURE__*/ _interop_require_default(require("react"));
|
12
|
+
var _TextFieldChipstyles = require("../TextFieldChip/TextFieldChip.styles");
|
12
13
|
var _TextFieldstyles = require("../../TextField.styles");
|
13
14
|
var _TextFieldtokens = require("../../TextField.tokens");
|
14
15
|
var _TextFieldChipNewstyles = require("./TextFieldChipNew.styles");
|
@@ -18,7 +19,7 @@ function _interop_require_default(obj) {
|
|
18
19
|
};
|
19
20
|
}
|
20
21
|
var TextFieldChipNew = function(param) {
|
21
|
-
var chips = param.chips, onChipClick = param.onChipClick, getRef = param.getRef, handleChipKeyDown = param.handleChipKeyDown, onChipClear = param.onChipClear, readOnly = param.readOnly, view = param.view;
|
22
|
+
var chips = param.chips, onChipClick = param.onChipClick, getRef = param.getRef, handleChipKeyDown = param.handleChipKeyDown, onChipClear = param.onChipClear, readOnly = param.readOnly, chipType = param.chipType, view = param.view, _forceChipManipulationWithReadonly = param._forceChipManipulationWithReadonly;
|
22
23
|
return /*#__PURE__*/ _react.default.createElement(_TextFieldstyles.StyledChips, {
|
23
24
|
className: _TextFieldtokens.classes.chipsWrapper
|
24
25
|
}, chips.map(function(param, index) {
|
@@ -51,7 +52,7 @@ var TextFieldChipNew = function(param) {
|
|
51
52
|
onChipClear(chipId, index);
|
52
53
|
}
|
53
54
|
};
|
54
|
-
return /*#__PURE__*/ _react.default.createElement(_TextFieldChipNewstyles.StyledChip, {
|
55
|
+
return chipType === 'default' ? /*#__PURE__*/ _react.default.createElement(_TextFieldChipNewstyles.StyledChip, {
|
55
56
|
key: chipId,
|
56
57
|
ref: function(element) {
|
57
58
|
return getRef(element, index);
|
@@ -63,7 +64,15 @@ var TextFieldChipNew = function(param) {
|
|
63
64
|
onClick: handleClick,
|
64
65
|
onKeyDown: onKeyDownHandle,
|
65
66
|
text: label,
|
66
|
-
view: view
|
67
|
-
|
67
|
+
view: view,
|
68
|
+
// TODO: #1547
|
69
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
70
|
+
// @ts-ignore
|
71
|
+
_forceChipManipulationWithReadonly: _forceChipManipulationWithReadonly
|
72
|
+
}) : /*#__PURE__*/ _react.default.createElement(_TextFieldChipstyles.TextChip, {
|
73
|
+
tabIndex: -1,
|
74
|
+
onClick: handleClick,
|
75
|
+
onKeyDown: onKeyDownHandle
|
76
|
+
}, label);
|
68
77
|
}));
|
69
78
|
};
|
package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js
CHANGED
@@ -2,10 +2,18 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
3
3
|
value: true
|
4
4
|
});
|
5
|
-
|
6
|
-
|
7
|
-
|
5
|
+
function _export(target, all) {
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
7
|
+
enumerable: true,
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
9
|
+
});
|
10
|
+
}
|
11
|
+
_export(exports, {
|
12
|
+
get StyledChip () {
|
8
13
|
return StyledChip;
|
14
|
+
},
|
15
|
+
get TextChip () {
|
16
|
+
return TextChip;
|
9
17
|
}
|
10
18
|
});
|
11
19
|
var _styledcomponents = /*#__PURE__*/ _interop_require_default(require("styled-components"));
|
@@ -23,7 +31,7 @@ var mergedConfig = (0, _engines.mergeConfig)(_Chip.chipConfig);
|
|
23
31
|
var Chip = (0, _engines.component)(mergedConfig);
|
24
32
|
var StyledChip = (0, _styledcomponents.default)(Chip).withConfig({
|
25
33
|
displayName: "TextFieldChipNew.styles__StyledChip",
|
26
|
-
componentId: "sc-
|
34
|
+
componentId: "sc-ffa02158-0"
|
27
35
|
})([
|
28
36
|
"",
|
29
37
|
":var(",
|
@@ -85,3 +93,22 @@ var StyledChip = (0, _styledcomponents.default)(Chip).withConfig({
|
|
85
93
|
outlineRadius: "calc(var(".concat(_TextFieldtokens.tokens.chipBorderRadius, ") - 0.1rem)"),
|
86
94
|
outlineColor: "var(".concat(_TextFieldtokens.tokens.focusColor, ")")
|
87
95
|
}), _TextFieldtokens.tokens.chipOpacityReadonly);
|
96
|
+
var TextChip = _styledcomponents.default.button.withConfig({
|
97
|
+
displayName: "TextFieldChipNew.styles__TextChip",
|
98
|
+
componentId: "sc-ffa02158-1"
|
99
|
+
})([
|
100
|
+
"display:block;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(",
|
101
|
+
");font-size:var(",
|
102
|
+
");font-style:var(",
|
103
|
+
");font-weight:var(",
|
104
|
+
");letter-spacing:var(",
|
105
|
+
");line-height:var(",
|
106
|
+
");color:var(",
|
107
|
+
");",
|
108
|
+
" &:after{content:',';}&:last-child{&:after{content:'';}}"
|
109
|
+
], _TextFieldtokens.tokens.fontFamily, _TextFieldtokens.tokens.fontSize, _TextFieldtokens.tokens.fontStyle, _TextFieldtokens.tokens.fontWeight, _TextFieldtokens.tokens.letterSpacing, _TextFieldtokens.tokens.lineHeight, _TextFieldtokens.tokens.color, (0, _mixins.addFocus)({
|
110
|
+
outlineOffset: '0.0625rem',
|
111
|
+
outlineSize: '0.0625rem',
|
112
|
+
outlineRadius: "calc(var(".concat(_TextFieldtokens.tokens.chipBorderRadius, ") - 0.1rem)"),
|
113
|
+
outlineColor: "var(".concat(_TextFieldtokens.tokens.focusColor, ")")
|
114
|
+
}));
|
@@ -199,7 +199,7 @@ import { Context } from "./Select.context";
|
|
199
199
|
items
|
200
200
|
]);
|
201
201
|
// Создаем структуры для быстрой работы с деревом
|
202
|
-
var _usePathMaps = _sliced_to_array(usePathMaps(transformedItems),
|
202
|
+
var _usePathMaps = _sliced_to_array(usePathMaps(transformedItems), 4), pathMap = _usePathMaps[0], focusedToValueMap = _usePathMaps[1], valueToCheckedMap = _usePathMaps[2], valueToItemMap = _usePathMaps[3];
|
203
203
|
var _useState = _sliced_to_array(useState(props.multiselect ? [] : ''), 2), internalValue = _useState[0], setInternalValue = _useState[1];
|
204
204
|
var value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;
|
205
205
|
var floatingPopoverRef = useRef(null);
|
@@ -287,14 +287,33 @@ import { Context } from "./Select.context";
|
|
287
287
|
return;
|
288
288
|
}
|
289
289
|
var checkedCopy = new Map(checked);
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
290
|
+
switch(checkedCopy.get(item.value)){
|
291
|
+
// Если чекбокс в состоянии indeterminate
|
292
|
+
case 'indeterminate':
|
293
|
+
{
|
294
|
+
// checkedCopy.set(item.value, true); ??
|
295
|
+
updateDescendants(item, checkedCopy, true, valueToItemMap);
|
296
|
+
break;
|
297
|
+
}
|
298
|
+
// Если чекбокс в состоянии checked
|
299
|
+
case true:
|
300
|
+
{
|
301
|
+
updateDescendants(item, checkedCopy, false, valueToItemMap);
|
302
|
+
checkedCopy.set(item.value, false);
|
303
|
+
break;
|
304
|
+
}
|
305
|
+
// Если чекбокс в состоянии unchecked
|
306
|
+
case false:
|
307
|
+
{
|
308
|
+
updateDescendants(item, checkedCopy, true, valueToItemMap);
|
309
|
+
checkedCopy.set(item.value, true);
|
310
|
+
break;
|
311
|
+
}
|
312
|
+
default:
|
313
|
+
{
|
314
|
+
break;
|
315
|
+
}
|
296
316
|
}
|
297
|
-
updateAncestors(item, checkedCopy);
|
298
317
|
var newValues = [];
|
299
318
|
valueToItemMap.forEach(function(item, key) {
|
300
319
|
if (checkedCopy.get(key)) {
|
@@ -485,7 +504,6 @@ import { Context } from "./Select.context";
|
|
485
504
|
activeDescendantItemValue: activeDescendantItemValue,
|
486
505
|
isTargetAmount: isTargetAmount,
|
487
506
|
onChange: onChange,
|
488
|
-
labelToItemMap: labelToItemMap,
|
489
507
|
chipView: chipView,
|
490
508
|
separator: separator,
|
491
509
|
requiredProps: requiredProps,
|
@@ -5,18 +5,16 @@ export var usePathMaps = function(items) {
|
|
5
5
|
var focusedToValueMap = new Map();
|
6
6
|
var valueToCheckedMap = new Map();
|
7
7
|
var valueToItemMap = new Map();
|
8
|
-
var labelToItemMap = new Map();
|
9
8
|
pathMap.set('root', (items === null || items === void 0 ? void 0 : items.length) || 0);
|
10
9
|
var rec = function(items) {
|
11
10
|
var prevIndex = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : '';
|
12
11
|
items === null || items === void 0 ? void 0 : items.forEach(function(item, index) {
|
13
|
-
var value = item.value,
|
12
|
+
var value = item.value, innerItems = item.items;
|
14
13
|
var currIndex = "".concat(prevIndex, "/").concat(index).replace(/^(\/)/, '');
|
15
14
|
focusedToValueMap.set(currIndex, item);
|
16
15
|
valueToCheckedMap.set(value, false);
|
17
16
|
if (isEmpty(innerItems) || !innerItems) {
|
18
17
|
valueToItemMap.set(value, item);
|
19
|
-
labelToItemMap.set(label, item);
|
20
18
|
} else {
|
21
19
|
pathMap.set(value, innerItems.length);
|
22
20
|
rec(innerItems, currIndex);
|
@@ -28,7 +26,6 @@ export var usePathMaps = function(items) {
|
|
28
26
|
pathMap,
|
29
27
|
focusedToValueMap,
|
30
28
|
valueToCheckedMap,
|
31
|
-
valueToItemMap
|
32
|
-
labelToItemMap
|
29
|
+
valueToItemMap
|
33
30
|
];
|
34
31
|
};
|
@@ -2,7 +2,7 @@ import React, { forwardRef } from "react";
|
|
2
2
|
import { useForkRef } from "@salutejs/plasma-core";
|
3
3
|
import { Button, Textfield } from "./ui";
|
4
4
|
export var Target = /*#__PURE__*/ forwardRef(function(param, ref) {
|
5
|
-
var value = param.value, opened = param.opened, valueToItemMap = param.valueToItemMap, label = param.label, placeholder = param.placeholder, onKeyDown = param.onKeyDown, labelPlacement = param.labelPlacement, size = param.size, contentLeft = param.contentLeft, disabled = param.disabled, readOnly = param.readOnly, renderValue = param.renderValue, selectProps = param.selectProps, inputWrapperRef = param.inputWrapperRef, multiselect = param.multiselect, view = param.view, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, isTargetAmount = param.isTargetAmount, onChange = param.onChange,
|
5
|
+
var value = param.value, opened = param.opened, valueToItemMap = param.valueToItemMap, label = param.label, placeholder = param.placeholder, onKeyDown = param.onKeyDown, labelPlacement = param.labelPlacement, size = param.size, contentLeft = param.contentLeft, disabled = param.disabled, readOnly = param.readOnly, renderValue = param.renderValue, selectProps = param.selectProps, inputWrapperRef = param.inputWrapperRef, multiselect = param.multiselect, view = param.view, helperText = param.helperText, treeId = param.treeId, activeDescendantItemValue = param.activeDescendantItemValue, isTargetAmount = param.isTargetAmount, onChange = param.onChange, chipView = param.chipView, separator = param.separator, requiredProps = param.requiredProps, hintProps = param.hintProps;
|
6
6
|
var buttonRef = useForkRef(ref, inputWrapperRef);
|
7
7
|
if (selectProps.renderTarget) {
|
8
8
|
return /*#__PURE__*/ React.createElement("div", {
|
@@ -47,7 +47,6 @@ export var Target = /*#__PURE__*/ forwardRef(function(param, ref) {
|
|
47
47
|
valueToItemMap: valueToItemMap,
|
48
48
|
renderValue: renderValue,
|
49
49
|
onChange: onChange,
|
50
|
-
labelToItemMap: labelToItemMap,
|
51
50
|
chipView: chipView,
|
52
51
|
requiredProps: requiredProps,
|
53
52
|
hintProps: hintProps,
|