@invoicebox/ui 0.1.0-alpha.278 → 0.1.0-alpha.281

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.
Files changed (28) hide show
  1. package/dist/components/form/Autocomplete/components/Autocomplete/index.d.ts +1 -0
  2. package/dist/components/form/Autocomplete/components/Autocomplete/index.js +40 -6
  3. package/dist/components/form/CurrencyInput/CoreCurrencyInput/index.d.ts +1 -0
  4. package/dist/components/form/CurrencyInput/CoreCurrencyInput/index.js +44 -14
  5. package/dist/components/form/DateInput/index.d.ts +1 -0
  6. package/dist/components/form/DateInput/index.js +39 -5
  7. package/dist/components/form/DateTimeInput/index.d.ts +1 -0
  8. package/dist/components/form/DateTimeInput/index.js +40 -6
  9. package/dist/components/form/InputLabel/index.d.ts +1 -0
  10. package/dist/components/form/InputLabel/index.js +6 -3
  11. package/dist/components/form/InputLabel/palette.d.ts +1 -0
  12. package/dist/components/form/InputLabel/palette.js +2 -1
  13. package/dist/components/form/InputLabel/styles.d.ts +2 -0
  14. package/dist/components/form/InputLabel/styles.js +20 -16
  15. package/dist/components/form/PhoneInput/index.d.ts +1 -1
  16. package/dist/components/form/PhoneInput/index.js +41 -5
  17. package/dist/components/form/PhoneInput/styles.js +1 -1
  18. package/dist/components/form/PositiveIntegerInput/index.d.ts +1 -1
  19. package/dist/components/form/PositiveIntegerInput/index.js +39 -4
  20. package/dist/components/form/SearchInput/index.d.ts +2 -0
  21. package/dist/components/form/SearchInput/index.js +36 -5
  22. package/dist/components/form/SearchInput/styles.d.ts +1 -0
  23. package/dist/components/form/SearchInput/styles.js +7 -4
  24. package/dist/components/form/Select/components/Input/index.js +2 -2
  25. package/dist/components/form/TextInput/index.d.ts +2 -2
  26. package/dist/components/form/TextInput/index.js +39 -5
  27. package/dist/components/form/constants.js +3 -3
  28. package/package.json +1 -1
@@ -27,6 +27,7 @@ type TControlProps = {
27
27
  required?: boolean;
28
28
  usePadding?: boolean;
29
29
  dropdownWidth?: string;
30
+ useModernStyles?: boolean;
30
31
  };
31
32
  export type TProps = TFieldProps & TControlProps;
