@bigbinary/neetoui 8.3.12 → 8.3.13

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
@@ -136,12 +136,20 @@ var Input = /*#__PURE__*/forwardRef(function (_ref, ref) {
136
136
  };
137
137
  var isMaxLengthPresent = !!maxLength || maxLength === 0;
138
138
  var handleChange = function handleChange(e) {
139
+ if (type === "file") {
140
+ onChange(e);
141
+ return;
142
+ }
139
143
  var formattedValue = formatWithRejectCharsRegex(e.target.value, rejectCharsRegex);
140
144
  formattedValue = enforceDecimalPrecision(formattedValue, precision);
141
145
  e.target.value = formattedValue;
142
146
  onChange(e);
143
147
  };
144
148
  var handleOnBlur = function handleOnBlur(e) {
149
+ if (type === "file") {
150
+ onBlur === null || onBlur === void 0 || onBlur(e);
151
+ return;
152
+ }
145
153
  var trimmedValue = getTrimmedValue(value, disableTrimOnBlur);
146
154
  var formattedValue = formatWithPrecision(trimmedValue, precision);
147
155
  if (formattedValue !== value) {
package/dist/Input.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../src/components/Input/utils.js","../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n} 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 dataCy = \"\",\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 precision = -1,\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 =\n formatWithPrecision(otherProps.value, precision) ?? 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 handleChange = e => {\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n e.target.value = formattedValue;\n onChange(e);\n };\n\n const handleOnBlur = e => {\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\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={`${dataCyLabel}-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={`${dataCyLabel}-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={`${dataCyLabel}-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 onWheel={handleOnWheel}\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={`${dataCyLabel}-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={`${dataCyLabel}-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 how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\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":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleChange","formattedValue","handleOnBlur","trimmedValue","handleOnWheel","blur","dataCyLabel","hyphenize","React","createElement","classnames","Label","_extends","htmlFor","_defineProperty","_objectSpread","onWheel","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAOA,CAAIC,MAAM,EAAEC,SAAS,EAAK;AACrC,EAAA,IAAMC,GAAG,GAAGC,MAAM,CAACH,MAAM,CAAC,CAAA;EAC1B,IAAIG,MAAM,CAACC,KAAK,CAACF,GAAG,CAAC,EAAE,OAAOF,MAAM,CAAA;AAEpC,EAAA,OAAOE,GAAG,CAACH,OAAO,CAACE,SAAS,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,IAAMI,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGL,MAAM,EAAI;AACpC,EAAA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE,OAAO,KAAK,CAAA;AAE5C,EAAA,OAAO,CAACG,MAAM,CAACC,KAAK,CAACD,MAAM,CAACH,MAAM,CAACM,IAAI,EAAE,CAAC,CAAC,CAAA;AAC7C,CAAC,CAAA;AAEM,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,KAAK,EAAEP,SAAS,EAAK;EACvD,IAAIA,SAAS,GAAG,CAAC,IAAI,CAACO,KAAK,EAAE,OAAOA,KAAK,CAAA;AAEzC,EAAA,IAAMC,GAAG,GAAGD,KAAK,CAACE,QAAQ,EAAE,CAAA;EAE5B,IAAIL,mBAAmB,CAACI,GAAG,CAAC,EAAE,OAAOV,OAAO,CAACU,GAAG,EAAER,SAAS,CAAC,CAAA;AAE5D,EAAA,OAAOQ,GAAG,CAAA;AACZ,CAAC,CAAA;AAEM,IAAME,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIH,KAAK,EAAEP,SAAS,EAAK;EAC3D,IAAIA,SAAS,GAAG,CAAC,IAAI,CAACO,KAAK,EAAE,OAAOA,KAAK,CAAA;AAEzC,EAAA,IAAMI,QAAQ,GAAGJ,KAAK,CAACE,QAAQ,EAAE,CAAA;AAEjC,EAAA,IAAIT,SAAS,KAAK,CAAC,EAAE,OAAOW,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;EAElD,IAAMC,KAAK,GAAG,IAAIC,MAAM,mBAAAC,MAAA,CAAmBf,SAAS,EAAK,IAAA,CAAA,CAAA,CAAA;EACzD,IAAIa,KAAK,CAACG,IAAI,CAACL,QAAQ,CAAC,EAAE,OAAOJ,KAAK,CAAA;AAEtC,EAAA,IAAMU,KAAK,GAAGN,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;EACjC,IAAIK,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE,OAAOD,KAAK,CAAC,CAAC,CAAC,CAAA;AAEvC,EAAA,IAAAE,MAAA,GAAAC,cAAA,CAAmCH,KAAK,EAAA,CAAA,CAAA;AAAjCI,IAAAA,WAAW,GAAAF,MAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,MAAA,CAAA,CAAA,CAAA,CAAA;AAE/B,EAAA,OAAA,EAAA,CAAAJ,MAAA,CAAUM,WAAW,EAAA,GAAA,CAAA,CAAAN,MAAA,CAAIO,WAAW,CAACC,SAAS,CAAC,CAAC,EAAEvB,SAAS,CAAC,CAAA,CAAA;AAC9D,CAAC,CAAA;AAEM,IAAMwB,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAIjB,KAAK,EAAEkB,gBAAgB,EAAK;AACrE,EAAA,IAAI,CAACA,gBAAgB,EAAE,OAAOlB,KAAK,CAAA;EAEnC,IAAMmB,WAAW,GAAG,IAAIZ,MAAM,CAACW,gBAAgB,EAAE,GAAG,CAAC,CAAA;AAErD,EAAA,OAAOE,OAAO,CAACD,WAAW,EAAE,EAAE,EAAEnB,KAAK,CAAC,CAAA;AACxC,CAAC,CAAA;AAEM,IAAMqB,eAAe,GAAG,SAAlBA,eAAeA,CAAIrB,KAAK,EAAEsB,iBAAiB,EAAK;EAC3D,IAAIA,iBAAiB,IAAI,OAAOtB,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK,CAAA;EAEhE,OAAOA,KAAK,CAACF,IAAI,EAAE,CAAA;AACrB,CAAC;;;;;ACtCD,IAAMyB,KAAK,GAAG;AAAEC,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,MAAM,EAAE,QAAQ;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CAAA;AAE5DC,IAAAA,KAAK,gBAAGC,UAAU,CACtB,UAAAC,IAAA,EAwBEC,GAAG,EACA;EAAA,IAAAC,KAAA,EAAAC,oBAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAvBDK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGV,KAAK,CAACE,MAAM,GAAAQ,SAAA;IAAAE,SAAA,GAAAN,IAAA,CACnBO,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,SAAA;IAAAE,UAAA,GAAAR,IAAA,CACbS,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,WAAA,GAAAV,IAAA,CACVW,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,WAAA;IAAAE,UAAA,GAAAZ,IAAA,CACXa,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,WAAA,GAAAd,IAAA,CACVe,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,WAAA,GAAAhB,IAAA,CACbiB,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,aAAA,GAAAlB,IAAA,CACbmB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAAAE,aAAA,GAAApB,IAAA,CAChBqB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,aAAA;IAAAE,cAAA,GAAAtB,IAAA,CACbuB,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IAAAE,eAAA,GAAAxB,IAAA,CACdyB,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAAE,gBAAA,GAAA1B,IAAA,CAClB2B,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,gBAAA;IAAAE,aAAA,GAAA5B,IAAA,CAClB6B,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAChBE,SAAS,GAAA9B,IAAA,CAAT8B,SAAS;IAAAC,mBAAA,GAAA/B,IAAA,CACTgC,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,mBAAA;IACtBE,UAAU,GAAAjC,IAAA,CAAViC,UAAU;IACV5C,gBAAgB,GAAAW,IAAA,CAAhBX,gBAAgB;IAChB6C,MAAM,GAAAlC,IAAA,CAANkC,MAAM;IAAAC,qBAAA,GAAAnC,IAAA,CACNP,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA0C,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAC,cAAA,GAAApC,IAAA,CACzBpC,SAAS;AAATA,IAAAA,SAAS,GAAAwE,cAAA,KAAA,KAAA,CAAA,GAAG,CAAC,CAAC,GAAAA,cAAA;AACXC,IAAAA,UAAU,GAAAC,wBAAA,CAAAtC,IAAA,EAAAuC,SAAA,CAAA,CAAA;AAIf,EAAA,IAAAC,SAAA,GAA0CC,QAAQ,CAACJ,UAAU,CAAClE,KAAK,CAAC;IAAAuE,UAAA,GAAA1D,cAAA,CAAAwD,SAAA,EAAA,CAAA,CAAA;AAA7DG,IAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAMG,EAAE,GAAGC,KAAK,CAACT,UAAU,CAACQ,EAAE,CAAC,CAAA;AAE/B,EAAA,IAAME,OAAO,GAAA,QAAA,CAAApE,MAAA,CAAYkE,EAAE,CAAE,CAAA;AAC7B,EAAA,IAAMG,UAAU,GAAA,WAAA,CAAArE,MAAA,CAAekE,EAAE,CAAE,CAAA;EAEnC,IAAM1E,KAAK,GAAA+B,CAAAA,KAAA,GAAAC,CAAAA,oBAAA,GACTjC,mBAAmB,CAACmE,UAAU,CAAClE,KAAK,EAAEP,SAAS,CAAC,MAAA,IAAA,IAAAuC,oBAAA,KAAA,KAAA,CAAA,GAAAA,oBAAA,GAAIwC,aAAa,MAAA,IAAA,IAAAzC,KAAA,KAAA,KAAA,CAAA,GAAAA,KAAA,GAAI,EAAE,CAAA;AAEzE,EAAA,IAAM+C,WAAW,GAAG,CAAA9E,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEE,QAAQ,EAAE,CAACS,MAAM,KAAI,CAAC,CAAA;AACjD,EAAA,IAAMoE,uBAAuB,GAAGD,WAAW,IAAInB,SAAS,GAAG,IAAI,CAAA;AAC/D,EAAA,IAAMqB,cAAc,GAAGnB,cAAc,IAAIiB,WAAW,GAAGnB,SAAS,CAAA;AAEhE,EAAA,IAAMsB,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,CAAC,EAAI;AAAA,IAAA,IAAAC,oBAAA,CAAA;IACpB,IAAI,CAACjB,UAAU,CAACe,QAAQ,IAAI,CAACf,UAAU,CAAClE,KAAK,EAAE;AAC7CyE,MAAAA,gBAAgB,CAACS,CAAC,CAACE,MAAM,CAACpF,KAAK,CAAC,CAAA;AAClC,KAAA;AACA,IAAA,CAAAmF,oBAAA,GAAAjB,UAAU,CAACe,QAAQ,MAAAE,IAAAA,IAAAA,oBAAA,KAAnBA,KAAAA,CAAAA,IAAAA,oBAAA,CAAAE,IAAA,CAAAnB,UAAU,EAAYgB,CAAC,CAAC,CAAA;GACzB,CAAA;EAED,IAAMI,kBAAkB,GAAG,CAAC,CAAC3B,SAAS,IAAIA,SAAS,KAAK,CAAC,CAAA;AAEzD,EAAA,IAAM4B,YAAY,GAAG,SAAfA,YAAYA,CAAGL,CAAC,EAAI;IACxB,IAAIM,cAAc,GAAGvE,0BAA0B,CAC7CiE,CAAC,CAACE,MAAM,CAACpF,KAAK,EACdkB,gBAAgB,CACjB,CAAA;AAEDsE,IAAAA,cAAc,GAAGrF,uBAAuB,CAACqF,cAAc,EAAE/F,SAAS,CAAC,CAAA;AAEnEyF,IAAAA,CAAC,CAACE,MAAM,CAACpF,KAAK,GAAGwF,cAAc,CAAA;IAC/BP,QAAQ,CAACC,CAAC,CAAC,CAAA;GACZ,CAAA;AAED,EAAA,IAAMO,YAAY,GAAG,SAAfA,YAAYA,CAAGP,CAAC,EAAI;AACxB,IAAA,IAAMQ,YAAY,GAAGrE,eAAe,CAACrB,KAAK,EAAEsB,iBAAiB,CAAC,CAAA;AAC9D,IAAA,IAAMkE,cAAc,GAAGzF,mBAAmB,CAAC2F,YAAY,EAAEjG,SAAS,CAAC,CAAA;IAEnE,IAAI+F,cAAc,KAAKxF,KAAK,EAAE;AAC5BkF,MAAAA,CAAC,CAACE,MAAM,CAACpF,KAAK,GAAGwF,cAAc,CAAA;MAC/BD,YAAY,CAACL,CAAC,CAAC,CAAA;AACjB,KAAA;AAEAnB,IAAAA,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,IAANA,MAAM,CAAGmB,CAAC,CAAC,CAAA;GACZ,CAAA;AAED,EAAA,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAGT,CAAC,EAAI;IACzB,IAAI9C,IAAI,KAAK,QAAQ,EAAE8C,CAAC,CAACE,MAAM,CAACQ,IAAI,EAAE,CAAA;GACvC,CAAA;AAED,EAAA,IAAMC,WAAW,GACf,OAAOvD,KAAK,KAAK,QAAQ,GAAGwD,SAAS,CAACxD,KAAK,CAAC,GAAGwD,SAAS,CAACtD,MAAM,CAAC,CAAA;EAElE,oBACEuD,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAE6C,UAAU,CAAC,CAAC,yBAAyB,EAAE7C,SAAS,CAAC,CAAA;GAC/D2C,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,+BAAA;GACZd,EAAAA,KAAK,iBACJyD,cAAA,CAAAC,aAAA,CAACE,KAAK,EAAAC,QAAA,CAAA;AACEzC,IAAAA,QAAQ,EAARA,QAAQ;IACd,SAAAlD,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtCO,IAAAA,OAAO,EAAE1B,EAAAA;GACLZ,EAAAA,UAAU,GAEbxB,KAAK,CAET,EACAyC,uBAAuB,iBACtBgB,cAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAE6C,UAAU,CAAC,4BAA4B,EAAE;AAClD,MAAA,mCAAmC,EAAEjB,cAAAA;KACtC,CAAA;GAEAF,EAAAA,WAAW,EAAC,GAAC,EAACnB,SAAS,CAE3B,CACG,eACNoC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACE,SAAAxF,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAS,QAAA,CAAA;AAChCzC,IAAAA,SAAS,EAAE6C,UAAU,CAAC,gBAAgB,EAAE;MACtC,uBAAuB,EAAE,CAAC,CAAC3C,UAAU;MACrC,uBAAuB,EAAE,CAAC,CAACZ,KAAK;MAChC,0BAA0B,EAAE,CAAC,CAACM,QAAQ;MACtC,uBAAuB,EAAEd,IAAI,KAAK,OAAO;MACzC,wBAAwB,EAAEA,IAAI,KAAK,QAAQ;MAC3C,uBAAuB,EAAEA,IAAI,KAAK,OAAA;KACnC,CAAA;AAAE,GAAA,EAEFY,MAAM,iBAAIiD,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,wBAAA;AAAwB,GAAA,EAAEN,MAAM,CAAO,eACjEiD,cAAA,CAAAC,aAAA,UAAAG,QAAA,CAAA;IACE,cAAc,EAAA,CAAC,CAACzD,KAAM;IACtB,SAAAlC,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtC3D,IAAAA,IAAI,EAAEsB,WAAY;AAClB,IAAA,kBAAA,EAAkByC,UAAU,CAAAI,eAAA,CAAAA,eAAA,CACzBzB,EAAAA,EAAAA,OAAO,EAAG,CAAC,CAAClC,KAAK,CACjBmC,EAAAA,UAAU,EAAG3B,QAAQ,CAAA,CAAA;AACrB,GAAA,EAAAoD,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AAEDtD,IAAAA,QAAQ,EAARA,QAAQ;AACR0B,IAAAA,EAAE,EAAFA,EAAE;AACF5C,IAAAA,GAAG,EAAHA,GAAG;AACH4B,IAAAA,QAAQ,EAARA,QAAQ;AACRtB,IAAAA,IAAI,EAAJA,IAAAA;AAAI,GAAA,EACAkD,kBAAkB,IAAI,CAACzB,cAAc,IAAI;AAAEF,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,GACvDO,UAAU,CAAA,EAAA,EAAA,EAAA;AACblE,IAAAA,KAAK,EAALA,KAAAA;AAAK,GAAA,CAAA,EAAA;AAEP+D,IAAAA,MAAM,EAAE0B,YAAa;AACrBR,IAAAA,QAAQ,EAAEM,YAAa;AACvBgB,IAAAA,OAAO,EAAEZ,aAAAA;AAAc,GAAA,CAAA,CACvB,EACD/C,MAAM,iBAAImD,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,wBAAA;GAA0BR,EAAAA,MAAM,CAAO,CAC7D,EACL,CAAC,CAACF,KAAK,iBACNqD,cAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAC,uBAAuB;IACjC,SAAA5C,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtCnB,IAAAA,EAAE,EAAEE,OAAAA;AAAQ,GAAA,EAEXlC,KAAK,CAET,EACAQ,QAAQ,iBACP6C,cAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAC,2BAA2B;IACrC,SAAA5C,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAc,aAAA,CAAA;AACrCnB,IAAAA,EAAE,EAAEG,UAAAA;GAEH3B,EAAAA,QAAQ,CAEZ,CACG,CAAA;AAEV,CAAC,EACF;AAEDvB,KAAK,CAAC6E,WAAW,GAAG,OAAO;;;;"}
1
+ {"version":3,"file":"Input.js","sources":["../src/components/Input/utils.js","../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n} 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 dataCy = \"\",\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 precision = -1,\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 =\n formatWithPrecision(otherProps.value, precision) ?? 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 handleChange = e => {\n if (type === \"file\") {\n onChange(e);\n\n return;\n }\n\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n e.target.value = formattedValue;\n onChange(e);\n };\n\n const handleOnBlur = e => {\n if (type === \"file\") {\n onBlur?.(e);\n\n return;\n }\n\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\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={`${dataCyLabel}-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={`${dataCyLabel}-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={`${dataCyLabel}-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 onWheel={handleOnWheel}\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={`${dataCyLabel}-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={`${dataCyLabel}-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 how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\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":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleChange","formattedValue","handleOnBlur","trimmedValue","handleOnWheel","blur","dataCyLabel","hyphenize","React","createElement","classnames","Label","_extends","htmlFor","_defineProperty","_objectSpread","onWheel","displayName"],"mappings":"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"}
package/dist/cjs/Input.js CHANGED
@@ -138,12 +138,20 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
138
138
  };
139
139
  var isMaxLengthPresent = !!maxLength || maxLength === 0;
140
140
  var handleChange = function handleChange(e) {
141
+ if (type === "file") {
142
+ onChange(e);
143
+ return;
144
+ }
141
145
  var formattedValue = formatWithRejectCharsRegex(e.target.value, rejectCharsRegex);
142
146
  formattedValue = enforceDecimalPrecision(formattedValue, precision);
143
147
  e.target.value = formattedValue;
144
148
  onChange(e);
145
149
  };
146
150
  var handleOnBlur = function handleOnBlur(e) {
151
+ if (type === "file") {
152
+ onBlur === null || onBlur === void 0 || onBlur(e);
153
+ return;
154
+ }
147
155
  var trimmedValue = getTrimmedValue(value, disableTrimOnBlur);
148
156
  var formattedValue = formatWithPrecision(trimmedValue, precision);
149
157
  if (formattedValue !== value) {
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../../src/components/Input/utils.js","../../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n} 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 dataCy = \"\",\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 precision = -1,\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 =\n formatWithPrecision(otherProps.value, precision) ?? 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 handleChange = e => {\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n e.target.value = formattedValue;\n onChange(e);\n };\n\n const handleOnBlur = e => {\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\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={`${dataCyLabel}-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={`${dataCyLabel}-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={`${dataCyLabel}-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 onWheel={handleOnWheel}\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={`${dataCyLabel}-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={`${dataCyLabel}-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 how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\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":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleChange","formattedValue","handleOnBlur","trimmedValue","handleOnWheel","blur","dataCyLabel","hyphenize","React","createElement","classnames","Label","_extends","htmlFor","_defineProperty","_objectSpread","onWheel","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sources":["../../src/components/Input/utils.js","../../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n} 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 dataCy = \"\",\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 precision = -1,\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 =\n formatWithPrecision(otherProps.value, precision) ?? 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 handleChange = e => {\n if (type === \"file\") {\n onChange(e);\n\n return;\n }\n\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n e.target.value = formattedValue;\n onChange(e);\n };\n\n const handleOnBlur = e => {\n if (type === \"file\") {\n onBlur?.(e);\n\n return;\n }\n\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\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={`${dataCyLabel}-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={`${dataCyLabel}-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={`${dataCyLabel}-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 onWheel={handleOnWheel}\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={`${dataCyLabel}-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={`${dataCyLabel}-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 how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\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":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleChange","formattedValue","handleOnBlur","trimmedValue","handleOnWheel","blur","dataCyLabel","hyphenize","React","createElement","classnames","Label","_extends","htmlFor","_defineProperty","_objectSpread","onWheel","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAOA,CAAIC,MAAM,EAAEC,SAAS,EAAK;AACrC,EAAA,IAAMC,GAAG,GAAGC,MAAM,CAACH,MAAM,CAAC,CAAA;EAC1B,IAAIG,MAAM,CAACC,KAAK,CAACF,GAAG,CAAC,EAAE,OAAOF,MAAM,CAAA;AAEpC,EAAA,OAAOE,GAAG,CAACH,OAAO,CAACE,SAAS,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,IAAMI,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGL,MAAM,EAAI;AACpC,EAAA,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE,OAAO,KAAK,CAAA;AAE5C,EAAA,OAAO,CAACG,MAAM,CAACC,KAAK,CAACD,MAAM,CAACH,MAAM,CAACM,IAAI,EAAE,CAAC,CAAC,CAAA;AAC7C,CAAC,CAAA;AAEM,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,KAAK,EAAEP,SAAS,EAAK;EACvD,IAAIA,SAAS,GAAG,CAAC,IAAI,CAACO,KAAK,EAAE,OAAOA,KAAK,CAAA;AAEzC,EAAA,IAAMC,GAAG,GAAGD,KAAK,CAACE,QAAQ,EAAE,CAAA;EAE5B,IAAIL,mBAAmB,CAACI,GAAG,CAAC,EAAE,OAAOV,OAAO,CAACU,GAAG,EAAER,SAAS,CAAC,CAAA;AAE5D,EAAA,OAAOQ,GAAG,CAAA;AACZ,CAAC,CAAA;AAEM,IAAME,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIH,KAAK,EAAEP,SAAS,EAAK;EAC3D,IAAIA,SAAS,GAAG,CAAC,IAAI,CAACO,KAAK,EAAE,OAAOA,KAAK,CAAA;AAEzC,EAAA,IAAMI,QAAQ,GAAGJ,KAAK,CAACE,QAAQ,EAAE,CAAA;AAEjC,EAAA,IAAIT,SAAS,KAAK,CAAC,EAAE,OAAOW,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;EAElD,IAAMC,KAAK,GAAG,IAAIC,MAAM,mBAAAC,MAAA,CAAmBf,SAAS,EAAK,IAAA,CAAA,CAAA,CAAA;EACzD,IAAIa,KAAK,CAACG,IAAI,CAACL,QAAQ,CAAC,EAAE,OAAOJ,KAAK,CAAA;AAEtC,EAAA,IAAMU,KAAK,GAAGN,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;EACjC,IAAIK,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE,OAAOD,KAAK,CAAC,CAAC,CAAC,CAAA;AAEvC,EAAA,IAAAE,MAAA,GAAAC,cAAA,CAAmCH,KAAK,EAAA,CAAA,CAAA;AAAjCI,IAAAA,WAAW,GAAAF,MAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,MAAA,CAAA,CAAA,CAAA,CAAA;AAE/B,EAAA,OAAA,EAAA,CAAAJ,MAAA,CAAUM,WAAW,EAAA,GAAA,CAAA,CAAAN,MAAA,CAAIO,WAAW,CAACC,SAAS,CAAC,CAAC,EAAEvB,SAAS,CAAC,CAAA,CAAA;AAC9D,CAAC,CAAA;AAEM,IAAMwB,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAIjB,KAAK,EAAEkB,gBAAgB,EAAK;AACrE,EAAA,IAAI,CAACA,gBAAgB,EAAE,OAAOlB,KAAK,CAAA;EAEnC,IAAMmB,WAAW,GAAG,IAAIZ,MAAM,CAACW,gBAAgB,EAAE,GAAG,CAAC,CAAA;AAErD,EAAA,OAAOE,aAAO,CAACD,WAAW,EAAE,EAAE,EAAEnB,KAAK,CAAC,CAAA;AACxC,CAAC,CAAA;AAEM,IAAMqB,eAAe,GAAG,SAAlBA,eAAeA,CAAIrB,KAAK,EAAEsB,iBAAiB,EAAK;EAC3D,IAAIA,iBAAiB,IAAI,OAAOtB,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK,CAAA;EAEhE,OAAOA,KAAK,CAACF,IAAI,EAAE,CAAA;AACrB,CAAC;;;;;ACtCD,IAAMyB,KAAK,GAAG;AAAEC,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,MAAM,EAAE,QAAQ;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CAAA;AAE5DC,IAAAA,KAAK,gBAAGC,gBAAU,CACtB,UAAAC,IAAA,EAwBEC,GAAG,EACA;EAAA,IAAAC,KAAA,EAAAC,oBAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAvBDK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGV,KAAK,CAACE,MAAM,GAAAQ,SAAA;IAAAE,SAAA,GAAAN,IAAA,CACnBO,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,SAAA;IAAAE,UAAA,GAAAR,IAAA,CACbS,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,WAAA,GAAAV,IAAA,CACVW,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,WAAA;IAAAE,UAAA,GAAAZ,IAAA,CACXa,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,WAAA,GAAAd,IAAA,CACVe,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,WAAA,GAAAhB,IAAA,CACbiB,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,aAAA,GAAAlB,IAAA,CACbmB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAAAE,aAAA,GAAApB,IAAA,CAChBqB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,aAAA;IAAAE,cAAA,GAAAtB,IAAA,CACbuB,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IAAAE,eAAA,GAAAxB,IAAA,CACdyB,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAAE,gBAAA,GAAA1B,IAAA,CAClB2B,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,gBAAA;IAAAE,aAAA,GAAA5B,IAAA,CAClB6B,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAChBE,SAAS,GAAA9B,IAAA,CAAT8B,SAAS;IAAAC,mBAAA,GAAA/B,IAAA,CACTgC,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,mBAAA;IACtBE,UAAU,GAAAjC,IAAA,CAAViC,UAAU;IACV5C,gBAAgB,GAAAW,IAAA,CAAhBX,gBAAgB;IAChB6C,MAAM,GAAAlC,IAAA,CAANkC,MAAM;IAAAC,qBAAA,GAAAnC,IAAA,CACNP,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA0C,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAC,cAAA,GAAApC,IAAA,CACzBpC,SAAS;AAATA,IAAAA,SAAS,GAAAwE,cAAA,KAAA,KAAA,CAAA,GAAG,CAAC,CAAC,GAAAA,cAAA;AACXC,IAAAA,UAAU,GAAAC,wBAAA,CAAAtC,IAAA,EAAAuC,SAAA,CAAA,CAAA;AAIf,EAAA,IAAAC,SAAA,GAA0CC,cAAQ,CAACJ,UAAU,CAAClE,KAAK,CAAC;IAAAuE,UAAA,GAAA1D,cAAA,CAAAwD,SAAA,EAAA,CAAA,CAAA;AAA7DG,IAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAMG,EAAE,GAAGC,WAAK,CAACT,UAAU,CAACQ,EAAE,CAAC,CAAA;AAE/B,EAAA,IAAME,OAAO,GAAA,QAAA,CAAApE,MAAA,CAAYkE,EAAE,CAAE,CAAA;AAC7B,EAAA,IAAMG,UAAU,GAAA,WAAA,CAAArE,MAAA,CAAekE,EAAE,CAAE,CAAA;EAEnC,IAAM1E,KAAK,GAAA+B,CAAAA,KAAA,GAAAC,CAAAA,oBAAA,GACTjC,mBAAmB,CAACmE,UAAU,CAAClE,KAAK,EAAEP,SAAS,CAAC,MAAA,IAAA,IAAAuC,oBAAA,KAAA,KAAA,CAAA,GAAAA,oBAAA,GAAIwC,aAAa,MAAA,IAAA,IAAAzC,KAAA,KAAA,KAAA,CAAA,GAAAA,KAAA,GAAI,EAAE,CAAA;AAEzE,EAAA,IAAM+C,WAAW,GAAG,CAAA9E,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEE,QAAQ,EAAE,CAACS,MAAM,KAAI,CAAC,CAAA;AACjD,EAAA,IAAMoE,uBAAuB,GAAGD,WAAW,IAAInB,SAAS,GAAG,IAAI,CAAA;AAC/D,EAAA,IAAMqB,cAAc,GAAGnB,cAAc,IAAIiB,WAAW,GAAGnB,SAAS,CAAA;AAEhE,EAAA,IAAMsB,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,CAAC,EAAI;AAAA,IAAA,IAAAC,oBAAA,CAAA;IACpB,IAAI,CAACjB,UAAU,CAACe,QAAQ,IAAI,CAACf,UAAU,CAAClE,KAAK,EAAE;AAC7CyE,MAAAA,gBAAgB,CAACS,CAAC,CAACE,MAAM,CAACpF,KAAK,CAAC,CAAA;AAClC,KAAA;AACA,IAAA,CAAAmF,oBAAA,GAAAjB,UAAU,CAACe,QAAQ,MAAAE,IAAAA,IAAAA,oBAAA,KAAnBA,KAAAA,CAAAA,IAAAA,oBAAA,CAAAE,IAAA,CAAAnB,UAAU,EAAYgB,CAAC,CAAC,CAAA;GACzB,CAAA;EAED,IAAMI,kBAAkB,GAAG,CAAC,CAAC3B,SAAS,IAAIA,SAAS,KAAK,CAAC,CAAA;AAEzD,EAAA,IAAM4B,YAAY,GAAG,SAAfA,YAAYA,CAAGL,CAAC,EAAI;IACxB,IAAI9C,IAAI,KAAK,MAAM,EAAE;MACnB6C,QAAQ,CAACC,CAAC,CAAC,CAAA;AAEX,MAAA,OAAA;AACF,KAAA;IAEA,IAAIM,cAAc,GAAGvE,0BAA0B,CAC7CiE,CAAC,CAACE,MAAM,CAACpF,KAAK,EACdkB,gBAAgB,CACjB,CAAA;AAEDsE,IAAAA,cAAc,GAAGrF,uBAAuB,CAACqF,cAAc,EAAE/F,SAAS,CAAC,CAAA;AAEnEyF,IAAAA,CAAC,CAACE,MAAM,CAACpF,KAAK,GAAGwF,cAAc,CAAA;IAC/BP,QAAQ,CAACC,CAAC,CAAC,CAAA;GACZ,CAAA;AAED,EAAA,IAAMO,YAAY,GAAG,SAAfA,YAAYA,CAAGP,CAAC,EAAI;IACxB,IAAI9C,IAAI,KAAK,MAAM,EAAE;AACnB2B,MAAAA,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,IAANA,MAAM,CAAGmB,CAAC,CAAC,CAAA;AAEX,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,IAAMQ,YAAY,GAAGrE,eAAe,CAACrB,KAAK,EAAEsB,iBAAiB,CAAC,CAAA;AAC9D,IAAA,IAAMkE,cAAc,GAAGzF,mBAAmB,CAAC2F,YAAY,EAAEjG,SAAS,CAAC,CAAA;IAEnE,IAAI+F,cAAc,KAAKxF,KAAK,EAAE;AAC5BkF,MAAAA,CAAC,CAACE,MAAM,CAACpF,KAAK,GAAGwF,cAAc,CAAA;MAC/BD,YAAY,CAACL,CAAC,CAAC,CAAA;AACjB,KAAA;AAEAnB,IAAAA,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,IAANA,MAAM,CAAGmB,CAAC,CAAC,CAAA;GACZ,CAAA;AAED,EAAA,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAGT,CAAC,EAAI;IACzB,IAAI9C,IAAI,KAAK,QAAQ,EAAE8C,CAAC,CAACE,MAAM,CAACQ,IAAI,EAAE,CAAA;GACvC,CAAA;AAED,EAAA,IAAMC,WAAW,GACf,OAAOvD,KAAK,KAAK,QAAQ,GAAGwD,eAAS,CAACxD,KAAK,CAAC,GAAGwD,eAAS,CAACtD,MAAM,CAAC,CAAA;EAElE,oBACEuD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAE6C,UAAU,CAAC,CAAC,yBAAyB,EAAE7C,SAAS,CAAC,CAAA;GAC/D2C,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,+BAAA;GACZd,EAAAA,KAAK,iBACJyD,KAAA,CAAAC,aAAA,CAACE,KAAK,EAAAC,QAAA,CAAA;AACEzC,IAAAA,QAAQ,EAARA,QAAQ;IACd,SAAAlD,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtCO,IAAAA,OAAO,EAAE1B,EAAAA;GACLZ,EAAAA,UAAU,GAEbxB,KAAK,CAET,EACAyC,uBAAuB,iBACtBgB,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAE6C,UAAU,CAAC,4BAA4B,EAAE;AAClD,MAAA,mCAAmC,EAAEjB,cAAAA;KACtC,CAAA;GAEAF,EAAAA,WAAW,EAAC,GAAC,EAACnB,SAAS,CAE3B,CACG,eACNoC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACE,SAAAxF,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAS,QAAA,CAAA;AAChCzC,IAAAA,SAAS,EAAE6C,UAAU,CAAC,gBAAgB,EAAE;MACtC,uBAAuB,EAAE,CAAC,CAAC3C,UAAU;MACrC,uBAAuB,EAAE,CAAC,CAACZ,KAAK;MAChC,0BAA0B,EAAE,CAAC,CAACM,QAAQ;MACtC,uBAAuB,EAAEd,IAAI,KAAK,OAAO;MACzC,wBAAwB,EAAEA,IAAI,KAAK,QAAQ;MAC3C,uBAAuB,EAAEA,IAAI,KAAK,OAAA;KACnC,CAAA;AAAE,GAAA,EAEFY,MAAM,iBAAIiD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,wBAAA;AAAwB,GAAA,EAAEN,MAAM,CAAO,eACjEiD,KAAA,CAAAC,aAAA,UAAAG,QAAA,CAAA;IACE,cAAc,EAAA,CAAC,CAACzD,KAAM;IACtB,SAAAlC,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtC3D,IAAAA,IAAI,EAAEsB,WAAY;AAClB,IAAA,kBAAA,EAAkByC,UAAU,CAAAI,eAAA,CAAAA,eAAA,CACzBzB,EAAAA,EAAAA,OAAO,EAAG,CAAC,CAAClC,KAAK,CACjBmC,EAAAA,UAAU,EAAG3B,QAAQ,CAAA,CAAA;AACrB,GAAA,EAAAoD,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AAEDtD,IAAAA,QAAQ,EAARA,QAAQ;AACR0B,IAAAA,EAAE,EAAFA,EAAE;AACF5C,IAAAA,GAAG,EAAHA,GAAG;AACH4B,IAAAA,QAAQ,EAARA,QAAQ;AACRtB,IAAAA,IAAI,EAAJA,IAAAA;AAAI,GAAA,EACAkD,kBAAkB,IAAI,CAACzB,cAAc,IAAI;AAAEF,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,GACvDO,UAAU,CAAA,EAAA,EAAA,EAAA;AACblE,IAAAA,KAAK,EAALA,KAAAA;AAAK,GAAA,CAAA,EAAA;AAEP+D,IAAAA,MAAM,EAAE0B,YAAa;AACrBR,IAAAA,QAAQ,EAAEM,YAAa;AACvBgB,IAAAA,OAAO,EAAEZ,aAAAA;AAAc,GAAA,CAAA,CACvB,EACD/C,MAAM,iBAAImD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK5C,IAAAA,SAAS,EAAC,wBAAA;GAA0BR,EAAAA,MAAM,CAAO,CAC7D,EACL,CAAC,CAACF,KAAK,iBACNqD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAC,uBAAuB;IACjC,SAAA5C,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAe,cAAA,CAAA;AACtCnB,IAAAA,EAAE,EAAEE,OAAAA;AAAQ,GAAA,EAEXlC,KAAK,CAET,EACAQ,QAAQ,iBACP6C,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE5C,IAAAA,SAAS,EAAC,2BAA2B;IACrC,SAAA5C,EAAAA,EAAAA,CAAAA,MAAA,CAAYqF,WAAW,EAAc,aAAA,CAAA;AACrCnB,IAAAA,EAAE,EAAEG,UAAAA;GAEH3B,EAAAA,QAAQ,CAEZ,CACG,CAAA;AAEV,CAAC,EACF;AAEDvB,KAAK,CAAC6E,WAAW,GAAG,OAAO;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui",
3
- "version": "8.3.12",
3
+ "version": "8.3.13",
4
4
  "author": "BigBinary",
5
5
  "license": "MIT",
6
6
  "description": "neetoUI drives the experience at all neeto products",