@bigbinary/neetoui 6.8.0 → 6.8.1-beta

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/dist/Input.js CHANGED
@@ -121,6 +121,7 @@ var Input = /*#__PURE__*/forwardRef(function (_ref, ref) {
121
121
  "neeto-ui-input__max-length--error": maxLengthError
122
122
  })
123
123
  }, valueLength, "/", maxLength)), /*#__PURE__*/React__default.createElement("div", {
124
+ "data-cy": "".concat(hyphenize(label), "-input"),
124
125
  className: classnames("neeto-ui-input", {
125
126
  "neeto-ui-input--naked": !!nakedInput,
126
127
  "neeto-ui-input--error": !!error,
package/dist/Input.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../src/components/Input.jsx"],"sourcesContent":["import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { replace } from \"ramda\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleRegexChange = e => {\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n e.target.value = replace(globalRegex, \"\", e.target.value);\n onChange(e);\n };\n\n const handleChange = rejectCharsRegex ? handleRegexChange : onChange;\n\n const handleTrimmedChangeOnBlur = e => {\n if (disableTrimOnBlur || typeof value !== \"string\") return;\n\n const trimmedValue = value.trim();\n if (value === trimmedValue) return;\n\n e.target.value = trimmedValue;\n handleChange(e);\n };\n\n const handleOnBlur = e => {\n handleTrimmedChangeOnBlur(e);\n onBlur?.(e);\n };\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-cy={`${hyphenize(label)}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_otherProps$value","_ref$size","size","_ref$type","type","_ref$label","label","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","rejectCharsRegex","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","value","_useState2","_slicedToArray","valueInternal","setValueInternal","id","useId","errorId","concat","helpTextId","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleRegexChange","globalRegex","RegExp","replace","handleChange","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","_defineProperty","_objectSpread","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sources":["../src/components/Input.jsx"],"sourcesContent":["import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { replace } from \"ramda\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleRegexChange = e => {\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n e.target.value = replace(globalRegex, \"\", e.target.value);\n onChange(e);\n };\n\n const handleChange = rejectCharsRegex ? handleRegexChange : onChange;\n\n const handleTrimmedChangeOnBlur = e => {\n if (disableTrimOnBlur || typeof value !== \"string\") return;\n\n const trimmedValue = value.trim();\n if (value === trimmedValue) return;\n\n e.target.value = trimmedValue;\n handleChange(e);\n };\n\n const handleOnBlur = e => {\n handleTrimmedChangeOnBlur(e);\n onBlur?.(e);\n };\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n data-cy={`${hyphenize(label)}-input`}\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-cy={`${hyphenize(label)}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_otherProps$value","_ref$size","size","_ref$type","type","_ref$label","label","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","rejectCharsRegex","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","value","_useState2","_slicedToArray","valueInternal","setValueInternal","id","useId","errorId","concat","helpTextId","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleRegexChange","globalRegex","RegExp","replace","handleChange","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","_defineProperty","_objectSpread","displayName"],"mappings":"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"}
@@ -3,7 +3,7 @@ import _extends from '@babel/runtime/helpers/extends';
3
3
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
4
4
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
6
- import React__default, { forwardRef, useState } from 'react';
6
+ import React__default, { useRef, useEffect, forwardRef, useState } from 'react';
7
7
  import classnames from 'classnames';
8
8
  import { assoc, pluck, mergeLeft, isEmpty } from 'ramda';
9
9
  import { c as components, C as CreatableSelect } from './react-select-creatable.esm-ad71b0c0.js';
@@ -65,8 +65,33 @@ var STYLES = {
65
65
  var CustomControl = function CustomControl(_ref) {
66
66
  var children = _ref.children,
67
67
  props = _objectWithoutProperties(_ref, _excluded$1);
68
- var prefix = props.selectProps.prefix;
69
- return /*#__PURE__*/React__default.createElement(components.Control, props, prefix && /*#__PURE__*/React__default.createElement("div", {
68
+ var getValue = props.getValue;
69
+ var _props$selectProps = props.selectProps,
70
+ isFocused = _props$selectProps.isFocused,
71
+ prefix = _props$selectProps.prefix;
72
+ var prevValue = useRef([]);
73
+ var controlRef = useRef(null);
74
+ var value = getValue();
75
+ var scrollToBottom = function scrollToBottom() {
76
+ var scrollContainer = controlRef.current;
77
+ if (!scrollContainer) return;
78
+ var scrollHeight = scrollContainer.scrollHeight,
79
+ clientHeight = scrollContainer.clientHeight;
80
+ scrollContainer.scrollTo({
81
+ top: scrollHeight - clientHeight
82
+ });
83
+ };
84
+ useEffect(function () {
85
+ var isItemAdded = value.length > prevValue.current.length;
86
+ var isItemDeleted = value.length < prevValue.current.length;
87
+ if (isFocused && !isItemDeleted || isItemAdded) scrollToBottom();
88
+ prevValue.current = value;
89
+ }, [isFocused, value]);
90
+ return /*#__PURE__*/React__default.createElement(components.Control, _extends({}, props, {
91
+ innerProps: _objectSpread$1(_objectSpread$1({}, props.innerProps), {}, {
92
+ ref: controlRef
93
+ })
94
+ }), prefix && /*#__PURE__*/React__default.createElement("div", {
70
95
  className: "neeto-ui-email-input__prefix"
71
96
  }, prefix), children);
72
97
  };
@@ -87,14 +112,15 @@ var CustomValueContainer = function CustomValueContainer(_ref2) {
87
112
  var children = _ref2.children,
88
113
  props = _objectWithoutProperties(_ref2, _excluded2);
89
114
  var getValue = props.getValue,
90
- _props$selectProps = props.selectProps,
91
- isFocused = _props$selectProps.isFocused,
92
- visibleEmailsCount = _props$selectProps.visibleEmailsCount;
115
+ _props$selectProps2 = props.selectProps,
116
+ isFocused = _props$selectProps2.isFocused,
117
+ visibleEmailsCount = _props$selectProps2.visibleEmailsCount,
118
+ isAlwaysExpanded = _props$selectProps2.isAlwaysExpanded;
93
119
  var value = getValue();
94
120
  var _children = _toArray(children),
95
121
  firstChild = _children[0],
96
122
  rest = _children.slice(1);
97
- var shouldCollapse = !isFocused && value.length > visibleEmailsCount;
123
+ var shouldCollapse = !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;
98
124
  return /*#__PURE__*/React__default.createElement(components.ValueContainer, _extends({}, props, {
99
125
  innerProps: _objectSpread$1(_objectSpread$1({}, props.innerProps), {}, _defineProperty({}, "data-cy", "multi-email-input-container"))
100
126
  }), shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild, shouldCollapse && /*#__PURE__*/React__default.createElement(Tag, {
@@ -117,7 +143,13 @@ var SelectContainer = function SelectContainer(props) {
117
143
  };
118
144
  var Input = function Input(props) {
119
145
  return /*#__PURE__*/React__default.createElement(components.Input, _extends({}, props, {
120
- "data-cy": "email-select-input-field"
146
+ "data-cy": "email-select-input-field",
147
+ onPaste: function onPaste(e) {
148
+ var clipboardData = e.clipboardData.getData("Text");
149
+ setTimeout(function () {
150
+ return props.selectProps.handleEmailChange(clipboardData);
151
+ });
152
+ }
121
153
  }));
122
154
  };
123
155
  var EMAIL_REGEX = new RegExp("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}$", "i");
@@ -169,7 +201,7 @@ var renderDefaultText = function renderDefaultText(count) {
169
201
  return count === 1 ? "email" : "emails";
170
202
  };
171
203
 
172
- var _excluded = ["label", "placeholder", "helpText", "value", "onChange", "error", "onBlur", "filterInvalidEmails", "counter", "disabled", "maxHeight", "required", "labelProps", "visibleEmailsCount", "isCreateable"];
204
+ var _excluded = ["label", "placeholder", "helpText", "value", "onChange", "error", "onBlur", "filterInvalidEmails", "counter", "disabled", "maxHeight", "required", "labelProps", "visibleEmailsCount", "isCreateable", "isAlwaysExpanded"];
173
205
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
174
206
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
175
207
  var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
@@ -200,6 +232,8 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
200
232
  visibleEmailsCount = _ref$visibleEmailsCou === void 0 ? 3 : _ref$visibleEmailsCou,
201
233
  _ref$isCreateable = _ref.isCreateable,
202
234
  isCreateable = _ref$isCreateable === void 0 ? true : _ref$isCreateable,
235
+ _ref$isAlwaysExpanded = _ref.isAlwaysExpanded,
236
+ isAlwaysExpanded = _ref$isAlwaysExpanded === void 0 ? false : _ref$isAlwaysExpanded,
203
237
  otherProps = _objectWithoutProperties(_ref, _excluded);
204
238
  var _useState = useState(""),
205
239
  _useState2 = _slicedToArray(_useState, 2),
@@ -214,7 +248,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
214
248
  var handleFilterEmails = function handleFilterEmails() {
215
249
  return onChange(renderValidEmails(value));
216
250
  };
217
- var handleEmailChange = function handleEmailChange() {
251
+ var handleEmailChange = function handleEmailChange(inputValue) {
218
252
  var inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);
219
253
  var emailMatches = inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];
220
254
  var emails = emailMatches.map(function (email) {
@@ -228,7 +262,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
228
262
  switch (event.key) {
229
263
  case "Enter":
230
264
  {
231
- handleEmailChange();
265
+ handleEmailChange(inputValue);
232
266
  !isOptionsPresent && event.preventDefault();
233
267
  event.stopPropagation();
234
268
  return;
@@ -237,7 +271,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
237
271
  case ",":
238
272
  case " ":
239
273
  {
240
- handleEmailChange();
274
+ handleEmailChange(inputValue);
241
275
  event.preventDefault();
242
276
  event.stopPropagation();
243
277
  }
@@ -250,7 +284,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
250
284
  otherProps === null || otherProps === void 0 || (_otherProps$onCreateO = otherProps.onCreateOption) === null || _otherProps$onCreateO === void 0 || _otherProps$onCreateO.call(otherProps, input);
251
285
  };
252
286
  var handleBlur = function handleBlur(event) {
253
- inputValue ? handleEmailChange() : onBlur(event);
287
+ inputValue ? handleEmailChange(inputValue) : onBlur(event);
254
288
  setIsFocused(false);
255
289
  };
256
290
  var overrideProps = {};
@@ -305,7 +339,9 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
305
339
  },
306
340
  onKeyDown: handleKeyDown
307
341
  }, _objectSpread(_objectSpread(_objectSpread({
342
+ handleEmailChange: handleEmailChange,
308
343
  inputValue: inputValue,
344
+ isAlwaysExpanded: isAlwaysExpanded,
309
345
  isFocused: isFocused,
310
346
  onChange: onChange,
311
347
  placeholder: placeholder,
@@ -1 +1 @@
1
- {"version":3,"file":"MultiEmailInput.js","sources":["../src/components/MultiEmailInput/constants.jsx","../src/components/MultiEmailInput/utils.js","../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { prefix } = props.selectProps;\n\n return (\n <components.Control {...props}>\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse = !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{ ...props.innerProps, [\"data-cy\"]: \"clear-all-button\" }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => (\n <components.Input {...props} data-cy=\"email-select-input-field\" />\n);\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nexport const formatEmailInputOptions = label => ({\n label,\n value: label,\n valid: EMAIL_REGEX.test(label),\n});\n\nexport const pruneDuplicates = inputValues => {\n const values = pluck(\"value\", inputValues);\n const uniqueValues = [...new Set(values)];\n\n return uniqueValues.map(email => formatEmailInputOptions(email));\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n formatEmailInputOptions,\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = () => {\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => formatEmailInputOptions(email));\n onChange(pruneDuplicates([...value, ...emails]));\n setInputValue(\"\");\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange();\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange();\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const email = formatEmailInputOptions(input);\n onChange(pruneDuplicates([...value, email]));\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange() : onBlur(event);\n setIsFocused(false);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onInputChange={inputValue => setInputValue(inputValue)}\n onKeyDown={handleKeyDown}\n {...{\n inputValue,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n &nbsp;\n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","prefix","selectProps","React","createElement","components","Control","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_extends","innerProps","_objectSpread","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","getValue","_props$selectProps","isFocused","visibleEmailsCount","value","_children","_toArray","firstChild","rest","slice","shouldCollapse","length","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","EMAIL_REGEX","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","formatEmailInputOptions","test","pruneDuplicates","inputValues","values","pluck","uniqueValues","_toConsumableArray","Set","map","email","renderValidEmails","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","ref","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","isCounterVisible","startsFrom","isOptionsPresent","options","handleFilterEmails","handleEmailChange","match","emailMatches","emails","handleKeyDown","event","key","preventDefault","stopPropagation","onCreateOption","_otherProps$onCreateO","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","option","toLowerCase","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","classnames","control","mergeLeft","overflowY","onFocus","onInputChange","onKeyDown","menuIsOpen","onClick","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"MultiEmailInput.js","sources":["../src/components/MultiEmailInput/constants.jsx","../src/components/MultiEmailInput/utils.js","../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { getValue } = props;\n const { isFocused, prefix } = props.selectProps;\n\n const prevValue = useRef([]);\n const controlRef = useRef(null);\n\n const value = getValue();\n\n const scrollToBottom = () => {\n const scrollContainer = controlRef.current;\n if (!scrollContainer) return;\n\n const { scrollHeight, clientHeight } = scrollContainer;\n\n scrollContainer.scrollTo({ top: scrollHeight - clientHeight });\n };\n\n useEffect(() => {\n const isItemAdded = value.length > prevValue.current.length;\n const isItemDeleted = value.length < prevValue.current.length;\n\n if ((isFocused && !isItemDeleted) || isItemAdded) scrollToBottom();\n\n prevValue.current = value;\n }, [isFocused, value]);\n\n return (\n <components.Control\n {...props}\n innerProps={{ ...props.innerProps, ref: controlRef }}\n >\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount, isAlwaysExpanded },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse =\n !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"clear-all-button\",\n }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => (\n <components.Input\n {...props}\n data-cy=\"email-select-input-field\"\n onPaste={e => {\n const clipboardData = e.clipboardData.getData(\"Text\");\n\n setTimeout(() => props.selectProps.handleEmailChange(clipboardData));\n }}\n />\n);\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nexport const formatEmailInputOptions = label => ({\n label,\n value: label,\n valid: EMAIL_REGEX.test(label),\n});\n\nexport const pruneDuplicates = inputValues => {\n const values = pluck(\"value\", inputValues);\n const uniqueValues = [...new Set(values)];\n\n return uniqueValues.map(email => formatEmailInputOptions(email));\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n formatEmailInputOptions,\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n isAlwaysExpanded = false,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = inputValue => {\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => formatEmailInputOptions(email));\n onChange(pruneDuplicates([...value, ...emails]));\n setInputValue(\"\");\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange(inputValue);\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange(inputValue);\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const email = formatEmailInputOptions(input);\n onChange(pruneDuplicates([...value, email]));\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange(inputValue) : onBlur(event);\n setIsFocused(false);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onInputChange={inputValue => setInputValue(inputValue)}\n onKeyDown={handleKeyDown}\n {...{\n handleEmailChange,\n inputValue,\n isAlwaysExpanded,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n &nbsp;\n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n /**\n * To specify whether the input field should always be shown in an expanded state or not.\n */\n isAlwaysExpanded: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","getValue","_props$selectProps","selectProps","isFocused","prefix","prevValue","useRef","controlRef","value","scrollToBottom","scrollContainer","current","scrollHeight","clientHeight","scrollTo","top","useEffect","isItemAdded","length","isItemDeleted","React","createElement","components","Control","_extends","innerProps","_objectSpread","ref","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","_props$selectProps2","visibleEmailsCount","isAlwaysExpanded","_children","_toArray","firstChild","rest","slice","shouldCollapse","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","onPaste","e","clipboardData","getData","setTimeout","handleEmailChange","EMAIL_REGEX","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","formatEmailInputOptions","test","pruneDuplicates","inputValues","values","pluck","uniqueValues","_toConsumableArray","Set","map","email","renderValidEmails","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","_ref$isAlwaysExpanded","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","isCounterVisible","startsFrom","isOptionsPresent","options","handleFilterEmails","match","emailMatches","emails","handleKeyDown","event","key","preventDefault","stopPropagation","onCreateOption","_otherProps$onCreateO","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","option","toLowerCase","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","classnames","control","mergeLeft","overflowY","onFocus","onInputChange","onKeyDown","menuIsOpen","onClick","displayName"],"mappings":"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"}
package/dist/Slider.js CHANGED
@@ -31,8 +31,6 @@ import 'dayjs/plugin/weekOfYear';
31
31
  import '@bigbinary/neeto-cist';
32
32
  import 'ramda';
33
33
 
34
- var NEETO_UI_PRIMARY_500 = "#4558f9";
35
-
36
34
  var _excluded = ["min", "max", "defaultValue", "onChange", "value", "label", "required", "labelProps", "error", "helpText"];
37
35
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
38
36
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -87,14 +85,8 @@ var Slider = function Slider(_ref) {
87
85
  htmlFor: id
88
86
  }, labelProps), label)), /*#__PURE__*/React__default.createElement(_Slider, _extends({
89
87
  className: "neeto-ui-w-full",
90
- handleStyle: {
91
- backgroundColor: NEETO_UI_PRIMARY_500
92
- },
93
88
  tooltip: {
94
89
  formatter: null
95
- },
96
- trackStyle: {
97
- backgroundColor: NEETO_UI_PRIMARY_500
98
90
  }
99
91
  }, _objectSpread(_objectSpread({
100
92
  defaultValue: defaultValue,
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","sources":["../src/components/Slider/constants.js","../src/components/Slider/index.jsx"],"sourcesContent":["export const NEETO_UI_PRIMARY_500 = \"#4558f9\";\n","import React from \"react\";\n\nimport { Slider as AntdSlider, ConfigProvider } from \"antd\";\nimport PropTypes from \"prop-types\";\n\nimport Label from \"components/Label\";\nimport { useId } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, hyphenize, noop } from \"utils\";\n\nimport { NEETO_UI_PRIMARY_500 } from \"./constants\";\n\nconst Slider = ({\n min = 0,\n max = 100,\n defaultValue = 0,\n onChange = noop,\n value = undefined,\n label,\n required = false,\n labelProps = {},\n error,\n helpText,\n ...otherProps\n}) => {\n const id = useId(otherProps.id);\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n return (\n <ConfigProvider\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Slider: {\n dotActiveBorderColor: \"rgb(var(--neeto-ui-primary-500))\",\n dotBorderColor: \"rgb(var(--neeto-ui-gray-500))\",\n handleActiveColor: \"rgb(var(--neeto-ui-primary-600))\",\n handleColor: \"rgb(var(--neeto-ui-primary-500))\",\n railBg: \"rgb(var(--neeto-ui-gray-200))\",\n railHoverBg: \"rgb(var(--neeto-ui-gray-300))\",\n trackBg: \"rgb(var(--neeto-ui-primary-500))\",\n trackBgDisabled: \"rgb(var(--neeto-ui-gray-100))\",\n trackHoverBg: \"rgb(var(--neeto-ui-primary-600))\",\n\n // Global overrides\n colorFillContentHover: \"rgb(var(--neeto-ui-gray-600))\",\n },\n },\n }}\n >\n <div className=\"neeto-ui-input__wrapper\">\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-slider-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n </div>\n <AntdSlider\n className=\"neeto-ui-w-full\"\n handleStyle={{ backgroundColor: NEETO_UI_PRIMARY_500 }}\n tooltip={{ formatter: null }}\n trackStyle={{ backgroundColor: NEETO_UI_PRIMARY_500 }}\n {...{ defaultValue, max, min, onChange, value, ...otherProps, id }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n </ConfigProvider>\n );\n};\n\nSlider.propTypes = {\n /**\n * The minimum value the slider can slide to.\n */\n min: PropTypes.number,\n /**\n * The maximum value the slider can slide to.\n */\n max: PropTypes.number,\n /**\n * Callback function that is fired when the user changes the slider's value.\n */\n onChange: PropTypes.func,\n /**\n * The value of slider. When `range` is false, use number, otherwise, use [number, number]\n */\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.array]),\n /**\n * The value of slider. When `range` is false, use number, otherwise, use [number, number]\n *\n */\n defaultValue: PropTypes.oneOfType([PropTypes.number, PropTypes.array]),\n};\n\nexport default Slider;\n"],"names":["NEETO_UI_PRIMARY_500","Slider","_ref","_ref$min","min","_ref$max","max","_ref$defaultValue","defaultValue","_ref$onChange","onChange","noop","_ref$value","value","undefined","label","_ref$required","required","_ref$labelProps","labelProps","error","helpText","otherProps","_objectWithoutProperties","_excluded","id","useId","errorId","concat","helpTextId","React","createElement","_ConfigProvider","theme","token","_objectSpread","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","components","dotActiveBorderColor","dotBorderColor","handleActiveColor","handleColor","railBg","railHoverBg","trackBg","trackBgDisabled","trackHoverBg","colorFillContentHover","className","Label","_extends","hyphenize","htmlFor","_Slider","handleStyle","backgroundColor","tooltip","formatter","trackStyle"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","sources":["../src/components/Slider/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { Slider as AntdSlider, ConfigProvider } from \"antd\";\nimport PropTypes from \"prop-types\";\n\nimport Label from \"components/Label\";\nimport { useId } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, hyphenize, noop } from \"utils\";\n\nconst Slider = ({\n min = 0,\n max = 100,\n defaultValue = 0,\n onChange = noop,\n value = undefined,\n label,\n required = false,\n labelProps = {},\n error,\n helpText,\n ...otherProps\n}) => {\n const id = useId(otherProps.id);\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n return (\n <ConfigProvider\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Slider: {\n dotActiveBorderColor: \"rgb(var(--neeto-ui-primary-500))\",\n dotBorderColor: \"rgb(var(--neeto-ui-gray-500))\",\n handleActiveColor: \"rgb(var(--neeto-ui-primary-600))\",\n handleColor: \"rgb(var(--neeto-ui-primary-500))\",\n railBg: \"rgb(var(--neeto-ui-gray-200))\",\n railHoverBg: \"rgb(var(--neeto-ui-gray-300))\",\n trackBg: \"rgb(var(--neeto-ui-primary-500))\",\n trackBgDisabled: \"rgb(var(--neeto-ui-gray-100))\",\n trackHoverBg: \"rgb(var(--neeto-ui-primary-600))\",\n\n // Global overrides\n colorFillContentHover: \"rgb(var(--neeto-ui-gray-600))\",\n },\n },\n }}\n >\n <div className=\"neeto-ui-input__wrapper\">\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-slider-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n </div>\n <AntdSlider\n className=\"neeto-ui-w-full\"\n tooltip={{ formatter: null }}\n {...{ defaultValue, max, min, onChange, value, ...otherProps, id }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n </ConfigProvider>\n );\n};\n\nSlider.propTypes = {\n /**\n * The minimum value the slider can slide to.\n */\n min: PropTypes.number,\n /**\n * The maximum value the slider can slide to.\n */\n max: PropTypes.number,\n /**\n * Callback function that is fired when the user changes the slider's value.\n */\n onChange: PropTypes.func,\n /**\n * The value of slider. When `range` is false, use number, otherwise, use [number, number]\n */\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.array]),\n /**\n * The value of slider. When `range` is false, use number, otherwise, use [number, number]\n *\n */\n defaultValue: PropTypes.oneOfType([PropTypes.number, PropTypes.array]),\n};\n\nexport default Slider;\n"],"names":["Slider","_ref","_ref$min","min","_ref$max","max","_ref$defaultValue","defaultValue","_ref$onChange","onChange","noop","_ref$value","value","undefined","label","_ref$required","required","_ref$labelProps","labelProps","error","helpText","otherProps","_objectWithoutProperties","_excluded","id","useId","errorId","concat","helpTextId","React","createElement","_ConfigProvider","theme","token","_objectSpread","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","components","dotActiveBorderColor","dotBorderColor","handleActiveColor","handleColor","railBg","railHoverBg","trackBg","trackBgDisabled","trackHoverBg","colorFillContentHover","className","Label","_extends","hyphenize","htmlFor","_Slider","tooltip","formatter"],"mappings":"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"}
package/dist/Table.js CHANGED
@@ -790,7 +790,7 @@ var Table = function Table(_ref) {
790
790
  components: {
791
791
  Pagination: {
792
792
  itemActiveBg: "rgb(var(--neeto-ui-primary-500))",
793
- itemActiveBgDisabled: "rgb(var(--neeto-ui-gray-100))",
793
+ itemActiveBgDisabled: "rgb(var(--neeto-ui-gray-50))",
794
794
  itemActiveColorDisabled: "rgb(var(--neeto-ui-gray-300))",
795
795
  itemBg: "rgb(var(--neeto-ui-white))",
796
796
  itemInputBg: "rgb(var(--neeto-ui-white))",
@@ -804,31 +804,31 @@ var Table = function Table(_ref) {
804
804
  },
805
805
  Table: {
806
806
  headerBorderRadius: 0,
807
- bodySortBg: "rgb(var(--neeto-ui-gray-100))",
808
- borderColor: "rgb(var(--neeto-ui-gray-300))",
807
+ bodySortBg: "rgb(var(--neeto-ui-gray-50))",
808
+ borderColor: "rgb(var(--neeto-ui-gray-200))",
809
809
  expandIconBg: "rgb(var(--neeto-ui-white))",
810
810
  filterDropdownBg: "rgb(var(--neeto-ui-white))",
811
811
  filterDropdownMenuBg: "rgb(var(--neeto-ui-white))",
812
812
  fixedHeaderSortActiveBg: "rgb(var(--neeto-ui-gray-200))",
813
813
  footerBg: "rgb(var(--neeto-ui-gray-100))",
814
- footerColor: "rgb(var(--neeto-ui-gray-800))",
814
+ footerColor: "rgb(var(--neeto-ui-black))",
815
815
  headerBg: "rgb(var(--neeto-ui-gray-100))",
816
- headerColor: "rgb(var(--neeto-ui-gray-700))",
816
+ headerColor: "rgb(var(--neeto-ui-black))",
817
817
  headerFilterHoverBg: "rgb(var(--neeto-ui-gray-100))",
818
818
  headerSortActiveBg: "rgb(var(--neeto-ui-gray-200))",
819
- headerSortHoverBg: "rgb(var(--neeto-ui-gray-100))",
820
- headerSplitColor: "rgb(var(--neeto-ui-gray-200))",
821
- rowExpandedBg: "rgb(var(--neeto-ui-gray-200))",
822
- rowHoverBg: "rgb(var(--neeto-ui-gray-100))",
823
- rowSelectedBg: "rgb(var(--neeto-ui-primary-100))",
824
- rowSelectedHoverBg: "rgb(var(--neeto-ui-pastel-purple))",
825
- stickyScrollBarBg: "rgb(var(--neeto-ui-primary-100))",
826
- cellPaddingBlock: 10,
819
+ headerSortHoverBg: "rgb(var(--neeto-ui-gray-200))",
820
+ headerSplitColor: "rgb(var(--neeto-ui-gray-100))",
821
+ rowExpandedBg: "rgb(var(--neeto-ui-gray-100))",
822
+ rowHoverBg: "rgb(var(--neeto-ui-gray-50))",
823
+ rowSelectedBg: "rgb(var(--neeto-ui-accent-50))",
824
+ rowSelectedHoverBg: "rgb(var(--neeto-ui-accent-50))",
825
+ stickyScrollBarBg: "rgb(var(--neeto-ui-gray-100))",
826
+ cellPaddingBlock: 11,
827
827
  // Global overrides
828
828
  colorPrimary: "rgb(var(--neeto-ui-primary-500))",
829
829
  fontSize: 14,
830
830
  fontWeightStrong: neetoUIFontBold,
831
- paddingContentVerticalLG: 10
831
+ paddingContentVerticalLG: 11
832
832
  }
833
833
  }
834
834
  }