32
33
  export declare const Autocomplete: React.ForwardRefExoticComponent<Pick<React.InputHTMLAttributes<HTMLInputElement>, "name" | "readOnly" | "autoFocus" | "onFocus" | "onBlur"> & {
@@ -62,7 +62,9 @@ var Autocomplete = exports.Autocomplete = /*#__PURE__*/(0, _react.forwardRef)(fu
62
62
  readOnly = _ref.readOnly,
63
63
  _ref$usePadding = _ref.usePadding,
64
64
  usePadding = _ref$usePadding === void 0 ? false : _ref$usePadding,
65
- dropdownWidth = _ref.dropdownWidth;
65
+ dropdownWidth = _ref.dropdownWidth,
66
+ _ref$useModernStyles = _ref.useModernStyles,
67
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
66
68
  var isMobile = (0, _useMedia.useMobile)();
67
69
  var _useState = (0, _react.useState)(false),
68
70
  _useState2 = _slicedToArray(_useState, 2),
@@ -96,13 +98,44 @@ var Autocomplete = exports.Autocomplete = /*#__PURE__*/(0, _react.forwardRef)(fu
96
98
  handleOpen();
97
99
  handleFocus(event);
98
100
  }, [handleOpen, handleFocus]);
101
+ var inputLabel = (0, _react.useMemo)(function () {
102
+ if (useModernStyles) {
103
+ if (value || isOpen) {
104
+ return label;
105
+ } else {
106
+ return undefined;
107
+ }
108
+ } else {
109
+ return label;
110
+ }
111
+ }, [isOpen, label, value, useModernStyles]);
112
+ var paddingOptions = (0, _react.useMemo)(function () {
113
+ if ((value || isOpen) && useModernStyles && inputLabel) {
114
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
115
+ } else {
116
+ return _constants.SIZE_PARAMS_MAP[size];
117
+ }
118
+ }, [value, isOpen, useModernStyles, size, inputLabel]);
119
+ var inputPlaceholder = (0, _react.useMemo)(function () {
120
+ if (useModernStyles) {
121
+ if (!isOpen) {
122
+ return placeholder;
123
+ } else {
124
+ return undefined;
125
+ }
126
+ } else {
127
+ return placeholder;
128
+ }
129
+ }, [isOpen, placeholder, useModernStyles]);
99
130
  return /*#__PURE__*/_react["default"].createElement(S.Wrapper, {
100
131
  ref: wrapperRef
101
132
  }, /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
102
133
  inFocus: inFocus,
103
- label: label,
134
+ label: inputLabel,
104
135
  disabled: disabled,
105
- required: required
136
+ required: required,
137
+ useModernStyles: useModernStyles,
138
+ size: size
106
139
  }, /*#__PURE__*/_react["default"].createElement(S.InputLabelContent, null, children ? /*#__PURE__*/_react["default"].createElement(S.ChildrenWrapper, null, children) : null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
107
140
  ref: ref,
108
141
  hasError: hasError,
@@ -112,14 +145,15 @@ var Autocomplete = exports.Autocomplete = /*#__PURE__*/(0, _react.forwardRef)(fu
112
145
  onFocus: handleInputFocus,
113
146
  onBlur: handleBlur,
114
147
  name: name,
115
- placeholder: placeholder,
148
+ placeholder: inputPlaceholder,
116
149
  disabled: disabled,
117
150
  paddingLeft: inputPaddingLeft,
118
151
  maxLength: inputMaxLength,
119
152
  isOnlyNumbers: isInputOnlyNumbers,
120
153
  autoFocus: autoFocus,
121
- readOnly: readOnly
122
- }, _constants.SIZE_PARAMS_MAP[size])))), /*#__PURE__*/_react["default"].createElement(_Dropdown.Dropdown, {
154
+ readOnly: readOnly,
155
+ useModernStyles: useModernStyles
156
+ }, paddingOptions)))), /*#__PURE__*/_react["default"].createElement(_Dropdown.Dropdown, {
123
157
  isOpen: isOpen && (!!options.length || !!isLoading),
124
158
  isAutoPosition: true,
125
159
  width: dropdownWidth || '100%',
@@ -7,5 +7,6 @@ export type TProps = Pick<CurrencyInputProps, 'allowNegativeValue' | 'onValueCha
7
7
  required?: boolean;
8
8
  } & {
9
9
  size?: TSizes;
10
+ useModernStyles?: boolean;
10
11
  };
11
12
  export declare const CoreCurrencyInput: FC<TProps>;
@@ -1,16 +1,18 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.CoreCurrencyInput = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
8
9
  var _InputLabel = require("../../InputLabel");
9
10
  var _useInputFocus2 = require("../../../../hooks/useInputFocus");
10
11
  var _styles = require("./styles");
11
12
  var _constants = require("../../constants");
12
13
  var _palette = require("../../../../palette");
13
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
14
16
  var CoreCurrencyInput = exports.CoreCurrencyInput = function CoreCurrencyInput(_ref) {
15
17
  var label = _ref.label,
16
18
  _ref$size = _ref.size,
@@ -26,30 +28,56 @@ var CoreCurrencyInput = exports.CoreCurrencyInput = function CoreCurrencyInput(_
26
28
  allowDecimals = _ref$allowDecimals === void 0 ? true : _ref$allowDecimals,
27
29
  disabled = _ref.disabled,
28
30
  _ref$required = _ref.required,
29
- required = _ref$required === void 0 ? false : _ref$required;
31
+ required = _ref$required === void 0 ? false : _ref$required,
32
+ _ref$useModernStyles = _ref.useModernStyles,
33
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
30
34
  var _useInputFocus = (0, _useInputFocus2.useInputFocus)(),
31
35
  inFocus = _useInputFocus.inFocus,
32
36
  handleFocus = _useInputFocus.handleFocus,
33
37
  handleBlur = _useInputFocus.handleBlur;
34
38
  var palette = (0, _palette.useComponentPalette)('pureInput');
35
- var _SIZE_PARAMS_MAP$size = _constants.SIZE_PARAMS_MAP[size],
36
- paddingBottom = _SIZE_PARAMS_MAP$size.paddingBottom,
37
- paddingTop = _SIZE_PARAMS_MAP$size.paddingTop,
38
- variant = _SIZE_PARAMS_MAP$size.variant;
39
+ var inputLabel = (0, _react.useMemo)(function () {
40
+ if (useModernStyles) {
41
+ if (value || inFocus) {
42
+ return label;
43
+ } else {
44
+ return undefined;
45
+ }
46
+ } else {
47
+ return label;
48
+ }
49
+ }, [useModernStyles, value, inFocus, label]);
50
+ var paddingOptions = (0, _react.useMemo)(function () {
51
+ if ((value || inFocus) && useModernStyles && inputLabel) {
52
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
53
+ } else {
54
+ return _constants.SIZE_PARAMS_MAP[size];
55
+ }
56
+ }, [value, useModernStyles, size, inFocus, inputLabel]);
57
+ var inputPlaceholder = (0, _react.useMemo)(function () {
58
+ if (useModernStyles) {
59
+ if (!inFocus) {
60
+ return label;
61
+ }
62
+ }
63
+ return undefined;
64
+ }, [inFocus, label, useModernStyles]);
39
65
  return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
40
66
  inFocus: inFocus,
41
- label: label,
67
+ label: inputLabel,
42
68
  disabled: disabled,
43
- required: required
69
+ required: required,
70
+ useModernStyles: useModernStyles,
71
+ size: size
44
72
  }, /*#__PURE__*/_react["default"].createElement(_styles.StyledCurrencyInputFromLibrary, {
45
73
  $palette: palette,
46
- $hasBorder: true,
74
+ $hasBorder: !useModernStyles,
47
75
  $paddingLeft: 18,
48
76
  $paddingRight: 18,
49
77
  $borderRadius: 10,
50
- $variant: variant,
51
- $paddingTop: paddingTop,
52
- $paddingBottom: paddingBottom,
78
+ $variant: paddingOptions.variant,
79
+ $paddingTop: paddingOptions.paddingTop,
80
+ $paddingBottom: paddingOptions.paddingBottom,
53
81
  $hasError: hasError,
54
82
  $inFocus: inFocus,
55
83
  onBlur: handleBlur,
@@ -65,6 +93,8 @@ var CoreCurrencyInput = exports.CoreCurrencyInput = function CoreCurrencyInput(_
65
93
  decimalSeparator: ',',
66
94
  groupSeparator: ' ',
67
95
  disabled: disabled,
68
- disableAbbreviations: true
96
+ disableAbbreviations: true,
97
+ $useModernStyles: useModernStyles,
98
+ placeholder: inputPlaceholder
69
99
  }));
70
100
  };
@@ -9,6 +9,7 @@ export type TProps = {
9
9
  onChange: (value: Date) => void;
10
10
  placeholder?: string;
11
11
  dropdownProps?: Pick<TDropdownProps, 'isAutoPosition' | 'positionLeft' | 'positionRight' | 'positionVertical'>;
12
+ useModernStyles?: boolean;
12
13
  } & Pick<TPureInputProps, 'hasError' | 'name' | 'onBlur' | 'onFocus'> & Pick<TInputLabelProps, 'label'> & Pick<TCalendarProps, 'maxDate' | 'minDate'> & {
13
14
  size?: TSizes;
14
15
  };
@@ -42,7 +42,9 @@ var DateInput = exports.DateInput = function DateInput(_ref) {
42
42
  _ref$size = _ref.size,
43
43
  size = _ref$size === void 0 ? 'M' : _ref$size,
44
44
  dropdownProps = _ref.dropdownProps,
45
- placeholder = _ref.placeholder;
45
+ placeholder = _ref.placeholder,
46
+ _ref$useModernStyles = _ref.useModernStyles,
47
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
46
48
  var palette = (0, _palette.useComponentPalette)('dateInput');
47
49
  var inputRef = (0, _react.useRef)(null);
48
50
  var isMobile = (0, _index.useMobile)();
@@ -98,24 +100,56 @@ var DateInput = exports.DateInput = function DateInput(_ref) {
98
100
  setStringValue(_logic.logic.valueToString(newValue, false));
99
101
  onChange(newValue);
100
102
  }, [handleClose, onChange]);
103
+ var inputLabel = (0, _react.useMemo)(function () {
104
+ if (useModernStyles) {
105
+ if (stringValue || isOpen) {
106
+ return label;
107
+ } else {
108
+ return undefined;
109
+ }
110
+ } else {
111
+ return label;
112
+ }
113
+ }, [isOpen, label, stringValue, useModernStyles]);
114
+ var paddingOptions = (0, _react.useMemo)(function () {
115
+ if ((stringValue || isOpen) && useModernStyles && inputLabel) {
116
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
117
+ } else {
118
+ return _constants.SIZE_PARAMS_MAP[size];
119
+ }
120
+ }, [stringValue, isOpen, useModernStyles, size, inputLabel]);
121
+ var inputPlaceholder = (0, _react.useMemo)(function () {
122
+ if (useModernStyles) {
123
+ if (!isOpen) {
124
+ return placeholder || _logic.logic.getPlaceholder();
125
+ } else {
126
+ return undefined;
127
+ }
128
+ } else {
129
+ return placeholder || _logic.logic.getPlaceholder();
130
+ }
131
+ }, [isOpen, placeholder, useModernStyles]);
101
132
  return /*#__PURE__*/_react["default"].createElement(S.Wrapper, {
102
133
  ref: isMobile ? undefined : elRef
103
134
  }, /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
104
135
  inFocus: inFocus,
105
- label: label
136
+ label: inputLabel,
137
+ useModernStyles: useModernStyles,
138
+ size: size
106
139
  }, /*#__PURE__*/_react["default"].createElement(S.InputWrapper, null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
107
140
  onClick: handleTrigger,
108
141
  ref: inputRef,
109
142
  hasError: hasError,
110
143
  inFocus: inFocus,
111
144
  name: name,
112
- placeholder: placeholder || _logic.logic.getPlaceholder(),
145
+ placeholder: inputPlaceholder,
113
146
  onFocus: handleFocus,
114
147
  onBlur: handleBlur,
115
148
  value: stringValue,
116
149
  onChange: handleStringValueChange,
117
- paddingRight: 44
118
- }, _constants.SIZE_PARAMS_MAP[size])), /*#__PURE__*/_react["default"].createElement(S.Icon, {
150
+ paddingRight: 44,
151
+ useModernStyles: useModernStyles
152
+ }, paddingOptions)), /*#__PURE__*/_react["default"].createElement(S.Icon, {
119
153
  onClick: handleTrigger,
120
154
  $palette: palette
121
155
  }, /*#__PURE__*/_react["default"].createElement(_CalendarIcon.CalendarIcon, null)))), isMobile ? /*#__PURE__*/_react["default"].createElement(_MobileDrawerDateCalendar.MobileDrawerDateCalendar, {
@@ -12,6 +12,7 @@ export type TProps = {
12
12
  saveLabel?: string;
13
13
  cancelLabel?: string;
14
14
  required?: boolean;
15
+ useModernStyles?: boolean;
15
16
  } & Pick<TPureInputProps, 'hasError' | 'name' | 'onBlur' | 'onFocus'> & Pick<TInputLabelProps, 'label'> & Pick<TCalendarProps, 'maxDate' | 'minDate'> & {
16
17
  size?: TSizes;
17
18
  };
@@ -48,7 +48,9 @@ var DateTimeInput = exports.DateTimeInput = function DateTimeInput(_ref) {
48
48
  saveLabel = _ref.saveLabel,
49
49
  cancelLabel = _ref.cancelLabel,
50
50
  _ref$required = _ref.required,
51
- required = _ref$required === void 0 ? false : _ref$required;
51
+ required = _ref$required === void 0 ? false : _ref$required,
52
+ _ref$useModernStyles = _ref.useModernStyles,
53
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
52
54
  var palette = (0, _palette.useComponentPalette)('dateTimeInput');
53
55
  var inputRef = (0, _react.useRef)(null);
54
56
  var isMobile = (0, _index.useMobile)();
@@ -127,25 +129,57 @@ var DateTimeInput = exports.DateTimeInput = function DateTimeInput(_ref) {
127
129
  }, [calendarDropdownValue, handleClose, maxDate, minDate, onChange, setStringValue, value, withTime]);
128
130
  var maxTime = calendarDropdownValue && maxDate && calendarDropdownValue.getFullYear() === maxDate.getFullYear() && calendarDropdownValue.getMonth() === maxDate.getMonth() && calendarDropdownValue.getDate() === maxDate.getDate() ? [maxDate.getHours(), maxDate.getMinutes()] : undefined;
129
131
  var minTime = calendarDropdownValue && minDate && calendarDropdownValue.getFullYear() === minDate.getFullYear() && calendarDropdownValue.getMonth() === minDate.getMonth() && calendarDropdownValue.getDate() === minDate.getDate() ? [minDate.getHours(), minDate.getMinutes()] : undefined;
132
+ var inputLabel = (0, _react.useMemo)(function () {
133
+ if (useModernStyles) {
134
+ if (stringValue || isOpen) {
135
+ return label;
136
+ } else {
137
+ return undefined;
138
+ }
139
+ } else {
140
+ return label;
141
+ }
142
+ }, [isOpen, label, stringValue, useModernStyles]);
143
+ var paddingOptions = (0, _react.useMemo)(function () {
144
+ if ((stringValue || isOpen) && useModernStyles && inputLabel) {
145
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
146
+ } else {
147
+ return _constants.SIZE_PARAMS_MAP[size];
148
+ }
149
+ }, [stringValue, isOpen, useModernStyles, size, inputLabel]);
150
+ var inputPlaceholder = (0, _react.useMemo)(function () {
151
+ if (useModernStyles) {
152
+ if (!isOpen) {
153
+ return placeholder || _logic.logic.getPlaceholder(withTime);
154
+ } else {
155
+ return undefined;
156
+ }
157
+ } else {
158
+ return placeholder || _logic.logic.getPlaceholder(withTime);
159
+ }
160
+ }, [isOpen, placeholder, useModernStyles, withTime]);
130
161
  return /*#__PURE__*/_react["default"].createElement(S.Wrapper, {
131
162
  ref: isMobile ? undefined : elRef
132
163
  }, /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
133
164
  inFocus: inFocus,
134
- label: label,
135
- required: required
165
+ label: inputLabel,
166
+ required: required,
167
+ useModernStyles: useModernStyles,
168
+ size: size
136
169
  }, /*#__PURE__*/_react["default"].createElement(S.InputWrapper, null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
137
170
  onClick: handleTrigger,
138
171
  ref: inputRef,
139
172
  hasError: hasError,
140
173
  inFocus: inFocus,
141
174
  name: name,
142
- placeholder: placeholder || _logic.logic.getPlaceholder(withTime),
175
+ placeholder: inputPlaceholder,
143
176
  onFocus: focusHandler,
144
177
  onBlur: handleBlur,
145
178
  value: stringValue,
146
179
  onChange: handleStringValueChange,
147
- paddingRight: 44
148
- }, _constants.SIZE_PARAMS_MAP[size])), /*#__PURE__*/_react["default"].createElement(S.Icon, {
180
+ paddingRight: 44,
181
+ useModernStyles: useModernStyles
182
+ }, paddingOptions)), /*#__PURE__*/_react["default"].createElement(S.Icon, {
149
183
  onClick: handleTrigger,
150
184
  $color: palette.icon
151
185
  }, /*#__PURE__*/_react["default"].createElement(_CalendarIcon.CalendarIcon, null)))), !isMobile ? /*#__PURE__*/_react["default"].createElement(_Dropdown.Dropdown, _extends({
@@ -8,5 +8,6 @@ export type TProps = {
8
8
  children: ReactNode;
9
9
  useModernStyles?: boolean;
10
10
  size?: TSizes;
11
+ left?: number;
11
12
  };
12
13
  export declare const InputLabel: FC<TProps>;
@@ -23,18 +23,21 @@ var InputLabel = exports.InputLabel = function InputLabel(_ref) {
23
23
  required = _ref$required === void 0 ? false : _ref$required,
24
24
  _ref$useModernStyles = _ref.useModernStyles,
25
25
  useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles,
26
- size = _ref.size;
26
+ size = _ref.size,
27
+ left = _ref.left;
27
28
  var palette = (0, _palette.useComponentPalette)('inputLabel');
28
29
  return /*#__PURE__*/_react["default"].createElement(S.Wrapper, {
29
30
  $palette: palette,
30
31
  $disabled: disabled,
31
- $isLabel: !!label
32
+ $isLabel: !!label,
33
+ $useModernStyles: useModernStyles
32
34
  }, label && /*#__PURE__*/_react["default"].createElement(S.Label, {
33
35
  $palette: palette,
34
36
  $inFocus: inFocus,
35
37
  variant: size && useModernStyles ? _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size].labelVariant : 'captionRegular',
36
38
  $required: required,
37
39
  $useModernStyles: useModernStyles,
38
- $paddingTop: size && useModernStyles ? _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size].labelPaddingTop : 0
40
+ $paddingTop: size && useModernStyles ? _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size].labelPaddingTop : 0,
41
+ $left: left
39
42
  }, label), children);
40
43
  };
