@salutejs/plasma-new-hope 0.328.0-canary.2048.15922770814.0 → 0.328.0-canary.2050.15924604410.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.
@@ -196,7 +196,7 @@ var textFieldRoot = function(Root) {
196
196
  hintTrigger, hintTrigger = _param_hintTrigger === void 0 ? 'hover' : _param_hintTrigger, hintText = _param.hintText, _param_hintView = _param.hintView, hintView = _param_hintView === void 0 ? 'default' : _param_hintView, _param_hintSize = _param.hintSize, hintSize = _param_hintSize === void 0 ? 'm' : _param_hintSize, hintTargetIcon = _param.hintTargetIcon, _param_hintTargetPlacement = _param.hintTargetPlacement, hintTargetPlacement = _param_hintTargetPlacement === void 0 ? 'outer' : _param_hintTargetPlacement, _param_hintPlacement = _param.hintPlacement, hintPlacement = _param_hintPlacement === void 0 ? 'auto' : _param_hintPlacement, hintHasArrow = _param.hintHasArrow, _param_hintOffset = _param.hintOffset, hintOffset = _param_hintOffset === void 0 ? HINT_DEFAULT_OFFSET : _param_hintOffset, hintWidth = _param.hintWidth, hintContentLeft = _param.hintContentLeft, // variations
197
197
  view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_clear = _param.clear, clear = _param_clear === void 0 ? false : _param_clear, optional = _param.optional, hasDivider = _param.hasDivider, // controlled
198
198
  outerValue = _param.value, values = _param.chips, _param_chipType = _param.chipType, chipType = _param_chipType === void 0 ? 'default' : _param_chipType, // events
199
- onChange = _param.onChange, onChangeChips = _param.onChangeChips, onSearch = _param.onSearch, onKeyDown = _param.onKeyDown, onFocus = _param.onFocus, onBlur = _param.onBlur, // Пропсы для внутреннего использования, не отдается наружу.
199
+ onChange = _param.onChange, onChangeChips = _param.onChangeChips, onSearch = _param.onSearch, onKeyDown = _param.onKeyDown, onFocus = _param.onFocus, onBlur = _param.onBlur, onPaste = _param.onPaste, // Пропсы для внутреннего использования, не отдается наружу.
200
200
  // @ts-ignore
201
201
  _onEnterDisabled = _param._onEnterDisabled, // @ts-ignore
202
202
  _forceChipManipulationWithReadonly = _param._forceChipManipulationWithReadonly, rest = _object_without_properties(_param, [
@@ -246,6 +246,7 @@ var textFieldRoot = function(Root) {
246
246
  "onKeyDown",
247
247
  "onFocus",
248
248
  "onBlur",
249
+ "onPaste",
249
250
  "_onEnterDisabled",
250
251
  "_forceChipManipulationWithReadonly"
251
252
  ]);
@@ -361,6 +362,23 @@ var textFieldRoot = function(Root) {
361
362
  event.currentTarget.style.width = "".concat(textWidth, "px");
362
363
  }
363
364
  };
365
+ var handlePaste = function(event) {
366
+ if (disabled || readOnly) {
367
+ return;
368
+ }
369
+ if (onPaste) {
370
+ onPaste(event);
371
+ }
372
+ if (hasTextAfter) {
373
+ setTimeout(function() {
374
+ if (!inputRef.current) {
375
+ return;
376
+ }
377
+ var textWidth = (0, _getInputWidth.getInputWidth)(inputRef.current, inputContainerRef.current);
378
+ inputRef.current.style.width = "".concat(textWidth, "px");
379
+ });
380
+ }
381
+ };
364
382
  var updateChips = function(newChips, newValues) {
365
383
  setChips(newChips);
366
384
  onChangeChips === null || onChangeChips === void 0 ? void 0 : onChangeChips(newValues);
@@ -554,6 +572,7 @@ var textFieldRoot = function(Root) {
554
572
  onKeyDown: handleOnKeyDown,
555
573
  onFocus: handleFocus,
556
574
  onBlur: handleBlur,
575
+ onPaste: handlePaste,
557
576
  "data-tour": true
558
577
  }, rest)), hasInnerLabel && /*#__PURE__*/ _react.default.createElement(_TextFieldstyles.Label, {
559
578
  "data-root": true,
@@ -1,3 +1,11 @@
1
+ function _array_like_to_array(arr, len) {
2
+ if (len == null || len > arr.length) len = arr.length;
3
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
+ return arr2;
5
+ }
6
+ function _array_with_holes(arr) {
7
+ if (Array.isArray(arr)) return arr;
8
+ }
1
9
  function _define_property(obj, key, value) {
2
10
  if (key in obj) {
3
11
  Object.defineProperty(obj, key, {
@@ -11,6 +19,33 @@ function _define_property(obj, key, value) {
11
19
  }
12
20
  return obj;
13
21
  }
22
+ function _iterable_to_array_limit(arr, i) {
23
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
24
+ if (_i == null) return;
25
+ var _arr = [];
26
+ var _n = true;
27
+ var _d = false;
28
+ var _s, _e;
29
+ try {
30
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
31
+ _arr.push(_s.value);
32
+ if (i && _arr.length === i) break;
33
+ }
34
+ } catch (err) {
35
+ _d = true;
36
+ _e = err;
37
+ } finally{
38
+ try {
39
+ if (!_n && _i["return"] != null) _i["return"]();
40
+ } finally{
41
+ if (_d) throw _e;
42
+ }
43
+ }
44
+ return _arr;
45
+ }
46
+ function _non_iterable_rest() {
47
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
48
+ }
14
49
  function _object_spread(target) {
15
50
  for(var i = 1; i < arguments.length; i++){
16
51
  var source = arguments[i] != null ? arguments[i] : {};
@@ -53,30 +88,73 @@ function _object_without_properties_loose(source, excluded) {
53
88
  }
54
89
  return target;
55
90
  }
56
- import React, { forwardRef } from "react";
91
+ function _sliced_to_array(arr, i) {
92
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
93
+ }
94
+ function _unsupported_iterable_to_array(o, minLen) {
95
+ if (!o) return;
96
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
97
+ var n = Object.prototype.toString.call(o).slice(8, -1);
98
+ if (n === "Object" && o.constructor) n = o.constructor.name;
99
+ if (n === "Map" || n === "Set") return Array.from(n);
100
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
101
+ }
102
+ import React, { forwardRef, useRef, useState } from "react";
57
103
  import { NumericFormat } from "react-number-format";
104
+ import { useForkRef } from "@salutejs/plasma-core";
58
105
  export var composeNumberFormat = function(InputComponent) {
59
106
  return /*#__PURE__*/ forwardRef(function(_param, outerRef) {
60
- var _param_thousandSeparator = _param.thousandSeparator, thousandSeparator = _param_thousandSeparator === void 0 ? ' ' : _param_thousandSeparator, _param_decimalScale = _param.decimalScale, decimalScale = _param_decimalScale === void 0 ? 3 : _param_decimalScale, _param_decimalSeparator = _param.decimalSeparator, decimalSeparator = _param_decimalSeparator === void 0 ? '.' : _param_decimalSeparator, onChange = _param.onChange, rest = _object_without_properties(_param, [
107
+ var _param_thousandSeparator = _param.thousandSeparator, thousandSeparator = _param_thousandSeparator === void 0 ? ' ' : _param_thousandSeparator, _param_decimalScale = _param.decimalScale, decimalScale = _param_decimalScale === void 0 ? 3 : _param_decimalScale, _param_decimalSeparator = _param.decimalSeparator, decimalSeparator = _param_decimalSeparator === void 0 ? '.' : _param_decimalSeparator, disabled = _param.disabled, value = _param.value, onChange = _param.onChange, onPaste = _param.onPaste, rest = _object_without_properties(_param, [
61
108
  "thousandSeparator",
62
109
  "decimalScale",
63
110
  "decimalSeparator",
64
- "onChange"
111
+ "disabled",
112
+ "value",
113
+ "onChange",
114
+ "onPaste"
65
115
  ]);
116
+ var inputRef = useRef(null);
117
+ var inputForkRef = useForkRef(inputRef, outerRef);
118
+ var _useState = _sliced_to_array(useState(value), 2), innerValue = _useState[0], setInnerValue = _useState[1];
66
119
  var handleChangeValue = function(values, sourceInfo) {
67
120
  if (onChange) {
68
121
  var changeEvent = sourceInfo.event;
122
+ setInnerValue(values.value);
69
123
  onChange(changeEvent, values);
70
124
  }
71
125
  };
126
+ var handlePaste = function(event) {
127
+ if (disabled) {
128
+ return;
129
+ }
130
+ if (decimalSeparator !== '.' && inputRef.current) {
131
+ if (!Number.isNaN(Number(event.clipboardData.getData('text/plain')))) {
132
+ event.preventDefault();
133
+ var pastedValue = event.clipboardData.getData('text/plain').replace('.', decimalSeparator);
134
+ var input = event.target;
135
+ var startPos = input.selectionStart || 0;
136
+ var newCursorPos = startPos + pastedValue.length;
137
+ setInnerValue(pastedValue);
138
+ setTimeout(function() {
139
+ var _inputRef_current;
140
+ (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : _inputRef_current.setSelectionRange(newCursorPos, newCursorPos);
141
+ }, 10);
142
+ }
143
+ }
144
+ if (onPaste) {
145
+ onPaste(event);
146
+ }
147
+ };
72
148
  return /*#__PURE__*/ React.createElement(NumericFormat, _object_spread({
149
+ value: innerValue,
73
150
  thousandSeparator: thousandSeparator,
74
151
  decimalScale: decimalScale,
75
152
  decimalSeparator: decimalSeparator,
76
153
  customInput: InputComponent,
77
- getInputRef: outerRef,
154
+ getInputRef: inputForkRef,
78
155
  _textEllipsisDisable: true,
79
- onValueChange: handleChangeValue
156
+ onValueChange: handleChangeValue,
157
+ onPaste: handlePaste
80
158
  }, rest));
81
159
  });
82
160
  };
@@ -134,7 +134,7 @@ export var textFieldRoot = function(Root) {
134
134
  hintTrigger, hintTrigger = _param_hintTrigger === void 0 ? 'hover' : _param_hintTrigger, hintText = _param.hintText, _param_hintView = _param.hintView, hintView = _param_hintView === void 0 ? 'default' : _param_hintView, _param_hintSize = _param.hintSize, hintSize = _param_hintSize === void 0 ? 'm' : _param_hintSize, hintTargetIcon = _param.hintTargetIcon, _param_hintTargetPlacement = _param.hintTargetPlacement, hintTargetPlacement = _param_hintTargetPlacement === void 0 ? 'outer' : _param_hintTargetPlacement, _param_hintPlacement = _param.hintPlacement, hintPlacement = _param_hintPlacement === void 0 ? 'auto' : _param_hintPlacement, hintHasArrow = _param.hintHasArrow, _param_hintOffset = _param.hintOffset, hintOffset = _param_hintOffset === void 0 ? HINT_DEFAULT_OFFSET : _param_hintOffset, hintWidth = _param.hintWidth, hintContentLeft = _param.hintContentLeft, // variations
135
135
  view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_clear = _param.clear, clear = _param_clear === void 0 ? false : _param_clear, optional = _param.optional, hasDivider = _param.hasDivider, // controlled
136
136
  outerValue = _param.value, values = _param.chips, _param_chipType = _param.chipType, chipType = _param_chipType === void 0 ? 'default' : _param_chipType, // events
137
- onChange = _param.onChange, onChangeChips = _param.onChangeChips, onSearch = _param.onSearch, onKeyDown = _param.onKeyDown, onFocus = _param.onFocus, onBlur = _param.onBlur, // Пропсы для внутреннего использования, не отдается наружу.
137
+ onChange = _param.onChange, onChangeChips = _param.onChangeChips, onSearch = _param.onSearch, onKeyDown = _param.onKeyDown, onFocus = _param.onFocus, onBlur = _param.onBlur, onPaste = _param.onPaste, // Пропсы для внутреннего использования, не отдается наружу.
138
138
  // @ts-ignore
139
139
  _onEnterDisabled = _param._onEnterDisabled, // @ts-ignore
140
140
  _forceChipManipulationWithReadonly = _param._forceChipManipulationWithReadonly, rest = _object_without_properties(_param, [
@@ -184,6 +184,7 @@ export var textFieldRoot = function(Root) {
184
184
  "onKeyDown",
185
185
  "onFocus",
186
186
  "onBlur",
187
+ "onPaste",
187
188
  "_onEnterDisabled",
188
189
  "_forceChipManipulationWithReadonly"
189
190
  ]);
@@ -299,6 +300,23 @@ export var textFieldRoot = function(Root) {
299
300
  event.currentTarget.style.width = "".concat(textWidth, "px");
300
301
  }
301
302
  };
303
+ var handlePaste = function(event) {
304
+ if (disabled || readOnly) {
305
+ return;
306
+ }
307
+ if (onPaste) {
308
+ onPaste(event);
309
+ }
310
+ if (hasTextAfter) {
311
+ setTimeout(function() {
312
+ if (!inputRef.current) {
313
+ return;
314
+ }
315
+ var textWidth = getInputWidth(inputRef.current, inputContainerRef.current);
316
+ inputRef.current.style.width = "".concat(textWidth, "px");
317
+ });
318
+ }
319
+ };
302
320
  var updateChips = function(newChips, newValues) {
303
321
  setChips(newChips);
304
322
  onChangeChips === null || onChangeChips === void 0 ? void 0 : onChangeChips(newValues);
@@ -492,6 +510,7 @@ export var textFieldRoot = function(Root) {
492
510
  onKeyDown: handleOnKeyDown,
493
511
  onFocus: handleFocus,
494
512
  onBlur: handleBlur,
513
+ onPaste: handlePaste,
495
514
  "data-tour": true
496
515
  }, rest)), hasInnerLabel && /*#__PURE__*/ React.createElement(Label, {
497
516
  "data-root": true,
@@ -1 +1 @@
1
- {"version":3,"file":"NumberFormat.d.ts","sourceRoot":"","sources":["../../../src/components/NumberFormat/NumberFormat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,qBAAqB,CAAC;AAE1E,OAAO,KAAK,EAER,wBAAwB,EACxB,0BAA0B,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,0BAA0B,kBAAkB,EAAE,CAAC,CAAC,CAAC;;;;;;;;;qBAyBgyB,CAAC,uCAAuC,CAAC;mGADv6B,CAAC"}
1
+ {"version":3,"file":"NumberFormat.d.ts","sourceRoot":"","sources":["../../../src/components/NumberFormat/NumberFormat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,EAAE,EAAkB,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,qBAAqB,CAAC;AAG1E,OAAO,KAAK,EAER,wBAAwB,EACxB,0BAA0B,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,0BAA0B,kBAAkB,EAAE,CAAC,CAAC,CAAC;;;;;;;;;qBA6CzC,CAAC,uCAC/B,CAAtB;mGAyBD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/components/TextField/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAKvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAuC,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAuCjH,eAAO,MAAM,IAAI,0CAGhB,CAAC;AAIF,eAAO,MAAM,aAAa,SAAU,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,4FA+f5E,CAAC;AAEN,eAAO,MAAM,eAAe;;;mBAjgBQ,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0iBhF,CAAC"}
1
+ {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/components/TextField/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAYvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAuC,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAuCjH,eAAO,MAAM,IAAI,0CAGhB,CAAC;AAIF,eAAO,MAAM,aAAa,SAAU,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,4FAshB5E,CAAC;AAEN,eAAO,MAAM,eAAe;;;mBAxhBQ,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAikBhF,CAAC"}