@@ -4,5 +4,6 @@ export type TInputLabelPalette = {
4
4
  text: string;
5
5
  textHighlight: string;
6
6
  error: string;
7
+ bgModern: string;
7
8
  };
8
9
  export declare const generateInputLabelPalette: (abstractPalette: TAbstractPalette) => TInputLabelPalette;
@@ -9,6 +9,7 @@ var generateInputLabelPalette = exports.generateInputLabelPalette = function gen
9
9
  bg: abstractPalette.base,
10
10
  text: abstractPalette.neutralBrutal,
11
11
  textHighlight: abstractPalette.primary,
12
- error: abstractPalette.error
12
+ error: abstractPalette.error,
13
+ bgModern: abstractPalette.neutralLight
13
14
  };
14
15
  };
@@ -6,9 +6,11 @@ export declare const Label: import("styled-components/dist/types").IStyledCompon
6
6
  $required?: boolean | undefined;
7
7
  $useModernStyles?: boolean | undefined;
8
8
  $paddingTop?: number | undefined;
9
+ $left?: number | undefined;
9
10
  }>> & string & Omit<import("react").FC<import("../../common/Typography").TTypographyProps>, keyof import("react").Component<any, {}, any>>;
10
11
  export declare const Wrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
11
12
  $disabled: boolean;
12
13
  $isLabel: boolean;
13
14
  $palette: TInputLabelPalette;
15
+ $useModernStyles?: boolean | undefined;
14
16
  }>> & string;
@@ -12,20 +12,23 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
12
12
  var Label = exports.Label = (0, _styledComponents["default"])(_Typography.Typography).withConfig({
13
13
  displayName: "styles__Label",
14
14
  componentId: "sc-1prrc3p-0"
15
- })(["border-radius:10px;position:absolute;top:", ";left:10px;background-color:", ";padding:0 10px;z-index:2;transition:color 0.2s ease-in-out 0s;color:", ";", ""], function (_ref) {
15
+ })(["border-radius:10px;position:absolute;top:", ";left:", ";background-color:", ";padding:0 10px;z-index:2;transition:color 0.2s ease-in-out 0s;color:", ";", ""], function (_ref) {
16
16
  var $paddingTop = _ref.$paddingTop;
17
17
  return $paddingTop ? "".concat($paddingTop, "px") : 0;
18
18
  }, function (_ref2) {
19
- var $palette = _ref2.$palette,
20
- $useModernStyles = _ref2.$useModernStyles;
21
- return $useModernStyles ? 'transparent' : $palette.bg;
19
+ var $left = _ref2.$left;
20
+ return $left ? "".concat($left, "px") : '10px';
22
21
  }, function (_ref3) {
23
- var $inFocus = _ref3.$inFocus,
24
- $palette = _ref3.$palette;
25
- return $inFocus ? $palette.textHighlight : $palette.text;
22
+ var $palette = _ref3.$palette,
23
+ $useModernStyles = _ref3.$useModernStyles;
24
+ return $useModernStyles ? $palette.bgModern : $palette.bg;
26
25
  }, function (_ref4) {
27
- var $required = _ref4.$required,
26
+ var $inFocus = _ref4.$inFocus,
28
27
  $palette = _ref4.$palette;
28
+ return $inFocus ? $palette.textHighlight : $palette.text;
29
+ }, function (_ref5) {
30
+ var $required = _ref5.$required,
31
+ $palette = _ref5.$palette;
29
32
  return $required && (0, _styledComponents.css)(["&::after{content:\" *\";color:", ";"], function () {
30
33
  return $palette.error;
31
34
  });
@@ -33,14 +36,15 @@ var Label = exports.Label = (0, _styledComponents["default"])(_Typography.Typogr
33
36
  var Wrapper = exports.Wrapper = _styledComponents["default"].div.withConfig({
34
37
  displayName: "styles__Wrapper",
35
38
  componentId: "sc-1prrc3p-1"
36
- })(["position:relative;padding-top:", "px;width:100%;opacity:", ";&:hover ", "{", ";}"], function (_ref5) {
37
- var $isLabel = _ref5.$isLabel;
38
- return $isLabel ? 10 : 0;
39
- }, function (_ref6) {
40
- var $disabled = _ref6.$disabled;
39
+ })(["position:relative;padding-top:", "px;width:100%;opacity:", ";&:hover ", "{", ";}"], function (_ref6) {
40
+ var $isLabel = _ref6.$isLabel,
41
+ $useModernStyles = _ref6.$useModernStyles;
42
+ return $isLabel || $useModernStyles ? 10 : 0;
43
+ }, function (_ref7) {
44
+ var $disabled = _ref7.$disabled;
41
45
  return $disabled ? 0.5 : 1;
42
- }, Label, function (_ref7) {
43
- var $disabled = _ref7.$disabled,
44
- $palette = _ref7.$palette;
46
+ }, Label, function (_ref8) {
47
+ var $disabled = _ref8.$disabled,
48
+ $palette = _ref8.$palette;
45
49
  return !$disabled && (0, _styledComponents.css)(["color:", ";"], $palette.textHighlight);
46
50
  });
@@ -8,7 +8,7 @@ type TFieldProps = Pick<TPureInputProps, 'name' | 'onBlur' | 'onFocus'> & {
8
8
  onChange: (value: string) => void;
9
9
  hasError?: boolean;
10
10
  };
11
- type TControlProps = Pick<TPureInputProps, 'disabled' | 'id' | 'autoFocus'> & {
11
+ type TControlProps = Pick<TPureInputProps, 'disabled' | 'id' | 'autoFocus' | 'useModernStyles'> & {
12
12
  label: string;
13
13
  countrySelectProps?: Pick<TCountrySelectProps, 'selectedLabel' | 'placeholder'>;
14
14
  onCountryChange?: (countryCode: string) => void;
@@ -49,7 +49,9 @@ var PhoneInput = exports.PhoneInput = function PhoneInput(_ref) {
49
49
  _ref$isInnerErrorHigh = _ref.isInnerErrorHighlight,
50
50
  isInnerErrorHighlight = _ref$isInnerErrorHigh === void 0 ? true : _ref$isInnerErrorHigh,
51
51
  _ref$required = _ref.required,
52
- required = _ref$required === void 0 ? false : _ref$required;
52
+ required = _ref$required === void 0 ? false : _ref$required,
53
+ _ref$useModernStyles = _ref.useModernStyles,
54
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
53
55
  var inputRef = (0, _react.useRef)();
54
56
  var isMobile = (0, _useMedia.useMobile)();
55
57
  var phoneInputLogic = (0, _react.useMemo)(function () {
@@ -161,11 +163,43 @@ var PhoneInput = exports.PhoneInput = function PhoneInput(_ref) {
161
163
  if (isInnerErrorHighlight) return isHaveInputError;
162
164
  return false;
163
165
  }, [hasError, isFirstBlur, isHaveInputError, isInnerErrorHighlight]);
166
+ var inputLabel = (0, _react.useMemo)(function () {
167
+ if (useModernStyles) {
168
+ if (inputValue || inFocus) {
169
+ return label;
170
+ } else {
171
+ return undefined;
172
+ }
173
+ } else {
174
+ return label;
175
+ }
176
+ }, [useModernStyles, inputValue, inFocus, label]);
177
+ var paddingOptions = (0, _react.useMemo)(function () {
178
+ if ((inputValue || inFocus) && useModernStyles && inputLabel) {
179
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
180
+ } else {
181
+ return _constants.SIZE_PARAMS_MAP[size];
182
+ }
183
+ }, [inputValue, useModernStyles, size, inFocus, inputLabel]);
184
+ var inputPlaceholder = (0, _react.useMemo)(function () {
185
+ if (useModernStyles) {
186
+ if (!inFocus) {
187
+ return label || currentCountriesPhoneRules[country].placeholder;
188
+ } else {
189
+ return undefined;
190
+ }
191
+ } else {
192
+ return currentCountriesPhoneRules[country].placeholder;
193
+ }
194
+ }, [country, currentCountriesPhoneRules, inFocus, label, useModernStyles]);
164
195
  return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
165
196
  inFocus: inFocus,
166
- label: label,
197
+ label: inputLabel,
167
198
  disabled: disabled,
168
- required: required
199
+ required: required,
200
+ useModernStyles: useModernStyles,
201
+ size: size,
202
+ left: 65
169
203
  }, /*#__PURE__*/_react["default"].createElement(S.InputLabelContent, null, !!(countrySelectOptions !== null && countrySelectOptions !== void 0 && countrySelectOptions.length) && /*#__PURE__*/_react["default"].createElement(S.InputLabelFloatWrapper, null, /*#__PURE__*/_react["default"].createElement(S.CountrySelectWrapper, null, /*#__PURE__*/_react["default"].createElement(_CountrySelect.CountrySelect, {
170
204
  minWidth: isMobile ? '100%' : '350px',
171
205
  options: countrySelectOptions,
@@ -186,7 +220,7 @@ var PhoneInput = exports.PhoneInput = function PhoneInput(_ref) {
186
220
  maskPlaceholder: null,
187
221
  disabled: disabled,
188
222
  onPaste: handlePaste,
189
- placeholder: currentCountriesPhoneRules[country].placeholder,
223
+ placeholder: inputPlaceholder,
190
224
  ref: inputRef
191
225
  }, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
192
226
  id: id,
@@ -199,5 +233,7 @@ var PhoneInput = exports.PhoneInput = function PhoneInput(_ref) {
199
233
  autoComplete: 'new-password',
200
234
  inputMode: "numeric",
201
235
  autoFocus: autoFocus
202
- }, _constants.SIZE_PARAMS_MAP[size], pureInputProps)))));
236
+ }, paddingOptions, {
237
+ useModernStyles: useModernStyles
238
+ }, pureInputProps)))));
203
239
  };
@@ -9,7 +9,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default":
9
9
  var CountrySelectWrapper = exports.CountrySelectWrapper = _styledComponents["default"].div.withConfig({
10
10
  displayName: "styles__CountrySelectWrapper",
11
11
  componentId: "sc-pqm10s-0"
12
- })(["padding-left:20px;width:100%;"]);
12
+ })(["padding-left:16px;width:100%;"]);
13
13
  var InputLabelContent = exports.InputLabelContent = _styledComponents["default"].div.withConfig({
14
14
  displayName: "styles__InputLabelContent",
15
15
  componentId: "sc-pqm10s-1"
@@ -7,7 +7,7 @@ export type TProps = {
7
7
  onChange: (value: number | null) => void;
8
8
  max?: number;
9
9
  upAndDown?: boolean;
10
- } & Pick<TInputLabelProps, 'label'> & Pick<TPureInputProps, 'placeholder' | 'hasError' | 'onFocus' | 'onBlur' | 'disabled' | 'name'> & {
10
+ } & Pick<TInputLabelProps, 'label'> & Pick<TPureInputProps, 'placeholder' | 'hasError' | 'onFocus' | 'onBlur' | 'disabled' | 'name' | 'useModernStyles'> & {
11
11
  size?: TSizes;
12
12
  };
13
13
  export declare const PositiveIntegerInput: FC<TProps>;
@@ -33,7 +33,9 @@ var PositiveIntegerInput = exports.PositiveIntegerInput = function PositiveInteg
33
33
  onBlur = _ref.onBlur,
34
34
  name = _ref.name,
35
35
  _ref$size = _ref.size,
36
- size = _ref$size === void 0 ? 'M' : _ref$size;
36
+ size = _ref$size === void 0 ? 'M' : _ref$size,
37
+ _ref$useModernStyles = _ref.useModernStyles,
38
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
37
39
  var _useInputFocus = (0, _useInputFocus2.useInputFocus)({
38
40
  onFocus: onFocus,
39
41
  onBlur: onBlur
@@ -69,20 +71,53 @@ var PositiveIntegerInput = exports.PositiveIntegerInput = function PositiveInteg
69
71
  var handleDown = (0, _react.useCallback)(function () {
70
72
  onChange(decrement(value));
71
73
  }, [decrement, value, onChange]);
74
+ var inputPlaceholder = (0, _react.useMemo)(function () {
75
+ if (useModernStyles) {
76
+ if (!inFocus) {
77
+ return placeholder;
78
+ } else {
79
+ return undefined;
80
+ }
81
+ } else {
82
+ return placeholder;
83
+ }
84
+ }, [placeholder, useModernStyles, inFocus]);
85
+ var inputLabel = (0, _react.useMemo)(function () {
86
+ if (useModernStyles) {
87
+ if (value || inFocus) {
88
+ return label;
89
+ } else {
90
+ return undefined;
91
+ }
92
+ } else {
93
+ return label;
94
+ }
95
+ }, [inFocus, label, value, useModernStyles]);
96
+ var paddingOptions = (0, _react.useMemo)(function () {
97
+ if ((value || inFocus) && useModernStyles && inputLabel) {
98
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
99
+ } else {
100
+ return _constants.SIZE_PARAMS_MAP[size];
101
+ }
102
+ }, [value, inFocus, useModernStyles, size, inputLabel]);
72
103
  return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
73
104
  inFocus: inFocus,
74
- label: label
105
+ label: inputLabel,
106
+ useModernStyles: useModernStyles,
107
+ size: size
75
108
  }, /*#__PURE__*/_react["default"].createElement(S.ControlWrapper, null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
76
109
  name: name,
77
110
  hasError: hasError,
78
111
  inFocus: inFocus,
79
- placeholder: placeholder,
112
+ placeholder: inputPlaceholder,
80
113
  onFocus: handleFocus,
81
114
  onBlur: handleBlur,
82
115
  value: normalizeFrom(value),
83
116
  onChange: handleChange,
84
117
  paddingRight: upAndDown ? 44 : undefined
85
- }, _constants.SIZE_PARAMS_MAP[size])), upAndDown && /*#__PURE__*/_react["default"].createElement(S.Arrows, null, /*#__PURE__*/_react["default"].createElement(S.Arrow, {
118
+ }, paddingOptions, {
119
+ useModernStyles: useModernStyles
120
+ })), upAndDown && /*#__PURE__*/_react["default"].createElement(S.Arrows, null, /*#__PURE__*/_react["default"].createElement(S.Arrow, {
86
121
  onClick: handleUp,
87
122
  $disabled: isIncrementDisabled
88
123
  }, /*#__PURE__*/_react["default"].createElement(_Arrow.Arrow, {
@@ -5,9 +5,11 @@ export type TProps = Pick<PureInputProps, 'placeholder' | 'hasBorder' | 'autoFoc
5
5
  value: string;
6
6
  onChange: (value: string) => void;
7
7
  size?: TSizes;
8
+ useModernStyles?: boolean;
8
9
  };
9
10
  export declare const SearchInput: React.ForwardRefExoticComponent<Pick<PureInputProps, "name" | "maxLength" | "placeholder" | "autoFocus" | "onFocus" | "onBlur" | "hasBorder" | "isOnlyNumbers"> & {
10
11
  value: string;
11
12
  onChange: (value: string) => void;
12
13
  size?: TSizes | undefined;
14
+ useModernStyles?: boolean | undefined;
13
15
  } & React.RefAttributes<HTMLInputElement>>;
@@ -29,7 +29,9 @@ var SearchInput = exports.SearchInput = /*#__PURE__*/(0, _react.forwardRef)(func
29
29
  isOnlyNumbers = _ref.isOnlyNumbers,
30
30
  maxLength = _ref.maxLength,
31
31
  _ref$size = _ref.size,
32
- size = _ref$size === void 0 ? 'M' : _ref$size;
32
+ size = _ref$size === void 0 ? 'M' : _ref$size,
33
+ _ref$useModernStyles = _ref.useModernStyles,
34
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
33
35
  var _useInputFocus = (0, _useInputFocus2.useInputFocus)({
34
36
  onFocus: onFocus,
35
37
  onBlur: onBlur
@@ -44,12 +46,38 @@ var SearchInput = exports.SearchInput = /*#__PURE__*/(0, _react.forwardRef)(func
44
46
  var handleInputChange = (0, _react.useCallback)(function (event) {
45
47
  onChange(event.target.value);
46
48
  }, [onChange]);
47
- return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
49
+ var inputPlaceholder = (0, _react.useMemo)(function () {
50
+ if (useModernStyles) {
51
+ if (!inFocus) {
52
+ return placeholder;
53
+ } else {
54
+ return undefined;
55
+ }
56
+ } else {
57
+ return placeholder;
58
+ }
59
+ }, [placeholder, useModernStyles, inFocus]);
60
+ var inputLabel = (0, _react.useMemo)(function () {
61
+ if (useModernStyles) {
62
+ if (value || inFocus) {
63
+ return placeholder;
64
+ } else {
65
+ return undefined;
66
+ }
67
+ } else {
68
+ return placeholder;
69
+ }
70
+ }, [inFocus, placeholder, value, useModernStyles]);
71
+ return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
72
+ useModernStyles: useModernStyles,
73
+ size: size,
74
+ label: inputLabel
75
+ }, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
48
76
  ref: ref,
49
77
  paddingRight: 56,
50
78
  hasBorder: hasBorder,
51
79
  onChange: handleInputChange,
52
- placeholder: placeholder,
80
+ placeholder: inputPlaceholder,
53
81
  value: value,
54
82
  onFocus: handleFocus,
55
83
  onBlur: handleBlur,
@@ -58,9 +86,12 @@ var SearchInput = exports.SearchInput = /*#__PURE__*/(0, _react.forwardRef)(func
58
86
  name: name,
59
87
  maxLength: maxLength,
60
88
  isOnlyNumbers: isOnlyNumbers
61
- }, _constants.SIZE_PARAMS_MAP[size])), /*#__PURE__*/_react["default"].createElement(S.IconWrapper, {
89
+ }, _constants.SIZE_PARAMS_MAP[size], {
90
+ useModernStyles: useModernStyles
91
+ })), /*#__PURE__*/_react["default"].createElement(S.IconWrapper, {
62
92
  $inFocus: inFocus,
63
- $palette: palette
93
+ $palette: palette,
94
+ $wideBottomSpacing: useModernStyles || !!inputLabel
64
95
  }, value ? /*#__PURE__*/_react["default"].createElement(_ResetButton.ResetButton, {
65
96
  onClick: handleInputReset
66
97
  }) : /*#__PURE__*/_react["default"].createElement(_SearchIcon.SearchIcon, null)));
@@ -3,4 +3,5 @@ import { TSearchInputPalette } from './palette';
3
3
  export declare const IconWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {
4
4
  $inFocus: boolean;
5
5
  $palette: TSearchInputPalette;
6
+ $wideBottomSpacing: boolean;
6
7
  }>> & string;
@@ -9,10 +9,13 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default":
9
9
  var IconWrapper = exports.IconWrapper = _styledComponents["default"].span.withConfig({
10
10
  displayName: "styles__IconWrapper",
11
11
  componentId: "sc-1cx3n6g-0"
12
- })(["position:absolute;right:20px;bottom:50%;transform:translateY(50%);display:flex;align-content:center;justify-content:center;opacity:", ";transition:all 0.2s ease-in-out 0s;color:", ";"], function (_ref) {
13
- var $inFocus = _ref.$inFocus;
14
- return $inFocus ? 1 : 0.5;
12
+ })(["position:absolute;right:20px;bottom:", ";transform:translateY(50%);display:flex;align-content:center;justify-content:center;opacity:", ";transition:all 0.2s ease-in-out 0s;color:", ";"], function (_ref) {
13
+ var $wideBottomSpacing = _ref.$wideBottomSpacing;
14
+ return $wideBottomSpacing ? "calc(50% - 5px)" : '50%';
15
15
  }, function (_ref2) {
16
- var $palette = _ref2.$palette;
16
+ var $inFocus = _ref2.$inFocus;
17
+ return $inFocus ? 1 : 0.5;
18
+ }, function (_ref3) {
19
+ var $palette = _ref3.$palette;
17
20
  return $palette.icon;
18
21
  });
@@ -35,12 +35,12 @@ var Input = exports.Input = /*#__PURE__*/(0, _react.forwardRef)(function (_ref,
35
35
  useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles;
36
36
  var isShowResetIcon = !!value && !!onReset;
37
37
  var paddingOptions = (0, _react.useMemo)(function () {
38
- if (value && useModernStyles) {
38
+ if ((value || isOpen) && useModernStyles && label) {
39
39
  return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
40
40
  } else {
41
41
  return _constants.SIZE_PARAMS_MAP[size];
42
42
  }
43
- }, [size, value, useModernStyles]);
43
+ }, [value, isOpen, useModernStyles, size, label]);
44
44
  return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
45
45
  inFocus: inFocus,
46
46
  label: label,
@@ -2,7 +2,7 @@ import React, { ReactNode } from 'react';
2
2
  import { TProps as TInputLabelProps } from '../InputLabel';
3
3
  import { TProps as TPureInputProps } from '../PureInput';
4
4
  import { TSizes } from '../constants';
5
- export type TProps = Pick<TInputLabelProps, 'label' | 'required'> & Pick<TPureInputProps, 'placeholder' | 'hasError' | 'onFocus' | 'onBlur' | 'disabled' | 'name' | 'paddingRight' | 'type' | 'isOnlyNumbers' | 'autoFocus' | 'rows' | 'id'> & {
5
+ export type TProps = Pick<TInputLabelProps, 'label' | 'required'> & Pick<TPureInputProps, 'placeholder' | 'hasError' | 'onFocus' | 'onBlur' | 'disabled' | 'name' | 'paddingRight' | 'type' | 'isOnlyNumbers' | 'autoFocus' | 'rows' | 'id' | 'useModernStyles'> & {
6
6
  value: string;
7
7
  onChange: (value: string) => void;
8
8
  maxLength?: number;
@@ -11,7 +11,7 @@ export type TProps = Pick<TInputLabelProps, 'label' | 'required'> & Pick<TPureIn
11
11
  element?: 'input' | 'textarea';
12
12
  required?: boolean;
13
13
  };
14
- export declare const TextInput: React.ForwardRefExoticComponent<Pick<TInputLabelProps, "required" | "label"> & Pick<TPureInputProps, "type" | "id" | "name" | "paddingRight" | "disabled" | "placeholder" | "rows" | "autoFocus" | "onFocus" | "onBlur" | "hasError" | "isOnlyNumbers"> & {
14
+ export declare const TextInput: React.ForwardRefExoticComponent<Pick<TInputLabelProps, "required" | "label"> & Pick<TPureInputProps, "type" | "id" | "name" | "paddingRight" | "disabled" | "placeholder" | "rows" | "autoFocus" | "onFocus" | "onBlur" | "useModernStyles" | "hasError" | "isOnlyNumbers"> & {
15
15
  value: string;
16
16
  onChange: (value: string) => void;
17
17
  maxLength?: number | undefined;
@@ -38,6 +38,8 @@ var TextInput = exports.TextInput = /*#__PURE__*/_react["default"].forwardRef(fu
38
38
  rows = _ref.rows,
39
39
  _ref$required = _ref.required,
40
40
  required = _ref$required === void 0 ? false : _ref$required,
41
+ _ref$useModernStyles = _ref.useModernStyles,
42
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles,
41
43
  id = _ref.id;
42
44
  var _useInputFocus = (0, _useInputFocus2.useInputFocus)({
43
45
  onFocus: onFocus,
@@ -49,11 +51,42 @@ var TextInput = exports.TextInput = /*#__PURE__*/_react["default"].forwardRef(fu
49
51
  var handleChange = (0, _react.useCallback)(function (event) {
50
52
  onChange(event.target.value.slice(0, maxLength !== null && maxLength !== void 0 ? maxLength : Infinity));
51
53
  }, [onChange, maxLength]);
54
+ var inputLabel = (0, _react.useMemo)(function () {
55
+ if (useModernStyles) {
56
+ if (value || inFocus) {
57
+ return label;
58
+ } else {
59
+ return undefined;
60
+ }
61
+ } else {
62
+ return label;
63
+ }
64
+ }, [inFocus, label, value, useModernStyles]);
65
+ var paddingOptions = (0, _react.useMemo)(function () {
66
+ if ((value || inFocus) && useModernStyles && inputLabel) {
67
+ return _constants.MODERN_STYLE_SIZE_PARAMS_MAP[size];
68
+ } else {
69
+ return _constants.SIZE_PARAMS_MAP[size];
70
+ }
71
+ }, [value, inFocus, useModernStyles, size, inputLabel]);
72
+ var inputPlaceholder = (0, _react.useMemo)(function () {
73
+ if (useModernStyles) {
74
+ if (!inFocus) {
75
+ return placeholder;
76
+ } else {
77
+ return undefined;
78
+ }
79
+ } else {
80
+ return placeholder;
81
+ }
82
+ }, [inFocus, placeholder, useModernStyles]);
52
83
  return /*#__PURE__*/_react["default"].createElement(_InputLabel.InputLabel, {
53
84
  inFocus: inFocus,
54
- label: label,
85
+ label: inputLabel,
55
86
  disabled: disabled,
56
- required: required
87
+ required: required,
88
+ size: size,
89
+ useModernStyles: useModernStyles
57
90
  }, /*#__PURE__*/_react["default"].createElement(S.InputLabelContent, null, /*#__PURE__*/_react["default"].createElement(_PureInput.PureInput, _extends({
58
91
  id: id,
59
92
  ref: ref,
@@ -65,13 +98,14 @@ var TextInput = exports.TextInput = /*#__PURE__*/_react["default"].forwardRef(fu
65
98
  onBlur: handleBlur,
66
99
  value: value,
67
100
  onChange: handleChange,
68
- placeholder: placeholder,
101
+ placeholder: inputPlaceholder,
69
102
  paddingRight: paddingRight,
70
103
  type: type,
71
104
  isOnlyNumbers: isOnlyNumbers,
72
105
  autoFocus: autoFocus,
73
106
  element: element,
74
- rows: rows
75
- }, _constants.SIZE_PARAMS_MAP[size])), children && /*#__PURE__*/_react["default"].createElement(S.ChildrenWrapper, null, children)));
107
+ rows: rows,
108
+ useModernStyles: useModernStyles
109
+ }, paddingOptions)), children && /*#__PURE__*/_react["default"].createElement(S.ChildrenWrapper, null, children)));
76
110
  });
77
111
  TextInput.displayName = 'TextInput';
@@ -30,17 +30,17 @@ var MODERN_STYLE_SIZE_PARAMS_MAP = exports.MODERN_STYLE_SIZE_PARAMS_MAP = {
30
30
  labelPaddingTop: 14
31
31
  },
32
32
  M: {
33
- paddingTop: 16,
33
+ paddingTop: 20,
34
34
  paddingBottom: 6,
35
35
  variant: 'bodyMRegular',
36
36
  labelVariant: 'captionRegular',
37
37
  labelPaddingTop: 12
38
38
  },
39
39
  XS: {
40
- paddingTop: 12,
40
+ paddingTop: 16,
41
41
  paddingBottom: 4,
42
42
  variant: 'labelsHintsRegular',
43
43
  labelVariant: 'captionSRegular',
44
- labelPaddingTop: 10
44
+ labelPaddingTop: 12
45
45
  }
46
46
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@invoicebox/ui",
3
- "version": "0.1.0-alpha.278",
3
+ "version": "0.1.0-alpha.281",
4
4
  "description": "Invoicebox UI",
5
5
  "license": "Apache License 2.0",
6
6
  "scripts": {